Every tool you own, one URL
Two base URLs, one key. Anthropic-shaped clients talk to http://localhost:3456; OpenAI-shaped clients — chat/completions and, since 6.3, the Responses API — talk to http://localhost:3456/v1. The key is dario (any value works until you set DARIO_API_KEY, which then has to match).
Codex CLI
OpenAI's agent, on your Claude plan
Claude Code
Forwarded verbatim
Cursor
Needs a public HTTPS tunnel, and the anthropic: prefix
Cline · Roo Code · Kilo Code
API provider "Anthropic"
Aider
Point Aider at dario, the local endpoint that serves every tool from the Claude and ChatGPT plans you already pay for.
Continue.dev
Point Continue.dev at dario, the local endpoint that serves every tool from the Claude and ChatGPT plans you already pay for.
Zed
Set ANTHROPIC_API_KEY=dario in the environment Zed launches from; the model picker then lists Claude models routed through your plan.
OpenHands
The anthropic/ prefix tells LiteLLM (OpenHands' router) to take the Anthropic path, which dario is now fronting.
OpenClaw
OpenClaw's exec / process / web_search / web_fetch / browser tools are translated to Claude Code's set without a flag; a tool outside the map (message, for one) rides a fallback slot instead.
Codex CLI · OpenAI SDK · any OpenAI-compatible tool
Ask for gpt-5.5 and it is served by your ChatGPT plan once you've run dario add altman.
Claude Agent SDK · Anthropic SDK
TypeScript, Python
curl
Point curl at dario, the local endpoint that serves every tool from the Claude and ChatGPT plans you already pay for.
Docker
Kubernetes · a Pi in a closet
Something not listed? If it reads ANTHROPIC_BASE_URL or OPENAI_BASE_URL, or has a "Base URL" field, it works. The compatibility matrix says which tools are exercised end-to-end, which are inferred from a shared code path, and which are untested — one honest cell per tool.
Install dario, log in, leave it running
Three commands, once. The proxy binds 127.0.0.1:3456 and holds your login; every tool on the machine shares it. Add a ChatGPT plan with dario add altman and the two fail over to each other.
$ npm install -g @askalf/dario $ dario login # your Claude plan: Pro, Max 5x or Max 20x Login successful. $ dario proxy # leave it running dario · http://localhost:3456 Your Claude subscription is now an API.