Buff Development
Buff Code

Шлюз разработчика

Для администратора: как открыть команде вход в 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 — тогда форма входа его не спросит (см. Установка).

On this page