9router

GitHub
1.9k 495 简单 1 次阅读 今天MIT语言模型插件
AI 解读 由 AI 自动生成,仅供参考

9Router 是一款专为开发者设计的智能 AI 路由中间件,旨在将各类主流 AI 编程助手(如 Claude Code、Cursor、Copilot、Cline 等)无缝连接至全球 40 多家服务商和 100 多种大模型。它核心解决了开发者在编码过程中常遇到的订阅额度浪费、请求频率限制以及高昂 API 成本等痛点。

通过独特的“分层自动故障转移”机制,9Router 能优先使用已付费的订阅额度,当额度耗尽或触发限流时,自动无感切换至低价或免费模型(如 GLM、MiniMax 或 Qwen),确保编码工作流永不中断。此外,它还支持多账号轮询、配额实时监控以及不同模型接口格式(如 OpenAI 与 Claude 协议)的自动转换。

用户只需在本地部署 9Router 并配置简单的代理地址,即可让现有的 CLI 工具或编辑器插件透明地调用最优模型资源,无需手动切换后端服务。无论是希望最大化利用现有订阅的专业工程师,还是寻求低成本实验环境的学生与研究人员,9Router 都能帮助以更经济、高效的方式释放 AI 编程潜力,实现“永不停止编码”的目标。

使用场景

某全栈开发者正利用 Claude Code 和 Cursor 进行高强度的夜间项目冲刺,需要在有限预算下连续生成大量代码并修复复杂 Bug。

没有 9router 时

  • 编码频繁中断:主力账号的订阅配额在深夜耗尽,触发速率限制,导致自动补全和对话突然停止,打断心流。
  • 资金浪费严重:每月支付的昂贵订阅费因用量不均而有剩余,同时为了应对突发需求又不得不额外购买按量付费额度。
  • 手动切换繁琐:为了继续工作,必须手动停止当前任务,登录不同平台切换账号或寻找免费替代模型,重启上下文极其耗时。
  • 成本不可控:在多个 AI 提供商之间分散投入,每月固定支出高达数百元,且无法智能利用低价或免费模型来分摊压力。

使用 9router 后

  • 零中断持续开发:9router 自动监测配额,当主账号用尽时毫秒级无缝切换到廉价的 GLM 或免费的 Qwen 模型,确保编码过程永不卡顿。
  • 订阅价值最大化:智能调度策略优先耗尽已付费的订阅额度,仅在必要时才动用备用方案,彻底消除“付了钱没用完”的浪费。
  • 统一入口自动化:只需将 CLI 工具指向 9router 本地端口,它自动处理不同模型间的格式转换与路由,开发者无需再手动干预任何切换操作。
  • 极致成本优化:通过轮询多账号和优先调用免费层级,将原本高昂的 API 调用成本降低 90% 以上,实现近乎免费的无限编码体验。

9router 通过智能路由与自动降级机制,将分散昂贵的 AI 资源整合为一条永不断流、成本极低的开发流水线。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU

未说明

内存

未说明

依赖
notes该工具是一个基于 Node.js 的路由服务,需通过 npm 安装。运行后默认在本地 20128 端口启动 Dashboard 和 API 服务。支持 Docker 部署或源码运行(需配置 .env 文件)。无需 GPU 或特定 Python 环境,主要依赖 Node.js 运行时。
python未说明
Node.js (npm)
9router (npm package)
9router hero image

快速开始

9Router仪表盘

9Router - 免费AI路由器

永不停止编码。智能回退,自动路由至免费与低价AI模型。

将所有AI代码工具(Claude Code、Cursor、Antigravity、Copilot、Codex、Gemini、OpenCode、Cline、OpenClaw等)连接到40多家AI服务提供商及100多种模型。

npm 下载量 许可证

🚀 快速入门💡 特性📖 设置指南🌐 官网

🇻🇳 越南语🇨🇳 中文🇯🇵 日语


🤔 为什么选择9Router?

停止浪费金钱和遭遇限制:

  • ❌ 每月订阅配额未用完就过期
  • ❌ 速率限制让你在编码途中被迫中断
  • ❌ 昂贵的API费用(每家服务商每月20–50美元)
  • ❌ 需要手动切换不同服务商

9Router帮你解决这些问题:

  • 最大化利用订阅:追踪配额使用情况,在重置前用尽每一分资源
  • 自动回退机制:先用订阅额度 → 再用低价模型 → 最后转为免费模型,全程无中断
  • 多账号支持:在同一服务商下轮询使用多个账号
  • 通用兼容性:适用于Claude Code、Codex、Gemini CLI、Cursor、Cline以及任何命令行工具

🔄 工作原理

┌─────────────┐
│ 你的命令行工具 │  (Claude Code、Codex、Gemini CLI、OpenClaw、Cursor、Cline...)
│   工具      │
└──────┬──────┘
       │ http://localhost:20128/v1
       ↓
┌─────────────────────────────────────────┐
│           9Router(智能路由器)        │
│  • 格式转换(OpenAI ↔ Claude)         │
│  • 配额追踪                           │
│  • 自动刷新Token                      │
└──────┬──────────────────────────────────┘
       │
       ├─→ [第一层:订阅] Claude Code、Codex、Gemini CLI
       │   ↓ 配额用尽
       ├─→ [第二层:低价] GLM(0.6美元/100万token)、MiniMax(0.2美元/100万token)
       │   ↓ 预算耗尽
       └─→ [第三层:免费] iFlow、Qwen、Kiro(无限使用)

结果:永不中断编码,成本极低

⚡ 快速入门

1. 全局安装:

npm install -g 9router
9router

🎉 仪表盘将在http://localhost:20128打开。

2. 连接一个免费服务商(无需注册):

仪表盘 → 服务商 → 连接Claude CodeAntigravity → OAuth登录 → 完成!

3. 在你的命令行工具中使用:

Claude Code/Codex/Gemini CLI/OpenClaw/Cursor/Cline 设置:
  端点:http://localhost:20128/v1
  API密钥:从仪表盘复制
  模型:if/kimi-k2-thinking

就是这样! 开始使用免费AI模型进行编码吧。

另一种方式:从源码运行(本仓库):

本仓库中的包是私有的(9router-app),因此直接从源码或Docker容器运行是推荐的本地开发方式。

cp .env.example .env
npm install
PORT=20128 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run dev

生产模式:

npm run build
PORT=20128 HOSTNAME=0.0.0.0 NEXT_PUBLIC_BASE_URL=http://localhost:20128 npm run start

默认URL:

  • 仪表盘:http://localhost:20128/dashboard
  • OpenAI兼容API:http://localhost:20128/v1

🎥 视频教程

📺 完整设置指南 - 9Router + Claude Code免费版

9Router + Claude Code设置

🎬 观看完整步骤教程:

  • ✅ 9Router的安装与设置
  • ✅ 免费Claude Sonnet 4.5配置
  • ✅ Claude Code集成
  • ✅ 实时编码演示

⏱️ 时长: 20分钟 | 👥 制作: 开发者社区

▶️ 在YouTube观看


🛠️ 支持的命令行工具

9Router可无缝对接各大主流AI编程工具:

Claude Code
Claude-Code
OpenClaw
OpenClaw
Codex
Codex
OpenCode
OpenCode
Cursor
Cursor
Antigravity
Antigravity
Cline
Cline
Continue
Continue
Droid
Droid
Roo
Roo
Copilot
Copilot
Kilo Code
Kilo Code

🌐 支持的服务商

🔐 OAuth服务商

Claude Code
Claude-Code
Antigravity
Antigravity
Codex
Codex
GitHub
GitHub
Cursor
Cursor

🆓 免费提供商

iFlow
iFlow AI
8+ 模型 • 无限使用
Qwen
通义千问代码模型
3+ 模型 • 无限使用
Gemini CLI
Gemini CLI
每月18万次免费调用
Kiro
Kiro AI
Claude • 无限使用

🔑 API密钥提供商(40+)

OpenRouter
OpenRouter
GLM
GLM
Kimi
Kimi
MiniMax
MiniMax
OpenAI
OpenAI
Anthropic
Anthropic
Gemini
Gemini
DeepSeek
DeepSeek
Groq
Groq
xAI
xAI
Mistral
Mistral
Perplexity
Perplexity
Together
Together AI
Fireworks
Fireworks
Cerebras
Cerebras
Cohere
Cohere
NVIDIA
NVIDIA
SiliconFlow
SiliconFlow

…以及包括 Nebius、Chutes、Hyperbolic 和自定义 OpenAI/Anthropic 兼容端点在内的 20 多家其他提供商


💡 核心功能

功能 作用 重要性
🎯 智能三层回退机制 自动路由:订阅 → 廉价 → 免费 编码不间断,零停机
📊 实时配额跟踪 实时令牌计数 + 重置倒计时 最大化订阅价值
🔄 格式转换 OpenAI ↔ Claude ↔ Gemini 无缝切换 适用于任何 CLI 工具
👥 多账户支持 每个提供商可添加多个账户 负载均衡 + 冗余
🔄 自动令牌刷新 OAuth 令牌自动刷新 无需手动重新登录
🎨 自定义组合 创建无限种模型组合 根据需求定制回退策略
📝 请求日志记录 带完整请求/响应日志的调试模式 轻松排查问题
💾 云同步 在不同设备间同步配置 无论在哪里都能保持一致设置
📊 使用情况分析 跟踪令牌、成本及趋势 优化支出
🌐 随处部署 本地主机、VPS、Docker、Cloudflare Workers 灵活的部署选项
📖 功能详情

🎯 智能三层回退机制

创建带有自动回退功能的组合:

组合:“my-coding-stack”
  1. cc/claude-opus-4-6        (您的订阅)
  2. glm/glm-4.7               (廉价备份,0.6美元/100万次调用)
  3. if/kimi-k2-thinking       (免费回退)

→ 当配额用尽或发生错误时自动切换

📊 实时配额跟踪

  • 各提供商的令牌消耗量
  • 重置倒计时(5小时、每日、每周)
  • 付费层级的成本估算
  • 每月支出报告

🔄 格式转换

在以下格式之间无缝转换:

  • OpenAIClaudeGeminiOpenAI 响应
  • 您的 CLI 工具发送 OpenAI 格式 → 9Router 转换 → 提供商接收原生格式
  • 适用于所有支持自定义 OpenAI 端点的工具

👥 多账户支持

  • 可为每个提供商添加多个账户
  • 自动轮询或按优先级路由
  • 当一个账户达到配额时自动切换到下一个账户

🔄 自动令牌刷新

  • OAuth 令牌会在到期前自动刷新
  • 不需要手动重新认证
  • 在所有提供商之间实现无缝体验

🎨 自定义组合

  • 可创建无限种模型组合
  • 混合订阅、廉价和免费层级
  • 为组合命名以便于访问
  • 通过云同步在不同设备间共享组合

📝 请求日志记录

  • 启用调试模式以获取完整的请求/响应日志
  • 跟踪 API 调用、头信息和负载
  • 排查集成问题
  • 导出日志进行分析

💾 云同步

  • 在不同设备间同步提供者、组合和设置
  • 自动后台同步
  • 安全加密存储
  • 随时随地访问你的配置

云运行时说明

  • 生产环境中优先使用服务器端云变量:
    • BASE_URL(同步调度器使用的内部回调 URL)
    • CLOUD_URL(云同步端点基础地址)
  • NEXT_PUBLIC_BASE_URLNEXT_PUBLIC_CLOUD_URL 仍为兼容性和 UI 目的而保留,但服务器运行时现在会优先使用 BASE_URL/CLOUD_URL
  • 云同步请求现采用超时 + 快速失败机制,以避免在云端 DNS 或网络不可用时导致 UI 卡死。

📊 使用分析

  • 跟踪每个提供者和模型的 Token 使用情况
  • 成本估算与支出趋势
  • 每月报告与洞察
  • 优化你的 AI 支出

💡 重要提示 - 理解仪表板成本:

使用分析中显示的“成本”仅用于跟踪和比较
9Router 本身从不向你收费。你只需直接向各提供者支付费用(如果使用的是付费服务)。

示例: 如果你的仪表板显示使用 iFlow 模型时“总成本 $290”,这代表如果你直接使用付费 API 所需支付的金额。而你的实际成本 = $0(iFlow 是免费且无限制的)。

可以把它理解为一个“节省追踪器”,展示你通过使用免费模型或经由 9Router 路由所节省的金额!

🌐 部署于任何地方

  • 💻 本地主机 - 默认模式,可离线使用
  • ☁️ VPS/云服务器 - 多设备共享
  • 🐳 Docker - 一键部署
  • 🚀 Cloudflare Workers - 全球边缘网络

💰 价格一览

层级 提供者 成本 配额重置 最适合
💳 订阅 Claude Code (Pro) $20/月 5 小时 + 每周 已订阅用户
Codex (Plus/Pro) $20-200/月 5 小时 + 每周 OpenAI 用户
Gemini CLI 免费 18 万/月 + 1 千/天 人人适用!
GitHub Copilot $10-19/月 每月 GitHub 用户
💰 廉价 GLM-4.7 $0.6/100 万 每日上午 10 点 预算备份
MiniMax M2.1 $0.2/100 万 每 5 小时滚动重置 最便宜选择
Kimi K2 $9/月 固定 每月 1000 万 Token 成本可预测
🆓 免费 iFlow $0 无限量 8 模型免费
Qwen $0 无限量 3 模型免费
Kiro $0 无限量 Claude 免费

💡 专家提示: 从 Gemini CLI(每月免费 18 万)+ iFlow(无限免费)组合开始,成本为 $0!


📊 理解 9Router 的成本与计费

9Router 计费真相:

9Router 软件 = 永远免费(开源,从不收费)
仪表板“成本”= 仅用于显示和跟踪(并非实际账单)
你直接向提供者付款(订阅费或 API 费)
免费提供者始终免费(iFlow、Kiro、Qwen = $0 无限量)
9Router 从不发送发票或扣款

成本显示原理:

仪表板显示的是估算成本,假设你直接使用了付费 API。这不是真正的计费,而是一个用来对比并显示你节省了多少的工具。

示例场景:

仪表板显示:
• 总请求数:1,662
• 总 Token 数:4700 万
• 显示成本:$290

实际情况:
• 提供者:iFlow(免费且无限量)
• 实际支付:$0.00
• $290 的含义:你因使用免费模型而节省的金额!

支付规则:

  • 订阅类提供者(Claude Code、Codex):直接通过其官网支付
  • 廉价提供者(GLM、MiniMax):直接支付给对应提供者,9Router 只负责路由
  • 免费提供者(iFlow、Kiro、Qwen):真正永久免费,无任何隐藏费用
  • 9Router:永远不收取任何费用

🎯 使用场景

场景 1:“我有 Claude Pro 订阅”

问题: 配额未用完就过期,高强度编码时经常遇到速率限制

解决方案:

组合:“maximize-claude”
  1. cc/claude-opus-4-6        (充分利用订阅配额)
  2. glm/glm-4.7               (当配额用尽时的廉价备份)
  3. if/kimi-k2-thinking       (免费应急兜底)

月度成本:$20(订阅)+ ~$5(备份)= 总计 $25  
 vs. $20 并不断遭遇限流 = 极大困扰

场景 2:“我想完全零成本”

问题: 无力承担订阅费用,但需要可靠的 AI 编码助手

解决方案:

组合:“free-forever”
  1. gc/gemini-3-flash         (每月免费 18 万)
  2. if/kimi-k2-thinking       (无限免费)
  3. qw/qwen3-coder-plus       (无限免费)

月度成本:$0  
质量:生产级可用模型

场景 3:“我需要 24/7 不间断编码”

问题: 截止日期紧迫,无法承受任何停机时间

解决方案:

组合:“always-on”
  1. cc/claude-opus-4-6        (最佳质量)
  2. cx/gpt-5.2-codex          (第二份订阅)
  3. glm/glm-4.7               (廉价,每日重置)
  4. minimax/MiniMax-M2.1      (最便宜,每 5 小时重置)
  5. if/kimi-k2-thinking       (免费且无限)

结果:五层兜底保障 = 零停机  
月度成本:$20-200(订阅)+ $10-20(备份)

场景 4:“我想在 OpenClaw 中使用免费 AI”

问题: 需要在消息应用(WhatsApp、Telegram、Slack 等)中使用完全免费的 AI 助手

解决方案:

组合:“openclaw-free”
  1. if/glm-4.7                (无限免费)
  2. if/minimax-m2.1           (无限免费)
  3. if/kimi-k2-thinking       (无限免费)

月度成本:$0  
可通过:WhatsApp、Telegram、Slack、Discord、iMessage、Signal… 访问

❓ 常见问题

📊 为什么我的仪表板显示高额费用?

仪表板会跟踪您的 Token 使用情况,并以估算费用的形式展示,就好像您直接使用了付费 API 一样。这并非实际账单——它只是一个参考,用来显示您通过 9Router 使用免费模型或现有订阅节省了多少费用。

示例:

  • 仪表板显示: “总费用 $290”
  • 实际情况: 您正在使用 iFlow(免费无限量)
  • 您的实际费用: $0.00
  • $290 的含义: 如果您没有使用免费模型而改用付费 API,您将节省的金额!

费用显示是一个“节省追踪器”,旨在帮助您了解自己的使用模式和优化机会。

💳 9Router 会向我收费吗?

不会。 9Router 是一款免费的开源软件,运行在您自己的电脑上。它绝不会向您收取任何费用。

您只需支付:

  • 订阅服务提供商(Claude Code $20/月,Codex $20–200/月)→ 直接在它们的官网上付款
  • 低价服务提供商(GLM、MiniMax)→ 直接向它们付款,9Router 只是路由您的请求
  • 9Router 本身永远不会收费

9Router 是一个本地代理/路由器,它不保存您的信用卡信息,无法发送账单,也没有任何计费系统。它完全是一款免费软件。

🆓 免费的服务提供商真的无限量吗?

是的! 标记为 FREE 的服务提供商(iFlow、Kiro、Qwen)确实是真正意义上的无限量,没有任何隐藏费用

这些是由相应公司提供的免费服务:

  • iFlow: 通过 OAuth 提供 8+ 种模型的免费无限访问权限
  • Kiro: 通过 AWS Builder ID 提供 Claude 模型的免费无限访问权限
  • Qwen: 通过设备认证提供 Qwen 模型的免费无限访问权限

9Router 只是将您的请求路由到这些服务提供商处——不存在任何“陷阱”或未来的收费。它们确实是真正的免费服务,而 9Router 让您能够轻松使用这些服务,并提供后备支持。

注意: 一些订阅服务提供商(Antigravity、GitHub Copilot)可能会有免费试用期,之后转为付费,但这种情况会由这些服务提供商明确告知,而不是由 9Router 宣布。

💰 如何最大限度地降低我的 AI 实际成本?

“免费优先”策略:

  1. 从 100% 免费组合开始:

    1. gc/gemini-3-flash(Google 提供每月 18 万次免费调用)
    2. if/kimi-k2-thinking(iFlow 提供的免费无限模型)
    3. qw/qwen3-coder-plus(Qwen 提供的免费无限模型)
    

    成本:$0/月

  2. 仅在需要时添加低价备份:

    4. glm/glm-4.7(每 100 万 Token 仅需 $0.6)
    

    额外成本:仅按实际用量付费

  3. 最后才使用订阅服务提供商:

    • 仅在您已经拥有这些服务的情况下使用
    • 9Router 通过配额跟踪帮助您最大化其价值

结果: 大多数用户仅使用免费层级即可实现零成本运行!

📈 如果我的使用量突然激增怎么办?

9Router 的智能回退机制可以防止意外产生高额费用:

场景: 您正在进行编码冲刺,迅速耗尽了所有配额。

如果没有 9Router:

  • ❌ 达到速率限制 → 工作停止 → 极度沮丧
  • ❌ 或者:不小心产生巨额 API 费用

有了 9Router:

  • ✅ 订阅服务达到限制 → 自动回退到低价层级
  • ✅ 低价层级费用过高 → 自动回退到免费层级
  • ✅ 编码工作从未中断 → 成本可控

您可以完全掌控: 在仪表板中为每个服务提供商设置支出上限,9Router 会严格遵守这些限制。


📖 设置指南

🔐 订阅服务提供商(最大化价值)

Claude Code (Pro/Max)

仪表板 → 服务提供商 → 连接 Claude Code
→ OAuth 登录 → 自动刷新 Token
→ 5 小时 + 每周配额跟踪

模型:
  cc/claude-opus-4-6
  cc/claude-sonnet-4-5-20250929
  cc/claude-haiku-4-5-20251001

实用技巧: 对于复杂任务使用 Opus,对于速度要求高的任务使用 Sonnet。9Router 会分别跟踪每个模型的配额!

OpenAI Codex (Plus/Pro)

仪表板 → 服务提供商 → 连接 Codex
→ OAuth 登录(端口 1455)
→ 5 小时 + 每周重置

模型:
  cx/gpt-5.2-codex
  cx/gpt-5.1-codex-max

Gemini CLI(每月免费 18 万次调用!)

仪表板 → 服务提供商 → 连接 Gemini CLI
→ Google OAuth
→ 每月 18 万次完成 + 每日 1 千次

模型:
  gc/gemini-3-flash-preview
  gc/gemini-2.5-pro

最佳选择: 海量的免费额度!请务必先使用这一层级,再考虑付费层级。

GitHub Copilot

仪表板 → 服务提供商 → 连接 GitHub
→ 通过 GitHub 进行 OAuth 登录
→ 每月 1 日重置

模型:
  gh/gpt-5
  gh/claude-4.5-sonnet
  gh/gemini-3-pro
💰 低价服务提供商(备用方案)

GLM-4.7(每日重置,每 100 万 Token $0.6)

  1. 注册:Zhipu AI
  2. 从 Coding Plan 获取 API 密钥
  3. 仪表板 → 添加 API 密钥:
    • 服务提供商:glm
    • API 密钥:your-key

使用: glm/glm-4.7

实用技巧: Coding Plan 提供 3 倍配额,但价格仅为原价的七分之一!每天上午 10 点重置。

MiniMax M2.1(5 小时重置,每 100 万 Token $0.20)

  1. 注册:MiniMax
  2. 获取 API 密钥
  3. 仪表板 → 添加 API 密钥

使用: minimax/MiniMax-M2.1

实用技巧: 长上下文(100 万 Token)的最佳廉价选择!

Kimi K2(每月固定 $9)

  1. 订阅:Moonshot AI
  2. 获取 API 密钥
  3. 仪表板 → 添加 API 密钥

使用: kimi/kimi-latest

实用技巧: 每月固定 $9 即可获得 1000 万 Token,相当于每 100 万 Token 仅需 $0.90!

🆓 免费服务提供商(紧急备用)

iFlow(8 种免费模型)

仪表板 → 连接 iFlow
→ iFlow OAuth 登录
→ 无限量使用

模型:
  if/kimi-k2-thinking
  if/qwen3-coder-plus
  if/glm-4.7
  if/minimax-m2
  if/deepseek-r1

Qwen(3 种免费模型)

仪表板 → 连接 Qwen
→ 设备代码授权
→ 无限量使用

模型:
  qw/qwen3-coder-plus
  qw/qwen3-coder-flash

Kiro(Claude 免费版)

仪表板 → 连接 Kiro
→ AWS Builder ID 或 Google/GitHub
→ 无限量使用

模型:
  kr/claude-sonnet-4.5
  kr/claude-haiku-4.5
🎨 创建组合

示例 1:最大化订阅服务 → 低价备份

仪表板 → 组合 → 新建

名称:premium-coding
模型:
  1. cc/claude-opus-4-6(订阅服务主模型)
  2. glm/glm-4.7(低价备份,每 100 万 Token $0.6)
  3. minimax/MiniMax-M2.1(最便宜的回退选项,每 100 万 Token $0.20)

在 CLI 中使用:premium-coding

每月费用示例(100 万 Token):
  80 万次通过 Claude(订阅服务):无需额外费用
  15 万次通过 GLM:$9
  5 万次通过 MiniMax:$1
  总计:$10 加上您的订阅费用

示例 2:纯免费组合(零成本)

名称:free-combo
模型:
  1. gc/gemini-3-flash-preview(每月 18 万次免费调用)
  2. if/kimi-k2-thinking(无限量)
  3. qw/qwen3-coder-plus(无限量)

成本:永远 $0!
🔧 CLI 集成

Cursor IDE

设置 → 模型 → 高级:
  OpenAI API 基础 URL:http://localhost:20128/v1
  OpenAI API 密钥:[来自 9router 仪表板]
  模型:cc/claude-opus-4-6

或者使用组合:premium-coding

Claude Code

编辑 ~/.claude/config.json

{
  "anthropic_api_base": "http://localhost:20128/v1",
  "anthropic_api_key": "your-9router-api-key"
}

Codex CLI

export OPENAI_BASE_URL="http://localhost:20128"
export OPENAI_API_KEY="your-9router-api-key"

codex "your prompt"

OpenClaw

选项 1 — 控制面板(推荐):

控制面板 → CLI 工具 → OpenClaw → 选择模型 → 应用

选项 2 — 手动: 编辑 ~/.openclaw/openclaw.json

{
  "agents": {
    "defaults": {
      "model": {
        "primary": "9router/if/glm-4.7"
      }
    }
  },
  "models": {
    "providers": {
      "9router": {
        "baseUrl": "http://127.0.0.1:20128/v1",
        "apiKey": "sk_9router",
        "api": "openai-completions",
        "models": [
          {
            "id": "if/glm-4.7",
            "name": "glm-4.7"
          }
        ]
      }
    }
  }
}

注意: OpenClaw 只适用于本地的 9Router。为避免 IPv6 解析问题,请使用 127.0.0.1 而不是 localhost

Cline / Continue / RooCode

提供商:兼容 OpenAI
基础 URL:http://localhost:20128/v1
API 密钥:[来自控制面板]
模型:cc/claude-opus-4-6
🚀 部署

VPS 部署

# 克隆并安装
git clone https://github.com/decolua/9router.git
cd 9router
npm install
npm run build

# 配置
export JWT_SECRET="your-secure-secret-change-this"
export INITIAL_PASSWORD="your-password"
export DATA_DIR="/var/lib/9router"
export PORT="20128"
export HOSTNAME="0.0.0.0"
export NODE_ENV="production"
export NEXT_PUBLIC_BASE_URL="http://localhost:20128"
export NEXT_PUBLIC_CLOUD_URL="https://9router.com"
export API_KEY_SECRET="endpoint-proxy-api-key-secret"
export MACHINE_ID_SALT="endpoint-proxy-salt"

# 启动
npm run start

# 或者使用 PM2
npm install -g pm2
pm2 start npm --name 9router -- start
pm2 save
pm2 startup

Docker

# 构建镜像(从仓库根目录)
docker build -t 9router .

# 运行容器(当前设置中使用的命令)
docker run -d \
  --name 9router \
  -p 20128:20128 \
  --env-file /root/dev/9router/.env \
  -v 9router-data:/app/data \
  -v 9router-usage:/root/.9router \
  9router

便携式命令(如果您已经在仓库根目录下):

docker run -d \
  --name 9router \
  -p 20128:20128 \
  --env-file ./.env \
  -v 9router-data:/app/data \
  -v 9router-usage:/root/.9router \
  9router

容器默认值:

  • PORT=20128
  • HOSTNAME=0.0.0.0

常用命令:

docker logs -f 9router
docker restart 9router
docker stop 9router && docker rm 9router

环境变量

变量 默认值 描述
JWT_SECRET 9router-default-secret-change-me 用于控制面板认证 Cookie 的 JWT 签名密钥(生产环境中请更改
INITIAL_PASSWORD 123456 当没有保存的哈希时,首次登录密码
DATA_DIR ~/.9router 主应用程序数据库位置 (db.json)
PORT 框架默认值 服务端口(示例中为 20128
HOSTNAME 框架默认值 绑定主机(Docker 默认为 0.0.0.0
NODE_ENV 运行时默认值 部署时设置为 production
BASE_URL http://localhost:20128 服务器端内部基础 URL,用于云同步任务
CLOUD_URL https://9router.com 服务器端云同步端点基础 URL
NEXT_PUBLIC_BASE_URL http://localhost:3000 向后兼容/公开的基础 URL(建议在服务器运行时使用 BASE_URL
NEXT_PUBLIC_CLOUD_URL https://9router.com 向后兼容/公开的云 URL(建议在服务器运行时使用 CLOUD_URL
API_KEY_SECRET endpoint-proxy-api-key-secret 用于生成 API 密钥的 HMAC 密钥
MACHINE_ID_SALT endpoint-proxy-salt 用于稳定机器 ID 哈希的盐
ENABLE_REQUEST_LOGS false logs/ 目录下启用请求/响应日志
AUTH_COOKIE_SECURE false 强制使用 Secure 认证 Cookie(在 HTTPS 反向代理后设置为 true
REQUIRE_API_KEY false /v1/* 路由强制要求 Bearer API 密钥(建议在面向互联网的部署中启用)
HTTP_PROXY, HTTPS_PROXY, ALL_PROXY, NO_PROXY 上游提供商调用的可选出站代理

注:

  • 小写代理变量同样支持:http_proxy, https_proxy, all_proxy, no_proxy
  • .env 文件不会被烘焙到 Docker 镜像中(.dockerignore);请使用 --env-file-e 注入运行时配置。
  • 在 Windows 上,可以使用 APPDATA 来解析本地存储路径。
  • INSTANCE_NAME 出现在旧版文档/环境模板中,但目前在运行时并未使用。

运行时文件和存储

  • 主应用程序状态:${DATA_DIR}/db.json(提供商、组合、别名、密钥、设置),由 src/lib/localDb.js 管理。
  • 使用历史和日志:~/.9router/usage.json~/.9router/log.txt,由 src/lib/usageDb.js 管理。
  • 可选的请求/翻译日志:当 ENABLE_REQUEST_LOGS=true 时,位于 <repo>/logs/...
  • 使用存储目前遵循 ~/.9router 路径逻辑,与 DATA_DIR 独立。

📊 可用模型

查看所有可用模型

Claude Code (cc/) - Pro/Max:

  • cc/claude-opus-4-6
  • cc/claude-sonnet-4-5-20250929
  • cc/claude-haiku-4-5-20251001

Codex (cx/) - Plus/Pro:

  • cx/gpt-5.2-codex
  • cx/gpt-5.1-codex-max

Gemini CLI (gc/) - 免费:

  • gc/gemini-3-flash-preview
  • gc/gemini-2.5-pro

GitHub Copilot (gh/)

  • gh/gpt-5
  • gh/claude-4.5-sonnet

GLM (glm/) - $0.6/1M:

  • glm/glm-4.7

MiniMax (minimax/) - $0.2/1M:

  • minimax/MiniMax-M2.1

iFlow (if/) - 免费:

  • if/kimi-k2-thinking
  • if/qwen3-coder-plus
  • if/deepseek-r1

Qwen (qw/) - 免费:

  • qw/qwen3-coder-plus
  • qw/qwen3-coder-flash

Kiro (kr/) - 免费:

  • kr/claude-sonnet-4.5
  • kr/claude-haiku-4.5

🐛 故障排除

“语言模型未提供消息”

  • 提供商配额已用尽 → 检查控制面板的配额跟踪器
  • 解决方案:使用组合回退或切换到更便宜的层级

速率限制

  • 订阅配额用尽 → 回退到 GLM/MiniMax
  • 添加组合:cc/claude-opus-4-6 → glm/glm-4.7 → if/kimi-k2-thinking

OAuth 令牌过期

  • 9Router 会自动刷新
  • 如果问题仍然存在:控制面板 → 提供商 → 重新连接

成本过高

  • 检查控制面板中的使用统计信息
  • 将主模型切换到 GLM/MiniMax
  • 对于非关键任务,使用免费层级(Gemini CLI、iFlow)

控制面板打开在错误的端口上

  • 设置 PORT=20128NEXT_PUBLIC_BASE_URL=http://localhost:20128

首次登录不起作用

  • 检查 .env 中的 INITIAL_PASSWORD
  • 如果未设置,回退密码为 123456

logs/ 目录下没有请求日志

  • 设置 ENABLE_REQUEST_LOGS=true

🛠️ 技术栈

  • 运行时: Node.js 20+
  • 框架: Next.js 16
  • UI: React 19 + Tailwind CSS 4
  • 数据库: LowDB(基于 JSON 文件)
  • 流式传输: 服务器发送事件 (SSE)
  • 认证: OAuth 2.0 (PKCE) + JWT + API 密钥

📝 API 参考

聊天补全

POST http://localhost:20128/v1/chat/completions
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "cc/claude-opus-4-6",
  "messages": [
    {"role": "user", "content": "写一个函数来..."}
  ],
  "stream": true
}

列出模型

GET http://localhost:20128/v1/models
Authorization: Bearer your-api-key

→ 返回所有模型及组合,格式与 OpenAI 一致

📧 支持


👥 贡献者

感谢所有帮助使 9Router 更加完善的贡献者!

贡献者


📊 星级图

星级图

🔀 分支

OmniRoute — 9Router 的一个功能齐全的 TypeScript 分支。新增了 36 多个提供商、四层自动回退机制、多模态 API(图像、嵌入、音频、TTS)、熔断器、语义缓存、LLM 评估以及一个精美的仪表盘。包含 368 多个单元测试,并可通过 npm 和 Docker 获取。


🙏 致谢

特别感谢 CLIProxyAPI - 这是最初的 Go 实现,启发了本次 JavaScript 移植工作。


📄 许可证

MIT 许可证 - 详情请参阅 LICENSE


专为全天候编码的开发者打造 ❤️

版本历史

v0.3.752026/04/04
v0.3.472026/03/13
v0.3.422026/03/11
v0.3.342026/03/06
v0.3.172026/02/28
v0.2.892026/02/21
v0.2.792026/02/11
v0.2.712026/02/08
v0.2.702026/02/07
v0.2.672026/02/06
v0.2.562026/02/04
v0.2.522026/02/02
v0.2.432026/01/27
v0.2.362026/01/20
v0.2.312026/01/18
v0.2.272026/01/15
v0.2.212026/01/12

常见问题

相似工具推荐

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

144.7k|★★☆☆☆|今天
开发框架Agent语言模型

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|昨天
插件开发框架

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|昨天
语言模型图像Agent

NextChat

NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。

87.6k|★★☆☆☆|3天前
开发框架语言模型

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|2天前
图像数据工具视频

ragflow

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

77.1k|★★★☆☆|4天前
Agent图像开发框架