Recommended
Desktop app
Eight screens — Devices, Flows, Inspector, Analytics, Performance, Product, Replay and Agent. The CLI is bundled inside it, so installing the app installs both.
Download
The desktop app, the CLI and the MCP server are the same product with three front doors. Activate once and all three work — there is no second key and no second trial.
Install
Recommended
Eight screens — Devices, Flows, Inspector, Analytics, Performance, Product, Replay and Agent. The CLI is bundled inside it, so installing the app installs both.
For the terminal
Flows, crawls, benches, recordings, perf and product analytics, and the intent runtime — the surface CI talks to. Sixty-three typed leaves under twenty-eight commands.
npm install -g squiggle-cliFor agents
Registers seventy-five tools with your agent, then writes the matching skills, subagents and slash commands into .claude/.
claude mcp add squiggle -- squiggle mcpsquiggle agent kit --installThe desktop app also offers Install CLI in PATH…, which is the shortest route if you already have the app. Checksums for every artifact are published at SHA256SUMS.
Requirements
An Apple Silicon Mac on macOS 15 or later. The host injects into simulator processes and drives them over real HID, which is Apple-Silicon-only by construction.
Xcode. Squiggle drives the iOS simulator, so you already have it — but it is a hard requirement, not a suggestion.
A React Native app you can rebuild. The SDK is one import in your entry file; nothing works without it in the app.
Licence
squiggle activate --trialsquiggle activatesquiggle licensesquiggle license prints which of the four states you are in and why, and a paid command that refuses names the requirement rather than exiting on a bare code.SQUIGGLE_LICENSE_TOKEN is not machine-bound, because a runner is a new machine on every build.Get started
One import at the top of your entry file. Rebuild rather than reload — the dev agent is native.
bun add @squiggle/react-native# then, as the FIRST line of your entry file:# import '@squiggle/react-native';The important one. Doctor checks every link in the chain — simulator booted, app installed, agent injected, host reachable — and names the remedy for anything that is not.
squiggle doctorA flow by name from .squiggle/flows, or by path. The run is captured, so the failure you see is the one a colleague replays.
squiggle flow flows/login.yaml