Arrakis is a self-hosted sandbox manager for running AI-generated code and computer-use sessions away from the host machine. Each sandbox is a MicroVM running Ubuntu, started and managed by a daemon called arrakis-restserver, with a code-execution service and a VNC server running from boot.
Sandboxes support snapshot-and-restore. An agent can do some work, snapshot a sandbox, continue, and later return to the exact earlier state - spawned processes and modified files included. That makes backtracking possible for agents with multi-step plans, such as Monte Carlo tree search, and for replaying an execution flow to explain it.
Clients drive sandboxes three ways: a REST API, the py-arrakis Python SDK, and an MCP server that lets MCP clients spawn and manage sandboxes themselves. A Go command-line client covers the same start, stop, list, destroy, snapshot, and restore operations. Port forwarding from the host to each sandbox is set up automatically, so the sandbox GUI - including a pre-installed Chrome for computer use - is reachable through a VNC client without extra configuration.
The isolation relies on hardware virtualisation, so Arrakis runs on Linux hosts with /dev/kvm available, and it uses cloud-hypervisor as the virtual machine manager. Sandbox root filesystems are protected with overlayfs, each sandbox gets a tap device attached to a Linux bridge, and the guest image is customised through a Dockerfile-based rootfs build; you can also supply your own kernel when starting a VM. Setup instructions cover a Google Compute Engine VM as well as a local host.
Features
- MicroVM isolation: each sandbox runs in its own lightweight virtual machine under cloud-hypervisor
- Snapshot and restore: capture a sandbox and return to the exact state later, including processes and files
- REST API and daemon: arrakis-restserver starts, stops, destroys, and lists VMs, and owns their lifetime
- Python SDK: py-arrakis spawns sandboxes, uploads files, and runs commands, with a context manager that destroys on exit
- MCP server: MCP clients can spawn and manage sandboxes directly
- Go CLI: arrakis-client covers start, list, stop, destroy, snapshot, and restore
- Automatic port forwarding: host ports map to sandbox services such as the VNC GUI without manual setup
- GUI for computer use: a VNC server and Chrome are installed in every sandbox at boot
- Customisable guests: Dockerfile-based rootfs, prebuilt kernel or your own, and per-sandbox networking with SSH access
