Maestro E2e
E2E UI testing with Maestro for iOS, Android, Flutter, React Native, and Web
Specification
- Skill ID
- raphaelbarbosaqwerty/maestro-dev-skills/maestro-e2e
- Publisher
- raphaelbarbosaqwerty
- Repository
- maestro-dev-skills
- Installs
- 0
- Files
- 26
- Synced
- Sep 23, 2026
How to use it
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
raphaelbarbosaqwerty/maestro-dev-skills/maestro-e2eInstalls these files- LICENSE
- README.md
- SKILL.md
- package.json
- rules/advanced/conditions.md
- rules/advanced/javascript.md
- rules/advanced/nested-flows.md
- rules/advanced/parameters.md
- rules/advanced/repeat-retry.md
- rules/advanced/waiting.md
- rules/assertions.md
- rules/best-practices.md
- rules/ci-integration.md
- rules/commands.md
- rules/debugging.md
- rules/installation.md
- rules/interactions.md
- rules/permissions.md
- rules/platforms/android.md
- rules/platforms/flutter.md
- rules/platforms/ios.md
- rules/platforms/react-native.md
- rules/platforms/web.md
- rules/screenshots.md
- rules/selectors.md
- rules/test-structure.md
What this skill tells the agent
When to use
Use this skill whenever you are:
- Creating E2E, UI, or integration tests
- Testing login, registration, or navigation flows
- Handling permission dialogs (camera, location, notifications)
- Debugging test failures or exploring UI hierarchy
- Working with Maestro test files (.yaml)
Captions
When dealing with native permission dialogs, load the ./rules/permissions.md file for platform-specific information.
When working with Flutter apps, load the ./rules/platforms/flutter.md file for Semantics patterns.
How to use
Read individual rule files for detailed explanations and code examples:
Core
- rules/installation.md - Installing Maestro on macOS, Linux, and Windows
- rules/test-structure.md - YAML test structure, appId, env variables, and flow definition
- rules/commands.md - Complete reference of 40+ Maestro commands
- rules/selectors.md - Element targeting with id, text, index, and matchers
- rules/assertions.md - assertVisible, assertNotVisible, assertTrue, and AI assertions
- rules/interactions.md - tapOn, inputText, scroll, swipe, and gesture commands
- rules/permissions.md - iOS vs Android permission configuration and dialog handling
Platforms
- rules/platforms/android.md - Android-specific: ADB, permission dialogs, emulators
- rules/platforms/ios.md - iOS-specific: auto-dismiss dialogs, simulators, limitations
- rules/platforms/flutter.md - Flutter integration using Semantics and identifier
- rules/platforms/react-native.md - React Native with testID and accessibilityLabel
- rules/platforms/web.md - Desktop browser testing with Chromium
Advanced
- rules/advanced/parameters.md - Environment variables, external params, ${} syntax
- rules/advanced/conditions.md - Conditional execution with when: visible, platform
- rules/advanced/nested-flows.md - Reusable subflows with runFlow command
- rules/advanced/javascript.md - evalScript, runScript, and GraalJS support
- rules/advanced/waiting.md - extendedWaitUntil, waitForAnimationToEnd
- rules/advanced/repeat-retry.md - Repeat and retry patterns for flaky tests
Additional
- rules/debugging.md - Maestro Studio, hierarchy inspection, troubleshooting
- rules/screenshots.md - Screenshots, video recording, and visual evidence
- rules/ci-integration.md - GitHub Actions, GitLab CI, Maestro Cloud
- rules/best-practices.md - Semantic identifiers, atomic tests, project structure
Use this skill in a project
Open any RiverX project, search the Skills panel for raphaelbarbosaqwerty/maestro-dev-skills/maestro-e2e, and install it in one click.
