Пример: ты ведёшь в Codex CLI задачу по рефакторингу одного модуля, и параллельно появляется вторая задача - написать тесты для другого модуля. Открывать вторую сессию в той же папке рискованно: правки первой и второй задачи легко перепутать. Флаг --worktree создаёт для второй задачи отдельную папку того же проекта, не трогая первую.
Похожие приёмы работы с агентами вроде Codex CLI разбираем в канале - загляни, если ведёшь несколько задач параллельно.
Что создаёт --worktree и какие файлы попадают в копию
Worktree в терминологии Git - это дополнительная рабочая папка, привязанная к тому же репозиторию: она использует общую историю коммитов, но имеет собственный набор файлов на диске. В Codex CLI 0.155.1 флаг --worktree использует именно этот механизм Git, чтобы запустить новую сессию агента в отдельной папке, не трогая папку, где уже идёт первая задача.
Новая рабочая копия заполняется файлами того коммита, на который указывает HEAD исходного проекта в момент запуска - то есть последнего коммита, а не последнего сохранения файла в редакторе. Сама эта команда не переносит незакоммиченные правки и новые файлы. Сохранение в редакторе не равно коммиту в Git. Если перед запуском второй задачи в первой папке остались правки без коммита, они останутся только там.
Это не резервная копия всего репозитория и не изоляция всего компьютера - это вторая рабочая папка того же проекта, с доступом к той же истории веток и коммитов. О похожем механизме в другом инструменте - в гайде Claude Code и git worktree: параллельные задачи.
Подготовка: версия, доверие к проекту и коммит
Перед запуском проверь три вещи. Команды выполняй из папки исходного проекта.
Во-первых, версию Codex CLI - эта инструкция относится к версии 0.155.1, для других версий поведение флагов стоит перепроверять отдельно:
codex --versionВо-вторых, нужен локальный Git-проект, у которого HEAD указывает на существующий коммит - то есть в репозитории есть хотя бы один коммит. Без этого создавать копию не от чего.
В-третьих, источник должен быть доверенным: если проект явно помечен как недоверенный, запуск с --worktree завершится ошибкой ещё до создания копии. Если ты только настраиваешь Codex CLI, базовая подготовка описана в гайде Codex (OpenAI): что это и как запустить.
Заранее посмотри список уже существующих рабочих копий этого репозитория - он пригодится для сравнения после запуска:
git worktree listОтдельные папки помогают разделить задачи. Если хочешь выстроить общий порядок работы с агентом, посмотри программу практикума.
Шаги: запуск отдельной копии для второй задачи
Включи экспериментальную функцию и запусти сессию с отдельной копией
Запусти команду из папки исходного проекта, где ты уже ведёшь первую задачу.
bashcodex --enable worktrees --worktreeОжидаемый результат: Codex создаёт новую рабочую копию проекта от текущего HEAD и открывает сессию агента в ней. Копия находится в состоянии detached HEAD - без привязки к именованной ветке. Так работает этот флаг в версии 0.155.1.
В другом терминале исходного проекта повтори список рабочих копий
bashgit worktree listОжидаемый результат: в выводе появилась дополнительная строка с путём новой копии и пометкой detached HEAD (или веткой, если она есть). Этот список показывает, что Git зарегистрировал копию, но не подтверждает выполнение задачи агентом. Чтобы убедиться, что файлы на месте, открой папку по указанному пути и проверь содержимое.
Как проверить результат и сохранить работу
После того как вторая задача в новой копии закончена, результат нужно сохранить и перенести отдельно. Сама команда --worktree не сливает изменения с основной веткой и не переносит результат автоматически. Копия остаётся в состоянии detached HEAD, поэтому коммит внутри неё сам по себе не создаёт новую ветку. Если такие коммиты нужно сохранить, привяжи их к ветке или перенеси в основной проект до удаления папки копии.
Не удаляй папку копии, пока результат не сохранён. Проверка чистоты рабочей папки не заменяет сохранения нужных коммитов: они могут остаться без привязки к ветке.
Если ты одновременно ведёшь задачи в разных инструментах, стоит заранее продумать, как они не будут мешать друг другу. Совместная работа двух агентов описана в гайде Claude Code и Codex вместе.
Если запуск прервался: где искать копию
Запуск с --worktree может не сработать по нескольким причинам:
- функция не была включена заранее и в команде запуска нет
--enable worktrees- Codex откажется запускаться с флагом--worktree; - не та папка или нет коммита - если текущая папка не Git-репозиторий или в нём ещё нет ни одного коммита, создавать копию не от чего;
- проект явно помечен как недоверенный источник - Codex откажется запускать сессию с
--worktree. Сначала убедись, что открыл нужный проект. Не меняй статус доверия автоматически.
Если сессия не успела привязаться к созданной копии - например, процесс был прерван, - рабочая папка не удаляется автоматически. Сначала проверь список рабочих копий, а перед удалением убедись, что ни одна сессия Codex CLI больше не использует эту копию:
git worktree listОткрой папку и сохрани нужные изменения до удаления. Копия могла остаться, даже если сессия агента не запустилась до конца. Если копия на месте, больше не нужна и точно не используется ни одной сессией, удали её вручную командой git worktree remove из исходного репозитория, указав путь к папке. Не добавляй флаг --force: если в копии остались незакоммиченные или неотслеживаемые файлы, команда откажется её удалять. При таком отказе проверь содержимое папки, не отключая защиту.
При обновлении Codex CLI стоит заново свериться с codex --version и повторить проверку через git worktree list - поведение экспериментальных флагов между версиями может измениться.
Новые материалы - дайджестом, без спама
Гайды выходят регулярно. Подпишись, чтобы не пропускать: пришлю подборку в Telegram или на email. Раз в неделю или каждый день - выбираешь сам.

