CLI reference
Every staff subcommand at a glance.
staff [serve] [<slug>] [--port <n>] [--open] [--no-open] [--repo <dir>]
Open the web UI (default). <slug> like main..WT.
staff diff [<slug>] [--base] [--head] Create/load a diff and make it active.
staff files [--json] List the file-level changes for a diff.
staff comment add|edit|delete|list|resolve|unresolve
Post and manage review comments (used by the skills).
staff settings [get <key>] Read global settings (e.g. loopMaxRounds).
staff settings set openBrowser false Stop opening the browser automatically.
staff install Write the skills + initialize the .staffreview/ store.
staff --help Full usage.Diffs
staff main..WT # open the UI on main → working tree
staff main..WT --port 4400 # serve the UI on a specific port
staff main..WT --no-open # start the server and print the URL only
staff --open # override openBrowser=false for one run
staff diff main..WT --json # create/load the diff, print its JSON
staff diff --base HEAD --head working-tree --json
staff active --json # the currently active diff
staff files --json # { path, status, oldContent, newContent } per fileA slug is <base>..<head>, where each side is WT (working tree), STAGED, or
a git ref (branch, tag, or SHA).
Comments
# Inline (anchored to a file + line); add --end-line for a range
staff comment add --file path/to/file.ts --line 42 --side new \
--author "Opus 4.8" --priority P1 --body "Off-by-one: misses the last element."
# Top-level (no --file/--line)
staff comment add --author "Opus 4.8" --body "Overall looks good once tests pass."
# Reply, edit, delete
staff comment add --reply-to <id> --author "Opus 4.8" --body "Good catch."
staff comment edit --id <id> --body "Corrected wording."
staff comment delete --id <id>
# List
staff comment list --json
staff comment list --open --json
# Resolve / unresolve a thread
staff comment resolve --thread <id> --author "Opus 4.8" --status fixed --body "Reordered the loop, added a test."
staff comment resolve --thread <id> --author "Opus 4.8" --status skipped --body "Intentional — see ADR-0007."
staff comment resolve --thread <id> --author "Opus 4.8" --status documented --body "Saved." --documented-as error-handling.md
staff comment unresolve --thread <id>--priority (P1/P2/P3) is an agent-only severity for triage — P1 is the
most urgent. Humans don’t set it; leave it off for purely informational
top-level comments.
Settings
staff settings get loopMaxRounds # /staff-loop round cap (default 5)
staff settings get reviewAgents # /staff-review agent fan-out (default 2)
staff settings get docsAgents # /staff-docs scout fan-out (default 5)
staff settings get openBrowser # browser auto-open preference
staff settings set openBrowser false # make --no-open the default
staff settings get structuredHighlighting # intra-line word-diff toggle
staff settings set structuredHighlighting true # turn it on by defaultSettings (theme, split/unified, font size, syntax theme, browser auto-open, intra-line word-diff highlighting, review-loop cap, the review agent count, and the docs scout count) live in the gear menu and persist globally.