android-maestro
Maestro YAML UI automation for Android user journeys.
Skill by Kapil-SquareNetra
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/kapil-squarenetra-android-maestro
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, testing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/android-maestro
What's inside
- Skill name
android-maestro- Description
- Maestro YAML UI automation for Android user journeys. Preferred for E2E unless a technical reason requires another tool. Use in UI automation phase and **/maestro/**/*.yaml files.
- License
- MIT
- Instructions
- 77 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Maestro (UI automation)
## Purpose
Validate real user workflows on device or emulator.
## When to load
UI automation phase after build/unit/integration. Maestro YAML edits.
## Inputs
- FR user flows and acceptance criteria.
- App `appId` from manifest.
- [maestro-runbook.md](../android-orchestrator/references/maestro-runbook.md)
## Outputs
- Create or update flows; run `maestro test <flow.yaml>` or `maestro test <directory>`.
## Rules
### Before the first Maestro run this session
Follow [quality-tooling.md](../android-orchestrator/references/quality-tooling.md). If `maestro` is not on PATH, share the **Maestro CLI** section of [setup-guides.md](../android-orchestrator/references/setup-guides.md) when asking the user. If there is no device or the user skips Maestro, **do not run** `maestro test`; record **Maestro: N/A** and continue.
- [Maestro flows](https://docs.maestro.dev/maestro-flows)
- [Android](https://docs.maestro.dev/get-started/supported-platform/android)
- [Selectors](https://docs.maestro.dev/reference/selectors/core-selectors.md)
**Preferred** UI automation unless technical reason otherwise.
Journey pattern: Launch → Login (if needed) → Navigate → Act → Verify → Back → Verify state.
```yaml
appId: com.example.app
env:
TEST_USER: ${TEST_USER} # supply locally; never commit real credentials
---
- launchApp
- runFlow: login.yaml
- tapOn:
id: book_appointment
- assertVisible: "Confirmed"
```
Use semantic matchers; `testTag` / `id:` when text is ambiguous.
For Jetpack Compose, `id:` matches `Modifier.testTag` only when the app sets `Modifier.semantics { testTagsAsResourceId = true }` high in the UI tree. **Dialogs and date pickers** often render outside the root — apply the same semantics on dialog content, or fall back to stable visible text (e.g. Material **“OK”** on `DatePickerDialog`).
### UI-change gate
When Maestro is **in scope** ([quality-tooling.md](../android-orchestrator/references/quality-tooling.md)), re-run at least one **smoke** flow after a user-facing UI change (with Gradle unit tests). If Maestro is **N/A**, do not run smoke; unit or Compose UI tests cover the change instead. Typical Maestro sequence: install debug APK → `adb shell pm clear <appId>` when the flow assumes empty/first-run state → `maestro test <flow>`.
### Compose flow tips
- Prefer a dedicated `testTag` on the control that opens a picker (e.g. `open_date_picker`), not the read-only field text.
- Empty-list smoke fails if prior runs left data — always clear app data or use a dedicated test account flow.
- When using Maestro MCP, pass an **absolute path** to the flows directory if the tool resolves relative paths from the wrong cwd. Tag filters (`include_tags`) only work when flows declare matching tags.
Do not load database/Compose implementation skills while authoring flows — only FR journey context.
## Dependencies
- `android-testing`
- `android-functional-requirements`
## Validation
- Flow passes locally or blocker documented with runbook fallback (Compose UI tests).
## Anti-patterns
- Maestro loaded during pure repository implementation.
- Marking UI gate done when no device/emulator was available and no fallback tests ran.From Kapil-SquareNetra/android-agentic-orchestrator, MIT.
More from Kapil-SquareNetra/android-agentic-orchestrator
- 0.570score
android-orchestrator
Kapil-SquareNetra
Coordinates Android-only agentic delivery from a requirement or an existing plan through FRs, test cases, impact, architecture, implementation, Detekt, build…
SkillAFreshness: AClaude Code +9 - 0.565score
android-jira
Kapil-SquareNetra
Optional Jira or Atlassian CLI traceability for Android delivery.
SkillAFreshness: AClaude Code +9 - 0.565score
android-kotlin
Kapil-SquareNetra
Kotlin coding standards for Android apps including coroutines, Flow, and Detekt-oriented quality habits.
SkillAFreshness: AClaude Code +9 - 0.565score
android-material
Kapil-SquareNetra
Material Design 3 guidelines for Android Compose: theme roles, color, typography, shape, elevation, and adaptive layout.
SkillAFreshness: AClaude Code +9 - 0.565score
android-functional-requirements
Kapil-SquareNetra
Authors Android functional requirements and the positive, negative, and edge test cases that cover them.
SkillAFreshness: AClaude Code +9 - 0.565score
android-figma
Kapil-SquareNetra
Optional Figma design context and visual acceptance for Android Compose UI.
SkillAFreshness: AClaude Code +9 - 0.561score
android-data
Kapil-SquareNetra
Android data layer and repository patterns as the sole entry to data sources.
SkillAFreshness: AClaude Code +9 - 0.561score
android-networking
Kapil-SquareNetra
Remote data sources and HTTP clients for Android repositories.
SkillAFreshness: AClaude Code +9 - 0.561score
android-performance
Kapil-SquareNetra
Android and Compose performance considerations for lists, recomposition, and main-thread work.
SkillAFreshness: AClaude Code +9 - 0.561score
android-navigation
Kapil-SquareNetra
Navigation Compose routes, args, back stack, deep links, and conditional navigation.
SkillAFreshness: AClaude Code +9 - 0.561score
android-detekt
Kapil-SquareNetra
Detekt static analysis gate for Kotlin Android projects including suppression discipline.
SkillAFreshness: AClaude Code +9 - 0.561score
android-material-components
Kapil-SquareNetra
Chooses Jetpack Compose Material 3 components by purpose: actions, navigation, lists, dialogs, sheets, fields, chips, and progress.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 23, 2026 (6 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Kapil-SquareNetra
- 0.570score
android-orchestrator
Kapil-SquareNetra
Coordinates Android-only agentic delivery from a requirement or an existing plan through FRs, test cases, impact, architecture, implementation, Detekt, build…
SkillAFreshness: AClaude Code +9 - 0.565score
android-material
Kapil-SquareNetra
Material Design 3 guidelines for Android Compose: theme roles, color, typography, shape, elevation, and adaptive layout.
SkillAFreshness: AClaude Code +9 - 0.565score
android-figma
Kapil-SquareNetra
Optional Figma design context and visual acceptance for Android Compose UI.
SkillAFreshness: AClaude Code +9 - 0.565score
android-jira
Kapil-SquareNetra
Optional Jira or Atlassian CLI traceability for Android delivery.
SkillAFreshness: AClaude Code +9 - 0.565score
android-functional-requirements
Kapil-SquareNetra
Authors Android functional requirements and the positive, negative, and edge test cases that cover them.
SkillAFreshness: AClaude Code +9 - 0.565score
android-kotlin
Kapil-SquareNetra
Kotlin coding standards for Android apps including coroutines, Flow, and Detekt-oriented quality habits.
SkillAFreshness: AClaude Code +9
Cite this page
android-maestro skill. Agent Mart. https://agentmart.dev/skills/kapil-squarenetra-android-maestro (last updated 2026-10-24)