CLI Reference

Complete reference for all workbench CLI commands and flags.

Commands

CommandDescription
wb run <plan>Execute a plan with parallel agents
wb merge -b <branch>Merge completed-but-unmerged task branches
wb preview <plan>Dry-run: show parsed tasks and waves
wb setupCreate .workbench/, install skills, and optionally create a profile
wb statusShow active worktrees
wb stopKill all running agent tmux sessions
wb cleanRemove all workbench worktrees and wb/ branches
wb profile initCreate profile.yaml from defaults
wb profile showShow resolved profile
wb profile set <key> <value>Update a profile field
wb profile diffShow differences from defaults

wb run

The primary command. Parses a plan, creates isolated git worktrees, and dispatches agents in parallel.

wb run <plan.md> [options]

Flags

FlagDescription
-j NMax concurrent agents (default: 4)
--max-retries N / -r NMax fix cycles per failed stage (default: 2)
--skip-testSkip the test phase
--skip-reviewSkip the review phase
--tddTest-driven: write tests first, then implement
--agent CMDAgent CLI command (default: claude)
--no-tmuxRun agents as subprocesses instead of tmux
--base BRANCHBase branch to start from (default: main)
--localBranch from local ref instead of fetching origin
-b NAME / --session-branchResume an existing session branch
-w N / --start-waveSkip already-completed waves
--retry-failedAuto-retry tasks that crashed (not those that exhausted fix retries)
--fail-fastStop after the first wave with any failed tasks
--only-failedSkip completed tasks from a prior run (requires -b)
--task IDRun only specific tasks by ID or slug (repeatable)
--cleanupRemove worktrees after completion
--keep-branchesKeep task branches after merging (default: auto-delete on success)
--repo PATHRepository path (auto-detected if omitted)
--profile PATHUse a specific profile.yaml
--profile-name NAMEUse a named profile (profile.<name>.yaml)
--*-directive TEXTOverride instructions for a specific agent role

Examples

Run a plan with default settings:

wb run plan.md

Run with TDD mode and skip the review stage:

wb run plan.md --tdd --skip-review

Resume a previously interrupted session from wave 3:

wb run plan.md -b workbench-1 -w 3

Retry only the tasks that failed in a previous run:

wb run plan.md -b workbench-1 --only-failed

Add custom reviewer instructions:

wb run plan.md --reviewer-directive "Focus on error handling and edge cases"

wb merge

Merge completed-but-unmerged task branches into the session branch. Useful when tasks completed but merging was interrupted or skipped.

wb merge -b <session-branch> [options]

Flags

FlagDescription
-b NAME / --session-branchSession branch to merge into (required)
--agent CMDAgent CLI for conflict resolution (default: claude)
--no-tmuxRun resolver agents as subprocesses instead of tmux
--keep-branchesKeep task branches after merging
--repo PATHRepository path (auto-detected if omitted)

wb preview

Dry-run a plan. Shows parsed tasks, the dependency graph, and wave assignments without executing any code or creating worktrees.

wb preview <plan.md>

wb setup

Initialize a repository for workbench. Creates the .workbench/ directory, installs agent skill files, and optionally creates a profile.

wb setup [options]

Flags

FlagDescription
--agent NAMETarget platform: claude, gemini, cursor, codex, manual (auto-detected if omitted)
--globalInstall skills to user-level paths only (skip .workbench/ creation)
--symlinkSymlink instead of copy (stays in sync with package updates)
--profileAlso create a profile.yaml with the detected agent
--updateForce-update skills to the latest version
--repo PATHRepository path (auto-detected if omitted)

wb status

Shows active workbench worktrees.

wb status [--repo PATH]

wb stop

Kill all running agent tmux sessions.

wb stop [options]

Flags

FlagDescription
--cleanupAlso remove worktrees and wb/ branches
--repo PATHRepository path (auto-detected if omitted)

wb clean

Remove all workbench-created git worktrees and wb/ branches. Useful for reclaiming disk space after a run or cleaning up after interrupted sessions.

wb clean [options]

Flags

FlagDescription
--yesSkip confirmation prompt
--repo PATHRepository path (auto-detected if omitted)

wb profile

Manage agent profiles — saved configurations for which agent handles which pipeline role.

wb profile init

Create a profile from defaults:

wb profile init [options]
FlagDescription
--globalCreate in ~/.workbench/ instead of .workbench/
--name NAMECreate a named profile (profile.<name>.yaml)
--set KEY=VALUESet role fields inline (repeatable)
--repo PATHRepository path (auto-detected if omitted)

wb profile show

Display the resolved profile configuration:

wb profile show [options]
FlagDescription
--name NAMEShow a named profile
--profile PATHPath to a specific profile.yaml
--repo PATHRepository path (auto-detected if omitted)

wb profile set

Update a profile field:

wb profile set <key> <value> [options]

Roles: implementor, tester, reviewer, fixer

wb profile set implementor gemini
wb profile set reviewer claude
FlagDescription
--globalUpdate ~/.workbench/ instead of local
--name NAMEUpdate a named profile
--repo PATHRepository path (auto-detected if omitted)

wb profile diff

Show differences between your current profile and the default:

wb profile diff [options]
FlagDescription
--name NAMEDiff a named profile
--profile PATHPath to a specific profile.yaml
--repo PATHRepository path (auto-detected if omitted)