Claude Code Router (CCR) is a local model gateway and control plane for AI coding agents. Instead of configuring each agent (Claude Code, Codex, Grok CLI, ZCode, or any compatible API client) with its own provider settings, CCR gives them all one stable local endpoint and lets you manage providers, models, routing rules, and tools in a single place. It's built for developers who use multiple coding agents or switch between model providers often and don't want to edit configuration files every time.
The project ships as a desktop app (macOS, Windows, Linux) and as an npm CLI with a browser-based management UI, plus a Docker deployment option. Under the hood it exposes a local gateway (default http://127.0.0.1:3456) that agents talk to, while CCR handles provider selection, credentials, retries, and logging behind the scenes.
CCR fits developers who run more than one AI coding agent and want a single place to swap models or providers without touching each tool's config. It's useful if you rely on multiple API keys or accounts and want automatic fallback when a provider rate-limits or goes down, or if you want visibility into what model actually served each request and at what cost.
It's also a good fit for teams that want to centralize provider credentials and set usage quotas for individual users or agents, rather than distributing raw API keys.
CCR is not the right tool if you only use a single agent with a single fixed provider and never need to switch, retry, or observe requests, since the extra local service adds overhead you won't use. It's also not a replacement for the agents themselves (Claude Code, Codex, etc.); it's a routing layer that sits in front of them, so you still need the underlying agent installed and running.
The recommended path is the desktop app:
http://127.0.0.1:3456 by default.For a CLI-only setup (requires Node.js 22+):
npm install -g @musistudio/claude-code-router
ccr ui
Then open http://127.0.0.1:3458 and follow the same Providers → Server → Agent Config flow. The gateway stays at http://127.0.0.1:3456.
For Docker:
docker compose up -d --build
This exposes the management UI and gateway routes through http://127.0.0.1:3458 by default. Configuration is stored in SQLite (~/.claude-code-router/config.sqlite on macOS/Linux, %APPDATA%\claude-code-router\config.sqlite on Windows), with a legacy config.json read once for migration if no SQLite config exists yet.