fix(ai): bind Shift+Cmd+I to Focus Chat (was only Ctrl+Cmd+I)#28
Merged
Conversation
The chat-focus command worked from the Command Palette but Shift+Cmd+I did nothing: the only contributed binding was ctrl+cmd+i, and Shift+Cmd+I is claimed in the Code-OSS base by the built-in VS Code chat's "Open Chat (Agent)" action (chatActions.ts:593, gated on config.chat.agent.enabled). LevelCode ships its own chat and doesn't enable that, so the key fired a dead/stripped built-in action instead of LevelCode's chat. Added an explicit shift+cmd+i -> levelcode.ai.focus binding. Bundled-extension keybindings register at weight >= BuiltinExtension (300), above the base action's WorkbenchContrib (200), so the explicit binding wins (confirmed in keybindingService.ts:633-635). Mirrors VS Code's own chat convention across platforms (mac shift+cmd+i, win ctrl+shift+i, linux ctrl+alt+shift+i to dodge Dev Tools), and keeps the existing ctrl+cmd+i so no one loses their current shortcut. Also closes a latent gap: the old `"key": "ctrl+cmd+i"` used `cmd`, invalid on Windows/Linux, so those platforms had no chat shortcut at all. Verified: package.json is valid and the bindings resolve to shift+cmd+i on mac. The keypress itself needs a build to smoke-test (no editor host here), but the weight-override mechanism is confirmed in the Code-OSS source. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Fixes LevelCode AI chat focus keybinding so Shift+Cmd+I works on macOS (and adds sensible defaults for Windows/Linux), preventing the shortcut from triggering the stripped/built-in chat action.
Changes:
- Add
shift+cmd+i(macOS) /ctrl+shift+i(Windows default) /ctrl+alt+shift+i(Linux) keybinding forlevelcode.ai.focus. - Keep the existing
ctrl+cmd+ibinding forlevelcode.ai.focusas an additional shortcut.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The bug
Shift+Cmd+Idoes nothing — the LevelCode AI chat only opens from the Command Palette ("AI: Focus Chat") orCtrl+Cmd+I.Why
The command was fine; only its keybinding was wrong. The single contributed binding was
ctrl+cmd+i, andShift+Cmd+Iis already claimed in the Code-OSS base by the built-in VS Code chat's "Open Chat (Agent)" action:LevelCode ships its own chat and doesn't enable the built-in one, so
Shift+Cmd+Ifired a dead/stripped action instead of LevelCode's chat.Fix
An explicit
shift+cmd+i → levelcode.ai.focusbinding. This reliably wins over the base action because bundled-extension keybindings register at a higher weight than workbench defaults — verified in source, not assumed:Shift+Cmd+I(what was requested) — mirrors VS Code's own chatCtrl+Shift+ICtrl+Alt+Shift+I(dodges Dev Tools, same as VS Code's chat does)The existing
Ctrl+Cmd+Iis kept as a second binding, so no one loses their current shortcut. This also closes a latent gap: the old"key": "ctrl+cmd+i"usedcmd, which is invalid on Windows/Linux — those platforms had no chat shortcut at all.Verification
package.jsonis valid; the bindings resolve toshift+cmd+ion macOS (+ the cross-platform set).🤖 Generated with Claude Code