`/doctor` and footer indicator false-positive on functional `command+v` binding
Issue
Claude Code persistently reports a keybinding error for my command+v → chat:imagePaste binding, even though the binding actually works correctly.
The error is shown in two places:
- Bottom-right footer indicator — always visible while Claude Code is running
/doctoroutput — when explicitly checked
Environment
- Claude Code 2.1.112
- macOS 15.4 (Sequoia, Darwin 24.4.0)
- Terminal: Ghostty 1.3.1
- Karabiner-Elements 15.9.0 (ctrl ↔ cmd swap)
Steps to reproduce
- Set up Karabiner ctrl ↔ cmd swap — edit
~/.config/karabiner/karabiner.jsonand addsimple_modificationsinside the profile:
``json``
"simple_modifications": [
{ "from": { "key_code": "left_command" }, "to": [{ "key_code": "left_control" }] },
{ "from": { "key_code": "left_control" }, "to": [{ "key_code": "left_command" }] },
{ "from": { "key_code": "right_command" }, "to": [{ "key_code": "right_control" }] },
{ "from": { "key_code": "right_control" }, "to": [{ "key_code": "right_command" }] }
]
Reload Karabiner (it auto-reloads on file change). Verify swap works: pressing physical Ctrl+C in a regular app should copy (since it reaches the OS as cmd+c).
- Create
~/.claude/keybindings.json:
``json``
{
"$schema": "https://www.schemastore.org/claude-code-keybindings.json",
"bindings": [
{ "context": "Chat", "bindings": { "command+v": "chat:imagePaste" } }
]
}
- Launch Claude Code inside Ghostty (fresh session so the new keybindings file is loaded).
- Copy an image to the clipboard — e.g.,
Shift+Cmd+Ctrl+4screenshot-to-clipboard, or copy an image from Finder / a browser. Verify with:
``bash`
osascript -e 'clipboard info'
«class PNGf»` or similar image class.
Output should include
- Focus Claude Code input and press physical
Ctrl+V.
Expected: an image is attached to the prompt.
Actual: an image is attached to the prompt (the binding works correctly).
- Open a new terminal window, launch Claude Code fresh, and look at the bottom-right footer immediately — a keybinding-error indicator is shown from session start, without any user action needed. It persists throughout the session.
- In that fresh session, run
/doctor— it reports:
````
Keybinding configuration issues · /Users/maxwell.house/.claude/keybindings.json
"cmd+v" may not work: macOS system paste
Request
Claude Code should not flag explicit user bindings that function correctly. In this case, steps 6 and 7 of the reproduction above should not occur.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