From nightgauge
Re-review the current change with fresh-eyes critics that have no authoring context, each attacking it from a distinct lens (correctness, security, reuse/simplification, tests), then drive a fix loop until findings degrade to nitpicks. Use to harden a diff before opening or merging a PR, when asked for an adversarial/critical review, or from feature-dev/pr-create as an optional hardening gate.
How this skill is triggered — by the user, by Claude, or both
Slash command
/nightgauge:adversarial-reviewThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
> Fresh-eyes critique → fix loop. Runs on the capability-routed workflow spine
Fresh-eyes critique → fix loop. Runs on the capability-routed workflow spine (#3899): the
orchestration:block fans out the critics and the judge merges; the prose Workflow below is the single-agent portability floor.
Authors are blind to their own assumptions. This skill spawns fresh-context
critics over the current diff — each told to refute, not bless — from
distinct lenses, merges what survives, fixes it, and re-runs until only nitpicks
remain. It complements feature-dev's quality fanout by adding a no-prior-context
adversarial pass.
| Tool | Command |
|---|---|
| Claude Code | /nightgauge-adversarial-review [--base main] |
| Codex | $nightgauge-adversarial-review |
feature-dev Phase 5 or pr-create as an optional hardening gate.BASE="${BASE:-main}"
git diff --stat "$BASE"...HEAD
git diff "$BASE"...HEAD > /tmp/adversarial-diff.patch
If the diff is empty, report "nothing to review" and exit 0.
Spawn one critic per lens (correctness, security, reuse/simplification, tests).
Each critic gets the diff and the critic lens prompt below with no
authoring context. When the orchestration spine is active these run as parallel
units; otherwise spawn them with Task. Each returns structured findings.
You are a fresh-eyes reviewer with no prior context on this change. Your job is to refute it from the {lens} lens. Read the diff and the files it touches. Report concrete, actionable findings only — each with
file:line, a one-line claim, severity (blocker|major|nitpick), and the fix. Default to skepticism: if something is unclear, flag it. Do not restate what the code does or praise it. Return JSON:{ "findings": [ { "file", "line", "claim", "severity", "fix" } ] }.Lens focus:
- correctness — logic errors, edge cases, error handling, race conditions, contract/handoff violations.
- security — input validation, authz, secret handling, injection, unsafe defaults (see
standards/security.md).- reuse-simplification — duplicated logic, reinvented helpers, dead code, needless complexity, altitude.
- tests — missing/weak assertions, untested branches, tests that can't fail, brittle fixtures.
file:line + claim.blocker/major; collect nitpicks separately.Edit), running the repo's build/tests after each
batch — never report success on a failing check (#2779).blocker/major (findings have "degraded to nitpicks") or a
max of 3 rounds.Summarize: rounds run, findings fixed (by lens/severity), remaining nitpicks (listed, not silently dropped), and the final build/test status.
Part of the Nightgauge Issue-to-PR pipeline. See docs/WORKFLOW_ORCHESTRATION.md for the orchestration spine.
npx claudepluginhub nightgauge/nightgauge --plugin nightgaugeGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.