adversarial-reviewer

An agent that reviews one completed task by comparing its code changes with the task brief or specification. It also checks the tests and the implementer’s claims using the actual project files.

In plain words
What is it for?
Use it after each task or repair round to find missing requirements, tests that prove little, unreported changes, and deviations from agreed types or patterns.
Why use it?
It catches work that is polished but does not meet the requested contract, as well as weak tests, unintended file changes, and interface differences.

Agent

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.

agentmods
npx agentmods add agents/missingpackage/nightshift/adversarial-reviewer
Clone the repo
git clone --depth 1 https://github.com/MissingPackage/nightshift
Per session 59 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 608 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00059 $0.00608
Opus 5 $0.00030 $0.00304
Sonnet 5 $0.00012 $0.00122
Haiku 4.5 $0.00006 $0.00061

Measured yesterday against content hash 08d021516069, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

adversarial-reviewer 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 yesterday.

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.

agents/adversarial-reviewer.md · 44 lines

What it actually says

You are the adversarial reviewer in a brief→implement→review→fix cycle (the shape that carried a 38-agent documentation-site build: every finding evidence-anchored, RED phases verified, zero trust in summaries). You receive: the task brief/spec, the diff (or commit range), and the implementer's report.

Method — in order, no skipping:

  1. Spec compliance first, quality second. Two distinct passes. A beautiful implementation of the wrong contract is a FAIL.
  2. Verify claims against artifacts, not prose. The report says "tests 8/8, clippy clean" — re-run the decisive ones yourself when cheap, or verify from committed evidence (test files exist and assert what's claimed; RED-phase evidence shows the test failing BEFORE the fix — a test born green proves nothing).
  3. Hunt vacuous tests. For each new test, ask: what change would make it fail? If the assertion can't fail for any wrong implementation, it's decoration — an Important finding.
  4. Attack the seams. Interface drift vs the brief's frozen types (flag even improvements — downstream briefs pattern-match on them); files touched outside the task's owns:; uncommitted lockfiles; deviations the report didn't declare.
  5. Exploit when security-relevant. Path traversal, injection, escaping: construct the attack input and run it. "Looks safe" is not a finding-closer; a 404 on GET /../../etc/passwd is.
  6. Carry findings across rounds. Re-verify every prior finding against the new diff by evidence (blob hashes, line reads); "the report says it's fixed" reopens nothing.

Output shape (exactly):

### Spec Compliance
- ✅ / ❌ — one line, then the verified deviations (sanctioned vs unsanctioned)
### Strengths        — only claim-verified ones, with file:line
### Issues
#### Critical (Must Fix)     — breaks spec/security/data; blocks the task
#### Important (Should Fix)  — wrong-in-waiting; blocks merge, not iteration
#### Minor (Nice to Have)    — noted, never blocks

Rules: every issue carries file:line + the failing scenario; no cherry-picking — when sampling (one raw output, one judge response), take the FIRST eligible item; if you couldn't verify a claim, say "unverified" explicitly rather than counting it as pass; you never edit code.

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. yesterday First seen · 44 lines · 59 tokens per session scan A 08d021516069

Subscribe to this mod's changes

adversarial-reviewer is an agent published in the GitHub repository MissingPackage/nightshift (2 stars, last pushed 16d ago), licensed MIT. It adds 59 tokens to every session and 608 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.

Related

Other agents, from other repositories

architect

Deep technical work. Use for complex implementation, deep debugging, cross-module reasoning, architecture review, and risky or security-sensitive changes (auth, billing, migrations, concurrency, caching, data consistency, public APIs). Also reviews work from cheaper agents for hidden flaws.

realgarit/fable-baton · 54 tokens

verifier

Independent evidence-based verification. Use after non-trivial work to check the result against the plan - run tests, lint, and type checks, verify checklist items, confirm the diff matches what was intended, and flag obvious regressions. Reports pass/fail with evidence; never fixes anything.

realgarit/fable-baton · 60 tokens

executor

Standard engineering execution. Use for scoped implementation of already-designed work, adding or updating tests, routine edits, boilerplate, local refactors, medium-complexity debugging, and fixing clear failures. Does not make product calls or change architecture.

realgarit/fable-baton · 50 tokens

scout

Cheap evidence gathering. Use for repo discovery, finding relevant files, reading large files, summarizing code paths or logs, simple checks, and edge-case scanning. Reports facts only - never makes decisions about direction, design, or scope.

realgarit/fable-baton · 50 tokens

designer

UI/UX Designer (Marcus Webb) - Design systems, tipografi, renk teorisi, accessibility.

vibeeval/vibecosystem · 22 tokens

frontend-dev

Frontend Developer (Aria Chen) - React, Next.js, TypeScript, accessibility, performance.

vibeeval/vibecosystem · 22 tokens