5a673d15c8
<!-- CURSOR_SUMMARY --> > [!NOTE] > **Medium Risk** > Changes public error/exception types in both JS and Python SDKs by introducing new subclasses and remapping 404/NotFound conditions, which may affect downstream error handling despite deprecation shims. > > **Overview** > **Distinguishes “sandbox not found” from “file/directory not found” across the SDKs.** Adds `FileNotFound*` and `SandboxNotFound*` error/exception types (with `NotFound*` marked deprecated) and updates sandbox lifecycle APIs to throw `SandboxNotFound*` for missing/non-running sandboxes. > > Refactors envd HTTP/RPC error handling in both JS and Python to support overridable status/code→error maps, and wires filesystem operations to map 404/`NotFound` into `FileNotFound*`. Tests are updated accordingly, and patch changesets are added for both packages. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 73da92694c02f71355b1f8625845c82865bf3b1d. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
What is E2B?
E2B is an open-source infrastructure that allows you to run AI-generated code in secure isolated sandboxes in the cloud. To start and control sandboxes, use our JavaScript SDK or Python SDK.
Run your first Sandbox
1. Install SDK
npm i @e2b/code-interpreter
2. Get your E2B API key
E2B_API_KEY=e2b_***
3. Execute code with code interpreter inside Sandbox
import { Sandbox } from '@e2b/code-interpreter'
const sbx = await Sandbox.create()
await sbx.runCode('x = 1')
const execution = await sbx.runCode('x+=1; x')
console.log(execution.text) // outputs 2
4. Check docs
Visit E2B documentation.
5. E2B cookbook
Visit our Cookbook to get inspired by examples with different LLMs and AI frameworks.
