How it Works
Brief in, memo out.
Boardroom follows a deterministic workflow. Every run starts with a brief and ends with a decision memo. Here is exactly what happens.
1. Author the brief
The operator writes a structured brief in Markdown. The brief has four required sections: Situation, Stakes, Constraints, and Key Question. The brief frames the decision - it does not suggest an answer.
# Brief
## Situation
Facts only, no spin.
## Stakes
What is the upside and downside?
## Constraints
Budget, timeline, capacity, regulatory.
## Key Question
Single most important question for the board.
2. Assemble the board
The CEO starts a deliberation session with /ceo-begin. The board
is loaded from configuration - six specialist agents, each with a persona file
and optimization directive.
Board composition is defined in ceo-and-board-configuration.yaml.
Members can be added, removed, or modified. Each member has a name, color, and
persona file.
3. Deliberation rounds
The CEO sends prompts to board members using the converse tool.
Each member receives: their persona context, the board instructions, the brief,
and the CEO's prompt.
Members respond with their specialist analysis. The CEO synthesizes responses, then decides whether to run follow-up rounds or close the deliberation.
Each board member runs as an isolated Pi subprocess using claude-sonnet-4-6.
The CEO runs on claude-opus-4-6. Costs are tracked per-member in microUSD precision.
4. Stress-test consensus
If round one produces quick alignment, the CEO can run a follow-up round to stress-test the consensus. The Contrarian is specifically designed for this - probing weak evidence, avoided arguments, and timing risk.
A vote shift (e.g., accept → defer) after stress testing is a valuable signal, not a problem. It means the quality gate caught something.
5. Collect votes
The CEO calls end_deliberation to close the session. Each member
submits a final position: a vote (accept, reject, defer, or other), a 1-2 sentence
statement, and a summary of their reasoning.
Votes are captured with rationale. A "defer" with a reason is more informative than a bare "accept."
6. Synthesize the memo
The CEO writes the final decision memo. The memo contains:
- Session metadata (run ID, brief ID, cost, duration)
- The CEO's decision and recommendation
- Board vote table with per-member votes
- Recommendation rationale
- Conditions and risks
- Immediate next moves
- Final board positions from each member
7. Persist artifacts
All artifacts are written to relative paths under the deliberation directory:
ceo-agents/
briefs/{id}/brief.md
deliberations/{id}/
conversation.jsonl
state.json
board/
revenue.md
product-strategist.md
technical-architect.md
contrarian.md
compounder.md
moonshot.md
memos/{id}/memo.md
State files are written atomically. Paths are always repo-relative. Costs use
canonical cost_usd_micros. Durations use elapsed_ms.
Stale runs are detected and auto-recovered.