
Claude Code Router 实战指南一条本地网关搞定模型路由、失败降级与多 Key 轮换【免费下载链接】claude-code-routerOne local control plane for every AI agent: route across models, fuse new capabilities, orchestrate tools, and stay fully in control.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-code-routerClaude Code RouterCCR是一个跑在本地的模型网关与路由控制面AI 客户端只连一个本机地址请求由它按你的规则调度到各供应商的具体模型顺带管住失败降级、Key 轮换和用量日志。照本文操作你会得到一条跑通的网关、一套按场景选模型的路由规则以及能回答「每个请求去了哪」的日志。先花两分钟判断这层路由值不值得加先看你有没有下面这类日常如果你有两个人、两种模型套餐一个订阅、一个按量付费就会遇到每次换模型都要翻各自客户端的环境变量和配置项改完还不确定生效没有。如果你让批量脚本和交互开发共用一个 Agent 入口就会出现「跑批也按旗舰模型计费」的成本失控——请求发出前你根本没机会改模型。如果你手里有两把以上同一供应商的 Key就会遇到某把 Key 限流后整条工作流跟着停摆只能人肉换 Key 再重启。动手前自查三个问题你能不能接受「换一次上游模型就要改一遍客户端配置」不能说明你需要统一入口。你需不需要回答「上周的 token 烧在哪个供应商的哪个模型上」需要说明你需要请求日志。你的余额是不是分散在多个账号、得轮流用是说明你需要凭据池。三问命中任意两问往下走就值回票价。从零到第一个请求安装 CCR 并接入 OpenRouter检查环境并安装CCR 的 npm CLI 要求 Node.js 22 或更高版本先确认node -v版本低于 22 就先升级 Node否则装完也跑不起来。确认后全局安装 CLInpm install -g musistudio/claude-code-router装完执行ccr --help能看到start、ui、serve、stop等子命令说明安装成功。启动服务并打开管理界面ccr ui这条命令会拉起后台服务并自动打开浏览器管理界面没有桌面环境就加参数ccr ui --no-open需要前台常驻托管则用ccr serve --no-open。页面能打开、能看到服务页签就算成功。如果你更习惯容器化也可以在源码仓库根目录直接起 Docker管理界面和网关共用一个入口git clone https://gitcode.com/GitHub_Trending/cl/claude-code-router cd claude-code-router docker compose up -d --build这里有个容易踩的坑CLI 模式下3458是管理界面端口3456才是模型网关端口客户端要配的是后者Docker 模式两者合并到3458一个入口。端口与监听地址的细节可查 服务配置文档。添加 OpenRouter 供应商OpenRouter 是内置预设供应商不用手填 API 地址在供应商页点添加从预设列表选 OpenRouter粘贴以sk-or-v1-开头的 API 密钥。在模型列表里勾选要暴露的模型目录里没有的模型 ID 也可以手动添加。点检测连通性只勾选个别模型做一次真实请求。检测会真实计费所以别全量勾选。弹窗里对应模型显示「可用」即成功失败时先看密钥和模型名是否匹配再试别的模型能快速区分是密钥问题还是模型名问题。创建客户端 Key 并发出第一个请求客户端访问 CCR 用的是API 密钥页创建的 CCR 客户端 Key它和发给上游的供应商 Key 是两套东西别搞混。创建成功时会弹完整 Key 一次当场复制保存。在服务页确认状态为「运行中」未配置供应商时网关可能拒绝启动所以上一步必须先做。用下面这条命令探活curl http://127.0.0.1:3456/health返回200说明网关在线。再发一个最小的模型请求x-api-key填刚才复制的客户端 Keymodel填你刚勾选的供应商/模型curl http://127.0.0.1:3456/v1/messages \ -H x-api-key: 你的CCR客户端Key \ -H content-type: application/json \ -d {model:OpenRouter/你的模型,max_tokens:16,messages:[{role:user,content:ping}]}拿到带content的响应就算打通。最后到日志页核对请求模型、最终命中的供应商与模型、状态码、耗时都应有记录——这就是你以后排查一切问题的依据。让规则替你选模型路由、子代理选模与脚本分流条件规则按请求特征改写模型 它做什么规则按列表顺序匹配第一条命中的启用规则改写请求。你可以根据请求头或请求体里的任意字段分流不用动客户端配置。怎么配在路由页点添加一条规则由三块组成。条件块选来源request.header或request.body、字段、操作符、starts with、contains deep等和值比如「当请求头x-client-name等于batch」改写块最常用的是一行设置 request.body.model 供应商/模型也可以顺手改temperature等任意 body 字段失败时块可给这条规则单独配降级策略覆盖页面顶部的默认设置。得到什么效果批量摘要、日志整理这类请求带上特定标记后自动落到便宜模型交互编码请求保持旗舰模型。同一批人的客户端一个字不用改。字段和操作符的完整清单在 路由文档 里。模型 Description子代理自动挑便宜模型 它做什么Claude Code 的 Agent / Task / Workflow 会派生子请求。CCR 会把你在模型页填的 Description 注入这些工具说明派生请求携带模型标签CCR 据此把子请求路由到对应模型。怎么配打开模型页给想开放给子代理的模型填写 Description写清适合什么任务、速度、成本例如「适合代码搜索、摘要和低成本并行子任务」。没有任何模型填 Description 时这套机制不会生效所以这是开关。得到什么效果主对话走强推理模型后台搜索、摘要类子任务自动走便宜快模型全程无人工干预。脚本规则条件写不出来时的逃生口它做什么单个条件表达不了多字段判断、灰度分流或外部策略查询时把规则类型切换为 Node.js 脚本。脚本在独立 Worker 中执行能读取完整请求返回目标模型、请求改写和回退策略。怎么配新建一个.js文件在规则编辑器中选择它、设置超时10 到 30000 毫秒然后用内置的测试请求 JSON 试跑——试跑不发真实上游请求适合反复调试。得到什么效果租户策略、按会话灰度这类复杂分流也进了规则体系脚本异常或超时会 fail-open 跳过该规则不会把整条链路卡死。失败降级与多 Key 轮换配完之后不用操心的事 ️先说失败降级。路由页顶部的默认失败处理是全局策略每条规则里还能单独配命中时以规则级为准。一共三种模式off只打当前模型失败即报错继续重试同模型再试retryCount次由408、409、429、5xx触发适合偶发抖动失败降级目标model-chain当前模型失败后按你排好的顺序切备用模型任意4xx/5xx都触发适合主模型限流或宕机的生产场景。每次尝试前 CCR 都会等待上游给了Retry-After就优先遵守否则走 1 秒起步、单次最多 30 秒的指数退避。响应头里的x-ccr-fallback-*系列字段和日志里的重试尝试列表能告诉你最终是第几次尝试、落在哪个模型上。再说凭据池。OpenRouter 的余额分散在几个账号、或团队共用多把 Key 时在供应商高级设置里展开凭据池每条 Key 可设名称、启用开关、优先级数字越小越优先、权重以及本地限额 JSON{rpm: 60, tpm: 100000}达到窗口上限的 Key 会被自动跳过转而用同供应商的其他 Key。配置完之后你不用操心的事某把 Key 限流不会停掉整条工作流主模型挂了不会阻塞开发月底对账时账号面板和各 Key 的用量直接可查。你唯一要做的是偶尔给备用模型做一次连通性检测确认备胎是活的。上线之后排障速查与观察节奏 高频问题先对表现象先查什么curl /health返回502是否一个供应商和模型都还没配——空状态下这是预期行为配完再试请求返回401/403客户端是否误把上游供应商 Key 当成 CCR 客户端 KeyKey 是否启用、与 API 地址是否匹配报model not found模型名出现在供应商模型列表、路由选中项、Agent 配置三处逐一对比找出不一致的那处路由规则不命中规则开关是否启用、规则顺序先命中先生效、改写目标是否为已配置的供应商/模型管理页能打开但请求不通服务页状态是否为运行中3458可用不等于3456网关已启动某把 Key 频繁被跳过凭据池rpm/tpm限额是否过紧或该 Key 在上游侧已限流上线后的维护节奏可以很轻每周翻一次日志看实际高频命中的模型组合某类请求明明不需要旗舰模型就加一条条件规则改走性价比模型备用模型链定期用连通性检测确认可用。更细的症状分组可以参考 常见问题文档。至此你得到的是 ✅一个只认本机3456的统一入口客户端配置从此不再跟着模型跑一套按请求特征改写模型的路由规则外加子代理自动选模一组「限流自动跳、故障自动换」的降级策略与 Key 轮换一份能回答「每个请求去了哪、花了多少」的请求日志。【免费下载链接】claude-code-routerOne local control plane for every AI agent: route across models, fuse new capabilities, orchestrate tools, and stay fully in control.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-code-router创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考