ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

9Router 集成 Claude Code CLI:用 ANTHROPIC_BASE_URL 路由 Anthropic 请求的完整实战指南

9Router 集成 Claude Code CLI:用 ANTHROPIC_BASE_URL 路由 Anthropic 请求的完整实战指南 9Router 集成 Claude Code CLI用 ANTHROPIC_BASE_URL 路由 Anthropic 请求的完整实战指南【免费下载链接】9routerUnlimited FREE AI coding. Connect Claude Code, Codex, Cursor, Cline, Copilot, Antigravity to FREE Claude/GPT/Gemini via 40 providers. Auto-fallback, RTK -40% tokens, never hit limits.项目地址: https://gitcode.com/GitHub_Trending/9r/9router导读本文讲解如何将 9Router 与 Claude Code CLI 集成把 Claude Code 默认发往 Anthropic 官方 API 的请求通过环境变量指向 9Router 的本地或云端智能路由网关从而复用 9Router 的 40 上游 Provider 接入、自动故障转移Combo、配额追踪与令牌压缩RTK能力。读完本文你将掌握 ANTHROPIC_BASE_URL 与三大模型别名环境变量的配置方法、claude --model的别名与全名用法、~/.claude/settings.json的手动配置方式以及连接异常时的排查路径。一、集成原理Claude Code 如何拐弯到 9RouterClaude Code 原生的 Anthropic API 请求目标是https://api.anthropic.com/v1/messages而 9Router 在本地暴露了一个兼容 Anthropic 消息接口的网关端点。集成后Claude Code 的所有请求都会先到达 9Router再由 9Router 的路由引擎按已配置的 Provider 与 Combo 策略分发到上游。从源码结构看这一拐弯能力由两层支撑网关层9Router 在默认端口 20128 提供 API 服务该端口在 src/shared/constants/config.js 中定义为appPort: 20128请求统一走/v1/*前缀Next.js 重写规则映射到src/app/api/v1/路由树其中包含messages、chat/completions、responses、models、embeddings、images/generations、audio/speech等一组 OpenAI 兼容接口。Provider 注册层ClaudeClaude Code作为上游 Provider 在 open-sse/providers/registry/claude.js 中注册其alias: cc正是集成文档中模型名前缀cc/的来源该注册表同时声明了上游真实地址https://api.anthropic.com/v1/messages、format: claude请求格式以及 OAuth 认证org:create_api_key等 scope与令牌刷新配置。因此Claude Code 侧看到的模型是 9Router 体系内的模型 ID如cc/claude-opus-4-5-20251101而 9Router 侧负责把 Anthropic 格式的请求翻译成对应上游 Provider 的格式并回传流式响应。二、前提条件在开始集成之前请确认以下三项已就绪Claude Code CLI 已安装确保终端里可以直接执行claude命令。9Router 已运行本地运行9router命令启动见本地部署指南或已配置云端端点。9Router API 密钥从 9Router 仪表盘Dashboard获取。默认情况下 9Router 会自动生成 API 密钥仪表盘默认地址为http://localhost:20128默认密码为123456登录后请立即修改详见快速入门。提示启动 9Router 后建议先在仪表盘的 Providers 页面连接一个可用的上游 Provider例如 Claude Code 订阅账号 OAuth 登录或 API Key / 免费 Provider确保网关侧有可路由的真实模型否则 Claude Code 侧即使连接成功也会在后续请求时报 model not found。三、设置步骤环境变量配置集成核心是让 Claude Code 读取 9Router 的端点与默认模型全部通过环境变量完成。1. 设置环境变量在 shell 配置文件~/.bashrc、~/.zshrc或~/.bash_profile中追加以下内容# 9Router 的 Base URLAnthropic 兼容端点 export ANTHROPIC_BASE_URLhttp://localhost:20128/v1 # 可选为别名设置默认模型cc/ 前缀来自 9Router 的 Claude Code Provider 别名 export ANTHROPIC_DEFAULT_OPUS_MODELcc/claude-opus-4-5-20251101 export ANTHROPIC_DEFAULT_SONNET_MODELcc/claude-sonnet-4-5-20250929 export ANTHROPIC_DEFAULT_HAIKU_MODELcc/claude-haiku-4-5-20251001参数说明环境变量作用说明ANTHROPIC_BASE_URL覆盖 Claude Code 的 API 端点必须指向 9Router 的/v1路径本地默认端口 20128ANTHROPIC_DEFAULT_OPUS_MODELopus别名映射的模型默认cc/claude-opus-4-5-20251101ANTHROPIC_DEFAULT_SONNET_MODELsonnet别名映射的模型默认cc/claude-sonnet-4-5-20250929ANTHROPIC_DEFAULT_HAIKU_MODELhaiku别名映射的模型默认cc/claude-haiku-4-5-20251001这里的模型 ID 是 9Router 体系内的路由标识cc/前缀对应 open-sse/providers/registry/claude.js 中注册的 Claude Code Provider 别名实际请求将由 9Router 按该 Provider 的订阅/配额策略发往上游。2. 重新加载 shell 配置source ~/.zshrc # 或 source ~/.bashrc3. 验证配置echo $ANTHROPIC_BASE_URL # 期望输出: http://localhost:20128/v1同时可用echo $ANTHROPIC_DEFAULT_SONNET_MODEL逐一确认其余变量。四、模型别名映射Claude Code 内置opus/sonnet/haiku三个快捷别名9Router 通过环境变量把这三个别名映射到 9Router 模型别名模型环境变量opusClaude Opus 4.5ANTHROPIC_DEFAULT_OPUS_MODELsonnetClaude Sonnet 4.5ANTHROPIC_DEFAULT_SONNET_MODELhaikuClaude Haiku 4.5ANTHROPIC_DEFAULT_HAIKU_MODEL在 9Router 体系中cc/前缀下的可用模型还包括这些默认别名之外的型号例如cc/claude-haiku-4-5-20251001等完整的可用模型清单以 9Router 仪表盘 Providers 页面中该连接实际加载的模型列表为准与上游订阅账号的权限有关。相关模型命名与配额策略可参考快速入门中的订阅模型一节。五、使用示例1. 使用模型别名# 使用 Opus 模型 claude --model opus Explain quantum computing # 使用 Sonnet 模型 claude --model sonnet Write a Python function # 使用 Haiku 模型 claude --model haiku Quick code review2. 使用完整模型名不依赖别名时可直接指定 9Router 完整模型 IDclaude --model cc/claude-opus-4-5-20251101 Your prompt here两种方式最终都会把请求发往ANTHROPIC_BASE_URL即 9Router 网关。由于 9Router 暴露的是兼容端点claude的交互模式、--continue会话续接等常规能力均可照常使用请求进入网关后请求流转链路为/v1/*路由 →src/sse/handlers/chat.js解析、Combo 展开、账号选择→open-sse/handlers/chatCore.js格式检测、翻译、执行器分发、重试/刷新→ 对应 executor → 翻译器 → SSE 流式回传。六、配置文件可选除环境变量外Claude Code 会把配置持久化在~/.claude/settings.json。当需要固定端点与默认模型、且不想依赖 shell 环境时可手动编辑{ baseUrl: http://localhost:20128/v1, defaultModel: sonnet }字段说明baseUrl等价于ANTHROPIC_BASE_URL指向 9Router 的/v1端点defaultModel默认模型别名可选opus/sonnet/haiku对应第四节的环境变量映射也可直接填写完整模型 ID。修改后重启claude会话生效。两种配置方式环境变量与 settings.json选其一即可同时存在时以 Claude Code 实际的配置优先级为准。七、故障排查1. 连接问题若出现连接错误按顺序检查# 1. 确认 9Router 正在运行健康检查 curl http://localhost:20128/health # 2. 确认环境变量已正确设置 echo $ANTHROPIC_BASE_URL # 3. 确认防火墙未阻断 20128 端口macOS/Linux lsof -i :20128如果curl无法连通先回到本地部署指南确认9router进程状态与数据目录默认~/.9router是否正常端口 20128 被占用时参考该文档的端口排查章节处理。2. model not found 错误如果提示模型不存在核对模型名与 9Router 配置中的模型 ID 完全一致注意cc/前缀与日期后缀如cc/claude-sonnet-4-5-20250929在 9Router 仪表盘确认对应 Provider 连接处于激活状态确认该模型在当前连接的上游账号/订阅中确实可用订阅权限不足时模型列表会缩水。3. 配额与限流9Router 的配额追踪与自动故障转移Combo设计下若上游 Provider 配额耗尽网关可能自动切换备用模型前提是在仪表盘配置了 Combo。若无需自动切换、希望始终命中指定模型请确认没有为该模型绑定会触发降级的 Combo 策略。八、切换到云端端点不想在本地跑 9Router 时可将 Base URL 指向 9Router 云端export ANTHROPIC_BASE_URLhttps://9router.com使用云端端点时必须在 9Router 云端仪表盘中配置 API 密钥并通过ANTHROPIC_API_KEY或 Claude Code 的登录凭据使请求通过鉴权云端与本地端点共用同一套模型 ID 体系如cc/claude-opus-4-5-20251101切换端点无需修改--model参数注意确认云端账号已连接你计划使用的上游 Provider否则同样会得到 model not found。九、进阶从源码看请求如何被路由把集成文档的结论落到仓库源码上可以更清楚地理解整条链路端点层ANTHROPIC_BASE_URL指向的/v1/messages对应 src/app/api/v1/messages/route.js该路由树同时提供chat/completions、responses、models等接口说明 Claude Code 走的是 Anthropic 兼容入口其他工具则可走 OpenAI 兼容入口——两者共用同一套路由引擎。Provider 层Claude Code 订阅账号以 OAuth 方式接入 9Router其凭据管理、令牌刷新与配额查询配置全部声明在 open-sse/providers/registry/claude.js 中OAuth scope、refreshLeadMs、usage 端点等。模型层cc/前缀由该注册表的alias字段派生模型 ID 由 9Router 统一编号因此 Claude Code 侧只需通过环境变量指向 9Router即可在完全不感知上游变化的情况下使用路由后的模型。理解了这三层遇到环境变量没错但请求异常时就能沿着Claude Code → 9Router 网关 → Provider 注册表 → 上游账号的链路快速定位问题出在哪一段。总结通过ANTHROPIC_BASE_URL与三个ANTHROPIC_DEFAULT_*_MODEL环境变量或~/.claude/settings.jsonClaude Code 可以在几分钟内接入 9Router 的智能路由网关获得统一模型命名、多 Provider 接入、配额追踪与自动故障转移能力。集成后日常使用方式不变claude --model opus|sonnet|haiku或直接指定cc/前缀完整模型 ID。如需更完整的模型清单、Combo 配置与配额策略可继续阅读快速入门与本地部署。【免费下载链接】9routerUnlimited FREE AI coding. Connect Claude Code, Codex, Cursor, Cline, Copilot, Antigravity to FREE Claude/GPT/Gemini via 40 providers. Auto-fallback, RTK -40% tokens, never hit limits.项目地址: https://gitcode.com/GitHub_Trending/9r/9router创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表