GitHub - diegosouzapw/OmniRoute: 永不停止编码。免费 AI 网关:单一端点,231+ 个 providers(50+ 个免费)

🚀 OmniRoute --- 免费 AI 网关

永不中断编程。通过单一端点连接 236 家提供商------50+ 免费------让每款 AI 工具畅通无阻。

将 Claude Code、Codex、Cursor、Cline、Copilot 和 Antigravity 接入免费的 Claude / GPT / Gemini。自动故障转移。

RTK + Caveman 压缩节省 15--95% 的 token。永不触及限额。

每月约 ~1.6B 已记录免费 token ------首月含注册积分最高可达 ~2.1B ------汇聚自各免费套餐,加上一长串永久免费、无上限的提供商,以及上述压缩技术让每一个 token 都用得更远。(计算方式 →

💬 加入社区

问题、提供商技巧、路线图与支持 → Discord · Telegram · WhatsApp 🌍 全球 / 🇧🇷 巴西

[🚀 快速开始](#🚀 快速开始) • [🎯 组合](#🎯 组合) • [🌐 提供商](#🌐 提供商) • [🔌 CLI & MCP](#🔌 CLI & MCP) • [🗜️ 压缩](#🗜️ 压缩) • 🌍 官网

[💥 我们的承诺](#💥 我们的承诺) • [🤔 为什么选择我们](#🤔 为什么选择我们) • [🏆 核心优势](#🏆 核心优势) • [🤖 兼容的 CLI](#🤖 兼容的 CLI) • [🖥️ 运行环境](#🖥️ 运行环境) • [🔒 隐私保护](#🔒 隐私保护) • [🎬 实际效果](#🎬 实际效果) • [📚 深入了解](#📚 深入了解) • [📧 联系支持](#📧 联系支持)

🌐 支持 41+ 种语言

| 🇺🇸 | 🇧🇷 | 🇪🇸 | 🇫🇷 | 🇮🇹 | 🇷🇺 | 🇨🇳 | 🇹🇼 | 🇩🇪 | 🇯🇵 | 🇰🇷 | 🇮🇳 |

| 🇹🇭 | 🇻🇳 | 🇮🇩 | 🇲🇾 | 🇵🇭 | 🇸🇦 | 🇮🇱 | 🇦🇿 | 🇺🇦 | 🇵🇱 | 🇨🇿 |

| 🇳🇱 | 🇧🇬 | 🇩🇰 | 🇫🇮 | 🇳🇴 | 🇸🇪 | 🇭🇺 | 🇷🇴 | 🇸🇰 | 🇵🇹 | |

💰 每月约 ~1.6B 免费 Token

手动叠加各家免费套餐十分繁琐------数十个 SDK、数十种速率限制,根本搞不清自己到底还有多少配额。OmniRoute 将 40+ 提供商池 / 500+ 模型已记录 免费套餐汇总成一个真实的数字,并在仪表盘(/dashboard/free-tiers)上实时展示。

  • 每月约 ~1.6B 免费 token (稳定)------首月含注册积分最高可达 ~2.1B

  • 去重且真实 ------每个共享免费池我们只计算一次,因此这个数字不像某些竞品声称的数十亿那样靠速率上限虚增。(若将所有速率限制按 24/7 计算,可读出约 ~10B;但我们不发布那种数字。)

  • 加上无法精确计量的部分 ------永久免费、无 token 上限的提供商(SiliconFlow、Z.AI GLM-Flash、Kilo、OpenCode Zen......)以及 $10 OpenRouter 充值 可解锁 +2400 万/月,这两部分均单独列出,绝不混入主数字。

  • 提供按模型细分 、当月已使用 / 剩余 的实时数据,以及每家提供商透明的条款标记

预览效果图------待 /dashboard/free-tiers 页面验证通过后将替换为真实截图。完整计算方法(池去重、积分套餐、提供商条款):docs/reference/FREE_TIERS.md

💥 我们的承诺

单一端点。236 家提供商。 永不中断构建------让 OmniRoute 自动挑选最便宜且可用的那一个。

| 🚫 永不触及限额 在毫秒内跨 236 家提供商自动故障转移。配额耗尽?下一家提供商立即接管------零宕机。 | 💸 最高节省 95% token RTK + Caveman 叠加压缩,对符合条件的 token 削减 15--95%(工具密集型会话平均约 89%)。 | 🆓 零成本起步 50+ 家提供商提供免费套餐,11 家永久免费(Kiro、Qoder、Pollinations、LongCat......)。无需绑卡。 |

| 🔌 每款工具均可使用 16+ 款编程 Agent------Claude Code、Codex、Cursor、Cline、Copilot、Antigravity------通过一套配置全部接入。 | 🧩 单一端点 OpenAI ↔ Claude ↔ Gemini ↔ Responses API 互译。将任意工具指向 /v1,即可直接使用。 | 🛡️ 生产级可靠性 熔断器、TLS 隐身、MCP(87 个工具)、A2A、记忆、护栏、评估。14,965 个测试用例。 |

🤔 为什么选择 OmniRoute?

不再同时管理 10 个仪表盘、失效的 API 密钥和意外账单。

| ❌ 日常痛点 | ✅ OmniRoute 的解决方案 |

| 📉 订阅配额每月到期前没用完就浪费了 | 最大化订阅价值------追踪配额,在重置前用尽每一个 token |

| 🛑 速率限制在编码途中打断你 | 四级自动故障转移------订阅 → API → 低价 → 免费,毫秒级切换 |

| 🔥 工具输出(git diffgrep、日志)消耗大量 token | RTK + Caveman 压缩------每次请求节省 15--95% 符合条件的 token |

| 💸 昂贵的 API(每家提供商每月 $20--50) | 成本优化路由------自动路由至最便宜的可用模型 |

| 🧰 每款 AI 工具都需要单独配置 | 一个端点,所有工具,一个仪表盘 |

| 🌍 所在国家封锁了 AI | 三级代理 + TLS 指纹隐身------在任何地方使用 AI |

复制代码
┌──────────────────────────────────────────────────────────┐ │ Your IDE / CLI (Claude Code, Cursor, Cline...) │ └─────────────────────────┬──────────────────────────────────┘ │ http://localhost:20128/v1 ▼ ┌──────────────────────────────────────────────────────────┐ │ OmniRoute --- Smart Router │ │ RTK + Caveman compression · 17 routing strategies │ │ Circuit breakers · TLS stealth · MCP · A2A · Guardrails │ └─────────────────────────┬──────────────────────────────────┘ ┌─────────────┬────┴────────┬─────────────┐ ▼ Tier 1 ▼ Tier 2 ▼ Tier 3 ▼ Tier 4 SUBSCRIPTION API KEY CHEAP FREE Claude Code, DeepSeek, GLM $0.5, Kiro, Qoder, Codex, Copilot Groq, xAI MiniMax $0.2 Pollinations quota out? ───▶ budget hit? ─▶ budget hit? ─▶ always on

🎯 组合------旗舰功能

组合 是 OmniRoute 自动 跨模型路由的调用链。配额耗尽、提供商故障或成本飙升时,组合会静默切换至下一个模型。这正是 OmniRoute 坚不可摧的原因。 🛡️

⚡ 零配置------直接使用 auto

无需创建组合。将模型设置为 auto(或其变体),OmniRoute 即从你已连接的提供商中构建虚拟组合,并实时打分:

| 模型 ID | 优化目标 |

| auto | 🎯 均衡默认(LKGP------保持上次可用提供商) |

| auto/coding | 🧑‍💻 代码生成质量优先 |

| auto/fast | ⚡ 最低延迟优先 |

| auto/cheap | 💰 每 token 成本最低优先 |

| auto/offline | 🔋 配额 / 速率余量最大优先 |

| auto/smart | 🔭 质量优先 + 10% 探索以发现更优模型 |

🔀 或自建组合------17 种路由策略

| 目标 | 策略 / 组合 |

| 🥇 先耗尽订阅再付费 | priority / fill-first |

| ⚖️ 跨账号均衡负载 | round-robin · weighted · p2c · least-used |

| 💸 始终使用最便宜的可用模型 | cost-optimized · auto/cheap |

| 🧠 在模型间接力传递长上下文 | context-relay · context-optimized |

| 🎲 随机化 / 隐私路由 | random · strict-random |

| 🧬 扇出至多模型评审团 + 裁判综合 | fusion |

| 📊 按剩余配额余量路由 | reset-window · headroom |

| 🤖 让它自己变聪明 | auto(9 因子评分)· lkgp · reset-aware |

Auto-Combo 引擎对每个候选项按 9 个因子 打分(健康度、配额、成本、延迟、成功率、新鲜度......)------详见 docs/routing/AUTO-COMBO.md

🧱 弹性能力内置三个独立层

| 层级 | 作用范围 | 功能说明 |

| 🔌 熔断器 | 整个提供商 | 当上游提供商持续故障时停止请求轰炸;自动探测并恢复 |

| 💤 连接冷却 | 单个账号 / 密钥 | 跳过触发速率限制的密钥,其他密钥继续正常服务 |

| 🎯 模型锁定 | 提供商 + 模型 | 隔离单个配额耗尽的模型,而不是整个连接 |

复制代码
Combo: "always-on" Strategy: priority 1. cc/claude-opus-4-7 ← subscription (use it fully) 2. cx/gpt-5.5 ← second subscription 3. glm/glm-5.1 ← cheap backup ($0.5/1M) 4. kr/claude-sonnet-4.5 ← FREE, unlimited (never fails) Result: 4 layers of fallback = zero downtime

📖 Auto-Combo 引擎 · 弹性指南

🏆 OmniRoute 的核心优势

| 功能 | OmniRoute | 其他路由器 |

| 🌐 提供商数量 | 231 | 20--100 |

| 🆓 免费提供商 | 50+(11 家永久免费) | 1--5 |

| 🔀 路由策略 | 17 种(优先级、加权、成本优化、上下文接力、融合......) | 1--3 种 |

| 🗜️ Token 压缩 | RTK + Caveman 叠加(15--95%) | 无 / 20--40% |

| 🧰 内置 MCP 服务器 | 87 个工具,3 种传输,30 个作用域 | 罕见 |

| 🤝 A2A Agent 协议 | 6 项技能,JSON-RPC 2.0 | 无 |

| 🧠 记忆(FTS5 + 向量) | 支持 | 罕见 |

| 🛡️ 护栏(PII、注入、视觉) | 支持 | 罕见 |

| ☁️ 云端 Agent | Codex、Devin、Jules | 无 |

| 🥷 TLS 指纹隐身 | JA3/JA4 via wreq-js | 无 |

| 🖥️ 多平台支持 | Web · 桌面端 · Termux · PWA | 仅 Web |

| 🌍 国际化 | 42 个语言区域 | 0--4 个 |

📊 与 LiteLLM、OpenRouter 及 Portkey 的详细对比 → docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md

✨ 最新动态

v3.8.20 → v3.8.41 的近期亮点。完整历史记录见 CHANGELOG.md

  • ⚖️ 配额共享路由 ------一种专用组合策略,按可用配额 在账号间均衡负载:赤字轮询调度、带冷却等待队列的每连接 max_concurrent、多窗口用量桶(5 小时 / 7 天 / 按模型)、每(密钥, 模型)上限、会话粘性以保证提示缓存完整性,以及来自上游 token 用量响应头的主动饱和感知。→ 弹性指南

  • 🤖 一键 CLI/Agent 配置 ------专用的 setup-* 命令可将各编程工具配置为通过 OmniRoute 路由(Claude Code、Codex、Cline、Continue、Cursor、Roo Code、Kilo Code、Crush、Goose、Qwen Code、Aider、OpenCode);omniroute launch / omniroute launch-codex 是零配置启动器。→ CLI 集成

  • 🛰️ 远程模式 --- 通过作用域访问令牌(omniroute connect / omniroute contexts / omniroute tokens)从任意机器驱动远程 OmniRoute,另附一个 omniroute login antigravity 辅助工具,可在本机执行 Google "native/desktop" OAuth 并将凭证数据粘贴到远程/VPS 安装环境中(在那里回环重定向不可达)。→ Remote Mode

  • 🧭 更智能的自动路由 --- OpenRouter 风格的 auto/ : 组合(如 auto/coding:fastauto/reasoning:pro)、Fusion 策略(并行将请求扇出至一组模型,再通过裁判进行综合)、任务感知路由 (按任务类型匹配最佳连接)、每请求 X-Route-Model 覆盖、实时 Arena-ELO + models.dev 模型智能、每步账户白名单、Provider 通配符组合步骤、嵌套组合引用执行、粘性加权选择,以及 web_search 感知路由。→ Auto-Combo

  • 🗜️ 可插拔压缩 --- 一条由 9 个可组合引擎 构成的异步流水线,配备 Compression Studios、LLMLingua-2 ONNX 引擎和启发式/SLM 双层 Ultra 、RTK、委托式 Anthropic Context Editing、Output Styles (输出轴调控:简洁散文 / 少代码 / 简洁 CJK)、自适应上下文预算调节器 (仅在需要时按需升级以适配上下文窗口)、每请求 x-omniroute-compression 控制、可选离线评估框架、仪表盘一键 Headroom 代理生命周期管理(支持 Docker sidecar)、合成压缩试验场 (Play 通道 + 含 USD 上限保真度裁决的 A/B Compare)、可选每步保真度门控 (在有损引擎降级 prompt 前将其拒绝)、best-of-N 候选编码器 (GCF 对比 TOON --- 保留更短者,Studio 中提供 A/B 字节/token 对比表)、CCR 范围/grep/统计检索(拉取存储块的精确字节/行切片或摘要,而无需重新展开),以及带命名配置文件 + 活跃配置文件选择器的统一面板。→ Compression

  • 🕵️ 透明 MITM 解密(TPROXY) --- 捕获并翻译来自忽略代理环境变量的 CLI 的流量,配备每 SNI 证书颁发机构和信任存储安装程序。→ MITM/TPROXY

  • 💸 全链路成本遥测 --- 每个端点(包括媒体端点)均返回 X-OmniRoute-* 成本/用量响应头、非 token 成本引擎、缓存命中 X-OmniRoute-Cost-Saved 响应头,以及每密钥 USD 消费配额。→ API Reference

  • 🧠 由你掌控的 Memory --- 可选 int8 向量量化(Qdrant + sqlite-vec),Memory 默认关闭,以及每请求 x-omniroute-no-memory 响应头。→ Memory

  • 🛡️ 安全 --- 覆盖每条 LLM 路由的 prompt 注入防护(由红队套件支撑),以及免费的 DuckDuckGo 兜底网络搜索。→ Guardrails

  • 🤝 更多 Provider 与 Agent --- Cursor Cloud Agent(第 4 个云端 Agent)、CodeBuddy CN(copilot.tencent.com)、Google Flow 视频生成 Provider、新网关 DGridPioneer AI (Fastino Labs)、入站 xAI Grok 翻译器以及带 OAuth 导入令牌流程的 Grok Build (xAI) 、GitHub Copilot Provider 上的 GPT-4 / GPT-4o-mini、多模型 Factory DroidZenMux Free (Session-cookie 免费层)、Alibaba DashScope 文生视频(wan2.7-t2v)、全新 236 Provider 目录(OrcaRouter、Wafer AI、OpenAdapter、dit.ai、TokenRouter......)、Vertex AI 媒体生成(语音/转录/音乐/视频),以及从 CLIProxyAPI 一键导入账户(~/.cli-proxy-api/)。→ Providers

  • ⚡ 本地性能与基础设施 --- 一键启动本地 Redis(omniroute redis up,附仪表盘 Redis 面板)、一键部署 Cloudflare WorkersDeno Deploy 中继并接入代理池,以及可选的 Bifrost Go sidecar,用于卸载最热的中继路径(BIFROST_BASE_URL,超时后自动回退至 TypeScript 路径)------现已新增中继后端选择器(OMNIROUTE_RELAY_BACKEND=ts|bifrost|auto),使 /v1/relay 端点保持稳定接口,同时在内部选择最快的后端。→ Environment

🤖 兼容的 CLI 与编码 Agent

一处配置 --- http://localhost:20128/v1 --- 所有 AI IDE 或 CLI 均可运行于免费及低成本模型之上。

| Claude Code | Codex CLI | Cursor | Copilot | Continue |

| OpenCode | Kilo Code | Droid | OpenClaw | Kiro | Command |

+ 同样兼容 · Cline · Antigravity · Windsurf · AMP · Hermes · Qwen CLI · Roo · Continue · 任何 OpenAI 兼容工具

📖 全部 16+ 工具的逐项配置说明 → docs/reference/CLI-TOOLS.md · 🧩 OpenCode 插件 → @omniroute/opencode-provider

🌐 231 个 AI Provider --- 50+ 免费

开源路由器中最完整的目录:236 个 Provider50+ 含免费层11 个永久免费

🆓 永久免费 --- $0,无需绑卡

| GPT-5、Claude、Gemini 免费 $100 额度 | Kimi-K2、DeepSeek-R1 无限制免费 | GPT-5、Claude、Llama 4 无需密钥 | LongCat-2.0 一次性 1000 万 token(需 KYC)🔑 |

| 50+ 模型 每日 1 万 neurons | 129 个模型 ~40 RPM 免费 | Qwen3 235B 每日 100 万 token |

📖 完整机器可读目录 → docs/reference/PROVIDER_REFERENCE.md

🖥️ OmniRoute 的运行环境 --- 随处皆可

同一套应用,你的机器,你的规则。从全局 npm 安装到通过 Termux 运行在你的手机上。

| 平台 | 安装方式 | 亮点 |

| 📦 npm(全局) | npm install -g omniroute | 一条命令,任意操作系统 |

| 🐳 Docker | docker run ... diegosouzapw/omniroute | 多架构 AMD64 + ARM64 |

| 🖥️ 桌面端(Electron) | npm run electron:build | 原生窗口 + 系统托盘 --- Windows / macOS / Linux |

| 💪 ARM | 原生 arm64 | Raspberry Pi、ARM 服务器、Apple Silicon |

| 📱 Android(Termux) | pkg install nodejs && npx -y omniroute | 在手机上运行,7×24 小时,无需 root |

| 📲 PWA | "添加到主屏幕" | 全屏、离线、可从浏览器安装 |

| 🧩 OpenCode 插件 | @omniroute/opencode-provider | 原生 OpenCode 集成 |

| 🛠️ 从源码构建 | npm install && npm run dev | 自由修改,参与贡献 |

📖 Docker 指南 · 桌面端 · Termux · PWA · OpenCode

🔒 私有 & 本地优先

你的密钥,你的机器,你的数据。OmniRoute 是一个本地代理 --- 它从不回拨至家服务器。

  • 🏠 100% 运行于你的硬件 --- npm、Docker、桌面端或手机。请求路径中不存在任何 OmniRoute 云端节点。

  • 🔐 凭证静态加密 --- API 密钥和 OAuth 令牌以 AES-256-GCM 加密存储。

  • 🚫 默认零遥测 --- 你的 prompt 只会发送给选择的 Provider,不会流向其他任何地方。

  • 🛡️ 加固网关 --- API 密钥作用域、IP 过滤、速率限制、prompt 注入防护、仅回环进程路由。

  • 📜 MIT 许可 & 完全开源 --- 审计每一行代码,永久自托管。

📖 授权 · Guardrails · 合规

🔌 完整 CLI + A2A & MCP

OmniRoute 不只是一个服务器 --- 它是一个拥有 60+ 条命令完整命令行驾驶舱 ,并支持开放 Agent 协议,让 AI Agent 能够自主驱动 OmniRoute。

⌨️ 真正的 CLI(不只是 start)

复制代码
omniroute # serve gateway + dashboard (port 20128) omniroute chat # interactive TUI chat client (slash: /model /combo /skill /memory) omniroute setup # guided first-run wizard omniroute doctor # diagnose providers, ports, native deps

🛰️ 远程模式 --- 本机运行 CLI,OmniRoute 部署在 VPS 上

OmniRoute 部署在服务器上?用同一套 CLI 从你的笔记本驱动它。使用作用域访问令牌登录一次,此后每条命令均指向该远程实例。

复制代码
omniroute connect 192.168.0.15 # password → scoped token, saved as a context omniroute models list # ← runs against the REMOTE server omniroute configure codex # ← picks a remote model, writes a local Codex profile omniroute tokens create --name ci --scope read # mint narrower tokens for other machines omniroute contexts use default # ← switch back to the local server

令牌作用域为 read / write / admin;进程派生路由仅限回环访问。📖 远程模式

providers · oauth · keys · combo · nodes · models · cache · compression · cost · usage · quota · health · resilience · telemetry · logs · audit · mcp · a2a · cloud · memory · skills · eval · tunnel · backup · sync · webhooks · policy · pricing · translator · simulate ...

🤝 接入 Agent --- 让它自主控制 OmniRoute

通过 MCPA2A 暴露 OmniRoute,任何有能力的 Agent 即可获得整个网关的控制权 --- 路由、Provider、组合、缓存、压缩、Memory --- 全部自主完成。

| 协议 | 端点 | 适用场景 |

| 🧰 MCP(stdio) | omniroute --mcp | 接入 Claude Desktop、Cursor 及任意 MCP 客户端 |

| 🌊 MCP(HTTP) | http://localhost:20128/api/mcp/stream | 远程 MCP --- 87 个工具,30 个作用域,完整审计追踪 |

| 📡 MCP(SSE) | http://localhost:20128/api/mcp/sse | 流式 MCP 传输 |

| 🤝 A2A | http://localhost:20128/.well-known/agent.json | Agent 间通信,JSON-RPC 2.0 + SSE,6 个技能 |

复制代码
# Give Claude Code the full OmniRoute toolset over MCP: claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream

📖 MCP Server · A2A Server · Agent 协议

🗜️ 自动节省 15--95% Token

为何要用更多 token,当更少 token 同样奏效? 每个请求都透明地 通过 OmniRoute 的压缩流水线 --- 客户端无需任何改动。它现在是由 9 个可组合引擎 构成的堆栈,按序运行,并可按路由组合混搭 --- 汲取自 RTKCaveman(⭐ 51K+)、LLMLingua-2Troglodita(PT-BR)的设计理念。

🧱 9 引擎堆栈

引擎按流水线顺序运行;每个引擎均可独立开关,并可按组合进行配置:

| # | 引擎 | 功能说明 |

| 1 | Session-Dedup | 丢弃跨轮次重复的内容(基于内容寻址,跨轮次去重) |

| 2 | CCR | 将大块内容归档至检索标记后方,按需获取 |

| 3 | RTK | 智能工具结果过滤、去重与截断(命令感知) |

| 4 | Headroom | 对同构 JSON 数组进行无损表格压缩(~30%+) |

| 5 | Caveman | 基于规则的散文压缩(输出压缩率 ~65--75%) |

| 6 | LLMLingua-2 | 基于 MobileBERT ONNX 的 ML 语义剪枝------代码安全,异步执行 |

| 7 | Lite | 空白字符 + 图片 URL 精简(低延迟基准方案) |

| 8 | Aggressive | 摘要生成 + 旧轮次渐进老化 |

| 9 | Ultra | 启发式 token 剪枝,可选配小模型(SLM)分层 |

代码块、URL 和结构化数据始终以字节级精度保留一键预设可组合多个引擎:

| 模式 | 节省比例 | 适用场景 |

| 🪶 Lite | ~15% | 始终开启的安全默认方案 |

| 🪨 Standard (Caveman) | ~30% | 日常编程 |

| ⚡ Aggressive | ~50% | 长时间工具密集会话 |

| 🔥 Ultra | ~75% | 最大化节省 |

| 🧰 RTK | 60--90% | Shell/测试/构建/git 输出 |

| 🔗 Stacked (RTK → Caveman) | 78--95% | 混合提示词 + 工具日志 |

真实案例 --- Standard 模式:

压缩前(69 tokens): "The reason your React component is re-rendering is likely because you're creating a new object reference on each render cycle. When you pass an inline object as a prop, React's shallow comparison sees it as a different object every time, which triggers a re-render. I would recommend using useMemo to memoize the object." 压缩后(19 tokens): "New object ref each render. Inline object prop = new ref = re-render. Wrap in useMemo." 答案相同。token 减少 72%。零精度损失。

PT-BR 案例 --- Troglodita 模式:

Antes (42 tokens): "O problema é que o componente está re-renderizando porque uma nova referência de objeto está sendo criada em cada ciclo de renderização. Eu recomendaria usar useMemo." Depois (12 tokens): "Re-render: ref nova cada ciclo (objeto inline recriado). Usar CODE_BLOCK_110." Mesma resposta. ~70% menos tokens. Precisão técnica intacta.

📖 工作原理------流水线、架构与节省量计算

复制代码
Client (10,000 tok) ──▶ OmniRoute Compression (9 engines) ──▶ Provider (~1,080 tok, up to 95% saved)

默认堆叠组合运行 RTK → Caveman。当两者同时作用于同一工具/上下文负载时,节省效果叠加:

复制代码
combined = 1 − (1 − RTK) × (1 − Caveman_input) average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2% range = 78.4 -- 94.6%

代码块、URL、JSON 及结构化数据始终由保留引擎保护

🎚️ 引擎之外------输出样式、自适应调节旋钮与单请求控制

上述 9 个引擎负责压缩输入 内容。另有三层机制控制如何何时 以及输出什么

  • 🪄 输出样式 (输出轴引导) --- 注入确定性、缓存友好的响应塑形指令;可组合使用,每项支持 lite / full / ultra 三档强度。添加一种样式只需在注册表中增加一行:简练散文 --- 去除填充词/冠词/模糊表达;保留技术内容原意。

  • 精简代码 --- "懒惰高级开发者" YAGNI 原则:最小可用改动,不添加未请求的脚手架代码。

  • 简练 CJK(文言) --- 古典中文超简风格(仅对 zh 语言环境开放)。

  • 🎯 自适应上下文预算 (调节旋钮) --- 不再使用单一的开/关 token 阈值,而是仅在适配模型上下文窗口所需的范围内,逐步启用成本最低、损失最少的引擎。策略:reserve-output(默认,模型感知)· percentage · absolute。模式:floor(保证适配)· replace-autotrigger(以你的显式选择为准)· off(传统阈值)。

  • 🎛️ 压缩决策位置 (优先级,从高到低) --- 单请求 x-omniroute-compression 请求头 › 路由组合覆盖 › 激活的命名配置文件 › 自适应/自动触发 › 面板默认值 › 关闭。实际应用的方案会在 X-OmniRoute-Compression: ; source= 响应头中回显。

可通过 token 阈值自动触发、开启自适应旋钮、固定命名配置文件、为单次请求设定一次性参数,或为路由组合指定流水线------选择最适合当前工作负载的方式。可选的离线评估工具npm run eval:compression)在推广变更前,会针对固定语料库对保真度与节省量进行评分。

📖 COMPRESSION_GUIDE.md · RTK_COMPRESSION.md · COMPRESSION_ENGINES.md

⚡ 快速开始

1) 安装并运行

复制代码
npm install -g omniroute omniroute

Dashboard 地址:http://localhost:20128 · API 地址:http://localhost:20128/v1

2) 连接免费 Provider(无需注册)

Dashboard → Providers → 连接 Kiro AI (免费 Claude,每账号约 50 credits/月)或 OpenCode Free(无需认证)→ 完成。

3) 配置你的编程工具

复制代码
Base URL: http://localhost:20128/v1 API Key: [copy from Dashboard → Endpoints] Model: auto (zero-config smart routing --- or any provider/model)

4) 验证是否正常运行

复制代码
curl http://localhost:20128/v1/models -H " Authorization: Bearer YOUR_KEY "

你应该能看到已连接的模型列表。🎉 就这些------开始编程吧,OmniRoute 会自动路由并自动回退。

如果你的客户端无法发送自定义请求头,OmniRoute 也提供带 token 的兼容性别名:

复制代码
OpenAI catalog: http://localhost:20128/vscode/YOUR_KEY/ OpenAI models: http://localhost:20128/vscode/YOUR_KEY/models OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat Ollama tags: http://localhost:20128/vscode/YOUR_KEY/api/tags

仅在客户端无法附加 Authorization: Bearer ... 时使用这些别名。请求头认证仍为推荐方式。

📦 更多安装方式------Docker、源码、pnpm、Arch

🐳 Docker

复制代码
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \ -p 20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest

🛠️ 从源码安装

复制代码
cp .env.example .env && npm install PORT=20128 npm run dev

