doodledood/manifest-dev/review-pr

Claude Code and agent skill by doodledood/manifest-dev

Trust tier 2
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Autonomous PR review that posts high-signal, human-voiced comments under your account. Use when reviewing someone else''s PR or your own manifest-driven PR, when you want a precision-tuned review you can walk away from, or when the user asks to review a PR, post a PR review, autoreview, loop review, or watch a PR.

Install

npx vskill@latest install doodledood/manifest-dev/review-pr

SKILL.md

High-signal autonomous PR review posted under your account. A review you'd put your name on — precision over coverage.

Inputs. pr-url from the arg or the current branch's upstream PR. --manifest <path> switches the skill into manifest mode: it skips the generic reviewer fleet and verifies only the manifest's contract — it does not merely ground the fleet against author intent. Only in that mode, load references/MANIFEST_MODE.md for the verification mechanics; without --manifest, that reference is never read and review runs the generic review-code fleet. The skill does not auto-discover a manifest from any folder convention. --bundle <urls> plus PR-description linked-PR parsing (Depends on #N, Stack:, Co-changes:, GitHub PR URLs) provides cross-PR context for coupled changes. Resolve the PR, current head SHA, our prior GitHub reviews/comments/replies, open review threads, author commits, PR description, and linked-PR context before deciding what to do.

Review organization. Run the required inspections in this session or delegate them to separate contexts when useful; related work may share a context. Another context can help with independent judgment, separable work, or substantial reading. Without that capability, work inline. Placement does not change the required coverage, skill standards, or result for each thread, dimension, and gate. Honor an explicit request for independent review, and report the context actually used rather than claiming independence from the author when none was present.

Self-marking. Posting under your own account means a human reviewer uses the same account, so authorship alone can't tell our automated comments from theirs. Stamp every body this skill posts — new finding comments, thread replies, the summary header, the approval body, and manifest-mode PASS/FAIL — with a trailing hidden marker <!-- manifest-dev:review-pr --> — a fixed literal string, byte-identical wherever review-pr runs (don't namespace-rewrite it per distribution, or comments posted by one host stop matching another's); GitHub strips it from the rendered comment but returns it through the API. This marker, not account authorship, is what makes a comment an automated review-pr comment: everywhere this skill says threads/comments we authored or replied to (or our prior reviews/comments) it means the ones carrying this marker, so an unmarked comment on our account reads as human and is left untouched. Manifest mode extends the marker with the criterion id (references/MANIFEST_MODE.md). Judgment-pass findings extend it with a judgment token — <!-- manifest-dev:review-pr judgment --> — so a prior judgment finding is distinguishable from an ordinary review-pr comment in both modes (continuation uses this token to recover prior judgment and avoid repeating it).

One-Shot Pass

Every invocation, including non---loop, performs one complete PR-state advance:

  1. Advance our existing threads. For every unresolved thread we authored or replied to, run the per-thread verification below. Post needed thread replies, resolve terminal threads, and leave genuinely pending threads open.
  2. Verify the change. Manifest mode (--manifest): load references/MANIFEST_MODE.md and follow it to verify the manifest contract against the PR head — the generic reviewer fleet is skipped entirely. No-manifest mode: run the generic reviewer fleet over the review range — determine that range from durable GitHub state: if we have a prior review on this PR and the head has moved since, use that review's commit/head SHA as the lower bound and review last-reviewed-by-us..current-head; otherwise review the full PR diff. Later --loop wakes use that invocation's checkpoint instead, per references/LOOP.md. In both modes, include the judgment pass (below) under its continuation rule.
  3. Post outcomes. Submit new surviving findings as a single GitHub review with decision comment. Thread replies are posted on their existing threads, not as new review comments. End with the cycle summary below.

Each invocation starts from GitHub state and the current checkout.

An invocation always verifies the change. Choosing to run review-pr again is the operator's call — often a risky change worth a second read, under a different model — so a fresh invocation reviews the head even when we already reviewed it and nothing has moved since. The review range is then the full PR diff, and the prune below is what keeps the pass to whatever it has new to add: a second read that simply concurs posts nothing.

The one unchanged-head skip is a --loop wake after that invocation's first pass (references/LOOP.md): there nobody re-decided anything, and re-reviewing one commit on every wake is the nag the check exists to prevent.

Per-Thread Verification

For every unresolved thread we authored or replied to, invoke the review-pr-thread-verify skill. Supply the evidence for that thread:

  • The original finding: anchor, body, review commit/head SHA, and concrete concern.
  • Every author reply on this thread since our last message, plus every prior reply we posted on this thread.
  • Current code at the anchor, with nearby context, and any commits since the original review that touched the relevant range.
  • Full PR history: all comments, review threads, commit messages, current PR description, and our prior review/comment bodies.
  • Bundle context for each linked PR (≤5): diff, description, top-level conversation.
  • For a judgment thread, the relevant project direction and decisions, the prior recommendation and the evidence or accepted trade-off it rested on.
  • The voice profile below, for any reply it drafts.

It returns exactly one disposition, a short reason, and a drafted reply where the disposition calls for one; for judgment, also the current recommendation and whether the discussion is settled. Preserve that assessment in the cycle summary even after resolving the thread. Act on it: addressed-by-fix → resolve the thread, posting the reply only if it drafted one; addressed-by-valid-reply → post its concession, then resolve; false-positive-or-stale → post its correction, then resolve; needs-our-pushback → post its reply on the existing thread and keep it pending; still-pending → leave the thread open and post nothing.

Caller policy. In no-manifest mode, assess whether the change fulfills its stated purpose and applicable obligations without demonstrated defects or material quality costs in its supported use and expected maintenance. Pass those claims to each inspection. Grades describe the evidence; they are not the default acceptance condition. Publication still selects Medium+ findings by default. An explicit invocation may choose other acceptance or publication policies, including Low; pass both separately to inspection and consolidation. Manifest mode uses the Manifest's current claims and required policies instead. A finding omitted from publication does not thereby become resolved or cease to count against acceptance.

Reviewer fleet. No-manifest mode only — skipped entirely in manifest mode (references/MANIFEST_MODE.md). Activate the review-code skill for each required dimension against the review range, retaining each dimension's findings and verdict even when the reviews share a context. Always-on dimensions: change-intent, code-bugs, code-design, code-maintainability, code-simplicity, context-file-adherence. Add when the diff fits: type-safety on typed code; test-quality and code-testability on source; contracts on API surfaces; operational-readiness on CI/infra/env/migrations/workers/queues/secrets; docs and prose-value on prose; defect-class when the reviewed range fixes a defect — it judges the repair's protection and affected-site accounting, so it has no input on a change that fixes nothing. Deciding that is yours: use the PR description, commits, and linked issues to establish whether a defect is being fixed. For prompts/skills/agents, add a run that activates the review-prompt skill the same way.

Evidence and scope. Keep each dimension focused on its own standard. Use binding requirements, explicit exclusions, and permission limits to judge scope, and give them to defect-class so it can judge authorized remedies. An author's implementation preference is not such a limit. Inspect the code and relevant evidence; the author's explanation or success report does not establish correct behavior. The judgment pass separately assesses the consequences against the project's purpose, using the inputs below.

Holistic coherence pass. After every required inspection has returned, collect their findings. Regrade correctness or safety failures and broken binding promises received as Low from their evidence before applying the caller's chosen policy. Filter only by that publication policy, retaining Low findings when requested; keep dimension and severity. Invoke the review-pr-holistic skill. Keep BLOCKED verdicts with their missing evidence or authority in the cycle summary; consolidation cannot turn an incomplete evaluation into a clean result. Supply the retained findings and the chosen caller policy plus:

  • PR history: all comments and threads on the PR (including our own from any prior review pass), the author's recent commit messages on the branch, the PR description.
  • Bundle context for each linked PR: diff, description, top-level conversation. No inline review comments from linked PRs.
  • The reviewed range for this invocation — the code the fleet's defect findings are bounded to.
  • The judgment pass's assessment and findings, including settled disagreements, from its whole-PR assessment (below). They are consolidated alongside the fleet's but stay exempt from the caller's severity filter and from reviewed-range bounding — the judgment pass reads the whole PR head itself, so its findings are already whole-PR.
  • Any truncation the caller did, carried forward.
  • The voice profile below.

It prunes what the PR already covers, dedupes across reviewers, subordinates defect findings beneath a judgment question on the same surface (premise-subsumption), bounds defect findings to the reviewed range, anchors each survivor, and rewrites every body in the voice profile. It returns the comments to post (anchor + voice-compliant body), summary header text if any, truncation notes, a brief dropped-findings tally with dominant reasons, and the judgment assessment for the operator. Pruning a comment does not erase its retained recommendation.

Judgment pass (project consequences). Runs in both modes; manifest mode wires via references/MANIFEST_MODE.md. Activate the review-pr-judgment skill as its own assessment before consolidation. Retrieve the project's purpose, intended users, goals and applicable decisions from its available context, documentation and linked discussion, following relevant pointers. Pass the sources and their reasons, not just a summary of the author's request; name material gaps. This needs neither a Manifest nor a particular filename or setup workflow. Supply those inputs with the PR description, conversation, linked-PR context (diff, description, top-level conversation), the full PR-head diff (base..head), and recovered prior judgment and dispositions. The skill owns the assessment and finding shape. In no-manifest mode its findings and assessment flow through the holistic pass; questions post through the existing voice, judgment marker and single batched comment review.

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
69
Repository forks
9
7-day trend score
21

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/doodledood/manifest-dev/review-pr/badge)](https://verified-skill.com/skills/doodledood/manifest-dev/review-pr)

Something wrong with this skill or its page? Tell us.