Курс

Параллельная работа [worktrees]

БЛОК 4: ДЛЯ ПРОДВИНУТЫХ • Урок 15 из 19

Бро, есть неприятный моментик 🥲

В расширении Клода внутри VS Code можно открыть несколько вкладок и дать каждому агенту свою задачу. Но все они будут работать с одной версией проекта, и редактировать одни и те же файлы.

Это значит, что если два агента будут работать над задачами, у которых есть общие файлы – один запишет файлы по-своему, а второй перезапишет иначе. И начнётся неконтролируемый хаос. Пздц, проще говоря.

Решение: «worktrees» — изолированные копии проекта

image.png

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

Принцип простой:

  1. Создаёшь отдельную копию для каждой задачи
  2. Каждый агент работает в своей копии
  3. Агенты пишут код параллельно, не мешая друг другу
  4. Когда закончили — смотришь что получилось
  5. Выбираешь лучший вариант или объединяешь результаты

Три задачи → три копии → три агента работают одновременно. Или больше.

Как это сделать

Способ 1: встроенная команда (февраль 2026)

В Claude Code появилась встроенная поддержка «worktrees». Одна команда в терминал и готово:

claude --worktree

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

Можно задать ✏️ имя:

claude --worktree авторизация

Что происходит под капотом ⚙️

  • Создаётся папка внутри .claude/worktrees/авторизация/
  • Создаётся ветка worktree-авторизация
  • Claude запускается в этой копии, изолированно от основного проекта

Когда заканчиваешь:

  • Если никаких изменений не было — копия удаляется автоматически
  • Если есть изменения — Claude спросит: оставить или удалить?

Добавь .claude/worktrees/ в .gitignore, чтобы содержимое копий не отображалось как неотслеживаемые файлы.

Способ 2: субагенты с изоляцией

Можно сделать ещё проще = не создавать «worktrees» вручную, а настроить так, чтобы субагенты автоматически получали свою изолированную копию.

Для этого создаёшь файл агента в .claude/agents/ с параметром isolation: worktree:

--- name: builder description: Реализует фичи в изолированной копии проекта tools: Read, Write, Edit, Bash isolation: worktree --- Ты реализуешь задачи. Работай аккуратно, тестируй результат.

Теперь когда Claude решит делегировать работу этому агенту, тот автоматически получит свою копию проекта. Закончил без изменений = копия удалится сама.

Это работает везде: и в чате VS Code, и в терминале, и в десктоп-приложении. Ничего руками делать не нужно. Можно и без файла, просто попроси Claude в чате: «используй worktrees для своих агентов». И объясни зачем тебе это нужно и для чего.

Способ 3: вручную через git (старый способ)

Если тебе нужен полный контроль, можно создать «worktree» вручную через git:

git worktree add ../myproject-авторизация -b авторизация

Получается такая структура:

myproject/ ← основной проект myproject-авторизация/ ← копия для второй задачи myproject-исправление-багов/ ← копия для третьей задачи

Открываешь каждую папку в отдельном окне VS Code, запускаешь Claude, даёшь задачу.

Когда задача сделана:

git worktree remove ../myproject-авторизация

Этот способ работал всегда, и продолжает работать. Но встроенная команда claude --worktree делает то же самое быстрее и с автоматической очисткой.

Где запускать: терминал и VS Code ⚡️

claude --worktree — это команда терминала. Но не обязательно открывать отдельный терминал. Встроенный терминал VS Code работает точно так же.

Два интерфейса, одна цель:

  • Расширение в VS Code (боковая панель) > удобный чат с кнопками
  • Терминал в VS Code (или отдельный) > текстовый, но с полной поддержкой всех фич, включая --worktree

А субагенты с isolation: worktree работают из любого интерфейса, хоть из чата, хоть из терминала. Claude сам разбирается.

Паттерны использования 🧠

[ + ] Несколько независимых задач

Самый простой случай: три задачи, которые не связаны между собой. Каждый агент в своём «worktree» — пилит свою фичу, чинит свой баг, пишет свои тесты. Закончили — объединяешь результаты.

[ + ] Best-of-N: несколько попыток, выбираешь лучшую

Запускаешь 3-5 агентов на одну и ту же задачу, каждый в своём «worktree». Получаешь несколько вариантов решения. Сравниваешь, выбираешь лучший. Особенно полезно для сложных задач, где с первого раза не всегда получается идеально.

[ + ] Миграции и массовые изменения

Нужно переименовать функцию в 50 файлах, обновить API, или мигрировать на новую версию библиотеки? Субагенты с «worktree» изоляцией могут делать это параллельно, каждый работая со своим куском кодовой базы.

Нюансы 🤓

[ - ] Это продвинутая тема. «Worktrees» — штука для тех, кто хотя бы немного разобрался с терминалом и git. Если тебе пока сложно, не обязательно сюда лезть прямо сейчас. Но знать, что это существует — полезно.

[ - ] Фича свежая. Встроенная поддержка --worktree появилась в феврале 2026. Могут быть шероховатости. Ручной способ через git worktree add работает стабильно и давно.

[ - ] Мёрдж-конфликты. Когда несколько агентов работали параллельно и оба правили похожие файлы — при объединении могут быть конфликты. Ничего страшного: Claude хорошо умеет их разрешать. Просто имей в виду.

[ - ] Не теряй контроль. Когда запущено 5 параллельных агентов, легко потерять нить — где что сделано, в какой ветке какая фича. Давай каждому «worktree» понятное имя, и следи за процессом.

А щас самое интересное 🔥

В следующем уроке обсудим «Agent Teams».
Это другой подход: несколько агентов в одном проекте, которые координируются между собой. У них общая доска задач, они переписываются друг с другом. Тебе не нужно вручную раздавать задания, они разберутся сами.

👾 Worktrees это как фрилансеры на удалёнке. Каждый получил задание и работает у себя дома. Не видят друг друга, не переписываются. Ты единственный, кто знает что происходит у каждого. Проще, дешевле, и подходит когда задачи не связаны между собой.

😈 Agent Teams это как коллектив в одном офисе. У них общая доска задач, могут подойти друг к другу и спросить. Координируются сами. Дороже (каждый агент тратит токены), но для сложных задач, где нужна совместная работа — окупается.

Сравнение подходов

В этом и соседних уроках описаны три способа масштабировать работу агентов:


Worktrees

Agent Teams

Headless

Что делает

Несколько агентов, каждый в своей копии проекта

Несколько агентов координируются сами, общая доска задач

Один агент работает по расписанию, без тебя

Координация

Ты сам решаешь кто что делает

Автоматическая, агенты видят задачи друг друга

Нет, работает по сценарию

VS Code

Да (терминал + субагенты)

Нет, только терминал (tmux / iTerm2)

Нет, только терминал

Сложность

Средняя

Высокая

Высокая

Когда нужно

Несколько независимых задач

Сложная задача с зависимостями

Регулярные задачи по расписанию

💭 От Тома:
Параллельная работа нужна тем, у кого овер много задач и кому жоско важна скорость. Если ты не чувствуешь такой потребности — не парься, вернёшься когда понадобится. А если чувствуешь, что пора, то честно скажу, что работа в параллельных сессия реально меняет ощущение от процесса. Попробуй и зацени сам 🥷🏽