Skip to content
Agentmart
Submit a tool

review-pr

Iterative code review in which the reviewer proves suspicions in the correctness / security / bug dimensions by writing tests that run red or, preferably for…

Skill by asura1234

IndexedApache-2.0★ 1
Write a review

Chalk Labs

Need help deploying review-pr?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/asura1234-review-pr

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Iterative code review in which the reviewer proves suspicions in the correctness / security / bug dimensions by writing tests that run red or, preferably for user-visible behavior, by a failing real TUI run on a scratch Bus; what stays unproven is marked `未证明` (write access is limited to test files; all other dimensions are read-only). Round 1 fully reviews the current branch's committed diff against base, excluding plans/, or a fixed chunk's whole committed files with --scope; Round 2+ only reconciles the prior round and reviews this round's delta and its direct consequences. Supports stable reviewer lanes, an optional associated plan, author triage ledgers, adversarial posture, and narrow subagent fan-out; the final review.md is deterministically rendered by a script into the chat reply. Use when the user asks to review a PR, production chunk, review code, or re-review the current branch.

Use cases: testing, security, writing, agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/review-pr

What's inside

Skill name
review-pr
Description
Iterative code review in which the reviewer proves suspicions in the correctness / security / bug dimensions by writing tests that run red or, preferably for user-visible behavior, by a failing real TUI run on a scratch Bus; what stays unproven is marked `未证明` (write access is limited to test files; all other dimensions are read-only). Round 1 fully reviews the current branch's committed diff against base, excluding plans/, or a fixed chunk's whole committed files with --scope; Round 2+ only reconciles the prior round and reviews this round's delta and its direct consequences. Supports stable reviewer lanes, an optional associated plan, author triage ledgers, adversarial posture, and narrow subagent fan-out; the final review.md is deterministically rendered by a script into the chat reply. Use when the user asks to review a PR, production chunk, review code, or re-review the current branch.
License
Apache-2.0
Instructions
247 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (6)

  • SKILL.md
  • guide.md
  • full_review.md · scripts/
  • review_round.py · scripts/
  • review_round_test.py · scripts/tests/
  • workflow_modules_test.py · scripts/tests/

SKILL.md (first lines)

Resolve `SKILL_DIR` to the directory containing this loaded SKILL.md; keep the working directory in the target repository.
Review principles are in [guide.md](./guide.md); the SOT for the 9 review dimensions, severity, and guardrails is
[code-review-guide.md](../_bus/docs/guides/code-review-guide.md). This file defines only the executable flow.

