A Claude Code plugin that orchestrates adversarial review loops between Claude Code and OpenAI Codex CLI. Claude writes plans and code; Codex tears them apart. They iterate until convergence.
This plugin adds two slash commands to Claude Code:
Pre-implementation planning with adversarial critique.
- Claude analyzes your codebase and writes a detailed implementation plan
- Codex reviews the plan as a pragmatic senior engineer — looking for real bugs, not theoretical nitpicks
- Claude revises based on feedback
- Loop continues until Codex approves (or 20 iterations max)
- Pauses for your approval before any code is written
Post-implementation code review on your current git changes.
- Captures your git diff
- Codex reviews for bugs, security issues, and correctness problems
- Claude autonomously fixes any critical issues found
- Loop continues until Codex approves (or 20 iterations max)
- Claude Code CLI installed and configured
- OpenAI Codex CLI installed and on your PATH (
codex execmust work)
Add the marketplace and install the plugin in Claude Code:
/plugin marketplace add bobby-beckmann/adversarial-review
/plugin install adversarial-review@adversarial-review
The /adversarial-plan and /adversarial-review commands will be available in all projects.
/plugin update adversarial-review@adversarial-review
Codex ends every review with one of:
APPROVED— no blocking issues, work is acceptableNEEDS_REVISION— blocking issues that must be addressed
Reviews are calibrated to be pragmatic. A simple script doesn't get the same scrutiny as a payment system. Convergence typically happens in 2-3 iterations.
Each run creates a unique session directory under .adversarial-review/ in your project root:
.adversarial-review/
latest -> abcd-efgh-ijkl/ # symlink to most recent session
abcd-efgh-ijkl/
plan_v1.md, plan_v2.md, ... # plan iterations
review_v1.md, review_v2.md, ... # Codex reviews of each plan
plan_final.md # converged final plan
mnop-qrst-uvwx/
diff_for_review.md # code changes sent for review
code_review_v1.md, ... # Codex code review rounds
Previous sessions are preserved. You may want to add .adversarial-review/ to your .gitignore.
- Iteration limit: Edit the commands in
commands/to change from the default 20 - Review prompts: Customize what Codex evaluates by editing
scripts/codex-review.sh - Review stance: The prompts are tuned for pragmatic review — modify them if you want stricter or more lenient feedback
MIT