android-emulator-harne…
Bring up an Android app in a headless emulator on Linux/WSL and drive it for automated integration testing, the Android analog of…
Run and drive an Expo / React Native app on the iOS Simulator. Pick an execution mode (Expo Go, dev client, Storybook-mobile, web-on-mobile), build and install a dev client, and clear the recurring Expo/RN prompts that block automation: the push-token alert that stacks until the
Claude Code
$ npx -y skills add simiancraft/simiancraft-skills --skill expo-ios-simulator --agent claude-code
Codex
$ npx skills add simiancraft/simiancraft-skills --skill expo-ios-simulator -a codex -y
Cursor
$ npx skills add simiancraft/simiancraft-skills --skill expo-ios-simulator -a cursor -y
Gemini CLI
$ npx skills add simiancraft/simiancraft-skills --skill expo-ios-simulator -a gemini-cli -y
GitHub Copilot
$ npx skills add simiancraft/simiancraft-skills --skill expo-ios-simulator -a github-copilot -y
OpenCode
$ npx skills add simiancraft/simiancraft-skills --skill expo-ios-simulator -a opencode -y
Windsurf
$ npx skills add simiancraft/simiancraft-skills --skill expo-ios-simulator -a windsurf -y
name: expo-ios-simulator description: >- Run and drive an Expo / React Native app on the iOS Simulator. Pick an execution mode (Expo Go, dev client, Storybook-mobile, web-on-mobile), build and install a dev client, and clear the recurring Expo/RN prompts that block automation: the push-token alert that stacks until the overlay darkens the screen, the "Open in app?" deep-link dialog, the dev menu, and the element-inspector trap. Sits ON TOP of ios-simulator; failures route to ios-simulator-triage. Project-agnostic; discovers bundle id and scheme from the app config. Use for "run my Expo app on the simulator", "load a dev client", or "drive Storybook on iOS". status: complete sources: - https://docs.expo.dev/develop/development-builds/introduction/ (Expo Go vs development builds; the fixed native set) - "the reference files below carry the per-command provenance (Expo docs, Apple, AXe --help)"
Everything here is Expo / React-Native **runtime** behavior, not the simulator itself (that is **ios-simulator**, which boots devices, captures screenshots, and grants permissions). This skill gets an Expo app *running* on a booted simulator and clears the Expo-specific overlays that stall automation. For "make the app driveable" see **mobile-accessibility**.
A booted simulator and AXe installed; that is **ios-simulator** `prerequisites.md`. This skill discovers everything app-specific (bundle id, scheme) from the app config; it never hardcodes a project's nouns.
1. **Pick an execution mode** (`references/execution-modes.md`): Expo Go, a development build (dev client), Storybook-mobile, or web-on-mobile. The choice is forced by whether the app has custom native code. 2. **Get the app on the device.** Pure-JS app: Expo Go installs and launches it for you (`references/expo-go.md`). Anything with native modules or a config plugin: build and install a dev client (`references/development-builds.md`), then serve Metro and connect by deep link. 3. **Clear the recurring prompts** (`references/known-prompts.md`): the "Open in app?" deep-link dialog, the push-token alert that re-fires and stacks on each reload, and the dev menu; avoid the element-inspector trap. Clear each by accessibility, never coordinates. 4. **Drive it.** The driving primitive is **ios-simulator** `references/driving.md` (`axe tap --id` / `--label`); what makes the app addressable is **mobile-accessibility**.
Metro serving (`curl /status`) and the first bundle finishing (the tree grows labels); both recipes are in `references/development-builds.md`. Taps dispatched before them report success and do nothing.
own help); a prior-art skill is never a source.
Claude Code skills for the full arc of a change: farm to table, with receipts. Curated Claude Code skills and agents from simiancraft. Most skill collections are grab bags. This one has a spine: it carries a change through its whole life.
Bring up an Android app in a headless emulator on Linux/WSL and drive it for automated integration testing, the Android analog of…
Specialization of android-emulator-harness for CAMERA / segmentation testing: get a real PERSON in front of the emulator camera…
Appraise a GitHub issue backlog unattended: for each issue, decide whether it is still real and how big it is, then apply the…
Shrink a media asset to the smallest bytes that still serve its purpose, keyed on asset kind (raster, vector, animation, video,…
Run an unattended burndown of a GitHub issue backlog as cards on a per-operator GitHub Projects board whose lanes are an explicit…
Break one GitHub issue that is too large to work into sub-issues, unattended, and keep the carving honest as the children close.…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.