Daytona
snapshot-20260831 commercialDaytona is an open-source development environment platform that enables developers to spin up standardized, reproducible coding environments instantly.
sandbox.create({ ..., outboundProxyUrl: 'http://proxy.corp.example.com:3128' })
catch (err) {
if (err.code === 'GIT_TRANSPORT_FAILED') { /* retry */ }
if (err.code === 'GIT_REMOTE_REJECTED') { /* alert */ }
} Summary
Daytona is a commercial sandbox infrastructure platform that provisions and manages isolated execution environments for AI-generated code, run as a hosted API and SDK rather than something installed and operated locally. It gives developers building AI coding agents a way to spin up, fork, and tear down sandboxes programmatically, with controls like per-sandbox CPU and memory limits, TTL and auto-pause settings for lifecycle management, and WebSocket event subscriptions for tracking sandbox state in real time. Organization-level metrics and membership management point to teams operating fleets of sandboxes rather than single developers experimenting alone. Security-conscious defaults run through recent work too, including enforced TLS verification and restricted CLI config permissions. With 33 releases in the window tracked, including steady SDK, API, and CLI updates, the project shows active, ongoing development.
Daytona is an open-source development environment platform that enables developers to spin up standardized, reproducible coding environments instantly.
What Daytona answers
Do I need to run any infrastructure to use this?
no, it's a hosted API and SDK reached over the network, so there's no server or scheduler to operate yourself
Can I move code between a sandbox and my own systems without exposing credentials?
pre-signed upload and download URLs let files move directly to and from a sandbox without passing API keys through the transfer
What happens to a sandbox if my process forgets to clean it up?
time-to-live and configurable auto-pause settings expire or idle out sandboxes automatically instead of relying on explicit teardown calls
Will upgrading break an existing integration?
the Python SDK now requires version 3.10 or higher, and several older API endpoints are deprecated though still functional, so older setups need checking before upgrade
How do I track what a sandbox is doing without polling it?
WebSocket event subscriptions push sandbox state changes as they happen, and organization-level metrics cover usage across a fleet
Release history
- snapshot-20260831
- ›Propagates daemon error codes consistently across all SDKs, enabling uniform error handling.
- snapshot-20260830
Daytona 0.203.0 adds a CLI command for listing organization members and client-side HTTP timeout support.
- ›Adds an organization members CLI command for listing org members from the terminal.
- snapshot-20260829
Daytona 0.203.0 adds a CLI command for listing org members and propagates daemon error codes across all SDKs.
- ›Adds organization members command to the CLI for listing members of an organization.
- ›Propagates missing daemon error codes to all SDKs for consistent error handling across clients.
- snapshot-20260828
- ›Propagates daemon error codes consistently across all SDKs.
- snapshot-20260826
Daytona 0.202.0 promotes sandbox fork and snapshot creation APIs from experimental to stable.
- ›Promotes sandbox fork and
create-snapshotto stable API, replacing the previous experimental aliases.
└──▷ BREAKING ON UPGRADE- !The experimental API aliases for sandbox fork and
create-snapshotare deprecated — callers using the experimental endpoints must migrate to the stable API equivalents.
- ›Promotes sandbox fork and
- Sandbox class and warm pool fields on Sandbox
Daytona 0.207.0 exposes sandboxClass, warmPoolId, gpuType, desiredState, daemonVersion, and otelEndpointOverride fields on the Sandbox object
- ›Exposes
sandboxClass,warmPoolId,gpuType,desiredState,daemonVersion, andotelEndpointOverridefields directly on the Sandbox object in the SDK
- ›Exposes
- snapshot-20260825
Daytona 0.203.0 adds a CLI command to list organization members and consistent daemon error codes across all SDKs.
- ›Adds organization members command to the CLI for listing org members.
- ›Propagates daemon error codes consistently to all SDKs, enabling uniform error handling across SDK consumers.
- snapshot-20260824
Daytona promotes sandbox fork and snapshot creation to stable API, with cleaner client-side validation in the TypeScript SDK.
- ›Distinguishes client-side argument validation errors from server-side 400 responses in the TypeScript SDK for clearer error handling.
└──▷ BREAKING ON UPGRADE- !Experimental API aliases for fork and create-snapshot are deprecated and replaced by the stable API endpoints — callers using the experimental aliases must migrate to the stable equivalents.
- snapshot-20260823
- ›Adds pre-signed download and upload URLs for sandbox files via the SDK, enabling direct S3-compatible file transfer without proxying through the API.
- ›Introduces structured error responses with typed error codes in the SDK, giving clients a stable contract to match against specific failure conditions.
- snapshot-20260822
- ›Promotes fork and
create-snapshotfrom experimental to stable API, retiring the experimental aliases.
└──▷ BREAKING ON UPGRADE- !Experimental API aliases for fork and create-snapshot are deprecated; callers using the experimental endpoints must migrate to the stable API.
- ›Promotes fork and
- snapshot-20260821
Daytona 0.201.0 adds pre-signed sandbox file URLs, typed SDK error codes, and an autoDestroyAt range filter for sandbox listing.
- ›Adds
autoDestroyAtrange filter to the sandbox list SDK call, allowing callers to query sandboxes by their scheduled destruction time.
- ›Adds
- snapshot-20260820
Daytona promotes sandbox fork and snapshot creation to stable API, with improved client-side error signaling in the TypeScript SDK.
- ›Distinguishes client-side argument validation errors from server 400s in the TypeScript SDK, giving callers cleaner error handling.
└──▷ BREAKING ON UPGRADE- !Experimental aliases for fork and create-snapshot are deprecated; callers using the experimental API endpoints must migrate to the stable equivalents.
- 1.0
Daytona now publishes an API — 196 endpoints across 19 areas: Organizations, Sandbox, Admin, …
- ›Organizations (49 endpoints) — create, read, update, delete
- ›Sandbox (47 endpoints) — create, read, update, delete
- ›Admin (24 endpoints) — create, read, update, delete
- ›Runners (12 endpoints) — create, read, update, delete
- ›Snapshots (8 endpoints) — create, read, delete
+4 moreshow less
- ›Users (8 endpoints) — create, read, delete
- ›Api Keys (6 endpoints) — create, read, delete
- ›Docker Registry (6 endpoints) — create, read, update, delete
- ›11 more areas: Preview, Secret, Volumes, Jobs, Warm Pools, Webhooks, Health, Audit, Config, Object Storage, Regions
- Org members command and client-side HTTP timeout
Daytona 0.203.0 adds a CLI org members command and a
requestTimeoutMstimeout option in the TypeScript SDK.- ›Adds
DaytonaConfig.requestTimeoutMsto the TypeScript SDK for configurable client-side HTTP timeouts. - ›Adds a CLI command for listing organization members.
- ›Adds
- Pre-signed file URLs and typed SDK errors
Daytona 0.201.0 adds pre-signed file transfer URLs, typed SDK error codes, and sandbox list filtering by
autoDestroyAt.- ›Adds
autoDestroyAtrange filter to the sandbox list SDK method, enabling lifecycle-aware queries for sandboxes expiring within a time window. - ›Adds pre-signed download and upload URL generation for sandbox files, allowing direct S3-compatible file transfers without proxying through the API.
- ›Adds structured error responses with typed error codes across the SDK, enabling programmatic error handling by error type rather than string matching.
- ›Adds
- Snapshot operations by name and outbound proxy
Daytona 0.204.0 adds snapshot operations by name, outbound proxy config, and typed git transport error codes.
└──▷ TRY ITCreate a sandbox that routes all outbound traffic through a corporate proxy — useful in air-gapped or regulated environments.$ sandbox.create({ ..., outboundProxyUrl: 'http://proxy.corp.example.com:3128' })Catch specific git transport failures in automation to distinguish a network error from a rejected push.$ catch (err) { if (err.code === 'GIT_TRANSPORT_FAILED') { /* retry */ } if (err.code === 'GIT_REMOTE_REJECTED') { /* alert */ } }- ›Adds
sourceSandboxIdfilter to snapshot list in the SDK, enabling callers to list only snapshots derived from a specific sandbox. - ›Adds
outboundProxyUrlparameter to the sandbox create call in the SDK, letting sandboxes route egress through a specified proxy. - ›Supports snapshot delete and activate by ID or name across the SDK and CLI, not just by ID.
- ›Introduces
GIT_TRANSPORT_FAILEDandGIT_REMOTE_REJECTEDtyped error codes across all SDKs for finer-grained git failure handling.
- ›Adds
- Stable sandbox fork and snapshot creation
Daytona 0.202.0 promotes sandbox fork and snapshot creation to stable and improves TypeScript SDK error handling.
- ›Promotes sandbox forking and snapshot creation from experimental to stable in the SDK API, deprecating the previous experimental aliases.
- Warm pool management and spot GPUs
Daytona 0.205.0 adds warm pool management APIs, spot GPU support, and OpenTelemetry endpoint override for sandboxes.
- ›Adds
otelEndpointOverrideto sandbox creation for overriding the OpenTelemetry endpoint per sandbox. - ›Adds spot GPU support for sandboxes.
- ›Adds warm pool management APIs across SDKs.
- ›Adds
- snapshot-20260819
Daytona 0.201.0 adds pre-signed sandbox file URLs and typed SDK error codes for easier automation.
- ›Adds pre-signed download and upload URLs for sandbox file transfers via the SDK.
- ›Adds structured error responses with typed error codes in the SDK for deterministic error handling.
- ›Makes
FileInfo.modifiedAtoptional in the Python toolbox API client for compatibility with older runners.