Шлюз разработчика
Для администратора: как открыть команде вход в Buff Code через коннектор компании — конфигурация, сертификат, кого пускает шлюз и что о нём видно.
Buff Code разработчика ходит не к нам напрямую, а в коннектор вашей компании. Для этого на коннекторе включается шлюз разработчика — адрес в вашей сети, куда приходят вход, запросы к моделям и вызовы инструментов. Через тот же коннектор платформа уже работает с вашими репозиториями и системами; шлюз — ещё один его режим, а не отдельная программа.
Нужен коннектор v0.17.0 или новее (минимальные версии для отдельных возможностей — на обзорной странице).
Включить
В конфигурации коннектора добавьте блок:
developer_gateway:
listen: 0.0.0.0:8767 # где слушать
host: https://connector.company.local:8767 # как разработчики до него достучатся
tls_cert: /etc/connector/gw.crt # сертификат вашей компании
tls_key: /etc/connector/gw.keyи перезапустите коннектор. В журнале появится строка
developer gateway: listening on 0.0.0.0:8767 (https), а в кабинете, в карточке этого
коннектора, — строка «Вход для Buff Code» с адресом и кнопкой копирования.
| Ключ | Что значит |
|---|---|
listen | адрес и порт, на которых коннектор слушает шлюз |
host | адрес, который вводят разработчики; если не задан, коннектор покажет listen как есть |
tls_cert, tls_key | сертификат и ключ для HTTPS; без них шлюз работает по HTTP |
Сертификат
- Сертификат — ваш. Шлюзу нужен сертификат, которому доверяют машины разработчиков: выпущенный вашим внутренним центром сертификации или публичный. Мы сертификатов не выпускаем и в системное хранилище машин разработчиков ничего не добавляем.
- Без сертификата шлюз работает по HTTP. При каждом запуске коннектор пишет в журнал предупреждение, а кабинет показывает рядом с адресом: «Шлюз работает без TLS — токены разработчиков идут по сети открытым текстом». Так можно только для проверки на одной машине.
Кого пускает шлюз
Только участников организации, к которой привязан коннектор, вошедших из Buff Code. Коннектор проверяет каждого через Buff при первом запросе и повторяет проверку раз в минуту, поэтому устройство, отозванное в кабинете, теряет доступ к инструментам не позже чем через минуту, а к моделям — сразу.
Если разработчик вошёл в другую организацию, шлюз откажет с сообщением «этот коннектор работает для организации X, а вход выполнен в другую».
Что проходит через шлюз
| Что | Куда идёт дальше |
|---|---|
| Вход по коду и обновление токена | в Buff |
| Список организаций и проектов разработчика | в Buff |
| Запросы к модели | в Buff, к модели организации; коннектор их не читает и не хранит |
| Вызовы инструментов подключений | к подключениям этого коннектора, от имени разработчика |
| Чтение базы знаний и репозиториев проекта | в Buff |
К модели ходит Buff, коннектор только передаёт ему запрос: на тарифах OpenRouter — к стороннему провайдеру с ключом Buff, на выделенных мощностях и в индивидуальном сетапе — к модели на выделенной машине, и к сторонним провайдерам ничего не уходит. Ключи к моделям — у Buff. Токены трекеров и остальные секреты подключений остаются на коннекторе. Buff Code не получает ни того, ни другого.
Что видно администратору
- В кабинете, в карточке коннектора: адрес шлюза и предупреждение, если он без TLS.
- На локальной странице коннектора — раздел «Buff Code»: кто из разработчиков вызывал инструменты, сколько раз, сколько с ошибкой и когда в последний раз. Пока никто не вызывал, там так и написано.
- В журнале вызовов коннектора — каждый вызов инструмента с пометкой, что его сделал разработчик, и его именем.
Массовая раскатка адреса
Адрес host можно раздать разработчикам заранее переменной BUFF_CONNECTOR_URL — тогда
форма входа его не спросит (см. Установка).
Установка
Консоль buff одной командой на Linux, macOS и Windows; приложение — пакетом со страницы «Скачать». Проверка подписи, обновления и массовая раскатка.
Вход и рабочий контекст
Первый запуск Buff Code: адрес коннектора, код входа и подтверждение в кабинете; выбор организации, проекта и пространств; память по папкам; отзыв устройств.