Подключение к CI

Учётная запись-бот и секреты CI

Учётная запись-бот

Замечания приходят от имени владельца токена GIT_PROVIDER_TOKEN. Отдельный бот лучше личного токена: ревью видно сразу, увольнение сотрудника не остановит сервис, а /review от владельца токена Runner считает своим и не учитывает.

Платформа Роль бота в репозитории Где создать токен
GitLab Developer или выше; scope api User settings → Access tokens, или Project access token: Settings → Access tokens
GitFlic Минимум Developer; с Administrator Runner проверяет роли и засчитывает /review от участников Настройки профиля → токены
GitVerse Право записи в репозиторий; учётной записи нужен отдельный номер телефона Настройки профиля бота → токены

Права утверждать и сливать merge request боту не давайте. Текст модели перед публикацией нейтрализуется, но если инъекция в коде MR заставит модель написать команду, исполнить её будет нечем — это второй барьер.

Четыре секрета

Секрет Что это
CINS_PROJECT_KEY Ключ проекта — показывается один раз при выпуске, новый — на вкладке «Ключи»
GIT_PROVIDER_TOKEN Токен бота
LLM_API_KEY Ключ API основной модели
LLM_FALLBACK_API_KEY Ключ резервной модели — если она выбрана

Значения секретов не попадают ни в репозиторий, ни в панель. На «Подключении» список подстраивается под выбор модели.

Платформа Где заводить Как
GitLab Settings → CI/CD → Variables Тип Variable, флаг Masked. Protected не ставить — иначе переменные не дойдут до пайплайнов веток MR
GitFlic «Настройки» → «Настройки CI/CD» → «Переменные CI/CD» С маскированием
GitVerse «Настройки» → «Секреты и переменные» Секреты репозитория

Runner маскирует значения секретов во всех своих выводах — в логе job'а, сообщениях об ошибках и данных, которые уходят в панель.