Skip to main content
Start with the Runloop Quickstart to use the examples below.
Snapshots can be used to save the current disk state of a Devbox, and to create new Devboxes from a previously saved state. Snapshots can be used to:
  • Improve build times by snapshotting a populated build cache.
  • Roll back to a known good point in time.
  • Perform fan-out and attempt multiple approaches to a code change.
Snapshots are assigned a random identifier upon creation and can be queried via the API. Currently only disk snapshots are supported.
When should I use a Blueprint vs. a Snapshot?Snapshots and Blueprints both allow you to run devboxes with customizations. Blueprints are built programmatically and are cacheable using Docker layers, while Snapshots can be created quickly from an existing devbox.Examples:
  • Blueprint: You have a coding agent that is performing a task that requires installing a specific tool. Create a Blueprint with set-up steps for the tool. All Devboxes you launch from that Blueprint will have the environment already set up, and will not incur installation or setup time.
  • Snapshot: You have a coding agent in a devbox considering 3 different ways to complete a task. Create a snapshot of the initial state of the devbox, create 3 parallel devboxes from that snapshot, collate the results, and then choose the best option to continue.
1

Create a devbox to snapshot

Create a devbox with state to snapshot.
2

Create a Snapshot

Start a Snapshot and wait for it to be ready.
3

Create a new devbox from the completed snapshot

Once the snapshot is complete, use the snapshot ID to launch a new devbox:

Asynchronous Disk Snapshots

When creating a disk snapshot you may want access to the Snapshot ID while you are waiting for the actual snapshot operation to complete. The asynchronous version of the snapshot operation allows this.

Deleting Snapshots

By default, snapshots persist indefinitely and continue to incur storage costs. To optimize resource usage and costs, you can delete snapshots that are no longer needed.

Deleting a Single Snapshot

To delete a specific snapshot simply:

Cleaning Up Old Snapshots for a Devbox

When you create multiple snapshots of the same devbox, you may want to delete older snapshots to reduce storage costs. Here’s how to keep only the latest snapshot for a specific devbox:
Be careful when deleting snapshots, as this action cannot be undone. Ensure you’re not deleting snapshots that you may need for rollback or recovery purposes.