What is Yes-Brainer?
Yes-Brainer is a browser-based app that orchestrates a council of large language models (LLMs) to answer non-trivial questions. Created by Oleksii Trekhleb, it originated from the ritual of copy-pasting the same prompt into Claude, Gemini, and ChatGPT in separate tabs. The app replaces that with a single interface where models answer in parallel, then either debate to consensus or get judged.
The app is fully client-side: no backend, no accounts, no subscriptions. Your API keys stay in your browser's localStorage and go directly to providers like Anthropic, OpenAI, Google, Groq, OpenRouter, or local Ollama models. Conversations are stored in IndexedDB on your device. The production build ships a strict Content-Security-Policy that only allows requests to known provider endpoints, so even malicious code can't exfiltrate keys.
Three Deliberation Modes
Yes-Brainer offers three distinct modes:
🔀 Parallel – Models answer independently, side by side. No voting, no synthesis. You compare raw answers yourself. Ideal for brainstorming multiple drafts, name suggestions, or different perspectives.
⚖️ Trial – Models answer, then anonymously rate each other's answers on accuracy, completeness, and insight. A separate Judge model reads the answers and votes, then delivers a single verdict with evidence. The demo shows a photo location guess: Claude and Gemini correctly identified Langevelderslag beach in the Netherlands, while GPT-5.5 guessed a different beach, earning lower peer ratings.
🤝 Consensus – Models engage in multi-round debate. Each round, they see their own and peers' previous answers (anonymized, labels shuffled). A Mediator checks for convergence; if not, it distills the disagreement and seeds the next round. Rounds are capped. In the demo, two models initially favored Mandarin for a child's third language, but after round-one mediation, both flipped to French when the expected-value argument won out.
Technical Architecture
Yes-Brainer is a static page with no backend. It uses the browser's Fetch API to call LLM providers directly. The app is open source under AGPL-3.0, hosted at github.com/trekhleb/yesbrainer.
To set up a council, you pick the deliberation mode, seat models from any supported provider, and optionally choose a referee. The UI shows each model's capabilities (vision, tools, reasoning) and context window. A "✨ Smartest available" button auto-selects a council.
Example of a council configuration (from source):
{
"council": {
"mode": "consensus",
"participants": [
{ "provider": "anthropic", "model": "claude-sonnet-4-20250514" },
{ "provider": "openai", "model": "gpt-4.1" },
{ "provider": "google", "model": "gemini-2.5-pro" }
],
"mediator": { "provider": "anthropic", "model": "claude-sonnet-4-20250514" }
}
}
Security and Privacy
Yes-Brainer's security model is explicit:
- Keys live in localStorage, sent directly to providers.
- No server in between—nothing to leak.
- Content-Security-Policy whitelists only provider endpoints.
- Provider errors are scrubbed of secrets before logging.
- The app advises using dedicated API keys with spending limits.
The source code is AGPL-3.0 licensed, so you can audit it. The official site sends a single cookieless pageview ping to a self-hosted counter (opt-out available).
Real-World Example: Consensus in Action
In the third-language demo, the question was: "Our 8-year-old speaks English and Spanish and can pick the 3rd language to learn. Converge on ONE for maximum lifetime value."
- Round 1: Claude recommended French; GPT-5.5 and Gemini recommended Mandarin.
- Mediator: Refused consensus, identified crux: Mandarin camp optimizing for ceiling, French camp for expected value.
- Round 2: GPT-5.5 flipped to French, stating "What changed my mind: my earlier answer over-weighted Mandarin's ceiling…" Gemini also flipped, citing the expected-value framing. Claude held.
- Consensus: French, with explicit escape hatch to Mandarin if heritage speaker or full-immersion school.
The two-against-one majority lost to the better argument.
Comparison to llm-council
Yes-Brainer builds on Andrej Karpathy's llm-council, which runs an "answer → review → synthesize" pipeline. Trekhleb extended it with:
- Three deliberation structures instead of one fixed pipeline.
- Follow-ups: a council is a conversation, not a one-shot.
- Completely serverless architecture.
Why It Matters
Yes-Brainer addresses the problem of relying on a single LLM's confident but possibly wrong answer. By forcing models to debate and converge, it surfaces disagreements and forces better reasoning. For developers, it's a tool to get more reliable answers for complex decisions, without trusting any single model or sending data to a third-party backend.
Getting Started
You can try Yes-Brainer at yesbrainer.ai without pasting any API keys—demo councils are available. To use your own models, paste your API key (with spending limit) and start a council. The app is installable as a PWA and works well on mobile.
For full details, see the source code on GitHub and the security model.






