Создание собственного AI-ревьюера кода для GitHub (Без кода, туториал по n8n)

TThe Coding Koala
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Недавно я наткнулся на инструмент под названием CodeRabbit, который, по сути, представляет собой
00:00:05AI-помощника для код-ревью. Он интегрируется с такими платформами, как GitHub, и дает
00:00:10построчную обратную связь по пул-реквестам. Идея довольно простая, но очень мощная. Как только вы открываете PR,
00:00:16ИИ автоматически проверяет ваш код, оставляет комментарии с предложениями по улучшению, указывает на баги
00:00:22и подсвечивает потенциальные проблемы. Но, как и у большинства современных ИИ-инструментов, бесплатная версия
00:00:28весьма ограничена, а полный функционал требует платной подписки. Поэтому я сделал то, что сделал бы
00:00:33любой разработчик, увидев крутой продукт. Я попробовал создать его сам. Но на этот раз вместо
00:00:38написания сотен строк кода, мы построим всю систему с помощью n8n —
00:00:44мощной платформы для автоматизации рабочих процессов. Итак, приступим. Сначала нам нужно настроить n8n. У вас
00:00:51есть два основных варианта. Первый — запустить его локально на компьютере с помощью простой
00:00:56команды, что отлично подходит, если вы хотите просто поэкспериментировать или быстро протестировать воркфлоу.
00:01:01Однако, если вы хотите, чтобы автоматизация работала в фоновом режиме и была доступна 24/7,
00:01:06то в итоге вам придется где-то ее хостить. Можно использовать n8n Cloud — это
00:01:12официальный управляемый хостинг. Но лично мне он показался дороговатым, так как цена
00:01:17начинается примерно с $20 в месяц и растет в зависимости от объема автоматизации.
00:01:23К тому же, настройка n8n с нуля на сервере иногда может быть сложной, если вы
00:01:28не знакомы с конфигурацией серверов. Так что, если вам нужно решение дешевле и проще
00:01:33в настройке, можно использовать Hostinger, который также является спонсором сегодняшнего видео. Что вам нужно сделать —
00:01:39это кликнуть по первой ссылке в описании, которая приведет вас прямо на страницу самохостинга n8n в Hostinger.
00:01:44Если прокрутите вниз до раздела с ценами, вы увидите, что тарифы на самом деле
00:01:50очень доступные по сравнению с n8n Cloud. Но цена — не единственное преимущество. Когда вы
00:01:56хостите n8n на VPS от Hostinger, вы получаете неограниченное количество воркфлоу, полный контроль над данными
00:02:03и предсказуемую стоимость, так как вы не платите за объем использования. Еще один большой плюс в том, что
00:02:08Hostinger предлагает установку в один клик, так что ваш экземпляр n8n заработает за считанные минуты
00:02:14без возни со сложными этапами инсталляции. Для этого урока я рекомендую выбрать тариф KVM 2,
00:02:20который является самым популярным и дает достаточно ресурсов для комфортной работы нескольких
00:02:25воркфлоу. Выбрав тариф, вы попадете на страницу оплаты, где сможете выбрать
00:02:31срок подписки. Обычно выбор 12 или 24 месяцев дает лучшую выгоду. Если прокрутите
00:02:37ниже, вы сможете выбрать регион сервера, а в разделе операционной системы
00:02:42заметите, что n8n уже предварительно выбран. И кстати, если хотите дополнительную скидку,
00:02:48можете использовать мой купон DECODINGCOALATEN, чтобы получить еще 10% скидки. После этого просто
00:02:54создайте аккаунт, если у вас его еще нет, введите платежные данные и завершите
00:02:58оплату. Как только платеж пройдет, вас перенаправят на страницу настройки VPS, где нужно
00:03:04ввести пароль root для вашего сервера. Спустя мгновение ваш VPS будет готов, и вы
00:03:10увидите его в панели управления Hostinger. Вот и всё. Теперь мы можем сосредоточиться
00:03:16на самом интересном — создании нашего воркфлоу. Как только VPS готов, нажмите "Manage App",
00:03:22создайте аккаунт n8n (если еще нет), и вы попадете в личный кабинет.
00:03:27Внутри панели управления при создании воркфлоу у вас обычно есть два варианта. Вы можете либо
00:03:33начать полностью с чистого листа, либо использовать готовый шаблон, который кто-то
00:03:38уже создал. На самом деле, для этого ИИ-ревьюера кода GitHub мы тоже возьмем существующий шаблон и
00:03:44настроим его под свои нужды. Итак, давайте импортируем шаблон. Вы можете либо
00:03:50импортировать его напрямую, либо скопировать шаблон в буфер обмена и вставить в
00:03:55редактор воркфлоу. Я выберу вариант с буфером обмена. Теперь приступим к работе над воркфлоу.
00:04:01Начнем с первого узла. Это триггер GitHub, который, по сути, слушает
00:04:06события, происходящие в вашем репозитории GitHub. Чтобы настроить его, просто дважды кликните по узлу и
00:04:11создайте новые учетные данные. Вы увидите два варианта подключения аккаунта GitHub. Я выберу
00:04:17вариант OAuth2. Чтобы получить нужные данные, зайдите в настройки GitHub, прокрутите до
00:04:23Developer Settings, откройте OAuth Apps и создайте новое OAuth-приложение. Дайте ему имя.
00:04:30А в качестве Callback URL просто скопируйте Redirect URL из n8n и вставьте его туда. После регистрации
00:04:36приложения GitHub сгенерирует Client ID, также вы сможете создать Client Secret. Скопируйте оба
00:04:42этих значения и вставьте их в поля учетных данных в n8n. Затем нажмите "Connect" и авторизуйте
00:04:48приложение. После подключения просто введите владельца и название репозитория и убедитесь,
00:04:54что тип события установлен на "Pull Request". Теперь воркфлоу будет автоматически отслеживать PR,
00:05:00созданные в этом репозитории. Следующий узел в нашем воркфлоу отвечает за получение
00:05:06различий (diff) файлов из пул-реквеста. Когда создается PR, возникают изменения между
00:05:11старым и новым кодом, и этот узел извлекает эти изменения, чтобы наш ИИ мог их проанализировать.
00:05:17После этого у нас идет JavaScript-узел под названием "Create Target Prompt". Он готовит промпт,
00:05:23который будет отправлен модели ИИ. Внутри кода вы увидите переменную "user message",
00:05:29содержащую инструкции для ИИ. Прелесть в том, что вы можете настроить этот промпт как угодно,
00:05:34в зависимости от того, насколько строгим или детальным должно быть ревью. Далее идет узел агента ревью,
00:05:40который непосредственно отправляет запрос модели ИИ. Изначально шаблон
00:05:45подключается к модели OpenAI и также использует Google Таблицы для правил написания кода.
00:05:51Но в этом уроке мы будем использовать модель Google Gemini, так что мы можем удалить узел Google Таблиц и
00:05:57заменить модель OpenAI на чат-модель Gemini. Вам нужно лишь вставить свой API-ключ Gemini,
00:06:04и теперь Gemini будет заниматься проверкой кода. На данный момент наш воркфлоу уже делает почти всю
00:06:10тяжелую работу. Он ловит пул-реквесты, извлекает измененный код, создает промпт
00:06:16и отправляет его ИИ для анализа. Теперь нам нужно отправить результаты обратно в GitHub. Следующий
00:06:22узел называется "GitHub Robot", и именно он отвечает за публикацию комментариев прямо
00:06:27в пул-реквесте. Снова используем учетные данные GitHub, настроенные ранее, вводим
00:06:32данные репозитория и выбираем тип события "Comment". Наконец, у нас есть последний узел GitHub,
00:06:39который добавляет метку (label), чтобы было понятно, что комментарий оставлен нашим ИИ-ревьюером. Кликните по нему
00:06:44дважды и заполните ту же информацию, что и раньше. Вы также можете отредактировать название метки. Вот и всё.
00:06:50Наш воркфлоу готов. Перед тестированием давайте его опубликуем. Нажмите "Publish" вверху,
00:06:56дайте название, и готово. Теперь протестируем. Я использую репозиторий Quizify —
00:07:03это проект генератора ИИ-квизов. Для теста я намеренно добавлю
00:07:09плохой код, чтобы ИИ было за что зацепиться. Перед отправкой изменений убедитесь, что создали
00:07:16отдельную ветку, чтобы можно было открыть пул-реквест. Как только ветка отправлена, создаем PR.
00:07:21Теперь, если всё настроено верно, наш воркфлоу должен сработать автоматически. И, как
00:07:30видите, ИИ уже проанализировал код и начал оставлять комментарии прямо в пул-реквесте.
00:07:36Каждый раз, когда вы будете открывать новый PR в будущем, этот воркфлоу будет автоматически запускаться и проверять
00:07:43ваш код. Вы также можете проверить логи выполнения в n8n, чтобы убедиться, что всё прошло успешно.
00:07:49Вот так, собственно, вы можете собрать собственного ИИ-ревьюера кода для GitHub с помощью n8n,
00:07:55развернутого на Hostinger, и автоматизировать ревью за считанные минуты. Самое крутое, что это
00:08:00лишь верхушка айсберга того, что можно сделать в n8n. Как только вы начнете экспериментировать,
00:08:06вы сможете автоматизировать всё: от пайплайнов деплоя до ИИ-агентов и рабочих процессов. На этом
00:08:12всё. Спасибо Hostinger за спонсорство этого видео, обязательно загляните к ним.
00:08:17Если видео было полезным, ставьте лайк, делитесь им и подписывайтесь. Увидимся
00:08:23в следующем выпуске!