```text
INPUT $ARGUMENTS =
  [--base <ref>] [--reviewer <lane>] [--devils-advocate] [--plan <plan-file>]
  [--scope <FILE_LIST|chunk.json>]

DEFAULT base = origin symbolic HEAD (read-only); an explicit --base is authoritative
DEFAULT reviewer = default (only when the prologue can select a lane unambiguously)
DEFAULT target = branch (unchanged committed diff against base)

--scope selects a fixed whole-file chunk, not a filter over the branch diff.
FILE_LIST is UTF-8, one repo-relative file path per line; blank lines and # comments are ignored.
Alternatively, a JSON manifest declares the full file set and exact probe write allowlist:
  {"files":["src/example.rs","src/example_test.rs"],"test_files":["src/example_test.rs"]}
Dedicated *_test files in FILE_LIST (or files without explicit test_files) form the probe allowlist.
Explicit test_files may include new, not-yet-committed *_test paths; they become part of the chunk.
All other files must exist as ordinary UTF-8 committed files in HEAD on Round 1.
No directories, globs, binary files, symlinks, plans/ (including docs/plans/), or temp artifacts; paths are repo-relative
(absolute paths within this repo are also accepted), independent of the manifest's location.
The canonical file set + test allowlist determines SCOPE_HASH; reordering / duplicates / manifest
location do not change identity. Changing membership or permissions starts a separate full review.
Use the same manifest and reviewer lane for continuation. A chunk still uses the named feature
branch, resolvable base, and exact branch-level Goal/Non-goals locks; no branch diff is required.
For production review the developer's locked Goal must authorize reviewing the entire chunk.

========== 1. VERIFICATION BOUNDARY ==========

The proof routes (a red probe or a failing real TUI run), probe lifecycle, and the `未证明` mark all live in guide.md
"Write behavioral suspicion as a test first, then as a finding"; this section defines only **permissions** —
they must be visible before acting, and when they fail they must fail on the safe side.

MAY:
  - write this skill's round artifacts under temp/review-pr/; the Goal/Non-goals locks come only
    from skills/pr/scripts/pr_goal_context.py
  - write test files: create new ones, or **add** your own cases to existing test files
    (only dimensions 2 correctness / 3 security / 7 bug need this; other dimensions judge source read-only)
    In scope mode, write only the exact SCOPE_TEST_FILES paths; no inline production-file edits,
    no new test path outside the manifest, and no dependency/config wiring edits.
  - run read-only queries: git, grep, reading files
  - run only target-derived focused tests or isolated acceptance that proves a specific suspicion; verify the test filter selects the intended cases. For Bus TUI work, apply guide.md's Bus-only adapter.

  - for a Bus target, drive the PR's HEAD on a scratch Bus (owner's dev binary, or /e2e-test on an ad-hoc QA doc under <round dir>/tui/)
    per guide.md "Prove user-visible behavior by driving the real TUI", whose env, cleanup, and no-touch rules are mandatory

MUST NOT:
  - modify, create, or delete any **non-test** file (production code, config, build scripts, docs, plan files)
  - change the implementation or roll back code to make a test red — that manufactures evidence, and the hypothesis fails
  - delete or weaken someone else's probe or existing assertions
  - git add / commit / checkout / stash / rebase
  - run formatters, lint fixers, or other write commands
  - run repository-wide quality gates or builds,
    **including** filtered forms. Those belong to CI and gate-and-fix
  - run unfiltered full suites or live end-to-end checks
  - create a review worktree/clone/target or build main; use the owner's tree/target and room slot;
    coordinate probe access, save test patches and remove your additions per guide.md
========== 2. DETERMINISTIC PROLOGUE ==========

Run:
  python3 "$SKILL_DIR/../review-pr/scripts/review_round.py" \
    [--base <ref>] [--reviewer <lane>] [--devils-advocate] [--plan <plan-file>] \
    [--scope <FILE_LIST|chunk.json>]

IF exit != 0 AND output says multiple / named lanes make a bare invocation ambiguous:
  IF the developer supplied a lane, or said "use the previous lane" and this conversation has the REVIEWER of a prior successful prologue:
    that value must exactly equal an existing lane listed by this run's FAIL; approximate names must first be confirmed with the developer.
    Add `--reviewer <lane>` with that exact lane value and rerun the prologue immediately.
    Do not reply with only the lane name, and do not invoke bare again.
  ELSE:
    relay stdout/stderr verbatim, ask the developer for the exact lane, then STOP.
ELSE IF exit != 0 AND FAIL names missing, blank, or mismatched locked Goal/Non-goals:
  IF --plan was supplied:
    run pr_goal_context.py --branch <branch> --output temp/review-pr/goal-context.md --plan <plan-file>;
    rerun the prologue once (without --plan if the script refused: a developer ruling re-locked it); relay any FAIL and STOP.
  ELSE:
    ask the developer for the PR's originating request (their words or the issue), its one-sentence single Goal,
    and its explicit Non-goals (`无` when none); write the goal and non-goal replies verbatim to ignored temp goal and non-goal
    files, and the request followed by both replies verbatim to an origin file.
    Trim only leading/trailing whitespace; do not summarize, rewrite, or infer from the diff/commits/PR description.
    run pr_goal_context.py --branch <branch> --output temp/review-pr/goal-context.md --goal-file <goal-file> --non-goal-file <non-goal-file> --origin-file <origin-file>;
    rerun the prologue.
ELSE IF exit != 0:
  relay stdout/stderr verbatim, then STOP.

IF NOTE says the working tree has uncommitted changes:
  first tell the developer this round reviews only committed code (branch diff or whole chunk files).
  Probe tests written this round likewise stay only in the working tree and do not enter the snapshot or author delta.
  Red probes remain finding evidence; they are not themselves reviewed author changes.

Capture:
  ROUND, MODE, POSTURE, REVIEWER, BRANCH, BASE, HEAD, STATE_DIR,
  DIFF_SNAPSHOT, DIFF_DELTA, PREV_REVIEWS, PLAN, LOCKED_GOAL_FILE,
  LOCKED_NON_GOALS_FILE, LOCKED_ORIGIN_FILE, TRIAGE_LEDGER
  For --scope also capture TARGET_KIND=scope, SCOPE_HASH, SCOPE_FILE, SCOPE_SNAPSHOT, SCOPE_TEST_FILES;
  without --scope, TARGET_KIND is branch and these extra fields are absent.

`DIFF_SNAPSHOT` / `DIFF_DELTA` already mechanically exclude `plans/**` and `docs/plans/**` in the prologue. Even when a plan file
changes in the committed branch diff, it does not enter touched-file scope, findings, the sync list, or the PR single-purpose judgment.

In scope mode STATE_DIR is temp/review-pr/<branch_slug>/scopes/<SCOPE_HASH>/<reviewer>/.
SCOPE_FILE is the canonical scope.json shared by those lanes; SCOPE_SNAPSHOT stores complete file
contents, modes, and the pinned HEAD. DIFF_SNAPSHOT shows every line of those committed files;
read the complete files from SCOPE_SNAPSHOT rather than dirty working-tree source.
Round 2+ DIFF_DELTA is a per-file diff against this lane's previous completed snapshot, including
adopted tests and deletions. Unchanged content yields an empty delta even after a rebase.
Missing/corrupt prior snapshots fail closed. PREV_REVIEWS and TRIAGE_LEDGER are confined to this
branch + chunk; branch reviews, other chunks, and other reviewer histories never enter the lane.

========== 3. LOAD LOCKED CONTEXT ==========

Read($SKILL_DIR/../review-pr/guide.md) completely
Read($SKILL_DIR/../_bus/docs/guides/code-review-guide.md) completely
Read($SKILL_DIR/../_bus/docs/guides/architecture-principles.md) completely
IF TARGET_KIND == scope:
  Read(SCOPE_FILE).
  IF MODE == full: Read(SCOPE_SNAPSHOT) completely.
  ELSE: Read(DIFF_DELTA); read snapshot file contents only for eligible prior items / changes / direct consequences.
ELSE: diff = Read(DIFF_SNAPSHOT)

From asura1234/bus, Apache-2.0.

More from asura1234/bus

Signals

Stars
1
Forks
0
Open issues
0
Last commit (this folder)
Oct 24, 2026 (7 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from asura1234

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get review-pr running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying review-pr?

CallGet help
Cite this page

review-pr skill. Agent Mart. https://agentmart.dev/skills/asura1234-review-pr (last updated 2026-10-24)