Статус: экспериментально. Добавлено в 2026.1.9.
Обзор
Broadcast Groups позволяют нескольким агентам одновременно обрабатывать одно и то же сообщение и отвечать на него. Это позволяет создавать специализированные команды агентов, которые работают вместе в одной группе WhatsApp или личном чате, используя один номер телефона. Текущая область применения: только WhatsApp (веб-канал). Broadcast groups оцениваются после allowlist каналов и правил активации групп. В группах WhatsApp это означает, что широковещательная обработка происходит тогда, когда OpenClaw обычно ответил бы (например, при упоминании, в зависимости от настроек группы).Сценарии использования
1. Специализированные команды агентов
1. Специализированные команды агентов
Разверните несколько агентов с атомарными, сфокусированными обязанностями:Каждый агент обрабатывает одно и то же сообщение и предоставляет свою специализированную точку зрения.
2. Многоязычная поддержка
2. Многоязычная поддержка
3. Рабочие процессы контроля качества
3. Рабочие процессы контроля качества
4. Автоматизация задач
4. Автоматизация задач
Конфигурация
Базовая настройка
Добавьте раздел верхнего уровняbroadcast (рядом с bindings). Ключи — это идентификаторы peer в WhatsApp:
- групповые чаты: group JID (например,
120363403215116621@g.us) - личные чаты: номер телефона в формате E.164 (например,
+15551234567)
Стратегия обработки
Управляйте тем, как агенты обрабатывают сообщения:- parallel (по умолчанию)
- sequential
Все агенты обрабатывают сообщение одновременно:
Полный пример
Как это работает
Поток сообщений
Маршрутизация и допуск
OpenClaw применяет allowlist каналов, правила активации групп и настроенное владение привязками ACP.
Проверка broadcast
Если ни одна настроенная привязка ACP не владеет маршрутом, OpenClaw проверяет, есть ли peer ID в
broadcast.Если применяется broadcast
- Все перечисленные агенты обрабатывают сообщение.
- У каждого агента есть собственный ключ сессии и изолированный контекст.
- Агенты обрабатывают сообщение параллельно (по умолчанию) или последовательно.
Broadcast groups не обходят allowlist каналов или правила активации групп (упоминания/команды/и т. д.). Они меняют только какие агенты запускаются, когда сообщение подходит для обработки.
Изоляция сессий
Каждый агент в broadcast group поддерживает полностью отдельные:- Ключи сессий (
agent:alfred:whatsapp:group:120363...иagent:baerbel:whatsapp:group:120363...) - Историю разговора (агент не видит сообщения других агентов)
- Рабочую область (отдельные песочницы, если настроены)
- Доступ к инструментам (разные списки allow/deny)
- Память/контекст (отдельные IDENTITY.md, SOUL.md и т. д.)
- Буфер контекста группы (последние сообщения группы, используемые как контекст) является общим для каждого peer, поэтому все агенты broadcast видят один и тот же контекст при запуске
- Разные характеры
- Разный доступ к инструментам (например, только чтение или чтение-запись)
- Разные модели (например, opus или sonnet)
- Разные установленные Skills
Пример: изолированные сессии
В группе120363403215116621@g.us с агентами ["alfred", "baerbel"]:
- Контекст Alfred
- Контекст Bärbel
Лучшие практики
1. Сохраняйте фокус агентов
1. Сохраняйте фокус агентов
Проектируйте каждого агента с одной четкой ответственностью:✅ Хорошо: у каждого агента одна задача. ❌ Плохо: один универсальный агент “dev-helper”.
2. Используйте описательные имена
2. Используйте описательные имена
Сделайте так, чтобы было понятно, что делает каждый агент:
3. Настройте разный доступ к инструментам
3. Настройте разный доступ к инструментам
Давайте агентам только те инструменты, которые им нужны:
reviewer доступен только для чтения. fixer может читать и писать.4. Отслеживайте производительность
4. Отслеживайте производительность
При большом количестве агентов учитывайте:
- Использование
"strategy": "parallel"(по умолчанию) для скорости - Ограничение broadcast groups до 5-10 агентов
- Использование более быстрых моделей для более простых агентов
5. Корректно обрабатывайте сбои
5. Корректно обрабатывайте сбои
Агенты завершаются с ошибками независимо. Ошибка одного агента не блокирует остальных:
Совместимость
Провайдеры
Broadcast groups сейчас работают с:- ✅ WhatsApp (реализовано)
- 🚧 Telegram (запланировано)
- 🚧 Discord (запланировано)
- 🚧 Slack (запланировано)
Маршрутизация
Broadcast groups работают вместе с существующей маршрутизацией:GROUP_A: отвечает только alfred (обычная маршрутизация).GROUP_B: отвечают agent1 И agent2 (broadcast).
Приоритет:
broadcast имеет приоритет над обычными привязками маршрутов. Настроенные привязки ACP (bindings[].type="acp") являются эксклюзивными: когда одна из них совпадает, OpenClaw отправляет сообщение в настроенную сессию ACP вместо широковещательной рассылки с разветвлением.Устранение неполадок
Агенты не отвечают
Агенты не отвечают
Проверьте:
- ID агентов существуют в
agents.list. - Формат peer ID корректен (например,
120363403215116621@g.us). - Агенты не находятся в deny lists.
Отвечает только один агент
Отвечает только один агент
Причина: peer ID может находиться в обычных привязках маршрута, но не в
broadcast, или он может совпадать с эксклюзивной настроенной привязкой ACP.Исправление: добавьте peer, привязанные к обычным маршрутам, в конфигурацию broadcast или удалите/измените настроенную привязку ACP, если нужна широковещательная рассылка с разветвлением.Проблемы с производительностью
Проблемы с производительностью
Если работа замедляется при большом количестве агентов:
- Уменьшите количество агентов на группу.
- Используйте более легкие модели (sonnet вместо opus).
- Проверьте время запуска песочницы.
Примеры
Пример 1: команда ревью кода
Пример 1: команда ревью кода
- code-formatter: “Fixed indentation and added type hints”
- security-scanner: “⚠️ SQL injection vulnerability in line 12”
- test-coverage: “Coverage is 45%, missing tests for error cases”
- docs-checker: “Missing docstring for function
process_data”
Пример 2: многоязычная поддержка
Пример 2: многоязычная поддержка
Справочник API
Схема конфигурации
Поля
Как обрабатывать агентов.
parallel запускает всех агентов одновременно; sequential запускает их в порядке массива.WhatsApp group JID, номер E.164 или другой peer ID. Значение — массив ID агентов, которые должны обрабатывать сообщения.
Ограничения
- Максимум агентов: Жесткого ограничения нет, но 10+ агентов могут работать медленно.
- Общий контекст: Агенты не видят ответы друг друга (так задумано).
- Порядок сообщений: Параллельные ответы могут приходить в любом порядке.
- Ограничения частоты: Все агенты учитываются в ограничениях частоты WhatsApp.
Будущие улучшения
Запланированные функции:- Режим общего контекста (агенты видят ответы друг друга)
- Координация агентов (агенты могут посылать сигналы друг другу)
- Динамический выбор агента (выбор агентов на основе содержимого сообщения)
- Приоритеты агентов (некоторые агенты отвечают раньше других)