Skip to main content
The Code Interpreter SDK runs on the public code-interpreter-v1 sandbox template. You can customize it in two ways:
  1. Create a custom template that extends code-interpreter-v1 with extra packages or a different runtime — this is the recommended approach for most use cases.
  2. Build the production template directly from the code-interpreter repository — useful when contributing to the SDK or building the official code-interpreter-v1 template yourself.

Create a custom template

Use this when you need extra preinstalled packages or a different runtime. Your template builds on top of code-interpreter-v1, so everything the Code Interpreter SDK relies on stays in place.

1. Install the E2B SDK

2. Create a template file

3. Create a build script

4. Set your environment variables

Create a .env file with your API key (loaded by dotenv / load_dotenv()):

5. Build the template

6. Use the custom template

See Install custom packages for preinstalling specific Python and Node.js packages with pip / npm.

Build the production template

To build the official code-interpreter-v1 template from the code-interpreter repository, use build_prod.py. This is the script CI and releases run, and it’s the path to take when you’re contributing to the SDK or want to rebuild the production template yourself.

1. Clone the repository

The template lives in the template/ directory — run the remaining steps from there.

2. Install the build dependencies

3. Provide your credentials

Create a .env file with your API key:

4. Build the template

To force a clean rebuild that ignores the layer cache, set SKIP_CACHE=true: