This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.

Use Maestro flows with Expo Simulators

Edit page

Run supported Maestro YAML flows with agent-device, or use the EAS Workflows Maestro job, and learn which option uses an Expo Simulators session.


agent-device, the default Expo Simulators controller, can run supported Maestro YAML flows. It can also export its own recorded flows to Maestro YAML. EAS Workflows has a separate Maestro job. That job runs tests on its own Android Emulator or iOS Simulator, not on an Expo Simulators session.

Choose an option

OptionDeviceUse it when
agent-device with test --maestroAn Expo Simulators sessionYou want to run Maestro flows on a session that an agent also uses.
EAS Workflows maestro jobA device in the EAS Workflows jobYou want Maestro tests in a CI workflow. See Pre-packaged jobs.

Run Maestro YAML with agent-device

Start an agent-device session with your app, then run the flow through eas simulator:exec:

Terminal
- eas simulator:start --platform ios --type agent-device --build-id <build-id> --name "Maestro login flow" --non-interactive
- eas simulator:exec npx agent-device@latest test --maestro <flow.yaml> --platform ios

agent-device supports a subset of Maestro YAML. Unsupported commands fail with an error. Read the version-matched help for the supported commands and arguments:

Terminal
- eas simulator:exec npx agent-device@latest help maestro

Export agent-device flows to Maestro

agent-device can record a working session as a deterministic .ad script. You can export compatible .ad flows to Maestro YAML, then run them with Maestro or the EAS Workflows maestro job. For more information, see agent-device.

Common questions

Does Expo Simulators run the Maestro CLI?

No. Expo Simulators does not provision the Maestro CLI. Use agent-device to run supported Maestro YAML on a session.

Is the EAS Workflows Maestro job the same as Expo Simulators?

No. The maestro job runs tests on a build in an EAS Workflows job. It does not create an Expo Simulators session, and it is in alpha.