Skip to content

Self-host on Daytona sandboxes

Daytona Cloud gives each Session a managed Linux VM with a stable name, ownership labels, stop/start, snapshots, and activity-renewed leases. The driver follows Daytona’s own conflict-recovery lifecycle, so resuming a Session re-attaches to the same VM rather than starting a new one.

Terminal window
DAYTONA_API_KEY= # required
DAYTONA_API_URL= # optional endpoint override
SANDBOX_IMAGE= # optional image reference

On the standalone Node server, select the adapter directly:

Terminal window
SANDBOX_PROVIDER=daytona
DAYTONA_API_KEY=...

To embed the driver in the Runtime Host composition, use createDaytonaProvider, createDaytonaManagedRuntime, or createDaytonaManagedRuntimeDriver from @open-managed-agents/managed-runtime-daytona:

const driver = createDaytonaManagedRuntimeDriver({
leaseTtlMs: 90_000,
apiKey: process.env.DAYTONA_API_KEY,
apiUrl: process.env.DAYTONA_API_URL, // optional
image: "node:22-slim", // or snapshot: "<snapshot name>"
autoStopInterval: 0,
autoArchiveInterval: 0,
});

The full option set: apiKey, apiUrl, target, snapshot, image, autoStopInterval, autoPauseInterval, autoArchiveInterval, autoDeleteInterval, networkBlockAll, networkAllowList, domainAllowList, outboundProxyUrl, outputStore, outputKeyPrefix, credentialEgress, sessionInputs, runtimeEnvironment, readiness, client, and the required leaseTtlMs.

Harness lanesama_worker, openma_supervised
suspendResumesupported (provider stop/start + snapshots)
Workspaceretained_runtime + checkpoint_restore, durable
Outputsfinal_collect, durable
Process checkpointsnone
Credential egressunsupported/snapshot by default