Juror, open-source-инструмент для ИИ-ревью PR, альтернатива Greptile
Пользователь textcortex опубликовал на Hacker News проект Juror, open-source-инструмент для автоматического ревью пул-реквестов, который заявлен как открытая альтернатива коммерческому Greptile. Juror не требует отдельного приложения, аккаунта или построения индекса репозитория: он запускается прямо на GitHub Actions-раннере пользователя, и код не покидает раннер за пределами самого вызова API модели.
Вместо одной модели Juror параллельно прогоняет пул-реквест через несколько ИИ-моделей (в примерах документации, GPT-5.6, Grok 4.5, Kimi K3), каждую через её собственный нативный агентный харнесс, набор инструментов чтения и поиска по репозиторию, которым модель пользуется как обычный агент. Проект называет три проблемы одномодельных ревью-ботов: разные модели пропускают разные баги (слепые зоны), несколько моделей часто описывают один и тот же дефект разными словами (дублирование), а разработчик платит за место или PR, не видя, во что реально обошлись вычисления (непрозрачность). Находки моделей проходят через пятиступенчатый механизм слияния: бесплатная привязка находки к строке диффа, группировка по файлу и пересекающимся строкам, точное схлопывание идентичных отчётов, платная проверка схожести с моделью-арбитром для вероятных дублей и финальный аудит покрытия, который гарантирует, что каждая исходная находка попала ровно в один итоговый результат (при сбое проверки слияние отменяется, и находки публикуются по отдельности). По умолчанию публикуются все уникальные находки от уровня серьёзности P3 и выше; есть отдельный режим consensus, где находка публикуется только при единогласии всех моделей, с исключением для критичных P0/P1-находок, которые пережили дополнительную проверку-опровержение даже при поддержке лишь одной модели.
На встроенном тестовом наборе, одном PR, вручную размеченном экспертами, конфигурация Juror Fast нашла 4 из 6 (66,7%) дефектов уровня P0, P2 при точности 100%, тогда как Greptile на том же PR нашёл 1 из 6 (16,7%) дефектов при точности 50%. Авторы проекта прямо оговаривают: это разметка по одному PR, а не статистически достаточный замер, и предлагают любому воспроизвести тест командой juror benchmark --file benchmarks/platform-10359.json.
После ревью Juror оставляет в PR одно закреплённое сообщение с оценкой качества и чеком расходов. Оценка (от 1 до 5) считается по детерминированной формуле: подтверждённые P0-находки не дают моделям «проголосовать» за высокий балл, даже если сами модели уверены в диффе. В примере из документации ревью обошлось в $0,91, заняло 2 минуты 14 секунд и задействовало 3 модели. Инструмент явно не автофиксер, не линтер и не чат-интерфейс, он только разбирает дифф и публикует находки.
Отдельный акцент в документации, на честности расчёта стоимости. Каждая цифра в чеке помечена как «reported» (посчитана самим провайдером) или «estimated» (токены × цена по прайс-листу); если харнесс не даёт ни того, ни другого, Juror пишет «unknown» и помечает итог как нижнюю границу, не угадывая число. Отдельно учтены пороговые скачки цены у длинного контекста: GPT-5.6 Sol удваивает цену входных токенов целиком выше 272 тысяч токенов, у Grok 4.5 такой же порог, 200 тысяч токенов; запись в кэш у GPT-5.6 и более новых моделей стоит в 1,25 раза дороже обычного входа.
Ключевые факты
- Juror, open-source, self-hosted: работает на собственном GitHub Actions-раннере пользователя, без SaaS, аккаунта и индекса репозитория; код не покидает раннер за пределами вызова API модели.
- Несколько ИИ-моделей ревьюят PR параллельно, каждая через свой нативный агентный харнесс; находки сводятся пятиступенчатым механизмом слияния, который не даёт дублям исчезнуть бесследно.
- На единственном вручную размеченном тестовом PR Juror Fast нашёл 4/6 (66,7%) дефектов P0, P2 при 100% точности против 1/6 (16,7%) у Greptile при 50% точности; сами авторы называют это лишь предварительным замером, не статистически достаточным бенчмарком.
- После ревью публикуется одно закреплённое сообщение с оценкой 1, 5 (подтверждённые P0-находки не дают завысить балл) и чеком расходов, в примере $0,91, 3 модели, 2 минуты 14 секунд.
- Расчёт стоимости не угадывает цифры: каждое значение помечено reported/estimated/unknown, учтены удвоение цены у GPT-5.6 Sol выше 272 тыс. токенов и у Grok 4.5 выше 200 тыс., а также надбавка 1,25× за запись в кэш у GPT-5.6 и новее.
Почему это важно
Juror отвечает на три конкретные претензии к ботам-ревьюерам PR на одной модели: у каждой модели свои слепые зоны, несколько моделей задваивают одну и ту же находку разными словами, а разработчик обычно платит за место или PR, не видя реальной стоимости вычислений. Juror решает это параллельным прогоном нескольких моделей с честной дедупликацией и явным чеком расходов вместо чёрного ящика подписки.
Кому это важно
Инструмент рассчитан на команды, которые уже используют GitHub Actions и хотят более полного автоматического ревью PR без привязки к SaaS-сервису, построения индекса кода и без отдельного аккаунта, и которым важно видеть, сколько именно стоит инференс на каждый обзор, а не платить фиксированную цену за место.
Как это применить
Настройка, три шага: добавить workflow-файл .github/workflows/juror.yml, задать в GitHub Actions хотя бы один секрет с ключом провайдера (OpenAI, Anthropic, xAI или Fireworks, одного ключа достаточно для старта, каждый дополнительный добавляет модель в жюри) и открыть PR. Есть и локальный CLI (npx juror-ai review --pr 1234) для проверки без коммита workflow-файла. Конфиг .juror.yml необязателен: можно выбрать пресет (fast/high/ultra), режим публикации (all, больше находок, или consensus, выше точность за счёт согласия моделей) и плановый (не жёсткий) порог стоимости на PR.
Можно ли доверять
Заявленное преимущество над Greptile (4/6 против 1/6 найденных дефектов) опирается на один вручную размеченный PR, сами авторы прямо называют это предварительной проверкой, а не статистически достаточным бенчмарком, и публикуют методологию и корпус для самостоятельного воспроизведения. Проект открытый, что позволяет проверить и логику дедупликации, и формулу оценки, и расчёт стоимости, но независимого подтверждения результатов на большем числе PR в источнике нет.
Риски и подводные камни
Прогон нескольких моделей на PR стоит дороже одной модели, и в источнике отдельно оговорены скрытые скачки цены, удвоение стоимости у GPT-5.6 Sol и Grok 4.5 при длинном контексте и надбавка за запись в кэш, которые легко недооценить при плоском тарифе. Ключи от всех провайдеров разработчик заводит и оплачивает сам, единой подписки нет, а порог стоимости в конфиге плановый, не жёсткий лимит. Данных о числе пользователей, истории версий или о том, кто стоит за проектом, кроме организации на GitHub «juror-ai», в источнике нет.