At a glance
| Version | Released | Highlights |
| 3.3.0 | Current | Package installation in sessions with cached mirrors and supply-chain checks |
| 3.2.0 | Current | Stateful sessions with persistent files and installed packages |
| 3.1.0 | Current | SSE streaming output and async execution with polling |
| 2.0.0 | Phase 1 | Ultra tier, gVisor isolation, batch up to 100, 300s timeout, playground |
| 1.2.0 | Phase 1 | Pre-warmed sandbox pools, sub-100ms cold starts, memory reporting |
| 1.1.0 | Phase 1 | Batch execution endpoint |
| 1.0.0 | Phase 1 | Stable release — Pro tier, rate-limit headers, /health, full error codes |
| 0.3.0 | Phase 1 | All 8 languages, stdin support, /languages endpoint |
| 0.2.0 | Phase 1 | Added TypeScript, Go, Bash |
| 0.1.0 | Phase 1 | Alpha — Python and JavaScript |
Package installation in sessions
The piece that makes code interpreters credible. Inside supported sessions, your agent can install packages through cached package mirrors. Top-1k packages per ecosystem are optimized for fast installs. The session container itself keeps network egress disabled.
- New
POST /v1/sessions/{id}/install endpoint.
- Stable public managers:
pip for Python and npm for JavaScript/TypeScript.
- Top-1k packages cached locally for fast installs.
- MCP
session_install_packages tool.
Stateful sessions
Persistent sandboxes that retain files and installed packages across calls. The single biggest unlock for AI-agent code interpreters: setup work survives the next retry. Sessions auto-renew on activity and expire at the idle TTL.
POST /v1/sessions, POST /v1/sessions/{id}/execute, GET /v1/sessions/{id}, DELETE /v1/sessions/{id}.
- Per-API-key concurrent session limits enforced by tier (5 / 20).
- Idle TTL up to 30 minutes; auto-renew on execute and install.
Streaming output and async polling
Two long-requested integration modes shipped together. Streaming uses Server-Sent Events to deliver live stdout/stderr as code runs. Async lets you enqueue long jobs and poll for completion.
POST /v1/execute/stream — SSE events: stdout, stderr, result.
POST /v1/execute?async=true — returns job_id and poll_url; results are polled at /v1/executions/{job_id}.
Ultra tier, gVisor, and the playground
Phase 1's flagship release. Adds the Ultra tier (50K exec/mo), enables gVisor isolation as the default runtime, raises batch size to 100, lifts the timeout to 300s, and ships the public playground at sandboxapi.dev/playground.
Sandbox pre-warming
Pre-warmed sandbox pools eliminate cold-start latency. p50 cold-start drops below 100ms across all 8 supported languages. Adds memory_used_kb to the response.
Batch execution
New POST /v1/execute/batch endpoint runs up to 50 snippets in a single round trip — perfect for grading and bulk validation.
Stable release
API surface frozen. Pro tier launches. Standard rate-limit headers (X-RateLimit-Remaining, X-RateLimit-Reset) included on every response. GET /health endpoint and the full error-code taxonomy land.
All 8 launch languages, stdin
Adds Java, C, C++ to bring Phase 1 language coverage to 8. Adds stdin support and the /v1/languages discovery endpoint.
TypeScript, Go, Bash
First language expansion. TypeScript transpiles via tsc, Go compiles per-call, Bash runs via the system shell — all under gVisor.
Alpha — Python and JavaScript
The first cut. Synchronous execution only, two languages, no batch, no stdin. Just enough to prove the model.