近期圈子里的一个热门话题,就是“让AI真正动手操作手机”。这里说的可不是写个脚本跑自动化,而是让智能体像人一样,自己看屏幕、做分析、下决策,然后自动点击执行。
试验了一圈下来,发现一个非常成熟的方案:Hermes + Android Bridge。这套组合拳,能把一台普通的安卓手机,改造成一个具备读屏、点击、输入、远程操控和自动执行任务的AI终端。今天就把完整的实践思路和方案拆解出来,希望能给你一些启发。

一、方案速览:大脑与执行彻底拆分
这套方案的核心设计思路非常清晰,一句话概括就是“大脑”与“手脚”的分离。
| 模块 | 职责 |
|---|---|
| Hermes 智能体 | 理解需求、规划步骤、做出决策 |
| Android Bridge | 读取手机UI、执行点击输入、截图等 |
当用户下达一个任务,比如“打开设置,截图,然后分析当前页面”,整个系统的执行流程是这样的:
- Hermes 先拆解任务,理解需要做什么。
- 然后它调用安卓工具,指令传递下去。
- 手机执行操作,再把结果返回给Hermes。
- Hermes根据返回信息,决定下一步动作。
整个流程形成一个完整的自动闭环,无需人工干预。这才是智能体自动化的精髓所在。

二、核心原理解析
1)Python工具层:化繁为简的“中间人”
所有对安卓系统的控制能力,都被封装成一组Python工具。这些工具的核心功能很直观,包括点击控件、点击指定文本、输入文字、滑动屏幕、打开应用、获取截图等等。
关键的一点是,这些工具并不是直接操作复杂的安卓API,而是通过HTTP协议进行调用:
Python工具层 → localhost:8766 → 手机Bridge APP → 安卓系统
这么做的好处显而易见:开发者不需要跟底层的复杂API打交道,调度逻辑完全统一,而Hermes只需要知道“调用哪个工具、传什么参数”就行。
2)Hermes 插件式接入:即插即用
Android Bridge 接入Hermes的方式非常轻量,不需要修改Hermes内核,完全是插件式的。
整个接入流程分三步走:
- 第一步:定义工具描述,告诉模型这个工具叫什么、有什么用、参数是啥。比如“工具:open_app,参数:package_name,用途:打开指定应用”。
- 第二步:实现Python函数,把工具逻辑写出来。比如用requests库向本地服务发送一个POST请求。
- 第三步:注册工具,在Hermes中把这个函数注册为可调用的工具。
完成这三步,Hermes就可以像调用内置能力一样,轻松自动地操控手机了。
3)任务自动拆解示例
为了让你更直观地理解,假设用户输入:“总结一下我手机当前的设置状态”。
Hermes会自动将这个指令拆解为一系列原子化的步骤:
- 调用工具:打开设置应用。
- 调用工具:获取截图。
- 分析截图内容。
- 输出总结。
从抽象的需求到具体的执行动作,这个拆解过程,就是智能体自动化的关键所在。
三、Bridge APP:如何“看懂”手机屏幕
Bridge APP 的核心机制,是安卓的“无障碍服务”(AccessibilityService)。
通过这项服务,它能实时读取当前手机界面上的完整UI树,就像给AI装上的一双“眼睛”。它能获取到的信息非常丰富:
| 属性 | 示例 |
|---|---|
| 文本 | 按钮上的文字 |
| 描述 | 元素的contentDescription |
| 类名 | Button / TextView |
| 包名 | 应用包名 |
| 可点击 | true / false |
| 可编辑 | true / false |
| 坐标 | 元素的边界位置 |
| 子节点 | UI层级结构 |
这些信息会被整理成一个结构化的节点树,回传给Hermes。这样一来,Hermes就能精准地知道屏幕上哪里是按钮、哪里是输入框、哪里可以点击,为后续的精准操作打下基础。
四、手机操控能力实现
1)点击操作的两种方式
- 节点点击(推荐):直接通过UI节点信息进行点击。这种方式最精准、最稳定。
- 坐标点击:通过模拟手势,在屏幕的指定坐标上进行点击。它主要用于那些无法被无障碍服务识别节点的特殊界面或游戏。
2)文本输入的两种方式
- 直接设置文本:对可编辑的输入框直接注入文本内容,速度快且准确。
- 模拟键盘输入:更贴近真人的操作方式,先聚焦输入框,然后模拟键盘按键或粘贴文本。
3)截图与录屏
截图和录屏能力依赖于安卓系统的MediaProjection API。使用前,需要用户手动授权,包括无障碍服务、悬浮窗权限以及屏幕录制的运行时权限。
五、完整调用链路
整个系统的完整执行链路可以清晰地概括为:
用户指令
↓
Hermes 调用安卓工具
↓
HTTP中继服务 (8766端口)
↓
Bridge APP (手机端)
↓
安卓系统执行操作
↓
结果回传 Hermes
↓
Hermes 决定下一步动作
这个链路形成闭环,整个过程无需人工干预。这就是手机能够被AI自主操控的核心所在。
六、部署方案(两种)
方案1:手机本地部署(推荐)
所有组件全部运行在同一台手机上,这是最理想、最隐私的模式。
| 组件 | 位置 |
|---|---|
| Hermes | Termux (安卓上的Linux环境) |
| 中继服务 | 本机 localhost:8766 |
| Bridge APP | 安卓系统环境 |
通信走的是本地环回地址 localhost:8766。优势非常明显:无需外网,延迟最低,隐私最好。
方案2:PC / 云端远程部署
Hermes运行在性能更强的PC或云端服务器上,而手机只需要安装一个Bridge APP。
通信方式从HTTP变成了WebSocket长连接,由手机主动连接服务器。这种方式的好处有两个:一是支持多台设备统一调度,非常适合远程控制;二是无需给手机开放公网端口,可以很好地兼容各种内网环境。
七、能实现哪些能力
这套方案赋予手机的能力主要分为六大类:
| 分类 | 功能 |
|---|---|
| 读屏 | 获取UI结构、文本、坐标 |
| 操作 | 点击、长按、滑动、返回 |
| 输入 | 填写输入框内容 |
| 应用管理 | 打开或切换应用 |
| 截图录屏 | 获取屏幕内容 |
| 系统能力 | 读取通知、操作剪贴板、获取定位信息 |
基于这些能力,可以实现很多有趣的场景:比如让AI自动打开某个App登录并填写账号;自动滑动查找信息;读取通知并总结内容。可以说,日常的手机操作都能用它来自动化。
八、适用场景
这个方案最适合的场景包括:
- 方案验证和演示
- 移动端运营的辅助自动化
- 自动化测试的辅助工具
- 个人AI手机助手
- 手机AI控制研究
需要警惕的是:虽然它很强大,但当前阶段并不建议直接作为企业级自动化测试的主平台。正式的自动化测试,还是应该回归到ADB、专业的UI自动化框架以及CI/CD体系上,那才是更稳定、更成熟的方案。
结尾
总的来看,Hermes + Android Bridge 的真正价值,在于它打破了AI只能“动嘴”的局限,让AI真正地“用”上了手机。
这意味着AI的触角从云端延伸到了物理世界,未来能做的事情,想象空间非常大。
