Skip to content

Keyboard Reference

Press ? in any panel for bindings scoped to that panel plus global keys. Everything below is remappable — see Configuration → Keybindings.

Global

Key Action
1 / 2 / 3 / 4 Status / Stash / Branch / Commit
Tab / Shift+Tab Cycle panels
; Command palette
? Help (click row, double-click to run binding)
U Undo last session action (confirm)
Shift+U Browse undo stack
P / F Push / Pull current branch
I Inspector for current selection
B Bisect sheet
Ctrl+P Toggle side preview (Status/Stash diff or Branch log graph)
Q / Esc Quit / back
@ Repo switcher (managed repos)

Header clicks: repo name opens the switcher; tab slots open an anchored panel picker.

The welcome guide opens itself on first run. To see it again, run "Show welcome guide" from Help (?), which lists keyless actions too — it has no shortcut of its own on purpose.

Status

Key Action
J / K Move selection
Enter Open diff (or expand/collapse directory in tree view)
A Stage file or visual selection
Shift+A Stage all listed files
D Discard changes
I Add to .gitignore
C Inline commit editor (staged files required)
Shift+C External $EDITOR commit
M Amend HEAD with staged changes
S Stash (optional message prompt, includes untracked)
V / Shift+V Visual multi-select / visual scroll
Space Toggle row selection (visual mode)
/ Filter file list
Ctrl+T Tree / flat layout
H / L Collapse / expand directory (tree)
J / K (preview) Scroll side preview (Shift+J / Shift+K when not in visual mode)
Y Copy file path

Stash

Key Action
Enter Open stash diff
A Apply (keep in list)
P Pop
D Drop (confirm)

Push stash from Status with S (optional message prompt).

Branch

Key Action
Enter Show commits without checkout
C Checkout
N New branch
M Merge current into selected
R Interactive rebase onto selected branch
Shift+R Rename
D Delete
P Open create-PR URL in browser
Ctrl+F Cycle scope: local → remote → all
Shift+J / Shift+K Scroll log-graph preview

Commit

Key Action
Enter View commit diff
C Cherry-pick onto HEAD
O Browse another ref's log
Z Toggle expanded commit rows
Ctrl+R Toggle contribution graph strip
/ Filter by message or SHA
Y Copy commit SHA

Diff viewer

Key Action
J / K / arrows Line up / down
Shift+J / Shift+K Page up / down
H / L / left / right Scroll columns
[ / ] Previous / next hunk
H Toggle hunk mode
S / D Stage / discard hunk (hunk mode)
, / . Previous / next file in commit
V File history (commit diffs)
P / N Older / newer commit (file history)
Esc Close diff

Command palette

Input Action
; Open palette
Space after command Switch to argument completion
Tab Fill highlighted candidate
Enter Run

Parameterized: checkout, merge, stage, gitignore, reflog.

Rebase sheet

Opened from Branch R before the sequencer runs.

Key Action
J / K Move in todo list
Shift+J / Shift+K Move commit down / up
P / S / F / R / E / D pick / squash / fixup / reword / edit / drop
Enter Confirm and start rebase
Esc Cancel

While a sequencer is active, palette entries such as continue-merge, rebase-continue, and cherry-pick-abort appear under ;.

Bisect sheet (B)

Key Action
S Start (good [bad], bad defaults to HEAD)
G / B Mark current commit good / bad
R Reset bisect
Esc / @ Close

Worktree picker

From repo switcher, press W.

Key Action
+ Add linked worktree
- Remove (dirty requires --force confirm)