Продукты

Продукты — готовые приложения-агенты, которые можно развернуть из каталога в несколько кликов: MultiAgent, Research Agent, Analytics Agent, Data Agent и Proxy Agent. Продукт ставится из диалога «Новый агент» вместе со связанным агентом — учётные данные генерируются сами, переменные подставляются заранее, а приложение и агент сами узнают друг о друге. Никакого ручного создания файлов настройки и обмена ключами.

Что такое продукт

Продукт — это папка-шаблон в каталоге продуктов (по умолчанию /project/products, можно указать свою переменной AGENT_PRODUCTS): файл описания product.json (название, описание, иконка, схема переменных), шаблон конфигурации приложения compose.yml, вспомогательные файлы и, опционально, собственный логотип (logo.svg/logo.png). Каталог читается при каждом показе: добавить продукт — значит положить папку с шаблоном в каталог, перезапуск не нужен. Повреждённый файл описания не ломает каталог — такой шаблон показывается с запасной идентичностью.

Установка со связанным агентом

Продукты разворачиваются из диалога «Новый агент»: переключатель типа предлагает карточку отдельного агента и карточку каждого продукта каталога. Диалог собирает имя, сервер, образ, порт (заранее подставлен из шаблона) и значения переменных. Переменная типа «agent» (Связанный агент) по умолчанию равна «Создать нового агента»: мастер создаёт полноценного отдельного агента тем же механизмом, что и при обычном создании, а приложение получает его адрес и ключ для связи.

У развёртывания — две записи: одна для приложения (слаг вида {шаблон}-app или объявленный appSlug) и, когда связанный агент создан, ещё одна для агента — с именем и слагом шаблона. Оба имени получают свободный вариант («Research App 2», research-app-2), если заняты на сервере. Учётные данные (логин пользователя, пароли, секреты, ключ API) генерируются сервером — для установки не нужно ничего знать заранее.

Каталог продуктов

  • Мультиагент (порт 6000) — сам MultiAgent как продукт: связанный агент по умолчанию и переменные для собственного ассистента (own-agent);
  • Исследовательский агент (Research Agent, порт 6010) — исследования и планирование; общая папка документов /project/docs и общая база Postgres, если она настроена на сервере;
  • Аналитический агент (Analytics Agent, порт 6020) — анализ и визуализация данных, со связанным агентом для функции «редактирование с помощью ИИ»;
  • Агент данных (Data Agent, порт 6030) — работа с данными: общая папка сценариев /project/scripts и Postgres;
  • Прокси-агент (Proxy Agent, порт 6040) — лёгкий прокси с собственной базой данных.

Возможности шаблона объявляются в его файле описания: sslEnvVar — поддержка самоподписанного HTTPS (переключатель SSL есть только у таких шаблонов), databaseEnvVar — строка подключения к общей базе Postgres сервера, когда она настроена (иначе приложение без проблем работает на встроенной базе), docsMount — общая папка документов связанного агента.

Связь приложение ↔ агент

Когда шаблон объявляет переменные адреса и ключа приложения (например, у research-agent это RESEARCH_AGENT_BASE_URL/RESEARCH_AGENT_API_KEY), каждый связанный агент получает в своей конфигурации две производные строки: адрес приложения для вызовов контейнер-контейнер (внутри одного сервера — адрес docker-сети, между серверами — публичный адрес) и открытый входящий ключ приложения. Строки выводятся при сборке конфигурации и пересоздаются при каждом развёртывании; один агент могут связывать несколько приложений — тогда значения объединяются через запятую (адреса и ключи — параллельные списки).

Шаблон multiagent сам объявляет связанного агента: в его конфигурацию выводятся переменные собственного ассистента (исходящие) и ключ (как отпечаток), а связанный агент получает адрес MultiAgent и открытый ключ. Подробнее — на странице Собственный ассистент.

Общая папка документов

Шаблон с docsMount делит со связанным агентом его git-управляемую папку документов: со стороны сервера — подпапка репозитория агента, подключённая к приложению по тому же пути внутри контейнера. Оба контейнера видят одни и те же файлы по одному абсолютному пути, а git агента покрывает и общие документы. Общей папки нет, когда агент не связан или живёт на другом сервере.

Управление

Продукт управляется как обычная запись агента с меткой Product: жизненный цикл (пересоздание тянет свежий образ — отдельной команды «скачать образ» нет), журналы по всей конфигурации (покрывают все сервисы стека), маршрут в Nginx. Переменные и связанный агент редактируются на вкладке Product (кнопка «Сохранить и пересоздать» применяет изменения; связь можно перенацелить, создать нового агента или отключить выбором «Нет»). Продукт не работает как обычный агент: у него нет подключения к живому каналу чатов и отражения чатов, а проверка API отвечает, что тест для продуктов не поддерживается.

← Оглавление документации