Git worktree

Менеджер git worktree
для Claude Code, Codex и любого CLI-агента

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

Перед стартом агента AgentsRoom устанавливает зависимости и копирует ваши файлы .env в новый worktree, чтобы агент мог сразу собрать проект и запустить тесты. Когда он закончил, вы проверяете, коммитите, пушите и вливаете этот worktree на вкладке «Изменения», на компьютере или с телефона.

Один репозиторий, по рабочей копии на агента
Основная рабочая копияmain
  • Бэкенд-агент.worktrees/fix-login-redirectПодготовлен
  • Фронтенд-агент.worktrees/settings-dark-modeВ работе
  • QA-агент.worktrees/agents/qaПроверка

Три агента, три worktree, один репозиторий: каждая рабочая копия готовится до старта своего агента, затем проверяется и вливается отдельно.

Два агента в одной рабочей копии, это два человека, которые печатают в одном файле. Один запускает форматтер, пока другой на середине правки, один переключает ветку прямо из-под другого, а diff, который вы проверяете в конце, смешивает обе задачи. Git worktree решает это: вторая рабочая копия того же репозитория, в собственной папке и на собственной ветке, с общей историей, но не с общими файлами.

Создать его можно одной командой git. Сложно жить с десятью такими: в свежем worktree нет ни node_modules, ни .env, поэтому первая сборка агента падает; ничто не подсказывает, какой агент где работает; а когда работа закончена, нужно ещё найти папку, проверить её, закоммитить и влить обратно.

AgentsRoom берёт этот цикл на себя. Тикет бэклога или агент запрашивает worktree, AgentsRoom создаёт его от актуальной базовой ветки внутри проекта в .worktrees/, готовит его, запускает в нём агента и даёт вам селектор на вкладке «Изменения», чтобы проверить, закоммитить, запушить и влить его. Всё работает одинаково, какой бы CLI ни запускал агента: Claude, Codex, GitHub Copilot CLI, Cursor и 10 других CLI-агентов.

Worktree остаются необязательными. Агент без worktree работает в папке проекта, как и раньше, а вы решаете отдельно для каждого тикета, агента или шаблона агента.

Что делает менеджер worktree

С момента, когда задача запрашивает изолированную рабочую копию, до момента, когда её ветка влита обратно.

Один worktree на тикет бэклога

Отметьте в тикете «Писать код в отдельном worktree для этой задачи», выберите один из worktree проекта или введите имя новой ветки, и запуск тикета создаёт worktree и запускает в нём агента.

Выбор worktree при добавлении агента

Карточка «Рабочее пространство» в окне «Добавить агента» предлагает «Основной», существующие worktree проекта и «Новый». Worktree, который вы создали сами через git worktree add, тоже есть в списке.

Новый worktree для каждого агента из шаблона

Включите «Новый worktree для каждого агента» у сохранённого агента или профиля по умолчанию, и каждый агент, запущенный из него, получает собственную ветку с именем agents/<шаблон>, затем -2, -3, так что копии никогда не делят одну рабочую копию.

Готов к сборке с первого запуска

Перед стартом первого агента в новом worktree AgentsRoom копирует нужные ему файлы, игнорируемые git (по умолчанию все файлы .env), и запускает команду установки, определённую по вашему lock-файлу: yarn, pnpm, npm, bun, uv, poetry, pipenv, bundle или composer.

Проверка, коммит и push каждого worktree

Селектор Worktree вверху вкладки «Изменения» переключает diff, ревью, «Закоммитить», Pull и Push на эту рабочую копию. Клик по плашке агента, у которого есть собственный worktree, открывает его напрямую.

Вливается обратно, когда тикет готов

С опцией «Автоматически влить в текущую ветку по завершении задачи» перевод тикета в Done вливает его ветку. Включите «Автоматически делать коммит по завершении работы», чтобы то, что агент оставил незакоммиченным, тоже попало в слияние.

