# Сценарии

> Сценарии: субагенты работают по фазам с проверками и итогом. Как попросить агента, следить за прогоном, сохранить и запускать с аргументами.

**Сценарий** — скрипт, по которому несколько субагентов делают работу по фазам: например, два
ревьюера смотрят файл, у каждого своя задача, а третий сводит их замечания в итог. Пишет и правит сценарий
агент — вам достаточно описать, что нужно, словами. Сценарий запускается в фоне, вы следите за
фазами, а результат приходит в сессию.

Когда сценарий полезнее обычной просьбы:

- работу можно разделить на независимые части, и их стоит делать параллельно;
- нужен взгляд с нескольких сторон — разные ревьюеры с разными задачами;
- результат проверяется кодом: тесты, команда, сравнение — а не только словами агента;
- ту же работу вы будете повторять с другими входными данными.

## Как попросить

Опишите в чате, кто что делает и что должно получиться:

```text
Сделай сценарий: два ревьюера смотрят src/cart.js, у каждого своя задача (один — ошибки
в расчётах, другой — читаемость), третий сводит их замечания в короткий итог. Запусти его.
```

Агент пишет скрипт, проверяет его до запуска (типы результатов, фазы, команды) и запускает.
Пока прогон идёт, в сессии видна строка фоновой работы, а агенты сценария спрашивают
разрешения, как обычный субагент, — с пометкой «от субагента».

Когда прогон заканчивается, агент получает итог и рассказывает, что нашлось. Итог сценария
(например, сводка ревью) сохраняется артефактом прогона.

## Экран «Сценарии»

_Иллюстрация: Сохранённый сценарий: что делает, когда применять, аргументы — и «Запустить»._

- **Сохранённые** — сценарии, которые можно запускать снова. У карточки — название, что
  делает, когда применять и аргументы. **«Запустить»** спрашивает значения аргументов,
  **«Подробнее»** — описание и аргументы для правки.
- **Прогоны** — все запуски: состояние, время, токены, затронутые файлы и строки, откуда запущен.
  **«Ход прогона»** открывает подробности:
  - фазы по порядку и агенты в каждой — с состоянием, временем и токенами;
  - артефакты — например, «Итог ревью» с пометкой «Главный итог» и версией;
  - «Открыть сессию» и «Исправить в чате» — вернуться к агенту, чтобы он поправил сценарий.

_Иллюстрация: Ход прогона: две фазы, три агента, расход каждого и итоговый артефакт._

## Сохранить и запускать снова

Если сценарий получился удачным, скажите «сохрани его». Агент сам не сохраняет — он предлагает
и ждёт вашего согласия; сохранение вы подтверждаете.

```text
Сохрани сценарий с аргументами: путь к файлу и два фокуса ревью.
```

- **Аргументы** — то, что меняется от запуска к запуску: путь к файлу, ветка, фокус ревью. У
  аргумента бывает значение по умолчанию и пометка «обязательный».
- **Название** — то, как сценарий называется на экране. Имя файла — латиницей, название — на
  вашем языке; поправить название и описание можно в «Подробнее».
- Сохранённые сценарии лежат у вас, а не в репозитории: `~/.config/buff/workflows/`.

Запустить сохранённый сценарий можно с экрана «Сценарии» или попросив агента: «запусти ревью
файла для src/checkout.js».

## Что стоит знать

- Агенты сценария — субагенты: они видят проект, но не разговор основной сессии. Всё нужное
  им сценарий передаёт в задании.
- Прогон с ошибкой в скрипте не начинается: агент получает описание ошибки с номером строки и
  правит сценарий.
- Расход сценария идёт по тарифу организации, как у любого хода; в кабинете он виден в записях
  сессии.

## В консоли

_Иллюстрация: /workflows в консоли._

`/workflows` — сохранённые сценарии с запуском и прогоны с их состоянием и расходом. Просить
агента сделать и сохранить сценарий можно так же, как в окне.
