Amicus Open Beta macOS Windows

Every model.
One verdict.

A multi-model AI council and ad-hoc sidecar, with Claude as orchestrator.

independent reviewsanonymized peer cross-reviewnon-Claude chair verdicttiered accept/deny

Hand Claude a doc, a diff, or a design and say council review this — Amicus runs the ritual and hands back a decision. Or skip the ceremony: fork a single conversation to Gemini, GPT, DeepSeek, or any other model, work in parallel with full context, and fold the result back.

$ npm install -g amicus $ amicus setup← don't skip: adds your API keys copy
Docs
ROUND TABLE plan.md gemini $0.14 gpt $0.09 glm $0.04 deepseek $0.06 llama3 · LOCAL $0.00 stays on your machine a member, not a mode

Any model — via OpenRouter, or local at $0


The Council

Any Models. Any Chair.
One Round Table.

Each convening: different lineup, different chair, different material, different verdict. The ritual — independent review, blind cross-review, chair synthesis — never changes.

Amicus LLM Council: three convenings — the third seats a local model (Qwen2.5-Coder on-device via Ollama) alongside cloud peers; same ritual of independent review, anonymous cross-review, and chair synthesis COUNCIL MODE Gemini 3 Pro anon-1 Llama 4 anon-2 Grok 4 anon-4 Claude Opus anon-5 GPT-5 anon-3 CHAIR DeepSeek R1 anon-1 Mistral Large anon-2 Qwen 3 anon-3 Gemini 3 Pro anon-4 CHAIR Claude Opus anon-1 Qwen2.5-Coder 7B anon-2 LOCAL Gemini 3 Pro anon-3 GPT-5 anon-4 CHAIR VERDICT — 3–0: race condition confirmed synthesized by the chair · folds back into Claude VERDICT — 2–1: contested — simplify the flow dissent preserved · folds back into Claude VERDICT — 3–0: ship · local + cloud agree on-device seat included · folds back into Claude 01 · independent review 02 · anonymous cross-review & ranking 03 · the chair synthesizes the verdict

Structured disagreement, not groupthink.

Say council review this and the material lands in the middle of the table. Every member reads the same doc, diff, or design cold — no one sees another's review while writing their own.

Then the reviews swap hands anonymously: models rank and adjudicate each other's work with the names stripped, so no reputation bias. A non-Claude chair synthesizes the rankings into a single tiered verdict — and it folds straight back into Claude's context.

Council size, members, and chair — configurable per run
Cross-review is anonymized — rankings, not reputations
A non-Claude chair writes the verdict
Findings tiered: Confirmed / Contested / Singleton
Claude can sit at the table — judged, never the judge

Use Cases

Built for How
You Actually Work.

Convene a council, fan out a wave, gate a release — every run shares your Claude context automatically.

Council Workspace reviews · cross-review · tally ○ · chair ○ phase 2/4 gemini judged $0.04 gpt reviewing… judged $0.06 deepseek judged $0.03 glm judged $0.05 $0.07 qwen reviewing… $0.02 matrix cost by seat live for running councils · replayable for finished ones

Watch It Think

Open the Workspace and watch your council think — seats reporting in, phases advancing, costs ticking per model. Finished runs replay end to end.

Gemini GPT DeepSeek ANONYMIZE REVIEW A 2nd REVIEW B 1st REVIEW C 3rd disputed its own Reviews are ranked blind — self-bias washes out amicus council run --prompt-file design.md --models gemini,gpt,deepseek

Blind Ballots

Your council ranks every review blind — bylines stripped before the vote, so no model can favor its own. Some have even disputed their own work.

claude orchestrates votes gpt CHAIR gemini deepseek local VERDICT: Fix these first Claude orchestrates — a non-Claude chair signs the verdict amicus council run --prompt-file plan.md --chair deepseek

The Recusal

Your plan came from Claude — don't let Claude grade its own homework. A non-Claude chair runs the vote and signs the verdict; Claude only keeps the room in order.

council · adjudication Review A Review B Review C two agreed. one saw it. auth-refactor.diff session fixation on token refresh blocker CONFIRMED Unanimous councils can be wrong — disagreement is the signal amicus council run --prompt-file auth-refactor.diff --debate

Dissent Is Signal

Two reviewers pass your auth refactor; the third catches session fixation. Amicus treats that dissent as the finding — adjudicated and confirmed, not averaged away.

