Skip to main content

A Box is a microVM, not a container

A Box starts a lightweight virtual machine in one line of code and runs any standard container image (Docker / OCI) inside it. Four properties distinguish it from an ordinary container:
  • Hardware-level isolation. Each Box has its own kernel (KVM on Linux, Hypervisor.framework on macOS) rather than sharing the host kernel through namespaces. That boundary is what makes it safe to run untrusted or model-generated code.
  • Stateful. Most sandboxes are destroyed after a single execution, so the environment has to be rebuilt every time. A Box is a persistent workspace: after stop and a later start, installed packages and written files are still there.
  • No daemon. BoxLite is embedded as a library inside your process. It needs no root and no background service.
  • Local-first. It runs entirely on your machine without a cloud account, and scales out horizontally when you need it.

When to use it

What is ready to build on

Every Box type, lifecycle management, custom resources / volumes / network, snapshots, secrets, code execution, browser automation, running a coding agent in a box, and a REST client are all available today. For the capabilities people most often ask about, here is the current path:

Next

  1. Install itInstallation covers every SDK, the CLI, and the virtualization requirement.
  2. Run something — pick the Python, Node.js, Rust, Go, or C quickstart.
  3. Choose a Box typeBox types compares all six and their defaults.
  4. See what you are operatingArchitecture overview traces one exec from your process to the guest.
Hitting an error already? Environment and install problems are on Installation; exception types and API pitfalls are on Error handling; quick answers are in the FAQ.