plugins/test-android-apps/skills/android-emulator-qa/SKILL.md
Use when validating Android feature flows in an emulator with adb-driven launch, input, UI-tree inspection, screenshots, and logcat capture.
npx skillsauth add openai/plugins android-emulator-qaInstall 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.
Validate Android app flows in an emulator using adb for launch, input, UI-tree inspection, screenshots, and logs.
adb 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 screencap -p > /tmp/emu.pngadb -s <serial> shell input tap <x> <y>adb -s <serial> shell input swipe <x1> <y1> <x2> <y2>adb -s <serial> shell input text "hello"adb -s <serial> shell input keyevent 4adb -s <serial> exec-out uiautomator dump /dev/ttyAlways compute tap coordinates from the UI tree, not screenshots.
adb -s <serial> exec-out uiautomator dump /dev/tty > /tmp/ui-settings.xmlx y) from bounds:
bounds="[x1,y1][x2,y2]"python3 <path-to-skill>/scripts/ui_pick.py /tmp/ui-settings.xml "Settings"scrollable elements:
adb -s <serial> shell input tap <x> <y>Use this helper to create a compact, readable overview before inspecting full XML.
adb -s <serial> exec-out uiautomator dump /dev/tty > /tmp/ui-full.xmlpython3 <path-to-skill>/scripts/ui_tree_summarize.py /tmp/ui-full.xml /tmp/ui-summary.txt/tmp/ui-summary.txt to choose likely targets, then compute exact bounds from full XML.adb -s <serial> logcat -cadb -s <serial> shell pidof -s <package>adb -s <serial> logcat --pid <pid>adb -s <serial> logcat -b crashadb -s <serial> logcat -d > /tmp/logcat.txtadb -s <serial> shell pm list packagesadb -s <serial> shell pm list packages | rg <company_or_app_id>adb -s <serial> shell cmd package resolve-activity --brief <package>development
Use when the user wants to spin up / create / launch / provision a DigitalOcean droplet (or "a remote dev box on DO") and connect to it from Codex as a remote SSH workspace.
data-ai
Search through Microsoft Teams chats or channels, triage unread or recent activity, draft follow-ups, and manage Planner tasks through connected Teams data.
tools
Motion / animation context for the `use_figma` MCP tool — animating Figma nodes via manual keyframes, animation styles, easing, and timeline duration. Load alongside figma-use whenever a task involves adding, editing, or inspecting animation on a node.
development
SwiftUI ↔ Figma translation. Use whenever the user mentions Swift, SwiftUI, iOS, iPhone, or iPad — in EITHER direction — translating a Figma design into SwiftUI (design → code), or pushing SwiftUI views / screens / tokens back into a Figma file (code → design). Triggers on phrases like 'implement this Figma design in SwiftUI', 'build this screen in Swift', 'push this SwiftUI view to Figma', 'mirror my Swift code in a Figma file', or whenever a Figma URL appears alongside `.swift` files / an `.xcodeproj`. Routes to a direction-specific reference doc; loads alongside `figma-use` for the code → design path.