Форма задачи AgentsRoom с отмеченным «Писать код в отдельном worktree для этой задачи», существующими worktree проекта fix-checkout-cache и free-shipping-coupon в виде чипов, именем ветки update-checkout-total-cache, заполненным по заголовку, и отмеченным «Автоматически влить в текущую ветку по завершении задачи»
Один флажок в задаче: выберите один из worktree проекта или оставьте имя ветки, заполненное по заголовку, и решите, вливается ли ветка обратно по завершении задачи.

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

Путь одного тикета, от формы до слияния.

  1. 1

    Запросите worktree в тикете

    В форме тикета, в разделе «Выполнение», отметьте «Писать код в отдельном worktree для этой задачи». Выберите существующий worktree среди чипов или оставьте поле «Имя ветки»: оно заполняется по заголовку, пока вы его не измените, и становится новым worktree при старте задачи.

  2. 2

    Запустите тикет

    AgentsRoom загружает базовую ветку (ветку remote по умолчанию или ветку, заданную в поле «Базовая ветка для worktree» в настройках проекта), создаёт worktree в .worktrees/<ветка>/ и добавляет эту папку в .git/info/exclude клона, поэтому она никогда не появляется как неотслеживаемые файлы в вашей основной рабочей копии.

  3. 3

    Worktree подготовлен, затем стартует агент

    Терминал агента показывает команду установки и её вывод, уведомление сообщает, сколько игнорируемых файлов скопировано, затем в worktree запускается CLI агента. Это происходит один раз на worktree; неудачная установка никогда не блокирует агента, ошибка остаётся в его терминале.

  4. 4

    Проверьте и влейте

    Выберите worktree на вкладке «Изменения», чтобы прочитать diff и закоммитить. Переведите тикет в Done, и при включённом автоматическом вливании его ветка вливается в текущую ветку; подтверждение показывает результат. Сам worktree остаётся на диске для последнего взгляда.

Вкладка «Изменения» в AgentsRoom с открытым селектором Worktree: «Основной» и два worktree агентов, выбран fix-checkout-cache, ниже указан его изменённый файл src/checkout.js
Селектор Worktree на вкладке «Изменения»: выберите worktree агента, и diff, коммит и push работают с этой рабочей копией.

Claude Code и Codex уже создают worktree. Вот в чём разница.

У Claude Code есть собственный флаг: claude --worktree feature-auth создаёт .claude/worktrees/feature-auth на ветке worktree-feature-auth, копирует игнорируемые git файлы, перечисленные в файле .worktreeinclude, и при выходе спрашивает, оставить или удалить worktree. Его документация прямо говорит, что worktree, это свежая рабочая копия и что зависимости вы устанавливаете сами или просите об этом Claude. Субагенты тоже могут получить по worktree с isolation: worktree.

Приложение Codex управляет worktree в $CODEX_HOME/worktrees, запускает их в detached HEAD от выбранной ветки, тоже читает .worktreeinclude, запускает скрипты настройки локального окружения, если вы его выбрали, и по умолчанию хранит 15 последних. Handoff переносит чат и его код между Local и worktree. У codex-cli 0.162.1 тоже есть флаг --worktree.

Оба хороши, и оба принадлежат одному вендору. AgentsRoom их не заменяет: он поднимает ту же изоляцию на уровень выше, туда, где живут ваши тикеты и агенты, сразу для всех CLI, готовит рабочую копию до того, как её увидит агент, и держит проверку, коммит и слияние в окне, которым вы уже пользуетесь. Проверено на Claude Code 2.1.299 и codex-cli 0.162.1, октябрь 2026.

