Agent Skills
› software-mansion/argent
› argent-android-emulator-setup
argent-android-emulator-setup
GitHub配置并连接 Android 模拟器,支持设备发现、AVD 启动及 Metro 端口转发。为后续 UI 交互任务提供设备序列号,处理 Android TV 等特殊场景,确保自动化测试或开发环境就绪。
Trigger Scenarios
启动新的 Android 会话
引导或重启 Android 模拟器
获取 Android 设备序列号
执行 UI 交互前的环境准备
Install
npx skills add software-mansion/argent --skill argent-android-emulator-setup -g -y
SKILL.md
Frontmatter
{
"name": "argent-android-emulator-setup",
"description": "Set up and connect to an Android emulator using argent MCP tools. Use when starting a new session on Android, booting an emulator, getting a device serial, or before any UI interaction task."
}
1. Prerequisites
- Android SDK Platform Tools on PATH — provides
adb. - Android Emulator on PATH — needed to boot AVDs. If you will only use an already-running emulator or a physical device, adb alone is sufficient.
- An AVD created via Android Studio or
avdmanager create avd.
Verify with adb version and emulator -list-avds.
2. Setup
- Find a ready device — call
list-devices. Filter for entries withplatform: "android". Ready devices (state: "device") come first. Pick the firstserial(e.g.emulator-5554) unless the user specified one. - Boot if needed — if nothing Android is ready, call
boot-devicewithavdName: <name>from the same call'savdslist. The tool transparently picks hot vs cold boot: it probes the AVD'sdefault_bootsnapshot, restores it under a tight deadline when usable, and falls back to a full cold boot otherwise. Hot path is typically ~30s; cold path takes 2–10 min. On any stage failure the tool kills the emulator process it started so your next call starts from a clean state. - Metro (for React Native) — once a device is up, run
adb -s <serial> reverse tcp:8081 tcp:8081so the device can reach Metro on your host. Repeat if the device restarts. See theargent-metro-debuggerskill.
3. Using the device
Pass the Android serial as udid to the unified interaction tools — gesture-tap, gesture-swipe, describe, screenshot, launch-app, keyboard, etc. Dispatch is automatic based on the id shape. See argent-device-interact for platform-neutral interaction tooling and the Android-specific gotchas section at the bottom of that skill.
4. Notes
- Android TV / leanback AVDs boot through this exact flow (same
boot-device+avdName), but they are focus-driven, not touch-driven — do not usegesture-tap/gesture-swipeon them.list-devicestags a leanback device withruntimeKind: "tv"(detected via the system feature list, not the serial — a TV AVD's serial looks just like a phone's). When you seeruntimeKind: "tv", drive it with the focus-driven tools (describe/tv-remote/keyboard) and theargent-tv-interactskill (it covers Android TV as well as Apple TV, including the full TV setup flow). - Serials are the adb device id. iOS UDIDs and Android serials are not interchangeable, but you do NOT need to tell the tools which platform — dispatch is automatic.
describeon Android returns a shallower tree than iOS (no accessibility-service equivalent), but covers most tap-target discovery.reinstall-appon Android always installs with-gso first-launch runtime permissions are pre-granted.- To stop the emulator, run
adb -s <serial> emu killfrom a shell (clean shutdown). Neverpkill -9/kill -9qemu — a hard kill leaves the userdata image dirty, after which cold boots can hang for many minutes doing recovery (runaway writes,boot_completednever flips). If an image gets into that state, boot once with-wipe-datato reset it.
Version History
- bc04c3b Current 2026-07-06 19:58


