7027f369a3
Implements the `lifecycle` prop on `Sandbox.create`, taking over and deprecating the `beta_pause` functionality. Currently supports: - `on_timeout`: `kill` (default) | `pause`. Controls what should happen to the sandbox when it hits end of life. Pause allows for resuming - `auto_resume`: False (default) | True. Whether the sandbox should autoresume on traffic Intended for additional functionality as we update the backend to support additional props. Blocked from deploying until the API and client-proxy are deployed but for pre-approval. (Meant to be extended later as add more capabilities to the API) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Medium Risk** > Changes the API contract and request payload shape for sandbox auto-resume and alters lifecycle/timeout behavior mapping, which could break older integrations if backend/client versions are mismatched. > > **Overview** > Adds a new `lifecycle` configuration on `Sandbox.create` (JS + Python) to control what happens at timeout (`kill` vs `pause`) and whether paused sandboxes auto-resume on traffic (`auto_resume`). > > Deprecates `betaPause`/`beta_pause` and the JS `autoPause` create option in favor of the new lifecycle semantics, updates connect/pause call paths accordingly, and expands tests to cover resume-on-connect and auto-resume behaviors. > > Updates the OpenAPI contract and generated clients so `autoResume` is now an object with an `enabled: boolean` flag (removing the previous policy enum), and bumps SDK versions via a changeset. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 515f9b7fc13a5ec13db75450e8f6252e3c7bcf03. 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.
