
✴️ 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
Agents API
Full-stack workbench, one E2B sandbox per chat
Agents API
Webhook-managed sandbox lifecycle per session
GPT-5.6
Data analysis and visualization of a CSV
GPT-5.6
Code interpreter and reasoning on image data
GPT-5.6
Code interpreter for ML on dataset
Codex CLI
OpenAI Codex, running inside a Sandbox
Anthropic
Claude Opus 5
Code interpreter
Claude Code
Claude Code, running inside a Sandbox
Claude Managed Agents
Self-hosted worker running inside a Sandbox
Meta
Muse Spark
Coding agent with E2B as its execution backend
Mistral
Codestral
Code interpreter
Groq
Llama 3
Code interpreter via function calling
Fireworks AI
Qwen2.5-Coder-32B-Instruct
Code interpreter
Llama 3.1 405B, 70B, 8B
Code interpreter
Together AI
Llama 3.1, Qwen 2, Code Llama, DeepSeek Coder
Code interpreter
WatsonX AI
IBM Graphite, Llama, Mistral
Code interpreter
AI frameworks integrations
Framework
Description
Python
TypeScript
🦜⛓️ LangChain
LangChain with Code Interpreter
🦜🕸️ LangGraph
LangGraph with code interpreter
CrewAI
CrewAI agent with sandboxed Python execution
Learn an incident-triage skill in one sandbox and apply it in a fresh session
▲ Vercel AI SDK
Next.js + AI SDK + Code Interpreter
AI SDK sandbox provider: sandboxed tools via restricted sessions, and harness coding agents (Claude Code, Codex) running inside E2B
Feedback analyst agent whose sandbox backend is E2B, publishing an HTML report from the sandbox
Feedback analyst agent running entirely inside an E2B sandbox, publishing an HTML report from the sandbox
Pi builds its own E2B code-interpreter extension in a sandbox, then uses it to analyze data
AgentKit
AgentKit Coding Agent
Run Sandbox Agent inside E2B and connect with the SDK
Stirrup
The lightweight framework for building agents
Remote execution integrations
Integration
Description
Python
TypeScript
Warm one E2B sandbox, sync local changes, and rerun a test suite on the same lease
Model Context Protocol (MCP)
Example
Description
TypeScript
MCP Client
Basic MCP client connection to E2B sandbox
MCP Custom Server
Connect to custom filesystem MCP server from GitHub
MCP Custom Template
Create custom E2B template with pre-installed MCP servers
MCP Research Agent
Research agent using arXiv and DuckDuckGo MCP servers
MCP Claude Code
Claude Code with MCP integration
MCP Browserbase
Web automation agent using Browserbase MCP server
MCP Groq Exa (deprecated)
AI research using Groq with Exa MCP server
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
- Tailcat: encrypted links between sandboxes, and between a sandbox and your laptop - Python/TypeScript
- How to run Playwright in E2B - TypeScript
- Map custom subdomains to your sandboxes - TypeScript
- Delete old paused sandboxes by age and metadata - Python/Shell
- 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
- Teach Hermes an incident-triage playbook and reuse it in a fresh session - 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.