Overview
Daytona is a secure and elastic infrastructure runtime for executing AI-generated code and running agent workflows. Its sandboxes are fully isolated, composable computers, each with its own kernel, filesystem, network stack, and allocated vCPU, RAM, and disk.
Sandboxes are the core of the platform. They start in under 90ms, run code in Python, TypeScript, and JavaScript, and are built on OCI/Docker compatibility for predictable environments. Stateful snapshots let agents keep their work across sessions, which makes Daytona a reliable foundation for long-running agent setups.
Agents and developers drive sandboxes programmatically through Daytona's SDKs, REST API, and CLI. You can manage the sandbox lifecycle, work with the filesystem, run processes and code, and configure the runtime with base images, packages, and tooling.
What it does
- Isolated sandboxes that act as full composable computers, each with a dedicated kernel, filesystem, and network stack
- Fast startup, with sandboxes ready to run code in under 90ms
- Stateful snapshots that persist agent work and let operations continue across sessions
- Agent tools for process and code execution, file system operations, computer use, Git operations, and an MCP server
- Human-facing access through a dashboard, web terminal, SSH, VNC, and live preview URLs
- SDKs for Python, TypeScript, Ruby, Go, and Java, plus a REST API and a CLI
Getting started
Create an account at app.daytona.io, generate an API key from the dashboard, then install an SDK and create your first sandbox. The Python example below runs a line of code inside a fresh sandbox.
Install the Python SDK
Install the Daytona SDK with pip. SDKs are also available for TypeScript (npm install @daytona/sdk), Ruby, Go, and Java.
pip install daytonaCreate a sandbox and run code
Configure the client with your API key, create a sandbox, and run code inside it. The response contains the result of the executed code.
from daytona import Daytona, DaytonaConfig
config = DaytonaConfig(api_key="YOUR_API_KEY")
daytona = Daytona(config)
sandbox = daytona.create()
response = sandbox.process.code_run('print("Hello World!")')
print(response.result)Or use the CLI
Prefer the command line? Create a sandbox directly with the Daytona CLI.
daytona createCommands and code are distilled from the project's own documentation — always check the official repo for the latest.
When to use it
- Running untrusted, AI-generated code from agents inside a fully isolated sandbox
- Giving autonomous agents a persistent workspace that keeps state across sessions via snapshots
- Building agent tooling that needs filesystem access, process execution, and computer use in a safe environment
- Self-hosting an open-source code execution stack with Docker Compose, or running it as a managed or hybrid service
How Daytona compares
Daytona alongside other open-source code sandboxes & isolation tools AI/TLDR tracks, ranked by GitHub stars.
| Tool | Stars | What it does |
|---|---|---|
| Daytona | ★ 71.7k | Secure, elastic sandboxes for running AI-generated code |
| NVIDIA NemoClaw | ★ 22.5k | NVIDIA's reference stack for running OpenClaw, Hermes and LangChain Deep Agents Code inside OpenShell sandboxes, adding managed inference, network policy, snapshots and CLI lifecycle control. |
| OpenSandbox | ★ 15.4k | OpenSandbox gives AI agents a safe place to run code and commands, with one unified API across Docker and Kubernetes runtimes and SDKs in five languages. |
| E2B | ★ 13.8k | E2B is open-source infrastructure that runs AI-generated code inside secure, isolated cloud sandboxes, controlled from JavaScript or Python SDKs. |
| Astrid | ★ 10.3k | A portable Rust runtime that executes software as sandboxed WebAssembly capsules, where every file, network, process and tool call is gated by a signed, revocable, per-principal capability instead of ambient authority. |
| Cloudflare Computer | ★ 9.2k | A virtual filesystem inside a Durable Object that gives an agent one execution surface across Workers isolates and full Linux containers. |
| smolvm | ★ 6.1k | A cross-platform CLI that boots sub-second Linux microVMs from a declarative Smolfile, so untrusted or agent-generated code runs behind a hypervisor boundary. |
| micropython-wasm | ★ 174 | Runs untrusted Python inside a WASI MicroPython module via Wasmtime, with memory caps, a CPU fuel budget, a wall-clock timeout and no network access. |
