Multi-agent deliberation plugin for Claude Code. Orchestrate multiple AI coding assistants (Claude, Codex, Gemini) to get diverse perspectives on tasks.
npx add-skill https://github.com/BayramAnnakov/agent-tower-plugin# Add the marketplace
claude plugin marketplace add BayramAnnakov/agent-tower-plugin
# Install the plugin
claude plugin install agent-tower-plugin@agent-tower-plugin-marketplace
# Restart Claude Code to activate the pluginclaude plugin add https://github.com/BayramAnnakov/agent-tower-pluginclaude plugin add ./agent-tower-pluginAt least 2 of these CLI tools must be installed and accessible:
- Claude Code CLI:
claude --version - Codex CLI:
codex --version - Gemini CLI:
gemini --version
Runs multiple agents in parallel, each providing an independent opinion. Before running, Claude analyzes your question and suggests relevant perspectives (personas) via an interactive prompt. Agents anonymously rank each other's responses, and a chairman synthesizes the final answer.
/tower:council "Should we use TypeScript or JavaScript?"
/tower:council "What's the best fitness program to improve VO2max?"
/tower:council "Evaluate the security of this codebase" --agents 3Options:
--agents N: Use N agents (default: all available)--personas JSON: Custom personas as JSON array--no-personas: Disable persona assignment-v, --verbose: Show detailed progress
Two agents argue opposing positions on a binary decision. A judge evaluates and declares a winner.
/tower:debate "Microservices vs monolith?"
/tower:debate "React vs Vue for this project?" --rounds 2Options:
--rounds N: Number of argument rounds (default: 3)--pro-agent NAME: Agent for PRO position--con-agent NAME: Agent for CON position--judge-agent NAME: Agent to judge-v, --verbose: Show detailed progress
A producer generates a response, a reviewer provides feedback, and they iterate until consensus.
/tower:deliberate "Review the architecture of ~/GH/myproject"
/tower:deliberate "Analyze this PR" --max-rounds 3 --threshold 0.9Options:
--max-rounds N: Maximum rounds (default: 5)--threshold X: Consensus threshold 0.0-1.0 (default: 0.85)--producer NAME: Agent for producer role--reviewer NAME: Agent for reviewer role-v, --verbose: Show detailed progress
Check which agent backends are available.
/tower:agentsagent-tower-plugin/
├── .claude-plugin/
│ └── plugin.json # Plugin manifest
├── commands/
│ ├── council.md # /tower:council skill
│ ├── debate.md # /tower:debate skill
│ ├── deliberate.md # /tower:deliberate skill
│ └── agents.md # /tower:agents skill
├── scripts/
│ ├── lib/ # Core library modules
│ │ ├── base.py # AgentBackend ABC
│ │ ├── claude_backend.py
│ │ ├── codex_backend.py
│ │ ├── gemini_backend.py
│ │ ├── registry.py # Agent discovery
│ │ ├── personas.py # Dynamic persona assignment
│ │ ├── council_mode.py # Council orchestration
│ │ ├── debate_mode.py # Debate orchestration
│ │ └── deliberation_mode.py
│ ├── run_council.py # Entry point for council
│ ├── run_debate.py # Entry point for debate
│ ├── run_deliberate.py # Entry point for deliberation
│ └── list_agents.py # Entry point for agents
├── SKILL.md # Skill context for Claude
└── README.md
-
Pre-flight - Persona Selection: Claude analyzes your question and suggests relevant perspectives via an interactive prompt. You select which personas to use (e.g., "Exercise Physiologist", "Local Expert", "Critical Thinker").
-
Stage 1 - Opinions: All agents analyze the task in parallel with their assigned personas.
-
Stage 2 - Ranking: Each agent reviews and ranks others' responses. Responses are anonymized (A, B, C) to avoid bias.
-
Stage 3 - Synthesis: A chairman agent synthesizes all opinions, weighted by peer rankings, into a final answer.
- Opening: Both agents present opening arguments in parallel.
- Rebuttals: Agents take turns responding to each other's arguments.
- Judgment: A judge evaluates both sides and declares a winner with scores.
- Initial: Producer generates first response.
- Review Loop: Reviewer provides structured feedback, producer addresses it.
- Consensus Check: Each round checks if agreement exceeds threshold.
Claude analyzes your question and suggests relevant personas. You can also use custom personas via the --personas flag.
| Persona | Focus Areas |
|---|---|
| Security Analyst | auth, vulnerabilities, OWASP, injection |
| Systems Architect | scalability, performance, infrastructure |
| Code Quality Reviewer | refactoring, testing, patterns |
| DevOps Engineer | deployment, kubernetes, monitoring |
| Data Engineer | databases, schemas, pipelines |
| Devil's Advocate | risks, assumptions, edge cases |
| Persona | Focus Areas |
|---|---|
| Research Analyst | facts, sources, evidence, accuracy |
| Local Expert | practical tips, insider knowledge, logistics |
| Critical Thinker | assumptions, trade-offs, nuance |
| Practical Advisor | actionable advice, common pitfalls |
| Persona | Focus Areas |
|---|---|
| Business Strategist | market, monetization, growth |
| Product Manager | user needs, features, roadmap |
| Financial Analyst | pricing, margins, projections |
| UX Designer | usability, accessibility, flows |
MIT