Skip to main content

Prerequisites

  • E2B_API_KEY
  • ANTHROPIC_API_KEY or OPENAI_API_KEY

TypeScript example

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

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 template = process.env.E2B_TEMPLATE;

const sdk = await SandboxAgent.start({
  sandbox: e2b({
    template,
    create: { envs },
  }),
});

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 e2b provider handles sandbox creation, Sandbox Agent installation, agent setup, and server startup automatically. Sandboxes pause by default instead of being deleted, and reconnecting with the same sandboxId resumes them automatically. Pass template when you want to start from a custom E2B template alias or template ID. E2B base-image selection happens when you build the template, then sandbox-agent/e2b uses that template at sandbox creation time.

Faster cold starts

For faster startup, create a custom E2B template with Sandbox Agent and target agents pre-installed. Build System 2.0 also lets you choose the template’s base image in code. See E2B Custom Templates and E2B Base Images.