Skip to content

decision-workbench

A six-stage tool that expands the decision-maker's cognition before they decide — and never picks a winner.

Updated View as Markdown

decision-workbench

decision-workbench expands the decision-maker’s cognition before they decide. Decision power is the size of your option space, not the ability to pick. The tool diverges options, reveals blind spots, and structures the map — then hands the decision back to a human. It never picks a winner.

“AI shouldn’t make important decisions for you. It should make the decision space harder for you to misunderstand.”

“I only know Java Spring.” — said every engineer who never saw the open-source CRM bases, the SaaS options, or the no-code builders.

The 6-stage pipeline

Paste a decision you’re about to make — including what you already know — and the pipeline runs:

Stage What it does
1. Bias flag “I only know Java Spring” → detected as anchored_stack
2. Divergence 5 stances argue independently in parallel: architect · cost · security · product · red team
3. Cross-exam 3 probing questions force the space open — “Why did you NOT consider X?”, “Give one non-mainstream option with a reason”, “Weakest point of your preferred option?”
4. Option map Classified into consensus / true divergence / false divergence, each tagged “you probably didn’t know this” vs “you already knew this”
5. Constraints Check budget / team / deadline / compliance for a weighted re-score (still no winner)
6. Human decision The decision is yours. The system never picks.

Why it is NOT llm-council

llm-council (Karpathy) decision-workbench
Goal Converge multiple models to a better single answer Expand the option space before a human decides
End state One synthesized answer A map + trade-offs + a human decision
Divergence Means to an end (better consensus) The product itself
Who decides The chairman model The human (explicitly, always)
Failure mode Artificial consensus (all models converge) Anchoring bias (decision-maker locked in)

The academic grounding: multi-agent LLM committees suffer from representational collapse when they share a model (arXiv 2604.03809) and artificial consensus when they share an architecture (arXiv 2604.26561). This tool is deliberately the opposite — a diverger built around heterogeneous stances plus a hard human gate, not a converger.

Quick start (mock mode — zero API keys)

# Backend (port 8002)
uv sync
uv run python -m backend.main

# Frontend (port 5173, proxies /api → 8002)
cd frontend
npm install
npm run dev

Open http://localhost:5173, type a decision, and click “Expand my option space”. The mock provider ships pre-baked answers for 3 demo scenarios (tech stack / business / hiring), so the demo never depends on a live API.

Real models (OpenRouter)

export OPENROUTER_API_KEY=sk-or-v1-...
export PROVIDER=openrouter
uv run python -m backend.main

Demo scenarios

Scenario Input Blind spot revealed
A. Tech stack “I need to build a CRM. I only know Java Spring.” open-source CRM bases, buy-vs-build, no-code, spreadsheet+automation
B. Business “Sell report subscriptions. Only thought of Stripe.” merchant-of-record (Lemon Squeezy / Paddle), membership platforms, crypto
C. Hiring “I need to hire a full-stack engineer.” remote-first, AI-augmented small team, agency outsourcing

API

Endpoint Purpose
POST /api/decide Run the full pipeline → bias flags, stance divergence, probing, option-space map
POST /api/decide/constraints Re-score against selected constraints (weighted, still no winner)
POST /api/decide/human-decision Record the human’s final choice

Eval

The README makes a falsifiable claim: decision-workbench surfaces more decision-relevant options — especially options a baseline would miss — than a single model or a naive multi-agent chat. Against a hidden, hand-authored gold option set (never revealed to the systems under test):

Method Gold hit (of 12) Avg coverage
Single model direct answer 3/12 26%
Naive multi-agent (stances only) 9/12 78%
Decision Workbench 12/12 100%

You can run the harness yourself with uv run python -m backend.eval_harness.

Tests

uv run pytest
# 25 tests: bias detection, stance prompts, probing, zone classification,
# novelty tagging, constraint weighting, mock provider, engine golden path

Next

Navigation

Type to search…

↑↓ navigate↵ selectEsc close