uzairansaruzi/hermex

Native iPhone app for your Hermes agent

Hermex – 自托管 Hermes AI 代理的 iPhone 客户端

是什么 – Hermex 是一个原生 iOS 18+ SwiftUI 应用,允许你控制自己运行的 hermes‑webui 服务器。该服务器托管一个 AI 代理(通常是一个基于大语言模型的聊天机器人),以及其工具、记忆和计划任务。Hermex 仅作为 控制平面:它发送命令、流式传输聊天内容并显示数据,而所有模型推理和数据均保留在你的本地设备上。

为何重要 – 它为注重隐私的用户提供了从手机与自己的 LLM 驱动代理交互的方式,无需任何第三方中继、分析或订阅费用。该应用是开源的,采用 MIT 许可证,使用真正的 SwiftUI 构建(无 Web 包装)。


核心功能(如 README 所述)

功能 可执行操作
聊天 发送消息,选择模型/提供者,设置推理效率,工作区和配置文件;附加文件/图片;观看包含工具调用详情的流式响应。
控制运行 在生成过程中暂停、恢复或中止。
会话 浏览、搜索并恢复服务器上存储的任意对话;会话本地缓存,支持离线阅读。
模型选择器 在服务器配置的任意模型间切换;收藏和最近使用的模型会保存。
配置文件与项目 更改代理的配置文件(例如系统提示)并将会话分组到项目中。
任务 直接从手机查看和编辑代理的 cron 风格计划任务。
技能 浏览和搜索服务器上安装的“技能”(工具插件)列表。
工作区浏览器 从应用中探索服务器的文件系统。
记忆与洞察 只读面板,显示代理的记忆存储和使用分析。

如何开始(用户端)

  1. 在你控制的任何机器上运行 hermes‑webui 服务器(macOS、Linux、Windows/WSL2)。需要 Python 3.11+ 和环境变量 HERMES_WEBUI_PASSWORD
  2. 通过以下推荐方式之一将服务器暴露给你的 iPhone
    • HTTPS 隧道或反向代理(例如 Cloudflare Tunnel)——推荐。
    • 使用 Tailscale Serve 的私有 HTTPS。
    • 仅用于本地测试,当服务器在同一台 Mac 上运行时使用 http://localhost:8787
  3. 从 App Store 安装 Hermex(或从源码构建),并输入服务器 URL 和密码。
  4. 应用将验证 /health 端点,然后允许你开始聊天、管理任务等。

自行构建应用

  • 要求 – Xcode 26(iOS 18 SDK)或更高版本,iPhone 或 iOS 18+ 模拟器。
  • 步骤 – 克隆仓库,打开 HermesMobile.xcodeproj,运行 HermesMobile 方案。依赖项将通过 Swift Package Manager 自动获取。
  • CLI 构建示例
xcodebuild -project HermesMobile.xcodeproj \
  -scheme HermesMobile \
  -destination 'platform=iOS Simulator,name=iPhone 17' build
  • 测试也可类似使用 xcodebuild test 运行。

兼容性说明

  • 该应用针对 hermes-webui 的特定提交(记录在 UPSTREAM_TESTED_SHA 中)进行了测试。由于上游 API 仍不稳定,较新或较旧的服务器版本可能导致部分功能失效。应用可容忍未知 JSON 字段,并在服务器报告不同版本时显示警告(“未测试的 Hermes 版本”)。
  • 另一种“机器人模式”连接使用了固定版本的 hermes-agentHERMES_AGENT_TESTED_SHA)。

贡献与社区

  • 指南 – 请参阅 CONTRIBUTING.mdAGENTS.md 了解编码协议、依赖规则和 PR 工作流。
  • 错误报告 – 在仓库中打开问题;另有 SECURITY.md 用于漏洞披露。
  • 支持 – 项目免费,但作者欢迎星标、X 上的关注以及咖啡捐赠。

许可证

  • MIT 许可证(参见 LICENSE)。
  • 图标资源使用 Apache‑2.0 和 MIT 许可的第三方图标集。

TL;DR

Hermex 是一个注重隐私的 iOS 客户端,可让你与自托管的 Hermes AI 代理进行聊天、控制和管理。你需要自行运行开源的 hermes‑webui 服务器,然后通过 HTTPS(或 Tailscale)连接应用。该应用免费、开源,使用 iOS 18+ 的原生 SwiftUI 构建。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目