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 方案)
- 在 macOS/Linux/Windows 上启动
hermes-webui:
export HERMES_WEBUI_PASSWORD="你的强密码"
python server.py
- 用 Cloudflare Tunnel 把本地
http://127.0.0.1:8787暴露到公网域名。 - 在 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 Tunnel 和 Tailscale 连接。 - 核心功能包括:原生聊天、思考链展示、模型/Profile 切换、会话管理、Tasks、Skills、Workspace 文件浏览、Memory 与 Insights 仪表盘。
- 凭据存 Keychain,支持离线只读缓存,iOS 18+ 可用。
- 适合已经跑 Hermes 且需要移动端控制的用户。
参考: