🤖HermesBlog
Официальные Учебники Hermes · Часть 158/9/2026

Учебник 15: Git Worktrees — Параллельные агенты

Учебник 15: Git Worktrees — Параллельные агенты — простое руководство на основе официальной документации

Это часть официальной серии руководств Hermes Agent. Смотреть все руководства

Представьте: одна кухня, но два повара. Если они оба готовят на одной столешнице, то будут толкаться локтями, рассыпать муку и портить блюда друг друга. Git worktrees дают каждому повару свою столешницу — та же кухня, но отдельные рабочие места. Именно это функция делает для ваших ИИ-агентов.


Hermes tutorial

Зачем это нужно? Проблема с одной рабочей копией

Hermes Agent считает папку, в которой вы его запускаете, корнем проекта. Если вы запустите двух агентов в одной папке, они будут делить все файлы. Это значит:

  • Агент A может удалить файл, который редактирует агент B.
  • Вы не сможете понять, какие изменения от какого эксперимента.
  • Откаты становятся хаотичными — отмена одного агента может стереть работу другого.

Worktrees решают эту проблему, давая каждому агенту:

  • Свою ветку (чтобы изменения не пересекались)
  • Свою рабочую папку (чтобы файлы не конфликтовали)
  • Свою историю чекпоинтов (чтобы /rollback влиял только на этого агента)

Шаг 1: Создайте worktree (базовая команда)

Из вашего основного репозитория (того, где лежит .git/) выполните:

git worktree add ../my-agent-folder -b my-feature-branch

Разберем по частям:

  • ../my-agent-folder — где будет жить новая папка (вне основного репозитория)
  • -b my-feature-branch — создает новую ветку для этого агента

Теперь у вас есть свежая, изолированная копия проекта.


Шаг 2: Укажите Hermes на worktree

Использовать worktree можно двумя способами:

Вариант A: CLI (проще всего)
Просто перейдите в worktree и запустите Hermes там:

cd ../my-agent-folder
hermes chat

Вариант B: Мессенджер-шлюзы (например, Slack или Discord)
Если вы используете шлюз, отредактируйте ~/.hermes/config.yaml и укажите terminal.cwd на путь к worktree:

terminal:
  cwd: /path/to/my-agent-folder

Теперь каждое сообщение, которое получит агент, будет обрабатываться в этой изолированной папке.


Шаг 3: Запустите несколько агентов параллельно

Создайте столько worktree, сколько нужно:

git worktree add ../agent-experiment-1 -b exp-1
git worktree add ../agent-experiment-2 -b exp-2

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


Шаг 4: Уборка после завершения

Когда эксперимент закончен, удалите worktree:

git worktree remove ../agent-experiment-1
git branch -d exp-1

Первая команда удаляет папку; вторая — ветку. Ваш основной репозиторий остается чистым.


Ключевые моменты

  • Worktrees — это дешево – они не копируют весь репозиторий, только нужные файлы.
  • У каждого агента своя история /rollback – никаких катастроф с отменой между агентами.
  • Используйте ветки с умом – называйте их понятно (например, refactor-login, fix-bug-42), чтобы было ясно, что сделал каждый агент.

Итог

Git worktrees позволяют запускать несколько агентов Hermes над одним проектом, не мешая друг другу. Создайте worktree для каждого агента, укажите его Hermes — и готово. Это как дать каждому повару свою разделочную доску — та же кухня, ноль столкновений.

Дальше: В Руководстве 16 мы развернем Hermes с помощью Docker — самовосстанавливающегося, постоянно работающего ассистента.


📖 Официальная документация

Эта статья основана на официальной документации Hermes Agent :Официальные документы › user-guide/git-worktrees