OmniRoute:把 9Router 分叉成 290+ 供应商的免费 AI 网关
OmniRoute 是一个开源 AI 网关——单个 OpenAI 兼容端点,可在 290 多个 LLM 供应商之间自动故障转移,配有压缩管线和桌面/PWA 仪表盘。它最初是 9Router 的 TypeScript 分叉。
- ⭐ 33037
- TypeScript
- Node.js
- Next.js
- React
- Electron
- MIT
- 更新于 2026-07-29
9Router:带 Token Saver 的智能 LLM 代理 • Orca:并行运行 Claude Code、Codex 与 Cursor 的智能体开发环境(ADE)

OmniRoute 是什么? #
OmniRoute 是一个开源 AI 网关:安装一次,把任意 OpenAI 兼容工具指向它的本地端点(http://localhost:20128/v1),它就会替你处理多个 LLM 供应商之间的杂事——一旦某个供应商触发限速、配额用尽或密钥失效,立刻自动切换到另一个。
🔗 GitHub:https://github.com/diegosouzapw/OmniRoute 🌐 官网:https://omniroute.online
先说明一点:OmniRoute 最初是 9Router(rtk-ai/rtk,dibi8 已经报道过)的 TypeScript 分叉。两个项目后来走向了不同方向——OmniRoute 增加了大得多的供应商目录、多模态 API,以及一套打磨过的桌面/PWA 仪表盘;而 9Router/RTK 自己也在持续增长,截至 2026 年 7 月底,它的 star 数(7.36 万+)实际上超过了 OmniRoute(3.3 万+)。在假设"谁是谁的升级版"之前,这一点值得先弄清楚。
首次安装即零配置可用 #
全新安装后会立即响应请求,不需要任何 API key,靠的是预先接入"auto"路由模式的免密钥后端:
npm i -g omniroute
curl http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
故障转移是怎么工作的 #
OmniRoute 的路由架在你已有的供应商账号之上,形成一个四层级联——优先尝试最便宜/最可用的层级,只有在必要时才降级:
| 层级 | 来源 | 何时降级 |
|---|---|---|
| 1. 订阅 | 你已经付费的 Claude Code、Codex、Copilot 计划 | 配额用尽 |
| 2. API Key | DeepSeek、Groq、xAI 等 | 触及预算阈值 |
| 3. 低价 | GLM(约 0.5 美元)、MiniMax(约 0.2 美元) | 触及预算阈值 |
| 4. 免费 | Kiro、Qoder、Pollinations 等免费层后端 | 始终作为最后兜底 |
核心功能 #
| 功能 | 说明 |
|---|---|
| 290+ 供应商 | 单一端点即可覆盖庞大的供应商目录(依据项目自己发布的供应商列表,并非独立核实) |
| 压缩管线 | 最多 12 个引擎(RTK、Caveman、LLMLingua-2、GCF、OmniGlyph)可在请求到达模型前压缩 prompt/工具输出 |
| MCP + A2A | 支持 Model Context Protocol(stdio/HTTP/SSE)和 Agent2Agent v0.3(JSON-RPC 2.0 + SSE) |
| 本地优先存储 | 基于 SQLite(better-sqlite3,WAL)存储,密钥用 AES-256-GCM 加密 |
| TLS 隐匿路由 | 通过 wreq-js 实现 JA3/JA4 TLS 指纹伪装,用于在网络限制较严的环境下访问供应商 |
| 多种运行形态 | CLI/服务器(Node.js)、Electron 桌面应用、通过 Termux 的安卓版,以及浏览器 PWA |
| 实时分析 | 仪表盘追踪每个供应商的用量、配额、节省额度和 p95 延迟 |

技术栈(依据项目自述) #
- 运行时:Node.js 22.x/24.x LTS
- 语言:TypeScript(项目声称核心代码 100% TypeScript,自 v2.0 起核心零
any) - 框架:Next.js 16 + React 19 + Tailwind CSS 4
- 数据库:better-sqlite3(WAL)+ LowDB 处理遗留 JSON 数据,横跨 95 个业务模块
- 鉴权:OAuth 2.0(PKCE)、JWT、API key、MCP 范围化鉴权
- 测试:Node.js 测试运行器 + Vitest —— 项目声称跨 3300+ 个文件有 25000+ 条测试用例
安装方式 #
npm i -g omniroute
也支持 Docker:
docker pull diegosouzapw/omniroute
桌面版(Electron)、安卓版(Termux)和 PWA 构建方式详见项目 GitHub 发布页和官网。
兼容工具 #
任何 OpenAI 兼容客户端都能用,只需指向 OmniRoute 的本地端点。项目明确提供了 30 多种工具的接入文档,包括:
Claude Code · Codex CLI · Cursor CLI · GitHub Copilot CLI · Cline · Kilo Code · Roo Code · Continue · Aider · OpenCode · Factory Droid · Goose · Hermes Agent · Grok Build

OmniRoute 与 9Router 对比 #
| 维度 | OmniRoute | 9Router (RTK) |
|---|---|---|
| 关系 | 9Router 的分叉 | 原始项目 |
| GitHub star 数(2026年7月底) | 3.3 万+ | 7.36 万+ |
| 界面 | Electron 桌面应用 + PWA 仪表盘 | 参见 dibi8 的9Router 文章 |
| 压缩引擎 | RTK + Caveman + LLMLingua-2 + GCF + OmniGlyph | RTK(源头引擎) |
| 协议 | MCP + A2A | 参见 9Router 自己的文档 |
| 协议/License | MIT | MIT |
使用场景 #
1. 不再因限速而中断工作 #
Claude Code 或 Codex 在会话中途触发配额限制时,四层故障转移会自动接管,而不是让请求直接失败。
2. 不用手动管理一堆免费层仪表盘 #
不用手动追踪十几个供应商各自的免费额度,把一个端点指向 OmniRoute,让它自动路由到还有余额的免费后端。
3. 降低高工具调用量 agent 会话的 token 花费 #
压缩管线位于你的 agent 和模型之间,目的是在大量工具输出计费之前先削减其 token 体积。
相关仓库 #
| 仓库 | 用途 |
|---|---|
| 9Router (RTK) | OmniRoute 分叉的原始项目——现在是两者中更大的一个 |
| Orca | 解决的是不同问题(并行智能体编排),但同样是"用一个控制点管理多个AI工具"的思路 |
相关文章 #
- 9Router:带 Token Saver 的智能 LLM 代理 —— OmniRoute 分叉的原始项目,现在体量更大
- Orca:并行运行 Claude Code、Codex 与 Cursor 的智能体开发环境(ADE) —— “一个控制层管理多个AI工具"的另一种思路
结语 #
OmniRoute 把它从 9Router 继承来的"一个端点、多个供应商"思路,叠加了更大的供应商目录、压缩管线、MCP/A2A 支持,以及打磨过的 Electron/PWA 仪表盘。它增长很快——截至 2026 年 7 月底,两周内 star 数从约 1.77 万涨到 3.3 万以上——尽管它的母项目 RTK 依然是两者中体量更大的那个。如果你想要的是仪表盘驱动的网关而不是 9Router 更精简的核心,值得一试。
最适合谁:想要在故障转移路由基础上再获得可视化仪表盘和更广供应商覆盖、且不介意项目更重、营销痕迹更明显的开发者。
GitHub:https://github.com/diegosouzapw/OmniRoute
自建部署推荐基础设施 #
如果你想把 OmniRoute 的服务端组件跑在常驻主机上而不是笔记本上:
- DigitalOcean —— 覆盖 14 个以上全球区域,60 天 200 美元免费额度,是搭建常驻网关端点的常见选择。
- HTStack —— 香港 VPS,从中国大陆访问延迟低。这正是 dibi8.com 所在的机房,经过生产环境实战验证。
以上为联盟链接——不会让你多花一分钱,但能帮助 dibi8.com 持续运营。
最后更新:2026-07-29
💬 留言讨论