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.
ステータス: 実験的。2026.1.9 で追加。
概要
ブロードキャストグループを使うと、複数のエージェントが同じメッセージを同時に処理し、応答できます。これにより、1 つの WhatsApp グループまたは DM 内で連携する専用エージェントチームを、1 つの電話番号だけで作成できます。 現在のスコープ: WhatsApp のみ(Web チャネル)。 ブロードキャストグループは、チャネルの許可リストとグループ有効化ルールの後に評価されます。WhatsApp グループでは、これは OpenClaw が通常応答する場合にブロードキャストが発生することを意味します(例: グループ設定に応じたメンション時など)。ユースケース
1. 専用エージェントチーム
1. 専用エージェントチーム
原子的で集中的な責務を持つ複数のエージェントをデプロイします。各エージェントは同じメッセージを処理し、それぞれの専門的な観点を提供します。
2. 多言語サポート
2. 多言語サポート
3. 品質保証ワークフロー
3. 品質保証ワークフロー
4. タスク自動化
4. タスク自動化
設定
基本設定
トップレベルのbroadcast セクションを追加します(bindings の隣)。キーは WhatsApp ピア ID です。
- グループチャット: グループ JID(例:
120363403215116621@g.us) - DM: E.164 電話番号(例:
+15551234567)
処理戦略
エージェントがメッセージを処理する方法を制御します。- parallel(デフォルト)
- sequential
すべてのエージェントが同時に処理します。
完全な例
仕組み
メッセージフロー
ブロードキャストリストに含まれる場合
- 一覧にあるすべてのエージェントがメッセージを処理します。
- 各エージェントは独自のセッションキーと分離されたコンテキストを持ちます。
- エージェントは並列(デフォルト)または順次に処理します。
ブロードキャストグループは、チャネルの許可リストやグループ有効化ルール(メンション/コマンドなど)をバイパスしません。メッセージが処理対象になったときに、どのエージェントを実行するか だけを変更します。
セッション分離
ブロードキャストグループ内の各エージェントは、次を完全に分離して保持します。- セッションキー(
agent:alfred:whatsapp:group:120363...とagent:baerbel:whatsapp:group:120363...) - 会話履歴(エージェントは他のエージェントのメッセージを見ません)
- ワークスペース(設定されている場合は別々のサンドボックス)
- ツールアクセス(異なる許可/拒否リスト)
- メモリ/コンテキスト(別々の IDENTITY.md、SOUL.md など)
- グループコンテキストバッファ(コンテキストに使われる最近のグループメッセージ)はピアごとに共有されるため、すべてのブロードキャストエージェントはトリガー時に同じコンテキストを見ます
- 異なるパーソナリティ
- 異なるツールアクセス(例: 読み取り専用と読み書き)
- 異なるモデル(例: opus と sonnet)
- 異なる Skills のインストール
例: 分離されたセッション
エージェント["alfred", "baerbel"] を持つグループ 120363403215116621@g.us の場合:
- Alfred のコンテキスト
- Bärbel のコンテキスト
ベストプラクティス
1. エージェントの責務を絞る
1. エージェントの責務を絞る
各エージェントは、単一で明確な責務を持つように設計します。✅ 良い例: 各エージェントが 1 つの役割を持つ。❌ 悪い例: 汎用的な “dev-helper” エージェント 1 つ。
2. 説明的な名前を使う
2. 説明的な名前を使う
各エージェントが何をするのか明確にします。
3. 異なるツールアクセスを設定する
3. 異なるツールアクセスを設定する
エージェントには必要なツールだけを付与します。
reviewer は読み取り専用です。fixer は読み取りと書き込みができます。4. パフォーマンスを監視する
4. パフォーマンスを監視する
エージェントが多い場合は、次を検討します。
- 速度のために
"strategy": "parallel"(デフォルト)を使う - ブロードキャストグループを 5〜10 エージェントに制限する
- より単純なエージェントには高速なモデルを使う
5. 失敗を適切に処理する
5. 失敗を適切に処理する
エージェントは独立して失敗します。1 つのエージェントのエラーが他をブロックすることはありません。
互換性
プロバイダー
ブロードキャストグループは現在、次で動作します。- ✅ WhatsApp(実装済み)
- 🚧 Telegram(予定)
- 🚧 Discord(予定)
- 🚧 Slack(予定)
ルーティング
ブロードキャストグループは既存のルーティングと併用できます。GROUP_A: alfred のみが応答します(通常のルーティング)。GROUP_B: agent1 と agent2 が応答します(ブロードキャスト)。
優先順位:
broadcast は bindings より優先されます。トラブルシューティング
エージェントが応答しない
エージェントが応答しない
確認:
- エージェント ID が
agents.listに存在する。 - ピア ID の形式が正しい(例:
120363403215116621@g.us)。 - エージェントが拒否リストに入っていない。
1 つのエージェントだけが応答する
1 つのエージェントだけが応答する
原因: ピア ID が
bindings に含まれているが、broadcast には含まれていない可能性があります。修正: ブロードキャスト設定に追加するか、バインディングから削除します。パフォーマンスの問題
パフォーマンスの問題
エージェントが多くて遅い場合:
- グループあたりのエージェント数を減らします。
- 軽量なモデルを使います(opus ではなく sonnet)。
- サンドボックスの起動時間を確認します。
例
例 1: コードレビューチーム
例 1: コードレビューチーム
- code-formatter: 「インデントを修正し、型ヒントを追加しました」
- security-scanner: 「⚠️ 12 行目に SQL インジェクション脆弱性があります」
- test-coverage: 「カバレッジは 45% で、エラーケースのテストが不足しています」
- docs-checker: 「関数
process_dataの docstring がありません」
例 2: 多言語サポート
例 2: 多言語サポート
API リファレンス
設定スキーマ
フィールド
エージェントを処理する方法です。
parallel はすべてのエージェントを同時に実行し、sequential は配列の順序で実行します。WhatsApp グループ JID、E.164 番号、またはその他のピア ID。値は、メッセージを処理するエージェント ID の配列です。
制限事項
- 最大エージェント数: ハードリミットはありませんが、10 以上のエージェントでは遅くなる可能性があります。
- 共有コンテキスト: エージェントは互いの応答を見ません(意図された設計です)。
- メッセージ順序: 並列応答は任意の順序で到着する可能性があります。
- レート制限: すべてのエージェントが WhatsApp のレート制限にカウントされます。
今後の拡張
予定されている機能:- 共有コンテキストモード(エージェントが互いの応答を見る)
- エージェントの調整(エージェントが互いにシグナルを送れる)
- 動的なエージェント選択(メッセージ内容に基づいてエージェントを選ぶ)
- エージェントの優先度(一部のエージェントが他より先に応答する)