Коннектор
Агент в вашей сети: git-мост и хост интеграций. Токены, ключи и доступ в сеть остаются у вас.
Коннектор — небольшой агент, который вы запускаете на своей машине, в своей сети. Он делает две вещи:
- git-мост — переносит репозитории, недоступные из интернета, к нам и возвращает обратно pull request'ы;
- хост интеграций — запускает плагины из нашего каталога: трекеры задач и базы знаний, а в будущем и другие ваши системы.
Что он собой представляет
Ядро коннектора — только git-мост. Оно намеренно маленькое: его можно прочитать целиком перед тем, как впустить в свою сеть, и оно не растёт от каждой новой интеграции. Всё остальное — плагины: подписанные комплекты, которые коннектор скачивает из каталога, проверяет по подписи и запускает отдельными процессами под отдельными пользователями ОС.
ваша сеть │ наша сторона
│
ваш git ◀──локально──┐ │
│ │
ваш трекер ◀─локально┤ КОННЕКТОР │
├── ядро: git-мост ─────┼──исходящее──▶ платформа Buff
(Jira, GitLab, …) └── плагин ──┐ │
плагин ──┴─ свои uid, │
свои адреса│Три свойства этой картинки держат всё остальное:
- Только исходящие соединения. Коннектор звонит наружу сам; к вам в сеть ничего не подключается. Открывать порт наружу не требуется — даже для событий трекера (опрос работает всегда).
- Секреты не пересекают периметр. Токен git, токен трекера и ключ самого агента лежат на вашей машине. Плагин их тоже не видит: исходящий запрос собирает коннектор и подставляет туда учётные данные сам — как именно.
- Границы объявлены заранее. Куда плагину разрешено ходить и какие инструменты он отдаёт модели, видно до установки, в каталоге, и потом — в приложении.
Что уходит наружу, а что нет
| Не уходит никогда | токены доступа (git, трекер), ключ агента, содержимое ваших секретов, любые адреса и системы, которых нет в списке разрешённых |
| Уходит по вашей команде | содержимое репозиториев, которые вы отметили: импорт переносит их в ваше изолированное пространство у нас — без этого разрабатывать нечего |
| Уходит, когда к боту обратились | текст обращения, заголовок и ссылка на тикет, имя автора обращения, ключ тикета и — для вопроса из pull request — имя ветки |
| Уходит постоянно | состояние агента: версия, онлайн/офлайн, список обслуживаемых репозиториев, список подключений с их инструментами и разрешёнными адресами |
Ничего из этого не собирается «на всякий случай»: события трекера читаются только в отмеченных проектах и только при прямом обращении к боту, а отчёт о состоянии — это ровно то, что видно в приложении в разделе «Коннекторы».
С чего начать
- Скачайте и установите агент на машину, у которой есть доступ к вашему git и исходящий доступ в интернет.
- В приложении Buff откройте «Коннекторы» → «Добавить коннектор» и получите одноразовый код привязки.
- Настройте агент — через локальную страницу или терминал: провайдер git, токен, репозитории и код привязки.
- Нужен трекер — поставьте интеграцию из каталога и создайте подключение. Как это работает со стороны команды — в разделе «Интеграции с трекерами».
Добавить репозиторий, сменить токен или поправить подключение можно потом без перезапуска — изменения применяются на лету.
Разделы
| Страница | О чём |
|---|---|
| Установка | бинарь и образ, проверка подписи, привилегии, среда выполнения плагинов |
| Локальная страница | пять разделов страницы настройки: обзор, подключение, репозитории, каталог, интеграции |
| Терминал | то же самое командами — полный справочник, без графики |
| Каталог и установка плагина | что видно до установки, подпись, версии, обновление, отзыв |
| Изоляция и границы доступа | процесс на подключение, отдельный uid, разрешённые адреса, учётные данные |
| Инструменты и модель | как инструменты плагина попадают модели и почему пишущие недоступны при чтении |
| Интеграции с трекерами | обращения, команды, область видимости, ветка pull request, события |
| Источники знаний | Confluence и Figma как контекст для ответов: инструменты чтения, вопросы на странице и на макете, параметры вместо картинок |
| Jira | Data Center, Server и Cloud: версии, доступы, особенности |
| Конфиг вручную (YAML) | полный справочник файла настроек для Ansible и CI |
| Управление и удаление | проверка связи, журнал, обновление, выключение, отзыв |