clawpaw-android-control
install
source · Clone the upstream repo
git clone https://github.com/klscool/clawpaw-android-control
Claude Code · Install into ~/.claude/skills/
git clone --depth=1 https://github.com/klscool/clawpaw-android-control ~/.claude/skills/klscool-clawpaw-android-control-clawpaw-android-control
manifest:
SKILL.mdsource content
ClawPaw Android 手机控制
📖 执行前必读
📱 环境要求
手机端:
- Android 10+(推荐 Android 11+)
- 安装 ClawPaw App
- 开启无障碍服务(必需)
- 部分功能需授权额外权限(见 权限说明)
主机端:
- Node.js 18+(运行 Gateway)
- Python 3.8+(运行 HTTP 脚本)
- 网络连通(同 WiFi 或 Tailscale)
路径说明:本文档中的
<skill_dir> 是占位符,代表本 skill 的实际存放路径(如 ~/.openclaw/skills/clawpaw-android-control)。使用时请替换为实际路径。
执行任何具体任务前,请先查阅操作指南索引:
<skill_dir>/references/INDEX.md
该索引包含:
- ✅ 所有支持的操作场景
- ✅ 对应指南文件位置
- ✅ 快速决策流程
- ✅ 支持的应用列表
通用流程:
- 确认任务场景(如"评论互动"、"搜索地点")
- 在 INDEX.md 中找到对应指南
- 读取指南后执行任务
- 优先使用获取布局的方法执行任务
方式一:Node(Gateway)
手机通过 WebSocket 连接 Gateway,通过 OpenClaw
nodes 工具调用。
前提:手机端 App 显示「已连接 Gateway」
🎯 原生 Action(优先使用)
以下原生 action 直接用
调用,无需 invoke,有参数验证和统一返回格式:nodes action=<action>
| Action | 说明 | 参数 | 示例 |
|---|---|---|---|
| 设备状态(电量、屏幕、WiFi、位置) | 无 | |
| 设备信息(型号、厂商、Android 版本) | 无 | |
| 设备健康(内存、电池详情)仅 Node | 无 | |
| 权限状态 仅 Node | 无 | |
| 获取位置 | 无 | |
| 通知列表 | 无 | |
| 最新照片(返回图片) | 无 | |
| 列出所有节点 | 无 | |
| 节点详情 | | |
| 发送通知 | , | |
其他所有命令用
方式 ↓invoke
🔧 Invoke 命令(非原生)
格式:
openclaw nodes invoke --node <NODE_ID> --command <命令> --params '<JSON>'
参数规则:
- 无参数命令:
--params '{}' - 有参数:JSON 格式,键名与下表一致
- 带文字:传
/text
/title
等字段body
无障碍 / 界面操作(需开启无障碍服务)
| 命令 | 参数 | 说明 | 示例 |
|---|---|---|---|
| , | 点击坐标 | |
| , , , , (可选) | 滑动 | |
| , , | 点击后输入(需 ClawPaw 输入法) | |
| , , | 无障碍直接输入(无需输入法) | |
| , | 长按 700ms | |
| , , , | 两指同向滑动(放大) | |
| , , , | 两指反向滑动(缩放) | |
| 无 | 返回键 | |
| 无 | 获取界面布局 XML | |
| 无 | 截图(Base64) | |
| 或 | 按包名或 schema 打开应用 | |
设备状态(无需无障碍)
| 命令 | 参数 | 返回 |
|---|---|---|
| 无 | 电量百分比 0-100 |
| 无 | WiFi SSID |
| 无 | / |
| 无 | 完整状态(定位+WiFi+屏幕+电量+分辨率) |
硬件控制
| 命令 | 参数 | 说明 |
|---|---|---|
| (可选,默认 200) | 震动 |
| 无 | 后置拍照(异步) |
| 无 | 前置拍照(异步) |
| 无 | 点亮屏幕 |
通知管理(需通知监听权限)
| 命令 | 参数 | 说明 |
|---|---|---|
| , 或 | 推送本地通知 |
| , | 同上(别名) |
| , | 系统通知 |
⚠️ | , | 操作通知(dismiss/open/reply)仅 Node |
数据访问(需相应权限)
| 命令 | 参数 | 说明 |
|---|---|---|
| (可选,默认 500) | 联系人列表 |
| , | 搜索联系人 |
| (可选,默认 50) | 最近照片 |
| (可选,默认 100) | 日历事件 |
| | 同上(别名) |
音量控制
| 命令 | 参数 | 说明 |
|---|---|---|
| 无 | 获取音量 |
| , | 设置音量(stream: /) |
文件操作(需存储权限)
| 命令 | 参数 | 说明 |
|---|---|---|
| | 读取 UTF-8 文本 |
| | 读取二进制文件 |
传感器与运动
| 命令 | 参数 | 说明 |
|---|---|---|
| 无 | 步数 |
| 无 | 光照 lux |
| 无 | 传感器列表 |
⚠️ | , | 计步(ISO8601 时间)仅 Node |
⚠️ | 无 | 活动识别(步行/静止等)仅 Node |
蓝牙/WiFi
| 命令 | 参数 | 说明 |
|---|---|---|
| 无 | 已配对设备 |
| 无 | WiFi 状态 |
| | 开关 WiFi(true/false) |
短信/电话(需相应权限)
| 命令 | 参数 | 说明 |
|---|---|---|
| | 收件箱短信 |
| /, / | 发送短信 |
| / | 打开拨号界面 |
| / | 直接拨打电话 |
铃声与勿扰
| 命令 | 参数 | 说明 |
|---|---|---|
| 无 | 铃声模式(normal/silent/vibrate) |
| | 设置铃声模式 |
| 无 | 勿扰状态 |
| | 设置勿扰(true=仅闹钟) |
⚠️ 注意事项
-
无障碍服务:界面操作类命令需要开启 ClawPaw 无障碍服务
-
权限授权:
- 部分功能需要用户手动授权(通知、联系人、照片等)
- 具体授权路径见
README_PERMISSIONS.md
-
网络连通:
- Gateway 模式:手机需连接到同一 Gateway
- HTTP 模式:手机与主机需网络互通(同 WiFi 或 Tailscale)
-
命令命名:
- 原生 action 用下划线:
device_status - invoke 命令用点号:
、device.statusvolume.set
- 原生 action 用下划线:
-
返回布局:无障碍命令默认返回布局,可加
关闭return_layout_after: false
🎯 快速开始
1. 手机端安装 ClawPaw App
- 下载 ClawPaw App
- 安装到 Android 手机(Android 10+)
- 开启无障碍服务:
设置 → 辅助功能 → 已下载的服务 → ClawPaw Accessibility Service → 开启 - (可选)按需授予权限:位置、通知、联系人、照片等
2. 主机端配置
方式一:Gateway(WebSocket)
# 确认 Gateway 已运行 openclaw gateway status # 添加节点(ClawPaw App 连接到 Gateway 后自动注册) openclaw nodes status
方式二:本地 HTTP
# 确认手机和主机网络连通(同 WiFi 或 Tailscale) # 手机端 ClawPaw App 端口:8765(默认) # 使用 Python 脚本 pip3 install requests pyyaml cd ~/.openclaw/skills/clawpaw-android-control/scripts python3 clawpaw_controller.py device_info
3. 测试命令
# 查看设备信息(Gateway) openclaw nodes device_info --node <NODE_ID> # 获取状态(Gateway) openclaw nodes device_status --node <NODE_ID> # 获取最新照片(Gateway) openclaw nodes photos_latest --node <NODE_ID> # HTTP 方式测试 python3 clawpaw_controller.py device_info
⚠️ 权限说明
ClawPaw 使用 24 项权限,分为三类:
| 类别 | 权限数 | 说明 |
|---|---|---|
| 基础权限 | 9 项 | 安装即授予,必需 |
| 用户授权 | 14 项 | 手动授权,可选 |
| 特殊权限 | 2 项 | 特殊授权,可选 |
详细说明:见 README_PERMISSIONS.md
| 功能 | 必需权限 | 示例命令 |
|---|---|---|
| 点击/滑动/输入 | | , , |
| 定位 | | |
| 通知 | | |
| 联系人 | | |
| 照片 | | |
| 短信 | + | , |
| 电话 | | , |
| 文件读取 | | |
[61 more lines in file. Use offset=170 to continue.]
手机端 HTTP 服务(默认端口 8765),通过 Python 脚本调用。
前提:手机和主机网络互通(同 WiFi 或 Tailscale)
配置
# config.yaml network_type: local # local / tailscale / wifi host: 127.0.0.1 # local 模式不需要 port: 8765 timeout: 10 # 百炼 API 配置(视觉分析需要) dashscope_api_key: sk-xxx dashscope_model: qwen3.5-plus
脚本调用
脚本位置:
<skill_dir>/scripts/clawpaw_controller.py
# 基础操作 python3 clawpaw_controller.py click 500 1000 python3 clawpaw_controller.py swipe 500 1500 500 500 python3 clawpaw_controller.py input_text_direct 300 800 "内容" python3 clawpaw_controller.py back # 状态查询 python3 clawpaw_controller.py get_battery python3 clawpaw_controller.py get_wifi_name python3 clawpaw_controller.py device_info # 视觉分析(HTTP 独有) python3 clawpaw_controller.py analyze "找到搜索框并返回坐标" python3 clawpaw_controller.py analyze "找到评论入口" --no-save
完整命令列表见脚本帮助:
python3 clawpaw_controller.py --help
快速参考
| 需求 | 推荐方式 | 命令 |
|---|---|---|
| 查设备状态 | 原生 action | |
| 查设备信息 | 原生 action | |
| 获取位置 | 原生 action | |
| 获取通知 | 原生 action | |
| 获取照片 | 原生 action | |
| 点击/滑动/输入 | invoke | // |
| 打开应用 | invoke | |
| 截图/布局 | invoke | / |
更新时间:2026-03-13