AIKraft Agents

e2b-dev/e2b

Открытый безопасный окружение с реальными инструментами для enterprise-grade агентов.

Агенты⭐ 14 734Pythonпоследний релиз: @e2b/python-sdk@2.63.0
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

E2B — это open-source инфраструктура для запуска сгенерированного AI-кода в безопасных изолированных песочницах (sandbox) в облаке.

Зачем нужен

Инструмент решает задачу безопасного выполнения кода, создаваемого LLM, путем изоляции процессов от основной системы. Он полезен для разработчиков AI-агентов, которым нужно предоставлять пользователям или самим агентам среду с предустановленными инструментами для выполнения задач без риска для безопасности.

Что можно реализовать

  • Запуск AI-агентов, которым требуется доступ к реальным инструментам и окружению
  • Исполнение пользовательского кода через Code Interpreter в Python и JavaScript/TypeScript
  • Создание изолированных сред для тестирования сгенерированных скриптов
  • Разработка приложений с LLM, требующих выполнения кода в облаке

Ключевые возможности

  • Предоставляет готовые SDK для Python и JavaScript/TypeScript
  • Поддержка Code Interpreter для выполнения кода с выводом результатов
  • Возможность self-hosting инфраструктуры на AWS и Google Cloud (GCP) с помощью Terraform
  • Open-source решение с документацией и примерами (Cookbook)

👤 Кому подойдёт: разработчики AI-агентов, backend-разработчики, исследователи в области AI

Релизы

@e2b/python-sdk@2.63.0minor
🕐 вчера · релиз на GitHub ↗

В функцию pause() добавлен параметр strict для контроля поведения при зависании агента гостевой ОС.

  • Added: В метод pause() добавлен параметр strict (по умолчанию false).
  • Added: При strict=true пауза отклоняется с ошибкой ServiceBusyError, если агент гостевой ОС не отвечает, а песочница продолжает работу.
  • Added: В информации о песочнице появилось поле envdUnresponsiveAtPause, фиксирующее момент зависания агента.
  • Added: Попытка возобновить работу песочницы с отметкой зависания без параметра on_resume='reboot' вызывает ошибку GuestUnresponsiveError.
e2b@2.62.2patch
🕐 2 дн назад · релиз на GitHub ↗

Исправлены сбои HTTP/2 при параллельной записи файлов и оптимизировано потребление памяти при сборке шаблонов.

  • Fixed: Исправлена ошибка TypeError при параллельных вызовах files.write() за счёт перевода загрузки файлов на HTTP/1.1 и пула соединений.
  • Fixed: Устранена проблема исчерпания памяти сессии HTTP/2: сессии, превышающие лимит, теперь заменяются, а не вызывают сбои.
  • Fixed: Сборка шаблонов оптимизирована: файлы хешируются по 1 МБ чанками, что значительно снижает пиковое потребление памяти.
@e2b/code-interpreter@2.9.1patch
🕐 3 дн назад · релиз на GitHub ↗

Исправлена производительность readLines для длинных строк, исправлены таймстампы и добавлена документация по форматам вывода.

  • Fixed: Исправлена квадратичная сложность сборки строк в readLines при потоковой передаче длинных данных (base64, DataFrames, JSON).
  • Fixed: OutputMessage.timestamp теперь использует серверное время (наносекунды), а не время клиента, для соответствия документации и Python SDK.
  • Added: Добавлена документация: logs.stdout/stderr и OutputMessage.line содержат сырые чанки с переносами, а Result.png/jpg/pdf — base64.
  • Обновлена зависимость e2b до версии 2.62.1.
@e2b/code-interpreter-python@2.11.6patch
🕐 8 дн назад · релиз на GitHub ↗

Выпущен релиз @e2b/code-interpreter-python версии 2.11.6 с обновлением зависимостей.

  • Обновлены зависимости, включая пакет @e2b/python-sdk до версии 2.62.0.
@e2b/cli@2.23.0minorbreaking
🕐 9 дн назад · релиз на GitHub ↗

В e2b CLI v2.23.0 добавлена пагинация для list шаблонов и удалён интерактивный режим для delete/publish/unpublish.

  • Added: Команда `e2b template list` теперь поддерживает пагинацию: до 1000 шаблонов в выводе по умолчанию с возможностью изменения лимита через флаг `-l`.
  • Breaking: Из команд `delete`, `publish` и `unpublish` удалён интерактивный режим выбора шаблона; теперь имя шаблона обязательно передавать аргументом.
  • Breaking: Удалены неиспользуемые опции `-t, --project` и `--team` из команд `delete`, `publish` и `unpublish`.
