adversarial-review

adversarial-review is a skill for Claude Code from stellarshenson/claude-code-plugins. It costs 62 tokens per session (956 once invoked), scanned A, original, MIT.

A review workflow that asks independent reviewer agents to examine a data-science project or code change from a challenging perspective. Possible reviewers include data scientists, software architects, popular-science writers, and user-experience designers.

In plain words
What is it for?
Running a hostile review of a code change or repository, choosing a reviewer suited to the project’s risks, fixing findings, and confirming the result.
Why use it?
It helps find bugs, design problems, communication issues, or usability risks that the original author may miss. The review can continue through fixes and a follow-up check.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: mentions subagents.

Part of the datascience plugin — 20 skills, 15 commands shipped together

Good fit Running a hostile review of a code change or repository, choosing a reviewer suited to the project’s risks, fixing findings, and confirming the result.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/stellarshenson/claude-code-plugins/adversarial-review
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add stellarshenson/claude-code-plugins --skill adversarial-review
Clone the repo
git clone --depth 1 https://github.com/stellarshenson/claude-code-plugins

Made for: Claude Code.

Or install datascience, the plugin that ships this one along with the rest of its 20 skills, 15 commands.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for adversarial-review

README.md
[![agentmods](https://agentmods.dev/badge/skills/stellarshenson/claude-code-plugins/adversarial-review.svg)](https://agentmods.dev/skills/stellarshenson/claude-code-plugins/adversarial-review)
Your own site
<a href="https://agentmods.dev/skills/stellarshenson/claude-code-plugins/adversarial-review"><img src="https://agentmods.dev/badge/skills/stellarshenson/claude-code-plugins/adversarial-review.svg" alt="Measured on agentmods" height="20"></a>
Per session 62 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 956 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00062 $0.00956
Opus 5 $0.00031 $0.00478
Sonnet 5 $0.00012 $0.00191
Haiku 4.5 $0.00006 $0.00096

Measured 7d ago against content hash 5b42c4aed683, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

adversarial-review scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/datascience/skills/adversarial-review/SKILL.md · 29 lines

How it starts

The opening of the file, as written. The whole thing — 29 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Adversarial Review

Invoke the devils-advocate:adversarial-review skill first - it is the single source of truth for the two modes (diff bug-hunt vs whole-repo audit), the rounds protocol, the spawn mechanics, the gotchas, and every adversary persona beside it in adversaries/<name>.md. Do NOT duplicate it here. This skill is only the data-science entry point into it.

Requires the devils-advocate plugin installed - the skill and its adversaries live there. For a non-data-science target, /devils-advocate:adversarial-review is the same skill with the full roster up front.

What to do

  1. Invoke the devils-advocate:adversarial-review skill
  2. No adversary named? ASK before spawning - state the inferred target, list the fitting candidates with their lens, recommend one, wait. Wrong lens = fluent review of a risk the target lacks. Skip only when the prompt names it
  3. Cap at 3 unless the user explicitly asks for more - your triage, not the spawn, is the bottleneck; 3 lenses catch most of what 5 would, at a review you finish
  4. Pick by where the risk lives - the four that earn their keep in a data science project:
    • data-scientist → an experiments log, notebook, data-prep pipeline, or metric/eval design, before trusting a conclusion
    • architect → the project / pipeline architecture, config, repo structure
    • popular-science → the article, story, or README, before publishing for non-specialists
    • ux-designer → notebook visuals, figures, dashboards
    • each is also fully generalist - use it on any target that fits its lens. The skill's roster carries more (bug-hunter, qa-engineer, methodologist, tui, devops, analyst) - reach for them when the risk is there: methodologist on an experiment's verdict ladder, qa-engineer on the test suite, analyst on a spec or acceptance-criteria doc
  5. Pick the mode: Mode 1 (inline diff, no tools) for a specific change; Mode 2 (whole-repo, tools ON) for systemic rot
  6. TaskCreate the review before spawning, TaskUpdate it each round - completed only on a clean confirming round. One task per review, not per lens
  7. Spawn the devils-advocate:adversarial-reviewer subagent - one per lens, naming the adversary and scope in its prompt; a panel goes in a single message so the lenses run concurrently and the user can watch each. Write the prompt as if it were a claude -p command line - a process that knows nothing but what you typed. Pass target, scope and locked decisions; never your reasoning for the change, which is the thing under review. Drop to claude -p (skill's mechanics - env -u CLAUDECODE, < /dev/null, --no-session-persistence) only for what a subagent cannot do - genuinely deny tools in Mode 1, or pin a different model
  8. Adjudicate before fixing - for a panel, or any round past 3, spawn devils-advocate:adjudicator with every lens's findings plus anything you know (a blast radius you already have, a locked decision, domain insight, the previous round's findings and the fixes since). It returns one change plan grouped by root cause, with each change's radius and what it could break. Skip only for a single lens with one or two findings you can verify yourself
  9. Triage what the adjudicator left UNPROVEN and spot-check its confirmed and refuted calls - you still own the final call - then fix the real ones and run the re-confirm round - do not call it clean until a confirming round comes back clean

Read the full file on GitHub · 29 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 7d ago First seen · 29 lines · 62 tokens per session scan A 5b42c4aed683

Subscribe to this mod's changes

adversarial-review is a skill published in the GitHub repository stellarshenson/claude-code-plugins (3 stars, last pushed today), licensed MIT. It adds 62 tokens to every session and 956 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.