← 返回 Skills 市场
96
总下载
0
收藏
1
当前安装
1
版本数
在 OpenClaw 中安装
/install android-adb-skill
功能描述
Android 开发调试技能,通过系统 ADB 工具操作 Android 设备。以下场景必须触发此技能:(1) 直接 ADB 操作——安装 APK、查看设备列表、抓取 logcat 日志、查看已安装应用、清除应用数据、截图、重启设备、拉取/推送文件、查看 CPU/内存/电池信息、adb shell 操作;(2)...
使用说明 (SKILL.md)
\r \r
Android ADB 调试技能\r
\r
概述\r
\r
此技能通过调用系统环境变量中的 adb 命令操作 Android 设备。执行任何 ADB 操作前,必须先执行「设备检测流程」。\r
\r
---\r
\r
编码完成后的验证流程\r
\r 每当完成 Android 端代码修改(包括 Flutter Android、原生 Android 等),必须在回复末尾主动附上以下提示:\r \r
📱 代码已修改,建议通过 ADB 验证效果:\r
- 构建 APK:
flutter build apk --debug/./gradlew assembleDebug\r- 检测设备并安装:(执行设备检测流程 → 自动安装)\r
- 查看运行日志:
adb logcat --pid=$(adb shell pidof \x3C包名>)\r \r 需要我帮你执行安装和日志监控吗?\r \r 不要等用户主动询问,编码任务完成即触发此提示。\r \r ---\r \r
核心流程:设备检测\r
\r 每次执行 ADB 操作前必须先运行设备检测。\r \r
# 检测 adb 是否可用\r
which adb || echo "ADB_NOT_FOUND"\r
\r
# 获取已连接设备列表\r
adb devices\r
```\r
\r
### 设备数量判断逻辑\r
\r
| 情况 | 处理方式 |\r
|------|---------|\r
| adb 命令不存在 | 提示用户安装 Android SDK Platform Tools,并给出下载地址 |\r
| 0 台设备 | 提示用户连接设备或开启 USB 调试,给出排查步骤 |\r
| 1 台设备 | **直接执行**,无需用户确认 |\r
| 多台设备 | **展示设备列表**,让用户选择目标设备,所有后续命令加 `-s \x3Cserial>` 参数 |\r
\r
### 设备列表展示格式(多设备时)\r
\r
```\r
检测到 N 台已连接的 Android 设备:\r
\r
序号 设备序列号 状态 设备信息\r
1 emulator-5554 online [模拟器]\r
2 R3CT90BFXXX online [获取型号]\r
3 192.168.1.100:5555 online [无线连接]\r
\r
请输入序号选择目标设备:\r
```\r
\r
获取设备型号:\r
```bash\r
adb -s \x3Cserial> shell getprop ro.product.model\r
```\r
\r
---\r
\r
## 功能模块\r
\r
### 1. 安装 APK\r
\r
```bash\r
# 单设备\r
adb install -r \x3Capk_path>\r
\r
# 指定设备\r
adb -s \x3Cserial> install -r \x3Capk_path>\r
\r
# 常用参数说明:\r
# -r 允许覆盖安装(保留数据)\r
# -d 允许降级安装\r
# -g 自动授予所有运行时权限(Android 6.0+)\r
# -t 允许安装测试 APK\r
```\r
\r
**安装结果判断**:\r
- `Success` → 安装成功,显示包名\r
- `INSTALL_FAILED_*` → 解析错误码并给出中文说明和解决方案\r
\r
常见错误码对照表见 `references/install-errors.md`\r
\r
---\r
\r
### 2. 抓取 Logcat 日志\r
\r
```bash\r
# 清除旧日志\r
adb [-s \x3Cserial>] logcat -c\r
\r
# 按包名过滤(需先获取 PID)\r
PID=$(adb [-s \x3Cserial>] shell pidof \x3Cpackage_name>)\r
adb [-s \x3Cserial>] logcat --pid=$PID\r
\r
# 按 Tag 过滤\r
adb [-s \x3Cserial>] logcat -s \x3CTAG>:V\r
\r
# 按级别过滤(V/D/I/W/E/F)\r
adb [-s \x3Cserial>] logcat *:E\r
\r
# 保存到文件\r
adb [-s \x3Cserial>] logcat --pid=$PID > logcat_$(date +%Y%m%d_%H%M%S).log\r
\r
# 实时过滤关键词\r
adb [-s \x3Cserial>] logcat | grep \x3Ckeyword>\r
```\r
\r
**用户输入包名时的标准流程**:\r
1. 先用 `pidof` 获取 PID\r
2. 若 PID 为空(应用未运行),提示用户先启动应用,或改用包名关键词 grep\r
3. 提供实时输出与保存文件两个选项\r
\r
---\r
\r
### 3. 查看已安装应用列表\r
\r
```bash\r
# 所有应用\r
adb [-s \x3Cserial>] shell pm list packages\r
\r
# 只看第三方应用(用户安装的)\r
adb [-s \x3Cserial>] shell pm list packages -3\r
\r
# 只看系统应用\r
adb [-s \x3Cserial>] shell pm list packages -s\r
\r
# 包含 APK 路径\r
adb [-s \x3Cserial>] shell pm list packages -f\r
\r
# 搜索关键词(如 "wechat")\r
adb [-s \x3Cserial>] shell pm list packages | grep \x3Ckeyword>\r
\r
# 获取应用详细信息\r
adb [-s \x3Cserial>] shell dumpsys package \x3Cpackage_name>\r
```\r
\r
**输出格式化**:去掉 `package:` 前缀,每行一个包名,按字母排序后展示。\r
\r
---\r
\r
### 4. 卸载应用\r
\r
```bash\r
# 卸载(保留数据)\r
adb [-s \x3Cserial>] shell pm uninstall -k \x3Cpackage_name>\r
\r
# 完全卸载\r
adb [-s \x3Cserial>] uninstall \x3Cpackage_name>\r
```\r
\r
---\r
\r
### 5. 清除应用数据\r
\r
```bash\r
adb [-s \x3Cserial>] shell pm clear \x3Cpackage_name>\r
```\r
\r
---\r
\r
### 6. 启动/停止应用\r
\r
```bash\r
# 启动应用(需要知道 MainActivity)\r
adb [-s \x3Cserial>] shell monkey -p \x3Cpackage_name> -c android.intent.category.LAUNCHER 1\r
\r
# 强制停止\r
adb [-s \x3Cserial>] shell am force-stop \x3Cpackage_name>\r
\r
# 启动指定 Activity\r
adb [-s \x3Cserial>] shell am start -n \x3Cpackage_name>/\x3Cactivity_name>\r
```\r
\r
---\r
\r
### 7. 截图与录屏\r
\r
```bash\r
# 截图并拉取到本地\r
adb [-s \x3Cserial>] shell screencap /sdcard/screenshot.png\r
adb [-s \x3Cserial>] pull /sdcard/screenshot.png ./screenshot_$(date +%Y%m%d_%H%M%S).png\r
\r
# 录屏(最长3分钟,Ctrl+C 停止)\r
adb [-s \x3Cserial>] shell screenrecord /sdcard/record.mp4\r
adb [-s \x3Cserial>] pull /sdcard/record.mp4 ./record_$(date +%Y%m%d_%H%M%S).mp4\r
```\r
\r
---\r
\r
### 8. 文件操作\r
\r
```bash\r
# 推送文件到设备\r
adb [-s \x3Cserial>] push \x3Clocal_path> \x3Cdevice_path>\r
\r
# 从设备拉取文件\r
adb [-s \x3Cserial>] pull \x3Cdevice_path> \x3Clocal_path>\r
```\r
\r
---\r
\r
### 9. 设备信息查询\r
\r
```bash\r
# 设备型号\r
adb [-s \x3Cserial>] shell getprop ro.product.model\r
\r
# Android 版本\r
adb [-s \x3Cserial>] shell getprop ro.build.version.release\r
\r
# API Level\r
adb [-s \x3Cserial>] shell getprop ro.build.version.sdk\r
\r
# 电池信息\r
adb [-s \x3Cserial>] shell dumpsys battery\r
\r
# CPU 信息\r
adb [-s \x3Cserial>] shell cat /proc/cpuinfo\r
\r
# 内存信息\r
adb [-s \x3Cserial>] shell cat /proc/meminfo\r
\r
# 应用内存占用\r
adb [-s \x3Cserial>] shell dumpsys meminfo \x3Cpackage_name>\r
\r
# 设备 IP 地址\r
adb [-s \x3Cserial>] shell ip addr show wlan0\r
```\r
\r
---\r
\r
### 10. 无线 ADB 连接\r
\r
```bash\r
# USB 连接后,开启 TCP 模式(Android 11 以下)\r
adb [-s \x3Cserial>] tcpip 5555\r
adb connect \x3Cdevice_ip>:5555\r
\r
# Android 11+ 无线配对(设置 → 开发者选项 → 无线调试)\r
adb pair \x3Cip>:\x3Cport> # 输入配对码\r
adb connect \x3Cip>:5555\r
```\r
\r
---\r
\r
### 11. 重启设备\r
\r
```bash\r
# 正常重启\r
adb [-s \x3Cserial>] reboot\r
\r
# 重启到 Recovery\r
adb [-s \x3Cserial>] reboot recovery\r
\r
# 重启到 Bootloader\r
adb [-s \x3Cserial>] reboot bootloader\r
```\r
\r
---\r
\r
## 输出规范\r
\r
1. **始终显示实际执行的命令**,让用户知道运行了什么\r
2. **命令输出用代码块包裹**,保持原始格式\r
3. **中文解释结果**,不要让用户自己看英文错误\r
4. **多步骤操作**给出进度提示(如"正在安装... 安装完成 ✓")\r
5. **失败时**给出具体原因和解决步骤,不只是报错\r
\r
---\r
\r
## ADB 环境排查\r
\r
若 `adb` 命令找不到:\r
\r
```bash\r
# macOS / Linux 检查\r
echo $ANDROID_HOME\r
ls $ANDROID_HOME/platform-tools/adb\r
\r
# Windows 检查\r
echo %ANDROID_HOME%\r
where adb\r
```\r
\r
**下载地址**:https://developer.android.com/studio/releases/platform-tools\r
\r
**PATH 配置**(以 macOS/Linux 为例):\r
```bash\r
export ANDROID_HOME=$HOME/Library/Android/sdk # macOS\r
export PATH=$PATH:$ANDROID_HOME/platform-tools\r
安全使用建议
This skill appears to be a legitimate ADB helper, but it has two practical issues you should consider before installing: (1) metadata does not declare that 'adb' is required or that it will read $ANDROID_HOME/PATH — verify your environment and that adb is present; (2) the runtime rules force automatic invocation and, on a single connected device, will execute ADB commands without explicit per-action confirmation (including installs, uninstalls, clearing data, pulling files, screenshots, and reboots). If you plan to use this skill, require the agent to ask for explicit confirmation before any action that modifies device state or pulls files, restrict automatic triggers, and ensure devices are authorized. If you need stricter safety, do not enable autonomous actions or prefer a skill that requires explicit, per-command user approval.
功能分析
Type: OpenClaw Skill
Name: android-adb-skill
Version: 1.0.0
The skill is a standard utility for Android development and debugging via ADB (Android Debug Bridge). It provides instructions for common tasks such as APK installation, logcat monitoring, file transfers, and device information retrieval (SKILL.md). While it utilizes powerful system commands and shell access, all behaviors are transparently documented and strictly aligned with the stated purpose of Android development support.
能力评估
Purpose & Capability
The name/description and SKILL.md consistently describe an ADB-based Android debugging/deploy skill and the provided commands and workflows are coherent for that purpose. However, the registry metadata declares no required binaries or environment variables even though the runtime instructions assume a system 'adb' binary and reference $ANDROID_HOME / PATH setup — an incoherence between declared requirements and the actual capabilities needed.
Instruction Scope
SKILL.md explicitly instructs the agent to run a wide set of ADB commands (install/uninstall, clear data, pull/push files, screencap, logcat, reboot, shell commands) which are within an ADB skill's domain. The major concern is the behavioral rules: (a) if exactly one device is connected the skill will "directly execute" commands without asking the user, and (b) the doc mandates the skill be triggered automatically in many contextual phrases ("帮我装一下", "试一下", etc.). This grants the agent broad discretion to perform potentially destructive or privacy-sensitive operations (pulling files, screenshots, clearing data, uninstalling, rebooting) without explicit, per-action confirmation.
Install Mechanism
The skill is instruction-only and has no install spec or code files. This is the lowest install risk (nothing written to disk by the skill package itself).
Credentials
Declared requirements list no env vars or binaries, but the instructions call 'which adb', reference ANDROID_HOME, and give PATH setup instructions — meaning the skill expects access to local environment variables and a system binary. The lack of declared required binaries/vars is a mismatch. The skill does not request cloud credentials or unrelated secrets, but it does assume access to local filesystem and device I/O (which may expose sensitive device data).
Persistence & Privilege
The package does not request 'always:true' and does not modify other skills, but the skill's internal rules require automatic triggering on many contextual cues and mandate auto-execution on a single connected device. When combined with the ability to run destructive ADB operations, that behavioral autonomy is a meaningful risk — the agent could perform actions on a device without a fresh, explicit user confirmation.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install android-adb-skill - 安装完成后,直接呼叫该 Skill 的名称或使用
/android-adb-skill触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
- Initial release of android-adb-skill.
- Provides step-by-step ADB command usage for device detection, app installation, logcat, device info, file operations, and more.
- Automatically guides users to verify Android code changes via ADB after coding tasks.
- Ensures every ADB action starts with device checking and handles multi-device workflows.
- Includes detailed error explanations, user prompts, and standardized output guidelines for a smooth Android development and debugging experience.
元数据
常见问题
Android Adb Skill 是什么?
Android 开发调试技能,通过系统 ADB 工具操作 Android 设备。以下场景必须触发此技能:(1) 直接 ADB 操作——安装 APK、查看设备列表、抓取 logcat 日志、查看已安装应用、清除应用数据、截图、重启设备、拉取/推送文件、查看 CPU/内存/电池信息、adb shell 操作;(2)... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 96 次。
如何安装 Android Adb Skill?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install android-adb-skill」即可一键安装,无需额外配置。
Android Adb Skill 是免费的吗?
是的,Android Adb Skill 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Android Adb Skill 支持哪些平台?
Android Adb Skill 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Android Adb Skill?
由 yhongm(@yhongm)开发并维护,当前版本 v1.0.0。
推荐 Skills