Workflows let you automate parts of building and testing your app. Agentic workflows let you put an agent into that process. And with Expo Simulators, you can now hand that agent different cloud devices to test on.
If you want to add agentic workflows to your app building process, you've come to the right place. Here are the four things you need to do as the engineer to unblock your agent, so it can create agentic workflows on your Expo account.
Prefer to watch? The video walks through the same four steps: How to set up agentic workflows in 4 steps
Before you start
You need an Expo project in a GitHub repository, and Expo Simulators on the account that owns the project. Expo Simulators is available on the Starter, Production, and Enterprise plans. The full setup is in the docs: Set up a project for agentic workflows.
1. Connect your GitHub repository
First, make sure your GitHub repository is connected to your Expo project. Head to your project settings and make sure GitHub is configured.
Project settings > GitHub, with the repository connected
2. Create a robot user
Next, your workflow needs to be able to start a simulator. You do that with what's called a “robot user”.
Head to your account settings, go to Access tokens, and add a robot. I called mine Agentic Workflows and gave it the Developer permission.
Create Robot, with the Developer role
From there, create a token and copy it.
The new robot token (value hidden)
Then head back to your project and add an environment variable with that value. Name it EXPO_TOKEN_SIMULATOR. Set the visibility to Secret and the environment to preview.
EXPO_TOKEN_SIMULATOR, Secret, preview
3. Connect your agent
Third, connect your agent of choice to your workflow. I prefer Claude, so I run:
Go through the authorization process, and you have a token.
The Claude token is created (value hidden)
Then head back to your environment variables and add it as a variable named CLAUDE_CODE_OAUTH_TOKEN. Again, set it to Secret and preview.
Using a different agent? The setup docs list the key and the variable name for Codex, Cursor, and Grok.
4. Give your workflows access to GitHub
Next, make sure your workflows have access to GitHub, so they can leave you PRs and comments. This is different from the GitHub connection in step 1, so make sure you do both.
Head to your developer settings on GitHub and go to your personal access tokens. You're looking for Fine-grained tokens. Generate a token there, and make sure to select the correct repository.
Repository access: only the one repository
Now add some permissions. Give the token Contents, Issues, and Pull requests, each with Read and write.
Contents, Issues, and Pull requests with Read and write
From there, head back to your environment variables and add GITHUB_TOKEN. Again, set it as Secret and put it in preview.
GITHUB_TOKEN, Secret, preview
The docs also add GITHUB_REPOSITORY to preview as plain text, with your repository's owner and name, such as acme/app.
And that's it. Now your agent can set up a lot of different agentic workflows.
One last tip: install Expo skills
Before you go, make sure you have Expo skills installed. This way your agent has all the information it needs to create these workflows and to run simulators.
Pick your first workflow
Here are some of my favorite agentic workflows. Each guide has a prompt you can hand to your agent.
- Agentic CI: an agent tests each pull request on a cloud simulator.
- Issue to PR: an agent writes the change for a GitHub issue and opens a pull request.
- Bug triage: an agent reproduces a bug from a GitHub issue or TestFlight feedback.
- QA Swarm: several agents test your app at the same time, each on its own cloud simulator.
