首先,如果您还不知道如何安装 OpenClaw 和 Hermes AI agent,可以参考以下文章:
OpenClaw AI 是什么?如何在 Ubuntu VPS 上安装虚拟助手
如何在 Linux Ubuntu 上安装 Hermes Agent:OpenClaw 的挑战者
1. 9Router 是什么?
简而言之,9Router 是一个直接在您的机器上运行的本地代理服务器,充当 AI 编码工具(如 Claude Code、Cursor、Cline、OpenClaw、Hermes...)和 AI 供应商(Anthropic、OpenAI、Gemini、GLM...)之间的“智能中转站”。
使用 9Router 时,您将工具配置为指向 9Router 的本地地址 (http://localhost:20128/v1),而不是直接指向供应商。此时,9Router 将承担全部工作,例如格式转换(Format translation)、配额跟踪(Quota tracking)和自动令牌刷新,并在需要时自动切换到下一个供应商。

2. 9Router 安装和配置指南
步骤 1: 检查 VPS 是否已安装 Node.js
运行:
node -v
npm -v

如果显示 v20.x, v22.x, npm ... 则跳过安装 Node 的步骤。
如果报告 command not found, 请按如下方式安装 Node.js:
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
然后再次检查:
node -v
npm -v
步骤 2:使用 npm 安装 9Router
运行:
npm install -g 9router

接下来我们启动 9router:
9router

因为您在 VPS 上没有浏览器,所以只需要看到这一行即可:
Server: http://localhost:20128
步骤 3:在 WebUI 上打开 9Router 仪表盘
由于 9Router 运行在 VPS 上,而您使用的是个人电脑,最简单和最安全的方法是使用 SSH 隧道
在您的个人电脑上,打开终端 / CMD / PowerShell 并运行:
ssh -L 20128:127.0.0.1:20128 root@<IP>
示例:

然后,在您的电脑浏览器上打开:
http://localhost:20128
您将看到 9Router 仪表盘。

注意:要访问 9router WebUI,您必须始终保持您的电脑与 VPS 之间的 SSH 隧道连接。如果经常断开连接,请使用以下命令创建带 keepalive 的 SSH 隧道:
ssh -o ServerAliveInterval=30 -o ServerAliveCountMax=3 -N -L 20128:127.0.0.1:20128 root@IP_VPS_CUA_BAN

简单解释:
- ServerAliveInterval=30:每 30 秒发送一次保持连接的信号。
- ServerAliveCountMax=3: 如果连续 3 次不响应则断开。
- -N: 只打开隧道,不打开 SSH shell。CMD 窗口保持静止是正常的。
如果您不了解安全性,请不要将端口 20128 公开到互联网,因为那是您的 AI 仪表盘/API 路由器。
步骤 4:使用 systemd 配置 9router 后台运行
此步骤可帮助您无需手动运行 9router,即使 VPS 重启,9Router 也会自动再次运行。
首先,在正在运行 9router 的 VPS 窗口中,按:Ctrl + C 停止手动运行会话。
然后创建服务文件: nano /etc/systemd/system/9router.service 并粘贴以下内容:
[Unit]
Description=9Router AI Gateway
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=root
WorkingDirectory=/root
ExecStart=/root/.local/bin/9router --host 127.0.0.1 --port 20128 --no-browser --tray --skip-update --log
Restart=always
RestartSec=10
Environment=HOME=/root
Environment=PATH=/root/.local/bin:/usr/local/bin:/usr/bin:/bin
[Install]
WantedBy=multi-user.target
在 nano 中保存文件: Ctrl + O → Enter → Ctrl + X

然后运行这 4 个命令:
systemctl daemon-reload
systemctl enable 9router
systemctl start 9router
systemctl status 9router

如果看到这行: Active: active (running) 则表示 9Router 已成功在后台运行。
步骤 5:在 9Router 中连接提供商并创建组合
在 9Router Web UI 中,进入 Providers -> 找到组:Free Tier Providers

在这里,您可以选择提供免费层的提供商进行连接。在本文中,TotHost 将指导您简单连接 OpenCode Free 提供商:
选择 OpenCode Free。
点击“+”号将“Suggested free models”中的模型添加到 Available Models 中,然后点击“Test”按钮检查哪些模型可用。

选择出几个可用的模型后,我们将创建模型组合,以便 9router 可以轮流分配给 AI 代理。
在左侧菜单中,点击 Combos -> 选择 Create Combo。

接下来我们为组合命名,这里我命名为:“9router-combo”
然后点击“Add model”将刚才选择的模型添加到组合中。完成后点击“Create”

模型在这一部分中的排列顺序也非常重要,因为 9router 将从上到下依次运行模型。如果某个模型失败,则回退到下一个模型。此外,您不应选择 Round Robin,因为它会在每次运行时随机选择模型,从而难以控制输出质量。
接下来,我们将使用本地 API 测试此组合是否已运行。在 VPS 上运行命令:
curl http://127.0.0.1:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "9router-combo",
"messages": [
{
"role": "user",
"content": "Hello are you there"
}
]
}'
如果成功,它将返回一个相当长的 JSON,其中包含模型的回复片段。

