| name | multi-agent-council-orchestrator |
| description | Orchestrate multi-agent councils, debates, review boards, or committee-style decisions in OpenCode. Use when Claude needs to run 3+ agents through structured multi-round discussion, enforce quorum, maintain shared round dossiers, prevent seat drift, collect valid ballots, and produce formal archives such as resolutions, transcripts, dissent logs, seat notes, and addenda. |
Multi-Agent Council Orchestrator
Run councils as structured asynchronous governance, not as loose memo exchange.
Core rules
- Enforce quorum. Do not advance a round without all required seats.
- Use shared round dossiers. Do not rely only on facilitator memory.
- Separate stages: proposal -> critique -> narrowing -> stress test -> implementation locking -> final vote.
- Reject invalid ballots. Rerun with locked options if seats drift.
- Archive both outcomes and process corrections.
Workflow
1. Define the council
- Name every seat explicitly.
- Define who is a voting seat vs proposal-only participant.
- Define required outputs before Round 1.
- If public identity or governance is at stake, default to 7 rounds unless high-consensus convergence is explicit.
Use the templates in references/round-dossier-template.md and references/archive-template.md.
2. Create a shared dossier before each round
Before launching the next round, write a shared dossier file that includes:
- current round number and purpose
- live candidate set
- eliminated options
- exact questions each seat must answer
- fault lines and unresolved risks
- quorum rule for advancement
Every seat in that round should receive the same dossier-derived context.
3. Round structure
Recommended sequence for high-stakes councils:
- Round A: initial proposals
- Round B: critique and elimination
- Round C: correction and finalist narrowing
- Round D: agent-originated agenda expansion
- Round E: scenario stress test
- Round F: implementation locking
- Round G: final vote
If a final vote is invalid or tied on a key item, run:
- locked-ballot rerun for invalid drift
- runoff ballot for tied single-item outcomes
4. Validate every vote
Treat a vote as invalid if a seat:
- chooses an eliminated option
- invents a new option during a locked ballot
- substitutes its own product/lab/seat brand for the institution under discussion
- claims insufficient context in a final vote instead of casting a valid ballot
When invalid votes appear:
- do not merge them into the final tally
- note the validity problem in the archive
- rerun only the affected ballot with exact option IDs
5. Prevent facilitator overreach
The facilitator may:
- summarize
- enforce scope
- build comparison matrices
- write dossiers and archives
The facilitator may not:
- unilaterally decide brand, logo, slogan, or public standards
- silently collapse debate into a brief
- fake consensus when a vote is still split
6. Required archives
For a substantial council, default archive set is:
- overview / README
- resolutions
- transcript
- dissent registry if dissent remains
- seat-authored notes when requested
- special participant record if a non-seat actor shaped the process
- addendum documents for follow-on governance decisions
- retrospective note when the process itself had to be corrected
7. Seat-authored notes
If the user expects each agent's own record, do not replace them with facilitator summaries.
Ask each real seat to write its own first-person note from its own public positions. Do not fabricate private reasoning. If a seat session is unavailable, rerun the seat with its prior public positions as source material and make the note clearly seat-authored.
8. When to use locked ballots
Use a locked ballot when:
- finalists are already narrowed
- earlier votes drifted outside scope
- a final decision must be archivable
- candidates need exact option IDs for honest tallying
Use the ballot format in references/locked-ballot-template.md.
9. Minimal implementation checklist
Before claiming a council is complete, ensure:
- every round advanced with quorum
- shared dossiers exist for later rounds
- invalid votes were excluded and corrected
- final tallies are explicit
- archives reflect real outcomes, not facilitator preference
Resource map
references/round-dossier-template.md — template for shared round packets
references/locked-ballot-template.md — template for locked ballots and runoffs
references/archive-template.md — canonical archive/output checklist