wsx config get <key>
wsx config set <key> <value-or-@file>
wsx config list
wsx config edit <key>          # opens $EDITOR (default: vi)

Known keys:

KeyEffect
branch_prefixDefault branch prefix for repos with no per-repo override. Branches are named <prefix>/<workspace>.
custom_instructionsFree-text appended to claude's system prompt on every workspace spawn.
process_doctrineStanding "operating doctrine" injected into every developer session (new and resumed) across all agents: think and plan before scope is set, break work into logical commits, load the wsx skill, report status with wsx status set, and maintain the workspace recap with wsx recap set (see Project manager digest). Set this to replace the default text verbatim (@file supported); set it to off / none / disabled to suppress injection entirely. A blank value restores the default (it is not an off switch).
process_doctrine_extraExtra clauses appended to the end of the effective doctrine (default or process_doctrine override), one per line in the same - ... bullet style, for every agent. Use it to add per-install practices without freezing a copy of the whole default text — e.g. wsx config set process_doctrine_extra "- Use the superpowers skills by default when evaluating the initial request; drop them if the task turns out not to need that level of planning." (@file supported). Ignored when process_doctrine is set to a disable sentinel.
coding_agentDefault coding agent for new workspaces: claude (default) / pi / hermes / codex / omp. Per-workspace override via wsx workspace create <repo> --agent <agent>. See Coding agents.
nerd_fontsRender nerd-font glyphs in the dashboard. Default ON; set to false / 0 / off to disable.
editor_cmdCommand to run for [e] edit on the dashboard. Worktree path appended as final arg unless the command contains {path} (substituted in place). Examples: code, cursor, alacritty -e nvim, xdg-terminal-exec --dir={path} nvim. Also required for the chronology bar's "open at changed line" action; see Change chronology for the {file}/{line} injection details.
terminal_cmdCommand to run for [t] terminal on the dashboard. Spawned with cwd=worktree; {path} substituted in place if present. Examples: alacritty, kitty, gnome-terminal.
notificationsRing the terminal bell and show a ! marker when a workspace transitions to waiting (claude paused for ≥30s). Default ON; set to off / false / 0 / no to disable.
notification_bell_questionBell pattern when a workspace's agent asks you a question. One of off, single, double, triple (anything else is rejected by config set). Default double. The ! attention marker still appears when set to off; use notifications to silence everything.
notification_bell_completeBell pattern when a workspace's agent finishes a turn. Same values. Default single.
notification_bell_permissionBell pattern when a workspace's agent is waiting on a permission prompt. Same values. Default single.
notification_bell_stalledBell pattern when a workspace's agent has stalled. Same values. Default triple.
themeBase color palette. One of wsx (default), default (palette-adaptive ANSI), dracula, jellybeans, nord. Unknown values fall back to wsx. Restart wsx after changing. Bar layout and styling live in ~/.config/wsx/theme.toml; see Themes.
bar_themeOpt-in for the bar theme file. Default OFF: wsx draws its stock bars and never reads ~/.config/wsx/theme.toml. Set to on / true / 1 / yes to honor the file (live reload, error notice); back to off snaps to the stock bars. Takes effect within a second, no restart. See Themes.
mcp_mirrorInherit MCP servers from the source repo into worktrees (see MCP server inheritance). Default ON; set to off / false / 0 / no to disable.
remote_controlPass --remote-control to claude on every spawn so the session is reachable via claude.ai/code and the Claude mobile app (see Remote control). Default ON; set to off / false / 0 / no to disable.
remote_control_sandboxWhen remote_control is on, also pass --sandbox for an extra safety wrapper on remote-issued commands. Default OFF; set to on / true / 1 / yes to enable.
pinned_commandsNewline-separated list of Label=command (or bare command) entries. Each becomes a chip in the attached view, fired via Ctrl-x <digit> or click; a command ending in ... is typed but not submitted. Max 9 visible/keyable. Per-repo override available via wsx repo set-pinned-commands.
prompt_tagsNewline-separated name=uses entries — the saved prompt tags and their use counts, maintained by the attached view's Ctrl-x < picker. Editable by hand; malformed lines (an invalid name, a non-numeric count) are dropped on read and disappear on the next save.
remotesNewline-separated list of name=command entries — named shell commands run by wsx remote <name>, typically ssh -t host '…tmux attach…' for reattaching a wsx session running on another machine. List with wsx remote; add or edit with wsx config edit remotes. See Named remote shortcuts.
dashboard_branch_widthWidth (chars) of the ⎇ branch column on the dashboard. Default 28. Clamped to 10..=80.
dashboard_pr_widthWidth (chars) of the PR chip column (⏺ #123 open) on the dashboard. Default 16. Clamped to 8..=24.
dashboard_sort_modeHow workspaces are ordered inside a repo on the dashboard: recency (default) or status. Toggled live with o, which writes this setting; a CLI change applies at the next wsx start.
dashboard_blocked_pin_max_age_secsHow long a workspace blocked on you (? question, ! stalled) is pinned above the recency-ordered rows. Default 86400 (24h). Past this it sorts on age like anything else, so a workspace parked blocked for weeks stops camping at the top. Only applies in recency mode.
detail_bar_configJSON blob controlling the per-workspace detail bar (visibility, height, and the container/module layout). See Workspace detail bar for the schema, defaults, and per-repo override flow. Out-of-range values are clamped on save.
chronology_configJSON blob controlling the change chronology bar in the attached view (visibility, side, and width). See Change chronology for the schema, defaults, and per-repo override flow.

Value sources:

  • A literal string: wsx config set branch_prefix bakedbean
  • A file (prefix with @): wsx config set custom_instructions @./instructions.md
  • Empty (clears): wsx config set custom_instructions ""

wsx config edit <key> opens $EDITOR on a tempfile prepopulated with the current value; saving updates the setting. Useful for multi-line custom_instructions.