musistudio/claude-code-router
⭐ 33,756 · TypeScript · GitHub 仓库
以Claude Code为基础构建编码基础设施,让您在享受Anthropic更新的同时,自主决定与模型的交互方式。
一句话总结
一个中间件代理,可将 Claude Code 的请求路由至任意 AI 模型,从而打破供应商锁定。
🔥 核心能力与独特卖点
- 动态模型路由:配置规则,将不同任务(如后台作业、复杂推理、长上下文处理)自动分发至不同模型。解决了所有工作流被单一模型束缚的痛点。
- 多供应商适配层:通过统一接口,在 OpenRouter、DeepSeek、Ollama、Gemini 等之间无缝切换。无需在更换供应商时手动重写 API 调用。
- 请求/响应转换插件系统:使用内置或自定义转换器,针对每个供应商定制请求和响应的适配方式。解决了供应商间 API 架构不兼容的痛点。
- 即时模型切换:在 Claude Code 中使用
/model命令,无需重启即可在会话中切换模型。解决了中断工作流重新配置工具的痛点。 - CLI + Web UI 管理:通过终端(
ccr model)或浏览器界面(ccr ui)管理供应商、规则和模型。解决了每次更改都需要编辑原始配置文件的痛点。
独特卖点:与简单的 API 封装器不同,这是一个会话感知代理,既能保留 Anthropic 的更新,又能让你完全控制每个交互由哪个模型驱动,并配备用于自定义转换的插件架构。

技术架构
| 组件 | 详情 |
|---|---|
| 模式 | Claude Code CLI 与 LLM 供应商之间的本地代理/中间件服务器 |
| 语言 | TypeScript |
| 插件系统 | 每个供应商/模型的自定义转换器,用于修改请求和响应 |
| 日志记录 | 双系统:pino 用于服务器级日志(HTTP、API)+ 独立的应用级日志用于路由决策 |
| 配置 | 基于 JSON(~/.claude-code-router/config.json),包含供应商、路由规则和全局设置 |
| 安全性 | 环境变量插值($VAR、${VAR})用于 API 密钥;主机绑定限制防止代理暴露 |
| 集成 | 支持 GitHub Actions 用于 CI/CD 流水线 |
快速入门指南
bash
# 前提条件:安装 Claude Code
npm install -g @anthropic-ai/claude-code
# 安装 Claude Code Router
npm install -g @musistudio/claude-code-router
# 启用路由后开始编码
ccr code
# 重启代理服务器
ccr restart
# 启动 Web 管理界面
ccr ui
# 通过 CLI 管理模型和供应商
ccr model优点、缺点与使用场景
优点
- 消除供应商锁定,同时保持 Claude Code 作为主要界面
- 广泛的供应商支持,采用统一的适配器模式
- 会话保持的模型切换,无需重启 Claude Code
- 插件架构支持自定义请求/响应转换
- CLI + UI 双管理方式,满足高级用户和可视化偏好
缺点
- 必须安装 Claude Code 作为前提条件
- 配置复杂度随供应商和自定义转换器数量增加而增长
- 网络依赖——所有路由都依赖外部 API 连接
- 安全攻击面——暴露代理需要谨慎的主机绑定配置
不适合谁?
- 使用单一固定模型供应商的团队,无需在模型间切换
- 没有 Claude Code 的用户——这不是一个独立工具
- 离线或隔离环境,无法进行外部 API 调用
- 对代理安全策略严格的组织,禁止使用本地中间件服务器
理想使用场景
- 成本优化团队:将简单任务路由至廉价模型,复杂推理路由至高端模型
- AI 评估工作流:跨多个供应商测试相同提示词以进行对比
- 多模型开发:不同模型擅长不同任务(如代码生成 vs. 文档编写)
- CI/CD 流水线:需要自动使用多个 AI 模型验证代码
- 供应商迁移团队:希望实现平稳、无风险的过渡
社区与活跃度
Claude Code Router 在 GitHub 上拥有 33,756 颗星,显然在开发者社区中引起了强烈共鸣。这不是一个小众实验——这是一个被团队迅速采用、用于实现模型灵活性的解决方案。该项目维护活跃,最新更新于 2026 年 5 月 10 日,表明其持续发展并对快速变化的 AI 工具生态保持响应。这种势头表明,一个由贡献者和用户组成的健康生态系统正在积极塑造其发展路线图。