schema-plan.md gpt $0.09 gemini $0.14 deepseek $0.06 glm $0.04 llama3 · LOCAL $0.00 the local seat caught it a member, not a mode Local models take an equal seat — private and $0 amicus council run --prompt-file schema-plan.md --models gemini,gpt,llama3

Same Table

Seat a local model at the same table as the cloud ones — same prompt, same vote, $0.00, and nothing leaves your machine. Sometimes the free seat is the one that catches it.

DIRECT your API keys OPENROUTER 200+ models · one key LOCAL ollama · lm studio · no key gemini-pro long context gpt reasoning glm $0.04/run qwen code specialist llama3 $0 · private 3, 5, 7 — any bench size different families, different blind spots

Build the Bench

Models from the same family share the same blind spots — so build a bench that mixes families. Seat 3, 5, or 7 from your own API keys, one OpenRouter key, or local runtimes, each pick earning its chair on specialty, price, or privacy.

queue max-cost $2 launched 3 reviewers + chair ~7 calls · est $0.42 3 reviewers + chair ~7 calls · est $0.42 (o3-pro bench) est $31.80 BUDGET GATE est $0.42 charged $0.42 Cost shown before launch — runaway runs never start amicus council run --prompt-file plan.md --max-cost 2

Priced Up Front

Every council prints its estimated cost before a single call goes out — and a hard budget cap bounces the run you didn't mean to launch. The receipt matches the estimate, not your worst fear.

chapter-12.md criteria.md VERDICT: FIX THESE FIRST Specs, plans, chapters — any material plus criteria "council review this chapter against my style guide"

Verdict on Anything

Not just code — hand the council a spec, a plan, even a book chapter, plus the criteria that matter to you. Reviewers judge it independently and you get one adjudicated verdict: what to fix first.

amicus council run reviews → cross-review → tally → chair the ritual — always the same all default off — nothing turns on unless you name it critic seat one reviewer turns adversarial expert lenses business · technical · customer · financial debate round contested findings defend, amend, or withdraw claude in the council judged by the bench — never votes, never chairs run shape 3 models × 2 waves + 1 chair critic seat + debate ON ~7 base runs + up to 6 rebuttal calls proceed?

Dial It Up

The ritual never changes — critic seat, expert lenses, debate rounds, and a Claude seat are all off until you name them. Dial up what you need and see the exact run shape before anything launches.

amicus workspace gemini $0.14 gpt-5.5 $0.11 deepseek $0.09 DEAD qwen $0.12 cli $ amicus council run ! seat lost: deepseek — exit 2 verdict.json "degraded": true ! degraded report.html

Never Silent

A seat dies mid-run? Every surface tells you — the CLI exits 2, verdict.json flips "degraded": true, and the report wears a red banner. Amicus never degrades silently.

$ amicus models --check --live alias provider status gemini google serves ✓ gpt openai serves ✓ deepseek openrouter serves ✓ gpt-pro openai not serving · 404 caught before the council paid for it glm openrouter serves ✓ Probe the live catalog before you gate on it amicus models --check --live

Prove It Serves

Model catalogs rot quietly — an alias that worked last week can 404 today. One live probe proves every seat on your bench actually serves, so you find out in the check, not mid-council.

Claude Code mcp servers db github repomix auto-discover amicus council gemini gpt llama3 · local db github repomix Every MCP server rides along into every seat auto-discovered — zero extra setup

Tools Travel

Configure an MCP server once in Claude Code and every seat picks it up — Gemini, GPT, even your local model. Your tools travel with the council, zero extra setup.

Mon · council run Fix these first rewrite Today · continue Ship it $ amicus list 7f3a · mon 81c2 · wed 9d40 · today same session, new evidence

Pick Up the Thread

Monday's council flagged two problems, so you rewrote. Pick up the same thread today — one question, and yesterday's findings flip from red to green.

release pipeline build tests council diff · 4,012 lines amicus council run gemini gpt deepseek reviews → cross-review → tally → chair verdict.json exit 0 VERDICT: Ship it exit 1 Fix these first

Ship Gate

Release night, a 4,000-line RC diff nobody fully read. Put a council between your pipeline and the tag — exit 0 ships it, exit 1 sends it back.


See It In Action

One Command.
Full Context.

