OpenClaw は WhatsApp チャンネルをネイティブサポートしており、基盤には Baileys ライブラリを使用して QR コードペアリングで接続します。基本的な 1 対 1 のプライベートチャット機能に加えて、WhatsApp グループ機能は多くのユーザーが注目するポイントです。本記事では、WhatsApp グループチャットで AI アシスタントの動作を設定・最適化する方法を詳しく紹介します。
WhatsApp グループチャットの基本原理
OpenClaw が WhatsApp に接続すると、Bot アカウント(実際には QR コードスキャンでログインした WhatsApp 番号)をグループに追加したり、Bot がグループを作成したりできます。グループチャット環境では、Bot はグループ内のすべてのメッセージを受信しますが、デフォルトではすべてのメッセージに返信しません——これは賢明なデフォルト設定です。
グループチャットのトリガーモード
OpenClaw は WhatsApp グループチャットに柔軟なトリガーメカニズムを提供しています。openclaw.json で設定できます。
{
"channels": {
"whatsapp": {
"enabled": true,
"groups": {
"triggerMode": "mention",
"mentionKeywords": ["@ai", "@bot"],
"replyToBot": true
}
}
}
}
メンションモード(mention):メッセージに特定のキーワードが含まれている場合にのみ AI の返信がトリガーされます。WhatsApp のグループチャットには Telegram のようなネイティブの @メンション機能がないため、OpenClaw はメッセージテキスト内のキーワード検出でこの動作をシミュレートします。ユーザーが @ai や @bot を含むメッセージを送信すると、AI がトリガーされて返信します。
引用返信モード(replyToBot):replyToBot を true にすると、ユーザーが Bot の以前のメッセージを引用(返信)した場合にも AI の返信がトリガーされます。これにより自然な会話スレッドが形成されます。
全応答モード:triggerMode を all に設定すると、Bot はグループ内のすべてのメッセージに応答します。これは小規模な専用 AI グループにのみ適しており、通常のグループチャットでの使用は推奨しません。
グループホワイトリスト
Bot が特定のグループでのみ動作するように制御するため、グループホワイトリストを設定できます。
{
"channels": {
"whatsapp": {
"groups": {
"allowedGroups": [
"[email protected]",
"[email protected]"
]
}
}
}
}
WhatsApp グループの ID 形式は 数字@g.us です。OpenClaw のログで Bot が参加したグループ ID を確認できます。allowedGroups を設定しない場合、Bot は追加されたすべてのグループで応答します(トリガーモードの制限に従います)。
グループ内のユーザー権限
グループチャットのシーンでは、特定のユーザーのみが AI をトリガーできるように制限したい場合があります。OpenClaw はグループレベルのユーザー allowlist をサポートしています。
{
"channels": {
"whatsapp": {
"groups": {
"userAllowlist": ["[email protected]"],
"adminOnly": false
}
}
}
}
adminOnly を true にすると、グループ管理者のみが AI の返信をトリガーできます。大規模グループで一般メンバーによる AI リソースの濫用を防ぐのに有用です。
コンテキスト管理
グループチャットの会話コンテキストはプライベートチャットよりも複雑です。複数のユーザーが同時に AI とやり取りし、メッセージが入り混じります。OpenClaw は以下の戦略でグループチャットのコンテキストを処理します。
返信チェーンに基づくコンテキスト:ユーザーが引用返信で AI とやり取りする場合、OpenClaw は返信チェーンに沿ってコンテキストを構築し、会話の一貫性を確保します。
ユーザーごとのコンテキスト分離:各ユーザーのグループ内での AI との会話コンテキストはデフォルトで独立しています。ユーザー A の会話はユーザー B の会話履歴に影響しません。
共有コンテキストモード:すべてのユーザーが同じ会話コンテキストを共有したい場合は、"contextMode": "shared" を設定できます。これはチーム協業のシーンに適しており、全員が以前の会話を見て、それに基づいてインタラクションを続けられます。
{
"channels": {
"whatsapp": {
"groups": {
"contextMode": "per_user",
"maxContextMessages": 20
}
}
}
}
メッセージフォーマットに関する注意事項
WhatsApp は基本的なテキストフォーマット(太字、斜体など)をサポートしていますが、Markdown の完全な構文はサポートしていません。OpenClaw は AI の返信内の Markdown フォーマットを WhatsApp 互換のフォーマットに自動変換します。例えば **太字** は保持されますが、コードブロックや表はプレーンテキスト形式に簡略化されます。
グループチャットでの DM ペアリング
OpenClaw の DM ペアリング機能はグループチャットのシーンで特に有用です。グループ内のユーザーに、まず DM で Bot と身元確認を完了することを要求でき、確認後にグループチャットで AI 機能を使用できるようになります。これは追加のセキュリティ層を提供します。
{
"channels": {
"whatsapp": {
"groups": {
"requirePairing": true
}
}
}
}
有効にすると、未ペアリングのユーザーがグループチャットで AI をトリガーした際、Bot が DM を送信してペアリングフローを完了するよう案内します。
ベストプラクティス
WhatsApp グループに AI アシスタントをデプロイする際は、メッセージの洪水を避けるために全応答モードではなくメンションモードを使用することを推奨します。個々のユーザーの過度な使用を防ぐためにグループに適切なレート制限を設定してください。メモリ使用量を制御するために会話コンテキストを定期的にクリーンアップしてください。また、Bot の表示名とアバターが AI アシスタントであることを明確に示すようにし、ユーザーの混乱を避けてください。