系统极客一直在努力
专注操作系统及软件使用技能

如何优雅地将 Hermes Desktop 连接到远程 Hermes 后端

Hermes Agent

如果你的 Hermes Agent 已经跑在了云主机、VPS 或 24 小时开机的 Homelab 服务器上,使用本地安装的 Hermes Desktop 桌面端来控制它,是非常不错的一种使用方案。这样一来,不仅所有文件、会话和数据都保留在服务端,本地也能随时享受到原生桌面端的舒适 UI 体验。

以前要实现这套方案,往往得折腾 SSH 隧道、Cloudflare 代理和重写 Host 请求头,现在这些步骤都省了。只要你的 Hermes Agent 版本在 v0.16+,一切就能轻松搞定。

让 Hermes Desktop 连接到远程 Hermes 后端

步骤 1:Hermes 服务端配置

1.1 使用会话 Token 验证(不推荐)

默认情况下,每次启动 Dashboard,Hermes 都会派发一枚全新的随机令牌。这种「用后即焚」的机制在单机模式下没啥问题,但在远程访问时,服务端每次重启都会让桌面端保存的令牌失效,所以需要把它固定下来:

1在运行 Hermes 的服务端设备上,用 OpenSSL 生成一个会话 Token:

openssl rand -base64 32

2把生成好的 Token 追加到~/.hermes/.env文件末尾,保证服务端重启后令牌仍然有效:

HERMES_DASHBOARD_SESSION_TOKEN=会话 Token
# 示例:HERMES_DASHBOARD_SESSION_TOKEN=x/NvGehiDu4TjLBkRf99bVLjoCehIWRDc664y09mYTM=

3启动 Dashboard:

hermes dashboard --host 0.0.0.0 --port 9119 --insecure --no-open --skip-build

各参数作用如下:

参数解决的问题域
--host 0.0.0.0绑定所有网卡,让包括 Tailscale 虚拟网卡在内的所有内网设备都能正常访问
--port 9119保持 Dashboard 默认连接端口
--insecure启用轻量令牌身份认证模式,跳过标准 OAuth 网关流水线,仅推荐在内部受信任网络环境开启
--no-open服务端启动时不自动打开浏览器
--skip-build(可选)跳过 Web UI 编译过程,直接使用预编译静态资源,提升启动效率

--insecure标志会跳过身份验证网关,直接在网络上暴露你的.env文件(包含所有大模型 API 密钥和核心凭证)。如果是公网或不受信任的网络,强烈建议配置 OAuth 身份验证来保护面板。

1.2 使用 OAuth 身份验证(推荐)

1密码验证只需要在~/.hermes/.env中添加以下 2 行,Dashboard 就会自动启用登录页面保护你的 API 密钥:

HERMES_DASHBOARD_BASIC_AUTH_USERNAME=用户名
HERMES_DASHBOARD_BASIC_AUTH_PASSWORD=强密码

2启动 Dashboard(去掉了--insecure标志):

hermes dashboard --host 0.0.0.0 --port 9119 --no-open --skip-build

步骤 2:配置 Hermes Desktop 连接

1Hermes Desktop 官网下载并安装客户端。

2打开桌面端应用,进入「设置」>「网关」,选择「远程网关」。

3根据你的实际情况填写两项配置:

  • 远程 URL:http://<服务端IP>:9119 或你配置的反代域名。
  • 在「会话 Token」中输入刚才在服务端配置好的固定令牌;或者在「认证」右侧点击「登录」,验证用户名和密码。

4填完后选择「保存并重连」,就能正常连接到远程 Hermes 后端使用了。

将 Hermes Desktop 连接到远程网关(会话 Token)
将 Hermes Desktop 连接到远程网关(OAuth 身份验证)

5连接成功后,推荐回到「设置」>「网关」选择「所有 Profile」,就可以在主界面左下角,自由切换不同的 Agent 配置了。

使用所有 Profile
使用所有 Profile
在主界面切换不同的 Agent
在主界面切换不同的 Agent
赞(1)
分享到

评论 抢沙发