Skip to main content

E2B

Shanone’s E2B integration gives your agent 27 tools for spinning up isolated cloud sandboxes and running commands, files, and code inside them — useful whenever an agent needs to safely execute untrusted or exploratory code.

Getting Started

1

Get an E2B API key

Create an API key from the E2B dashboard.
2

Add the key in Shanone

Open Integrations in the Shanone dashboard, select E2B, and paste the API key.
3

Retry your request

Once saved, shanone_execute_tool calls for e2b_* tools will succeed.

Available Tools

Shanone provides 27 tools for E2B, organized into these categories:
e2b_create_sandbox, e2b_list_sandboxes, e2b_get_sandbox, e2b_connect_sandbox, e2b_kill_sandbox, e2b_set_timeout, e2b_is_running
e2b_run_command, e2b_run_command_background, e2b_list_processes, e2b_kill_process, e2b_send_stdin
e2b_read_file, e2b_write_file, e2b_list_directory, e2b_make_directory, e2b_remove_file, e2b_rename_file, e2b_file_exists, e2b_watch_directory
e2b_run_python, e2b_run_javascript, e2b_run_code
e2b_create_snapshot, e2b_list_snapshots, e2b_create_from_snapshot, e2b_delete_snapshot

Common Use Cases

Data analysis scratchpad

Run e2b_run_python to analyze a dataset and return computed results without touching local infrastructure

Safe code execution

Execute agent-generated or user-supplied code in an isolated sandbox instead of the host machine

Reproducible environments

Snapshot a configured sandbox and spin up fresh copies for repeatable test runs

Long-running background jobs

Kick off a long shell command with e2b_run_command_background and poll or send input while it runs

Troubleshooting

Sandboxes have a timeout that auto-terminates them; call e2b_set_timeout to extend the lifetime before running long jobs, and use e2b_is_running to check status before reconnecting.
Each e2b_create_sandbox call starts a fresh environment. Use e2b_connect_sandbox with a known sandbox ID to reuse an existing one, or e2b_create_snapshot / e2b_create_from_snapshot to persist and restore state.
Commands expecting stdin (prompts, REPLs) will block; run them with e2b_run_command_background and feed input with e2b_send_stdin instead of a blocking e2b_run_command call.