Первый сеанс в реальном репозитории должен доказать одно: Codex видит правильный проект и действует внутри ожидаемой границы. Соблазн сразу поставить зависимости или запустить массовый рефакторинг велик, но вреден - он смешивает проверку среды с работой и лишает вас чистой отправной точки. Правильное начало - не задача, а инвентаризация: сначала вы сами смотрите на состояние, потом даёте агенту узкое исследование без права на изменения.
Перед запуском полезно самому посмотреть git и войти в предсказуемом режиме. git status --short --branch показывает исходную точку, а запуск codex с явными флагами --sandbox read-only и --ask-for-approval on-request задаёт строгую границу для первого знакомства. Read-only на старте - это дешёвая страховка: агент читает и предлагает, но ничего не трогает, пока вы не подняли режим осознанно. Чистый старт превращает любой последующий diff в осмысленную картину, а не в загадку.
Сразу после входа проверяют, что реально загрузилось, командой /status. Она показывает project root и текущий каталог, модель, активный permission profile или sandbox mode, approval policy, writable roots и контекст. Это снимок среды: пока вы его не увидели, вы не знаете, в каких условиях работает агент. Особенно важен project root - именно он подтверждает, что Codex взял ожидаемый репозиторий, а не соседний каталог, случайно оказавшийся текущим.
Первый запрос стоит сделать исследованием без изменений, а не широкой задачей. Разумно попросить показать точки входа, команды install, lint, typecheck и test из файлов проекта, активные инструкции AGENTS.md и три риска перед первой правкой - с явным запретом ставить зависимости и запускать сетевые команды. Такой запрос даёт карту проекта и список того, что нельзя надёжно вывести по коду, не позволяя агенту преждевременно редактировать плохо понятый репозиторий.
Доверие к рабочему каталогу здесь - осознанное решение, а не кнопка на пути к работе. Project-local конфигурация из .codex/ загружается только после того, как вы доверили workspace, потому что она может содержать исполняемые настройки, написанные кем-то другим. В версионируемом каталоге Codex обычно предлагает baseline Auto: workspace-write и on-request. Для неизвестной или не находящейся под контролем версий папки безопаснее начать с read-only, а доверие поднимать позже.
Полезно один раз увидеть этот старт целиком: проверка git, вход в read-only и запрос на исследование без правок. Ниже - эти команды и формулировка. К ним возвращаются при заведении работы в новом репозитории: последовательность "сначала состояние, потом узкое исследование, и лишь затем изменения" держит первый сеанс управляемым. Именно порядок, а не набор флагов сам по себе, отличает контролируемый старт от прыжка в правки вслепую.
Повышение режима - отдельный осознанный шаг после проверки. Когда карта проекта получена и риски названы, режим поднимают командой /permissions или явным перезапуском с --sandbox workspace-write и --ask-for-approval on-request. Смысл в том, что writable-доступ выдают не по умолчанию, а под уже понятую задачу. Это ровно та же логика, что и во всей книге: полномочия расширяют под доказанную потребность, а не заранее "чтобы не мешало".
Типичный провал первого запуска предсказуем: широкая задача без границ на ещё не доверенном и не изученном репозитории. Агент, которому сразу разрешили менять и ставить зависимости, быстро создаёт много изменений и ложную уверенность, что "всё понял". Правильный старт - чистый git, вход в read-only, прочитанный /status и запрос с целью, границами и запретом на правки. Освоив этот порядок один раз, вы будете начинать любую новую работу предсказуемо, а не наугад.
Изучи репозиторий без изменений. Покажи:
1. точки входа;
2. команды install, lint, typecheck и test из файлов проекта;
3. активные инструкции AGENTS.md;
4. три риска перед первой правкой.
Не устанавливай зависимости и не запускай network-команды.cd /path/to/repository
git status --short --branch
# строгая граница для первого знакомства
codex --sandbox read-only --ask-for-approval on-request
# после проверки - поднять режим осознанно
codex --sandbox workspace-write --ask-for-approval on-request