Council

An app that puts a disputed question to several AI models and publishes the answer as a sourced public record that anyone can challenge.

Date
June 2026
Built with
Next.js, React, TypeScript, SQLite, OpenRouter
Council homepage showing a public record filing desk, a disputed-claim input, and a preview of a settled record.

You give Council a disputed question, such as a claim, a forecast, or a ranking. It puts the question to several AI models and publishes the result as a record: the answer at the top, then the evidence, how the models voted, and where they disagreed. Anyone can challenge a record, and it gets a new version when better evidence comes in.

Council homepage with a large headline, a box for entering a disputed claim, and a preview of one finished record.
The homepage, where you paste in a disputed claim and press “Put it on the record.”

What you get back

You can type a question or paste in a link, a post, or an argument. Depending on what you ask, Council returns a verdict on a claim, a forecast, a comparison, or a ranking. If the question is too vague, it comes back with a clarification. Every finished run becomes a public record.

The answer comes first. Below it you can see how confident the council is, how the models split, whether the sources checked out, the strongest point for and against, and the question the disagreement turns on. The record also lists its limitations, any challenges, and the details of the run.

A finished Council record showing the verdict, confidence score, how the council split, evidence status, and a Challenge button.
A finished record on a claim about Finland's schools. The verdict, “Mostly rejected,” comes first, with the confidence score and the council's split beside it.

Why I built it

I'm interested in AI tools that produce something people can argue with. An answer in a chat window scrolls away. A Council record stays public with its sources, versions, and challenges, and it says what evidence would change the verdict.

I wanted the verdict to be clear without claiming more certainty than the evidence supports. When the models disagree, Council doesn't force them to agree. The dissent stays in the record next to the evidence, and the verdict can be updated later.

Council public archive with search, filters, finished records, verdict labels, scores, dots showing the council split, and challenge counts.
The public archive. Records here can still change, and the filters include “Recently challenged” and “Verdict changed.”

What works so far

Council Protocol v1.5 runs locally from start to finish. You can submit and confirm a question, watch the models work on it live or replay it later, read the finished record, browse the archive, challenge a record, rerun it, and see its version history and evidence. Records are saved in SQLite. Vitest and Playwright test the main flows, and fallbacks keep the app usable for local development without API keys.

The Floor view shows a record while it is being made: each model's role, what it said, notes from an observer, the source checks, and a draft of the record filling in, up to the final verdict. It shows enough of the process that the answer doesn't come out of a black box, and it still ends in a record a person can read.

Council Floor view with the transcript of the models' debate on the left and the draft record, labeled Record So Far, on the right.
The Floor view: the transcript on the left, and the draft record, “Record So Far,” on the right.

Next on Systems

All systems
  1. 2026Universe IndexAlternate histories from one changed fact
  2. 2026How I Use CodexThe skills and routines I use when working with Codex
  3. 2026Think DeeperA skill that pushes Codex and Claude past their first answer

Contact

elliotbquartz@gmail.com

For commissions and collaborations.