
codex-expo-run-actions
✓ Official★ 4,081by openai · part of openai/plugins
Wire Expo projects into the Codex app with project-local run scripts and .codex/environments/environment.toml actions. Use when the user wants the Codex app Run button, build/run actions, action buttons, or a stable Expo start/run workflow from Codex.
This is the playbook your agent receives when the skill activates — you don't need to read it to use the skill, but it's here to audit before installing.
Codex Run Actions for Expo
Use this skill to connect an Expo project to the Codex app action bar.
The goal is one project-local script plus .codex/environments/environment.toml,
so the user can press Run in the Codex app and see the Expo CLI / Metro logs in
an action terminal.
Workflow
-
Confirm the current workspace is an Expo app.
- Look for
package.json. - Look for
app.json,app.config.js,app.config.ts, orexpoinpackage.json. - Do not wire the Codex action at a monorepo root if the Expo app is in a child package.
- Look for
-
Discover the package runner.
- Prefer the package manager declared in
packageManager. - Otherwise infer from lockfiles.
- The generated run script should still have a safe fallback to
npx expo.
- Prefer the package manager declared in
-
Create or update
script/build_and_run.sh.- Use the reference file for the script shape.
- Default no-argument mode starts the Expo dev server:
expo start. - Keep the dev server in the foreground so the Codex action terminal owns logs and Ctrl-C behavior.
- Support optional modes for direct buttons:
--iosstarts Expo and opens iOS simulator.--androidstarts Expo and opens Android.--webstarts Expo for web.--dev-clientstarts in dev-client mode.--tunnelstarts a tunnel.--export-webexports web.
-
Write
.codex/environments/environment.toml.- Always add or update one primary action named
Run. - Wire
Runto./script/build_and_run.sh. - Add direct
Run iOS,Run Android,Run Web, orRun Dev Clientactions only when the user asks for those buttons or the project clearly needs them. - If the environment file already exists, update the existing matching action instead of duplicating it.
- Always add or update one primary action named
-
Use the action script as the default local run path.
- After wiring, run
./script/build_and_run.sh --helpor a short non-server mode if you need to sanity-check syntax. - Do not start a long-lived Metro server during a setup-only task unless the user asked you to run the app.
- After wiring, run
References
references/expo-run-button-bootstrap.md: canonical Exposcript/build_and_run.shand Codex environment action examples.
Guardrails
- Try Expo Go /
expo startfirst; do not default the Codex Run button toexpo run:ios,expo run:android, prebuild, or EAS Build. - Do not wire cloud actions such as
eas build,eas submit, or store deployment into Codex buttons unless the user explicitly asks and accepts the auth / time / cost tradeoff. - Do not create a nested git repo.
- Do not put secrets in
.codex/environments/environment.tomlor in the run script. - Do not background Metro from the run script; the action terminal should show the active server logs.
- Do not hard-code npm if the project uses pnpm, yarn, or bun.
Output Expectations
When setup changes are made, summarize:
- the Expo app root you wired
- the run script path
- the Codex environment file path
- the actions added or updated
- how to launch the same path from shell
npx skills add https://github.com/openai/plugins --skill codex-expo-run-actionsRun this in your project — your agent picks the skill up automatically.
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.