Skip to main content
Your pull requests are tested on macos-15, the arm64 macOS runner GitHub hosts. You run no Mac, and the runner needs nothing installed beforehand. CI has the parts every host shares: the comment, the report and the flags.

Set it up

From your project’s folder:
It writes .github/workflows/mobster.yml and prints what’s left: make a CI token (below), add it as MOBSTER_CI_TOKEN and, for checks with steps, ANTHROPIC_API_KEY as repository secrets, commit the file and open a pull request. --force replaces an existing file, and --print shows the workflow without writing it.

The workflow

.github/workflows/mobster.yml
The cache holds the WebDriverAgent build, the slow part of a first job. Its key names the Xcode and Mobster versions, so a new Xcode or a new Mobster builds it once and every job after restores it. The simulator runtimes come with the runner’s Xcode.

Sign in with a CI token

The job signs in with a CI token, not with Mobster for Mac. It is part of your plan, adds no seat and counts no runs. It licenses simulator checks only (mobster ci run and mobster test), it ends after 90 days unless you choose up to 365, and it never licenses an iPhone. Make one with mobster account ci-token create NAME or in the console under Settings › CI tokens, and revoke it from either. Store it as MOBSTER_CI_TOKEN, as a secret of the service. mobster ci doctor in the job checks that it is live and says what to fix if it isn’t.

What this runner doesn’t do

A hosted Mac has no iPhone, so the checks run on simulators. To test on a phone, use a Mac of yours. A pull request from a fork gets no repository secrets, so the token is empty there: the job says Mobster couldn’t run, and your token never reaches the fork’s code.