至此,我们已完成 9router 的安装和配置,接下来将是 9router 与 AI 代理的连接部分。
3. 9Router 连接 OpenClaw 指南
本部分的目标是让 OpenClaw 使用 9Router 作为 Custom Provider。
首先,我们打开 OpenClaw 的提供商配置界面,在 VPS 上运行:
Openclaw model
然后将显示模型列表,我们选择 More…

然后找到 Custom Provider 并按 Enter 选择

接下来系统将询问 API Base URL,我们填写 :
http://127.0.0.1:20128/v1

接下来系统询问 How do you want to provide this API key? 我们选择 Paste API key now 并按 Enter
因为您的 9Router 当前关闭了 Require API key,所以当 OpenClaw 询问 API key 时,您可以留空或暂时输入:
sk-9router-local

此密钥仅用于让 OpenClaw 在 API key 字段中有一个值。您的本地 9Router 当前不检查密钥,因此可以使用此假字符串。
接下来是选择 Endpoint compatibility,我们选择 OpenAI-compatible 然后按 Enter。

然后系统将询问 Model ID,我们输入在连接提供商和在 9router 中创建组合步骤中设置的组合名称。(例如:TotHost 的组合名称是 “9router-combo”)。按 Enter 看到显示 Verification successful 即成功。

接下来,系统将询问 Endpoint ID,您可以保留不变并按 enter 进入下一步。

接下来系统询问 Model alias,您可以设置一个易记的短名称以便在 OpenClaw 中调用模型,例如:
9router

以后,在 OpenClaw 中,您可以使用易记的别名 9router 查看/调用它,而不是记住 9router-combo。或者,如果您不想设置别名,则留空并按 Enter 跳过。

接下来系统询问 Does this model support image input? 我们选择 No。原因是您的 9router-combo 组合包含许多免费/回退模型,不确定所有模型都支持图像输入。如果打开 Yes,OpenClaw 可能会将图片发送到不支持视觉的模型并导致错误。如果您以后单独创建一个包含所有视觉模型的组合,那时再选择 Yes。
至此,9router 和 OpenClaw 的连接配置已完成,现在我们需要检查它是否已运行,在 VPS 上运行命令:
openclaw tui

在这里,OpenClaw 已回复,模型部分显示了名称 “9router-combo”——与 TotHost 之前设置的名称一致。这样就成功了!
4. 9Router 连接 Hermes 指南
在本部分中,我们将配置 Hermes 使用 9Router 的端点。
在 VPS 上,运行:
hermes model
在提供商列表中,选择 Custom endpoint,

当 Hermes 询问 Base URL 时,输入:
http://127.0.0.1:20128/v1

接下来系统询问 API key,因为您的 9Router 当前关闭了 Require API key,您可以跳过或暂时输入:
sk-9router-local
注意:输入 API 密钥时屏幕上不会显示任何内容,因为这是安全功能。

接下来到 Select API compatibility mode 步骤:我们选择 2. Chat Completions 然后按 Enter

到选择模型的步骤,我们选择在安装连接提供商和在 9Router 中创建组合时(第 1.5 部分)创建的组合名称相同的模型。在这里,TotHost 的组合名称是 9router-combo

接下来,当系统询问 Context length in tokens [leave blank for auto-detect] 时,请留空,系统将自动调整。如果以后需要优化长上下文,再进行调整。
到为 Hermes 中的提供商命名的步骤:您可以保留系统建议的名称并按 enter。或者,为它设置一个易于识别的名称,例如 TOT 在此处设置的 “9router local”。

接下来,restart Hermes gateway 以便正在后台运行的 Hermes 通过 9Router 接收新的模型配置。在 VPS 上,运行:
hermes gateway restart --system
使用命令检查状态:
hermes gateway status --system
如果看到显示正在运行/活动的(running/active)状态,则表示稳定。

要检查 Hermes 是否已成功通过 9router 调用,请在 VPS 上运行:
hermes chat
我们注意到模型部分显示的名称与设置的一致即可。尝试发送几句话来检查模型是否工作。

如果得到如上所示的结果,则表示成功!
5. 结论
可以看出,OpenClaw / Hermes Agent 与 9Router 的结合是帮助您拥有一支强大的自动化 AI 助理团队的有效解决方案,而无需担心每月昂贵的 API 账单。
实际上,在使用过程中,9router 仍遇到一些问题,例如模型响应缓慢或持续使用配额已用完的账户。希望这些问题能在新的更新版本中得到解决!