Hermex:在 iPhone 上远程驾驭你的 Hermes Agent


自托管 Hermes Agent 的体验,过去基本被锁死在电脑浏览器里。你要么坐在 Mac 前,要么通过浏览器远程打开一个网页版面板。虽然能用,但手机上的体验总是打折:输入框小、刷新重、交互处处像桌面版硬塞进来的。

Hermex 想改变这个局面。它是为 Hermes Agent 打造的 原生 iPhone 遥控器,用 Swift 和 SwiftUI 写成,直接把自托管 AI 的管理体验搬到了手机上。


它不是什么网页套壳

Hermex 最大的卖点,也是最容易被忽略的地方:它是原生应用,不是把 hermes-webui 包一层 WebView 就上架的伪原生 App

这意味着:

  • 聊天流式响应是原生 SSE 渲染,不是网页轮询
  • 界面按 iOS 18 的玻璃拟态风格重新设计
  • 登录凭据存在 iOS Keychain,安全且系统级管理
  • 会话列表、Tasks、Skills、文件浏览器都是独立原生视图
  • 支持离线只读缓存,最近会话没网也能回看

简单说,Hermex 不是“把网页塞进去”,而是“把 Hermes 的能力按手机逻辑重做了一遍”。


需要搭配自托管 Hermes 使用

Hermex 本身不托管、不运行 AI。它是一个纯客户端,你需要在电脑、NAS 或服务器上自己跑 Hermes 的 WebUI 服务(上游项目通常是 nesquena/hermes-webui)。

典型的连接方式:

你的 iPhone
    ↓ HTTPS
Cloudflare Tunnel(或 Tailscale)
    ↓ HTTP
hermes-webui 跑在 127.0.0.1:8787
    ↓ 本地调用
Hermes Agent + 工具链

手机只是控制平面,算力和数据都留在你自己的机器上。这种“手机当驾驶舱,电脑当引擎”的模式,既保留了自托管的隐私性,又补上了移动端的便利性。


核心功能一览

1. 原生聊天 + 思考链可见

Hermex 支持发送消息、附件、图片,并实时流式查看 Agent 的输出。更重要的是,它保留了 thinking 和 tool-call 细节——你可以看到 Hermes 在脑子里盘算了什么、调用了哪些工具、为什么选这条路。

对习惯用 Claude/Cursor 的 reasoning 视图的人来说,这种透明度很亲切。

2. 模型与 Profile 切换

如果你的服务器配置了多个模型或多个 provider,Hermex 让你直接在应用里切换:

  • 切换模型
  • 切换 reasoning effort(推理强度)
  • 切换 agent profile
  • 切换 workspace

不用再回到服务器改环境变量,手机上点几下就行。

3. 会话管理

支持新建、重命名、删除、置顶、归档、移动到项目。项目(Projects)功能让你按工作维度组织会话,而不是所有对话堆在一个列表里。

4. Tasks:手机上看 cron 任务

Hermes 的 Tasks 本质上是定时/周期任务。Hermex 提供了只读查看面板,你可以随时检查:

  • 哪些任务在跑
  • 下次执行时间
  • 历史运行状态

出门在外时,扫一眼就能确认自动化流水线还在正常工作。

5. Skills:浏览已安装的 Agent 技能

Hermes 的 Skills 是能力插件。Hermex 允许你查看服务器上安装了哪些技能,快速搜索和浏览。虽然不能直接安装,但用来做移动盘点和分享清单已经足够方便。

6. Workspace 文件浏览器

Agent 在工作中会生成、修改文件。Hermex 内置文件浏览器,可以:

  • 查看工作目录结构
  • 打开文本文件
  • 查看代码高亮(Swift 用 Splash,其他语言用 Highlightr)

不用 SSH 回机器,也不用打开桌面编辑器,在地铁上就能看结果。

7. Memory & Insights:只读仪表盘

  • Memory:查看 Agent 已记住的知识
  • Insights:查看 Token 消耗、使用统计等数据

对想观察 Agent 长期行为、优化成本的人来说,这是移动场景下最有用的两个面板。


部署方式:三种连接模式

Hermex 支持三种连接路径,按安全级别推荐:

方式 适用场景 安全建议
Cloudflare Tunnel 推荐方案,公开域名 + 真实 TLS 必须设置 HERMES_WEBUI_PASSWORD 强密码
Tailscale 不暴露公网,虚拟内网直连 适合已有 Tailscale 网络的用户
本地模拟器 开发测试,服务器和 App 在同一 Mac 仅用于 http://localhost:8787

配置步骤(Cloudflare Tunnel 方案)

  1. 在 macOS/Linux/Windows 上启动 hermes-webui
export HERMES_WEBUI_PASSWORD="你的强密码"
python server.py
  1. 用 Cloudflare Tunnel 把本地 http://127.0.0.1:8787 暴露到公网域名。
  2. 在 iPhone 上下载 Hermex,输入服务器 URL 和密码,完成连接。

技术栈:为什么选原生 Swift

Hermex 的 README 和项目规范里写得很清楚:

  • UI 框架:SwiftUI,iOS 18+
  • 网络:原生 URLSession
  • SSE 流式LDSwiftEventSource
  • Markdown 渲染swift-markdown-ui
  • 代码高亮Splash + Highlightr
  • 本地缓存:SwiftData
  • 凭据存储:Keychain

这种技术组合让应用保持轻量,没有引入大量第三方 UI 库,也符合“小团队、高可控”的调性。


与上游的关系

Hermex 是一个独立的社区客户端,不隶属于 Hermes 或 hermes-webui 项目。它通过读取上游的 HTTP + SSE API 与服务器通信,并主动验证端点行为。

项目规范中特别提到:

“Do not invent endpoints — verify them against the running server.” “The wire format is the source of truth.”

这种务实的态度值得点赞:不臆造接口,不魔改上游,只做客户端该做的事。


谁适合用 Hermex

Hermex 不适合所有人。它最适合:

  • 已经部署 Hermes Agent 自托管环境的用户
  • 希望出门在外也能查看/干预 Agent 运行的人
  • 对手机原生体验有要求,不想用浏览器应付的移动用户
  • 需要让 Agent 持续工作,但想随时掌握状态的技术管理者

如果你还没有自托管 Hermes,Hermex 本身不会帮你托管。它更像是一个“把已有能力从桌面搬到口袋”的扩展。


干货提炼

  • Hermex 是 Hermes Agent 的 原生 iOS 客户端,不是网页套壳。
  • 它需要你自己部署 hermes-webui 服务器,支持 Cloudflare TunnelTailscale 连接。
  • 核心功能包括:原生聊天、思考链展示、模型/Profile 切换、会话管理、Tasks、Skills、Workspace 文件浏览、Memory 与 Insights 仪表盘。
  • 凭据存 Keychain,支持离线只读缓存,iOS 18+ 可用。
  • 适合已经跑 Hermes 且需要移动端控制的用户。

参考: