Councils
A memory-grounded debate where personas react to a question, a concept, or a decision — each speaking from its own memory.
Why it matters: Real, traceable reactions instead of opinions: any statement leads back to the memory behind it.
What it holds
prompts— the question(s) / proposal posedpersona_ids— who takes partstatements— every turn (text + stance + refs), grouped at render timefindings— the executive summary + the distilled findingvotes— formal votes (decision mode only)
Data shape
A real, trimmed record (stored as JSON):
{
"id": "council_4c1…", "project_id": "proj_a91…",
"persona_ids": ["persona_7f3…", "persona_b2…"],
"prompts": [ { "id": "q0", "kind": "question",
"text": "What makes weekly planning painful?" } ],
"statements": [
{ "persona_id": "persona_7f3…", "text": "Every Monday I rebuild the plan from scratch.",
"stance": { "value": -1, "label": "skeptical" },
"about": { "kind": "prompt", "id": "q0" },
"refs": [ { "kind": "memory", "text": "lost an afternoon to triage in March" } ] }
],
"findings": [ { "kind": "summary", "text": "Triage, not tooling, is the core pain." } ],
"votes": []
}