Skip to content

Repository files navigation

E2B Cookbook Preview Light E2B Cookbook Preview Dark

✴️ E2B Cookbook

Example code and guides for building with E2B SDK.

Read more about E2B on the E2B website and the official E2B documentation.

Examples

Hello World guide

Open-source apps

  • E2B AI Analyst - analyze your data & create interactive charts
  • E2B Fragments - prompt different LLMS to generate apps with UI
  • E2B Surf - computer use AI agent powered by OpenAI

LLM providers

Provider Topic(s) Example Python TypeScript
OpenAI Agents SDK Agentic workflows running in E2B sandboxes Python -
GPT-5.6 Data analysis and visualization of a CSV Python TypeScript
GPT-5.6 Code interpreter and reasoning on image data Python TypeScript
GPT-5.6 Code interpreter for ML on dataset Python TypeScript
Codex CLI OpenAI Codex, running inside a Sandbox Python TypeScript
Anthropic Claude Opus 5 Code interpreter Python TypeScript
Claude Code Claude Code, running inside a Sandbox Python TypeScript
Claude Managed Agents Self-hosted worker running inside a Sandbox Python -
Meta Muse Spark Coding agent with E2B as its execution backend Python -
Mistral Codestral Code interpreter Python TypeScript
Groq Llama 3 Code interpreter via function calling Python TypeScript
Fireworks AI Qwen2.5-Coder-32B-Instruct Code interpreter Python -
Llama 3.1 405B, 70B, 8B Code interpreter Python -
Together AI Llama 3.1, Qwen 2, Code Llama, DeepSeek Coder Code interpreter Python TypeScript
WatsonX AI IBM Graphite, Llama, Mistral Code interpreter Python TypeScript

AI frameworks integrations

Framework Description Python TypeScript
🦜⛓️ LangChain LangChain with Code Interpreter Python -
🦜🕸️ LangGraph LangGraph with code interpreter Python -
CrewAI CrewAI agent with sandboxed Python execution Python -
▲ Vercel AI SDK Next.js + AI SDK + Code Interpreter - TypeScript
Vercel AI SDK AI SDK sandbox provider: sandboxed tools via restricted sessions, and harness coding agents (Claude Code, Codex) running inside E2B - TypeScript
Vercel eve Feedback analyst agent whose sandbox backend is E2B, publishing an HTML report from the sandbox - TypeScript
Flue Feedback analyst agent running entirely inside an E2B sandbox, publishing an HTML report from the sandbox - TypeScript
Pi Pi builds its own E2B code-interpreter extension in a sandbox, then uses it to analyze data - TypeScript
AgentKit AgentKit Coding Agent - TypeScript
Sandbox Agent SDK Run Sandbox Agent inside E2B and connect with the SDK - TypeScript
Stirrup The lightweight framework for building agents Python -

Remote execution integrations

Integration Description Python TypeScript
Crabbox Warm one E2B sandbox, sync local changes, and rerun a test suite on the same lease Python -

Model Context Protocol (MCP)

Example Description TypeScript
MCP Client Basic MCP client connection to E2B sandbox TypeScript
MCP Custom Server Connect to custom filesystem MCP server from GitHub TypeScript
MCP Custom Template Create custom E2B template with pre-installed MCP servers TypeScript
MCP Research Agent Research agent using arXiv and DuckDuckGo MCP servers TypeScript
MCP Claude Code Claude Code with MCP integration TypeScript
MCP Browserbase Web automation agent using Browserbase MCP server TypeScript
MCP Groq Exa AI research using Groq with Exa MCP server TypeScript

Example use cases

  • Upload dataset and analyze it with Llama 3.3 - Python
  • Scrape Airbnb and analyze data with Claude Opus 5 and Firecrawl - TypeScript
  • Visualize website topics with Claude Sonnet 5 and Firecrawl - Python
  • Next.js app with LLM + Code Interpreter and streaming - TypeScript
  • How to run a Docker container in E2B - Python/TypeScript
  • How to run Playwright in E2B - TypeScript
  • Map custom subdomains to your sandboxes - TypeScript
  • Feedback analyst agent on Flue, publishing an HTML report from a sandbox - TypeScript
  • Warm an E2B sandbox and rerun tests after adding a local regression case - Python

Running the examples as a test suite

Every example is exercised nightly against live E2B by tests/run-examples.ts: each one is uploaded into a fresh sandbox, installed with its own toolchain (npm, uv, Poetry, or nbconvert for notebooks) and run. An example passes if it exits 0.

npm install
npm test                      # all of them
npm test -- hello-world       # substring filter, one or a few

You need an E2B_API_KEY plus whichever provider key the examples you are running use - see .env.example. hello-world-js and hello-world-python need only the E2B key, so they are the ones to try first.

What counts as a failure. The suite checks the sandbox, not the model. A provider rate limit or an exhausted quota counts as OK, because the sandbox still built, installed and ran; non-deterministic model behaviour - no chart produced, a malformed tool call, generated code raising inside the sandbox - is reported as skipped. Real failures are the things that are actually broken: missing templates, dependency resolution, wrong entrypoints, auth, retired model ids, sandbox timeouts.

Some examples are deliberately not covered - they need a provider key this repo does not hold, a long-lived server the runner cannot assert on, or an upstream fix. Each exclusion is listed with its reason at the top of tests/run-examples.ts, so a gap is never silent.