[BUG] Ctrl-Esc doesn't give Claude Code VS Code extension the focus

Resolved 💬 4 comments Opened Jan 15, 2026 by paulgear Closed Feb 28, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

As the subject says, pressing Ctrl-Esc doesn't focus the Claude Code extension's input field in VS Code.

I worked through the debugging process with Claude, including using the VS Code keyboard binding troubleshooter, and it is clear that the extension is receiving the focus, because pressing the sequence Ctrl-Esc, Tab, Shift-Tab allows me to start typing. So Claude Code has the focus, but isn't activating the input field correctly.

Attached is a debug log of the successful sequence from VS Code. And obviously unsuccessful as well, because it doesn't work after the first Ctrl-Esc. I typed "hi claude" directly after Ctrl-Esc, then did Tab, Shift-Tab and typed "hi claude" again. The first "hi claude" did not appear in the input box; the second did.

VS Code version:

Version: 1.108.0
Commit: 94e8ae2b28cb5cc932b86e1070569c4463565c37
Date: 2026-01-08T13:53:10.781Z
Electron: 39.2.7
ElectronBuildId: 12953945
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Linux x64 6.14.0-37-generic snap

What Should Happen?

Claude's input field should be available as soon as I press Ctrl-Esc.

Error Messages/Logs

2026-01-15 12:07:43.365 [info] [Window] [KeybindingService]: / Soft dispatching keyboard event
2026-01-15 12:07:43.366 [info] [Window] [KeybindingService]: \ Keyboard event cannot be dispatched
2026-01-15 12:07:43.367 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 17, key: Control
2026-01-15 12:07:43.367 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 5 ('Ctrl')
2026-01-15 12:07:43.367 [info] [Window] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2026-01-15 12:07:43.936 [info] [Window] [KeybindingService]: / Soft dispatching keyboard event
2026-01-15 12:07:43.937 [info] [Window] [KeybindingService]: | Resolving ctrl+[Escape]
2026-01-15 12:07:43.937 [info] [Window] [KeybindingService]: \ From 3 keybinding entries, matched claude-vscode.focus, when: editorTextFocus && !config.claudeCode.useTerminal, source: user extension Anthropic.claude-code.
2026-01-15 12:07:43.937 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [ctrl], code: Escape, keyCode: 27, key: Escape
2026-01-15 12:07:43.937 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [ctrl], code: Escape, keyCode: 9 ('Escape')
2026-01-15 12:07:43.938 [info] [Window] [KeybindingService]: | Resolving ctrl+[Escape]
2026-01-15 12:07:43.938 [info] [Window] [KeybindingService]: \ From 3 keybinding entries, matched claude-vscode.focus, when: editorTextFocus && !config.claudeCode.useTerminal, source: user extension Anthropic.claude-code.
2026-01-15 12:07:43.938 [info] [Window] [KeybindingService]: + Invoking command claude-vscode.focus.
2026-01-15 12:07:43.956 [error] [Window] An unknown error occurred. Please consult the log for more details.
2026-01-15 12:07:44.491 [info] [Window] [KeybindingService]: + Ignoring single modifier ctrl due to it being pressed together with other keys.
2026-01-15 12:07:48.575 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyH, keyCode: 72, key: h
2026-01-15 12:07:48.575 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyH, keyCode: 38 ('H')
2026-01-15 12:07:48.575 [info] [Window] [KeybindingService]: | Resolving [KeyH]
2026-01-15 12:07:48.576 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:48.825 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyI, keyCode: 73, key: i
2026-01-15 12:07:48.825 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyI, keyCode: 39 ('I')
2026-01-15 12:07:48.825 [info] [Window] [KeybindingService]: | Resolving [KeyI]
2026-01-15 12:07:48.826 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:49.333 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: Space, keyCode: 32, key:  
2026-01-15 12:07:49.333 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: Space, keyCode: 10 ('Space')
2026-01-15 12:07:49.334 [info] [Window] [KeybindingService]: | Resolving [Space]
2026-01-15 12:07:49.334 [info] [Window] [KeybindingService]: \ From 8 keybinding entries, no when clauses matched the context.
2026-01-15 12:07:49.500 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyC, keyCode: 67, key: c
2026-01-15 12:07:49.500 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyC, keyCode: 33 ('C')
2026-01-15 12:07:49.500 [info] [Window] [KeybindingService]: | Resolving [KeyC]
2026-01-15 12:07:49.500 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:49.655 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyL, keyCode: 76, key: l
2026-01-15 12:07:49.656 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyL, keyCode: 42 ('L')
2026-01-15 12:07:49.656 [info] [Window] [KeybindingService]: | Resolving [KeyL]
2026-01-15 12:07:49.656 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:49.791 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyE, keyCode: 69, key: e
2026-01-15 12:07:49.792 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyE, keyCode: 35 ('E')
2026-01-15 12:07:49.792 [info] [Window] [KeybindingService]: | Resolving [KeyE]
2026-01-15 12:07:49.792 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:49.939 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyA, keyCode: 65, key: a
2026-01-15 12:07:49.939 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyA, keyCode: 31 ('A')
2026-01-15 12:07:49.939 [info] [Window] [KeybindingService]: | Resolving [KeyA]
2026-01-15 12:07:49.939 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:50.168 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyU, keyCode: 85, key: u
2026-01-15 12:07:50.168 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyU, keyCode: 51 ('U')
2026-01-15 12:07:50.168 [info] [Window] [KeybindingService]: | Resolving [KeyU]
2026-01-15 12:07:50.168 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:50.344 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyD, keyCode: 68, key: d
2026-01-15 12:07:50.344 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyD, keyCode: 34 ('D')
2026-01-15 12:07:50.344 [info] [Window] [KeybindingService]: | Resolving [KeyD]
2026-01-15 12:07:50.345 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:50.430 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyE, keyCode: 69, key: e
2026-01-15 12:07:50.430 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyE, keyCode: 35 ('E')
2026-01-15 12:07:50.431 [info] [Window] [KeybindingService]: | Resolving [KeyE]
2026-01-15 12:07:50.431 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:07:56.387 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: Tab, keyCode: 9, key: Tab
2026-01-15 12:07:56.387 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: Tab, keyCode: 2 ('Tab')
2026-01-15 12:07:56.388 [info] [Window] [KeybindingService]: | Resolving [Tab]
2026-01-15 12:07:56.388 [info] [Window] [KeybindingService]: \ From 12 keybinding entries, no when clauses matched the context.
2026-01-15 12:07:58.553 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [shift], code: ShiftLeft, keyCode: 16, key: Shift
2026-01-15 12:07:58.554 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [shift], code: ShiftLeft, keyCode: 4 ('Shift')
2026-01-15 12:07:58.554 [info] [Window] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2026-01-15 12:07:58.669 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [shift], code: Tab, keyCode: 9, key: Tab
2026-01-15 12:07:58.669 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [shift], code: Tab, keyCode: 2 ('Tab')
2026-01-15 12:07:58.670 [info] [Window] [KeybindingService]: | Resolving shift+[Tab]
2026-01-15 12:07:58.670 [info] [Window] [KeybindingService]: \ From 6 keybinding entries, no when clauses matched the context.
2026-01-15 12:07:58.815 [info] [Window] [KeybindingService]: + Ignoring single modifier shift due to it being pressed together with other keys.
2026-01-15 12:08:00.601 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyH, keyCode: 72, key: h
2026-01-15 12:08:00.601 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyH, keyCode: 38 ('H')
2026-01-15 12:08:00.601 [info] [Window] [KeybindingService]: | Resolving [KeyH]
2026-01-15 12:08:00.602 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:00.783 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyI, keyCode: 73, key: i
2026-01-15 12:08:00.784 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyI, keyCode: 39 ('I')
2026-01-15 12:08:00.784 [info] [Window] [KeybindingService]: | Resolving [KeyI]
2026-01-15 12:08:00.784 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:00.901 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: Space, keyCode: 32, key:  
2026-01-15 12:08:00.902 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: Space, keyCode: 10 ('Space')
2026-01-15 12:08:00.902 [info] [Window] [KeybindingService]: | Resolving [Space]
2026-01-15 12:08:00.902 [info] [Window] [KeybindingService]: \ From 8 keybinding entries, no when clauses matched the context.
2026-01-15 12:08:01.036 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyC, keyCode: 67, key: c
2026-01-15 12:08:01.036 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyC, keyCode: 33 ('C')
2026-01-15 12:08:01.037 [info] [Window] [KeybindingService]: | Resolving [KeyC]
2026-01-15 12:08:01.037 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:01.186 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyL, keyCode: 76, key: l
2026-01-15 12:08:01.186 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyL, keyCode: 42 ('L')
2026-01-15 12:08:01.186 [info] [Window] [KeybindingService]: | Resolving [KeyL]
2026-01-15 12:08:01.187 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:01.446 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyA, keyCode: 65, key: a
2026-01-15 12:08:01.446 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyA, keyCode: 31 ('A')
2026-01-15 12:08:01.446 [info] [Window] [KeybindingService]: | Resolving [KeyA]
2026-01-15 12:08:01.447 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:01.592 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyU, keyCode: 85, key: u
2026-01-15 12:08:01.592 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyU, keyCode: 51 ('U')
2026-01-15 12:08:01.593 [info] [Window] [KeybindingService]: | Resolving [KeyU]
2026-01-15 12:08:01.593 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:01.671 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyD, keyCode: 68, key: d
2026-01-15 12:08:01.671 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyD, keyCode: 34 ('D')
2026-01-15 12:08:01.672 [info] [Window] [KeybindingService]: | Resolving [KeyD]
2026-01-15 12:08:01.672 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:01.707 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: KeyE, keyCode: 69, key: e
2026-01-15 12:08:01.707 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: KeyE, keyCode: 35 ('E')
2026-01-15 12:08:01.707 [info] [Window] [KeybindingService]: | Resolving [KeyE]
2026-01-15 12:08:01.707 [info] [Window] [KeybindingService]: \ No keybinding entries.
2026-01-15 12:08:06.387 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [shift], code: ShiftLeft, keyCode: 16, key: Shift
2026-01-15 12:08:06.388 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [shift], code: ShiftLeft, keyCode: 4 ('Shift')
2026-01-15 12:08:06.388 [info] [Window] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2026-01-15 12:08:06.428 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [ctrl,shift], code: ControlLeft, keyCode: 17, key: Control
2026-01-15 12:08:06.428 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [ctrl,shift], code: ControlLeft, keyCode: 5 ('Ctrl')
2026-01-15 12:08:06.429 [info] [Window] [KeybindingService]: \ Keyboard event cannot be dispatched in keydown phase.
2026-01-15 12:08:06.704 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [ctrl,shift], code: KeyP, keyCode: 80, key: P
2026-01-15 12:08:06.704 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [ctrl,shift], code: KeyP, keyCode: 46 ('P')
2026-01-15 12:08:06.704 [info] [Window] [KeybindingService]: | Resolving ctrl+shift+[KeyP]
2026-01-15 12:08:06.705 [info] [Window] [KeybindingService]: \ From 2 keybinding entries, matched workbench.action.showCommands, when: no when condition, source: built-in.
2026-01-15 12:08:06.705 [info] [Window] [KeybindingService]: + Invoking command workbench.action.showCommands.
2026-01-15 12:08:06.926 [info] [Window] [KeybindingService]: + Ignoring single modifier ctrl due to it being pressed together with other keys.
2026-01-15 12:08:07.761 [info] [Window] [KeybindingService]: / Received  keydown event - modifiers: [], code: Enter, keyCode: 13, key: Enter
2026-01-15 12:08:07.762 [info] [Window] [KeybindingService]: | Converted keydown event - modifiers: [], code: Enter, keyCode: 3 ('Enter')
2026-01-15 12:08:07.762 [info] [Window] [KeybindingService]: | Resolving [Enter]
2026-01-15 12:08:07.762 [info] [Window] [KeybindingService]: \ From 38 keybinding entries, matched quickInput.accept, when: inQuickInput && !isComposing && quickInputType != 'quickWidget', source: built-in.
2026-01-15 12:08:07.762 [info] [Window] [KeybindingService]: + Invoking command quickInput.accept.

Steps to Reproduce

  1. Install Claude Code extension in VS Code on Ubuntu Linux 24.04 LTS
  2. Press Ctrl-Esc

Claude Model

None

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.7

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Other

Additional Information

<img width="692" height="529" alt="Image" src="https://github.com/user-attachments/assets/80e5ac30-5b77-460f-92cc-736665b208e9" />

View original on GitHub ↗

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