Bring your models and your setup

Use the models
you already pay for.

First-class support for Anthropic and OpenAI, 17 built-in providers, local models through Ollama or llama.cpp, and custom endpoints that speak a supported API. New models and prices arrive in a signed model list, without a Caudra update.

Sign in to one provider with several subscriptions and API keys. Auto keeps each conversation on its account and moves it to another before the quota runs out, at a point where its prompt cache is cold unless the account is nearly spent. When every subscription of one provider runs out, Caudra can move the conversation to another provider you list, and the transcript records each move with its cause and cache cost. Accounts and quota shows how Auto decides.

Anthropic · OpenAI · Google · GitHub Copilot · xAI · Mistral · DeepSeek · OpenRouter · Z.AI · Ollama · llama.cpp

Providers and sign-in

Claude subscription sign-in is experimental. Anthropic's terms limit Pro and Max subscriptions to official clients.

Keep the setup you have

Caudra reads the instruction files and skills you already have and connects to your MCP servers, so trying it does not mean starting over.

  • Instruction files

    At session start, Caudra loads AGENTS.md, CLAUDE.md, .cursorrules, GEMINI.md, or one of six other instruction file names.

  • Skills

    Caudra reads skills from .claude/skills and .agents/skills folders. Lauren Tan's pstack, 16 of Matt Pocock's skills, and 16 of Emil Kowalski's design-engineering skills ship built in, each off until you turn it on.

  • MCP servers

    Add stdio or HTTP MCP servers in mcp.toml, with OAuth sign-in. The model calls them by writing Python in its code tool, and Caudra speaks the current MCP protocol and the older one.

  • Scripts

    --print writes the same JSON fields as Claude Code, so scripts that parse its output keep working. A print run saves its session, and caudra --session <ID> resumes it.

A model for each job

Model jobs decide which model serves each kind of work. Pin a job to a model in /model, or let it follow Chat, Plan, Fast, or Best. A local endpoint can name its own Fast and Best models in providers.toml. For a single task, name the model in your prompt, as in “ask opus and sol to review this change”, and each gets a task of its own.

Every model job
Chat
The main conversation. Picking a model in /model sets it.
Plan
Main turns in Plan mode, on the Chat model until you bind it.
Subagent
Delegated tasks, on the parent agent's model until you bind it.
Compact
Summaries when a context window fills.
Title
Session names, on Fast until you bind it.
Goal
The /goal evaluator, on Fast until you bind it.
Extract
Requirements for /extract and compaction, on Fast until you bind it.
Memory
One-line summaries of older memory notes, on the compaction model until you bind it.
Learn
The continual learner, on the Chat model until you bind it.
Autopilot
Answers for autopilot while you are away, on Best until you bind it.
Fast
The preferred small model, for routine calls.
Best
The provider's flagship. Point Plan or a prompt profile's subagents at it.

The decision engine can route new subagents to the Fast or Best model. Decisions and reranking explains what else it judges.

Model jobs
Caudra after the fix, with ninfer-4090/qwen3.8-27b in the status bar. The make check card shows 8 pass and 0 fail, and the make and progress stages made it 58% smaller. The reply names the root cause in src/pagination.ts:29, a regression test for a short final page after a cursor, and make check: 8/8 tests green.

Terminal recording · A local model fixes the bugA real session in the demo project with Qwen3.8-27B, which ninfer-4090 serves from a machine in the local network through a standard OpenAI-compatible endpoint that follows the official Responses API specification. One prompt asks for the fix, a regression test, and make check. The server computes all 12,676 prompt tokens of the first request with nothing from its cache, and a bar above the input shows the prefill rate, such as 3.7k tok/s. The model patches src/pagination.ts, adds the test, and make check passes 8 tests. /usage then lists the tokens of the session for this model.Open in the gallery
The delivery Task terra-cursor-logic-review: success. Model: openai/gpt-5.6-terra, thinking: none, with its two-sentence review. Above it, the main agent relays the review of Luna and notes that the review of Terra is still pending. Below it, the main agent relays the review of Terra. The status bar names openai/gpt-6.1-sol and PLAN.

Terminal recording · Tasks on the models you nameA real session in the demo project, in Plan mode, with gpt-6.1-sol as the main agent. One prompt asks luna and terra to review the final-page cursor logic in src/pagination.ts, one task each, two sentences each. The main agent starts one read-only task on openai/gpt-6-luna and one on openai/gpt-5.6-terra. Each delivery names the model and the thinking level it ran on, and the main agent relays each review as it arrives. /tasks then opens the chat of the terra task, and its status bar names openai/gpt-5.6-terra.Open in the gallery