multi-model-adversaria…
Use for high-stakes review where you want multiple model providers reviewing the same artifact and critiquing each other. Shells…
Use when reviewing a diff, commit, branch, or implementation against a spec — dispatches two same-model reviewer subagents in parallel under a competitive scoring frame, then aggregates findings. Triggers on "review this", "PAR review", "adversarial review", or any evaluative
Claude Code
$ npx -y skills add prime-radiant-inc/parallel-adversarial-review --skill parallel-adversarial-review --agent claude-code
Codex
$ npx skills add prime-radiant-inc/parallel-adversarial-review --skill parallel-adversarial-review -a codex -y
Cursor
$ npx skills add prime-radiant-inc/parallel-adversarial-review --skill parallel-adversarial-review -a cursor -y
Gemini CLI
$ npx skills add prime-radiant-inc/parallel-adversarial-review --skill parallel-adversarial-review -a gemini-cli -y
GitHub Copilot
$ npx skills add prime-radiant-inc/parallel-adversarial-review --skill parallel-adversarial-review -a github-copilot -y
OpenCode
$ npx skills add prime-radiant-inc/parallel-adversarial-review --skill parallel-adversarial-review -a opencode -y
Windsurf
$ npx skills add prime-radiant-inc/parallel-adversarial-review --skill parallel-adversarial-review -a windsurf -y
name: parallel-adversarial-review description: Use when reviewing a diff, commit, branch, or implementation against a spec — dispatches two same-model reviewer subagents in parallel under a competitive scoring frame, then aggregates findings. Triggers on "review this", "PAR review", "adversarial review", or any evaluative gate (scope review, spec compliance, code quality, audit).
Two reviewers, same model, identical inputs, run in parallel. They never see each other. A competitive scoring frame in the prompt pressures thoroughness. After both return, aggregate findings and take the worst severity on disagreement. No thresholds. No negotiation.
Any evaluative gate. If you are about to "review" or "audit" something, use PAR. Do not roll your own review.
| Gate | Reviewer role | |---|---| | Pre-iteration scope review | Scope reviewer | | Per-task spec compliance | Spec-compliance reviewer | | Per-task code quality | Code-quality reviewer | | Per-sprint audit | Auditor | | PR / branch review | Code reviewer |
PAR is always-on. There is no opt-out. If you find yourself wanting to skip the second reviewer "to save time", you are wrong.
1. **Dispatch TWO reviewer subagents simultaneously** with identical inputs. Use your platform's parallel dispatch (the `Agent` tool, or equivalent). Neither reviewer sees the other's work.
2. **Wrap each reviewer's prompt** with the competitive framing in `reviewer-wrapper.md`. The wrapper adds the scoring incentive on top of your domain-specific reviewer instructions.
3. **Wait for both reviewers to return.** Do not start aggregating until you have both reports.
4. **Aggregate findings:**
5. **Pass aggregated findings to the next stage** (the implementer, the roadmap author for scope reviews, the backlog for audits).
6. **On re-review after fixes:** dispatch a fresh parallel adversarial pair. No state carries between review iterations.
If subagent dispatch is unavailable (session policy, runtime limits, or tool restrictions):
1. Perform the first review pass yourself, using the same domain-specific prompt. 2. Save the findings, then perform a second pass with the explicit instruction: "Find issues the first review missed. Score 5 points for each new finding." 3. Aggregate both passes as if they were parallel reviewers. 4. When reviewing code, use `git diff HEAD` AND `git ls-files --others --exclude-standard` to cover both tracked changes and new untracked files — `git diff` alone misses new files.
This fallback is weaker than true PAR (same model, sequential, no sampling variance) but maintains the adversarial structure. Use it only when parallel dispatch is genuinely impossible.
Inputs you have:
- DOMAIN_PROMPT: the domain-specific reviewer instructions (e.g., the
spec-compliance reviewer prompt, or "review this PR for security bugs")
- REVIEW_TARGET: the diff, file list, branch name, or other artifact to review
Steps:
1. Read reviewer-wrapper.md (sibling file in this skill).
2. Build prompt A: substitute [A] and DOMAIN_PROMPT into the wrapper.
3. Build prompt B: substitute [B] and DOMAIN_PROMPT into the wrapper.
4. Dispatch both subagents in a single tool-call batch (parallel).
Descriptions: "PAR Review A: <short>", "PAR Review B: <short>".
5. Collect both reports.
6. Aggregate: dedupe identical findings, keep singletons, on severity
disagreement take the worst.
7. Output: a single combined findings report with severity buckets.Use for high-stakes review where you want multiple model providers reviewing the same artifact and critiquing each other. Shells…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.