Что нужно знать

  • Worktree никогда не удаляется автоматически, намеренно, чтобы вы могли его проверить. Они накапливаются в .worktrees/; удалите ненужный через git worktree remove, когда закончите, но никогда, пока внутри ещё работает агент.
  • Автоматическое вливание, наткнувшееся на конфликт, пишет предупреждение, и тикет всё равно переходит в Done: такое слияние нужно разрешить вручную.
  • Для worktree нужен git-репозиторий в корне проекта. Папка, которая просто объединяет несколько репозиториев рядом друг с другом, их не получает: откройте каждый репозиторий как отдельный проект.
  • Проект, открытый на SSH-сервере, получает свои worktree на сервере, без шага установки. Локальная рабочая копия, агенты которой работают на удалённом хосте, не может использовать worktree, и тикет сообщает об этом вместо запуска.
  • QA-агент никогда не получает собственный worktree: он тестирует в рабочей копии своего главного агента, потому что свежий worktree не содержал бы незакоммиченную работу, которую нужно протестировать.

Частые вопросы

Что такое git worktree и зачем давать его ИИ-агенту?

Git worktree, это вторая рабочая копия того же репозитория, в собственной папке и на собственной ветке, с общей историей и общим remote с вашей основной рабочей копией. Если дать по одному каждому ИИ-агенту для написания кода, каждый агент правит, собирает и коммитит собственную копию файлов, поэтому два агента, работающие одновременно, никогда не затирают друг друга и не переключают ветку друг у друга из-под ног. В нашем блоге есть подробное руководство по git-части: Git worktrees: основа для запуска нескольких AI-агентов без конфликтов.

Есть ли в Claude Code встроенные worktree?

Да. claude --worktree <имя> (или -w) создаёт .claude/worktrees/<имя> на ветке worktree-<имя>, копирует игнорируемые git файлы, перечисленные в .worktreeinclude, и при выходе спрашивает, оставить или удалить worktree; субагенты могут работать в собственном worktree с isolation: worktree. Зависимости он не устанавливает. В AgentsRoom можно продолжать им пользоваться или позволить тикету либо агенту запросить worktree, что заодно подготовит его и покажет на вкладке «Изменения» (проверено на Claude Code 2.1.299).

Поддерживает ли Codex worktree?

Приложение Codex поддерживает: оно создаёт управляемые worktree в $CODEX_HOME/worktrees, в detached HEAD, копирует игнорируемые файлы из .worktreeinclude, может запускать скрипты настройки локального окружения, хранит 15 последних и переносит чат между Local и worktree через Handoff. У codex-cli 0.162.1 есть флаг --worktree, который запускает сессию в новом управляемом worktree. AgentsRoom даёт агенту Codex worktree так же, как любому другому агенту, из тикета или окна «Добавить агента».

Какие CLI-агенты могут работать в worktree AgentsRoom?

Все: worktree, это просто рабочая папка агента, какой бы CLI в ней ни работал, поэтому Claude, Codex, GitHub Copilot CLI, Cursor и 10 других CLI-агентов работают в нём одинаково. Kimi Code и Antigravity CLI доверяют папке по её точному пути; AgentsRoom перед запуском записывает новый worktree как доверенный для них, чтобы они не останавливались на вопросе о доверии.

Нужно ли запускать yarn install и копировать мой .env в каждый worktree?

Нет. Перед стартом первого агента в новом worktree AgentsRoom копирует игнорируемые git файлы основной рабочей копии, подходящие под «Файлы, копируемые из этой рабочей копии» (по умолчанию все файлы .env), и запускает команду установки, определённую по lock-файлу в корне. Оба параметра задаются в разделе «Настройки проекта» > Git > «Подготавливать новые worktree», где можно заменить команду, например на pnpm install && pnpm build:deps. Файл, который уже есть в worktree, никогда не перезаписывается.

Как проверить и влить то, что агент сделал в своём worktree?

Откройте вкладку «Изменения» и выберите worktree в селекторе Worktree вверху: список файлов, diff, ревью, «Закоммитить», Pull и Push работают тогда с этой рабочей копией. Для тикета опция «Автоматически влить в текущую ветку по завершении задачи» вливает его ветку, когда вы переводите его в Done, а «Автоматически делать коммит по завершении работы» («Настройки» > Backlog) сначала коммитит то, что оставил агент, чтобы слияние забрало всю работу.

Где находятся worktree и очищаются ли они?