📦 pnpm

复制代码
pnpm install -g omniroute && pnpm approve-builds -g && omniroute

🐧 Arch Linux(AUR)

复制代码
yay -S omniroute-bin && systemctl --user enable --now omniroute.service

🔧 Nix(Flake)

复制代码
# Using Nix flakes nix develop npm run dev # Or using devbox devbox run npm run dev

📖 Docker 指南 --- Compose profiles、Caddy HTTPS、Cloudflare 隧道。

🦭 Podman

复制代码
# 1. Build the image podman build --target runner-base -t omniroute:base . # 2. Fix data directory permissions for rootless Podman mkdir -p data && podman unshare chown 1000:1000 ./data # 3. Set runtime in .env, then run (see contrib/podman/ for Quadlet) echo " CONTAINER_HOST=podman " >> .env podman compose --profile base up -d

📖 Podman 指南 --- Quadlet 配置、podman-compose、Quadlet。

🎬 OmniRoute 实战演示

| 🇧🇷 Português Guia completo | 🇺🇸 English Complete walkthrough | 🇷🇺 Русский Полное руководство |

🎬 制作了关于 OmniRoute 的视频?issuediscussion 中附上链接------我们会在此处展示。

📚 深入探索

💰 价格一览及 $0 免费组合(11 个 Provider)

