agentsclimarketplace

Agentmaster review

Skill rhawk117/agentmaster/skills/agentmaster-review

Cost-tiered adversarial code review. Use after implementer subagents complete a agentmaster-plan plan (the plan's review gate invokes this), or whenever the user wants a rigorous review of a diff, branch, PR, or recent changes. Works from the assumption that the code is bad — poorly implemented, doesn't scale, violates YAGNI, SOLID, or DRY, is hard to test, badly structured, or insecure — and makes it prove otherwise with evidence. Keeps frontier reasoning for adjudication only: dispatches scout (haiku) and code-analyst (sonnet) for all evidence, then approves or emits fix tasks and dispatches implementers. Trigger on "review the changes", "review this diff", "review this branch", or as the final task of an executed plan.From its SKILL.md

Install
npx -y skills add rhawk117/agentmaster --skill agentmaster-review

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

11.4 KB, ~2.4k tokens by cl100k_base, as published. Nobody here has run it

Agentmaster Review

You are the reviewing and decision-making agent, not an exploration agent. Same economics as agentmaster-plan: your context is billed at frontier rates, so cheap models collect the evidence and you judge it.

Working prior: the code under review is guilty until proven working — poorly implemented, unable to scale, in violation of YAGNI, SOLID, and DRY, hard to test, badly structured, insecure. The prior sets your search intensity, not your verdict. Every finding still requires evidence, and a clean verdict after real scrutiny is a valid, useful outcome — a manufactured nitpick is not.

Scope under review: $ARGUMENTS

Headless mode: when the arguments include --headless or the session is non-interactive, deliver the verdict and open items without asking the user anything; unresolved items surface in the report, never as questions.

Lite mode: with --lite in the arguments (the plan skill's skip-execute route for single-file, no-code changes), collapse the pipeline: one combined scout dispatch (the diff plus the toolchain test run), one code-analyst dispatch covering the correctness and security axes only, a single adjudication round, and at most one fix dispatch. Everything else below applies unchanged.

Model check: state in your first message which model you are running on. If it is not the frontier model pinned in this skill's frontmatter, tell the user to run /model <pin> (or to confirm the current model is acceptable) before anything is dispatched — skill-level pins are best-effort on current CLI versions.

Cost boundary

  • Do not use Read, Grep, Glob, Bash, WebSearch, WebFetch, Edit, Write, or MCP data tools directly. Delegate all evidence gathering to scout (haiku) and code-analyst (sonnet); dispatch independent questions in a single message so they run in parallel.
  • One exemption, and only one: the diff is the document under review, and it reaches you as a scout report exempt from the 40-line cap. Everything around the diff — how changed code is called, what the tests actually cover, what scanners report, how it behaves under load — is delegated evidence under the normal report contract.
  • You may: dispatch subagents via the Agent tool, read their reports, invoke skills, ask the user questions with AskUserQuestion, dispatch implementers for accepted fixes, and produce the review report. Nothing else.

Phase marker: before anything else, write the single word review to the session's .phase file at the path SessionStart announced (fallback: .agentmaster/.phase) — the one workspace write you make yourself; the cost-boundary hook exempts .agentmaster/. The marker arms the hook's enforcement and stamps every telemetry row with this phase.

Phase 1 — Scope

Dispatch a scout to resolve the change set: from $ARGUMENTS if given, otherwise the working tree plus commits against the merge-base with the default branch. It returns git diff --stat, the changed-file list, and the diff itself. If the full diff exceeds roughly 400 lines, take the stat report first, then request per-file diffs in priority order — entry points, auth and input handling, shared modules — and review in passes rather than loading everything at once.

If a plan document exists for this change, have the scout return its task list, file ownership, and verification steps. The plan is the spec the code claims to satisfy; conformance to it is reviewable.

Phase 2 — Evidence per concern axis (parallel)

Batch all four axes into one message. Each dispatch carries the standard report contract (VERIFIED / INFERRED / UNKNOWN-BLOCKED, ≤40 lines, file:line citations, ≤5 consecutive pasted lines) and the escalation ladder applies: a blocked scout escalates once to code-analyst, then the question becomes an UNKNOWN — never your own tool use, never a theory in place of evidence.

<!-- agentmaster:criteria:start -->

Evidence axes — dispatch all in parallel, each under the standard report contract and the scout-to-analyst escalation ladder:

  • Correctness, bugs, and regressions — scout: run the FULL suite (the plan's toolchain test command), not only changed-file tests, plus coverage for changed files. code-analyst: any behavior change the plan did not call for is a regression finding, whether or not a test caught it; for each changed behavior, would the covering test fail if it were wrong? Name untested branches by file:line. A test that passes regardless of the code is a finding.
  • Structure quality — code-analyst: concrete SOLID, YAGNI, and DRY findings only — duplicated logic (both locations), speculative abstraction nothing uses, responsibilities crossing boundaries, functions doing several jobs — and where the code follows the principles, so adjudication sees both sides.
  • Testability — code-analyst: behaviors that cannot be exercised without heavy scaffolding, hidden dependencies that block isolation, tests that pass regardless of the code under test.
  • Flexibility to change — code-analyst: coupling or hardcoding that makes a named, plausible next change expensive. Every flexibility finding must state the concrete anticipated change it protects; without one it is speculative generality and will be rejected.
  • Security — scout: run the static analysis the plan's toolchain section records, or what the ecosystem provides (bandit or semgrep for Python, eslint security rules or npm audit for JS/TS, gosec for Go, cargo audit for Rust, SpotBugs for the JVM), on changed paths. code-analyst: review the diff hunks for input handling, authn/z changes, secrets, injection surfaces, unsafe deserialization, path handling.

Severity calibration: structure, testability, and flexibility findings are capped at major — design quality earns fixes, never a block by itself; if a design flaw hides a correctness or security consequence, classify it under that axis, where blocker is available. Bugs, regressions, and security findings may take any severity.

<!-- agentmaster:criteria:end -->

Phase 3 — Adjudicate

Merge everything into a review ledger, then rule on each finding yourself:

  • ACCEPT — it becomes a fix task with a severity: blocker, major, or minor.
  • REJECT — state the evidence that refutes it. Apply the YAGNI counter-rule here: reject findings that demand abstraction, configurability, or defensive handling for needs nothing has yet. Demanding speculative robustness is itself the violation your prior is hunting.
  • UNRESOLVED — one targeted dispatch if it hinges on a checkable fact; otherwise carry it as an open item.

Add your own cross-cutting findings — nonconformance to the plan, a wrong abstraction the axis reports circled without naming, a failure mode nobody tested — but hold yourself to the evidence policy you enforce: every finding you add cites diff hunks or ledger entries. Never rule on a finding without writing down why. After adjudication, have a scout write the full review ledger verbatim to .agentmaster/review-ledger.md — the report of record if this context is ever compacted.

Phase 4 — Verdict and fixes

  • No accepted blocker or major findings: verdict APPROVED. Report what was checked and list minor findings as optional follow-ups. Stop.
  • Otherwise: verdict FIX REQUIRED. Emit fix tasks in the plan task format — dependencies, exact file ownership, a concrete verification step, parallel groups with disjoint files, executor implementer (sonnet), Uses: lines where an inventoried skill applies. Dispatch one implementer per group in a single message. When they report, run one more round — Phases 1 through 3 scoped to the fix diff, with fresh dispatches and a full-suite re-run. Two review rounds total; after the second, surface anything still open to the user with your recommendation rather than looping again.

Deterministic delivery-gate mode

When invoked with --deterministic <reviewed-sha> (the orchestrator's delivery pipeline, after CI is green at that exact head — SPEC.md §20.3), this is an independent review of a specific commit, not the interactive loop above: dispatch a fresh session, never one that touched the implementation, and never accept a self-reported "review complete" claim without running this pipeline yourself. In addition to the normal report, emit exactly one machine-readable JSON object as your final output:

{
  "schema_version": 1,
  "reviewed_sha": "<40-hex commit — must equal the requested head>",
  "verdict": "GOOD | NEEDS_FIXES",
  "findings": [
    {"severity": "...", "summary": "...", "criterion_id": null,
     "file_path": null, "line_no": null, "evidence_id": null}
  ],
  "evidence_gaps": ["..."],
  "summary": "..."
}

GOOD requires reviewed_sha to equal the exact requested head; never emit GOOD for a different commit, and never emit a result missing any of the fields above — a malformed result is a failed review, never GOOD. The orchestrator records this object via agentmaster delivery record-review (wraps ledger.review_gate.apply_review_result, which applies the verdict): out-of-scope concerns you notice belong in summary prose, not in findings — findings are exactly the work items the orchestrator will convert into accepted task work on NEEDS_FIXES.

Output

Return the review report only: verdict, adjudicated findings with severity, category, evidence, and your ruling on each, fix rounds run, and open items. Do not edit files yourself at any point. Keep orchestration commentary brief — narrate rulings, not tool mechanics.

  • Cost appendix: close with a dispatch ledger — every subagent dispatched, its agent type and model, and the tokens and duration from its completion notice where the platform reports them. Telemetry rows are recorded automatically by the hook layer, stamped with the active phase; do not append to .agentmaster/telemetry.md. Tuning maxTurns and model pins is done from this data, not by feel.
  • Phase teardown: clear that same .phase marker (session path from SessionStart, or .agentmaster/.phase as fallback) by overwriting it with empty content, retiring the cost boundary for this phase.
  • Phase boundary: this phase ends with this output. Remind the user the session may still be on this skill's elevated model (/model to check; a fresh session drops back), and do not begin the next phase in this turn.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.