Автоматическое ревью кода: первый проход по каждому pull request
Автоматическое ревью добавляет последовательный первый проход к каждому pull request: процесс читает дифф с окружающим контекстом, сверяет с вашими письменными стандартами и связанной задачей, оставляет комментарии к строкам только по конкретным проблемам (баги, безопасность, отсутствующие тесты, ломающие изменения), классифицирует риск PR и пишет сводку, которую ревьюер читает до открытия файлов. Люди тратят время на дизайн, а не на то, что ловит чек-лист.
Проблема
Ревью — узкое место, а его качество зависит от того, кто свободен. Маленькие PR ждут день ради формального одобрения; большие просматриваются по диагонали. Стандарты лежат в вики, которую никто не читает во время ревью.
Что меняется
Каждый PR получает содержательное первое ревью через минуты после открытия: конкретные комментарии с обоснованием, метка риска и сводка. Ревьюеры берут PR уже отсортированными, время ревью на PR падает, а стандарты наконец применяются к каждому изменению.
Триггер и 8 шагов
Триггер
Webhook GitHub / GitLab (pull request открыт или обновлён)
События pull_request opened, synchronize и ready_for_review; черновики пропускаются, если не помечены.
Принять событие PR
WebhookРепозиторий, номер PR, автор, ветки, изменённые файлы, связанная задача. PR от ботов или с меткой skip игнорируются.
Получить дифф и контекст
HTTP RequestДифф плюс полное содержимое изменённых файлов и определения, на которые они ссылаются, текст связанной задачи и документы стандартов репозитория.
Запустить статические проверки
CodeРезультаты линтеров, проверки типов и сканирования секретов из CI собираются, чтобы модель не повторяла то, что уже сообщили инструменты.
Проанализировать изменение
AI AgentПо диффу, контексту, стандартам и задаче: делает ли изменение то, что просит задача; конкретные баги и граничные случаи; безопасность; ломающие изменения API или схемы; отсутствующие или слабые тесты. Структурированный вывод: находки с файлом, строкой, серьёзностью, объяснением и предложением.
Отфильтровать важное
IFНаходки ниже порога уверенности или чисто стилевые уходят в сводку или отбрасываются; комментариями к строкам становятся только конкретные объяснённые проблемы. Число комментариев на PR ограничено.
Оставить комментарии и сводку
HTTP RequestКомментарии к точным строкам через API GitHub/GitLab плюс сводка: что делает PR, уровень риска, покрытие тестами и две-три вещи, на которые стоит посмотреть человеку.
Пометить и маршрутизировать
HTTP RequestМетка риска и области; для рискованных изменений (auth, платежи, данные) — обязательный ревьюер из CODEOWNERS.
Учиться на решениях
Schedule TriggerЕженедельно: какие комментарии закрыты, отклонены или помечены «не проблема»; точность по типам находок и корректировка порогов; повторяющиеся находки становятся предложениями правил линтера.
Ограничители
- Процесс никогда не одобряет и не мерджит; он ревьюит и помечает. Одобрение человека остаётся обязательным.
- Комментарии оставляются только по конкретным находкам с обоснованием; стилевые замечания — в сводку или никуда.
- Код отправляется провайдеру модели по вашему соглашению об обработке данных; репозитории можно исключить, доступны локальные модели.
- Рискованные области требуют именованного ревьюера-человека независимо от вердикта автоматики.
Что должен и не должен делать автоматический первый проход
Должен ловить проверяемое: изменение не соответствует задаче, не обработан null, ввод доходит до запроса без экранирования, сигнатура публичной функции изменилась без версии, у новой ветки нет теста. Не должен переформатировать код, спорить о названиях или оставлять пятнадцать комментариев на PR в десять строк. Шаг фильтрации — важнейший элемент: точность важнее полноты, потому что шумный ревьюер оказывается замьючен через неделю.
Контекст отделяет полезное от общего
Модель, глядящая только на дифф, пишет общие комментарии. Получив полные изменённые файлы, определения, которые они вызывают, связанную задачу и стандарты команды, она пишет то, что написал бы сеньор: «здесь повтор на неидемпотентном вызове», «задача просит пагинацию, а это возвращает всё». Сборка контекста до того, как модель что-то увидит, — это и есть процесс, и поэтому та же модель работает совсем иначе в хорошо собранном процессе, чем в окне чата.
Хотите, чтобы это работало без сборки?
Готовая автоматизация
$247/мес
Настраиваем, размещаем и поддерживаем процесс на n8n, подключаем к вашим инструментам. Настройка включена, отмена помесячно, JSON остаётся у вас.
Кастомная сборка
$3,500–6,000 разово
Ваши системы, правила и особые случаи. Разовая сборка на Claude и n8n с документацией и разбором.
Подписка покрывает до 500 PR в месяц в репозиториях одной организации. Стратегии контекста для монорепозиториев, локальные модели или свои стандарты, закодированные как проверки, — кастомная сборка.
Частые вопросы
Он будет одобрять pull request'ы?
Нет. Он ревьюит, комментирует, помечает и может запросить конкретного ревьюера-человека. Одобрение и мердж остаются действиями людей.
Наш код отправляется третьей стороне?
Дифф и контекст отправляются провайдеру модели по вашему соглашению об обработке данных (API Anthropic не обучается на ваших данных). Чувствительные репозитории можно исключить, доступна локальная модель как кастомная опция.
Чем это отличается от Copilot review или CodeRabbit?
Это хорошие универсальные ревьюеры. Процесс строится вокруг ваших стандартов, вашего трекера задач и вывода вашего CI, с фильтром, настроенным на отклонения вашей команды, и работает в вашем n8n, где можно поменять любой шаг.