Запись архива

GitHub Copilot App получил локальную песочницу с изоляцией файловой системы и сети

GitHub запустил публичный превью локальной песочницы для десктопного приложения Copilot. Теперь агентный код выполняется в изолированном окружении с ограничением доступа к файлам, сети и учетным данным — настройка ведется отдельно для каждого проекта.

Интерфейс настроек локальной песочницы GitHub Copilot App с опциями изоляции файловой системы, сети и учетных данных
Интерфейс настроек локальной песочницы GitHub Copilot App с опциями изоляции файловой системы, сети и учетных данных
Изображение из исходного материала

GitHub представил публичное превью локальной песочницы для десктопного приложения Copilot. Функция ограничивает доступ агентного кода к файловой системе, сети и учетным данным системы — и делает это на уровне отдельных проектов, а не глобально. Изменение зафиксировано в официальном changelog от 23 сентября 2026 года.

Локальная песочница предназначена для сессий, работающих с локальным репозиторием или рабочим деревом (working tree). Она не применяется к облачным сессиям Copilot и к сессиям на удаленных хостах. Если операционная система не может обеспечить запрошенный уровень изоляции, песочница не запускается — сессия завершается ошибкой, а не работает без ограничений. Это принцип fail-closed: отсутствие изоляции означает отказ, а не ослабление политики.

Как это работает

Песочница отключена по умолчанию. Чтобы включить ее для проекта, нужно открыть настройки приложения, выбрать проект и активировать переключатель «Sandbox new sessions» в разделе «Sandbox». Изменения применяются к новым сессиям, а не к уже запущенным. Для активной локальной сессии можно ввести команду `/sandbox` — она изменит политику только для этой сессии, не затрагивая настройки проекта.

В основе локальной песочницы лежит Microsoft eXecution Container (MXC) — кроссплатформенная технология, предоставляющая единый интерфейс для механизмов изоляции, доступных в каждой ОС. GitHub прямо указывает, что MXC не запускает команды внутри отдельной виртуальной машины или контейнера: он ограничивает то, что процесс может читать, записывать и достигать по сети. Это изоляция на уровне процесса, а не полноценная виртуализация.

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

Что это меняет для разработчика

До появления локальной песочницы команды, которые Copilot выполнял от имени агента, имели доступ ко всем ресурсам, доступным учетной записи пользователя. Разница между изолированным рабочим деревом и песочницей была принципиальной: рабочее дерево разграничивает ветки и файлы между параллельными сессиями, но не ограничивает, что команда может сделать за пределами этого дерева. Песочница добавляет именно это ограничение.

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

Отличие от облачной песочницы

GitHub уже запустил облачные и локальные песочницы в июне 2026 года. Тогда изоляция касалась выполнения shell-команд, инициированных Copilot. Сентябрьское обновление переносит ту же модель в десктопное приложение с отдельным экраном настроек для каждого проекта. Облачная песочница и песочница Copilot CLI настраиваются отдельно — синхронизации между ними нет.

Для команд, работающих в enterprise-окружении, важно учитывать, что политики песочницы управляются независимо от политик доступности моделей и MCP-серверов. Если организация уже настроила корпоративные политики для Copilot App, они могут переопределить локальные настройки песочницы в сторону ужесточения, но не наоборот.

Практическая проверка

Чтобы оценить работу песочницы, достаточно выполнить несколько шагов:

Открыть настройки Copilot App, выбрать проект и включить «Sandbox new sessions».

Попробовать выполнить команду, которая пытается записать файл за пределами рабочего дерева — например, в `/tmp` или `~/Documents`. Песочница должна заблокировать запись, если файловая политика настроена на ограничение.

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

Попробовать выполнить команду с использованием сохраненных SSH-ключей или токенов — при ограничении доступа к учетным данным агент не должен получить к ним доступ.

Если какой-либо из этих шагов не приводит к блокировке, значит политика настроена недостаточно строго или песочница не активирована для данной сессии.

Ограничения и статус

Локальная песочница находится в публичном превью. GitHub предупреждает, что функциональность может измениться. Она не применяется к облачным сессиям, сессиям на удаленных хостах и к Copilot CLI — для CLI настройки управляются отдельно. Также важно отметить, что песочница не изолирует процессы на уровне виртуальной машины: если в системе есть уязвимость механизма изоляции ОС, MXC не создает дополнительного слоя защиты.

Для разработчиков, которые хотят протестировать песочницу до включения в production-рабочие процессы, GitHub рекомендует начать с одного проекта и разрешительных политик, постепенно ужесточая их по мере понимания поведения агентов в изолированной среде. Документация по настройке локальной песочницы доступна на GitHub Docs, включая раздел с описанием технологии MXC.

Источники