
Eas Simulator
Run and control a user's app on a remote iOS/Android simulator hosted on EAS cloud.
Install
npx skills add expo/skills --skill eas-simulator -g -a claude-code -y- Repository
- expo/skills4k
- Category
- Testing
- Updated
- 3d ago
- License
- MIT
- Context cost
- Mediumabout 3,000 tokens
- Runs scripts
- No, instructions only
What it does
Run and control a user's app on a remote iOS/Android simulator hosted on EAS cloud. Read before running any `eas simulator:*` commands - it has the current syntax for this experimental API. Use whenever the user needs a simulator they can't run locally - 'run my app on a cloud simulator', 'use eas simulator to run/install/screenshot my app', 'I'm on Linux/Cursor and need an iOS device', 'no sim on this box / headless CI', 'let an agent click through my app and screenshot it', 'test my dev build on a remote sim with live reload', 'stream a sim to my browser' - even when they don't say 'EAS Simulator' or 'cloud'. On a host WITHOUT a local simulator (Linux, CI, cloud sandbox) it's the default; on macOS, do NOT auto-trigger for a plain 'run on the simulator' - use it only for a cloud/remote/shareable sim, an iOS version they lack, or an agent-driven session. NOT for local sims (expo run:ios, Xcode, Android Studio), EAS Build/Update, web preview, or physical devices.
EAS Simulator
EAS service - costs apply. Sessions count toward your account's pricing and limits and stop at their maximum duration. Stop a session with
eas simulator:stopwhen the task is done. See https://expo.dev/pricing for current terms.
EAS Simulator runs a remote iOS simulator or Android emulator on EAS infrastructure that you drive from your machine, from the CLI, from an AI agent (via agent-device), and from a browser preview. It's the unlock for environments that can't run a simulator locally (Linux boxes, cloud/background agents like Cursor Cloud), and for letting an agent verify a change on a real device instead of only reasoning about code.
The simulator:* commands are experimental and hidden, and need a recent eas-cli (≥ 20.3.0 as of writing), which is why this skill runs everything via npx --yes eas-cli@latest. Flags and verbs may change; the relevant subcommand's --help output is authoritative.
When to use
The frontmatter description carries the trigger phrases. In short: use this to get a user's app onto a cloud simulator and interact with it, especially from a Mac-less or cloud/sandbox agent. Not for local sims (expo run:ios, Xcode, Android Studio), store builds/signing (that's EAS Build), or physical devices. For the macOS case, see Cloud vs local next.
Cloud vs local: decide this first
- Explicit cloud/remote/shareable request: use EAS Simulator after checking access, on any host.
- Generic simulator request: use a suitable local simulator when available. If the host cannot run the requested simulator (for example, iOS on Linux or a cloud sandbox), use EAS Simulator after checking access. A non-macOS host may still support a local Android emulator.
- Honor an explicit local choice; hand off to
expo run:ios/ Xcode / Android Studio as appropriate. Clarify only when the requested environment remains ambiguous and affects the task.


