Custom keybindings.json not respected in Claude Code Desktop (Windows)
Description
Custom keyboard shortcuts configured via keybindings.json do not work in Claude Code Desktop on Windows, and there is no in-app Settings UI for keyboard shortcuts either.
Steps to reproduce
- On Windows, create
%APPDATA%\Claude\keybindings.jsonwith valid bindings, e.g.:
``json``
{
"$schema": "https://www.schemastore.org/claude-code-keybindings.json",
"$docs": "https://code.claude.com/docs/en/keybindings",
"bindings": [
{
"context": "Chat",
"bindings": {
"shift+tab": "chat:cycleMode",
"alt+p": "chat:modelPicker",
"alt+t": "chat:thinkingToggle"
}
}
]
}
- Fully quit and restart Claude Code Desktop.
- Try Shift+Tab, Alt+P, Alt+T in the chat input.
Expected
These are documented default bindings (per https://code.claude.com/docs/en/keybindings) — Shift+Tab should cycle permission mode, Alt+P should open the model picker, Alt+T should toggle extended thinking.
Actual
None of the shortcuts work in Desktop:
- Shift+Tab cycles focus/text on screen instead of cycling permission mode.
- Alt+P and Alt+T do nothing.
- No log entries mentioning "keybind" appear in
%APPDATA%\Claude\logs\main.logeven after placing the config file and restarting, suggesting Desktop does not parsekeybindings.jsonat all (this file appears to be CLI-only). - There is also no Settings/Preferences UI section in Desktop for configuring keyboard shortcuts.
Environment
- Claude Code Desktop, Windows 11
- CLI version present on the same machine: 2.1.220
Suggested fix
Either have Claude Code Desktop read the same keybindings.json file/schema as the CLI, or add a dedicated Keyboard Shortcuts section in Desktop's Settings UI.