Рецензирование PR в GitHub (вебхук)

Настройте агента Hermes для рецензирования пул-реквестов GitHub через вебхук, чтобы комментарии по рецензии появлялись в PR через несколько секунд после его открытия, а повторные запросы касались только изменённых файлов.

Hermes Продвинутый Скопировали: 0
1 ресурс

Что понадобится

  • Терминальная утилита (для gh).
  • Пользовательский скилл для рецензирования.
  • Маршрут вебхука в config.yaml.
  • Публичная конечная точка с TLS.

Как применить

Всегда проверяйте подпись: поле secret в конфигурации маршрута должно совпадать с секретом вебхука GitHub, а шлюз проверяет X-Hub-Signature-256 перед отправкой запроса. Ограничьте маршрут конкретными событиями репозитория, чтобы неподписанные или неверные по репозиторию данные отклонялись сразу. Агент при этом продолжает работать с полными правами скилла, поэтому не подключайте вебхук-маршрут к скиллу, способному вносить изменения в код или закрывать задачи, если это не требуется.

Ограничьте маршрут конкретными событиями репозитория — неподписанные или неверные по репозиторию данные должны отклоняться сразу.

Агент продолжает работать с полными правами скилла. Не подключайте вебхук-маршрут к скиллу, способному вносить изменения в код или закрывать задачи, если это не требуется.

  1. Добавьте вебхук-маршрут в config.yaml под разделом platforms.webhook.extra.routes:
   platforms:
     webhook:
       extra:
         routes:
           github-pr-review:
             secret: ${GITHUB_WEBHOOK_SECRET}
             prompt: |
               A PR event fired. Validate the payload, extract the PR
               number and repo, run gh pr diff, review against the
               pr-review skill, and post a review comment. If the
               event is a synchronize, only re-review the newly
               changed files.
             skills: [pr-review]

  1. Сделайте шлюз доступным извне. Варианты: обратный прокси на вашем VPS (Caddy или nginx) с TLS перед портом шлюза, или сервис туннелирования для тестирования (Tailscale Funnel, Cloudflare Tunnel).
  2. В настройках репозитория GitHub → Вебхуки установите значение параметра Secret таким же, как в GITHUB_WEBHOOK_SECRET, а в разделе Events выберите Pull requests (и Pull request reviews, если нужно рецензирование ответов).

Подсказки: перед подключением к GitHub протестируйте маршрут с подписанным curl.

Протестируйте маршрут с подписанным curl перед подключением к GitHub:

BODY='{"action":"opened","pull_request":{"number":1},"repository":{"full_name":"YOUR_ORG/YOUR_REPO"}}'
SIG=$(echo -n "$BODY" | openssl dgst -sha256 -hmac "$GITHUB_WEBHOOK_SECRET" | awk '{print "sha256="$2}')

curl -X POST https://your-host/webhook/github-pr-review \
  -H "Content-Type: application/json" \
  -H "X-Hub-Signature-256: $SIG" \
  -d "$BODY"

Источник: aliaihub/awesome-hermes-usecases и участники проекта. Лицензия: CC-BY-4.0. Лицензия исходного материала.

Перевод и редакционная адаптация: ClawCases.

>Ресурсы

>Похожие юзкейсы

Разработка

Арбитр разрешения конфликтов слияния агентов

Разрешает конфликт слияния Git между ветками двух агентов в качестве беспристрастной третьей стороны: нейтральный арбитр, который принимает обе версии изменений и указанные намерения, после чего формирует итоговый результат слияния, не перезаписывая ни одну из сторон.

Hermes Средний
Автоматизация Общение Финансы

Трекер отчётности компаний на базе ИИ

Следите за сезоном корпоративной отчётности десятков технологических компаний без ручной проверки разных источников и запоминания дат каждого отчёта в сфере ИИ и технологий.

OpenClaw Средний
Продуктивность Общение

Персональная CRM с автоматическим поиском контактов

Автоматическое ведение персональной CRM с поиском контактов в почте и календаре, формированием утренних брифингов перед встречами и ответами на запросы по накопленной базе.

OpenClaw Средний

>Ещё на этом уровне: Продвинутый