Convenes multiple agents to debate an important decision
Convenes a council of specialized agents to debate an important decision. Each agent contributes their independent perspective and the result is a synthesis of the debate.
Agents are invoked IN PARALLEL using the Task tool to obtain independent perspectives without bias.
/council [question or decision to debate]
Optionally you can specify the type: /council architecture [question]
Participants: Tech Lead + Advisor + Developer When it applies: Decisions about architecture, patterns, large refactors, new technologies
Invokes all 3 agents IN PARALLEL using Task tool:
.claude/agents/tech-lead.md — architecture and technical coherence perspective.claude/agents/advisor.md — feasibility and business risk perspective.claude/agents/developer.md — implementability and pragmatism perspectiveParticipants: Advisor + Developer + Tech Lead When it applies: Defining feature scope, prioritizing functionality, evaluating product proposals
Invokes all 3 agents IN PARALLEL using Task tool:
.claude/agents/advisor.md — domain and strategic vision perspective.claude/agents/developer.md — implementability and pragmatism perspective.claude/agents/tech-lead.md — technical feasibility and effort perspectiveParticipants: Tech Lead + Developer + Code Reviewer When it applies: Deciding whether to address technical debt, planning refactors, evaluating codebase quality
Invokes all 3 agents IN PARALLEL using Task tool:
.claude/agents/tech-lead.md — architectural impact perspective.claude/agents/developer.md — implementation cost perspective.claude/agents/code-reviewer.md — quality and risk perspectiveAnalyze the user's question and determine which council type applies:
Workspace detection: Before invoking agents, check if the project is inside a workspace:
guild-workspace.json file by searching upward from the project rootInvoke the 3 corresponding agents IN PARALLEL using Task tool with model: "opus" (all council agents use reasoning tier). Each agent:
.claude/agents/[name].md file to assume their roleCLAUDE.md for project contextPresent the perspectives of all 3 agents in a structured format:
## Council: [type]
Question: [the user's question]
### [Agent 1] — [position]
[main arguments]
### [Agent 2] — [position]
[main arguments]
### [Agent 3] — [position]
[main arguments]
### Synthesis
- Points of agreement: [...]
- Points of disagreement: [...]
- Identified risks: [...]
Present clear options to the user based on the debate:
Ask the user to decide.
After the user makes their decision in Step 4, offer to write a spec document to docs/specs/.
docs/specs/graphql-migration-strategy.mddocs/specs/ if it does not already exist.src/templates/specs/SPEC_TEMPLATE.md (or the project's local copy) to use as the structural guide..md)draftYYYY-MM-DD format- [ ])docs/specs/<filename>.md.When spawning council agents via the Task tool, always use subagent_type: "general-purpose". Guild agent role names (advisor, developer, tech-lead, etc.) are NOT valid Claude Code subagent_types.
Example:
Task tool with:
subagent_type: "general-purpose"
model: "opus"
prompt: "Read .claude/agents/tech-lead.md and assume that role. Then: [debate question]
[If in workspace, append:]
## Workspace context
[workspace context block from Step 2]"
The model parameter is resolved from the step's model-tier: all council agents use reasoning→"opus".
User: /council Should we migrate from REST to GraphQL?
Council: Architecture
Tech Lead (opus) — Recommends GraphQL for complex queries, keep REST for simple CRUD.
Advisor (opus) — Risk is high mid-project. Suggests incremental adoption.
Developer (opus) — Prefers REST simplicity. GraphQL adds tooling overhead.
Consensus: Incremental adoption. New endpoints in GraphQL, existing stay REST.
docs/specs//council — it captures the debate, decision, and rationaleparallel execution is best-effort — the orchestrator may run parallel steps sequentially if concurrent agent execution is unavailableSearch for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer