Разбор функции

Git Worktrees в Claude Code: параллельные сессии без конфликтов

Запускайте каждую сессию через claude --worktree — и каждый агент получает собственный чекаут в .claude/worktrees: две задачи одновременно, пять вариантов лендинга по одному промпту и ни одного переключения веток.

The frontend-dev.md sub-agent file in .claude/agents with YAML front matter showing model haiku and the isolation worktree line that makes every spawn of this agent run in its own git worktree
Файл агента frontend-dev.md со строкой isolation: worktree во front matter — каждый запуск этого субагента работает в собственном git worktree.

Иллюстрированная пошаговая инструкция из 12 шагов — чтение займет около 4 минут. Каждый шаг ведет к точной минуте исходного видео.

Коротко

Git worktree выкачивает вторую ветку того же репозитория в отдельную папку, при этом обе папки делят одну git-историю. Запустите claude --worktree вместо обычного claude — и Claude Code создаст worktree в .claude/worktrees/<случайное-имя> для этой сессии: два терминала правят один репозиторий одновременно, не мешая друг другу. Единственное условие — git init и хотя бы один коммит. Субагентам изоляцию можно запросить на лету одним промптом или закрепить навсегда строкой isolation: worktree во front matter файла агента в .claude/agents.

Исходное видео

Эта страница следует за записью Developers Digest с демонстрацией worktrees в Claude Code и восстанавливает её шаги кадр за кадром. Каждый скриншот ведет к точному моменту в видео.

Скриншоты — кадры из видео с указанием авторства; текст наш. Шаги сверены с видео и документацией Claude Code в сентябре 2026 года.

guide_claude_code_worktrees.sections.why_worktrees_title

guide_claude_code_worktrees.sections.why_worktrees_subtitle

  1. 1

    Что такое worktree

    Git worktree выкачивает вторую ветку того же репозитория в отдельную папку. Каждая папка правит свои файлы, но git-данные у них общие — папка feature1 живет на ветке Feature-1, а main в своей папке остается нетронутым.

    Diagram of one Git repository folder connected to three worktree folders labeled ../main, ../feature1 and ../feature2, each folder checked out on its own branch while sharing the same git history
    Один репозиторий, три папки, три ветки — схема, с которой открывается видео.Смотреть с 0:30
  2. 2

    Сделайте первый коммит

    Worktrees нужен репозиторий, от которого можно отвести ветку. В видео папку demo-app инициализируют через git init, создают index.html командой touch и коммитят всё через git add и git commit. Единственное условие — хотя бы один коммит; остальное Claude Code берет на себя.

    Terminal in the demo-app folder running git init, touch index.html, git add . and git commit -m, the first commit a repository needs before claude --worktree will start
    Единственная ручная подготовка в видео: init, один файл, один коммит.Смотреть с 1:10

guide_claude_code_worktrees.sections.parallel_sessions_title

guide_claude_code_worktrees.sections.parallel_sessions_subtitle

  1. 3

    Запустите сессию через claude --worktree

    Вместо обычного claude наберите claude --worktree. Экран приветствия покажет, где живет эта сессия: не в корне demo-app, а в .claude/worktrees/clever-munching-toast — папке, которую Claude Code создал для этой сессии. Случайное имя разводит параллельные сессии в стороны.

    Claude Code v2.1.50 welcome screen after running claude --worktree in the demo-app terminal, showing Opus 4.6 - Claude Max and the session rooted at ~/.claude/worktrees/clever-munching-toast
    На баннере приветствия указан автосозданный worktree, который будет править эта сессия.Смотреть с 1:30
  2. 4

    Откройте второй терминал и повторите

    Ради параллельности всё и затевалось: откройте еще один терминал Claude Code в той же папке и снова запустите claude --worktree. Эта сессия rooted в .claude/worktrees/spicy-napping-otter. Теперь два агента правят index.html в одном репозитории, не видя изменений друг друга.

    A second terminal running claude --worktree in the same demo-app folder, its Claude Code welcome screen rooted at demo-app/.claude/worktrees/spicy-napping-otter so both sessions run in parallel
    Та же команда, тот же репозиторий, другая папка — вот и весь workflow.Смотреть с 1:36
  3. 5

    Дайте первой сессии задачу

    Первую сессию просят сделать страницу «hello world» на черном фоне. Она записывает 24 строки в index.html и отчитывается Done. Сессия правит собственный worktree, поэтому с главным чекаутом столкнуться нечему.

    Claude Code session reporting Write index.html of 24 lines and Done, the page displays hello world centered on a black background with white text, the task assigned to the first worktree session
    Первая сессия пишет свою черную страницу внутри clever-munching-toast.Смотреть с 1:40
  4. 6

    Сравните оба результата рядом

    Обе сессии открывают свои страницы в браузере: «hello world» на черном по URL из clever-munching-toast и «hello world» на фиолетовом по URL из spicy-napping-otter. Окно Finder между ними показывает папку .claude/worktrees с подпапкой на каждую сессию — один репозиторий, выкачанный дважды, измененный дважды.

    Two browser windows opening hello world from the clever-munching-toast worktree URL on a black page and the spicy-napping-otter worktree URL on a purple page, with the .claude/worktrees folder tree visible in Finder between them
    Черная и фиолетовая страницы живут по двум разным worktree-адресам одного репозитория.Смотреть с 1:50

