Files
zopu-code/.agents/skills/sandbox-agent/references/deploy/computesdk.md

2.9 KiB

ComputeSDK

Source: docs/deploy/computesdk.mdx Canonical URL: https://sandboxagent.dev/docs/deploy/computesdk Description: Deploy Sandbox Agent using ComputeSDK's provider-agnostic sandbox API.


ComputeSDK provides a unified interface for managing sandboxes across multiple providers. Write once, deploy anywhere by changing environment variables.

Prerequisites

  • COMPUTESDK_API_KEY from console.computesdk.com
  • Provider API key (one of: E2B_API_KEY, DAYTONA_API_KEY, VERCEL_TOKEN, MODAL_TOKEN_ID + MODAL_TOKEN_SECRET, BLAXEL_API_KEY, CSB_API_KEY)
  • ANTHROPIC_API_KEY or OPENAI_API_KEY

TypeScript example

npm install sandbox-agent@0.4.x computesdk
import { SandboxAgent } from "sandbox-agent";
import { computesdk } from "sandbox-agent/computesdk";

const envs: Record<string, string> = {};
if (process.env.ANTHROPIC_API_KEY) envs.ANTHROPIC_API_KEY = process.env.ANTHROPIC_API_KEY;
if (process.env.OPENAI_API_KEY) envs.OPENAI_API_KEY = process.env.OPENAI_API_KEY;

const sdk = await SandboxAgent.start({
  sandbox: computesdk({
    create: {
      envs,
      image: process.env.COMPUTESDK_IMAGE,
      templateId: process.env.COMPUTESDK_TEMPLATE_ID,
    },
  }),
});

try {
  const session = await sdk.createSession({ agent: "claude" });
  const response = await session.prompt([
    { type: "text", text: "Summarize this repository" },
  ]);
  console.log(response.stopReason);
} finally {
  await sdk.destroySandbox();
}

The computesdk provider handles sandbox creation, Sandbox Agent installation, agent setup, and server startup automatically. ComputeSDK routes to your configured provider behind the scenes. The create option now forwards the full ComputeSDK sandbox-create payload, including provider-specific fields such as image and templateId when the selected provider supports them.

Before calling SandboxAgent.start(), configure ComputeSDK with your provider:

import { compute } from "computesdk";

compute.setConfig({
  provider: "e2b", // or auto-detect via detectProvider()
  computesdkApiKey: process.env.COMPUTESDK_API_KEY,
});

Supported providers

ComputeSDK auto-detects your provider from environment variables:

Provider Environment Variables
E2B E2B_API_KEY
Daytona DAYTONA_API_KEY
Vercel VERCEL_TOKEN or VERCEL_OIDC_TOKEN
Modal MODAL_TOKEN_ID + MODAL_TOKEN_SECRET
Blaxel BLAXEL_API_KEY
CodeSandbox CSB_API_KEY

Notes

  • Provider resolution: Set COMPUTESDK_PROVIDER to force a specific provider, or let ComputeSDK auto-detect from API keys.
  • sandbox.runCommand(..., { background: true }) keeps the server running while your app continues.
  • sandbox.getUrl({ port }) returns a public URL for the sandbox port.
  • Always destroy the sandbox when done to avoid leaking resources.