Claude Code
Point Claude Code at Summa over the Anthropic protocol — single models for agentic coding, a live panel debate for the hard calls.
Connect Claude Code
Claude Code speaks the Anthropic protocol, so it points straight at Summa's Anthropic-compatible endpoint. Grab a key from API Keys, then export three env vars and launch. Nothing else changes about how Claude Code works.
Terminal
export ANTHROPIC_BASE_URL="https://alpha.backend.summachat.com/api"
export ANTHROPIC_AUTH_TOKEN="YOUR_API_KEY"
export ANTHROPIC_MODEL="summa-fast"
export CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1
claudeANTHROPIC_AUTH_TOKENis your Summa API key — it's sent asAuthorization: Bearer <key>.CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1lets the/modelpicker list every Summa model fromGET /models.Set these per-shell for a quick trial, or add them to your shell profile to make Summa your default.
Single mode — summa-fast
summa-fast is one fast model with full tool support: file edits, shell, and everything else Claude Code does natively. It's the best default for agentic coding. You already selected it via ANTHROPIC_MODEL above, so just start working.
In the Claude Code TUI
> refactor src/auth into a hook and add a vitest for the happy pathWant a specific catalog model instead of the fast blend? Use a summa/<slug> id — for example /model summa/openai/gpt-5. Single models keep full tool support.
Debate mode — summa-debate
Switch to summa-debate and a panel of models each answer your prompt, then a moderator synthesizes one answer. It's slower and pricier than a single model — reach for it on architecture and reasoning questions, not on tight edit loops. Tools are accepted but not invoked during a debate.
In the Claude Code TUI
/model summa-debate
> should we move background jobs to a queue or keep them inline? weigh the tradeoffsYou'll feel the debate. On a summa-debate request each panelist's turn streams as a thinking block as it lands — you watch the models deliberate in real time — and then the moderator's synthesized answer streams as normal text. In Claude Code, press Ctrl+O to expand the live thinking.
For opinionated presets, pick summa-debate-coding (Claude Sonnet 4.5 moderating GPT-5 and Gemini 2.5 Pro) for architecture, or summa-debate-reasoning (GPT-5 moderating Claude Opus 4.1 and Gemini 2.5 Pro) for deep reasoning.
Switching modes is just changing the model string — nothing else about your session changes. In the Claude Code TUI, use /model mid-session: /model summa-fast for fast single-model coding, /model summa/openai/gpt-5 for a specific catalog model, or /model summa-debate to flip on the panel for the next hard question. A common flow: draft and edit on summa-fast, switch to summa-debate when you hit a design decision, then switch back to keep shipping.
Custom panel — the summa block
A custom panel is defined by a summa block in the request body: you choose the exact models and who moderates. This overrides the model string and works on /v1/messages, /chat/completions, and /responses.
summa block (request body)
{
"summa": {
"panel": ["openai/gpt-5", "anthropic/claude-sonnet-4.5"],
"moderator": "anthropic/claude-sonnet-4.5"
}
}Claude Code doesn't expose a raw request-body editor, so you can't drop in a summa block from the TUI. In Claude Code you pick a panel by its model id — summa-debate, summa-debate-coding, or summa-debate-reasoning. If you need a fully custom panel, use the Python, TypeScript, or cURL guides, which send the block directly.
paneltakes 2 to 8 distinct slugs — the same ids assumma/<slug>, but without thesumma/prefix.moderatoris optional and reads every panelist's turn to write the single synthesized answer; when set it must be one of the panel members. Omit it and the first entry inpanelmoderates.
In Claude Code the preset debate ids handle this for you: summa-debate-coding moderates with Claude Sonnet 4.5, and summa-debate-reasoning moderates with GPT-5.
Get models
With gateway model discovery on, the /model picker in Claude Code lists every Summa model, sourced from GET /models. Type /model and choose an id — that's the entire flow.
In the Claude Code TUI
/model
# pick any id — e.g. summa-fast, summa/openai/gpt-5, summa-debateTo browse the catalog outside the TUI, hit the endpoint directly. Any id in data[] is a valid model string; to reuse one inside a summa panel, drop the summa/ prefix.
Terminal
curl "https://alpha.backend.summachat.com/api/v1/models?search=gpt&limit=50&offset=0" \
-H "Authorization: Bearer YOUR_API_KEY"
# -> { "object": "list", "data": [{ "id": "summa/openai/gpt-5", ... }], "has_more": false }Next
Browse the full catalog on Models, and track or top up your prepaid balance on Credits — a 3-model debate costs roughly 3x a single model, plus the standard platform fee.
Building an agent that integrates Summa itself? Point it at https://summachat.com/llms.txt for a machine-readable overview of the API.