Duplicate keybindings in default bindings cause persistent warning

Resolved 💬 2 comments Opened Jan 29, 2026 by ragettostudio Closed Mar 1, 2026

Description

Claude Code displays a persistent warning at startup:

Found 1 keybinding error · /doctor for details

This warning appears even with an empty/default ~/.claude/keybindings.json file (containing only the schema).

Root Cause

The issue appears to be duplicate key bindings in the default bindings, not in user configuration.

Looking at the debug logs:

[keybindings] KeybindingSetup initialized with 99 bindings, 1 warnings

And examining the available actions documentation, I found these duplications in the default bindings:

| Action | Default Bindings (with duplicates) |
|--------|-----------------------------------|
| confirm:no | escape, n, escape ← duplicate escape |
| select:next | down, j, ctrl+n, down, j, ctrl+n ← triplicate |
| select:previous | up, k, ctrl+p, up, k, ctrl+p ← triplicate |

Steps to Reproduce

  1. Have a default or empty ~/.claude/keybindings.json:
{
  "$schema": "https://platform.claude.com/docs/schemas/claude-code/keybindings.json",
  "$docs": "https://code.claude.com/docs/en/keybindings"
}
  1. Start Claude Code
  2. Observe the warning "Found 1 keybinding error"

Expected Behavior

No warning should appear when using default configuration.

Environment

  • OS: Ubuntu (WSL2) on Windows 11
  • Claude Code: Latest version (installed via npm)

Suggested Fix

Remove duplicate key bindings from the default binding definitions for confirm:no, select:next, and select:previous actions.

View original on GitHub ↗

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