The mechanics behind a session
Five ideas explain almost everything the panel does: seats, modes, hand-raises, permission modes, and the audit trail.
Seats and authority
Three seats, and only one of them can change your files. Drafter writes. Reviewer and Indexer are read-only by construction — not by policy you could misconfigure. Seat models from different providers: different training distributions are what make the disagreement useful rather than an echo.
Three modes
- brainstorm — the room argues. No files change. Ends in a synthesis and a quarantine disposition: ADOPT or ABANDON.
- plan — argument becomes structure. The room fills in
PLAN.md: Goal, Scope, Milestones with acceptance criteria, Risks, and per-role Roles. - execute — entered only through
/freeze, which validates the plan and emitsEXECUTION.md. v1 stops there — you chair the Drafter through the manifest yourself.
Switch with /mode <name>. The header always shows the current mode, so you never have to guess whether a message can touch disk.
Hand-raises
Reviewer and Indexer do not chatter. They poll in the background and raise a hand only when they have something the Drafter missed — and the raise carries a priority that decides what happens next.
- BLOCKER — pauses the room until you admit or dismiss it. Also blocks
/freeze. - CONCERN — queued for you to admit when convenient. The room keeps moving.
- NOTE — logged to the trail without interrupting anyone.
Permission modes
How much the Drafter may do between your clicks. Switch with /permission <mode>; the Freeze button in the header drops you straight back to ask.
- ask — every edit waits for your approval. The default, and where you should stay while you are still calibrating.
- auto-edit — edits apply without a prompt; the room still stops between turns.
- auto-chat-turn — one full turn runs unattended.
- auto-chat-role — a seat runs its whole role unattended. Reach for this last.
Cost and context
The cost meter in the header is live and per-session. /cost breaks it down by seat; /cost cap 2.00 sets a hard ceiling that pauses the room when reached. /context prints the exact TurnContext that would go to the next model — the fastest way to find out why an answer was wrong. @path/to/file pins a workspace file to the active speakers.