GitHub Copilot Dynamic Workflows: як керувати кількома AI-агентами
Dynamic Workflow — це не ще один довгий промпт. Це описаний кодом процес, де звичайні команди, один або кілька агентів, перевірки й людські рішення виконуються у визначеному порядку.

Що саме випустив GitHub
1 жовтня 2026 року GitHub оголосив Dynamic Workflows у Copilot CLI, застосунку GitHub Copilot і Copilot SDK. Функція доступна на всіх планах Copilot, але поки має статус public preview, тому інтерфейс і API можуть змінюватися.
Звичайний промпт описує бажаний результат. Dynamic Workflow описує сам процес: які команди виконати, де залучити агента, які частини запустити паралельно, у якому форматі зібрати висновки та де зупинитися для підтвердження людини. Визначення workflow живе всередині Copilot extension.
Це корисно не для одноразового «виправ цю кнопку», а для задач із повторюваними етапами: перевірки релізу, рев’ю багатьох файлів, пошуку застарілого API, розслідування інциденту або маршруту «дослідити → скласти план → внести зміну → перевірити».
Звичайний чат, Autopilot, Fleet і Dynamic Workflow
| Режим | Хто визначає кроки | Коли використовувати |
|---|---|---|
| Звичайний чат | Ви просите результат, Copilot відповідає в межах розмови. | Швидке питання або невелика правка. |
| Autopilot | Copilot сам продовжує роботу й вирішує наступний крок. | Зрозуміла задача, де потрібна тривала автономна робота. |
| Fleet | Copilot щоразу сам ділить задачу між субагентами. | Паралельне дослідження або незалежні частини роботи. |
| Dynamic Workflow | Автор заздалегідь задає етапи, умови, передачу результатів і ліміти. | Повторюваний процес, який має проходити однаково й бути контрольованим. |
Головна відмінність — відтворюваність. Агенти все ще можуть дати різні висновки, але маршрут не вигадується заново в кожному запуску. Це ближче до програмованого конвеєра з AI-вузлами, ніж до магічного «рою агентів».
Як влаштований Dynamic Workflow
- Детермінований старт. Код може отримати список змінених файлів, прочитати конфігурацію або запустити дозволену команду.
- Поділ на задачі. Великі набори файлів розбиваються на незалежні групи, які можна обробити паралельно.
- Робота агентів. Кожен агент отримує вузьке завдання й повертає результат у заданому форматі.
- Перевірка. Інший агент або звичайний код відсіює дублікати, перевіряє структуру й порівнює висновки.
- Контрольна точка. Workflow може поставити процес на паузу перед зміною коду, публікацією чи іншою дією.
- Підсумок. Результати збираються в один звіт, який можна показати в застосунку, записати у файл або використати в наступному етапі.
GitHub дозволяє агентам повертати структуровані результати; якщо формат неправильний, Copilot може попросити агента виправити його. Це робить наступні етапи менш залежними від вільного тексту. Схожа ідея використовується в Structured Outputs, але тут контракт є частиною багатоетапного процесу.
Практика: workflow для рев’ю змінених файлів
Почніть не з коду extension, а з чіткого опису. У застосунку Copilot Dynamic Workflows доступні без додаткового налаштування. У Copilot CLI спочатку увімкніть експериментальні можливості:
copilot --experimental
# Або всередині інтерактивної сесії:
/experimental on
Потім попросіть Copilot створити workflow. Промпт нижче навмисно обмежує масштаб і не дозволяє агентам автоматично редагувати файли.
Після створення запитайте What dynamic workflows are available? і переконайтеся, що review-changed зареєстрований. Створення workflow не запускає його автоматично.
Як запускати та повторювати workflow
В інтерактивній сесії достатньо природної команди:
Run the review-changed dynamic workflow on this repository
with an AI credit limit of 150.
Copilot запускає процес у фоновому режимі, тому в застосунку можна продовжувати роботу. Для повторюваного запуску з термінала використовуйте окрему команду:
copilot workflow run review-changed \
--args '{"base":"main"}' \
--allow-tool=read \
--result-file review-results.json
Назви полів у --args залежать від входів конкретного workflow. --result-file записує лише успішно повернутий результат; прогрес і технічні події не змішуються з JSON. Якщо запуск зупинився, впав або був перерваний, наявний файл результату не перезаписується.
Щоб поділитися workflow з командою, його extension можна зберегти в .github/extensions/ репозиторію. Для особистого використання в усіх проєктах — у ~/.copilot/extensions/. Після оновлення визначення команді треба отримати зміни й перезавантажити extensions.
Ліміти агентів, часу й AI credits
Dynamic Workflow може запустити багато агентів і швидко витратити помітну кількість AI credits. GitHub дає чотири типи обмежень: одночасні субагенти, загальна кількість субагентів, активний час і приблизна максимальна кількість AI credits.
Особисті типові значення в Copilot CLI задаються через /settings:
/settings workflows.defaultLimits.maxConcurrentSubagents 3
/settings workflows.defaultLimits.maxTotalSubagents 5
/settings workflows.defaultLimits.timeoutSeconds 1200
/settings workflows.defaultLimits.maxAiCredits 150
Ліміт із промпту має вищий пріоритет за значення в коді workflow та особисті налаштування. Важливий нюанс: AI credits враховуються із затримкою, тому вже запущена робота може трохи перевищити вказану межу. Це приблизний максимум, а не фінансово жорстка стеля.
Дозволи та безпека
Субагенти використовують систему дозволів Copilot CLI й успадковують дозволи сесії, яка їх запустила. В інтерактивній роботі новий запит на доступ з’являється як звичайне підтвердження. Але copilot workflow run не показує такі запити: необхідні права треба видати наперед через параметри на кшталт --allow-tool або --allow-url, а непогоджені дії будуть відхилені.
- Давайте мінімальні права. Для рев’ю достатньо читання; не додавайте запис, мережу або shell без конкретної потреби.
- Перевіряйте extension як код. Він може виконувати власну логіку поза запитами агентів. Не завантажуйте невідомий workflow лише через переконливу назву.
- Не передавайте секрети. Токени, ключі й production-конфігурація не мають опинятися в промптах або результатах. Скористайтеся нашим гайдом із безпеки API-ключів.
- Ставте паузу перед змінами. Видалення, публікація, merge, деплой і зміна доступів повинні мати окрему контрольну точку.
- Обмежуйте контекст. Агент для фронтенду не потребує доступу до всієї інфраструктури чи приватних журналів.
Як перевірити, що workflow справді корисний
Виконайте один і той самий обмежений тест двічі: вручну через звичайний Copilot Chat і через Dynamic Workflow. Порівнюйте не красу відповіді, а відтворюваність процесу.
| Перевірка | Ознака успіху |
|---|---|
| Масштаб | Обробляються лише задані файли, без випадкового розширення задачі. |
| Структура | Усі агенти повертають однакові поля, а не різні есе. |
| Докази | Знахідка містить файл, сценарій збою й перевірювану причину. |
| Дублікати | Одна проблема не повторюється в підсумку тричі. |
| Ліміти | Кількість агентів, час і credits видно та залишаються в очікуваних межах. |
| Безпека | Жоден файл не змінено без запланованого підтвердження. |
У CLI команда /workflows показує активні й недавні запуски, етап, час, кількість субагентів та витрачені AI credits. Запуск можна поставити на паузу або скасувати. Після паузи чи зупинки через ліміт його можна продовжити, використовуючи збережені результати завершених кроків; скасований запуск відновити не можна.
Типові помилки
- Автоматизувати одноразову дрібницю. На створення й тестування workflow піде більше часу, ніж на звичайний промпт.
- Написати «перевір усе». Без меж агенти дублюють роботу, витрачають credits і дають нечіткий підсумок.
- Запустити десять агентів одразу. Більше паралельності не гарантує кращого результату; почніть із двох-трьох.
- Дозволити автоматичні правки. Спершу відокремте пошук проблем від їх виправлення.
- Довіритися public preview як стабільному API. Зберігайте workflow у репозиторії, фіксуйте очікувану поведінку й перевіряйте changelog після оновлення CLI.
- Запускати недовірений extension. Це код із реальними дозволами, а не пасивний текстовий шаблон.
Чекліст перед командним використанням
- Задача повторювана й справді потребує кількох етапів.
- Детерміновані команди відокремлені від роботи агентів.
- Кожен агент має вузьку роль і структурований формат результату.
- Вказані максимальні concurrent і total subagents.
- Задані timeout та ліміт AI credits.
- Workflow перевірено на двох-трьох файлах.
- Дозволи мінімальні й видані явно.
- Перед записом, merge або deploy є людське підтвердження.
- Extension збережений у контрольованому репозиторії й переглянутий як код.
- Результат перевіряється тестами та відповідальною людиною.
Поширені запитання
Чи Dynamic Workflow — це просто Fleet із шаблоном?
Ні. Fleet доручає Copilot самостійно поділити задачу між агентами. Dynamic Workflow виконує заздалегідь визначений кодом процес із конкретними етапами, умовами, межами й передачею результатів.
Чи можна запускати workflow у CI?
Так, GitHub документує програмний запуск через CLI. Але спершу треба налаштувати автентифікацію, явно дозволити потрібні інструменти та URL і використовувати тільки довірені extensions.
Чи доступна функція на безкоштовному Copilot?
GitHub заявляє, що Dynamic Workflows доступні на всіх планах Copilot. Водночас фактичні AI credits і доступні моделі залежать від плану, а сама функція поки перебуває в public preview.
Чи замінює це GitHub Actions?
Ні. Actions краще підходить для повністю детермінованих перевірок і збірок. Dynamic Workflow доречний там, де між командами потрібен аналіз, судження агента, зіставлення висновків або людська контрольна точка.
Перевірені першоджерела
Хочеш перевірити свій workflow до запуску?
Поділися описом етапів без ключів і приватних даних у Telegram-чаті «Вайб-Кодинг». Разом знайдемо зайву автономність, слабкі перевірки та небезпечні дозволи.
Обговорити в Telegram