e2b@2.61.0minor
🕐 10 дн назад · релиз на GitHub ↗

В Sandbox.create добавлена поддержка ключей идемпотентности для надёжного создания песочниц.

  • Added: В методы Sandbox.create добавлены параметры idempotencyKey (JavaScript) и idempotency_key (Python) для отправки заголовка Idempotency-Key.
e2b@2.60.0minor
🕐 10 дн назад · релиз на GitHub ↗

Обновлён механизм повторных запросов к API, исправлена обработка сетевых настроек в Python и устранена уязвимость CVE-2026-109869 в undici.

  • Fixed: Улучшена логика повторных запросов: теперь обрабатываются ошибки с заголовком Should-Retry: true и кодами 429/502/503/504, а отменён список разрешённых методов.
  • Fixed: В Python и JavaScript исправлена передача параметров сетевого трафика при создании песочницы, чтобы сервер применял значения по умолчанию.
  • Fixed: Обновлена библиотека undici до версии 8.12.2 для устранения уязвимости CVE-2026-109869, позволяющей вызвать отказ в обслуживании.
@e2b/python-sdk@2.59.0minor
🕐 14 дн назад · релиз на GitHub ↗

Добавлена настройка DNS-серверов для песочниц, устарели старые URL-конфигурации, исправлена ошибка сборки Python SDK.

  • Added: Добавлен параметр dnsServers для настройки DNS-серверов при доступе к доменам.
  • Deprecated: Устарели параметры apiUrl и sandboxUrl, а также соответствующие переменные окружения.
  • Fixed: Исправлена ошибка падения сборки при некорректном значении reason.step.
  • Added: Объединены эндпоинты для трафика песочниц на нескольких доменах.
@e2b/desktop-python@2.7.2patch
🕐 14 дн назад · релиз на GitHub ↗

Обновлена зависимость pillow до версии 13 для устранения уязвимостей CVE-2026-112404 и CVE-2026-112895.

  • Fixed: Требование pillow >=13.0.0,<14 для исправления уязвимостей CVE-2026-112404 и CVE-2026-112895.
@e2b/code-interpreter-python@2.11.2patchbreaking
🕐 16 дн назад · релиз на GitHub ↗

Удалены устаревшие шимы для Python 3.10, так как теперь требуется версия 3.11 и выше.

  • Breaking: Удалены шимы совместимости с Python 3.10, так как теперь требуется версия 3.11 и выше.
  • Added: Обновлен пакет @e2b/python-sdk до версии 2.58.0.
@e2b/cli@2.22.2patch
🕐 16 дн назад · релиз на GitHub ↗

Исправлена проблема с гонкой сборки при релизе за счёт сборки @e2b/dockerfile-utils из исходников.

  • Fixed: Устранена гонка сборки CLI при одновременной пересборке пакетов в workspace, путём сборки @e2b/dockerfile-utils из исходников.
@e2b/code-interpreter-python@2.11.0minorbreaking
🕐 23 дн назад · релиз на GitHub ↗

Версия 2.11.0: требуется Python 3.11+, поддержка 3.10 прекращена. Обновлён @e2b/python-sdk до 2.56.0.

  • Breaking: Требование Python 3.11 или новее; поддержка Python 3.10 удалена.
  • Added: Обновлён зависимый пакет @e2b/python-sdk до версии 2.56.0.
@e2b/python-sdk@2.55.1patch
🕐 27 дн назад · релиз на GitHub ↗

В метод ConnectionConfig.get_sandbox_url добавлен необязательный параметр port.

  • Added: Методы get_sandbox_url и get_sandbox_direct_url теперь принимают опциональный параметр port, по умолчанию используется порт envd.
@e2b/python-sdk@2.55.0minor
🕐 27 дн назад · релиз на GitHub ↗

Добавлен режим 'filesystem' для снимков и паузы, опция keepMemory устарела.

  • Added: В createSnapshot и pause добавлен параметр mode: 'full' | 'filesystem'.
  • Added: Режим 'filesystem' сохраняет только диск, ускоряя создание снимков и холодный старт.
  • Deprecated: Параметр keepMemory устарел; его логика перенесена в mode: 'filesystem'.
  • Fixed: Удалена избыточная проверка пустых чанков в выводе команд.