Key Takeaway

Данное руководство демонстрирует, как с помощью платформы n8n и модели Gemini создать бюджетную и мощную альтернативу платным сервисам для автоматического код-ревью.

Highlights

Создание ИИ-помощника для проверки кода на GitHub с использованием n8n без написания программного кода.

Преимущества самохостинга n8n на VPS от Hostinger по сравнению с облачной версией для неограниченной автоматизации.

Интеграция GitHub через OAuth2 для отслеживания событий пул-реквестов в реальном времени.

Использование модели Google Gemini вместо OpenAI для анализа изменений в коде (diff) и предоставления обратной связи.

Автоматизация публикации комментариев и добавления меток непосредственно в интерфейс GitHub.

Демонстрация работы системы на реальном проекте с выявлением специально допущенных ошибок.

Timeline

Введение и концепция AI-ревьюера

Автор представляет инструмент CodeRabbit как вдохновение для создания собственного помощника по проверке кода. Он объясняет, как ИИ может автоматически анализировать пул-реквесты, указывать на баги и предлагать улучшения прямо в GitHub. Основной проблемой существующих решений называется высокая стоимость подписки на полные версии. В качестве альтернативы предлагается использовать n8n — платформу для визуальной автоматизации рабочих процессов. Это позволяет разработчикам получить мощный функционал без написания сотен строк кода.