Внутри проекта, в .worktrees/<ветка>/, они создаются от ветки remote по умолчанию, если вы не задали ветку в поле «Базовая ветка для worktree» в настройках проекта. Папка добавляется в .git/info/exclude клона, никогда не в ваш .gitignore, поэтому она не попадает в ваши коммиты. Worktree никогда не удаляются автоматически: удалите ненужный через git worktree remove, когда закончите с ним.

Можно ли пользоваться worktree с телефона или на удалённом сервере?

Да, и там, и там. На телефоне на экране «Изменения» есть тот же селектор Worktree, а тикет, который запрашивает worktree, работает в нём, когда вы запускаете его с телефона, и подготовлен компьютером, как любой другой. Проект, открытый на SSH-сервере, получает свои worktree на сервере, без шага установки. Локальная рабочая копия, агенты которой работают на удалённом хосте, не может использовать worktree, и тикет сообщает вам об этом вместо запуска.

Полезные материалы

Вам также может понравиться

Управление задачами

Визуальная kanban-доска для управления AI-агентами с перетаскиванием. Создавайте задачи в колонке TODO, перетаскивайте их в «В работе», чтобы автоматически запустить агента Claude, и отслеживайте выполнение через колонки «Ожидание» и «Готово». Разработка на основе бэклога для параллельного AI-кодинга.

Ревью по агентам

Просматривайте изменения кода каждого ИИ-агента отдельно. AgentsRoom отслеживает, какой агент Claude Code изменил какие файлы. Фильтруйте диффы по агенту, проверяйте индивидуально, коммитьте по агентам для чистой git-истории.

Мультипроект · Мультиагент · Параллельно

AgentsRoom запускает несколько AI-агентов Claude, Codex, GitHub Copilot CLI, Cursor и 10 других CLI-агентов параллельно по нескольким проектам, всё в одном окне. Цветовые роли, живой статус, счётчики по проектам, нативные уведомления на десктопе и мобильном. Визуальная альтернатива 12 вкладкам терминала и хаосу сессий Claude Code, разбросанных по iTerm2, Warp и tmux.

Настройка агентов

Выбирайте из 14 встроенных ролей агентов, добавляйте специализированных агентов из The Agency или создавайте собственного пользовательского AI-кодирующего агента с его собственным системным запросом. Затем делитесь своими агентами с командой через чат и публикуйте их в сообществе, чтобы все могли развиваться вместе.

Мульти-агентный воркфлоу : Хендофф : Цикл обратной связи

AgentsRoom Agent Teams выстраивает ИИ-агентов для кода в настоящую инженерную команду. Визуальный редактор рабочих процессов (канвас в стиле n8n) для связывания ролей Dev, QA, PM, Security и DevOps. Автоматическая передача с резюме, git-диффом, рисками и подсказками для тестов. Машинно проверяемые ворота качества (решает ваша тестовая суита, а не агент), параллельные ветки ревью QA и Security, условные связи, петли обратной связи, ограничитель циклов. Для каждой команды выбирайте, как идут роли: один агент, который меняет роль за ролью и держит весь контекст, или по живому агенту на роль, пишущих друг другу в реальном времени. Мультиагентный оркестратор, которого не хватало вашим агентам Claude, Codex, GitHub Copilot CLI, Cursor и 10 другим CLI-агентам.

Дайте каждому агенту собственную рабочую копию

Скачайте AgentsRoom для macOS, Windows или Linux, и пусть несколько агентов работают в одном репозитории, не мешая друг другу.

БесплатноСкачать бесплатно

Приложение-компаньон: следите за агентами на ходу

Используйте Claude, Codex, Antigravity CLI или другого поставщика AI.

Установить расширение
Chrome Web Store

Отправляйте баги и запросы прямо в ваш публичный бэклог.

Мульти-проекты
Мульти-провайдер
Мульти-агенты
Статус онлайн
Diff и коммиты
Мобильное приложение
Live-превью
Команды агентов
Тесты в браузере
Разработка от backlog
Библиотека промптов
Библиотека навыков
Все функции