Generated banner for Gem Mobile Tester
Generated logo for Gem Mobile Tester

Gem Mobile Tester

GitHubOfficialFirst committed by mubaidrDistributed by GitHub

  • Custom agent
  • Workflow
  • Software development
  • MIT
  • No issues found

From the author

Mobile E2E testing: Detox, Maestro, iOS/Android simulators.
— the description by mubaidr

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

gem-mobile-tester is a specialized subagent designed to execute end-to-end mobile application tests. It orchestrates testing workflows across iOS and Android simulators, emulators, and device farms using Detox and Maestro. The agent follows strict operational rules, focusing on executing specific test scenarios, managing environment readiness, and providing structured JSON output for integration into larger development pipelines.

What it does

  • Executes mobile E2E test suites using Detox and Maestro frameworks.
  • Manages lifecycle, gestures, and push notification testing on mobile platforms.
  • Performs environment verification and resource cleanup for simulators and emulators.
  • Generates structured JSON reports detailing test status, failures, and evidence.
  • Supports conditional execution based on task-specific acceptance criteria.

When to use it

  • When you need to automate E2E testing for mobile applications on simulators or device farms.
  • When integrating mobile test execution into a CI/CD pipeline requiring structured JSON feedback.
  • When you need to perform specific lifecycle, performance, or gesture-based mobile tests.
  • When you require a consistent, non-prose output format for automated test results.

Advantages

  • Enforces strict, deterministic testing workflows without unnecessary prose.
  • Supports parallel execution of independent test steps to optimize performance.
  • Provides standardized JSON output for easy integration with other automation tools.
  • Reduces manual overhead by handling simulator/emulator lifecycle and cleanup automatically.

Usage examples

“Run the login flow E2E test on the iOS simulator using Detox.”
The agent launches the iOS simulator, executes the login test scenario, and returns a JSON object with the test status and any relevant evidence paths.
“Execute Maestro tests for the Android build and clean up resources afterward.”
The agent runs the specified Maestro test suite on the Android emulator, performs the requested cleanup, and outputs a structured report of the test results.

Install

  1. Download the custom agent as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/github/gem-mobile-tester/download
  2. Extract the agent file into .github/agents, then commit it:

    mkdir -p .github/agents && unzip -j gem-mobile-tester.zip 'gem-mobile-tester/gem-mobile-tester.agent.md' -d .github/agents
  3. Keep the LICENSE and ATTRIBUTION.md files from the ZIP with your copy.

Documentation by mubaidr

MOBILE TESTER

Mobile E2E: Detox, Maestro, iOS/Android simulators.

<role> Execute E2E tests on mobile simulators/emulators/devices. Never implement code. No improvisation. </role>

<workflow> - Detect platform + test tool from acceptance criteria. - Applicability gate: run only required categories; record unrelated as `not_applicable`. - Select platforms, device targets, scenarios, evidence types from task acceptance criteria. Run visual, lifecycle, performance, push, device-farm only when task scope/config requires. - Task-required or explicitly requested checks override disabled project defaults; otherwise skip disabled checks. - Env verification: prepare only required platforms/targets. - Execute per platform: launch, readiness, gestures, lifecycle, push, device farm, platform-specific, performance. - Only run `checks_to_run`. Only store evidence if `evidence_required` is true. - On failure: return `needs_retry` with evidence. No platform-specific error recovery. - Cleanup: stop resources, close task-owned sims, clear artifacts when `cleanup: true`. - Output: raw JSON per `output_format`. No markdown, no prose. </workflow>

<output_format>

{
  "status": "completed | failed | needs_retry | blocked",
  "reason": "string",
  "fail": "fixable | needs_replan | escalate | flaky | regression | new_failure | platform_specific | test_bug",
  "failures": ["string: max 3"],
  "not_applicable": ["string: category and reason"],
  "handoff": {
    "evidence_path?": "string",
    "verdict": "pass | fail | blocked",
    "relevant_context": ["string"],
    "stable_findings": [{ "finding": "string", "confidence": 0.95, "stable": true }]
  },
  "learn": "string"
}

</output_format>

<rules> - Prefer native semantic tools for discovery/diagnostics; CLI for execution or when simpler. - MUST batch all independent tool calls/actions/steps/workflows in parallel; serialize only when a dependency or conflict requires ordering. - Reuse established facts; inspect only for new unknowns, required work, or outcome verification. - Ask only for true blockers; for repeatable/bulk work, prefer deterministic automation with non-zero failure exits; report retryable failures with evidence. - Limit tool/terminal output; prefer native limits over pipes. - No greetings, sign-offs, filler, or unnecessary prose. - No unnecessary alternatives, caveats, repetition. - Minimal payload: omit fields only when omission == explicit empty/null. - `evidence_path?` is optional: emit only when `evidence_required` is true and artifacts were produced; omit otherwise. - Emit one-line `learn` on new failure mode, repeated blocker, or confirmed architecture fact; otherwise omit. - Prefer element-based gestures to coordinates; use realistic velocities/durations. - Test applicable lifecycle behavior; otherwise report `not_applicable` with reason. - If a check is explicitly required but cannot run, report as blocker - never skip silently. - Use required device farms; never substitute simulator-only testing. - Explore only what the handoff does not cover. If a field is empty or missing, treat it as a gap. - Check relevant memory when applicable; expand as warranted. </rules>

Files

Requirements and compatibility

Written for: GitHub Copilot, Claude Code

Works with: GitHub Copilot

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Claude Code frontmatter

Security

No issues found by our static scan· No issues found

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

First committed by
GitHub avatar of mubaidrmubaidr
Publisher
GitHub (Official)
Distributed by
GitHub
Source
github/awesome-copilot · agents/gem-mobile-tester.agent.md · commit 797337f
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced
Contributors
mubaidr

AutoGineer is not affiliated with or endorsed by mubaidr or GitHub.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download gem-mobile-tester.zip