[BUG] Custom keybindings in Chat context silently ignored since v2.1.105–2.1.107 (regression from 2.1.104)
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report
- [x] I am using the latest version of Claude Code
What's Wrong?
Custom keybindings defined in ~/.claude/keybindings.json for the Chat context are silently ignored starting in v2.1.105–2.1.107. The binding itself is still parsed (file is valid and was untouched across upgrades), but the bound action never fires.
Specifically: "ctrl+/": "voice:pushToTalk" worked reliably on v2.1.104 and stopped firing by v2.1.107. Default Space push-to-talk still works, confirming voice itself is functional — only custom bindings are broken.
Tested with an alternate chord (ctrl+.) to rule out Ctrl+/ parsing — also ignored. So the regression is the custom keybinding dispatch, not any specific key combo.
What Should Happen?
Pressing Ctrl+/ (or any configured custom binding) in the Chat context should invoke the bound action — in this case voice:pushToTalk.
Steps to Reproduce
- Create \
~/.claude/keybindings.json\:
\\\json\
{
"bindings": [
{
"context": "Chat",
"bindings": {
"ctrl+/": "voice:pushToTalk"
}
}
]
}
\\
- Start Claude Code on v2.1.104 → Ctrl+/ activates voice push-to-talk.
- Upgrade to v2.1.107+ → Ctrl+/ does nothing. Default Space still works.
Last Working Version
2.1.104
Claude Code Version
2.1.107+ (broken; did not test 2.1.105/2.1.106 individually, but changelog shows terminal key-encoding work landed in 2.1.105 which is a plausible culprit)
Platform
Anthropic API
Operating System
Linux (Fedora 43, kernel 6.19.11)
Terminal/Shell
bash
Additional Information
- Possibly related: #48023 (keybindings.json custom actions ignored on v2.1.89, macOS) — same symptom class, different version/platform, may share a root cause or be a re-regression after a fix.
- Precedents for silent default-binding changes in recent versions: #45364 (v2.1.94, Ctrl+L), #49317 (v2.1.111, Ctrl+W/Ctrl+U).
- Changelog note: v2.1.105 included fixes to \
alt+enter\(ESC-prefix alt encoding) and \Ctrl+J\newline handling — likely the same area of code.
This issue has 9 comments on GitHub. Read the full discussion on GitHub ↗