workflows/workflows/agent-environment-setup/platforms/antigravity/skills/android-emulator-testing/SKILL.md
Canonical dual-path skill for Android emulator testing, mobile-mcp guidance, adb control, UI-tree verification, and evidence capture.
npx skillsauth add cubetiq/cubis-foundry android-emulator-testingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill for Android emulator testing. The preferred path is mobile-mcp
for semantic interaction. The fallback path is raw CLI control with adb,
emulator, uiautomator, screenshots, and logcat.
Resolve <module-root> to the installed android-emulator-testing skill
directory before using sidecars. Module-local helpers below are referenced as
<module-root>/scripts/....
mobile-mcp.adb + emulator + uiautomator + screenshots + logcat.mobile-mcp is unavailable.npx @mobilenext/mobile-mcp@latestLoad <module-root>/references/mobile-mcp.md when you need the concise Android
semantic flow.
emulator -list-avdsemulator -avd <name> >/tmp/android-emulator.log 2>&1 &adb wait-for-deviceadb devices./gradlew :<module>:install<BuildVariant> --console=plain --quiet./gradlew tasks --all | rg installadb -s <serial> shell cmd package resolve-activity --brief <package>adb -s <serial> shell am start -n <package>/<activity>adb -s <serial> exec-out uiautomator dump /dev/tty > /tmp/ui.xmlpython3 <module-root>/scripts/ui_tree_summarize.py /tmp/ui.xml /tmp/ui.txtpython3 <module-root>/scripts/ui_pick.py /tmp/ui.xml "Settings"adb -s <serial> shell input tap <x> <y>adb -s <serial> exec-out screencap -p > /tmp/step.pngadb -s <serial> logcat -d > /tmp/logcat.txtmobile-mcp is the preferred semantic mobile runtime.adb devicesadb -s <serial> shell am start ...adb -s <serial> shell input tap ...adb -s <serial> shell input swipe ...adb -s <serial> shell input keyevent 4scripts/ui_tree_summarize.pyscripts/ui_pick.pyadb -s <serial> exec-out uiautomator dump /dev/ttyadb -s <serial> exec-out screencap -p > /tmp/step.pngadb -s <serial> logcat -cadb -s <serial> logcat -d > /tmp/logcat.txtadb -s <serial> logcat --pid <pid>| File | Load when |
| --- | --- |
| <module-root>/references/mobile-mcp.md | Running the preferred semantic Android flow through mobile-mcp before dropping to CLI fallback. |
| <module-root>/scripts/ui_tree_summarize.py | You need a compact overview of the dumped UI tree before choosing a target. |
| <module-root>/scripts/ui_pick.py | You need to derive tap coordinates from a node's bounds instead of guessing from screenshots. |
tools
Use when investigating latest vendor behavior, comparing tools or platforms, verifying claims beyond the repo, or gathering external evidence before implementation.
documentation
Use when designing database schemas, normalization strategies, indexing plans, query optimization, and migration workflows for relational, document, or hybrid data stores.
development
Use when writing, reviewing, or refactoring modern C#/.NET code, including minimal APIs, records, async streams, pattern matching, DI lifetimes, and memory-efficient performance tuning.
development
Use when conducting code reviews, building review checklists, calibrating review depth, providing structured feedback, or establishing team review practices. Covers review methodology, feedback patterns, automated checks, and batch review strategies.