Рецензирование PR в GitHub (cron)

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

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

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

  • Аутентифицировать gh на хосте Hermes.
  • Терминальный инструмент (для gh).
  • Пользовательский скилл для рецензирования (качество зависит от него).
  • Шлюз обмена сообщениями (для доставки сводок).
  • Cron.

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

Без вебхука, без публичной точки доступа, без какого-либо доступа извне по сети.

Замените --deliver local на --deliver telegram или --deliver discord, чтобы также получать сводку.

Компромисс по частоте: каждые 30 минут означает более быструю обратную связь, но больше повторных операций чтения различий. Еженощный режим — самый экономичный вариант.

Сессии cron всегда новые — агент не помнит предыдущие рецензии. Если нужна преемственность (например, «Я уже оставил комментарий к этой строке»), закодируйте это в скилле рецензирования как правило на предварительную проверку существующих комментариев.

  1. Завершите аутентификацию GitHub CLI на хосте Hermes.
   gh auth login                    # needs repo scope
   gh auth status                   # verify

  1. Создать скилл для рецензирования, в котором будут учтены ваши стандарты. Разместите его в ~/.hermes/skills/pr-review/.
   ~/.hermes/skills/pr-review/
     SKILL.md          # review criteria, style rules, what to flag

  1. Запустите шлюз, чтобы cron работал автоматически.
   hermes gateway install

  1. Создать задание cron.
   hermes cron create "*/30 * * * *" \
     "Review open PRs on YOUR_ORG/YOUR_REPO opened or updated in the last
      30 minutes. For each one: gh pr diff <num>, evaluate against the
      pr-review skill, then post a review comment with gh pr review.
      If nothing new, respond [SILENT]." \
     --skills pr-review \
     --name "PR review (cron)" \
     --deliver local

Подсказки.

Более легкий ежедневный вариант, который лишь формирует сводку, а не добавляет автоматические комментарии.

hermes cron create "0 9 * * *" \
  "Daily PR digest for YOUR_ORG/YOUR_REPO. List PRs opened yesterday,
   their titles, authors, and a one-line assessment (ready to merge /
   needs changes / wip). Post to home channel." \
  --name "Daily PR digest" \
  --deliver telegram

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

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

>Ресурсы

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

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