Skip to content
Home

SeaCloud Sandbox Overview

SeaCloud Sandbox creates short-lived isolated Linux runtimes from templates. Use it when an application or agent needs to run code, edit files, install dependencies, start preview servers, or execute untrusted automation without touching the host machine.

The public SDKs talk to the SeaCloud Sandbox gateway. The gateway creates and manages sandboxes through the control plane, then returns sandbox-scoped runtime access for files, commands, PTY, code execution, metrics, and port previews.

Your backend / agent runner
-> SeaCloud Sandbox Gateway
-> Atlas control plane creates or reconnects a sandbox
-> Template image starts inside an isolated runtime
-> SDK uses envdUrl + sandbox token for files, commands, metrics, and ports

Use the public SDK object as the boundary. Do not cache runtime URLs or runtime tokens outside the create/detail/connect response flow.

CapabilityWhat it gives you
Isolated executionEach sandbox has its own runtime boundary, filesystem, process tree, and lifecycle timeout.
Fast create/connect loopCreate from official templates, wait for readiness, reconnect by sandbox ID, refresh TTL, pause, or delete.
Files and commandsRead/write files, list directories, run foreground commands, and start background services.
Public previewsOpen apps with https://{port}-{sandboxID}.{domain}/ after binding the service to 0.0.0.0.
TemplatesBuild reusable tpl-... environments with pinned dependencies, startup commands, readiness checks, and storage policy.
Multi-language SDKsNode, Python, and Go SDKs expose aligned lifecycle, file, command, template, and code-interpreter flows.
PlaneServiceResponsibility
GatewayHermesPublic API entrypoint, API key auth, routing, and request context.
Control planeAtlasCreate, inspect, connect, pause, refresh, timeout, logs, and delete.
Build planesandbox-builderTemplate metadata, build context upload, image builds, build logs, and rollback.
Runtime planenano-executorRuntime files, processes, PTY, metrics, health checks, and public port routing.
GoalRecommended first step
Evaluate basic command executionCreate base, write a file, run sh, delete the sandbox.
Execute generated code or data analysisCreate code-interpreter, use runCode, read generated artifacts.
Preview a web appCreate node or web-frontend, bind the app to 0.0.0.0, open getHost(3000).
Run a coding agentStart with codex, claude, opencode, or base, then pin a concrete template.
Keep user work between sessionsUse nfs, cloud, block, or a custom template with explicit volumeMounts.
Reduce cold setup timeBuild a custom tpl-... with dependencies and startup commands baked in.
ItemCurrent contract
Gateway base URLhttps://sandbox-gateway.cloud.seaart.ai
Control-plane authX-API-Key: <SEACLOUD_API_KEY>
Runtime authX-Access-Token: <envdAccessToken> returned by create/detail/connect
First templatebase for shell/files, code-interpreter for runCode workflows
Workspace path in examples/root/workspace
Sandbox timeout unitSeconds
Runtime command timeout unitMilliseconds
App preview URLhttps://{port}-{sandboxID}.{envdBaseDomain}/
Template familyUse it for
baseGeneral shell, files, git, PTY, metrics, and lightweight services.
code-interpreterPython, JavaScript, TypeScript, Bash, R, and Java code execution.
node, python, goLanguage-specific app and build/test workflows.
browser, desktopBrowser automation and computer-use style workloads.
nfs, cloud, blockPersistent workspace behavior, depending on the mounted storage type.
Concrete tpl-...Production workloads that need stable image and storage behavior.

Official template availability can differ by environment. In the current production matrix, managed templates expose runtime APIs on port 9000 and use /root/workspace as the default workdir.

TemplateTypical CPU / memoryStorage
base1 / 1024MBephemeral at /root/workspace
cloud1 / 1024MBobject at /root/workspace
nfs1 / 1024MBnfs at /root/workspace
block1 / 1024MBblock at /root/workspace
python, node2 / 2048MBephemeral
go, web-frontend, browser, code-interpreter2 / 4096MBephemeral
desktop, claude, openclaw4 / 8192MBephemeral

List templates in the target environment before pinning one in production, then prefer a concrete tpl-... ID or tag.

Before moving from evaluation to production, confirm:

  1. The workload uses a concrete tpl-... ID or a promoted tag instead of a moving official alias.
  2. All user-visible app servers bind to 0.0.0.0 and expose the documented port.
  3. Sandbox lifecycle timeout and per-command timeoutMs are both explicitly set.
  4. Persistent data is written only under template volumeMounts.
  5. Logs, metrics, timeline, diagnostic, and requestID are captured in your support flow.
  6. API keys and envdAccessToken never reach browser code, model prompts, or user-visible logs.