
9Router 集成 Claude Code用 ANTHROPIC_BASE_URL 與模型別名把 Claude Code 接入智能路由【免費下載鏈接】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本指南講解如何將 Anthropic 官方 Claude Code CLI 接入 9Router 的智能路由系統通過環境變量與~/.claude/settings.json配置文件把 Claude Code 的 API 請求指向 9Router再借助cc/命名空間的模型別名與自動回退Auto-fallback機制把 Claude Code 的流量分發到 40 上游提供商。讀完本文你將掌握從環境變量配置、模型別名映射到故障排查的完整落地流程并理解儀表盤一鍵配置背后的實現原理。集成原理Claude Code 如何被路由到 9RouterClaude Code 客戶端本身只認 Anthropic 兼容的 API 地址。9Router 對外暴露 Anthropic 兼容端點本地默認http://localhost:20128/v1Claude Code 的所有請求都發往該端點由 9Router 完成協議翻譯、提供商選擇與模型路由。從源碼可以印證這套機制的兩個關鍵點/v1/messages路徑即 Claude 協議信號在 open-sse/translator/formats.js 中只要請求路徑包含/v1/messages即判定為FORMATS.CLAUDE按 Claude 消息格式處理cc是 Claude Code 的提供商命名空間在 open-sse/providers/registry/claude.js 中Claude Code 對應 provider 的id為claude、alias為cc這也是下文所有cc/...模型 ID 前綴的來源。因此集成工作本質上只有一件事讓 Claude Code 把 9Router 當作它的 Anthropic API 服務端其余的路由、降級、限額管理全部由 9Router 接管。前置條件開始配置前請確認以下三項就緒Claude Code CLI 已安裝可通過npm install -g anthropic-ai/claude-code安裝macOS / Linux / Windows 通用安裝后執行claude驗證可用9Router 正在運行或已配置云端端點本地運行默認監聽20128端口或使用云端端點見文末云端端點一節擁有 9Router 的 API Key從 9Router 儀表盤Dashboard獲取用于在請求中標識你的賬戶與配額。核心配置設置環境變量Claude Code 通過環境變量感知 API 地址與默認模型。在你的 shell 配置文件中~/.bashrc、~/.zshrc或~/.bash_profile按你使用的 shell 選擇追加以下內容# 9Router 的 Base URL export ANTHROPIC_BASE_URLhttp://localhost:20128/v1 # 可選為別名設置默認模型 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配置完成后重載 shell 配置source ~/.zshrc # 或 source ~/.bashrc最后驗證變量是否生效echo $ANTHROPIC_BASE_URL # 預期輸出http://localhost:20128/v1關于 Base URL 與/v1后綴ANTHROPIC_BASE_URL必須帶/v1后綴Claude Code 才會拼接出/v1/messages路徑。9Router 的 Web 端在寫入配置時會主動做這個歸一化在 src/app/api/cli-tools/claude-settings/route.js 中若用戶填寫的地址不以/v1結尾服務端會自動補上避免因手寫遺漏導致路由失敗。模型別名與默認模型映射Claude Code 支持將opus、sonnet、haiku等別名映射到 9Router 的具體模型 ID。映射關系由下表的環境變量控制別名對應模型環境變量opusClaude Opus 4.5ANTHROPIC_DEFAULT_OPUS_MODELsonnetClaude Sonnet 4.5ANTHROPIC_DEFAULT_SONNET_MODELhaikuClaude Haiku 4.5ANTHROPIC_DEFAULT_HAIKU_MODEL除了表格中的三個9Router 對 Claude Code 還登記了更完整的別名體系。在 src/shared/constants/cliTools.js 中可以看到 Claude Code 的全部別名default、sonnet、opus、fable、haiku、opusplan并定義了以下默認映射別名默認模型defaultValue環境變量opuscc/claude-opus-5ANTHROPIC_DEFAULT_OPUS_MODELsonnetcc/claude-sonnet-5ANTHROPIC_DEFAULT_SONNET_MODELhaikucc/claude-haiku-4-5-20251001ANTHROPIC_DEFAULT_HAIKU_MODELfablecc/claude-fable-5ANTHROPIC_DEFAULT_FABLE_MODEL而在 9Router 的 TUI 客戶端cli/src/cli/menus/cliTools.js中Claude 模型類型的默認值與 Web 端保持一致例如sonnet默認cc/claude-sonnet-4-5-20250929、opus默認cc/claude-opus-4-5-20251101、haiku默認cc/claude-haiku-4-5-20251001。你可以按實際使用的上游提供商與模型隨時改寫這些變量。理解cc/前綴的模型 IDcc/claude-opus-4-5-20251101這類 ID 的格式是提供商命名空間/模型 ID。其中cc即 Claude Code 命名空間見 open-sse/providers/registry/claude.js。除cc外9Router 還維護gemini/、glm/、if/、cx/等多個命名空間分別對應 Gemini、GLM、iFlow、Codex 等提供商。更靈活的是模型 ID 位置也可以填Combo 名稱。9Router 支持在儀表盤創建自定義回退鏈Combo例如Combo 名稱: premium-coding Models: 1. cc/claude-opus-4-5-20251101 (優先嘗試) 2. glm/glm-4.7 (配額耗盡時回退) 3. minimax/MiniMax-M2.1 (再耗盡時繼續回退)隨后在ANTHROPIC_DEFAULT_SONNET_MODEL中填premium-coding即可讓 Claude Code 的 sonnet 別名走這條自動回退鏈詳見 gitbook/content/en/features/combos.md。這正是 9Router 集成方案相對直連 Anthropic 的核心價值單個別名背后可以掛一整條永不中斷的提供商鏈。使用示例通過別名調用模型# 使用 Opus 模型 claude --model opus Explain quantum computing # 使用 Sonnet 模型 claude --model sonnet Write a Python function # 使用 Haiku 模型 claude --model haiku Quick code review使用完整模型名claude --model cc/claude-opus-4-5-20251101 Your prompt here兩種寫法等價別名會被環境變量展開為對應的完整模型 ID最終都解析為cc/...形式的 9Router 模型。配置文件方式編輯~/.claude/settings.json環境變量并非唯一途徑。Claude Code 的配置集中在~/.claude/settings.json你可以手動編輯{ baseUrl: http://localhost:20128/v1, defaultModel: sonnet }從 9Router 的實現看settings.json實際使用的是env字段結構。Web 端寫入配置時生成的完整內容形如見 src/app/(dashboard)/dashboard/cli-tools/components/ClaudeToolCard.js/dashboard/cli-tools/components/ClaudeToolCard.js#L236-L255) 中getManualConfigs的邏輯{ hasCompletedOnboarding: true, env: { ANTHROPIC_BASE_URL: http://localhost:20128/v1, ANTHROPIC_AUTH_TOKEN: sk_9router, ANTHROPIC_DEFAULT_OPUS_MODEL: cc/claude-opus-5, ANTHROPIC_DEFAULT_SONNET_MODEL: cc/claude-sonnet-5, ANTHROPIC_DEFAULT_HAIKU_MODEL: cc/claude-haiku-4-5-20251001 } }除上述變量外后端還會維護幾個對 Claude Code 有用的鍵見 src/app/api/cli-tools/claude-settings/route.js 的 Reset 鍵清單ANTHROPIC_AUTH_TOKEN9Router 的 API Key本地部署時默認為sk_9routerAPI_TIMEOUT_MS請求超時時間毫秒CLAUDE_CODE_MAX_CONTEXT_TOKENS上下文窗口上限。其中CLAUDE_CODE_MAX_CONTEXT_TOKENS在儀表盤里以Context window下拉框提供預設值ClaudeToolCard.js/dashboard/cli-tools/components/ClaudeToolCard.js#L14-L20)Default不寫入沿用模型原生窗口、200K、300K、500K、1M。注意 UI 顯示的是取整數字實際寫入值會被下調 2K如 200K 寫為198000目的是安全地保持在模型上下文硬上限之下。兩個文件的分工settings.json與~/.claude.json一個容易踩坑的細節Claude Code 的環境變量配置在~/.claude/settings.json而MCP 服務器配置在~/.claude.json位于主目錄注意沒有.claude目錄前綴。9Router 在注入 Exa MCP為路由后的非 Claude 模型提供聯網搜索能力時就是寫入~/.claude.json的mcpServers字段見 src/app/api/cli-tools/claude-settings/route.js。若你手動配置時把 MCP 寫錯了文件Claude Code 不會讀取且該文件還可能因為 JSON 末尾逗號等問題解析失敗——9Router 在讀取時專門做了容錯處理去除尾隨逗號、解析失敗視為無配置。儀表盤一鍵配置CLI Tools除手工編輯外9Router Web 儀表盤的CLI Tools頁面提供針對 Claude Code 的可視化配置對應 ClaudeToolCard.js/dashboard/cli-tools/components/ClaudeToolCard.js)。核心能力包括Select Endpoint選擇本地、Tunnel 公網地址、Tailscale 或云端端點API Key從賬戶已保存的 Key 中選取本地部署無 Key 時自動回退sk_9routerModel Mappings分別為 opus / sonnet / haiku / fable 別名選擇目標模型可手動輸入provider/model-id或從模型選擇彈窗挑選Context window預設 200K / 300K / 500K / 1M或保持 DefaultFilter naming攔截 Claude Code 的對話主題命名請求并在本地返回假響應節省 API Token對應ccFilterNaming設置項Exa MCP向~/.claude.json注入 Exa MCP使路由到的非 Claude 模型也具備聯網搜索能力開啟后需重啟 Claude CodeApply / Reset / Manual Config一鍵寫入配置、一鍵清除 9Router 注入的環境變量、或復制手動配置 JSON。后端對應的 API 在 src/app/api/cli-tools/claude-settings/route.js其GET會檢測 Claude CLI 是否安裝which claude/where claude并讀取當前配置POST負責合并寫入env并歸一化/v1后綴DELETE則按RESET_ENV_KEYS清單清除 9Router 注入的變量。9Router 自帶的 TUI 客戶端同樣提供這套配置入口見 cli/src/cli/menus/cliTools.js方便純終端環境下完成配置。常見問題排查連接異常Connection Issues若出現連接錯誤按順序排查確認 9Router 正在運行curl http://localhost:20128/health能返回健康響應說明服務正常檢查環境變量是否配置正確echo $ANTHROPIC_BASE_URL確認值以/v1結尾確認防火墻未攔截20128端口本地回環地址一般無礙但若 9Router 部署在遠端服務器需放行對應端口。模型不存在Model Not Found如果出現 model not found 錯誤核對模型名稱與 9Router 配置一致cc/...前綴與模型 ID 必須與 9Router 注冊的命名空間匹配可參考 src/shared/constants/cliTools.js 的默認值檢查儀表盤中提供商連接是否為活躍狀態只有isActive且測試狀態為active/success的連接才會參與模型映射見 cliTools.js 的getProviderModelsForMapping確認模型在已連接的上游提供商中真實可用若上游未開通或已下線該模型9Router 無法代為提供。協議層面的提示從源碼結構看cc命名空間對應的 provider 注冊項帶有deprecated: true與風險提示標記open-sse/providers/registry/claude.js說明官方 Claude 直連通道存在風險提示建議優先使用儀表盤中狀態正常的活躍提供商來承接路由流量。使用云端端點若不想在本地運行 9Router可直接使用云端端點export ANTHROPIC_BASE_URLhttps://9router.com使用前需在 9Router 云端儀表盤完成兩件事生成并配置 API Key云端模式下ANTHROPIC_AUTH_TOKEN必須使用儀表盤簽發的真實 Key本地模式的sk_9router僅限本機回環使用確認云端賬戶已連接可用的上游提供商路由依賴的是云端側維護的提供商連接。配置完成后同一套claude --model sonnet ...命令即可在云端路由下工作無需任何客戶端改動。總結把 Claude Code 接入 9Router 的本質是把ANTHROPIC_BASE_URL指向 9Router 的 Anthropic 兼容端點并用ANTHROPIC_DEFAULT_*_MODEL系列變量把opus/sonnet/haiku別名映射到cc/命名空間下的模型 ID 或 Combo 回退鏈。無論你選擇 shell 環境變量、手動編輯~/.claude/settings.json還是直接使用 9Router 儀表盤的 CLI Tools 一鍵配置最終生效的都是同一套環境變量體系配合cc/前綴的多提供商路由、Combo 自動回退與上下文窗口調優即可在保留 Claude Code 原生日志、工具調用與終端交互體驗的同時獲得更靈活的模型選擇與更強的可用性保障。【免費下載鏈接】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),僅供參考