01. Sandbox, разрешения и согласования
← Предыдущий модуль · Оглавление · Следующий модуль →
Если сейчас только читаете: русский разбор ситуации без запуска программ. После него ответьте на вопросы самопроверки модуля; практическое упражнение можно отложить.
Результат модуля: вы различаете технический доступ и согласование действия и можете объяснить, почему конкретная операция разрешена либо заблокирована.
Sandbox ограничивает доступ выполняемых команд к файловой системе и сети. Политика согласований определяет, когда запрашивается дополнительное разрешение. Это связанные, но разные механизмы. В локальном режиме workspace-write сетевой доступ по умолчанию выключен; реальные границы зависят от конфигурации и правил организации. Каталоги .git, .agents, .codex, .aws внутри доступных для записи корней могут оставаться защищёнными. Поэтому «папка проекта доступна для записи» не означает разрешения менять всё внутри неё. Sandbox и согласования.
На Windows есть нативный sandbox. Текущая документация рекомендует MXC на совместимых устройствах; elevated и unelevated описаны как прежние варианты для резервного использования. Доступность MXC зависит от Windows, версии клиента и организационной политики. Для учебных заданий не требуется самостоятельно менять реализацию sandbox. WSL остаётся отдельным выбором окружения, а не обязательным условием любой работы Codex на Windows. Windows sandbox.
Представьте три задания: объяснить функцию, исправить ошибку в проекте, отправить изменение в рабочую систему. Первому обычно достаточно чтения. Второму нужны запись и запуск проверок. Третье затрагивает внешнее состояние. Хорошая настройка доступа следует задаче, а не общему желанию «чтобы ничего не спрашивал».
Перед согласованием полезно прочитать точный адрес действия. Проверяйте рабочий каталог, целевой путь, аргументы и ожидаемый эффект. Если предлагается установить зависимость, выясните, почему существующих инструментов недостаточно. Если нужна сеть, отделите скачивание официальной документации от отправки частных данных. Если операция меняет чужую систему, уточните, что именно там появится. Это рабочие вопросы для оценки конкретного действия, а не обязательный опрос для каждой команды.
Отказ в доступе тоже требует диагностики. Возможные причины различаются: запись за пределами workspace, защищённая подпапка, сеть, отсутствие прав Windows, корпоративное правило, недоступный внешний сервис. Повторение той же команды с максимальными полномочиями скрывает причину. Сначала найдите границу, затем выберите минимальное действие: другой выходной каталог, чтение локального файла, разрешённый коннектор либо точечное согласование.
Практика. В новом учебном сеансе CLI можно явно выбрать чтение:
codex --sandbox read-only --ask-for-approval on-request
Это команда запуска для читателя; руководство не выполняет её за вас. В интерфейсе проверьте текущие параметры командой /status и доступные варианты через /permissions. Наличие прав организации может ограничивать выбор. Официальные команды CLI.
Дайте задание из модуля 00. Если задача выполнена, запишите, что именно удалось сделать без записи. Затем, оставаясь в учебной копии, сформулируйте маленькое изменение документации. Прежде чем применять его, определите требуемое право и ожидаемое изменение файлов. Для реализации отдельный сеанс с записью может выглядеть так:
codex --sandbox workspace-write --ask-for-approval on-request
Не используйте изменение файлов вне workspace как обязательный тест. Достаточно сопоставить конфигурацию, цель и наблюдаемые действия. Если система запрашивает согласование, сохраните объяснение причины без токенов, паролей и содержимого личных файлов.
Обратите внимание на настройки, найденные в старых статьях: текущая официальная страница отмечает, что явная approval_policy = "untrusted" больше не поддерживается. При этом доверие к проекту с похожим названием — другой механизм. Копировать старый TOML без проверки нельзя. Миграция старой политики.
Критерий проверки: карта проекта получена без записи; вы знаете текущий режим и можете объяснить каждое дополнительное право, понадобившееся маленькой правке. В ходе упражнения не включался обход sandbox.
Самопроверка:
- Чем read-only sandbox отличается от запрета вообще выполнять команды?
- Почему разрешение на работу с файлами не даёт автоматически сетевой доступ?
- Какие сведения из запроса согласования нужны, чтобы принять решение осмысленно?
Структурная основа: upstream, модуль 01. Проверено 24 октября 2026 года.