Keyboard shortcuts
The full default keymap, verified against the Karmas Coder source, plus JSON customization.
mod means Command on macOS and Control on Windows or Linux.
Navigate
| Shortcut | Action |
|---|---|
mod+k | Search the sidebar |
mod+b | Toggle the sidebar |
mod+1 … mod+9 | Jump to the Nth thread |
mod+shift+] / mod+shift+[ | Next / previous visible chat |
ctrl+tab / ctrl+shift+tab | Cycle recent views |
cmd+ctrl+← / cmd+ctrl+→ | Previous / next open thread tab (macOS) |
ctrl+pageup / ctrl+pagedown | Previous / next open thread tab (Windows/Linux) |
mod+shift+o | Add a project |
mod+i | Import a thread |
mod+alt+u | Toggle the Activity panel |
mod+shift+c | Copy the active thread ID |
mod+o | Open the favorite file in the editor |
mod+p | Search files by name in the active project |
mod+shift+f | Search matching source lines in the active project |
mod+f | Find text in the current conversation |
mod+alt+s | Toggle the side chat |
Open thread tab shortcuts wrap at either end and apply while the horizontal tab strip is visible. On Windows and Linux they yield to a focused terminal; on macOS they also work from the terminal.
On Windows and Linux, the side chat and active-thread action shortcuts yield to a focused terminal; on macOS they also work from the terminal. Active-thread actions apply only when a chat pane is focused.
Create
| Shortcut | Action |
|---|---|
mod+n | New task in the active project |
mod+shift+n | New task in the latest project |
mod+alt+n | New chat without a project |
mod+shift+t | New terminal-first task |
mod+alt+c / mod+alt+x / mod+alt+r | New Claude / Codex / Cursor thread |
mod+\ | Split the current chat |
Composer and models
| Shortcut | Action |
|---|---|
cmd+l | Focus or blur the composer |
mod+shift+m | Toggle the model picker |
alt+] / alt+[ | Cycle the active provider's models |
shift+tab | Cycle model effort in the composer |
mod+shift+e | Toggle the reasoning/effort picker |
mod+shift+u | Open usage settings |
With the composer or its model picker focused, shift+tab advances through the
current model's supported effort levels. The existing model picker opens to show
the selection and closes automatically 1.5 seconds after the last shortcut press.
Models without effort controls keep normal keyboard focus navigation.
Panels and terminals
| Shortcut | Action | Context |
|---|---|---|
mod+j | Toggle the terminal drawer | Anywhere |
mod+shift+j | Full-width terminal workspace (ctrl+1/ctrl+2 switch terminal/chat) | Anywhere |
mod+w | Close the active workspace panel | Terminal workspace open |
mod+d | Toggle the diff panel | Outside the terminal |
alt+↓ / alt+↑ | Next / previous diff change | Outside the terminal |
mod+s | Save the active file editor immediately | Outside the terminal |
mod+d | Split the terminal | Terminal focused |
mod+shift+arrows | Directional terminal splits | Terminal focused |
mod+t / mod+w | New / close terminal tab | Terminal focused |
mod+shift+b | Toggle the browser preview | Outside the terminal |
meta+ctrl+p / ctrl+alt+p | Commit and push (macOS / Windows-Linux) | Outside the terminal |
mod+alt+shift+a | Archive the active thread | Chat pane focused |
mod+alt+shift+s | Snooze the active thread | Chat pane focused |
mod+alt+shift+u | Mark the active thread unread | Chat pane focused |
Opening a file or source match sends it to the current task's file pane. Content search requires at least two characters and shows the matching path, line number, and source excerpt. The iOS Simulator exposes a customizable device.toggle command but has no default shortcut; open it from the right-dock add menu or assign a key in Settings.
Karmas Coder main adds project spaces with mod+alt+← / mod+alt+→ to switch spaces and
mod+alt+1…9 to jump. See Features on main.
Custom keybindings
A settings panel lets you explore and remap shortcuts. For full control, Karmas Coder reads user overrides from:
~/.synara/userdata/keybindings.jsonWorkspace file search (search.files) and content search (search.content) can be remapped or unassigned in Settings. Their default chords yield to a focused terminal.
The file contains an ordered JSON array. The last matching rule whose when expression is true wins.
[
{ "key": "mod+g", "command": "terminal.toggle" },
{ "key": "mod+shift+g", "command": "terminal.new", "when": "terminalFocus" }
]Supported context keys currently include terminalFocus, terminalOpen, and composerFocus. Expressions support !, &&, ||, and parentheses. Invalid rules are ignored and logged by the local server.