Выбор хостинга и настройка n8n

В этом разделе рассматриваются варианты запуска n8n: локально для тестов или на сервере для постоянной работы. Автор критикует официальный облачный хостинг за высокую цену и предлагает использовать VPS от Hostinger. Описываются преимущества самохостинга, включая полный контроль над данными и отсутствие лимитов на количество рабочих процессов. Процесс установки упрощен до одного клика благодаря специальным шаблонам на базе KVM 2. В конце раздела даются рекомендации по выбору тарифного плана и региона сервера для оптимальной производительности.

Интеграция с GitHub через OAuth2

После настройки сервера автор переходит к созданию воркфлоу, импортируя готовый шаблон в панель n8n. Ключевым этапом является настройка триггера GitHub, который должен реагировать на создание пул-реквестов. Подробно объясняется процесс создания OAuth-приложения в настройках разработчика GitHub для безопасного соединения. Пользователю необходимо скопировать Client ID и Client Secret, чтобы связать n8n с конкретным репозиторием. Это позволяет системе автоматически «слушать» события и начинать анализ сразу после публикации изменений.

Логика анализа кода и подключение Gemini

Разбирается внутренняя работа узлов, отвечающих за извлечение разницы в файлах (diff) между старым и новым кодом. Автор показывает узел JavaScript, где формируется системный промпт с инструкциями для искусственного интеллекта. Вместо стандартной модели OpenAI, предложенной в шаблоне, интегрируется Google Gemini через соответствующий API-ключ. Это делает систему более гибкой и позволяет настраивать строгость проверки под конкретные нужды команды. Узел агента ревью объединяет полученные данные кода с инструкциями и отправляет их на анализ нейросети.

Публикация результатов и финальное тестирование

Заключительный этап воркфлоу включает узлы для отправки комментариев обратно в GitHub и добавления специальных меток. Автор демонстрирует работу системы на примере проекта Quizify, намеренно внося ошибки в код для проверки бдительности ИИ. После открытия пул-реквеста система успешно генерирует построчные комментарии с советами по исправлению. В логах n8n можно отследить успешность каждого шага и убедиться в правильности выполнения автоматизации. В завершение подчеркивается, что n8n позволяет автоматизировать любые процессы — от деплоя до создания сложных ИИ-агентов.

Community Posts

View all posts