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 建構。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案