Keybindings

Every key in the wsx TUI, grouped by where you press it. Capital letters mean Shift plus the letter.

Dashboard

Moving around

KeyAction
j / k (or arrows)Move the selection
h / lFold / unfold the repo; l on a workspace attaches
z zToggle the repo's fold
z a (or z r)Unfold every repo
z M (or z m)Fold every repo
/Filter the rows; esc clears
escClear a status filter set by clicking the header tally
oSort by recency or by status (saved)
GGroup by repo or by attention
TabFocus the detail-bar reply, then the digest
qQuit; stops direct sessions (shared ones keep running)

q asks first if a workspace is still being created or archived.

Workspaces

KeyAction
enter / iAttach; on a repo header, create a workspace there
nCreate a workspace in the selected repo
NCreate one in permissive mode (skips agent permission prompts)
SCreate a tmux-shared workspace
TToggle the workspace between shared and direct
dArchive
e / t / v / gOpen in editor, terminal, diff, or lazygit
?Workspace actions card
#Edit tags
CPick the row's name color
KProcesses under the worktree
Ctrl-x 1–9Send a pinned command to the workspace
Ctrl-x aAgents panel

Repos and panes

KeyAction
K / J on a repoMove the repo up / down (saved)
sRepo settings
,Global settings
FHide rules for the repo
HRemote hosts
pToggle the digest
r (digest open)Refresh git and PR data
enter / l on a hidden groupShow its workspaces
h on a hidden groupCollapse it

Detail-bar reply

KeyAction
TabFocus the reply input
enterSend to the agent (starts it if needed)
escDiscard and return to the list

Switching panels

Panels open in a drawer at the bottom of the screen.

  • A panel's key opens it and replaces the open panel. Pressing the open panel's key again closes it. A key with nothing to open (? on a repo header) leaves the panel alone.
  • While a panel takes text (tag editor, name-color filter, name fields, a / filter), keys type. In the process list K kills; in the updates panel s splits.
  • Ctrl-x chords that open panels work from any panel. Progress cards for remote work ignore panel keys until they finish or you press esc.

Dialogs

KeyNew workspaceConfirm (archive, quit, share)
enterCreate (blank name generates one)—
y / n—Confirm / cancel
escCancelCancel
↑ / ↓Switch between name and tags—
TabCycle the agent—
Ctrl-sToggle shared—

Workspace actions card (?)

KeyAction
rRename the workspace and its branch
oOpen the setup log
xCancel a create in progress
C / #Name color / tags
j / kMove the selection, card stays open
e t v g enterAct on the workspace and close
? / escClose

Setup log viewer (? then o)

Shows the setup script's output: live while the workspace is being created, the saved log afterwards. Stderr lines are marked !. Only the last 2000 lines show.

KeyAction
j / k (or arrows)Scroll one line
PageUp / PageDownScroll ten lines
g / HomeJump to the start
G / EndJump to the end
esc / enterClose; setup keeps running

Panels opened from the dashboard

PanelKeys
Tag editor (#)type + enter add; arrows + space toggle; esc close
Hide rules (F)j/k move; space toggle; esc close
Name color (C)arrows move; type to filter; enter apply; Delete clear; esc close
Repo settings (s)j/k move; enter edit; d clear the repo's value; esc close
Global settings (,)j/k move; enter toggle, cycle, or edit; d reset to default; esc close
Processes (K)arrows move; r run a command; k SIGTERM; K SIGKILL; esc close
Remote hosts (H)j/k move; enter open; esc close
Remote workspace listenter attach or share; n/N new; r refresh; esc close

Digest (p, focused)

KeyAction
j / k (or arrows)Move the selection
enterAttach to the workspace
/Filter by name
rRefresh git and PR data
escClear the filter, or return focus
TabReturn focus to the list
p / qClose the digest

Attached view

Keys go to the agent, except chords after Ctrl-x. Pressing Ctrl-x alone shows a menu; pick with arrows and enter, or press the letter. wsx drops Ctrl-z and Ctrl-d so a slip can't suspend or exit the agent.

KeyAction
Ctrl-x dClose the pane; detach if it's the last one
Ctrl-x DSave the split layout, then detach
Ctrl-x arrowsMove focus between split panes
Ctrl-x uUpdates panel
Ctrl-x aAgents panel
Ctrl-x e / t / v / gEditor, terminal, diff, lazygit
Ctrl-x kProcesses
Ctrl-x <Prompt tag picker
Ctrl-x #Workspace tags editor
Ctrl-x RWorkspace recap (goal / state / next); j/k scroll; esc closes
Ctrl-x 1–9Send a pinned command
Ctrl-x xSend a literal Ctrl-x to the agent
Ctrl-x escDismiss the menu
Ctrl-x q w r y i o p s h jSwitch the pane to another agent (multi-agent workspaces)

A workspace attached from a remote host takes only Ctrl-x d, Ctrl-x <, Ctrl-x #, Ctrl-x x, and Ctrl-x 1–9; Ctrl-x alone shows a menu of those.

Panels opened from the attached view

PanelKeys
Updates (Ctrl-x u)j/k move; enter/l attach, or expand a hidden group; h fold a hidden group; v side-by-side split; s stacked split; o/G sort and group; / filter; esc close
Agents (Ctrl-x a)j/k move; enter add the selected kind; a add one of each; x remove the newest; esc close
Prompt tag (Ctrl-x <)arrows move; 1–9 pick; type to filter or name a new tag; enter write the body; Ctrl-d delete the tag; esc close
Prompt tag bodyCtrl-s insert; esc back