Overview
The most-requested sandbox type. Spin up a Python or Node process with a dependency-managed environment, run code, capture stdout/stderr/return values, and tear it down. Files are temporary for the sandbox lifetime and cannot be attached to a durable volume.
Dependency manifests
Attach one of: pyproject.toml, requirements.txt, or package.json.
Tarka rejects URL, git, local-path, custom-index, workspace, editable, and
lifecycle-script sources. A template must reach the ready state before a sandbox
can use it.
Execution model
- Sandbox lifetime: 30–300 seconds, 300 seconds by default
- Execution limit: 1–30 seconds, 10 seconds by default
- CPU: fixed 1 vCPU
- Memory: fixed 1 GiB
- Filesystem: ephemeral and deleted with the sandbox
- Network: direct egress denied; approved HTTP(S) traffic uses a constrained proxy
What we don’t allow
- Long-running daemons
- Shells, child processes, arbitrary commands, or user-supplied images
- Browsers, inbound ports, SSH, durable volumes, and GPUs
- Outbound network to private IP ranges (CGNAT, RFC1918) without allowlist
- Anything that would let one tenant see another’s process state