| 层级 | 示例 | 费用 |

| 💳 订阅制 | Claude Code Pro / Codex / Copilot | $10--200/月 |

| 🔑 API Key(免费额度) | NVIDIA NIM、Cerebras、Groq | 免费 |

| 💰 低价 | GLM-5 0.5/1M · MiniMax M2.5 0.3/1M | 极低成本 |

| 🆓 永久免费 | Kiro、Qoder、Qwen、Pollinations、LongCat | $0 |

$0 免费组合------将以下 Provider 组合为无懈可击的一套方案:

| Provider | 前缀 | 免费模型 | 配额 |

| Kiro | kr/ | Claude Sonnet 4.5、Haiku 4.5、Opus 4.6 | 50 credits/月 |

| Qoder | if/ | kimi-k2-thinking、qwen3-coder-plus、deepseek-r1 | ♾️ 无限制 |

| Qwen | qw/ | qwen3-coder-plus/flash/next | ♾️ 无限制 |

| Pollinations | pol/ | GPT-5、Claude、Gemini、DeepSeek、Llama 4 | 无需 key |

| LongCat | lc/ | LongCat-2.0 | 一次性 1000 万(需 KYC) |

| Cloudflare AI | cf/ | 50+ 个模型 | 每日 1 万 neurons |

| NVIDIA NIM | nvidia/ | 129 个模型 | ~40 RPM |

