The teams running their agents on Sandal.
Sandal came out of building Enter, an app that runs coding agents on every device. No sandbox we tried kept up with what those agents actually needed, so we built the one they run on today. Here is that story, and the teams that followed.
Enter gave every coding agent its own machine. We built Sandal to do it.
Coding agents on desktop, mobile and cloud. Sandal started as the execution layer inside Enter before it became its own product.
The products Enter runs on.
Every surface in the story is one primitive, a microVM with its own kernel, behind one API. These are the four Enter uses every day.
1from sandal import Sandbox
2
3# boot a desktop the agent can see
4vm = Sandbox.create(desktop=True)
5vm.screenshot("before.png")
6
7vm.click(x=412, y=280)
8vm.type("hello from the agent")
9vm.key("cmd+s")
10
11# read the screen back
12frame = vm.stream.latest()
13assert frame.contains("Saved")
➜ sandbox sandal desktop --stream
connecting to vm_7c31…
✓ stream open · 60fps · 18ms latency
screenshot → before.png
click(412, 280) · type · cmd+s
✓ saved
➜ sandbox
Sandboxes
A whole machine per agent turn. Under a second cold, free while paused, fork from a warm parent.
Discover productiOS & Android Simulators
Devices the agent can see and drive, streamed at 60 fps.
Discover productXcode Builds
Build the app on Apple silicon and install it straight onto the simulator.
Discover productGitHub Runners
Enter’s own CI on the same fleet, billed per minute, one label to switch.
Discover product
In their own words.
There are impacts you can measure, and then there is the moment a team stops thinking about where its agents run.
- EnterHow Enter gave every coding agent its own machine, and why we had to build Sandal to do itRead
- More stories are on the way.
Give your agents the machines Enter runs on.
Own kernel each, under a second to create, free while paused. Linux, macOS, Windows, iOS simulators and GitHub runners behind one API.
