Pr deep review
Deep, multi-agent adversarial review of a GitHub pull request. Use when the user asks to review a PR, "review PR #N", review the current branch's PR, or wants a thorough/rigorous/adversarial PR review. Orchestrates gather → understand → review (7 dimensions) → adversarially verify every finding → a final adversarial pass that audits the review itself, then optionally posts a summary and/or inline GitHub comments.From its SKILL.md
npx -y skills add McOso/pr-deep-review --skill pr-deep-reviewAssembled 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
4.1 KB, as published. Nobody here has run it
Deep PR review
A rigorous, repo-agnostic PR review built on a saved multi-agent workflow (pr-deep-review). The defining feature is the final adversarial pass: after the review is synthesized, one more agent independently re-reads the code to refute findings, hunt false negatives, and recalibrate severities. Keep that phase — it is the main quality unlock.
Invoking this skill is itself an explicit opt-in to run the Workflow tool. It pairs especially well with ultracode/high effort, but works on its own.
Steps
-
Resolve inputs.
- PR number: from the argument; else infer from the current branch via
gh pr view --json number,headRefName,headRefOid,baseRefName,reviewDecision(rungh pr statusif ambiguous). If you still can't determine it, ask the user. - Base branch: from
gh pr view(baseRefName), defaultmain. - Repo:
gh repo view --json nameWithOwner -q .nameWithOwner. - Post mode: from
--post=(defaultask).
- PR number: from the argument; else infer from the current branch via
-
Preflight.
- Confirm
gh auth statusworks. If the token is invalid, tell the user to run! gh auth loginand stop until fixed (the review needs PR conversations). - Compare current branch to the PR head (
headRefName). If they differ, tell the user: the review can still run diff-only, but reading source files is most accurate on the PR branch. Offer togh pr checkout <PR>(only with their OK — it changes the working tree); otherwise proceed and pass that state through.
- Confirm
-
Run the engine. Call the workflow:
Workflow({ name: 'pr-deep-review', args: { pr: <number>, base: '<base>', repo: '<owner/name>', focusNotes: '<any reviewer hints, optional>', thoroughness: 'deep' } })It runs in the background and notifies you on completion. The result object contains
repoMap,reviewReport(withsummaryComment+inlineComments),adversarial,headSha,repo,diffPath, andallVerified. If the result is truncated in the notification, read the full output file referenced by the task notification. -
Reconcile + present. Apply the final adversarial pass on top of the draft: drop/soften anything
incorrectOrOverstatedFindingsflagged, applyseverityAdjustments, and fold inoverlookedIssues. Present to the user: the repo understanding (brief), the confirmed findings by severity (withfile:lineand the fix), the reviewer-conversation follow-through, any notable refutation, and the merge recommendation + gate. Be honest about what the adversarial pass could NOT verify (e.g. tests not executed). -
Post (only per the user's choice). Posting is public/outward-facing — never post without explicit intent.
- If
--postwas given, honor it. Otherwise ask: summary comment, inline comments, both, or none. - Always show the exact comment bodies and target lines first.
- Use the recipe in posting-inline-comments.md: summary via
gh pr comment, inline via a singlePOST .../pulls/<PR>/reviewswithevent:"COMMENT",commit_id=<headSha>, and the workflow'sinlineComments. If a comment 422s (line not in diff), drop it to the summary and continue. Post asCOMMENT— neverAPPROVE/REQUEST_CHANGESunless the user explicitly asks.
- If
Notes
- Don't make commits or edit code as part of a review unless the user asks separately.
- If the diff is empty or the PR is closed/merged, say so and stop.
- The workflow is reusable on its own:
Workflow({ name: 'pr-deep-review', args: { pr: N } }). - To tune cost, pass
thoroughness: 'standard'(fewer subsystem readers, single-lens verification) instead of'deep'.