Keyboard Shortcuts
Keyboard Shortcuts
All registered SideCar shortcuts are listed below. Every shortcut can be rebound — see Customizing shortcuts at the bottom of this page.
Chat Panel
| Action |
Mac |
Windows / Linux |
When |
| Toggle chat panel |
⌘⇧I |
Ctrl+Shift+I |
Always |
| Clear chat |
⌘L |
Ctrl+L |
Always |
| Undo all AI changes |
⌘⇧U |
Ctrl+Shift+U |
Always |
| Export chat as Markdown |
⌘⇧E |
Ctrl+Shift+E |
Always |
Inline Edit
| Action |
Mac |
Windows / Linux |
When |
| Open inline chat |
⌘I |
Ctrl+I |
Editor focused |
| Dismiss inline edit |
Escape |
Escape |
Editor focused, inline edit pending |
Agent Actions
| Action |
Mac |
Windows / Linux |
When |
| Undo all AI changes |
⌘⇧U |
Ctrl+Shift+U |
Always |
| Rename session |
F2 |
F2 |
Sessions view focused, item selected |
| Load session |
Enter |
Enter |
Sessions view focused, item selected |
Completions
| Action |
Mac |
Windows / Linux |
When |
| Accept next word of inline suggestion |
⌘→ |
Ctrl+Right |
Inline suggestion visible, editor not readonly |
Customizing shortcuts
Open the VS Code keyboard shortcuts editor with ⌘K ⌘S (Mac) or Ctrl+K Ctrl+S (Windows / Linux), then type SideCar in the search box to filter to all SideCar bindings. Click the pencil icon next to any entry to rebind it.
To edit keybindings.json directly, press ⌘K ⌘S and click the Open Keyboard Shortcuts (JSON) icon in the top-right corner of the editor. Example entry:
[
{
"key": "ctrl+shift+i",
"command": "sidecar.toggleChat"
},
{
"key": "cmd+i",
"command": "sidecar.inlineChat",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+u",
"command": "sidecar.undoChanges"
},
{
"key": "ctrl+shift+e",
"command": "sidecar.exportChat"
},
{
"key": "ctrl+l",
"command": "sidecar.clearChat"
}
]
The full list of bindable SideCar command IDs:
| Command ID |
Default action |
sidecar.toggleChat |
Toggle chat panel |
sidecar.inlineChat |
Open inline chat |
sidecar.clearChat |
Clear chat |
sidecar.undoChanges |
Undo all AI changes |
sidecar.exportChat |
Export chat as Markdown |
sidecar.rejectInlineEdit |
Dismiss pending inline edit |
sidecar.acceptInlineEdit |
Accept pending inline edit (no default binding) |
sidecar.sessions.rename |
Rename session |
sidecar.sessions.load |
Load session |
sidecar.explainSelection |
Explain selection in chat |
sidecar.fixSelection |
Fix selection with agent |
sidecar.refactorSelection |
Refactor selection with agent |