Repository navigation
Personas and Dialectic
In the loop: 2. Think deeper and clearer. The six voices and how they argue.
Six personas test a thesis in two rounds. This is the reasoning engine at the centre of the loop: the step that pushes back before you commit to a decision.
flowchart TD
T["Thesis<br/>yours, or clustered from today's notes"]
G["Grounding, the same for everyone<br/>wiki hits for the topic, your core beliefs,<br/>the decision calendar"]
R1["Round one, isolated<br/>Skeptic, Gambler, Scientist, Postmortem, Strategist, Methodologist<br/>each in its own thread, blind to the others"]
R2["Round two, quoted<br/>answer the strongest objection, cite a vault file,<br/>vote again, name the new evidence or say none"]
SC["Scorecard and verdict, by script<br/>affirmation rate, who moved, evidence cited,<br/>unanimity warning; Go, Stop or Test first"]
MOD["Moderator synthesis<br/>best counterargument, what would have to be true,<br/>a cheap dated test, a probability,<br/>any clash with your own beliefs"]
F["Filed into .wiki/digests/queries/<br/>two pages and a folded transcript"]
T --> G
G --> R1
R1 -->|"YES, NO or CONDITIONAL, with a probability"| R2
R2 --> SC
SC --> MOD
MOD --> F
Before anyone argues, the moderator gathers the topic's wiki search hits, your core beliefs and the decision calendar, and every persona receives that same grounding. The argument is tied to what the vault already holds and not to the thesis alone. A persona that cites the vault gives the file name; one that finds nothing says "not in the vault", never invents.
Round one, isolated. Each persona gets its own thread, applies its own method without
seeing the others, and votes YES, NO or CONDITIONAL with a probability. Isolation is the
point: an opinion formed alone is worth more than one formed in a room where the loudest
voice has already spoken. By default the moderator mentions the personas one at a time,
because six Claude sessions at once strain a single subscription; --parallel mentions
them all at once.
Round two, quoted. Each persona reads the rest, picks the strongest objection to its own position, answers it, votes again, and names the new evidence that moved it, or says "none". The answer must cite at least one vault file by name, or say plainly that nothing in the vault bears on it. A vote that never changes and never explains why is not thinking; a vote that changes with no new evidence is counted as herding.
Scorecard and verdict, by script. A deterministic script scores the round before the moderator writes a word, so the synthesis starts from counted votes and not from a mood. The verdict is computed from the final votes: a majority of YES is Go, a majority of NO is Stop, anything else is Test first, each with the median number. A rolling 30 day scorecard raises a flag when affirmation climbs above 60 per cent, or when a persona never votes NO. Six voices that always agree with you are a fan club, and you do not need software for that.
Moderator synthesis. The moderator names the best counterargument, what would have to be true for the thesis to hold, a cheap dated test, a probability, and any clash with your own written beliefs. It never picks a side for you.
The voices come from a shelf of six books. Each persona's prompt is a Markdown file in
.agents/buzz/personas/. Edit them, add a seventh, delete one: the moderator does not
care how many there are.
| Persona | Book | What it asks |
|---|---|---|
| Skeptic | Browne and Keeley, Asking the Right Questions | What is the conclusion, what are the reasons, which words are ambiguous, what is omitted, what other conclusions are possible |
| Gambler | Annie Duke, Thinking in Bets | Write it as a bet. How confident, in a number. Is this outcome or decision quality. Twelve months on, it failed: why |
| Scientist | Camuffo, Gambardella et al., A scientific approach to entrepreneurial decision-making | What is the theory, what must be true, what is the cheapest test, what result means terminate and what means pivot |
| Postmortem | Amy Edmondson, Right Kind of Wrong | If this fails, is it basic, complex or intelligent failure. Was the homework done. What is the smallest version |
| Strategist | Lafley and Martin, Playing to Win | Where to play, how to win, which capabilities, which systems. Passes on topics that are not strategy |
| Methodologist | Quivy and Van Campenhoudt, Manuel de recherche en sciences sociales | Rewrites the thesis as a research question and names the criterion it fails (clear, feasible, real). Names the hidden angle and one rival. Builds concept, dimension and indicator. Writes the falsifiable hypothesis and the cheapest observation plan that separates it from its rival |
The Methodologist is the odd one out on purpose. The other five judge whether the thesis is right; the Methodologist judges whether it is stated in a way that can be found out, and writes the path to finding out. Its question to you always asks for a definition or an indicator, and its rewritten question opens the method trace of every filed note.
They never mention each other and only answer the moderator and you, so agents cannot set each other off.
Each topic is filed as two pages and a folded transcript, so a note holds everything and nothing has to be read in full.
- Page one, the decision summary. The verdict with the vote counts, the moderator's conclusion, the strongest counterargument, what would have to be true, the proposed test, the bet, any contradiction with a belief or decision (with the file), who changed their mind, and the unanimity warning or "None". Then a compact vote table, one row per persona, and a paste-ready proposal: a seed, a belief or a decision stub, or "None".
- Page two, the method trace. The starting question (the Methodologist's rewrite), the hypotheses tested and which persona tested them, the tests on the table, the deviations between personas, and one row per persona with its finding and its strongest objection.
- The transcript. The raw rounds sit under a collapsed callout at the end.
/dialectic inside Claude Code or Gemini CLI produces the same layout, so the on-demand
run and the scheduled run compound in the same place.
Locally, on demand:
brainless dialectic "We should hire before we have the revenue"Inside Claude Code or Gemini CLI from the vault root, the same thing is the /dialectic
slash command. The engine (tools/dialectic.py) is described in the
Scripts Reference.
On an always-on worker it runs on a timer, twice a day. At 12:30 and 21:20 the six
personas argue the day's new notes; on a silent day the evening run argues one vault topic
instead. The live-agent version, hosting each persona on a self-hosted
Buzz relay so they answer in a #dialectic channel, is
described on Reference Deployment. The installer and prompts live
in .agents/buzz/.
At 02:00 a third run is an experiment: the personas answer through the worker's own local model while the moderator and a judge lane stay on the cloud and grade each reply. It replays the day's first topic so the two can be compared on the same thesis, scores nothing, and closes itself after five nights if fewer than three were usable. See Local Inference.
brainless · not a second brain, zero brain. Collect everything, think it through, decide, then do it. Engine repo · MIT. This wiki mirrors the repo's docs/; the repo is the source of truth.
The loop
1. Gather information
2. Think deeper and clearer
3. Decide
4. Get shit done
Keep it yours
Run it
- Install
- Lite
- Configuration
- What it runs on
- Reference Deployment
- Syncing across devices
- The AI Shed
- Localization
Addons
Reference
- Scripts Reference
- FAQ
- References
- Changelog · every release, newest first
- Design · the kilim brain, the palette, the logo files, the terminal colours
