[FEATURE]
Status Open
Reported on v2.1.296
Maintainer reply None cached
Workaround ✓ Mentioned in description ↑
Activity 0 comments · opened Oct 11, 2026
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
Type: missing capability
Area: VS Code extension keybindings
Title: VS Code extension: interrupt key (Esc) cannot be remapped or disabled
- What happened: User wanted Esc to stop interrupting a running turn. In the CLI this works via ~/.claude/keybindings.json ("escape": null in the Chat context; debug log showed it loaded, 0 warnings). The VS Code extension's panel ignores keybindings.json: Esc is handled inside the webview, and no claudeCode.* setting or VS Code keybinding changes it. Expected: a configurable or disableable interrupt key in the extension too, e.g. by honoring keybindings.json.
- What the user said: "Just Esc results in too many accidental interruptions." and "Is it possible to replace Esc by Cmd+Esc for interruption?"
- Repro: Create ~/.claude/keybindings.json with {"bindings":[{"context":"Chat","bindings":{"escape":null}}]}. In the CLI, Esc no longer cancels a turn. In the VS Code extension panel, Esc still interrupts. The only workaround is claudeCode.useTerminal: true, which gives up the graphical panel.
- Evidence: VS Code extension anthropic.claude-code 2.1.296 (darwin-arm64); CLI 2.1.296 (host) and 2.1.295 (dev container). The extension's package.json contributes no Esc keybinding (Cmd+Esc is used for focus/blur); the Esc handlers are in webview/index.js. None of the 22 claudeCode.* settings covers the interrupt key.
Task category: other
Proposed Solution
Provide option for binding interrupt to Ctrl-C for example.
Alternative Solutions
_No response_
Priority
Low - Nice to have
Feature Category
Other
Use Case Example
_No response_
Additional Context
_No response_