Skip to main content

stim-cli

The React Native / Expo CLI for AI agents

Humans never run it — your agent does. Isolated dev environments, so several coding agents can build the same app on one machine at the same time, with a build loop optimised for an agent, not a terminal.

# the only command a human runs:
npx skills add appandflow/stim

# then tell your agent:
# "Build and run the app on the iOS simulator and fix anything that breaks."

# no setup step, nothing to commit -- stim-cli runs on a clean checkout.
Get startedWhy stim-cli

Isolated environments

Every project or git worktree gets its own reserved Metro port and its own owned simulator or emulator. Several coding agents build the same app on one machine at the same time without fighting over ports and devices.

Built for agent loops

Never prompts, prints on the order of ten lines, takes --json everywhere, and reports a failing build as the extracted compiler diagnostic plus a log path — not four thousand lines of transcript. logs --errors returning nothing is the pass condition.

Builds that hit a cache

Native inputs are fingerprinted; when nothing native changed, the app installs from a shared cache instead of compiling. When two workspaces miss at once, exactly one compiles and the other installs its artifact.

Cleans up after dying agents

A killed agent leaves a booted simulator, a Metro squatting on a port, a stale lock. stop, worktree remove and gc reclaim all of it — and stim-cli never touches a device it did not create.