From multi-agents
Host a multi-agent round-table discussion. Spawns configurable external CLI agents as panelists with distinct roles and moderates a structured multi-round debate. Use when the user says "round-table", "multi-AI discussion", or "panel discussion".
How this skill is triggered — by the user, by Claude, or both
Slash command
/multi-agents:round-tableThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
```
/round-table <topic>
/round-table --skip codex <topic>
Extract any --skip {name} flags from the arguments and pass them to Agent Resolution for exclusion. The remaining argument is the topic.
Host a structured multi-round discussion among N+1 AI panelists: N external CLI agents (configured or auto-detected) plus yourself (Claude Code). Each is assigned a distinct role. You (Claude Code) are both a panelist — contributing your own opinions from your assigned role — and the moderator who formulates questions, synthesizes responses, and steers the debate. A markdown transcript is saved to the working directory.
N+1 panelists participate: N external CLIs (from resolved roster) + Claude Code (you). Each external CLI runs in permissive/auto-approve mode.
The roster is determined by the Agent Resolution step in Phase 0. Refer to references/agent-catalog.md for shared conventions and each per-agent file (references/{cli-name}.md) for command templates, flags, prompt passing strategy, output cleanup rules, and known quirks.
Minimize tool call rounds. Combine independent checks into parallel calls.
Agent Resolution — follow the procedure in references/agent-resolution.md to build the agent roster.
Single parallel setup call — issue these in one message:
git rev-parse --git-dir 2>/dev/null && echo IS_GIT || (mkdir -p /tmp/multi-agents-workspace && cd /tmp/multi-agents-workspace && git init -q 2>/dev/null && echo CREATED_GIT) — check/create git dir (needed for agents that require git)date '+%Y-%m-%d-%H%M%S' — get timestampGenerate N+1 complementary roles — one for each panelist (N external agents + Claude). Invent roles tailored to the specific topic that create productive tension. Guidelines:
Create transcript file and ask user — write transcript header to round-table-{topic-slug}-{YYYY-MM-DD-HHmmss}.md, display all participants + roles, and ask via AskUserQuestion if ready or want adjustments.
Store git_dir (cwd if git repo, else /tmp/multi-agents-workspace) and initialize session state per agent (e.g., codex_session_id="").
Formulate round question: Based on the topic and (for round 2+) the prior discussion, craft a focused question that advances the debate. Each round should explore a different facet or go deeper on contested points.
Dispatch all N participants in parallel — issue all N Bash tool calls in a single message so they run concurrently. For each agent in the roster, build the command from the catalog:
Round 1 — fresh session:
Use each agent's fresh session command template from the catalog. Substitute {prompt} with the round 1 prompt (see Prompt Templates below). For agents with model overrides, include the model flag.
Round 2+ — session resume: Use each agent's session resume command template from the catalog. For agents that don't support session resume, use the fresh session command with a full context summary.
After each agent returns, perform any agent-specific post-processing:
session id: {uuid})Command conventions (apply to all agents):
sed 's/\x1b\[[0-9;]*m//g' to strip ANSI escape codestimeout parameter (do NOT use the timeout shell command — unavailable on macOS)2>&1 to capture both stdout and stderrExtract clean responses: For each agent, apply the output cleanup rules defined in the catalog.
Display + append to transcript in one step: Display each response to the user, then use the Bash tool with heredoc append (cat >> transcript.md <<'EOF' ... EOF) to write the entire round's content (all N+1 responses + synthesis) to the transcript in a single operation.
Handle errors gracefully (see Error Handling table below). If a participant fails, skip them and continue with the others. Record the failure in the transcript.
Write Claude's own response: After reading all N external responses, write your own substantive response (200-400 words) from your assigned role's perspective. Engage with and reference the other panelists' points — agree, challenge, or build on them. Display it clearly labeled as "Claude ({your_role})".
Write moderator synthesis: Switch to neutral moderator voice. Write a synthesis covering all N+1 panelists' views (including your own):
Display the synthesis to the user. Important: Be fair and even-handed in the synthesis — do not favor your own panelist opinion over others.
Ask the user via AskUserQuestion with these options:
Write a final summary section:
Append the summary to the transcript file using cat >>.
Display the summary to the user and show the transcript file path.
You are participating in a round-table discussion with {N+1} panelists.
TOPIC: {topic}
OTHER PANELISTS:
{for each panelist: "- {display_name}: {role_name}"}
YOUR ROLE: {role_name}
{role_description}
CURRENT QUESTION (Round 1):
{round_question}
INSTRUCTIONS:
- Respond from your assigned perspective (200-400 words)
- Be specific and substantive
- Do not simulate other participants or moderator
- Do not include greetings or meta-commentary about being an AI
ROUND {N} UPDATE:
MODERATOR SYNTHESIS FROM ROUND {N-1}:
{synthesis}
{user_steering_if_any}
CURRENT QUESTION (Round {N}):
{round_question}
Respond from your role as {role_name}. Reference or challenge prior points when relevant. (200-400 words)
Note: Round 2+ prompts are intentionally shorter because the CLI tool's session already contains the full conversation history from prior rounds (for agents that support session resume).
| Scenario | Action |
|---|---|
CLI not found (which fails) | Skip participant, warn user, continue with others |
| Agent requires git but no git dir | Create temp git repo at /tmp/multi-agents-workspace, retry with appropriate flag |
| Timeout (>600s) or Bash tool auto-backgrounds | Use TaskOutput to wait; if still running after 600s, use TaskStop and record [TIMEOUT] in transcript |
| Non-zero exit / empty output | Capture stderr, record [ERROR: ...] in transcript, continue |
| All external agents fail in a round | Alert user via AskUserQuestion, offer retry or end discussion |
| Session resume fails | Fall back to fresh session with full context summary (per catalog) |
| Agent emits internal tool errors | Ignore error lines per catalog cleanup rules, extract the actual response text |
Write the transcript file using this structure. The participant table and per-round sections are dynamic based on the resolved roster:
# Round Table: {Topic}
**Date:** {YYYY-MM-DD HH:mm}
**Topic:** {topic}
## Participants
| Participant | Role | Tool |
|---|---|---|
{for each external agent: "| {display_name} | {role} | {cli_name} |"}
| Claude | {role} | claude-code (host) |
---
## Round 1: {Question}
{for each external agent:
### {display_name} ({role})
{response}
}
### Claude ({role})
{response}
### Moderator Synthesis
{synthesis}
---
## Round N: {Question}
(same structure per round)
---
## Final Summary
### Key Takeaways
{takeaways}
### Points of Consensus
{consensus}
### Unresolved Debates
{debates}
### Recommended Next Steps
{next_steps}
cat >> to append to the transcript instead of read-then-edit cycles. Each round should ideally be: 1 message to dispatch (N parallel Bash calls) -> 1 message to display results + write Claude's response + append transcript + show synthesis + ask user./tmp/multi-agents-workspace git repo is ephemeral and can be reused across sessions.references/agent-catalog.md and per-agent commands, flags, quirks, and output cleanup rules live in references/{cli-name}.md. Do not hardcode CLI details in this file.npx claudepluginhub quabug/multi-agents-plugin --plugin multi-agentsSpawns 2-3 agent roles (reviewer, fixer, architect) to debate a topic from different expertise angles. Helps explore tradeoffs or get multiple perspectives on a question.
Conducts multi-round structured discussions among AI team roles (architect, UX, security) until consensus or max rounds. For converging diverse opinions into a single decision.
Orchestrates structured multi-provider AI debates between Claude and available advisors (Gemini, Codex, etc.) for critical decisions. Dispatches real providers via orchestrate.sh for diverse perspectives.