ComputeSDK
A unified TypeScript SDK for running code in remote sandboxes. Write code once, switch providers by changing environment variables or the provider config. Supports 42 sandbox providers.
Installation
npm install computesdk
You will also need the provider package(s) you intend to use, e.g.:
npm install @computesdk/e2b
No ComputeSDK API key is required. ComputeSDK itself does not have its own API key. Each sandbox provider needs its own credentials; the examples below read them from environment variables.
Quick Start
import { compute } from 'computesdk';
import { e2b } from '@computesdk/e2b';
compute.setConfig({
provider: e2b({ apiKey: process.env.E2B_API_KEY }),
});
const sandbox = await compute.sandbox.create();
const result = await sandbox.runCommand('echo "Hello World!"');
console.log(result.stdout);
await sandbox.destroy();
Multi-Provider Setup
Use multiple providers for resilience or to route workloads to the best backend:
import { compute } from 'computesdk';
import { e2b } from '@computesdk/e2b';
import { modal } from '@computesdk/modal';
compute.setConfig({
providers: [
e2b({ apiKey: process.env.E2B_API_KEY }),
modal({
tokenId: process.env.MODAL_TOKEN_ID,
tokenSecret: process.env.MODAL_TOKEN_SECRET,
}),
],
providerStrategy: 'priority', // or 'round-robin'
fallbackOnError: true,
});
// Creates a sandbox using the first provider that succeeds
const sandbox = await compute.sandbox.create();
Pick a specific provider at creation time:
const sandbox = await compute.sandbox.create({ provider: 'modal' });
Sandbox Lifecycle
const sandbox = await compute.sandbox.create({
timeout: 300000,
metadata: { userId: '123' },
});
const existing = await compute.sandbox.getById('sandbox-id');
const all = await compute.sandbox.list();
await compute.sandbox.destroy(sandbox.sandboxId);
Command Execution
const result = await sandbox.runCommand('ls -la');
// result.stdout, result.stderr, result.exitCode, result.durationMs
const bg = await sandbox.runCommand('npm run dev', { background: true });
const withOpts = await sandbox.runCommand('npm install', {
cwd: '/app',
env: { NODE_ENV: 'production' },
timeout: 60000,
onStdout: (chunk) => console.log(chunk),
});
Filesystem
await sandbox.filesystem.writeFile('/app/index.js', 'console.log("hi")');
const content = await sandbox.filesystem.readFile('/app/index.js');
await sandbox.filesystem.mkdir('/app/data');
const files = await sandbox.filesystem.readdir('/app');
const exists = await sandbox.filesystem.exists('/app/index.js');
await sandbox.filesystem.remove('/app/index.js');
Sandbox Info & Networking
const info = await sandbox.getInfo();
// info.id, info.provider, info.status, info.createdAt, info.timeout, info.metadata
const url = await sandbox.getUrl({ port: 3000, protocol: 'https' });
Snapshots
const snapshot = await compute.snapshot.create(sandbox.sandboxId, { name: 'baseline' });
const snapshots = await compute.snapshot.list();
await compute.snapshot.delete(snapshot.id);
Provider-Specific Skills
Install provider-specific setup guides:
npx skills add https://github.com/computesdk/sandbox-skills --skill agentcore-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill agentuity-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill archil-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill arker-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill beam-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill blaxel-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill cloud-run-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill cloudflare-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill codesandbox-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill collimate-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill createos-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill daytona-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill declaw-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill docker-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill e2b-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill freestyle-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill hopx-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill isorun-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill just-bash-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill k8s-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill leap0-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill lelantos-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill lightning-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill modal-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill mosaic-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill namespace-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill neevcloud-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill northflank-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill opencomputer-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill quilt-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill railway-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill run-cloud-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill runloop-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill sail-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill sandbox0-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill secure-exec-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill sprites-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill superserve-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill tenki-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill tensorlake-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill upstash-sandbox
npx skills add https://github.com/computesdk/sandbox-skills --skill vercel-sandbox
Provider skill summaries:
agentcore-sandbox— AWS Bedrock AgentCore Code Interpreter provider for ComputeSDK - secure, session-based code execution sandboxesagentuity-sandbox— Agentuity provider for ComputeSDK - isolated cloud sandboxes with native filesystem, snapshot/checkpoint support, and flexible runtimesarchil-sandbox— Archil provider for ComputeSDK - exec commands against an Archil diskarker-sandbox— Arker provider for ComputeSDK - sandboxed VMs with persistent filesystems, forked from golden imagesbeam-sandbox— Beam provider for ComputeSDK - containerized sandbox environments with process management and filesystem accessblaxel-sandbox— Blaxel provider for ComputeSDK - lightweight cloud sandboxes for code executioncloud-run-sandbox— Google Cloud Run Sandboxes provider for ComputeSDKcloudflare-sandbox— Cloudflare provider for ComputeSDK - edge code execution using Cloudflare Workers and Durable Objectscodesandbox-sandbox— CodeSandbox provider for ComputeSDK - fast browser-compatible sandboxes with npm and Python supportcollimate-sandbox— Collimate provider for ComputeSDKcreateos-sandbox— CreateOS provider for ComputeSDK — NodeOps VM sandboxes with pause/resume/fork snapshotsdaytona-sandbox— Daytona provider for ComputeSDK - standardized development environments with devcontainer supportdeclaw-sandbox— Declaw provider for ComputeSDK - secure sandboxes with PII scanning, prompt-injection defense, and network egress filteringdocker-sandbox— Docker provider for ComputeSDK - local containerized sandboxes for development and testinge2b-sandbox— E2B provider for ComputeSDK - cloud sandboxes with full Linux environments, filesystem access, and microVM isolationfreestyle-sandbox— Freestyle provider for ComputeSDK - cloud sandboxes powered by Freestylehopx-sandbox— HopX provider for ComputeSDK - cloud sandboxes with full Linux environments, filesystem access, and microVM isolationisorun-sandbox— Isorun provider for ComputeSDK — isolated Linux VM sandboxes for running untrusted and AI-generated codejust-bash-sandbox— just-bash provider for ComputeSDK - local sandboxed bash execution with virtual filesystemk8s-sandbox— Kubernetes provider for ComputeSDK - run sandboxes as podsleap0-sandbox— Leap0 provider for ComputeSDK - cloud sandboxed environments for AI agentslelantos-sandbox— Lelantos provider for ComputeSDK - EU-native Firecracker microVM sandboxes (E2B-API-compatible) with full Linux environments, filesystem access, and per-port preview URLslightning-sandbox— Lightning AI provider for ComputeSDK - cloud sandboxes for code execution, command running, and filesystem accessmodal-sandbox— Modal provider for ComputeSDK - serverless Python execution with GPU support and zero cold startsmosaic-sandbox— Mosaic provider for ComputeSDK - Firecracker-based sandbox environmentsnamespace-sandbox— Namespace provider for ComputeSDK - cloud-native sandboxes with optional GPU supportneevcloud-sandbox— NeevCloud provider for ComputeSDK - secure cloud sandboxes with command execution, filesystem access, and preview URLsnorthflank-sandbox— Northflank provider for ComputeSDK - Deploy and manage compute workloads on Northflank's container platformopencomputer-sandbox— OpenComputer provider for ComputeSDK - persistent cloud VMs with checkpoints, preview URLs, command execution, and filesystem accessquilt-sandbox— Quilt provider for ComputeSDK - tenant-scoped Linux sandboxes with exec, published services, and snapshotsrailway-sandbox— Railway Sandboxes provider for ComputeSDK - run commands in Railway-hosted sandboxesrun-cloud-sandbox— Run Cloud provider for ComputeSDK - fast Firecracker microVM sandboxes with snapshots and filesystem accessrunloop-sandbox— Runloop provider for ComputeSDK - AI-optimized code execution with built-in devtools and debuggingsail-sandbox— Sail provider for ComputeSDK - fast, isolated microVM sandboxes with native filesystem accesssandbox0-sandbox— Sandbox0 provider for ComputeSDK - fast persistent sandboxes with command execution and native filesystem accesssecure-exec-sandbox— Secure execution provider for ComputeSDK - isolated sandbox environments using secure-execsprites-sandbox— Sprites provider for ComputeSDK - cloud sandboxes powered by Spritessuperserve-sandbox— Superserve provides sandbox infrastructure to run code in isolated cloud environments powered by Firecracker MicroVMstenki-sandbox— Tenki Cloud provider for ComputeSDK - microVM sandboxes with native filesystem, preview URLs, snapshots, and SSHtensorlake-sandbox— Tensorlake provider for ComputeSDK - stateful MicroVM sandboxes for agentic applications and LLM-generated code executionupstash-sandbox— Upstash Box provider for ComputeSDK - cloud sandboxes with code execution, filesystem access, and AI agent supportvercel-sandbox— Vercel Sandbox provider for ComputeSDK - serverless code execution for Python and Node.js on Vercel's edge network
TypeScript Types
import type {
SandboxInterface,
SandboxInfo,
CommandResult,
CreateSandboxOptions,
SandboxFileSystem,
} from 'computesdk';
References
- Documentation: https://www.computesdk.com/docs/
- GitHub: https://github.com/computesdk/computesdk
- LLM-optimized docs: https://www.computesdk.com/llms-full.txt
Scan to join WeChat group