


OpenClaw(龙虾)手机控制教程
本篇内容:权限开放· 短信收发 · 通讯录查询 · 通话记录 · 硬件控制
2026 年 3 月 · 基于荣耀 200 Pro 实操编写
手机龙虾装好了、能跑了只是基础操作。它仅仅只能操作文件和运行脚本,要让它真正“控制手机”而实现读短信、查通讯录、打电话、开手电筒、拍照等等操作,还需要两个东西:
1. Termux:API:一个安卓 App,负责向系统申请权限,就像一个“中间人”。
2. termux-api:一个命令行工具包,提供 termux-sms-list、termux-contact-list 等命令。
如果两个都装好、权限就都开了。手机上龙虾就能通过你的命令操控手机的几乎所有功能。
开始之前,确认以下几项已完成:
项目 | 状态 | 如果没完成 |
Termux 已安装(从 F-Droid) | ☐ | 参考《安卓手机部署 OpenClaw 保姆级教程》 |
proot-distro Ubuntu 已安装 | ☐ | 同上 |
Node.js 22 已安装 | ☐ | 同上 |
OpenClaw 已安装并能启动 | ☐ | 同上 |
net-fix.js 网络补丁已创建 | ☐ | 同上 |
快捷命令已配置(uu/qq) | ☐ | 参考《进阶配置教程》 |
打开 F-Droid,搜索 Termux:API,安装。
⚠️ 必须从 F-Droid 安装,不能从 Google Play 安装。两个渠道的版本签名不同,混装会冲突。保证 Termux 和 Termux:API 都来自 F-Droid。
打开 Termux(不是 Ubuntu),执行:
● ● ● Termux |
$ pkg install termux-api -y |
��Termux:API 是手机上的 App,负责向系统申请权限;termux-api 是 Termux 里的命令行包,提供具体的操作命令。两个都要装,缺一不可。
在 Termux 里执行:
● ● ● Termux |
$ termux-battery-status {"health":"GOOD","percentage":85,"plugged":"UNPLUGGED", "status":"DISCHARGING","temperature":28.5} |
✅ 如果能看到电池信息(百分比、温度等),说明 Termux:API 和 termux-api 都装好了。如果报错,需要检查两个是否都安装。
路径:手机设置→ 应用和服务 → 应用管理 → 找到 Termux:API → 权限
也可以在 Termux 里输入以下命令快速跳转:
● ● ● Termux |
$ am start -a android.settings.APPLICATION_DETAILS_SETTINGS -d package:com.termux.api |
权限名称 | 开启后能做什么 | 对应命令 |
读取短信/彩信 | 读取手机收到的所有短信,包括验证码、银行通知、快递提醒等 | termux-sms-list |
发送短信 | 给任意号码发送短信 | termux-sms-send |
读取联系人(通讯录) | 查看手机里所有联系人的姓名和电话 | termux-contact-list |
读取通话记录 | 查看最近的来电、去电、未接电话 | termux-call-log |
拨打电话 | 直接拨号给指定号码 | termux-telephony-call |
权限名称 | 开启后能做什么 | 对应命令 |
获取位置信息 | 获取手机当前 GPS 坐标,可用于定位、打卡等 | termux-location |
拍摄照片和视频 | 用前后摄像头拍照 | termux-camera-photo |
录制音频 | 录音,可用于会议记录等 | termux-microphone-record |
读取剪贴板 | 读取/写入手机剪贴板内容 | termux-clipboard-get/set |
发送通知 | 在手机通知栏发提醒 | termux-notification |
功能 | 命令 | 说明 |
查看电池状态 | termux-battery-status | 电量、温度、充电状态 |
手电筒开/关 | termux-torch on/off | 开关闪光灯 |
震动手机 | termux-vibrate -d 2000 | 震动指定毫秒 |
设置亮度 | termux-brightness 255 | 0-255 |
调节音量 | termux-volume music 10 | 媒体/铃声/闹钟 |
打开网页 | termux-open-url "URL" | 用浏览器打开 |
屏幕弹窗 | termux-toast "提示" | 类似安卓 Toast |
手机SIM信息 | termux-telephony-deviceinfo | SIM卡、运营商信息 |
WiFi信息 | termux-wifi-connectioninfo | 当前 WiFi 连接 |
Termux:API 的命令装在 Termux 里,但龙虾跑在 proot Ubuntu 里。需要创建“快捷方式”让 Ubuntu 能调用这些命令。
进入 Ubuntu【我的进入ubuntu命令被我简化成了uu,这个要不要简化无所谓。不简化就参看保姆级教程里面的方式进入。进入后后,复制粘贴以下内容:
● ● ● Ubuntu (proot) |
for cmd in termux-sms-list termux-sms-send \ termux-contact-list termux-call-log \ termux-telephony-call termux-battery-status \ termux-location termux-vibrate termux-notification \ termux-torch termux-clipboard-get termux-clipboard-set \ termux-camera-photo termux-microphone-record \ termux-volume termux-open-url termux-toast \ termux-telephony-deviceinfo termux-wifi-connectioninfo \ termux-download termux-share termux-brightness \ termux-notification-remove termux-api-helper; do ln -sf /data/data/com.termux/files/usr/bin/$cmd \ /usr/local/bin/$cmd 2>/dev/null done echo "链接创建完成" |
验证:
● ● ● Ubuntu (proot) |
root@localhost:~# termux-sms-list -l 3 |
✅ 能看到短信内容就说明链接成功。
光有命令还不够,要告诉龙虾怎么用这些命令。否则它会自作主张用 su、adb shell 等根本不能用的命令,然后报错。
需要在龙虾的指令文件中加入以下内容:
文件位置:~/.openclaw/agents/main/agent/instructions.md
内容要点:
1. 明确列出所有禁止使用的命令(su、adb shell、content query 等)
2. 明确列出所有可用的 termux- 命令及用法
3. 每个常见场景的处理流程(“看短信”该执行什么、“给张三发短信”该怎么做)
4. 回复风格要求
⚠️ 指令写得越详细,龙虾越听话。如果发现龙虾不听话,还在试图用 su、自己写代码等方式操纵指令,说明指令不够强硬还需要加强。实战中我经历了多轮调教才让龙虾乖乖用 termux 命令。
命令 | 作用 | 示例 |
termux-sms-list -l N | 读取最近 N 条短信 | termux-sms-list -l 10 |
termux-sms-list -l N -n 号码 | 指定号码的短信 | termux-sms-list -l 20 -n 95599 |
termux-sms-list -l N -t sent | 已发送短信 | termux-sms-list -l 20 -t sent |
termux-sms-list -l N -t all | 所有短信 | termux-sms-list -l 50 -t all |
termux-sms-send -n 号码 "内容" | 发送短信 | termux-sms-send -n 13800138000 "我到了" |
��短信返回 JSON 数组,每条含 number(号码)、body(内容)、received(时间)、read(是否已读)。龙虾可以读取后用 AI 能力分析、归类、识别诈骗。
命令 | 作用 |
termux-contact-list | 列出所有联系人(姓名+号码) |
termux-call-log -l N | 最近 N 条通话记录(来电/去电/未接) |
termux-telephony-call 号码 | 拨打电话(直接呼出) |
termux-telephony-deviceinfo | 查看 SIM 卡和网络信息 |
命令 | 作用 |
termux-battery-status | 电量、充电状态、温度 |
termux-location | 当前 GPS 坐标 |
termux-torch on/off | 开关手电筒 |
termux-vibrate -d 毫秒 | 震动手机 |
termux-brightness 0-255 | 调节屏幕亮度 |
termux-volume music 0-15 | 调节媒体音量 |
termux-wifi-connectioninfo | 当前 WiFi 连接信息 |
命令 | 作用 |
termux-clipboard-get | 读取剪贴板内容 |
termux-clipboard-set "内容" | 写入剪贴板 |
termux-notification --title "标题" --content "内容" | 发送手机通知 |
termux-toast "文字" | 屏幕弹窗提示 |
termux-open-url "网址" | 用浏览器打开网页 |
termux-download "网址" | 下载文件到 Downloads |
命令 | 作用 |
termux-camera-photo /tmp/photo.jpg | 后置摄像头拍照 |
termux-camera-photo -c 1 /tmp/selfie.jpg | 前置摄像头自拍 |
termux-microphone-record -f /tmp/audio.mp3 | 开始录音 |
termux-microphone-record -q | 停止录音 |
在飞书或 Web 界面输入:
● ● ● 和龙虾对话 |
你: 读取我的收件箱的前50条短信,然后帮我分析哪些是诈骗短信 |
龙虾会读取50条短信,然后用 AI 能力自动归类:银行通知、快递提醒、验证码、广告、疑似诈骗等。
● ● ● 和龙虾对话 |
你: 查找张三的号码,然后给他发短信"明天下午三点开会" |
龙虾会先查通讯录找到张三的号码,然后自动发送短信。
● ● ● 和龙虾对话 |
你:帮我看看最近有哪些未接来电 |
● ● ● 和龙虾对话 |
你: 读取前100条短信,然后分析一下短信类型 |
● ● ● 和龙虾对话 |
你:帮我设置"开会提醒" ,告诉我"下午三点党建工作会议" |
● ● ● 和龙虾对话 |
你: 打开手电筒并震动5秒 |
手机会同时开手电筒和震动5秒。
Termux:API 没有短信权限。去设置 → 应用管理 → Termux:API → 权限 → 打开短信权限。
说明 instructions.md 指令不够强硬。需要在指令中明确禁止 su、adb shell、content query 等命令,并列出每个场景对应的正确命令。
手机端的 proot Ubuntu 环境下一般不会乱码,因为 termux- 命令直接返回 UTF-8 的 JSON。如果乱码,那就检查是否在 Termux 而不是 Ubuntu 里执行的命令。
目前没有 root 权限无法直接操控 App 界面。需要配合 AutoJs6实现。这是进阶内容。
确认termux-wake-lock 已执行;Termux 在最近任务里已锁定;Termux 电池优化设为“不受限制”;省电模式已关闭。
可以。操控 App 界面需要无障碍服务权限,可以配合 AutoJs6 实现,但配置较复杂。
教程到此结束
你的龙虾现在能看/发短信、查通讯录、打电话、开手电筒……下一步是让它操控 App。
龙虾说:大家动动点点关注点点赞!还有高阶篇,让龙虾控制你的微信……