Feature request: keyboard shortcut to switch between chats/sessions in the sidebar panel
Summary
The VS Code extension currently offers no way to switch between chat sessions in the sidebar panel using the keyboard. Please add bindable commands (e.g. "next session" / "previous session") so users can cycle through sidebar chats with a shortcut.
Current behavior
In the sidebar panel, multiple sessions can only be switched by clicking the history (clock) icon and picking from the "Search sessions…" dropdown with the mouse. After inspecting the extension (anthropic.claude-code 2.1.183), I confirmed:
- The extension contributes no next/previous session/conversation command (the only session-related command is
claude-vscode.reopenClosedSession). - The session list (
claudeVSCodeSessionsList) is a webview, sokeybindings.jsoncommands likeworkbench.action.nextEditorcannot reach it. - There is no setting to enable such a shortcut.
As a result, keyboard-driven session switching is impossible in sidebar mode. The only keyboard-capable workaround is opening each chat as a separate editor tab (Open in New Tab, cmd+shift+escape), which defeats the purpose of the compact sidebar panel.
Requested behavior
Add commands such as claude-vscode.nextSession / claude-vscode.previousSession (bindable via keybindings.json), allowing users to map e.g. alt+cmd+[ / alt+cmd+] to cycle sessions while the Claude sidebar panel is focused.
Environment
- Extension: anthropic.claude-code 2.1.183 (darwin-arm64)
- OS: macOS (darwin)
3 Comments
Confirming this on Linux with extension 2.1.218 (original report: macOS 2.1.183) — still no next/previous session command contributed.
Adding a data point on why the natural
keybindings.jsonworkaround can't work, in case it helps scope the fix. Bindingctrl+tabtoworkbench.action.nextEditorInGroupwithwhen: activeWebviewPanelId == 'claudeVSCodePanel'silently does nothing for a side-bar conversation. The keybinding troubleshooting log shows why:The user binding is present but its
whenis false —activeWebviewPanelIdis only set for editor-area webviews — so the keystroke falls through to the built-in and switches editor tabs, which is actively confusing.Worth noting the plumbing for a fix already exists:
Ctrl+N(claude-vscode.newConversation) does fire from a focused side-bar conversation, via the second branch of its ownwhen:So
claude-vscode.nextSession/previousSessiongated on that same context key should be keyboard-reachable in the side bar using infrastructure that already ships.+1. It would make a huge difference to my daily workflow. This is the most missing keyboard shortcut in the VS Code extension for me!
+1. Still missing in 2.1.292 (running in Cursor). Cursor's own agent chats switch with a keyboard shortcut, and I want the same for Claude sessions in the secondary sidebar.
Workaround I tried: open sessions as editor tabs and bind
workbench.action.nextEditorInGroupwithwhen: activeWebviewPanelId == 'claudeVSCodePanel'. That works, but it moves sessions out of the sidebar. Opening a session from the sessions list also always opens an editor tab, never the sidebar.Requested:
claude-vscode.nextSession/claude-vscode.previousSessioncommands that switch the conversation shown in the sidebar view, so they can be bound in keybindings.json.