guide_claude_code_worktrees.sections.subagent_isolation_title

guide_claude_code_worktrees.sections.subagent_isolation_subtitle

  1. 7

    Пять агентов одним промптом

    Изоляцию worktree можно включать и на лету. Один промпт — пять разных субагентов, пять креативных SaaS-вариантов лендинга для HTML-файла, всем включить git worktree изоляцию — и Claude Code отвечает «Running 5 Task agents», перечисляя Variation 1–5 с числом вызовов инструментов и токенов у каждого. Ctrl+B отправляет эскадрилью в фон.

    Claude Code transcript with the prompt to spawn five sub-agents creating creative SaaS landing page variations with git worktree isolation, answering Running 5 Task agents with Variation 1 through 5 and per-agent tool use and token counts
    Один промпт, пять Task-агентов, каждый в собственном изолированном git worktree.Смотреть с 2:52
  2. 8

    Дождитесь финиша эскадрильи

    Через несколько минут каждый вариант отчитывается Done — по четыре вызова инструментов и около 50 тысяч токенов. Пять разных дизайнов одного файла существуют одновременно, никто не тронул главный чекаут, и посреди работы не пришлось ни stash-ить, ни мержить.

    Claude Code reporting 5 Task agents finished with each SaaS landing page variation marked Done after 4 tool uses and roughly 50k tokens, all generated in their own isolated git worktrees
    Пять строк Done: параллельные агенты финишировали без единого конфликта.Смотреть с 4:14
  3. 9

    Выбирайте направление по пути worktree

    Claude Code резюмирует пять тем — Minimal Dark Mode, Gradient Dreamscape, Retro Terminal / Hacker, Soft Pastel / Friendly, 3D / Isometric — и печатает точный путь файлов каждой: .claude/worktrees/agent-a01ee76a/index.html и так далее. Принять вариант — значит просто сохранить ветку его worktree.

    Claude Code quick overview of five landing page themes, Minimal Dark Mode through 3D Isometric, each with its .claude/worktrees/agent-*/index.html path, beside the rendered FlowSync Ready to move faster preview
    Каждая тема — отдельная папка в .claude/worktrees: смотрите, потом мержите понравившуюся.Смотреть с 4:22

guide_claude_code_worktrees.sections.agent_config_title

guide_claude_code_worktrees.sections.agent_config_subtitle

  1. 10

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

    Изоляцию можно вшить в определение агента. После /clear — одна фраза: создай субагента фронтенд-разработчика, модель Haiku, включи изоляцию worktree. Claude Code сначала сверяется с собственной документацией по субагентам, потом собирает конфиг — YAML вручную писать не нужно.

    A cleared Claude Code session with the request to create a front end developer sub agent using the Haiku model with work tree isolation, while the claude-code-guide agent fetches the sub-agents documentation from code.claude.com
    Попросите Haiku плюс изоляцию worktree — файл Claude Code напишет сам.Смотреть с 5:46
  2. 11

    Claude Code пишет файл агента

    Спецификация ложится в проект: mkdir -p создает .claude/agents, затем внутрь записывается frontend-dev.md. Проектные агенты живут в этой папке — там же, где skills, — поэтому определение ездит вместе с репозиторием.

    Claude Code running mkdir -p on the demo-app/.claude/agents folder after researching the custom agent config, ready to write the frontend-dev.md agent file
    mkdir -p .claude/agents, затем frontend-dev.md — установка агента одним файлом.Смотреть с 6:18
  3. 12

    Строка, которая делает агента параллельным

    Во front matter сказано всё: name, description, model: haiku, дальше isolation: worktree и белый список инструментов Read, Edit, Write, Bash, Glob, Grep. Отныне каждый запуск этого агента автоматически получает собственный git worktree — без флагов и напоминаний в промпте.

    The Write tool creating .claude/agents/frontend-dev.md with YAML front matter listing name frontend-dev, description, model haiku, isolation worktree and the tools Read, Edit, Write, Bash, Glob, Grep
    isolation: worktree во front matter — постоянная изоляция worktree для этого агента.Смотреть с 6:34

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