adversarial-spec
by zscole
A Claude Code plugin that iteratively refines product specifications by debating between multiple LLMs until all models reach consensus.
# Add to your Claude Code skills
git clone https://github.com/zscole/adversarial-specadversarial-spec
A Claude Code plugin that iteratively refines product specifications through multi-model debate until consensus is reached.
Key insight: A single LLM reviewing a spec will miss things. Multiple LLMs debating a spec will catch gaps, challenge assumptions, and surface edge cases that any one model would overlook. The result is a document that has survived rigorous adversarial review.
Claude is an active participant, not just an orchestrator. Claude provides independent critiques, challenges opponent models, and contributes substantive improvements alongside external models.
Quick Start
# 1. Add the marketplace and install the plugin
claude plugin marketplace add zscole/adversarial-spec
claude plugin install adversarial-spec
# 2. Set at least one API key
export OPENAI_API_KEY="sk-..."
# Or use OpenRouter for access to multiple providers with one key
export OPENROUTER_API_KEY="sk-or-..."
# 3. Run it
/adversarial-spec "Build a rate limiter service with Redis backend"
How It Works
You describe product --> Claude drafts spec --> Multiple LLMs critique in parallel
| |
| v
| Claude synthesizes + adds own critique
| |
| v
| Revise and repeat until ALL agree
| |
+--------------------------------------------->|
v
User review period
|
v
Final document output
- Describe your product concept or provide an existing document
- (Optional) Start with an in-depth interview to capture requirements
- Claude drafts the initial document (PRD or tech spec)
- Document is sent to opponent models (GPT, Gemini, Grok, etc.) for parallel critique
- Claude provides independent critique alongside opponent feedback
- Claude synthesizes all feedback and revises
- Loop continues until ALL models AND Claude agree
- User review period: request changes or run additional cycles
- Final converged document is output
Requirements
- Python 3.10+
litellmpackage:pip install litellm- API key for at least one LLM provider
Supported Models
| Provider | Env Var | Example Models |
|------------|------------------------|----------------------------------------------|
| OpenAI | OPENAI_API_KEY | gpt-4o, gpt-4-turbo, o1 |
| Anthropic | ANTHROPIC_API_KEY | claude-sonnet-4-20250514, claude-opus-4-20250514 |
| Google | `GEMINI_API_K...