# Worktree на агента

> Дайте каждому агенту nsq свою git-ветку и копию репозитория флагом --worktree, смотрите его diff и удаляйте, когда закончите.

Source: https://docs.neurosquad.ai/ru/cli/worktrees

Два агента, правящие одну и ту же рабочую копию, мешают друг другу. `--worktree` даёт агенту свой
[git worktree](https://git-scm.com/docs/git-worktree): отдельную рабочую копию того же репозитория на
своей ветке.

```sh
cd ~/code/shop
nsq run claude "fix the flaky checkout test" --worktree --name checkout-fix
nsq run codex "update the API docs" --worktree --name api-docs
```

- Ветка называется `nsq/<имя агента>` — выше это `nsq/checkout-fix`.
- Рабочая копия лежит в `~/.neurosquad-cli/worktrees/`, а не внутри вашего репозитория.
- `nsq ls` показывает ветку каждого агента; `nsq diff <agent>` — что он изменил.
- В дашборде в диалоге запуска (`c`) есть переключатель worktree.

Просматривайте и вливайте ветку как обычно — это самая обычная git-ветка.

## Удаление

```sh
nsq rm checkout-fix               # удаляет агента, worktree и ветка остаются
nsq rm checkout-fix --worktree    # удаляет и папку worktree
```

`--worktree` удаляет папку **вместе с незакоммиченными изменениями** — сначала закоммитьте то, что
хотите сохранить.

Без `--worktree` nsq подскажет, где лежит worktree, и оставит его, чтобы работа не пропала
случайно. Сама ветка в любом случае остаётся в репозитории; удалите её через git, когда она станет не
нужна.