# Convene a council on the plan Claude just wrote
amicus council run --prompt-file plan.md --models gemini,gpt,deepseek --chair glm

> Estimated: $0.42 · 3 reviewers × 2 waves + 1 chair · within budget
> Context: 42 turns, 18.2k tokens → every seat, independently
> reviews → cross-review (anonymized) → tally → chair
> VERDICT: Fix these first · verdict.json · report.html · exit 1

# Same prompt, five families, one parallel wave
amicus fanout --models gemini,gpt,deepseek,grok,qwen --json --prompt "Estimate migration risk"

# Or skip the ceremony — fork one model with full context
amicus start --model gemini --prompt "Verify the auth refactor"

Quick Start

Install. Configure. Council.

Install as a Claude Code plugin, via one script, or with npm — each delivers both skills, the CLI, and the MCP server. No manual registration required.

# Install as a Claude Code plugin — most native
/plugin marketplace add BourbonDog/amicus
/plugin install amicus@bourbondog-amicus

# …or one line (macOS / Linux — needs Node 22.12+)
curl -fsSL https://raw.githubusercontent.com/BourbonDog/amicus/main/install.sh | sh

# …or with npm (any OS with Node 22.12+)
npm install -g amicus

# Configure API keys and default model
amicus setup

# Then in Claude Code or Cowork, just say:
"council review this"

How It Works

Council. Or Fork.
You Choose the Depth.

A full multi-model council for structured review, or a quick fork to one other model. Both share your full Claude context automatically.

Gemini review GPT review DeepSeek review Chair verdict Confirmed / Contested / Singleton

01 · Council

Say council review this. Independent reviews → anonymous cross-review → a non-Claude chair verdict. You accept or deny tiered findings.

Claude Code (keeps working...) FOLD Summary received Race condition found. Recommend mutex. Your main session Fork Fold Amicus Gemini You "Is this approach correct?" Gemini "There's a race condition when multiple requests hit token refresh. Use a mutex..." AMICUS 3:42 Fold

02 · Fork & Work

Or fork to a single model — Gemini, GPT, DeepSeek, any. It starts with your full Claude context. Work alongside it in a real window.

Claude FOLD summary received Fold click

03 · Fold

Click Fold and a structured summary flows back into Claude. Findings, recommendations, decisions. No context switching, no noise.


Parallel Subagents

Spawn Subagents.
Claude Orchestrates.

Amicus can also run headlessly as parallel subagents inside Claude Code or Cowork. Spawn multiple models at once. Each runs independently on its task. All results fold back into Claude.

Claude Code / Cowork Orchestrator spawns headless Amicus instances Gemini "Review architecture" running... --no-ui headless GPT "Audit security" running... --no-ui headless DeepSeek "Generate tests" running... --no-ui headless 3 FOLD Summaries Received Architecture verified. 2 vulnerabilities found. 47 tests generated. All results flow back into Claude's context fold fold fold

Claude as orchestrator. Any model as a specialist.

From inside Claude Code or Cowork, ask Claude to spawn headless Amicus instances using the MCP tool. Each subagent gets your full session context, works autonomously on its assigned task, and returns a structured summary. No window switching, no prompting each model yourself.

Run multiple Amicus instances simultaneously to split work across specialized models. One reviews architecture. Another audits security. A third generates tests. Claude collects every summary and synthesizes the results back into your main context.

Native MCP tool works inside Claude Code and Cowork
Each subagent gets full conversation context automatically
Runs autonomously with a configurable timeout
Structured summaries fold back into Claude's context
Conflict detection prevents subagents from overwriting each other

Automatic Context Sharing

Your Claude Context.
Every Seat.

Amicus reads your active Claude Code session and hands it to every seat at the table. No export, no copy-paste, no starting from scratch.

Council members are briefed independently: each seat gets the same instructions, material, and criteria, plus your session context. No reviewer sees another's work until cross-review — where authorship is stripped. The chair sees every review and ranking, never the names.

Briefing & criteria Conversation history File changes Tool calls Error output
Claude Code You Claude briefing: material + criteria "council review this plan" Read src/auth.js done 42 turns, 18.2k tokens same briefing · same context Gemini briefed · reviews blind GPT briefed · reviews blind DeepSeek briefed · reviews blind reviews return anonymized → chair Every seat briefed independently — the chair sees reviews, never names

Works With