| Cerebras | cerebras/ | Qwen3 235B、GPT-OSS 120B | 每日 100 万 tokens |

💡 Dashboard 中的"cost"是节省金额追踪器 ,而非账单------OmniRoute 不会向你收取任何费用。使用免费模型显示"290 total cost"意味着**节省了 290**。

📖 完整免费目录 → docs/reference/FREE_TIERS.md --- 25+ 个 Provider,含配额与 base URL。

🎯 使用场景------现成的组合方案手册

永久 $0:

复制代码
1. kr/claude-sonnet-4.5 (Kiro --- ~50 credits/mo per acct) 2. if/kimi-k2-thinking (Qoder --- unlimited) 3. pol/gpt-5 (Pollinations --- no key) 4. lc/LongCat-2.0 (10M one-time backup, KYC) Compression: aggressive (~50%) → double your free quota · Cost: $0/mo

全天候不中断: 串联 2 个订阅 → 低价 → 免费,实现 5 层回退。地区封锁: 免费 Provider + 全局/按 Provider 代理 → 在任何国家访问 AI。最大化节省: 订阅 + 低价备用 + ultra 压缩(~75%)→ 重度用户每月节省约 $150--300。

🌍 突破地理封锁------三级代理 + 隐匿技术

🇷🇺 🇨🇳 🇮🇷 🇨🇺 🇹🇷 身处封锁地区?OmniRoute 的三级代理(全局 / 按 Provider / 按连接)可代理 API 请求、OAuth 流程、连接测试、token 刷新和模型同步。

  • 协议: HTTP/HTTPS、SOCKS5、带认证的代理

  • 🆓 1proxy 市场 --- 数百个经验证的免费代理,含质量评分与自动轮换

  • 反检测 --- TLS 指纹伪装(wreq-js)、CLI 指纹匹配、代理 IP 保留

📖 docs/ops/PROXY_GUIDE.md

✨ 完整功能列表------30+ 项能力(记忆、评估、可观测性)

路由: 15 种策略 · 任务感知智能路由 · 思考预算控制 · 通配符路由 · 系统提示注入。兼容性: OpenAI ↔ Claude ↔ Gemini ↔ Responses API · 自动 OAuth 刷新(PKCE,8 个 Provider)· 多账号轮询 · Batch + Files API · 实时 OpenAPI 3.0。协议: MCP(87 个工具,3 种传输,30 个作用域)· A2A(JSON-RPC 2.0、SSE、6 项技能)· ACP · 云端 Agent(Codex、Devin、Jules)。插件: 自定义插件市场(系统配置注册表 URL,含 SSRF 防护获取)· 安装/启用/禁用 · Notion + Obsidian 知识库集成(WebDAV 文件服务器、vault 搜索、笔记 CRUD)。内嵌服务: 一键安装与生命周期管理本地 sidecar 服务(CLIProxy、NineRouter)。质量与运维: 内置 Evals (黄金集:精确/包含/正则/自定义)· 安全防护(PII、注入、视觉)· 健康仪表盘 · p50/p95/p99 遥测 · Webhooks · 合规审计。AI Agent 技能: 即插即用的 Markdown 清单------将任意 Agent 指向 skills/*/SKILL.md 清单。共 43 项技能可用。

📖 MCP Server · A2A Server · Resilience Guide · Features Gallery

📖 配置说明、环境变量与常见问题

| 环境变量 | 默认值 | 用途 |

| PORT | 20128 | API 与 Dashboard 端口 |

| REQUIRE_API_KEY | false | 对所有请求要求 API key |

| DATA_DIR | ~/.omniroute | 数据库与配置存储路径 |

OmniRoute 会向我收费吗? 不会------它是运行在你本地机器上的免费开源软件。你只需直接向付费 Provider 付费。OmniRoute 没有任何计费系统。免费 Provider 真的无限制吗? 基本如此------Qoder、Pollinations、LongCat 和 Cloudflare 完全免费,无单账号 credit 上限。Kiro 也免费,但每账号每月上限约 50 credits。将多个免费 Provider 叠加进一个组合,自动回退可让你以 $0 持续使用。压缩会影响质量吗? 不会------它只压缩输入 内容;代码、URL、JSON 始终受到保护。在 AI 被封锁的地区也能用吗? 可以------三级代理 + 1proxy 市场覆盖全部 236 个 Provider。

📖 用户指南 · API 参考 · 环境变量配置

🐛 故障排查

| 问题 | 快速解决方案 |

| "Language model did not provide messages" | Provider 配额耗尽 → 使用组合回退 |

| 限速(429) | 添加回退:cc/claude → glm/glm-4.7 → if/kimi-k2-thinking |

| OAuth token 过期 | 已自动刷新;如仍卡住,在 Providers 中删除并重新认证 |

| unsupported_country_region_territory | 在 Settings → Proxy 中配置代理 |

| Docker SQLite 锁 | 使用 --stop-timeout 40 进行干净的 WAL 检查点 |

| Node 运行时错误 | 使用 Node `>=22.0.0 =24.0.0

🐛 报告 Bug? 运行 npm run system-info 并附上 system-info.txt。📖 docs/guides/TROUBLESHOOTING.md

📸 Dashboard 截图

| 页面 | 截图 | 页面 | 截图 |

| Providers | | Combos | |

| Analytics | | Health | |

| Translator | | Settings | |

| CLI Tools | | Usage Logs | |

📧 支持与社区

💬 与社区交流 --- Discord、Telegram 和 WhatsApp(🌍 / 🇧🇷)链接位于 [README 顶部](#README 顶部)。

🛠️ 技术栈

  • 运行时:Node.js 22.x 或 24.x LTS(推荐 24 LTS)--- `>=22.0.0 =24.0.0

| 文档 | 描述 |

| 用户指南 | Providers、combos、CLI 集成、部署 |

| 安装指南 | 完整安装方式、CLI 工具配置、协议设置、超时调优 |

| CLI 工具指南 | Claude Code、Codex、Cursor、Cline、OpenClaw、Kilo、Copilot 各工具的配置说明 |

| 远程模式 | 通过限定范围的访问令牌,从本地 CLI 操控远程 OmniRoute(VPS) |

| Claude Code 配置 | 将 Claude Code 指向 OmniRoute(本地/远程),配合 launch 及各模型配置文件使用 |

| 快速开始 | 3 步完成:安装 → 连接 → 配置 |

🔧 运维与部署

| 文档 | 描述 |

| Docker 指南 | Docker run、Compose 配置文件、Caddy HTTPS、隧道、镜像标签 |

| Podman 指南 | Quadlet systemd 集成、podman-compose、SELinux |

| VM 部署 | 完整指南:VM + nginx + Cloudflare 配置 |

| Fly.io 部署 | 带持久化存储部署至 Fly.io |

| Termux 指南 | 通过 Termux 在 Android 上运行 OmniRoute |

| PWA 指南 | Progressive Web App 安装、缓存、架构 |

| 卸载指南 | 所有安装方式的彻底清除方法 |

| 环境变量配置 | 完整的 .env 变量及参考说明 |

🧠 功能与架构

| 文档 | 描述 |

| 架构 | 系统架构、数据流与内部实现 |

| 压缩指南 | 7 档压缩流水线:off / lite / standard / aggressive / ultra / RTK / stacked |

| RTK 压缩 | 命令输出压缩、过滤器、信任机制、校验、原始输出恢复 |

| 压缩引擎 | Caveman、RTK、stacked 流水线,dashboard/API/MCP 接口 |

| 压缩规则格式 | Caveman 和 RTK 过滤器的 JSON 规则包 schema |

| 压缩语言包 | 语言检测与 Caveman 规则包编写 |

| 可靠性指南 | 熔断器、冷却机制、队列、防雪崩、TLS 伪装 |

| 自动 Combo 引擎 | 9 因子评分、模式包、自愈机制 |

| 代理指南 | 3 级代理体系、1proxy 市场、注册表 CRUD |

| 免费层级 | 25+ 个免费 API 提供商汇总目录 |

| 功能展示 | 带截图的可视化 dashboard 导览 |

| 代码库文档 | 面向初学者的代码库讲解 |

🤖 协议与 API

| 文档 | 描述 |

| API 参考 | 所有端点及使用示例 |

| OpenAPI 规范 | OpenAPI 3.0 规范文档 |

| MCP Server | 87 个 MCP 工具、IDE 配置、Python/TS/Go 客户端 |

| MCP Server 指南 | MCP 安装、传输方式及工具参考 |

| A2A Server | JSON-RPC 2.0 协议、技能、流式传输、任务管理 |

| A2A Server 指南 | A2A Agent 卡片、任务、技能与流式传输 |

📋 项目与质量

| 文档 | 描述 |

| 贡献指南 | 开发环境搭建与贡献规范 |

| 更新日志 | 完整的各版本发布历史 |

| 安全政策 | 漏洞报告与安全实践 |

| i18n 指南 | 40+ 语言支持、翻译工作流、RTL |

| 发布清单 | 发布前验证步骤 |

| 覆盖率计划 | 测试覆盖策略与 14,965 个测试用例 |

⭐ 顶级贡献者

OmniRoute 由一个充满热情的开源社区共同塑造。以下贡献者做出了卓越贡献,直接影响着项目的质量、稳定性和影响力。衷心感谢。

| oyi77 🥇 190 次提交 • +72K 行 Analytics 引擎、SQL 聚合、代理市场、测试覆盖 | Chris Staley 🥈 72 次提交 • +5.7K 行 SSE 流强化、Responses API、Gemini 分页、测试回归修复 | zenobit 🥉 62 次提交 • +24K 行 CI/CD 流水线、33 种语言的 i18n、Void Linux 软件包、平台修复 | R.D. & Randi 🏅 107 次提交 • +28K 行 Endpoints 页面、隧道集成、Docker 工作流、A2A 状态、压缩 UI | benzntech 🏅 20 次提交 • +7.5K 行 Electron 桌面应用、自动更新器、发布构建工作流、跨平台 CI |

🙏 这些贡献者提交的功能、Bug 修复和基础设施改进,是 OmniRoute 可靠且功能丰富的核心支撑。每一个 Pull Request、每一个测试用例、每一个 i18n 翻译文件都至关重要。开源由这样的人共同构建。

👥 贡献者

如何参与贡献

  • Fork 本仓库

  • 创建你的功能分支(git checkout -b feature/amazing-feature

  • 提交你的更改(git commit -m 'Add amazing feature'

  • 推送到分支(git push origin feature/amazing-feature

  • 发起 Pull Request

详细规范请参阅 CONTRIBUTING.md

发布新版本

复制代码
# Create a release --- npm publish happens automatically gh release create v3.8.2 --title " v3.8.2 " --generate-notes

📊 Star 趋势

🌍 StarMapper

🙏 致谢

OmniRoute 站在巨人的肩膀上。它最初 fork 自 9router ,并将 Go 项目 CLIProxyAPI 移植为 TypeScript 版本------此后,以下每个子系统都从某个率先实现的开源项目中汲取了灵感。每一个项目都切实影响了 OmniRoute 的某个具体模块。这是我们对所有这些项目的感谢。🙏

⭐ Star 数量统计截至 2026 年 6 月------快去给这些项目点个 Star 吧。

🧬 血脉传承与网关

| 项目 | ⭐ | 对 OmniRoute 的启发 |

| 9router · decolua | 17.9k | 本 fork 的原始项目------在此基础上扩展了多模态 API 并完成了完整的 TypeScript 重写。 |

| CLIProxyAPI · router-for-me | 37.8k | 启发了本 JavaScript / TypeScript 移植版本的 Go 语言实现。 |

| LiteLLM · BerriAI | 50.8k | 其公开的定价数据集驱动了我们的成本追踪同步,其 provider 归一化模型也为我们的路由设计提供了参考。 |

🗜️ 上下文与 token 压缩------引擎

| 项目 | ⭐ | 对 OmniRoute 的启发 |

| Caveman · JuliusBrussee | 74.5k | 那个广为流传的"为何用多 token,少 token 也能行"项目------其穴居人式简洁哲学驱动了我们的标准压缩模式以及 30+ 条填充词/凝练规则。 |

| RTK -- Rust Token Killer · rtk-ai | 63.6k | 高性能命令输出压缩------启发了我们的 RTK 引擎、JSON 过滤器 DSL、原始输出恢复机制以及 RTK → Caveman 的堆叠流水线。 |

| headroom · chopratejas | 33.6k | 可逆上下文压缩(SmartCrusher)------启发了我们的 headroom 引擎以及 ccr 检索标记模式。 |

| LLMLingua · Microsoft | 6.3k | 提示词压缩研究(LLMLingua / LLMLingua-2)------启发了我们异步、代码安全、故障开放的 llmlingua 引擎。 |

| llmlingua-2-js · atjsh | 27 | JS/ONNX 移植版(MobileBERT / XLM-RoBERTa),用作我们 LLMLingua 引擎的 worker 线程后端。 |

| Troglodita · Lenine Júnior | 15 | PT-BR token 压缩------驱动了我们的 pt-BR 语言包:针对巴西葡萄牙语语法调优的赘语削减与填充词去除。 |

| ponytail · DietrichGebert | 51.4k | 那个广为流传的"懒惰高级开发者"YAGNI 编码风格------启发了我们的 less-code 输出风格:以最小可用变更为导向的生成代码削减策略(是 Caveman 精简散文的输出轴对称)。 |

🧩 紧凑格式、token 研究与代码感知工具

| 项目 | ⭐ | 对 OmniRoute 的启发 |

| TOON · toon-format | 24.6k | Token-Oriented Object Notation------其列式"表头+行"模型塑造了我们的表格压缩阶段。 |

| GCF -- Graph Compact Format · Blackwell Systems | 11 | 面向 LLM 的 Schema 感知"JSON"表示法------与 [N rows] 标记共同启发了我们的无损同构数组压缩。 |

| token-optimizer-mcp · ooples | 409 | Brotli/SQLite 缓存 + 会话级上下文增量------启发了我们的 session-dedup 引擎。 |

| token-savior · Mibayy | 993 | Bash 输出压缩 + MCP 配置文件------启发了我们的压缩熔断规范以及 MCP 工具清单精简。 |

| token-saver · ppgranger | 103 | 支持故障感知熔断的内容感知、按文件类型输出压缩------验证了我们的按类型分发与最小增益跳过机制。 |

| token-optimizer · alexgreensh | 1.4k | "寻找幽灵 token"------其卸载 + 可恢复句柄模式为我们的 CCR 卸载思路提供了参考。 |

| TokenMizer · Shweta-Mishra-ai | 1 | 一个会话图 + 跨轮次行去重蓝图,为我们的会话去重设计提供了参考。 |

| OmniCompress · jessefreitas | 2 | Rust 列式 JSON + 内容寻址检索 + 跨消息去重------验证了我们的 headroom/ccr/session-dedup 引擎设计以及缓存稳定的"压缩形式与位置无关"不变性。 |

| mcp-compressor · Atlassian Labs | 80 | MCP 工具 schema/描述压缩------为我们的 MCP 工具清单基数削减提供了参考。 |

| RepoMapper · pdavis68 | 182 | Aider 风格的 repo-map 排序------为我们的 repo-map / 检索排序探索提供了参考。 |

| quiet-shell-mcp · mrsimpson | 4 | 基于 MCP 的声明式 shell 输出精简------验证了我们的声明式 Bash 输出压缩方案。 |

| ts-morph · David Sherret | 6.1k | TypeScript Compiler API 工具包------启发了我们基于解析器的注释删除方案,能完整保留字符串、模板字面量和正则表达式字面量。|

🧠 Memory & RAG

| 项目 | ⭐ | 如何启发 OmniRoute |

| Mem0 · mem0ai | 58.9k | 通用记忆层------其以代理作为读写边界的模型,塑造了我们的记忆架构。 |

| Letta (MemGPT) · letta-ai | 23.4k | 具备分层记忆的有状态 Agent------启发了我们的上下文控制与恢复(CCR)分层模型。 |

| WFGY · onestardao | 1.8k | 包含 16 种 RAG/LLM 常见故障模式的 ProblemMap 分类法------成为我们故障排查指南中的共同词汇体系。 |

🛰️ 流量检测、MITM 与透明代理

| 项目 | ⭐ | 如何启发 OmniRoute |

| llm-interceptor · chouzz | 46 | 对编程助手 ↔ LLM 流量进行 MITM 拦截与分析------我们的 Traffic Inspector 移植了其 SSE 合并、会话规范化、host 透传和密钥脱敏能力(MIT 协议)。 |

| ProxyBridge · InterceptSuite | 5.1k | 透明的按进程代理路由------启发了我们的崩溃安全 MITM 拆除、socket 空闲超时、/proc 进程归因以及 TPROXY 流量捕获。 |

📚 模型数据、可观测性与 UI

| 项目 | ⭐ | 如何启发 OmniRoute |

| models.dev · SST / OpenCode | 5.1k | 开放的 AI 模型规格、定价与能力数据库------已原生同步至我们的模型目录。 |

| React Flow / xyflow · xyflow | 37.1k | 基于节点图的库,驱动了我们实时 Compression Studio 以及 Combo/Routing Studio 的可视化。 |

| LangGraph · LangChain | 35.1k | LangGraph Studio 的实时工作流图可视化,启发了我们 Studios 的实时级联视图。 |

| Langfuse · Langfuse | 29.3k | 其 trace → span → generation 可观测性模型,塑造了我们 Compression Studio 的瀑布流视图。 |

| Kiali · Kiali | 3.6k | Istio 服务网格可观测性------启发了我们在 Routing/Combo Studio 中的熔断器徽章和错误边可视化。 |

| lobe-icons · LobeHub | 2.1k | AI/LLM 品牌 Logo 库,用于在我们的仪表盘中渲染各服务商图标。 |

🛡️ 安全

| 项目 | ⭐ | 如何启发 OmniRoute |

| awesome-secure-defaults · tldrsec | 708 | 精选的默认安全库列表,指导我们的安全选型(Helmet.js、DOMPurify、ssrf-req-filter、safe-regex、Google Tink)。 |

❤️ 支持

OmniRoute 是免费开源项目,以开放的方式构建与维护。如果它为你节省了时间或成本,欢迎考虑支持开发:

  • 为仓库点 Star --- 这对提升项目曝光度确实很有帮助

  • 💖 ** GitHub Sponsors ** --- 资助持续维护与新服务商接入

  • 🐛 在 Discussions 中报告 Bug 和分享反馈

📄 许可证

MIT License - 详见 LICENSE

[⬆ 返回顶部](#⬆ 返回顶部) · 以 ❤️ 为开源 AI 社区倾力打造。

OmniRoute v3.8.24 · Node ≥22.0.0 · MIT License · omniroute.online