Coding-agent skills for pull-request work and orchestration: an adversarial multi-pass PR reviewer, PR description and title writing, answering review comments, CI failure triage and PR nursing, a DAG orchestrator that delegates to cheaper subagents, and file-channel coordination between agents. Supports GitHub and GitLab.
95%
Does it follow best practices?
Impact
98%
1.88xAverage score across 10 eval scenarios
Low
Low-risk findings worth noting
A revision's review is complete only when all of these hold. Check them before rendering; the summary agent receives the result as PASS_STATUS.
coverage: full and one assessor result, all on the same head/base/merge-base; every later round that ran a pass had an assessor result on the same target (a round skipped because nothing survived is not a gap). Single mode: your first pass and your steel-man on the same target with no partial coverage.current by a successful check after the last pass, or --historical was passed and the report says historical.Anything else makes the review incomplete. An incomplete review is still rendered, but its verdict is Review incomplete, its findings are labelled provisional, and it never says "No findings". When freshness failed because the refresh budget ran out, the verdict is Latest-state review incomplete.
Evaluate top to bottom; the first matching row wins. "Finding" below means a finding whose latest status is confirmed or weakened; needs-info items are questions and never change the verdict.
| Situation | Verdict |
|---|---|
| Refresh budget exhausted, PR has moved past the reviewed revision | Latest-state review incomplete |
| Completion gate failed for any other reason | Review incomplete |
At least one blocker or major finding, and at least one minor or nit finding | Potential blockers; follow-ups |
At least one blocker or major finding | Potential blockers |
At least one minor or nit finding | Follow-ups |
| No findings | No findings |
With --historical and a moved PR, append (historical) to whichever verdict applies.
Render directly, headings and order preserved. Short SHAs are 12 characters.
# Review of PR #NUMBER: TITLE
- **Author:** AUTHOR_DISPLAY (@AUTHOR_LOGIN)
- **Reviewed revision:** head `HEAD_SHA12`, base `BASE_SHA12`
- **Freshness:** current as of UTC_TIME | superseded at UTC_TIME by head `SHA12` base `SHA12` | unverified at UTC_TIME | refresh budget exhausted (REFRESHES_USED of MAX_REFRESH): reviewed head `SHA12` base `SHA12`, latest head `SHA12` base `SHA12` at UTC_TIME
- **Rounds:** N on this revision, mode MODE, converged YES_OR_NO
- **Verdict:** VERDICT
## Blockers
- [file:line] CLAIM (SOURCES, evidence: EVIDENCE_KIND)
- Evidence: QUOTED_CODE
- Reachability: proven | plausible | unknown - CITATION_OR_WHAT_WOULD_SETTLE_IT
- Why it matters: ONE_LINE
- Suggested action: ONE_LINE
## Major
...
## Minor and nits
...
## Retracted on review
- CLAIM. Retracted: REASON
## Validation and limits
- Static inspection: WHAT_WAS_READ (full diff, surrounding code, tests, call sites)
- Executed locally (read-only): COMMANDS or "none"
- Hosted CI: STATUS for head `HEAD_SHA12`, or "not consulted"
- Unverified: CLAIMS_RESTING_ON_REASONING_ALONE, or "none"
- Coverage gaps: GAPS or "none"
## Open questions for the author
- NEEDS_INFO_ITEMS or "None"MODE is one of staged, single (requested), single (fallback: REASON).
AUTHOR_DISPLAY is the display name when one was fetched, otherwise the login. If metadata could not be read, write Author: unavailable (REASON); never fall back to a commit author.(head only) to the Freshness line.None identified.static claim from one reviewer differently from an executed claim three reviewers converged on.major with reachability: unknown stays in Major; the reachability line tells the author how much weight to give it.(provisional), name the missing pass or gap in "Validation and limits", and record downstream passes as not run.