At a glance
- Availability: Experimental (how to enable).
- Auth: API key.
- Connection: The key from
SPRITES_TOKENis sent as theBearerprefixedAuthorizationheader. - Docs: https://sprites.dev/api
Credentials
Set these per environment. See Connect an integration.| Variable | Required | Description |
|---|---|---|
SPRITES_TOKEN | Yes | Sprites API token in org/token-id/secret format, generated at sprites.dev/account; same env var used by the Sprites CLI and SDKs Docs. |
Setup
- Create a Sprites account: Sign up at https://sprites.dev by signing in with a Fly.io account (Sprites is made by Fly.io); new accounts can create sprites right away for testing.
- Generate an API token: Go to https://sprites.dev/account and generate an API token. Tokens have the format my-org/token-id/secret. (Alternatively, install the sprite CLI and run sprite org auth.)
- Set the environment variable: Copy the token into your .env as SPRITES_TOKEN.
- Verify access: Run List Sprites to confirm the token works, then create a sprite and execute a command in it.
- The API is served on https://api.sprites.dev/v1 and authenticates with Authorization: Bearer $SPRITES_TOKEN
- Sprites are stateful: the filesystem persists across suspends, and sprites wake automatically on use (status moves between cold, warm, and running)
- Destroying a sprite permanently deletes its persisted state
- Execute Command uses the HTTP POST exec endpoint for non-interactive commands; interactive TTY sessions, filesystem APIs, checkpoints, and services are WebSocket/SDK-first and not covered by these tools
Tools
| Tool | Access | Description |
|---|---|---|
| List Sprites | Read | List sprites in the organization, optionally filtered by name prefix and paginated |
| Create Sprite | Write | Create a new sprite - a persistent, hardware-isolated Linux VM that keeps its filesystem state between runs |
| Get Sprite | Read | Get a sprite by name, including its URL, runtime status (cold, warm, or running), and creation/activity timestamps |
| Destroy Sprite | Write | Destroy a sprite by name, permanently deleting the VM and its persisted filesystem state |
| Execute Command | Write | Execute a command inside a sprite over HTTP (non-interactive) and return its output as JSON |
| Create Checkpoint | Write | Create a point-in-time checkpoint of a sprite (filesystem and memory) before risky operations; the response is a stream of NDJSON progress events |
| List Checkpoints | Read | List a sprite’s checkpoints with their IDs (e.g. v7), creation times, and comments - discover restore points |
| Restore Checkpoint | Write | Roll a sprite back to a checkpoint, replacing its current state with the snapshot; the response is a stream of NDJSON progress events |
Example prompts
- List my Sprites.dev sandboxes with their status and last activity.
- Create a new sprite named scratchpad and confirm it is reachable by running uname -a inside it.
- List my sprites and destroy any that I confirm are no longer needed.