--- name: sub-agent-decompose-worker-review description: Describes the sub-agent pipeline: task-decomposer breaks a task into subtasks, task-worker implements them, work-reviewer checks the result; on issues feedback goes back to the worker. Use when orchestrating multi-step work with task-decomposer, task-worker, and work-reviewer agents, or when the user asks how these agents work together. --- # Pipeline суб-агентов: Decomposer → Worker → Reviewer Три агента работают по цепочке. Каждый шаг можно запускать отдельно (отдельная команда/контекст). ## Порядок запуска | Шаг | Агент | Действие | |-----|--------|----------| | 1 | **task-decomposer** | Получает задачу, анализирует кодовую базу, декомпозирует в подзадачи с порядком и критериями готовности. | | 2 | **task-worker** | Получает подзадачи (или одну задачу) и выполняет их: минимальные безопасные изменения, соблюдение правил main.mdc. | | 3 | **work-reviewer** | Проверяет результат работы воркера: корректность, архитектура, стиль, полнота. | После шага 3 возможен **цикл исправлений**: если ревьювер нашёл проблемы → передать замечания воркеру → воркер вносит правки → снова запустить work-reviewer. Повторять до «принято» или до разумного лимита раундов (например, 3). ## Детали по шагам ### 1. task-decomposer - **Вход:** формулировка задачи (от пользователя или из предыдущего контекста). - **Выход:** список подзадач с зависимостями, порядком выполнения и критериями готовности; контекст анализа; неясности и риски. - **Когда вызывать:** задача сложная, большая или размытая — сначала декомпозиция, потом реализация. ### 2. task-worker - **Вход:** одна подзадача или упорядоченный список подзадач (результат decomposer); при цикле исправлений — замечания от work-reviewer. - **Выход:** изменения в коде/артефактах; кратко: что изменено, зачем, минимальный diff. - **Когда вызывать:** после decomposer для реализации; после reviewer — для исправлений по замечаниям. ### 3. work-reviewer - **Вход:** изменённый код, документы или артефакты после работы task-worker. - **Выход:** краткий вывод; замечания по приоритету (критичные / важные / рекомендации); конкретные предложения правок. - **Когда вызывать:** после завершения работы воркера по задаче или подзадаче. ## Цикл исправлений (fix loop) 1. work-reviewer выдал замечания (критичные или важные). 2. Пользователь (или оркестратор) передаёт эти замечания в task-worker как новую «задачу на исправление». 3. task-worker вносит правки. 4. Снова запускается work-reviewer по обновлённому коду. 5. Повторять шаги 2–4, пока ревью не пройдено или не достигнут лимит раундов. ## Правила для оркестрации - Каждый агент лучше запускать в своём контексте (одна команда = один агент), чтобы не смешивать роли. - Передавать между шагами: результат decomposer → worker; результат worker (дифф/файлы) → reviewer; вывод reviewer → worker при fix loop. - Не пропускать decomposer для сложных задач: сначала разбивка, потом выполнение. - Язык: если пользователь общается на русском — ответы и артефакты можно на русском; task-worker часто на английском в коде и коммитах — по конвенциям проекта. ## Краткий чеклист - [ ] Задача передана в **task-decomposer**, получены подзадачи и порядок. - [ ] **task-worker** выполнил подзадачи (по одной или батчем по договорённости). - [ ] **work-reviewer** проверил результат. - [ ] Если есть замечания — передать воркеру, повторить правки и ревью (fix loop). - [ ] Ревью пройдено или достигнут лимит раундов.