Claude Code, Cowork & Desktop.
One Tool, Every Surface.

Amicus works natively across Claude Code, Cowork, and Claude Desktop — install once, use everywhere. Support for Claude Code on the web is still experimental.

CLI

Claude Code

Use the amicus command directly in your terminal alongside Claude Code. Desktop app and CLI both supported.

amicus start --model gemini --prompt "Review auth"
MCP Server

Claude Cowork

Amicus registers as an MCP server automatically. Cowork agents can spawn Amicus instances natively from their sandbox.

Tool: amicus_start model: gemini
MCP Server

Claude Desktop

Add Amicus as an MCP server in Claude Desktop to run councils and forks as native tools — no terminal required.

MCP: npx amicus mcp
Web Experimental

Claude Code web

Running Amicus from Claude Code on the web is experimental — the local CLI and MCP server aren’t fully available in the cloud sandbox yet.

status: experimental

Compatible Models

Any Model.
Your Keys.

Use your existing API keys directly, connect everything through OpenRouter with a single key, or run models locally with no key at all.

Google Gemini Flash, Pro
OpenAI GPT, o-series
Anthropic Claude Opus, Sonnet, Haiku, Fable
xAI Grok
Meta Llama
DeepSeek DeepSeek Chat, Reasoner
OpenRouter

200+ models from every provider. One API key for everything.

Direct API Keys

Already have a Google AI, OpenAI, Anthropic, or DeepSeek key? Use it directly. No middleman, no extra accounts.

OpenRouter (Recommended)

One key, every model. Automatic fallback, unified billing. Run amicus setup to configure.

Local Models

Run models on your own machine via LM Studio, Ollama, or vLLM — no key, no per-token bill, private and offline. Run amicus provider add to connect.


Features

Everything You Need.
Nothing You Don't.

Multi-Model Council

Independent reviews → anonymous cross-review → non-Claude chair verdict. Blind spots surface when models from different families disagree.

Fork / Work / Fold

Spin up one other model in a real window with full context, work alongside it, and fold a structured summary back when you're done.

Fanout Parallel Waves

Run N models on the same prompt headlessly in one wave. Every leg gets the same briefing; results arrive as a single JSON wave document.

Live Model Catalog

No frozen model table. Aliases and validation resolve against a live catalog fetched from provider APIs — model names stay current without a code change.

Windows First-Class

Developed and tested on Windows 11, no WSL required. Full unit suite runs green on Windows. macOS and Linux supported too.

MCP Tools & Claude-Native

Auto-registered MCP server and two installed skills (second-opinion, sidecar). Claude drives Amicus; you stay in your editor.

Context Sharing & Safety

Conversation history passed automatically. Conflict detection warns when files changed externally — a fold never silently overwrites newer work.

Session Persistence

Every session is saved. List, resume, or chain new investigations on previous findings. Full JSON output for scripting and agent consumption.


Before You Start

Prerequisites
& What It Costs.

A few things to have in place — and an honest look at what a run actually costs you.

Prerequisites

What you need

  • Node.js 22.12+ — run node --version to check.
  • An active Claude Code or Cowork session — Amicus is orchestrated by Claude; it is not a standalone chatbot.
  • At least one paid model API key — OpenRouter, or a direct Google / OpenAI / Anthropic / DeepSeek key.
What It Costs

~5–8 model calls per council

A sidecar is a single model call; a full council is typically ~5–8 paid model calls (3 reviewers across 2 fan-out waves + 1 chair). Amicus estimates the cost up front and a budget gate blocks runaway spend.

Want to try it for nothing? OpenRouter offers free model variants — route a council through those and you pay zero for tokens.

You pay providers for tokens. Amicus is free & open-source.

Foundation

Built on OpenCode.

Amicus builds on OpenCode, not around it. OpenCode does the heavy lifting.

OpenCode is the open-source AI coding engine that powers every Amicus session. It handles the conversation, tool use, native agent types, and the web UI. Amicus adds context sharing from Claude Code, session history, the fold workflow, MCP support, and the Electron shell. We don't reinvent the wheel.
opencode.ai

Get Started

Install in 30 Seconds.

Two commands: one installs the CLI, both skills, and the MCP server — the other configures your keys and default model. Amicus can't reach a model until amicus setup has run.

$ npm install -g amicus $ amicus setup← don't skip: adds your API keys copy
Read the Docs