[FEATURE]

Status Open
Reported on v2.1.296
Maintainer reply None cached
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_

View original on GitHub ↗