# Hermes Android

> 仓库地址：https://github.com/raulvidis/hermes-android
> 作者/组织：raulvidis
> 成熟度：beta
> 分析日期：2026-04-15

## 一句话总结
通过 WebSocket bridge 让 Hermes Agent 远程控制 Android 设备，提供 36 个工具覆盖屏幕操作、联系人、SMS、GPS 等功能，无需 USB 或 VPN。

## 项目定位与架构
hermes-android 将 Android 设备变为 Hermes Agent 的"手脚"，实现 AI → 手机的远程控制。设计巧妙地利用手机主动外连 WebSocket（outbound connection），绕过 NAT 限制。

三组件架构：Android Bridge App（Kotlin，AccessibilityService + OkHttp WebSocket + Ktor）→ Hermes Server（Python，aiohttp WebSocket relay，端口 8766）→ AI Agent（HTTP 命令）。认证使用 6 字符 pairing code + rate limiting（5 次/60 秒，超限锁定 5 分钟）。

## 关键技术特性
- **36 个控制工具**：屏幕读取（accessibility tree）、截图、tap/swipe/scroll/long-press/drag/pinch、文本输入、GPS 定位、联系人搜索、SMS 发送、通话、媒体控制、clipboard、通知监控、录屏、TTS
- **NAT 穿透**：手机 outbound WebSocket 连接，无需端口转发或 VPN
- **Pairing code 认证**：6 字符配对码 + rate limiting
- **Screen hash 比对**：检测屏幕变化，优化操作时序
- **Intent/Broadcast 发送**：可控制系统级功能

## 设计亮点与创新
利用 AccessibilityService 实现非 root 的深度设备控制是关键设计决策。outbound WebSocket 的 NAT 穿透方案实用且简洁。36 个工具覆盖了绝大多数日常手机操作场景。安装支持 `curl | bash` 快速部署或手动构建。

## 局限性与风险
原型阶段，通信默认未加密（ws:// 而非 wss://），生产环境需 TLS proxy。单设备连接限制。无持久化 relay 服务或自动重连。无文件传输能力。AccessibilityService 需要大量敏感权限（位置、联系人、SMS、电话、通知、录屏）。安全风险显著——配对后 agent 获得全面设备访问权。

## 与生态系统的关联
与 vessel-browser（AI-native 桌面浏览器）互补——hermes-android 覆盖移动端，vessel-browser 覆盖 web 端。两者共同扩展了 Hermes Agent 的物理世界交互能力。Roadmap 提到了 iOS 兼容、on-device model execution 和专用"Hermes Phone"概念。