e2b@2.53.1patch
🕐 1 мес назад · релиз на GitHub ↗

Публикация изменений предыдущего релиза, которые не были опубликованы в npm и PyPI из-за технической ошибки.

  • Fixed: Исправлена ошибка публикации: изменения предыдущей версии теперь доступны в npm и PyPI.
@e2b/python-sdk@2.52.1patch
🕐 1 мес назад · релиз на GitHub ↗

Исправлено поведение .dockerignore в BuildKit и изменена логика повтора запросов при ошибках 502 для предотвращения дубликатов.

  • Fixed: Улучшена совместимость фильтрации контекста сборки шаблонов с BuildKit: исправлено поведение паттернов **.txt, инвертированных правил и символов вне BMP (включая эмодзи).
  • Fixed: Повтор запросов при ошибке 502 теперь выполняется только для безопасных операций; создание песочниц, форков и снимков больше не дублируется.
  • Fixed: Отключен повтор обновлений секретов (POST /secrets/{id}) после 502 или обрыва соединения, чтобы избежать добавления лишних версий.
e2b@2.52.0minor
🕐 1 мес назад · релиз на GitHub ↗

Ограничено число форков песочниц, улучшена совместимость .dockerignore, добавлена настройка HTTP-версии и усилены механизмы повторных запросов.

  • Fixed: Лимит количества форков песочницы установлен на 20; значения свыше 20 теперь отклоняются на клиенте до отправки запроса.
  • Fixed: Применение правил .dockerignore и fileIgnorePatterns приведено в соответствие со стандартом Docker, включая обработку символов . и .. в путях.
  • Added: Добавлена опция http_version для принудительного использования HTTP/1.1 при взаимодействии с API E2B.
  • Fixed: Улучшена надежность сетевых запросов: добавлено повторное выполнение при ошибках 502, 503 и сбоях соединения с экспоненциальной задержкой.
e2b@2.51.0minorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Отмена клиентских значений по умолчанию, переход на v2 API для sandbox и удаление валидации count при форке.

  • Breaking: Удалены значения по умолчанию в SDK: теперь применяются серверные настройки, а таймаут, доступ в интернет и ресурсы передаются явно.
  • Breaking: Sandbox create и connect теперь используют v2 API, где таймаут по умолчанию — 5 минут, а доступ к envd всегда защищён.
  • Deprecated: Опция secure в Sandbox.create устарела: все песочницы теперь защищены, параметр игнорируется.
  • Fixed: Удалена клиентская валидация аргумента count при форке; проверку теперь выполняет API.
@e2b/cli@2.20.0minor
🕐 1 мес назад · релиз на GitHub ↗

В CLI добавлена команда e2b sandbox fork для клонирования работающих песочниц в новые экземпляры.

  • Added: Появилась команда e2b sandbox fork, позволяющая создавать копии работающих песочниц.
@e2b/cli@2.19.1patchbreaking
🕐 1 мес назад · релиз на GitHub ↗

Удалена устаревшая команда e2b template build; обновлена зависимость e2b до версии 2.50.0.

  • Breaking: Удалена скрытая команда e2b template build (alias bd), так как V1-система сборки больше не поддерживается API.
  • Deprecated: Команда e2b template migrate сохраняет работоспособность для конвертации проектов V1.
  • Fixed: Вызов удалённой команды теперь возвращает ошибку неизвестной команды с кодом выхода 1.
  • Added: Обновлена зависимость e2b до версии 2.50.0.
@e2b/python-sdk@2.49.1patch
🕐 1 мес назад · релиз на GitHub ↗

Исправлено поведение on_resume для старых контрольных плоскостей и добавлена повторная отправка HTTP-запросов при 429.

  • Fixed: on_resume теперь корректно обрабатывается старыми self-hosted и BYOC контрольными плоскостями, которые восстанавливают память вместо отклонения запроса.
  • Added: HTTP-запросы к control plane с кодом 429 теперь повторяются до трёх раз с учётом заголовка Retry-After, с возможностью настройки или отключения.
  • Fixed: Повторные запросы останавливаются, если ожидание превысит таймаут; операции с файловой системой и томами не повторяются.
@e2b/cli@2.19.0minor
🕐 1 мес назад · релиз на GitHub ↗

