三步跑通:用 Claude Code Router 本地网关把 DeepSeek 接入模型路由

发布时间:2026/9/9 17:18:48
三步跑通:用 Claude Code Router 本地网关把 DeepSeek 接入模型路由 三步跑通用 Claude Code Router 本地网关把 DeepSeek 接入模型路由【免费下载链接】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是一个本地模型网关Claude Code 发出的请求先落到你机器上的网关再由模型路由决定这次请求实际发给哪家大模型。下面以 DeepSeek 为例把几个具体问题逐一讲清——谁接住了请求、密钥填哪里才算数、规则改了为什么没反应——照着做就能在自己机器上完整跑通。 请求到底被谁接住先看本地网关的链路你在 Claude Code 里发一条消息它并不直接去敲 DeepSeek 的 API而是先到本机的 CCR 网关默认监听http://127.0.0.1:3456。网关按供应商配置、路由规则和凭据决定这次请求实际发给哪个模型的哪个 API响应再原路转回。你在 Claude Code 里的操作习惯不变变掉的只有上游。这里有个细节容易忽略从 CCR 拉起 Claude Code 时终端欢迎屏里会直接写明API Base URL: http://127.0.0.1:3456就是上图红框那几行 Overrides。这个地址没指对后面所有配置都白搭——怎么确认做对了就看这一行是否出现在你启动后的终端里。装 CLI 一条命令但 Node 版本有门槛先确认环境npm CLI 要求Node.js 22 及以上跑一下node -v核对。然后全局安装npm install -g musistudio/claude-code-router装完后ccr命令启动的是同一个网关并附带基于浏览器的管理界面ccr ui这一步别跳——它打开的是http://127.0.0.1:3458。两个端口分工不同3456 是模型网关接收 Claude Code 的请求3458 是管理界面你所有配置都在那里改。怎么确认做对了浏览器能打开管理页、看到总览面板服务就算起来了。 密钥填哪里才算真正生效供应商与模型的最少配置管理界面里选供应商 → 添加供应商CCR 内置了 DeepSeek 预设API 地址https://api.deepseek.com协议为 OpenAI Chat Completions基本不用手工填。选中预设、粘贴 API 密钥、勾选你要用的模型如deepseek-chat、deepseek-reasoner点一次检测连通性验证 Key 和模型 ID 真实可调用。供应商之后再到Agent 配置加一条 Claude Code 配置并选好默认模型——客户端没选或选不出可识别模型时请求会落到这个模型上。怎么确认做对了在 Claude Code 里敲/model能看到 CCR 暴露的模型列表链路就通了一半再随便聊一句打开请求日志应能看到一条指向 DeepSeek 的记录。 路由顺序匹配怎么验证请求最终落到哪个模型路由规则配置在路由页面完整字段说明见 路由文档。先记住内置逻辑它决定你的规则在什么位置起效也就是说客户端显式选择优先 → 未选或不可识别时回退到默认模型 → 你写的自定义规则仍可在其后按顺序改写第一条命中的启用规则生效。多模型调度时常见场景的分工大致是场景建议模型选择理由日常问答deepseek/deepseek-chat快且便宜扛高频对话写代码deepseek/deepseek-chat够用配回退链更稳复杂推理deepseek/deepseek-reasoner慢留给架构分析和难题拆解长上下文另配长上下文模型读大日志、长文档不被截断怎么确认规则真的命中请求日志里有三个字段对着看——request model是客户端原始请求resolved provider/resolved model是最终命中。resolved 系列显示 DeepSeek 对应的值规则就在工作。 脚本路由分流按内容决定走哪个模型普通条件规则只能匹配单个字段。想让消息像代码任务就走一个模型、像推理任务就走另一个把规则类型改成Node.js 脚本指向一个本地脚本文件即可。文件在每次执行前重新读取改完脚本不用重存规则。脚本按列表顺序执行返回null表示不命中、继续下一条const text input.summary.lastUserText ?? ; if (/def |function |class |import /.test(text)) { return { model: deepseek/deepseek-chat }; } if (/推理|证明|为什么/.test(text)) { return { model: deepseek/deepseek-reasoner }; } return null;配置规则时超时可在 10–30000 毫秒间设编辑器里的测试请求 JSON能在不发真实上游请求的情况下试跑脚本。怎么确认分别发一条帮我写个函数和一条为什么会这样看请求日志里两条的resolved model是否走到了不同模型。子代理模型怎么单独指定Description 注入加首行标签Claude Code 通过 Agent / Task / Workflow 派生的子代理默认跟着主请求的模型走。想让子代理按任务自己挑模型做法分两步在模型页面给希望被自动选择的模型填Description写清它适合什么任务CCR 会把这份模型清单注入 Claude Code 的Agent/Task工具说明。派生请求的 prompt 首行会携带模型标签CCR 识别后直接路由过去CCR-SUBAGENT-MODELdeepseek/deepseek-reasoner/CCR-SUBAGENT-MODEL 请给出这道题的完整推理步骤……注意没有任何模型填 Description 时CCR 不注入提示词这套机制等于没开。怎么确认做对了请求日志中派生请求的路由原因应出现builtin:claude-code-subagent且 resolved model 是标签里写的那个。⚠️ 三个常见故障超时、token 超限、配置不生效推理模型容易超时。reasoner 出结果慢默认超时会被打穿。给对应路由规则的超时单独调大。怎么确认发一条典型难题看请求日志里状态是否为成功。输出长度超过模型上限。Claude Code 期望的输出 token 可能高于 DeepSeek 单次上限请求会直接报错。在命中规则里加一条改写把request.body.max_tokens调小。怎么确认看日志里的上游错误信息通常直接写明 token 限制。改了配置没生效。最常见两个原因Claude Code 不是从 CCR 打开的Base URL 没指到 3456或配置项没启用。怎么确认打开请求日志核对这条请求的 resolved provider / model 是否为你预期的组合顺带确认/model里能看到 CCR 暴露的模型。如果你日常用 Claude Code、手里有多家模型额度、想在本地一个网关上集中管路由、回退和成本这套本地模型网关的搭法值得花二十分钟跑一遍如果只是临时调一两个模型 API密钥直接填进客户端就够不必引入这条链路。【免费下载链接】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),仅供参考