你的 Claude Code 月度配额用完了。你的 Cursor 也到 limit 了。你的 GitHub Copilot 也超额了。
三个订阅,每个月大几十刀,但你写代码的欲望从来不会因为配额用完就停下来。
9Router 解决的就是这个尴尬场景:把你的所有 AI 编程工具统一接到一个本地路由层,路由层后面挂着 40+ 提供商、100+ 模型,按「订阅 → 便宜 → 免费」三层自动 fallback,配上 RTK token 压缩技术,保证你永远不会因为配额或限流而中断编码。
11,276 星,一周涨 4,798,58 个版本,最新提交在 23 分钟前——这个项目在疯狂迭代。
工作原理
你的 CLI 工具(Claude Code / Codex / Cursor / Cline...)
↓ http://localhost:20128/v1
9Router(智能路由层)
• RTK Token 压缩(减少 tool_result 内容)
• 格式转换(OpenAI ↔ Claude)
• 配额追踪
├──→ [Tier 1: 订阅] Claude Code, Codex, GitHub Copilot
│ 配额用完 ↓
├──→ [Tier 2: 便宜] GLM ($0.6/1M), MiniMax ($0.2/1M)
│ 预算用完 ↓
└──→ [Tier 3: 免费] Kiro, OpenCode Free, Vertex ($300 额度)
核心思路就一个:你不用手动切换模型,路由层自动帮你选最合适的。
RTK:省 20-40% token 的黑魔法
这是 9Router 最有意思的部分。
用 AI 编程工具时,大量 token 其实烧在了 tool_result 上——比如 git diff、grep、ls 这些命令的输出。这些输出往往包含大量重复或冗余信息,但模型每次都要完整接收。
RTK(Result Token Kompressor,我猜的)自动压缩这些 tool_result 内容,减少 20-40% 的 token 消耗。不是简单的截断或摘要,而是有策略的压缩——保留关键信息,去掉冗余部分。
如果你每天用 Claude Code 几个小时,这个节省是实打实的。
安装
npm install -g 9router
9router
然后在你的 AI 工具里把 API 地址改成 http://localhost:20128/v1。完事。
也支持 Docker:
docker run -p 20128:20128 ghcr.io/decolua/9router
配额管理
9Router 内置了配额追踪。它会监控你每个订阅的用量,在配额快用完之前自动切换。还能设置多账号轮询——如果你有多个 Claude Code 账号,它可以在账号之间 round-robin。
这个功能对团队尤其有用。不用手动盯着配额表了,路由层自动处理。
几个需要注意的点
兼容性。 9Router 走的是 OpenAI 兼容接口(/v1/chat/completions),所以理论上任何支持 OpenAI 格式的工具都能接。但它也做了 Claude 格式转换,所以 Claude 系列工具也没问题。
免费模型的可用性。 Tier 3 的免费模型(Kiro、OpenCode Free 等)的可用性和稳定性取决于提供商。它们适合做 fallback,但不适合做主力。毕竟免费的东西,你懂的。
延迟。 多一层路由,理论上多一点点延迟。但在本地跑的情况下,这个开销基本可以忽略。
和 LiteLLM 比
LiteLLM 也是做模型路由的,但 9Router 有几个差异化:
- 专注 coding agent 场景,不是通用的 LLM 代理
- RTK token 压缩是 LiteLLM 没有的
- 配额追踪 + 自动 fallback 对 coding 场景做了优化
- 58 个版本的迭代速度说明开发团队非常活跃
我的看法
在 AI 编程工具订阅费越来越贵的趋势下,9Router 切中了一个真实的痛点。不是每个人都愿意每个月花 $200+ 在各个 AI 工具上,也不是每个人的需求都配得上旗舰模型的定价。
三层 fallback 的设计很务实——主力用最好的,配额不够了自动降级到便宜模型,便宜模型也用完了还有免费的兜底。不是「免费替代一切」那种不切实际的承诺,而是「在预算内做到最好」的务实方案。
如果你同时用多个 AI 编程工具,或者经常被配额限制打断工作流,9Router 值得一试。
主要来源: