什么是 9Router ?
9Router 是一个开源的 AI 编程路由器,能将 Claude Code、Cursor、Cline、OpenClaw 等主流 AI 编程工具连接到 60+ AI 提供商和 100+ 模型。它通过智能三层切换策略(订阅 → 低价 → 免费)确保编程工作永不中断,配合 RTK Token 节省器可节省 20-40% 的输入 tokens。
主要特点
- RTK Token 节省器:自动压缩
git diff、grep、ls 等工具输出,每次请求节省 20-40% 输入 tokens
- 智能三层切换:订阅 → 低价 → 免费,自动切换,零停机时间
- 60+ AI 提供商:支持
Claude Code、OpenAI、GLM、MiniMax、Kimi、Gemini、DeepSeek 等
- 100+ 模型:
Claude Opus/Sonnet/Haiku、GPT-5.5、GLM-5.1、MiniMax M2.7 等
- 免费模型支持:
OpenCode Free(无需认证)、Vertex AI($300 额度)
- 实时配额追踪:追踪
token 消耗和配额重置时间,充分利用订阅价值
- 格式转换:
OpenAI ↔ Claude ↔ Gemini ↔ Cursor,无缝兼容任何 CLI 工具
- 多账户支持:每个提供商支持多个账户,自动轮询或基于优先级的路由
- 云同步:跨设备同步提供商、组合和设置
- 开源免费:基于
MIT 协议,完全免费
应用场景
- 充分利用订阅:有
Claude Pro/Max、Codex、Copilot 订阅的用户可以通过低价备份最大化订阅价值
- 零成本编程:使用
Kiro AI + OpenCode Free + Vertex AI 组合,可实现 $0 成本使用 AI 编程
- 24/7 不中断编码:多层切换策略确保即使配额耗尽也能自动切换到备用模型
- 开发测试环境:开发者可以快速切换不同模型进行测试和对比

9Router 核心理念是让编程永不停歇,以最小成本结合 RTK 节省 20-40% tokens。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 decolua,选择第二个 decolua/9router,版本选择 latest。
本文写作时,latest 版本对应为 0.4.41;

卷
在 docker 文件夹中创建一个新文件夹 9router,并在其中建一个子文件夹 data
| 文件夹 |
装载路径 |
说明 |
docker/9router/data |
/app/data |
存放数据 |

端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 20128

环境
| 变量 |
默认值 |
说明 |
DATA_DIR |
/app/data |
主应用数据库位置 |
JWT_SECRET |
change-me... |
JWT 签名密钥(生产环境请更改) |
INITIAL_PASSWORD |
123456 |
首次登录密码 |
PORT |
20128 |
服务端口 |
HOSTNAME |
0.0.0.0 |
绑定主机 |
环境变量说明:
JWT_SECRET 用于 JWT 签名密钥,生产环境请更改为随机字符串,可以使用 openssl rand -hex 32 生成;
INITIAL_PASSWORD 是首次登录的默认密码,建议安装后修改;

更多环境变量,可以参考官方文档:https://github.com/decolua/9router/blob/master/.env.example
命令行安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
# 新建文件夹 9router 和 子目录
mkdir -p /volume1/docker/9router/data
# 进入 9router 目录
cd /volume1/docker/9router
# 运行容器
docker run -d \
--name 9router \
--restart=unless-stopped \
-p 20128:20128 \
-v $(pwd)/data:/app/data \
-e JWT_SECRET=change-me-to-a-long-random-secret \
-e INITIAL_PASSWORD=123456 \
decolua/9router:latest
docker-compose 安装
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
version: '3.8'
services:
9router:
image: decolua/9router:latest
container_name: 9router
restart: unless-stopped
ports:
- "20128:20128"
volumes:
- ./data:/app/data # 数据持久化
environment:
- DATA_DIR=/app/data # 数据目录
- JWT_SECRET=change-me-to-a-long-random-secret # JWT 签名密钥(生产环境请更改)
- INITIAL_PASSWORD=123456 # 首次登录密码
- PORT=20128 # 服务端口
- HOSTNAME=0.0.0.0 # 绑定主机
然后通过 SSH 登录到您的群晖,执行下面的命令:
# 新建文件夹 9router 和 子目录
mkdir -p /volume1/docker/9router/data
# 进入 9router 目录
cd /volume1/docker/9router
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d

运行
在浏览器中访问 http://<群晖IP>:20128 即可进入登录界面

默认密码登录:123456(建议首次登录后在设置中修改)

中文
右上角进入设置,选择语言

找到简体中文,不用重启

API 密钥
下拉,创建 API 密钥

这个配合上面的 API 端点,用于第三方工具的调用

提供商
进入 提供商

根据自己已有的账号进行添加

每个提供商都可以添加多个账户,前提是你有的话,9Router 会自动轮询

别忘记了添加模型,不然就是个空壳

组合
进入组合,点 创建组合

这里创建一个 my-model 作为例子,把全部的模型都加进去了

这样配置的时候,只要设置一个模型就可以
claude code
以 claude code 的 ~/.claude/settings.json 为例
{
"hasCompletedOnboarding": true,
"env": {
"ANTHROPIC_BASE_URL": "http://192.168.0.197:20128/v1",
"ANTHROPIC_AUTH_TOKEN": "sk-xxxxx",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "my-model",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "my-model",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "my-model"
}
}
docker 部署可能看不到上面这串代码

如果是本机安装的 9Router 则是可以的

这种配置的好处类似于 openrouter/openrouter/free,完全就是一个路由,不用频繁去切换模型
codex
如果你用 Codex 的话,直接用 my-model 会有个警告
Model metadata for `my-model` not found. Defaulting to fallback metadata; this can degrade performance and cause issues.
所以建议再增加一个组合叫 gpt 5.5,里面只要添加一个 my-model 就可以,不用一个一个的添加

codex 的手动设置分为两个文件
~/.codex/config.toml
# 9Router Configuration for Codex CLI
model = "gpt-5.5"
model_provider = "9router"
[model_providers.9router]
name = "9Router"
base_url = "http://192.168.0.197:20128/v1"
wire_api = "responses"
[agents.subagent]
model = "gpt-5.5"
~/.codex/auth.json
{
"auth_mode": "apikey",
"OPENAI_API_KEY": "sk-xxxxx"
}
使用情况
一旦开始使用,可以实时看到使用情况

注意事项
- 安全建议:生产环境请务必修改
JWT_SECRET 和 INITIAL_PASSWORD
- 数据持久化:务必挂载
/data:/app/data 以保存配置和数据库
- 端口占用:默认使用
20128 端口,启动前请确认该端口未被占用
- 免费模型:
OpenCode Free(无需认证)是最推荐的免费选项
- RTK 默认开启:
Token 节省器默认开启,可节省 20-40% 输入 tokens
- 多账户支持:每个提供商可添加多个账户,
9Router 会自动轮询
参考文档
通过在云栈社区翻阅各种避坑指南,你会发现,像 9Router 这类集成了 人工智能 与编程的工具,其核心价值在于将复杂的多模型调度简化。配合 开源实战 中汲取的折腾经验,我们能用最低成本搭建一套永不离线的开发环境。