krutikjain/android-agent-skills

android-emulator-automation

Use semantic ADB and UIAutomator workflows to inspect, launch, and interact with Android apps from agents.

First seen Apr 7, 2026

Installation

$ npx skills add krutikjain/android-agent-skills --skill android-emulator-automation

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from krutikjain/android-agent-skills · top by installs.

npx skills add krutikjain/android-agent-skills

Browse all from krutikjain/android-agent-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 14
License LICENSE
Default branch main
Open issues 0
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version0.1.0
More metadata
version
0.1.0
category
quality-release
tags
["android","adb","uiautomator","emulator","automation"]
triggers
{"include":["android emulator automation","adb semantic ui automation","uiautomator dump and tap","launch android app and inspect screen","android agent tap text on emulator"],"exclude":["play store release only","room dao only","gradle scan only"]}
owners
["@android-agent-skills\/maintainers"]
test_targets
["examples\/orbittasks-compose","benchmarks\/triggers.jsonl"]

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,066 B
  • docs SUMMARY.md 141 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 53 installs

SKILL.md

Android Emulator Automation

When To Use

  • Use this skill when the request is about: android emulator automation, adb semantic ui automation, uiautomator dump and tap.
  • Primary outcome: Use semantic ADB and UIAutomator workflows to inspect, launch, and interact with Android apps from agents.
  • Reach for this skill when an agent needs to launch an APK, inspect the current screen, or perform a deterministic interaction without writing Espresso or Compose UI tests.
  • Handoff skills when the scope expands:
  • android-testing-ui
  • android-permissions-activity-results

Workflow

  1. Verify the Android SDK, adb, the target device or emulator, and boot completion before attempting interaction.
  2. Install or launch the target app with explicit package awareness so the request stays tied to the right artifact.
  3. Dump the current UI hierarchy and prefer semantic selectors such as text, content description, or resource ID over raw coordinates.
  4. Perform the smallest interaction that proves the workflow and re-dump the screen when state changes matter.
  5. Hand off long-lived regression coverage to UI tests once the automation path is understood.

Guardrails

  • Prefer semantic selectors to pixel coordinates; only fall back to coordinates when the UI tree is missing the required metadata.
  • Treat automation as an inspection and smoke tool, not a replacement for deterministic UI tests.
  • Verify device state, package name, and boot completion before issuing input commands.
  • Keep the scripts safe for CI by avoiding destructive shell commands or device-wide settings changes.

Anti-Patterns

  • Hard-coding coordinates when text or resource IDs are available.
  • Running emulator commands before the device is boot-complete.
  • Treating flaky one-off automation as proof of a stable UI workflow.
  • Mixing app install, interaction, and log scraping into one opaque script with no intermediate output.

Examples

Happy path

  • Scenario: Build the Compose fixture, install it on an emulator, and dump the current OrbitTasks screen.
  • Command: bash skills/android-emulator-automation/scripts/run_examples.sh

Edge case

  • Scenario: Launch a preinstalled app and target a single semantic control without relying on screen coordinates.
  • Command: python3 skills/android-emulator-automation/scripts/navigator.py --find-text "Blocked" --tap

Failure recovery

  • Scenario: Confirm the device is discoverable and UIAutomator can dump the hierarchy before chasing a selector bug.
  • Command: python3 skills/android-emulator-automation/scripts/device_health.py --json

Done Checklist

  • The target package, device serial, and current screen are explicit.
  • Semantic selectors were preferred over coordinates.
  • The automation path is reproducible in local development and CI.
  • The request hands off to UI testing when the workflow needs regression coverage.

Official References