Песочница

Песочница (Sandbox) — изолированная среда для выполнения кода и команд с заранее заданными ограничениями. Она контролирует доступ к файлам, сети и системным ресурсам, снижая риск влияния выполняемой программы на основную систему.

Как работает песочница

При обычном запуске программа получает возможности, которые предоставляет ей операционная система и учётная запись пользователя. Песочница создаёт дополнительную границу: код работает внутри выделенной среды и не должен выходить за установленные пределы.

В зависимости от реализации ограничения могут касаться:

  • Файловой системы: доступа только к определённым каталогам, запрета записи или использования временных файлов.
  • Сети: полного отключения подключений либо разрешения запросов к конкретным адресам.
  • Вычислительных ресурсов: лимитов времени выполнения, памяти и процессора.
  • Системных операций: запрета привилегированных команд, доступа к устройствам и другим процессам.

Для изоляции применяют отдельные процессы с ограниченными правами, контейнеры, виртуальные машины и другие механизмы. При этом контейнер и песочница — не синонимы: контейнер становится подходящей изолированной средой только при соответствующей конфигурации прав и доступных ресурсов.

Зачем Sandbox нужен в программировании

Песочницы удобны для запуска незнакомого кода, проверки зависимостей, экспериментов со сборкой и тестирования команд, последствия которых заранее неочевидны. Вместо доступа ко всем рабочим файлам программе можно предоставить временную копию проекта и ограниченный набор разрешений.

Например, разработчик хочет проверить скрипт миграции. В изолированной среде его можно запустить на тестовых данных, изучить изменения и сообщения об ошибках, не затрагивая рабочую базу. Но если песочнице выдан доступ к реальной базе данных, само название среды не защитит её от изменений.

Как песочницы используют AI-агенты

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

Например, агент получает копию нужного каталога, право выполнять тесты и запрет на сетевые соединения. Он проверяет гипотезу и возвращает результат, а перенос изменений в основной проект контролируется отдельно.

Изоляция снижает риски, но не устраняет их полностью. Её надёжность зависит от настроек, уязвимостей среды и того, какие ресурсы были доступны коду. Поэтому для опасных действий по-прежнему нужны минимальные права, проверка изменений и, при необходимости, подтверждение пользователя.

ИИ-агент (AI-agent)

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

Посмотреть термин

Вызов инструментов (Tool Calling)

Вызов инструментов (Tool Calling) — механизм, с помощью которого языковая модель запрашивает выполнение доступной функции или обращение к внешнему сервису. Модель формирует запрос, а само действие выполняет приложение или инфраструктура AI-системы.

Посмотреть термин

Агентное программирование (Agentic coding)

Agentic Coding (агентное программирование) — подход к разработке, при котором программист делегирует AI-агенту выполнение многошаговых задач. Агент самостоятельно определяет последовательность действий, работает с кодом и доступными инструментами и проверяет промежуточные результаты.

Посмотреть термин
Песочница (Sandbox) – что это такое в программировании