Keyboard & commands
VibeGuild's first rule: keyboard passthrough is sacred. Agents are terminal programs with their own keybindings, so the app reserves almost nothing — everything you type reaches the focused terminal.
The reserved shortcuts
| Shortcut | Does |
|---|---|
Cmd/Ctrl+1…9 | Focus pane N (works while zoomed — it retargets the zoom) |
Cmd+K / Ctrl+Shift+K | Command mode (the leader key) |
Cmd+Shift+P / Ctrl+Shift+P | Command palette |
Cmd+F / Ctrl+Shift+F | Find in terminal |
That is the whole list, and the bar for joining it is deliberately high:
VibeGuild is a terminal emulator, so a key may only be reserved when other
terminal emulators already claim it and it could never have reached the
program anyway. Cmd+F is the macOS terminal convention and Cmd shortcuts
cannot reach a PTY at all; Ctrl+Shift+F is the Windows and Linux terminal
convention, leaving plain Ctrl+F to readline where it belongs.
Every other action is a command you reach through the two surfaces below, and all of it is rebindable in Settings → Keyboard — including the four reserved shortcuts themselves, with conflicts refused by name.
Command mode
The leader key opens a tmux-style layer: a panel shows every key at the
current level, and short sequences run commands. Groups nest one or two
levels deep, unavailable commands render dimmed and say why, and unbound
keys flash rather than fail silently. Esc cancels, Backspace goes up a
level, and the rows are clickable.
| Sequence | Does |
|---|---|
1…9 | Focus pane N · z zoom · a jump to an agent needing input · f jump to a finished agent |
p | Pane: p t terminal · p e empty · p n 1…9 a specific agent · p s split right · p d split down · p f find · p r restart · p x close |
w | Workspace: w 1…9 switch · w w next · w n new |
l | Layout: l g tidy grid · l c columns · l r rows · l m main + stack · l u undo |
v | View: v p toggle panel · v e editor · v g git · v b browser · v k knowledge · v m MCP · v r toggle rail |
e / b | Editor and Browser actions, shown when that tool applies |
t · s · space | Change theme · Settings · command palette |
While the panel is open it owns the keyboard. That opt-in is exactly what keeps the reserved list this short, and closing it hands focus straight back to the terminal the leader press interrupted. The status bar shows the pending sequence as you type it.
Command palette
The palette is the searchable face of the same commands: type to filter, Enter to run. It lists only what can run right now, panes are findable by their occupant's nickname ("Focus pane 3: Nix"), every row teaches its leader sequence, and an empty query leads with the commands you ran most recently — so it doubles as "do that again".
Two families live only here, because they are unbounded: themes (arrow through them and the whole app live-previews; Enter keeps it, Esc puts everything back) and skills (picking one types the playbook into the focused agent's terminal, never submitted).
Find in terminal
Cmd+F / Ctrl+Shift+F opens a small overlay in the pane's corner: live
search over that terminal's buffer with a match count, toggles for case,
whole word and regex, Enter / Shift+Enter to step through matches, and
Esc to hand the keyboard back to the terminal.
Tool shortcuts
The editor and browser are not terminals, so while one of them has focus it answers plain modifier keys — there is no shell there to owe them to:
| Where | Keys |
|---|---|
| Editor | Cmd/Ctrl+P quick open and search · Cmd/Ctrl+S save · Cmd/Ctrl+W close tab |
| Browser | Cmd/Ctrl+L address bar · Cmd/Ctrl+R reload · Cmd/Ctrl+T new tab · Cmd/Ctrl+W close tab |
The same actions are leader commands too, under e and b.
One honest limit: keys pressed inside the browser's actual web page never reach the app. While you're typing in a page, the page owns the keyboard, so the app's shortcuts and the browser's own pause until you click any app surface — a pane, the toolbar, the rail — to bring them back.
Voice input
Hold Right Alt/Option (rebindable in Settings → Voice), speak, release: the transcript is typed into the focused pane or editor — never submitted. You review it and press Enter yourself.
Transcription runs fully on-device; audio never leaves your machine. A good default English model downloads once on first launch with a progress bar in the status bar, and Settings → Voice offers the full range from tiny to large, English-only or multilingual, plus the microphone and the push-to-talk key.
Dictation only ever lands where you actually had keyboard focus. Press the key anywhere else and it does nothing; if the target closes mid-transcript the text is dropped with a note rather than typed somewhere you didn't mean. The key keeps doing whatever it normally does — dictation listens, it never steals the keyboard — and push-to-talk stands down while command mode or the palette is open.