быстрый старт
Первое ревью
Путь от пустого .env до первого комментария бота в реальном Merge Request. Каждый шаг проверяемый — если контрольная точка не сходится, смотрите подсказку рядом.
что понадобитсяDocker и Docker Compose · доступ к self-hosted GitLab (права создать токен и вебхук в проекте) · ключ к LLM-провайдеру (например, Anthropic). Всё остальное — внутри образа. Быстрый старт написан по GitLab; если ваш хостинг — GitHub, шаги про токен, переменные
GITLAB_* и создание вебхука выполняйте по «Подключению к GitHub» — остальные (образ, запуск, проверка, config.yml) совпадают дословно.- Создайте токен бота в GitLabProject (или Personal) Access Token со scope
api— им бот читает дифф и пишет комментарии. Подробно — в разделе «Подключение к GitLab». - Заполните
.envСоздайте файл.envпо шаблону ниже и задайте минимум: адрес GitLab, токен, секрет вебхука и LLM-ключ..env — минимум для старта # GitLab GITLAB_BASE_URL=https://gitlab.your-company.com GITLAB_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx GITLAB_WEBHOOK_SECRET=pick-a-long-random-string # Redis (the queue) — already wired up inside docker-compose REDIS_HOST=redis REDIS_PORT=6379 # The model — your own key (see «Models and your own key») LLM_PROVIDER=anthropic ANTHROPIC_API_KEY=sk-ant-...важноGITLAB_BASE_URL— без/api/v4и без хвостового слэша.GITLAB_WEBHOOK_SECRET— минимум 8 символов, его же впишете в вебхук на шаге 5. - Поднимите контурСкачайте готовый клиентский docker-compose.yml и положите рядом с
.env. Контейнер бота + Redis (очередь) поднимаются вместе. PostgreSQL (метрики ревью) — опционален и по умолчанию выключен; для старта он не нужен.терминал curl -O https://reviewgate.dev/docker-compose.yml docker compose up -d - Проверьте, что бот жив
терминал curl http://localhost:3000/api/health # {"status":"ok","ts":...,"version":"0.1.x"}контрольная точкаОтвет{"status":"ok"}— бот поднялся. Если нет — смотрите логи:docker compose logs -f app(чаще всего невалидный.env, бот честно пишет, чего не хватает). - Подключите вебхук в проекте GitLabSettings → Webhooks: URL
https://адрес-бота/api/webhooks/gitlab, Secret token = вашGITLAB_WEBHOOK_SECRET, триггеры Merge request events и Comments (под ответы бота в тредах). Нажмите Test — ожидается ответ202. Детали и self-hosted-нюансы — здесь. - Откройте тестовый MRСоздайте Merge Request с парой изменений. Через минуту-другую бот оставит сводный комментарий и строчные замечания по диффу — кнопку Merge он при этом не трогает: по умолчанию ReviewGate только комментирует, ничего не блокирует (жёсткий severity gate включается отдельно в конфиге). За процессом удобно следить в логах:
терминал docker compose logs -f appготовоПоявился комментарий бота в MR — сквозной путь работает. Дальше настройте правила вашей команды в .reviewgate/config.yml.
Что дальше
- Конфигурация ревью — правила команды, свой промпт ревью, пресеты, severity gate.
- LLM и свой ключ — выбор модели подешевле или локальная LLM.
- Лицензия — что означает строка статуса в сводке.