Обзор мессенджеров
Hermes Agent поддерживает более 20 мессенджеров через единую архитектуру Messaging Gateway. Это позволяет общаться с агентом из Telegram, Discord, Slack, WhatsApp, электронной почты, SMS и множества других платформ.
Архитектура Messaging Gateway
Все платформы подключаются к ядру Hermes через единый gateway-слой. Каждый мессенджер реализует адаптер, который преобразует входящие сообщения в стандартный формат и передаёт их агенту. Ответы автоматически форматируются под целевую платформу.
Ключевые особенности архитектуры:
- Единая сессия — история диалога сохраняется между всеми платформами
- Управление доступом — whitelist пользователей, DM-паринг с одноразовыми кодами, разграничение ролей admin/user
- Прерывание — сообщение во время работы агента прерывает его; доступны режимы queue и steer
- Фоновые сессии — команда /background запускает отдельный экземпляр для длительных задач
Поддерживаемые платформы
Основные мессенджеры
- Telegram — Bot API, группы, кнопки, inline-режим, голосовые сообщения с авто-транскрипцией
- Discord — Bot API, серверы, каналы, slash-команды, Message Content Intent обязателен
- Slack — Bot Token и Socket Mode, поддержка DM и публичных каналов (требуется событие
message.channels) - WhatsApp — через WhatsApp Web bridge, не требует Business API
- Signal — через signal-cli, end-to-end шифрование
- Microsoft Teams — Bot Framework, корпоративная интеграция
- LINE — японский мессенджер с Messaging API
Протоколы и открытые стандарты
- Matrix — Client-Server API, федеративный протокол, end-to-end шифрование
- Mattermost — REST API, self-hosted альтернатива Slack
- Email — IMAP/SMTP через Himalaya CLI, полноценная почтовая интеграция
- SMS — через Twilio, поддержка двухсторонних сообщений
Китайские платформы
- DingTalk (钉钉) — корпоративный мессенджер Alibaba
- Feishu / Lark (飞书) — корпоративная платформа ByteDance
- WeCom (企业微信) — корпоративный WeChat от Tencent
- Weixin (微信) — потребительский WeChat
- QQ Bot — китайский мессенджер Tencent
- Yuanbao (元宝) — AI-платформа Tencent
Apple и умный дом
- BlueBubbles — iMessage на macOS, полная поддержка синих/зелёных пузырей
- Home Assistant — интеграция с умным домом, автоматизация через HA API
Программные интерфейсы
- API Server — REST API для интеграции с любыми приложениями, включая Open WebUI
- Webhooks — входящие webhook-триггеры для автоматизации (
hermes webhook subscribe) - Open WebUI — подключается через API Server adapter
Сравнение платформ
| Платформа | Тип | Группы | Голос | Файлы | Buttons | Self-hosted |
|---|---|---|---|---|---|---|
| Telegram | Bot API | ✅ | ✅ | ✅ | ✅ | — |
| Discord | Bot API | ✅ | — | ✅ | ✅ | — |
| Slack | Bot/Socket | ✅ | — | ✅ | ✅ | — |
| Web bridge | ✅ | ✅ | ✅ | — | — | |
| Signal | signal-cli | ✅ | — | ✅ | — | ✅ |
| Matrix | Client-Server | ✅ | — | ✅ | — | ✅ |
| Mattermost | REST API | ✅ | — | ✅ | ✅ | ✅ |
| IMAP/SMTP | — | — | ✅ | — | ✅ | |
| SMS (Twilio) | REST API | — | — | — | — | — |
| Teams | Bot Framework | ✅ | — | ✅ | ✅ | — |
| LINE | Messaging API | ✅ | — | ✅ | ✅ | — |
| Home Assistant | HA API | — | ✅ | — | ✅ | ✅ |
| BlueBubbles | iMessage | ✅ | — | ✅ | — | ✅ |
| DingTalk | Open API | ✅ | — | ✅ | ✅ | — |
| Feishu/Lark | Open API | ✅ | — | ✅ | ✅ | — |
| WeCom | Corp API | ✅ | — | ✅ | ✅ | — |
| Weixin | API | ✅ | — | ✅ | — | — |
| API Server | REST | — | — | ✅ | — | ✅ |
| Webhooks | HTTP | — | — | — | — | ✅ |
Общая настройка
Подключение мессенджеров выполняется через секцию gateway в конфигурационном файле ~/.hermes/config.yaml. Для каждой платформы указываются токены и параметры доступа.
Основные шаги настройки:
- Запустите
hermes gateway setupдля интерактивной настройки - Создайте бота на целевой платформе и получите токен API
- Добавьте токен в config.yaml или .env
- Настройте whitelist пользователей через переменные ALLOWED_USERS
- Запустите
hermes gateway installдля установки фоновой службы - Gateway автоматически подключит все настроенные платформы
Для управления доступом можно использовать DM-паринг: неизвестные пользователи получают одноразовый код при первом обращении, который администратор подтверждает командой hermes pairing approve. Роли позволяют разграничить доступ к slash-командам между администраторами и обычными пользователями на каждой платформе отдельно.
Подробнее — в разделе Messaging Platforms документации Hermes Agent.