В CLI добавлена настройка минимального свободного места на диске через параметр minFreeDiskMb.

  • Added: Добавлен параметр minFreeDiskMb (JS), min_free_disk_mb (Python) и --min-free-disk-mb (CLI) для настройки минимального свободного места на диске.
  • Added: При явном указании нуля запрос на рост диска отключается, а отсутствие параметра использует значение по умолчанию команды.
  • Fixed: Обновлена зависимость e2b до версии 2.49.0.
@e2b/code-interpreter@2.8.0minor
🕐 1 мес назад · релиз на GitHub ↗

В Code Interpreter SDK добавлен явный клиент E2B для настройки подключения без переменных окружения.

  • Added: Добавлен клиент E2B в SDK, позволяющий явно задавать API-ключ и домен без использования переменных окружения.
  • Added: Клиент предоставляет доступ к ресурсам Sandbox, Volume, Template и Secret, при этом параметры вызова имеют приоритет.
  • Added: Реализована изоляция между несколькими клиентами и глобальными экспортами, настроенными через переменные окружения.
  • Обновлена зависимость e2b до версии 2.47.0.
@e2b/python-sdk@2.46.4patch
🕐 2 мес назад · релиз на GitHub ↗

Улучшена надёжность высоконагруженных sandbox-окружений за счёт распределения трафика envd по четырём пулам HTTP/2.

  • Fixed: Повышена стабильность работы при высокой конкурентности за счёт распределения трафика envd по четырём пулам HTTP/2.
  • Added: Добавлена настройка E2B_ENVD_POOL_SHARDS для изменения количества пулов соединений до импорта SDK.
@e2b/desktop-python@2.4.6patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлена ошибка: теперь система дожидается полной готовности XFCE-сессии перед возвратом десктопного окружения.

  • Fixed: Добавлена задержка до полной готовности XFCE-сессии перед возвратом нового десктопного песочника.
  • Fixed: Реализована автоматическая очистка песочника в случае сбоя при запуске десктопного окружения.
@e2b/desktop-python@2.4.5patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлена ошибка публикации в PyPI, вызванная конфликтом с предыдущей версией 2.4.4 из старого репозитория.

  • Fixed: Устранена ошибка `uv publish --check-url`, возникшая из-за конфликта с версией 2.4.4, опубликованной в старом репозитории e2b-dev/desktop.
@e2b/python-sdk@2.46.1patch
🕐 2 мес назад · релиз на GitHub ↗

В версии 2.46.1 объявлено устаревание модуля sandbox.git; рекомендуется использовать commands.run.

  • Deprecated: Модуль sandbox.git и связанные с ним типы и ошибки объявлены устаревшими.
  • Fixed: Для работы с Git теперь следует использовать модуль commands, например через sandbox.commands.run.
  • Модуль продолжает работать, но будет полностью удален в следующем мажорном релизе.
@e2b/python-sdk@2.46.0minorbreaking
🕐 2 мес назад · релиз на GitHub ↗

Удалена валидация формата API-ключа на клиенте, исправлены ссылки и обработка параметров прокси.

  • Breaking: Удалена клиентская валидация формата API-ключа; опция validateApiKey и переменная E2B_VALIDATE_API_KEY больше не работают.
  • Fixed: Исправлены ссылки в README для сохранения UTM-меток и устранения лишних редиректов.
  • Fixed: Исправлена обработка network.egressProxy: теперь при некорректных данных выбрасывается InvalidArgumentError, а пустые учётные данные не отправляются в API.
@e2b/python-sdk@2.45.1patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлено потребление памяти при повторных попытках отправки потоковых данных в SDK.

  • Fixed: Исправлено избыточное потребление памяти при повторных попытках отправки потоковых данных (files.write, volume.write_file).
  • Fixed: Транспорты теперь используют режим RetryMode.UNBUFFERED, предотвращая создание полной копии тела запроса в оперативной памяти.
  • Added: Потоковые тела теперь воспроизводятся только до момента начала их чтения, что оптимизирует работу политики повторов.
e2b@2.44.1patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлена логика Volume.exists() и обновлена обработка ошибок через новый VolumePathNotFoundError.

  • Fixed: Volume.exists() теперь корректно возвращает false для отсутствующих путей.
  • Fixed: getInfo() выбрасывает VolumePathNotFoundError вместо устаревшего NotFoundError.
  • Fixed: Обработчик ошибок 404 обновлен для работы с новым типом исключения.