You leave an agent on a failing test overnight. By the time you stop watching, it has cloned the repository, installed the dependencies, built the project, run the suite twice and narrowed the failure to one module. In the morning you start it again and watch the first tool call go past: git clone. Everything underneath is gone, and it is walking the same path back to the place it already reached. The thinking was the cheap part of yesterday. The expensive part was the ground it stood on, and nobody kept it.

The first useful frame comes hours after dark

An observatory does not swing onto a galaxy the moment the dome opens. Before a run begins, the camera is craned up to the telescope and bolted on, which is a day of work for people who do it often. Then the focus. Then the pointing model: the telescope is walked across dozens of known stars so it can learn how its own steel sags, because where it believes it is aimed and where it is aimed are not the same thing. Then exposures of a dark shutter and of an evenly lit screen, so the detector’s own blemishes can be subtracted from everything that follows. Only after all of that does anyone get a frame of the thing they came for.

Which is why it stays up there. Observatories leave one mounted for weeks and run every programme that needs it back to back. The second night opens at dusk on real work, because the mounting, the focus, the pointing model and the reference exposures are all still there from the first.

A sandbox snapshot is that camera, left bolted on. The working state of an isolated container — its filesystem, the toolchain somebody installed, the checked-out repository, the build output, the fixtures a test needs — is saved when a session ends and handed back when the next one starts. The agent does not arrive at a bare machine. It arrives where it left off.

A rebuilt environment is not the same environment

The obvious saving is time, and it is real: setup is minutes of wall clock and, worse, pages of installer output that land in the agent’s context before it has read a line of code. The subtler saving is fidelity. A rebuild pulls whatever the world is handing out today, so a resolved version moves, a base image gets refreshed, and the failure you were chasing changes shape or stops happening. Resuming gives back the exact ground on which the bug reproduced.

That cuts both ways, which is what makes it a decision rather than a feature. A snapshot is also an environment that stopped receiving patches on the day it was taken, so anything long-lived needs an expiry and a plan for rebuilding from scratch on purpose. And it keeps whatever the last session left lying about: the token exported into a shell, the credentials a command-line tool cached in a home directory, the customer record someone pulled in to reproduce a report. A snapshot is a filesystem with a history, which is why it belongs to one owner and one task, and why handing it to a different user hands over the leftovers too. This is where a control plane pays for itself, with a record of what ran, limits on what the sandbox may reach across the network, and hooks that fire when one is created, paused or thrown away.

The environment becomes something you declare

That economy only works if keeping an environment is cheap to ask for, which is why the pattern is moving down into the platform. Kubernetes has fine primitives for services that are replicated and interchangeable, and almost none for a durable single computer that belongs to one task. So people are adding one: a resource that says this is a sandbox, it has a stable name, it has storage that outlives the process, and a controller creates it, pauses it, resumes it, deletes it. Templates and claims make a prepared shape reusable. A pool kept warm means the first minute of a task is not the slow one. The manifest still has to name the runtime that does the isolating, because declaring a sandbox does not by itself make one. Written down that way, the machine an agent works on gets reviewed and versioned like the contract it always was.

Nothing about the model changed overnight. The only question is whether the morning starts at the work or at the setup.