2026 年开年,一个名为 9Router 的开源项目在 GitHub 上急速蹿升,短短数月从零飙到 16,500+ Stars。它的定位听起来有些古怪——一个面向 AI 编程工具的本地路由网关。但它精准地解决了一个每天都在折磨 AI 重度用户的痛点:当 Claude Code 弹出了"try again in 21 hours"、当 Codex 的配额耗尽、当手忙脚乱地在多个模型之间来回切换 API Key 时,9Router 提供了一剂近乎优雅的解药。
9Router 是什么
根据官方文档和 GitHub 仓库的描述,9Router 是一个基于 Next.js 构建的本地 AI 路由网关,遵循 MIT 开源协议。它的核心定位是 AI 编程工具的中间代理层——在 Claude Code、Cursor、Codex、Cline、Copilot 等 10 余种主流编程工具与 60 多家 AI 提供商之间充当"总机"。
安装方式极其简单。官方文档给出的命令只有两步:
npm install -g 9router
9router随后在浏览器中打开 http://localhost:20128,即可进入仪表盘。所有编程工具只需指向同一个端点 http://localhost:20128/v1,9Router 负责将请求翻译成目标提供商的私有格式、转发至适当模型、并将响应流转换回工具能够理解的格式。
架构文档显示,9Router 的核心运行在 src/sse/ 和 open-sse/ 两个目录下。src/app/api/v1/* 实现 OpenAI 兼容接口,open-sse/executors/*是各提供商的执行适配器,open-sse/translator/* 负责 OpenAI ↔ Claude ↔ Gemini ↔ Kiro ↔ Cursor 之间的格式互转。持久化层使用 LowDB,状态文件保存在 ~/.9router/db.json,用量数据则写入 ~/.9router/usage.json。
三层自动回退:从订阅到免费的无缝衔接
9Router 最核心的能力是"智能三层回退"。根据官方 README 的描述,其路由优先级如下:
第一层 - 订阅层:优先消耗已付费的订阅配额,包括 Claude Code($20-200/月)、OpenAI Codex($20-200/月)、GitHub Copilot($10-19/月)和 Cursor IDE($20/月)。
第二层 - 低价层:订阅配额耗尽后,自动切换到廉价按量计费的提供商,如 GLM($0.60/百万 tokens)和 MiniMax($0.20/百万 tokens)。后者据官方宣称是市面上最便宜的选项之一,支持百万 tokens 上下文窗口。
第三层 - 免费层:兜底保障。目前活跃的免费提供商包括 Kiro AI(免费无限制使用 Claude Sonnet 4.5 和 GLM-5)、OpenCode Free(无需任何认证)和 Google Vertex AI(新账户 $300 免费额度)。
回退切换是自动完成的。用户无需修改 IDE 或 CLI 工具的任何配置,只需要在 9Router 仪表盘中设置好一个"Combo"(组合),例如:
Combo: "my-coding-stack"
1. cc/claude-opus-4-6 (订阅)
2. glm/glm-4.7 (低价备份,\$0.6/1M)
3. kr/claude-sonnet-4.5 (免费兜底)当第一层配额耗尽或出现错误时,9Router 自动推进到下一个模型。据多个第三方评测的体验描述,这一过程感知不到间隙,"没有配额限制,你不会在半夜遇到 rate-limit 错误"。
Combo 还支持更复杂的策略。有评测提到,9Router 内置了 round-robin 和 sticky-round-robin 两种分发策略。多账户场景下,可以在同一个提供商下挂接多个账户,9Router 轮询使用它们,从而实现"准无限"吞吐——一个账户触发频率限制后自动切换到下一个。
RTK Token 节省器和 Caveman 模式:花钱买不到的省钱方式
根据 GitHub 仓库的数据,9Router 集成了两个独立开源项目的能力来压缩 token 消耗。
RTK(Reverse Token Killer),官方称通过压缩 git diff、grep、find、ls、tree 等工具输出的冗长结果来减少输入 token。这些工具输出通常占 prompt 预算的 30-50%。RTK 扫描每个 tool_result 的前 1KB,自动匹配对应的过滤器进行无损压缩。官方给出的示例数据是:一次请求从 47K tokens 压缩到 28K tokens,节省约 40%,而模型接收到的上下文信息和返回的结果不变。
RTK 的过滤器清单包括 git-diff、git-status、grep、find、ls、tree、dedup-log、smart-truncate、read-numbered、search-list 等 10 种。官方文档特别强调了两点安全设计:如果过滤器失败或抛异常,RTK 会静默保留原始内容;如果过滤后的数据反而变大,它也自动回退——请求永远不会因为 RTK 而出错。
Caveman 模式则作用于输出端。它向系统提示词中注入"穴居人风格"的简短指令(比如"be concise, no markdown"等),迫使 LLM 回复保持技术实质但极度精简。官方称最高可节省 65% 的输出 tokens,支持 5 级强度调节。它的灵感来源于独立的 Caveman 项目(GitHub 52K Stars),9Router 将其以集成模式纳入。
据第三方评测提供的粗略估算,如果一位用户每月消耗 1 亿 tokens,RTK 和 Caveman 组合使用,可以节省 20-65% 的 token 开销。考虑到部分免费提供商是真正零成本的(如 Kiro AI、OpenCode Free),这意味着重度用户可以将月成本从 $40-50 降低到接近于零。
格式翻译:统一生态碎片
9Router 不需要编程工具改变自己的 API 方言。Claude Code 原生使用 Anthropic 格式,Cursor 使用 OpenAI 格式,Copilot 有自己的协议——但在 9Router 背后,这一切被统一为 OpenAI 兼容接口。
架构文档揭示了格式翻译的细节。它将 AI 提供商的 API 格式分为四大源格式:openai、openai-responses、claude、gemini。翻译器位于 open-sse/translator/ 目录下,分 request 和 response 两个方向,在运行时根据请求负载结构和目标提供商标识动态选择。
这意味着用户可以组合平时不可能搭配的工具与模型:例如在 Cursor 中使用 Anthropic 的 Claude 模型、在 Claude Code 中使用 Google 的 Gemini 模型、在 Copilot 的后端使用 GLM 或 MiniMax。这种跨生态互操作能力是 9Router 相比 OpenRouter(云服务)和 LiteLLM(企业代理)的核心差异之一,它天然适配 AI 编程工具的 CLI/IDE 场景。
架构细节与部署选项
从架构文档中可以看出,9Router 的工程结构并不复杂:
兼容 API 层:
src/app/api/v1/chat/completions/route.js、/v1/messages、/v1/responses、/v1/models管理 API:
/api/providers*、/api/oauth/*、/api/keys*、/api/combos*、/api/usage/*路由与执行核心:
src/sse/和open-sse/持久化:
src/lib/localDb.js(状态)+src/lib/usageDb.js(用量)
OAuth 提供商的 token 刷新在请求路径中异步完成:当 chatCore.js 收到 401/403 响应时,执行器调用 refreshCredentials(),重试请求。此过程对用户透明。
部署方式非常灵活。官方推荐本地 npm 安装(仅需 Node.js 18+),也提供了 Docker 镜像(支持 amd64 + arm64),可部署到 VPS 或通过 Cloudflare Workers 暴露到边缘网络。团队版场景中,启用云同步功能后,配置信息通过加密通道在设备之间同步。
关于安全边界,架构文档明确标注了几处需要注意的配置:JWT secret 用于仪表盘会话签名;INITIAL_PASSWORD 的默认值是 123456,生产部署必须修改;API Key 的 HMAC secret 用于本地密钥签名;提供商密钥存储在本地 SQLite 中。对于公网暴露的实例,需要设置 REQUIRE_API_KEY=true。
局限与风险
免费提供商的稳定性是最大的不可控因素。据官方文档在 GitHub 上的说明,iFlow 和 Qwen 的免费层级已经在 2026 年先后被取消,Gemini CLI 的免费 OAuth 层也被 Alibaba 于 2026 年 4 月 15 日终止。第三个免费节点的下线意味着第三方免费模型随时可能消失。尽管 9Router 通过支持 60+ 提供商来对冲这一风险,但这种对冲并不能保证可用性。
延迟开销也被多个评测提及。路由转发、格式翻译、token 压缩这三道工序必然在请求路径上增加额外延迟。对于追求极限响应速度的场景(如 Cursor 的实时补全),这种间接层的存在并不是零成本的。有评测指出,免费模型的响应速度比付费订阅慢 2-3 倍,"但比被完全卡住要好"。
技术门槛不能忽视。用户需要安装 Node.js 18+、熟悉 npm 命令、理解 OAuth 流程和 API Key 配置。对于不熟悉命令行的用户来说,这并非开箱即用的体验。此外,仪表盘中的"成本"显示容易引起误解——它展示的是"假设使用付费 API 的等价成本",而非实际扣费——官方在 FAQ 中花了大量篇幅解释这一设计。
MITM bridge(用于拦截 Copilot 和 Antigravity 等 IDE 订阅工具流量)的功能实现较为复杂:需要自签名证书、sudo 权限、证书信任安装。架构文档将其标注为"properly hairy"。
发展脉络趋势
从 GitHub 的提交历史来看,9Router 首次发布在 npm 的时间是 2026 年 1 月初(v0.2.43),距今不足半年。v0.2.52(2026-02-02)到 v0.3.34(2026-03-06)之间约一个月实现了从 2K 到 3K Stars 的增长,而此后迅速突破 16K。Trendshift 数据显示其在 2026 年 5 月 GitHub Trending 排到全局第 5 位,单日新增 Stars 超过 1,000。
从 9Router 的走红可以观察到一个趋势:AI 编程工具的生态正在经历"配置碎片化→统一网关"的过程。OpenRouter 此前通过云端 SaaS 提供类似能力(仅 API key,200+ 模型),但 9Router 选择本地部署、开源免费、深度适配 CLI/IDE 的路线,迅速在下沉市场获得认可。它和 LiteLLM(企业级 LLM 代理)以及 OpenRouter(云端统一 API 网关)构成了三个不同的生态位。
总结
9Router 解决了一个真实存在且日益严重的问题——AI 编程工具的生态碎片化。它的三层自动回退、RTK token 压缩、格式翻译这三大能力叠加在一起,使得调用多个 AI 提供商的门槛从"手动切换 N 个 API Key"降低为"设置一次,忘掉它"。
但它不是一个完美工具。免费提供商的存续风险、路由带来的延迟开销、部署的技术门槛,以及 MITM bridge 的复杂实现,都是实际使用中需要接受的妥协。
如果你是一位每周都碰到 rate-limit 弹窗的 AI 编程重度用户,9Router 大概只需要半小时的安装时间就能让你"忘记配额限制"——至少在免费提供商倒闭之前是如此。
参考文献
[L1] 9Router 官方 GitHub 仓库 — decolua/9router (https://github.com/decolua/9router)
[L1] 9Router 官方网站 (https://9router.com/)
[L1] 9Router 架构文档 — docs/ARCHITECTURE.md (https://github.com/decolua/9router/blob/master/docs/ARCHITECTURE.md)
[L2] 9Router Review on DEV Community (https://dev.to/mihailoff/9router-route-claude-code-cursor-or-copilot-through-whichever-free-tier-youve-got-4m61)
夜雨聆风