Claude Code 请求路由
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/route-claude-code-requests-across-models-and-providers-with-claude-code-router。
技能介绍
要解决的问题
Claude Code 默认绑定 Anthropic 的模型与 API。当你关心单次请求成本、响应延迟、特定模型在某些任务上的表现,或团队已有自己的 API 凭据和本地模型服务时,这套默认绑定就成了约束。把 coding agent 的请求硬接到单一提供商,意味着要么接受该提供商的定价与限流,要么放弃 Claude Code 已经成型的终端工作流——交互式编辑、会话上下文、diff 审查、命令历史——去换一个工具。
工作机制
Claude Code Router 在客户端和模型提供商之间充当中间层。你照常在终端里使用 Claude Code,路由层在请求发出前根据配置决定这次请求走哪个提供商、哪个模型,并应用该提供商需要的请求转换。
核心是 ~/.claude-code-router/config.json 里的 Providers 数组:每个 provider 对象定义后端地址、模型映射和该提供商特有的转换逻辑。这意味着你可以在不同任务间分配不同后端——比如长上下文的代码理解走本地端点,短交互式的补全走云端 API。
对工程师来说,真正的价值在于这种「保持终端工作流不变、只替换后端」的能力。你的 diff 流程、review 习惯、shell 集成都不用改,变的只是请求最终落到哪。
适用边界与注意点
前提是你已经有 Claude Code 和 Node.js/npm 环境,并且至少有一个可用的提供商:云端 API key 或本地端点。没有后端,路由层无事可做。
上游文档里提到的几个选项值得了解:APIKEY 用于给路由层加一层自己的认证,客户端需要在 Authorization 或 x-api-key 头里带上;NON_INTERACTIVE_MODE 让路由层适配 GitHub Actions、Docker 容器这类非交互环境;PROXY_URL 允许给 API 请求挂代理。这些都不是默认开启的魔法开关,按需配置。
另外,这个方案不改变 Claude Code 本身的行为,它只做路由和转换。如果你的任务依赖特定提供商的独有特性(比如某个模型的特定采样参数),需要在 provider 配置里显式声明,否则可能静默回退到默认行为。
使用场景
- 团队既有云端 API key 又有本地模型端点,需要按任务类型把 Claude Code 请求分发到不同后端。
- 在 GitHub Actions 里跑非交互式的 Claude Code 任务,需要配置非交互模式并指定后端提供商。
- 访问外部 API 时必须经过本地代理,需要在路由配置中设置代理地址并让 Claude Code 请求走该代理。
- 希望给路由层加一层认证,客户端必须带密钥才能调用不同的模型提供商。
适合人员
- 维护内部编码 Agent 的团队工程师,希望把 Claude Code 后端从默认 API 切换到已有的自建模型服务。
- 在 CI 流水线里使用 Claude Code 的开发者,需要在非交互环境中为不同任务指定不同模型提供商。
- 管理多项目预算的开发者,希望按任务类型路由到不同提供商以控制单次请求成本。
- 负责自建 API 网关的后端工程师,想在 Claude Code 请求链路前增加认证层和代理配置。