Technical Context
Суть новини — не «черговий ШІ для коду», а практичний патерн: спеціалізовані агенти Claude Code запускаються у фоні та паралельно (per-item), щоб зробити PR Review глибшим за типовий лінтер/статичний аналіз і навіть ручне рев'ю. У кейсі користувач за ~2 години зібрав workflow, який знайшов кілька критичних race conditions, не помічених розробниками. Важливо й те, що вартість контролювали переведенням важких прогонів на модель Sonnet.
Технічно Claude Code підтримує сценарії, які добре лягають на CI/CD: від безпечного «read-only» аналізу (Plan Mode) до автоматичних дій у репозиторії та PR. Найцінніше — можливість рознести перевірку на кілька паралельних підагентів: один шукає конкурентні помилки та асинхронні пастки, другий — проблеми безпеки, третій — регресії продуктивності, четвертий — архітектурні порушення тощо.
Що реально доступно «з коробки»
- Claude Code Review / PR review workflow: запуск перевірки за подією pull_request (opened/synchronize), публікація коментарів у PR.
- Паралельні subagents: кілька спеціалізованих агентів, що працюють одночасно, зокрема в режимах «per-file»/«per-change».
- Інтеграція з GitHub Actions: типовий action
anthropics/claude-code-action@v1з ключем API, промптом (/review) та параметрами на кшталт--max-turns. - Контроль поведінки через проектні правила: файл
CLAUDE.md(стандарти кодстайлу, заборони, патерни, вимоги до логування/трасування). - Plan Mode: режим «спочатку план/аналіз, потім дія», корисний для зниження ризику «самовільних» змін та для економії токенів на ітераціях.
- Права та безпека: у GitHub Actions задаються мінімальні permissions (як мінімум
contents: read, частоpull-requests: writeдля коментарів).
Приклад каркаса GitHub Actions для PR review
Базовий YAML із документації (адаптується під ваш репозиторій та правила):
- Тригер: pull_request opened/synchronize
- Крок: запуск Claude Code action
- Промпт: /review
- Обмеження ітерацій:
--max-turns 5(важливо для бюджету)
У реальних впровадженнях ми зазвичай посилюємо цей каркас: додаємо фільтри шляхів (не ганяти ШІ на документації), окремі джоби на «швидкий» і «глибокий» прохід, артефакти зі звітом, і правила ескалації (наприклад, якщо знайдено перегони/lock-order проблеми — обов'язковий блок merge до підтвердження).
Чому саме race conditions «раптово знаходяться»
Race conditions часто лежать між рядками: це не синтаксис і не типи, а взаємодія потоків/корутин/черг/транзакцій, порядок операцій, скасування завдань, таймаути, повторна доставка повідомлень. Людина на рев'ю зазвичай дивиться «чи правильно вирішено задачу», а не «що буде при одночасних запитах, ретраях і деградації залежностей». Паралельні агенти дозволяють цілеспрямовано «протиснути» систему питаннями: де shared state, де небезпечна кеш-структура, де немає ідемпотентності, де порушення happens-before.
Вартість: чому токени «відлітають» і як це лікується
- Паралельність множить контекст: кожен агент читає диф/файли, формує гіпотези, просить додаткові шматки коду.
- Великі PR = дорогі PR: багато файлів, багато залежностей, багато «а покажи ще…».
- Компроміс якості/ціни: переведення частини завдань на Sonnet (як у кейсі) зазвичай дає кращу економіку для щоденного CI/CD, залишаючи «дорогу» модель для складних інцидентів або реліз-кандидатів.
Business & Automation Impact
Для бізнесу це не про «замінити розробників», а про зниження ймовірності дефектів, які дорого проявляються: прод-інциденти, деградації, витоки, неконсистентні дані, помилки білінгу. Race conditions — окрема категорія: вони погано відтворюються, «плавають», проявляються під навантаженням і створюють репутаційні та фінансові ризики.
Як змінюється архітектура CI/CD при додаванні агентного рев'ю
- Рев'ю стає багаторівневим: швидкий агентний чек на кожен PR + глибший прогін перед релізом.
- З'являється «policy-as-code»: правила в
CLAUDE.mdі шаблони промптів перетворюють стандарти компанії на виконувану специфікацію. - Зсув вліво (shift-left) складних перевірок: те, що раніше знаходилося на QA/в проді, ловиться до merge.
- Нова спостережуваність: логи агента та звіти стають частиною інженерного аудиту (чому заблокували merge, які патерни повторюються).
- Управління вартістю як частина архітектури: бюджет на токени, ліміти на turns, фільтрація за зонами ризику, маршрутизація завдань за моделями (Sonnet/«важча»).
Кому це особливо вигідно
- Продукти з високою паралельністю: фінтех, маркетплейси, логістика, будь-які системи з чергами/подіями/ретраями.
- Команди з високим PR throughput: багато змін на день, де ручне рев'ю перетворюється на вузьке місце.
- Компанії з дорогою помилкою: SLA, штрафи, критичні дані, регуляторика.
Кому це може «загрожувати»
Загроза не людям, а процесам. Якщо в компанії рев'ю — формальність, агентне рев'ю раптово почне знаходити реальні проблеми й сповільнить merge, доки ви не вибудуєте дисципліну: маленькі PR, явна архітектура конкурентності, тести на ідемпотентність, коректна робота з транзакціями та блокуваннями. Саме тому впровадження ШІ в CI/CD не можна зводити до «додали action і забули»: потрібен дизайн правил, маршрутизація перевірок та управління винятками.
На практиці компанії часто впираються у три речі: (1) агенти шумлять (false positives), (2) агенти «сліпі» без контексту архітектури, (3) бюджет токенів виходить з-під контролю. Це саме та зона, де підключається виконавець із досвідом — щоб перетворити агентний PR Review на стійку систему, а не на дорогу іграшку. У Nahornyi AI Lab ми зазвичай починаємо з карти ризиків коду та процесів, а потім будуємо архітектуру ШІ-рішень для конкретного пайплайну: що перевіряти завжди, що — за сигналами, що — лише перед релізом.
Expert Opinion Vadym Nahornyi
Найбільша цінність агентного рев'ю — не «розумні коментарі», а систематичний тиск на код з різних кутів одночасно. Це змінює якість інженерного зворотного зв'язку: замість одного рев'юера, який дивиться задачу, ви отримуєте «міні-команду» спеціалізованих перевірок, кожна з яких шукає свій клас дефектів.
У Nahornyi AI Lab ми бачимо закономірність: коли агентам дають правильні ролі (concurrency/security/perf/architecture) та обмежують контекст (тільки змінені файли + явно дозволені залежності), якість знахідок різко зростає, а шум падає. Але якщо просто увімкнути «загальний /review» на весь репозиторій, токени і час відлітають, а команда починає ігнорувати результати.
Практичні рекомендації, щоб це працювало в проді
- Декомпозуйте агента: окремий підагент під race conditions (async/locks/transactions), окремий під безпеку, окремий під перформанс.
- Робіть двоконтурний режим: Sonnet для щоденних PR, потужніша модель — за тегом/лейблом (наприклад,
release-critical). - Обмежуйте turns і контекст:
--max-turns, фільтри шляхів, заборона на «читання всього монорепо» без необхідності. - Закріплюйте правила в CLAUDE.md: що вважати критичним, як оформляти зауваження, які патерни заборонені.
- Вбудуйте механізм довіри: агент не повинен автоматично «лагодити»; нехай пропонує патч, а merge блокується тільки при відтворюваному ризику та чіткому поясненні.
Мій прогноз: хайп мине, а utility залишиться — але тільки у тих, хто оформить це як продукт всередині інженерної платформи. Агентний PR Review — це частина ШІ автоматизації розробки, і її потрібно експлуатувати як сервіс: версії промптів, тестування правил, метрики (скільки блоків merge, скільки підтверджених дефектів, скільки хибних тривог), контроль вартості.
Якщо ви хочете отримати ефект «як у кейсі» (знаходити тонкі гонки за години, а не за тижні), зазвичай потрібно не більше 1–2 тижнів на правильне налаштування під ваш стек і культуру розробки — за умови, що цим займаються люди, які розуміють і CI/CD, і конкурентність, і безпеку, і економіку токенів.
Теорія добра, але результат вимагає практики. Якщо вам потрібно зробити агентний PR Review, оптимізувати вартість (наприклад, через Sonnet), налаштувати правила та інтеграцію з GitHub Actions/внутрішніми пайплайнами — обговоріть задачу з Nahornyi AI Lab. Я, Vadym Nahornyi, відповідаю за якість архітектури та за те, щоб автоматизація за допомогою ШІ приносила вимірювану користь бізнесу, а не додавала шуму в процес.