Command palette
One keystroke to find any command in the app.
How to open
⌘K (macOS) or Ctrl+K (Linux/Windows). A floating overlay with a single search field.
⌘K (palette) with ⌘K inside the editor (which triggers Inline diff). Same keystroke, different surface — the editor has higher precedence when focused.What's in it
Every command in the app:
- Navigation actions (Open Settings, Open Terminal, Toggle Console).
- Editor actions (New File, Save All, Format Document).
- Agent actions (New Run, Cancel Run, Open History).
- View toggles (Toggle Sidebar, Toggle Right Panel).
- Theme switches.
Plus recent actions (★) pinned to the top.
Filter syntax
Plain substring works for most cases. Type terminal and you'll see "Open Terminal", "Toggle Terminal", "New Terminal Tab". The matcher is fuzzy — typos are forgiven within reason.
Each result shows:
- Command label.
- Category badge (Editor / Project / Run / Agent / Help).
- Keyboard shortcut chip if one is bound.
Categories
Commands are grouped by section. The full set is in static/js/palette-commands.json. Categories:
- Editor — file operations, cursor commands, formatting.
- Project — load, scan, switch workspace.
- Run — agent runs, cancellations, history.
- Agent — autonomy, model overrides, run controls.
- Help — open docs, cheat sheet, about.
Esc to close
Esc closes the palette without executing anything. Same with clicking outside.
Customizing
The palette is read from a built-in JSON registry. To add custom commands, drop a palette.json in your workspace root with the same shape — it merges into the registry on next workspace load.