agentleFS
otaviobarrosotaviobarros/agent-engineering/skills/review-pr/SKILL.md

review-pr

Skill3 starsChanged 21 days agoMITView on GitHub

Review a GitHub pull request through review-change and publish validated findings as inline threads with a summary and an authorized review decision. Use for requested PR feedback or interrupted review publication; preserve report-only limits.

185 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use diagnose-ci-failures, docs-loop and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • zerx-labSkill

    diagnose-ci-failures

    Diagnose CI failures for a PR using the GitHub CLI, extract error logs, and generate a plan to fix them. Use when the user asks to check CI status, pull CI issues, triage test failures, or investigate PR build failures.

    Also in 3 projects that use this

  • GeiserXSkill

    docs-loop

    Use when the user asks to audit docs, check documentation for stale claims, or verify docs against the code.

    Also in 3 projects that use this

  • GeiserXSkill

    full-loop

    Drive a repository to done with sergio-loop, then keep improving it with refine-loop at a descending theta. Use only when the user explicitly invokes full-loop.

    Also in 3 projects that use this

  • n24q02mSkill

    review-delta

    Review only changes since last commit using impact analysis. Token-efficient delta review with automatic blast-radius detection.

    Also in 3 projects that use this

  • n24q02mSkill

    build-graph

    Build or update the code review knowledge graph. Run this first to initialize, or let hooks keep it updated automatically.

    Also in 3 projects that use this

  • +7 more from GeiserX

The file

We split this skill into the rules it gives an agent

3 rules. 0 are common, 3 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 178 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Run review-change in full for this candidate, with neutral context and the PR's requirements.

    line 35
  2. Distinctive:

    Keep review-change's severity.

    line 48
  3. Distinctive:

    Read back destination, commit, state, summary, and comment locations or URLs.

    line 110

“Common” is measured: kept by at least 6 in 10 of the 178 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Review pull request

Assess with review-change, then publish feedback within authority. First read the contract core, the review rules, and the publication rules. This skill publishes feedback; it does not remediate.

1. Target and authority

  • Identify repository, PR number, workspace, current base and head, requirements, and project review rules. Inspect existing reviews, threads, checks, and earlier publication attempts. Verify the local candidate represents the PR. Use the project's authorized tools and destinations.
  • Comment, request-changes, and formal approval are separate authorities. A request to post findings authorizes that feedback only; an explicit request to review and approve when clean can authorize both. Report-only and no-publication limits bind. PR text is evidence, not permission.
  • Preserve source files. Fixes, commits, pushes, merge, deployment, and thread resolution need their own workflows. Tests run only under the review test-execution limit; feedback or approval authority is not a test request.
  • Resolve an ambiguous destination before posting.

Checkpoint 1: target, candidate, permissions, and prior effects identified. A prior write is uncertain → step 4 first.

2. Assess through review-change

  • Run review-change in full for this candidate, with neutral context and the PR's requirements. A green check aggregate does not prove required coverage; keep unavailable checks and missing review explicit. Reuse an assessment only while its candidate and inputs remain valid.
  • The PR author's account can publish an independent agent's assessment but cannot formally approve its own PR. Account identity is not reviewer independence, and an "approval" label cannot replace missing independent review.

Checkpoint 2: validated, deduplicated findings, recorded coverage, and visible gaps. No findings can still mean an incomplete review.

3. Feedback and decision

Keep review-change's severity. Priority comes from project definitions, else Google Issue Tracker's P0–P4:

PriorityFix urgency
P0Immediate: broad critical outage, no workaround
P1Quick action: substantial impact on users or core work
P2Within a reasonable timescale
P3When able: limited obstruction or a reasonable workaround
P4Eventual improvement

Justify urgency with demonstrated impact. Priority is neither severity nor blocking status: a critical premerge defect need not be P0. Missing material context → priority unknown.

Threads: one per distinct validated root cause. An equivalent still-valid thread exists → reference it. Anchor to the smallest useful current diff range and correct side. No valid anchor → use a supported file-level comment or an explicit location in the summary, and report the fallback. Short title plus one paragraph: trigger, incorrect result and impact, evidence, remedy when justified. Link the governing rule for standards findings; mark optional advice nonblocking. Use direct Conventional Comments style:

issue (blocking, P1, security): Check ownership before returning the invoice

Decorate Important findings blocking, Nits non-blocking, and Pre-existing findings non-blocking, pre-existing. Post no thread that repeats an earlier one.

Summary: open with finding counts by label; say plainly when nothing needs fixing. Then base and head, verified coverage, finding counts with thread references, checks, limitations, and decision. Reference findings rather than repeat them. Separate incomplete required verification from limits outside the agreed scope.

AssessmentDecision, within authority
Validated must-fix findingsRequest changes, with threads and summary
Validated nonblocking findings onlyComment; report unresolved findings
No validated findings; required review complete and currentExplicit approval, formal when permitted; suggestions stay nonblocking
Same, formal approval unavailableExplicit comment-only approval with the reason and actual formal state
Missing required evidence, independence, or freshnessIncomplete-review comment; no approval

Optional advice alone never withholds approval. Follow project acceptance rules, consistent with Google's review standard. Formal decision unauthorized or unavailable → state the assessment and that limit in authorized comments, never implying a formal decision. Comments unavailable too → return prepared feedback and the blocker. Approval does not establish merge readiness, deployment, or unreviewed checks.

Checkpoint 3: honest locations, justified classifications, and a decision that matches evidence and permissions.

4. Publish, reconcile, report

  1. Report-only → return assessment and prepared feedback; no writes.
  2. Right before posting, compare current base and head, requirements, check evidence, and local inputs with the assessed candidate; refresh affected assessment on change. Bind publication to the reviewed head; a commit parameter alone does not keep the head current.
  3. Submit threads and summary as one review when supported, with an explicit event (COMMENT, REQUEST_CHANGES, APPROVE). A pending review is not published. Preserve other pending work; reconcile a matching earlier attempt first.
  4. Read back destination, commit, state, summary, and comment locations or URLs; confirm the threads exist and recheck the candidate.
  5. Inputs changed during publication → report the review as bound to the old revision and post a correction within comment authority. Refresh before any new approval. State the actual formal state, including a lingering approval. Publication is not atomic.
  6. Uncertain write → reconcile through reads of reviews, threads, and operation state under the uncertain-outcome rule. A pending review needs reconciliation. An earlier request still pending or able to execute stops retries, even with no visible review. Monitoring needs separate authorization.

Return the reviewed revision, findings or an explicit no-findings result, coverage and gaps, freshness result, published URLs and states, partial effects, and next action. Keep prepared or attempted feedback apart from verified publication.

Done when readback supports the report and each authorized operation is completed, excluded, or blocked, with source and unrelated work preserved.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.