MultiAgent может получить собственного ассистента — отдельного агента, чей интерфейс встраивается прямо в страницы MultiAgent: вы общаетесь с ним в чате, не переключаясь между программами. Внизу боковой панели — блок со сводкой активных чатов, глобальная панель чата открывается с любой страницы, у ассистента есть очередь заготовленных запросов, голосовой ввод и звуковые уведомления. Подключение — это разовая настройка: задаёте адрес и ключ агента при запуске, и всё работает. Никаких экранов настройки в интерфейсе и никакого хранения данных на стороне MultiAgent.
Подключение
Ассистент подключается переменными окружения — техническими параметрами запуска, которые задаются один раз в файле настройки при установке. Нужны два независимых направления, у каждого свой ключ:
- MultiAgent → агент (исходящее) —
AGENT_API_URL(адрес агента) иAGENT_API_KEY(ключ, которым агент пускает свои автоматические клиенты). Именно эта пара включает панель чата и блок в боковой панели. Ключ хранится только на сервере MultiAgent и никогда не попадает в браузер; - Агент → MultiAgent (входящее) —
MULTIAGENT_HASH: отпечаток ключа программного интерфейса/api/agent/*, через который ассистент сам управляет серверами, агентами и инструментами MultiAgent. На стороне агента адрес Мультиагента приходит переменнойMULTIAGENT_URL, а сам ключ —MULTIAGENT_KEY.
Направления не зависят друг от друга: чтобы просто общаться с ассистентом в чате, достаточно исходящей пары «адрес + ключ агента»; а управлять MultiAgent ассистент может и без включённого чата.
Адрес агента может включать подпапку — например, когда агент стоит на том же домене под своим путём. Ассистент работает и так. Ещё одна мелочь, которую легко не заметить: на одном домене может жить несколько приложений семейства в разных подпапках — у каждого свой набор сохранённых списков чатов, значков и оформления, поэтому соседи не подменяют друг другу данные.
Боковая панель и панель чата
Интерфейс ассистента встроен в каждую страницу MultiAgent. Внизу постоянной боковой панели — блок ассистента: сводка активных чатов (таймер, расход токенов и стоимость — обновляются в реальном времени), предупреждение, если соединение с агентом пропало, и две кнопки: «Задачи (N)» — сколько долгих работ идёт и ждёт своей очереди прямо сейчас, нажатие открывает их журнал, — и «Чаты» — список чатов ассистента. Очередь заготовленных запросов открывается из поля ввода панели чата.
Панель чата — нижняя панель, открываемая с любой страницы. Это и есть поле общения с агентом: выбор модели и навыка (с цветами), кнопка промптов, микрофон для голосового ввода, ответы агента в реальном времени, карточки сообщений очереди (можно править, поставить на паузу, отменить), статистика расхода — токены, стоимость, скорость — и кнопка «Открыть в новом окне», которая открывает тот же чат в самом агенте. Выбранные модель и навык запоминаются и становятся значениями по умолчанию для новых чатов.
Все обращения к агенту идут через сервер MultiAgent — браузер с агентом напрямую не разговаривает, поэтому ключ агента не покидает сервер. Живые обновления раздаются через постоянное соединение: сервер держит одно подключение к агенту и пересылает события всем открытым браузерам. Соединение устанавливается по необходимости и само восстанавливается при разрыве.
Дерево серверов и агентов слева — тоже рабочее место. Меню строки открывается и правым щелчком по ней, и кнопкой из трёх точек у правого края, а первым пунктом в нём стоит «Открыть»: у сервера он ведёт на домашнюю страницу, у агента — на его публичный адрес. Открытие меню сначала выделяет строку, поэтому сразу видно, к чему относятся команды.
Размер шрифта из окна «Внешний вид» меняет не только переписку: текст страниц MultiAgent — таблиц, карточек и форм — тоже становится крупнее или мельче. Поля, кнопки и значки при этом остаются на месте, поэтому ничего не разъезжается.
Кнопки, вопросы и сообщения агента
Панель не только отправляет текст — она показывает всё, что агент присылает в ответ, и позволяет сразу на это ответить:
- кнопки агента — нажатие выполняется прямо в панели, а уже нажатые кнопки помечаются. Если кнопка настроена сработать сама, виден обратный отсчёт до нажатия и рядом кнопка «Отмена»;
- вопросы агента — вопрос или небольшая форма приходит карточкой с вариантами ответа; выбранный ответ отправляется агенту и продолжает его работу, а отправленный ответ остаётся виден на карточке;
- сообщения-блоки агента — текст, картинки и файлы показываются как в мессенджере: картинки сеткой, файлы отдельными плашками, вложения скачиваются прямо из папки агента;
- переходы по подзадачам — если агент запустил собственного субагента, из шапки чата можно вернуться в основной чат или перейти в чат любого его субагента;
- «Продолжить из этого сообщения» — разговор откатывается к выбранному сообщению и продолжается с него заново.
Всё это приходит по живому каналу событий — без перезагрузки страницы. Список чатов при этом тоже остаётся живым: счётчики коммитов и смена модели или навыка подтягиваются сами.
Очередь промптов
Очередь промптов — это список заготовленных запросов («промптов»), которые агент выполняет по очереди. Очередь принадлежит самому агенту, MultiAgent только показывает её: строки «текст + модель + навык» читаются и сохраняются в настройках агента, на сервере MultiAgent ничего не хранится. Ручная отправка строки создаёт чат с моделью и навыком этой строки и сразу открывает его в панели чата; заголовок созданного чата ограничен настройкой агента — максимальной длиной заголовка. Настройки AutoSend (включено/выключено, максимум одновременно активных чатов, интервал проверки, автопереход к новому чату, «Отправлять в часы пик», «Автокоммит перед отправкой», «Автоисправление отключено до завершения») — тоже настройки агента: его внутренний распорядитель сам запускает накопившиеся промпты, даже когда браузер закрыт. Очередь открывается из поля ввода панели чата — отдельной кнопки в подвале боковой панели у неё больше нет.
Очередь не даст отправить недописанную строку: когда она опустела — последнюю строку отправили или удалили — AutoSend отключается автоматически. Пустая очередь показывает строку-черновик: первый промпт пишется без клика «Новый промпт». Футер диалога подсказывает, сколько промптов ждёт и в каком порядке они уйдут: «{n} промпт(ов), сначала — нижние» с правильными русскими формами множественного числа. Правки из двух открытых вкладок не затирают друг друга — строки объединяются построчно.
Голосовой ввод и звуки
В поле ввода панели есть микрофон: проговорите сообщение, и оно отправится агенту как обычный текст. Фоновые чаты (те, что обрабатываются, пока вы закрыли панель или находитесь в другом чате) сообщают о завершении звуковым уведомлением — у открытого чата звуков нет. При первом использовании местного распознавания рядом с микрофоном на время появляются подсказки о подготовке — «установка ffmpeg» и «загрузка модели»: подготовка начинается уже при начале записи, поэтому первая расшифровка не ждёт загрузки. Голосовой ввод и проверка лицензии работают так же, как в чатах обычных агентов MultiAgent. Выключенный звук сохраняется после перезагрузки страницы и применяется сразу.
Метки чатов
Чтобы разбирать список чатов по темам, чату можно присвоить метку — короткое имя со своим цветом и значком. Набор меток создаётся в диалоге «Управление метками чатов», который открывается из фильтра списка чатов или из меню метки у самого чата: там метку можно создать, переименовать, задать ей цвет и значок из общего набора Material Symbols. Метка одна на чат — у чата либо одна метка, и она показывает его назначение, либо ни одной.
- Назначение и снятие — метка выбирается кликом по её значку в строке чата, а снимается из меню метки в шапке панели чата. Само по себе назначение метки чат не переставляет и не поднимает в списке;
- Фильтр списка — в списке чатов можно показывать только чаты с выбранной меткой, вместе с обычным поиском по тексту;
- Видно всем и сразу — метки живут у самого агента, и любое изменение сразу разъезжается по всем открытым браузерам — без перезагрузки страницы. Переименование метки меняет её у всех чатов, а удаление снимает метку со всех чатов сразу.
Если ассистент не настроен или недоступен
Блок ассистента появляется только когда заданы обе переменные AGENT_API_URL и AGENT_API_KEY. При загрузке приложение проверяет, доступен ли агент, и ведёт себя соответственно:
- Не настроено — кнопки «Новый чат» нет, панель показывает «Агент не настроен», в боковой панели — предупреждение о недостающих переменных;
- Настроено, но агент недоступен — интерфейс на месте, а над нижней частью боковой панели появляется постоянная полоса предупреждения с последней ошибкой обращения к агенту: первый же успешный ответ её убирает;
- Ключ не задан — любой запрос к агенту по программному интерфейсу отвечает ошибкой «API агента не настроен».
Ошибки не всплывают поверх интерфейса и не мешают работать: если список чатов получить не удалось, он показывает «Чатов пока нет», а открытый чат — «Не удалось загрузить чат»; последняя ошибка обращения к агенту остаётся полосой над подвалом боковой панели и уходит после первого успешного ответа. Отклонённый ключ отличается от недоступности: устаревший ключ помечается как отклонённый, а не как недоступный агент.
Отправка сообщений и настройка очереди промптов проверяют лицензию продукта: если она истекла или недействительна, MultiAgent отвечает ошибкой, а приложение открывает диалог продления лицензии.
Обратное направление: ассистент управляет MultiAgent
Ассистент может управлять самим MultiAgent: создавать серверы, разворачивать агентов и инструменты, следить за их состоянием. Ему достаточно адреса MultiAgent и ключа — доступные команды он узнаёт из каталога /api/agent (MultiAgent сам публикует список своих возможностей) и действует как любой другой автоматический клиент. Запущенные им операции видны в интерфейсе в той же ленте прогресса, что и ваши собственные.
Как продукт
Когда MultiAgent разворачивается как продукт из каталога (шаблон multiagent), ассистент подключается автоматически: при установке выбирается связанный агент (по умолчанию — «Создать нового агента»), и обе пары переменных прописываются сами, без ручной настройки: одни — в конфигурацию приложения, другие — в конфигурацию связанного агента. У него новый чат сразу стартует с менеджерским навыком MultiAgent — выбирать его вручную не нужно; если навык был унаследован от открытого чата, он сохраняется. Подробнее — на странице Продукты.