Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Status: Eksperymentalne. Dodano w 2026.1.9.
Omówienie
Grupy broadcast umożliwiają wielu agentom jednoczesne przetwarzanie tej samej wiadomości i odpowiadanie na nią. Pozwala to tworzyć wyspecjalizowane zespoły agentów, które współpracują w jednej grupie WhatsApp lub DM — wszystko przy użyciu jednego numeru telefonu. Obecny zakres: tylko WhatsApp (kanał web). Grupy broadcast są oceniane po listach dozwolonych kanałów i regułach aktywacji grup. W grupach WhatsApp oznacza to, że broadcast następuje wtedy, gdy OpenClaw normalnie by odpowiedział (na przykład: po wzmiance, zależnie od ustawień grupy).Przypadki użycia
1. Wyspecjalizowane zespoły agentów
1. Wyspecjalizowane zespoły agentów
Wdrażaj wielu agentów z atomowymi, skoncentrowanymi odpowiedzialnościami:Każdy agent przetwarza tę samą wiadomość i przedstawia swoją wyspecjalizowaną perspektywę.
2. Obsługa wielu języków
2. Obsługa wielu języków
3. Przepływy pracy zapewniania jakości
3. Przepływy pracy zapewniania jakości
4. Automatyzacja zadań
4. Automatyzacja zadań
Konfiguracja
Podstawowa konfiguracja
Dodaj sekcję najwyższego poziomubroadcast (obok bindings). Klucze to identyfikatory peer WhatsApp:
- czaty grupowe: JID grupy (np.
120363403215116621@g.us) - DM: numer telefonu E.164 (np.
+15551234567)
Strategia przetwarzania
Kontroluj, jak agenci przetwarzają wiadomości:- parallel (domyślnie)
- sequential
Wszyscy agenci przetwarzają jednocześnie:
Pełny przykład
Jak to działa
Przepływ wiadomości
Jeśli znajduje się na liście broadcast
- Wszyscy wymienieni agenci przetwarzają wiadomość.
- Każdy agent ma własny klucz sesji i izolowany kontekst.
- Agenci przetwarzają równolegle (domyślnie) lub sekwencyjnie.
Grupy broadcast nie omijają list dozwolonych kanałów ani reguł aktywacji grup (wzmianki/polecenia/itp.). Zmieniają tylko to, którzy agenci są uruchamiani, gdy wiadomość kwalifikuje się do przetwarzania.
Izolacja sesji
Każdy agent w grupie broadcast utrzymuje całkowicie osobne:- Klucze sesji (
agent:alfred:whatsapp:group:120363...vsagent:baerbel:whatsapp:group:120363...) - Historia rozmowy (agent nie widzi wiadomości innych agentów)
- Workspace (osobne sandboxy, jeśli skonfigurowano)
- Dostęp do narzędzi (różne listy allow/deny)
- Pamięć/kontekst (osobne IDENTITY.md, SOUL.md, itp.)
- Bufor kontekstu grupy (ostatnie wiadomości grupowe używane jako kontekst) jest współdzielony per peer, więc wszyscy agenci broadcast widzą ten sam kontekst po wyzwoleniu
- Różne osobowości
- Różny dostęp do narzędzi (np. tylko do odczytu vs. odczyt i zapis)
- Różne modele (np. opus vs. sonnet)
- Różne zainstalowane Skills
Przykład: izolowane sesje
W grupie120363403215116621@g.us z agentami ["alfred", "baerbel"]:
- Kontekst Alfreda
- Kontekst Bärbel
Najlepsze praktyki
1. Utrzymuj agentów skoncentrowanych
1. Utrzymuj agentów skoncentrowanych
Projektuj każdego agenta z jedną, jasną odpowiedzialnością:✅ Dobrze: Każdy agent ma jedno zadanie. ❌ Źle: Jeden ogólny agent “dev-helper”.
2. Używaj opisowych nazw
2. Używaj opisowych nazw
Jasno pokaż, co robi każdy agent:
3. Skonfiguruj różny dostęp do narzędzi
3. Skonfiguruj różny dostęp do narzędzi
Daj agentom tylko te narzędzia, których potrzebują:
reviewer ma dostęp tylko do odczytu. fixer może czytać i zapisywać.4. Monitoruj wydajność
4. Monitoruj wydajność
Przy wielu agentach rozważ:
- Użycie
"strategy": "parallel"(domyślnie) dla szybkości - Ograniczenie grup broadcast do 5-10 agentów
- Użycie szybszych modeli dla prostszych agentów
5. Obsługuj awarie z gracją
5. Obsługuj awarie z gracją
Agenci zawodzą niezależnie. Błąd jednego agenta nie blokuje pozostałych:
Zgodność
Dostawcy
Grupy broadcast obecnie działają z:- ✅ WhatsApp (zaimplementowane)
- 🚧 Telegram (planowane)
- 🚧 Discord (planowane)
- 🚧 Slack (planowane)
Routing
Grupy broadcast działają obok istniejącego routingu:GROUP_A: Odpowiada tylko alfred (normalny routing).GROUP_B: Odpowiadają agent1 ORAZ agent2 (broadcast).
Pierwszeństwo:
broadcast ma priorytet nad bindings.Rozwiązywanie problemów
Agenci nie odpowiadają
Agenci nie odpowiadają
Sprawdź:
- Identyfikatory agentów istnieją w
agents.list. - Format identyfikatora peer jest poprawny (np.
120363403215116621@g.us). - Agenci nie znajdują się na listach deny.
Odpowiada tylko jeden agent
Odpowiada tylko jeden agent
Przyczyna: Identyfikator peer może znajdować się w
bindings, ale nie w broadcast.Rozwiązanie: Dodaj go do konfiguracji broadcast albo usuń z bindings.Problemy z wydajnością
Problemy z wydajnością
Jeśli przy wielu agentach działa wolno:
- Zmniejsz liczbę agentów na grupę.
- Użyj lżejszych modeli (sonnet zamiast opus).
- Sprawdź czas uruchamiania sandboxa.
Przykłady
Przykład 1: Zespół przeglądu kodu
Przykład 1: Zespół przeglądu kodu
- code-formatter: “Naprawiono wcięcia i dodano podpowiedzi typów”
- security-scanner: “⚠️ Luka SQL injection w linii 12”
- test-coverage: “Pokrycie wynosi 45%, brakuje testów dla przypadków błędów”
- docs-checker: “Brak docstringa dla funkcji
process_data”
Przykład 2: Obsługa wielu języków
Przykład 2: Obsługa wielu języków
Dokumentacja API
Schemat konfiguracji
Pola
Jak przetwarzać agentów.
parallel uruchamia wszystkich agentów jednocześnie; sequential uruchamia ich w kolejności tablicy.JID grupy WhatsApp, numer E.164 lub inny identyfikator peer. Wartością jest tablica identyfikatorów agentów, którzy powinni przetwarzać wiadomości.
Ograniczenia
- Maksymalna liczba agentów: Brak twardego limitu, ale 10+ agentów może działać wolno.
- Współdzielony kontekst: Agenci nie widzą odpowiedzi innych agentów (celowo).
- Kolejność wiadomości: Odpowiedzi równoległe mogą nadejść w dowolnej kolejności.
- Limity szybkości: Wszyscy agenci wliczają się do limitów szybkości WhatsApp.
Przyszłe ulepszenia
Planowane funkcje:- Tryb współdzielonego kontekstu (agenci widzą odpowiedzi innych agentów)
- Koordynacja agentów (agenci mogą sygnalizować sobie nawzajem)
- Dynamiczny wybór agentów (wybór agentów na podstawie treści wiadomości)
- Priorytety agentów (niektórzy agenci odpowiadają przed innymi)