Give it a task. Five agents argue about the design, implement it, review each other's work, and try to break it. You get finished code and a conversation showing exactly how they got there.
warroom
5 agents. 1 task. Let the debate begin.
Task: Add a hello world Express server
────────────────────────────────────────────
Phase 1: Design
────────────────────────────────────────────
[ARC] Architect I propose splitting server.js from index.js. The app...
[CHL] Challenger Two real issues. No "main" in package.json -- npm st...
[ARC] Architect Both valid. Adding start script, main field, and err...
[CHL] Challenger Design approved. Error handling on the server instan...
────────────────────────────────────────────
Phase 2: Build
────────────────────────────────────────────
[BLD] Builder Implemented. 4 files. server.js exports app without...
4 files written
────────────────────────────────────────────
Phase 3: Review
────────────────────────────────────────────
[REV] Reviewer LGTM. server.js/index.js split is correct. Error han...
[BRK] Breaker Two real bugs. PORT=0 reports "port 0" instead of ac...
DONE
5 agents · 6 messages · 1 revision · 2 bugs caught · 4 files · 70s
claude plugin marketplace add https://github.com/Djsand/warroom
claude plugin install warroomThen:
/warroom "Add user authentication with OAuth"
No API key needed. Uses your Claude Code subscription.
npx warroom setup --token $(claude setup-token)
npx warroom run "Add user authentication with OAuth"Or with an API key:
export ANTHROPIC_API_KEY=sk-ant-...
npx warroom run "Add user authentication with OAuth" ┌─────────────┐
│ Your task │
└──────┬───────┘
│
┌───────────▼───────────┐
│ Phase 1: DESIGN │ Architect proposes.
│ Architect + Challenger Challenger attacks.
│ debate 2-4 rounds │ They revise until
│ │ the design holds.
└───────────┬───────────┘
│
┌───────────▼───────────┐
│ Phase 2: BUILD │ Builder implements
│ Builder writes code │ the agreed design.
└───────────┬───────────┘
│
┌───────────▼───────────┐
│ Phase 3: REVIEW │ Reviewer checks quality.
│ Reviewer + Breaker │ Breaker tries to
│ examine the code │ break everything.
└───────────┬───────────┘
│
┌───────────▼───────────┐
│ Phase 4: FINALIZE │ conversation.md
│ Save conversation │ summary.md
│ and summary │ code on branch
└───────────────────────┘
| Agent | Tag | What it does | Optimizes for |
|---|---|---|---|
| Architect | ARC |
Proposes designs, revises based on critique | Elegance and maintainability |
| Challenger | CHL |
Finds gaps and edge cases, attacks every proposal | Robustness and completeness |
| Builder | BLD |
Implements the agreed design | Simplicity and shipping |
| Reviewer | REV |
Reviews code for bugs and quality issues | Quality and best practices |
| Breaker | BRK |
Tries to break everything with adversarial tests | Finding failures |
Each agent has a different objective function. They genuinely disagree. That's what makes the conversations interesting.
.warroom/conversations/
├── conversation.md <- Full agent debate (shareable)
└── summary.md <- What was built, decisions made, bugs caught
The conversation is the product. Screenshot it. Share it. Learn from it.
warroom run <task> Assign a task to the agent team
warroom setup Authenticate (setup token or API key)
warroom setup --login Browser-based OAuth login
warroom read Read the latest conversation
warroom read --format html Export as standalone HTML
warroom status List all conversations
The plugin mode needs no configuration.
# Use your Claude subscription (recommended)
warroom setup --token <paste from `claude setup-token`>
# Or use an API key
export ANTHROPIC_API_KEY=sk-ant-...Real conversations from warroom sessions — each one shows the agents debating, catching bugs, and refining code:
- Express Server — 2 bugs caught in a simple hello world
- JWT Authentication — 3 security issues found by Breaker
- CSV to JSON CLI — streaming architecture stress-tested
- React Todo App — localStorage race conditions and state bugs
- Database Schema — multi-tenant isolation flaws exposed
- WebSocket Chat — XSS, flooding, and 10k connection limits
Want to add your own? See CONTRIBUTING.md.
MIT
