[FEATURE] Feature Request: Add Vi/Vim Mode to Prompt Input Area

Resolved 💬 5 comments Opened Sep 30, 2025 by pwd-rh Closed Nov 21, 2025

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Feature Request

Add Vi/Vim keybindings and modal editing support to the Claude Code prompt/input
area where users type their messages.

And yes I had Claude Code write this for me ;-)

Motivation

Many developers use Vi/Vim keybindings throughout their workflow (terminal, editor,
browser extensions) and would benefit from having the same efficient text editing
capabilities in Claude Code's prompt area. Currently, users must switch between
Vi-style editing in their editor/terminal and standard editing in the Claude Code
prompt, which breaks workflow consistency.

I have been using vi/vim/neovim for over 45 years; my fingers just know what to do, in the question area j/k do work.

Proposed Solution

Proposed Solution

Implement a Vi/Vim mode for the prompt input that includes:

  • Normal mode: Navigation with h/j/k/l, w/b for word movement, 0/$ for

line start/end

  • Insert mode: Standard text input (entered via i, a, o, etc.)
  • Visual mode: Text selection with v
  • Command mode: Delete (d), change (c), yank (y) operations
  • Mode indicator: Visual feedback showing current mode (NORMAL, INSERT, VISUAL)

The feature should be:

  • Optional (enabled via configuration/settings)
  • Toggleable (users can switch it on/off as needed)
  • Non-breaking (default behavior remains unchanged for existing users)

Similar Implementations

This feature exists in many developer tools:

  • VS Code: Official Vim extension
  • JetBrains IDEs: IdeaVim plugin
  • Firefox/Chrome: Vimium, Tridactyl extensions
  • Jupyter notebooks: Vi mode in cell editing
  • Zsh/Bash: set -o vi for shell prompt

Benefits

  • Improved editing efficiency for Vi/Vim users
  • Reduced context switching between tools
  • Better accessibility for users with Vi muscle memory
  • Competitive feature parity with other AI coding assistants

Configuration Example

Potential settings.json configuration:

{
  "prompt.viMode": true,
  "prompt.viModeIndicator": true
}

Or command-line flag:

claude-code --vi-mode

Thank you for considering this feature request!

Alternative Solutions

_No response_

Priority

Medium - Would be very helpful

Feature Category

CLI commands and flags

Use Case Example

As I enter data into the prompt, I often want to go back and edit a bit. If I have a big prompt to edit, I often write it to a temp file (I frequently use foo) and then copy and paste it into the prompt area. It would be nice if the prompt area had an easy way to edit, as often I am going to write a short prompt, and it just keeps getting longer and longer.

Additional Context

_No response_

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