CLI Commands
swarm
Run without arguments to launch the interactive menu.
swarm login
Authenticate with your Swarm account via browser.
| Option | Description |
|---|---|
--api-url <url> | Override the API URL |
swarm logout
Remove stored credentials.
swarm test
Run an AI-powered UX test against a URL.
Target & goal
| Option | Description |
|---|---|
--url <url> | Target URL (e.g. localhost:3000 or https://myapp.com) |
--goal <goal> | What the AI personas should try to accomplish |
--description <desc> | Describe your target audience |
Personas
| Option | Description |
|---|---|
--swarm <id> | Use personas from a saved swarm |
--agents <count> | Number of AI personas to generate (default: 3) |
--audience <desc> | Audience description for persona generation |
Tunneling
| Option | Description |
|---|---|
--no-tunnel | Skip tunnel setup (URL must be publicly accessible) |
--tunnel-provider <provider> | Tunnel provider: cloudflare, ngrok, or auto (default: auto) |
Backend proxy
| Option | Description |
|---|---|
--backend <url> | Local backend URL to proxy (e.g. localhost:8080) |
--backend-paths <paths> | Additional path prefixes for backend routing (comma-separated) |
--backend is provided, Swarm starts a reverse proxy that routes API paths (/api/*, /auth/*, /graphql, /trpc/*) to your backend and everything else to your frontend — all through a single tunnel.
Authentication
| Option | Description |
|---|---|
--login-url <url> | Login page URL for authenticated testing |
--username <username> | Username or email |
--password <password> | Password (prefer interactive prompt or --password-stdin) |
--password-stdin | Read password from stdin for scripting |
Advanced
| Option | Description |
|---|---|
--max-steps <n> | Maximum steps per agent (default: 30) |
--provider <provider> | AI provider: openai or anthropic |
--model <model> | Model name override |
-y, --yes | Skip confirmation prompts |
Examples
Basic test:swarm list-swarms
List your saved persona swarms.
swarm test --swarm <id>.