Staff Review

Skills

The /staff-* skills that drive the review, and how to make them your own.

staff install lets you choose top-level skill groups to write to .agents/skills/ (symlinked into .claude/skills/ so Claude Code exposes them as slash commands). All groups start selected, and pressing a toggles all on/off. If a selected group requires another top-level group, that required group is checked and locked until you unselect the parent. For example, /staff-review requires /staff-comment, and /staff-loop requires both /staff-review and /staff-resolve. In turn, /staff-resolve requires /staff-comment and /staff-document. Internal workers such as /staff-review-find, /staff-review-verify, and /staff-docs-scout are shown as locked rows; they check when a selected parent needs them and uncheck when no selected parent does. With every group selected, that is the eight skills below plus three building blocks. They’re just Markdown — edit them to encode your team’s standards.

SkillWhat it does
/staff-reviewReviews the active diff with find sub-agents, verifies each finder's output as it returns, and leaves inline comments.
/staff-sectionReviews the existing codebase (not a diff) a rotating section at a time, tracking progress in a cache so each run covers new ground.
/staff-resolveWorks each open thread: fixes the code, documents it, or skips with a justification.
/staff-commentThe thin CLI wrapper the others use to post/edit/resolve comments.
/staff-copyCopies open GitHub PR review comments from provided PR URL(s) into local Staff Review diffs.
/staff-documentImports a GitHub PR review comment (by URL) as a .staffreview/docs/ example.
/staff-docsMines GitHub PR review history, or provided PR URL(s), for recurring lessons and writes the best ones into .staffreview/docs/.
/staff-loopRuns the same pipelined find → verify → post review flow, then resolves the diff in sub-agents round after round until it converges.

Three more are building blocks, not run directly: /staff-review-find (one find agent — reviews an assigned slice of a diff's areas/docs, or whole files in its section mode, and returns findings), /staff-review-verify (one verify agent — re-checks a batch of findings), and /staff-docs-scout (one scout agent — reads an assigned slice of PR refs and returns candidate lessons). /staff-review and /staff-loop fan out to the review pair, /staff-section reuses that same pair in a whole-file mode, and /staff-docs fans out to the scouts, so the orchestrators never have to spawn a top-level skill as a sub-agent.

/staff-review

Conducts a staff-engineer-level review of the active diff as a multi-agent orchestration. It fans the work out across parallel find sub-agents — each owning a slice of the ten review areas (correctness, edge cases, concurrency, security, data, interfaces, tests, consistency, readability, performance) and a slice of the review docs — so a large diff and a growing docs both stay fast. As each finder returns, the orchestrator stops that finished task, starts an independent verifier for just that finder’s results, drops false positives, and collects the confirmed survivors. After every verifier drains, it dedups the survivor list and posts the final inline comments with a priority (P1 must-fix, P2 should-fix, P3 minor) so you can triage.

The reviewAgents setting controls the find-agent fan-out width and the target live sub-agent count (default 2, range 1–20, adjustable in the gear menu). You can also override it inline for a one-off — pass a bare number after the slug to tailor it to the change's size:

/staff-review main..WT        # uses the reviewAgents setting (default 2)
/staff-review main..WT 6      # fan out wider for a big diff

Each finder can still spawn one verifier, so the review may run up to ~2× that many agents in total, but they are pipelined and reaped as they finish; a find slot turns into a verify slot instead of waiting for a second wave.

/staff-section

Reviews the existing code in your workspace — whole files, not a base..head diff — a bounded section at a time. It fans the same find → verify → post pipeline /staff-review uses — reusing the same /staff-review-find and /staff-review-verify building blocks in their whole-file mode — across the section's files, hosting the inline comments on a single stable whole-tree diff so they show up in the UI and feed /staff-resolve.

The novel part is rotation: each run records what it covered in .staffreview/section-cache.json (per-machine, gitignored), so the next run picks up where the last one stopped and moves on to the next section — working all the way around the codebase, then back to the start. A section is the unit of review: it's re-reviewed as a whole whenever any of its files changed (its files work together, so the unchanged ones get re-read too), and skipped only when none of them have. Run it repeatedly (or on a schedule) to keep an existing codebase under continuous review.

The sectionAgents setting is the find-agent fan-out width, which also sizes the section — more agents review more code per run (default 2, range 1–20, adjustable in the gear menu). Override it inline for a one-off:

/staff-section            # uses the sectionAgents setting (default 2)
/staff-section 6          # bigger section this run, split across 6 agents

/staff-resolve

Works through every open thread. For each one it picks exactly one action — fix the code, document it as a docs entry, or skip it with a justification — replies in-thread with what it did, then records the resolution. It does not commit; you review and commit the changes.

/staff-resolve

/staff-comment

The thin CLI wrapper the other skills use to add, edit, delete, list, and resolve comments via the staff CLI. You rarely invoke it directly.

/staff-copy

Copies unresolved GitHub PR review threads from one or more provided PR refs into local Staff Review diffs. It preserves the original GitHub authors, copies replies, skips duplicates on repeat runs, and leaves the imported threads open for local triage or /staff-resolve.

/staff-copy https://github.com/owner/repo/pull/123
/staff-copy 123 456

/staff-document

Imports a GitHub PR review comment by URL and turns it into a structured .staffreview/docs/ example — a way to seed the docs from review wisdom that already lives on GitHub.

/staff-docs

Mines GitHub PR review history for recurring, generalizable lessons worth keeping, then writes the best ones into .staffreview/docs/. By default it sweeps recent PRs in the current repo. You can also pass PR URL(s) or explicit PR refs to target specific PRs. It does not scan local Staff Review diffs. It fans the reading out across parallel /staff-docs-scout sub-agents, ranks the survivors impact-first, surfaces the top candidates for you to flag, and documents the ones you keep. The scout fan-out width is the docsAgents setting (default 5, range 1–20, adjustable in the gear menu).

/staff-docs
/staff-docs https://github.com/owner/repo/pull/123

/staff-loop

Each round runs a full multi-agent review (fanning out the same /staff-review-find and /staff-review-verify sub-agents that /staff-review uses) and then a /staff-resolve sub-agent, round after round, until a fresh review finds nothing new or it hits the loopMaxRounds cap (default 5). It runs the review itself rather than calling /staff-review, so it never nests orchestrators. Point it at a working-tree diff so each round’s fixes feed the next review.

/staff-loop main..WT

Make the skills yours

They’re Markdown in .agents/skills/. Add your conventions, your “don’t do X here,” your preferred test framework. A review is only as good as the standard you hand it.

On this page