الانتقال إلى المحتوى الرئيسي

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.

نظرة عامة

تتيح مجموعات البث لعدة وكلاء معالجة الرسالة نفسها والرد عليها في الوقت نفسه. يتيح لك هذا إنشاء فرق وكلاء متخصصة تعمل معا داخل مجموعة WhatsApp واحدة أو رسالة مباشرة واحدة، وكل ذلك باستخدام رقم هاتف واحد. النطاق الحالي: WhatsApp فقط (قناة الويب). تُقيَّم مجموعات البث بعد قوائم السماح للقنوات وقواعد تفعيل المجموعات. في مجموعات WhatsApp، يعني ذلك أن البث يحدث عندما كان OpenClaw سيرد عادة (على سبيل المثال: عند الإشارة، حسب إعدادات مجموعتك).

حالات الاستخدام

انشر عدة وكلاء بمسؤوليات ذرية ومركزة:
Group: "Development Team"
Agents:
  - CodeReviewer (reviews code snippets)
  - DocumentationBot (generates docs)
  - SecurityAuditor (checks for vulnerabilities)
  - TestGenerator (suggests test cases)
يعالج كل وكيل الرسالة نفسها ويقدم منظوره المتخصص.
Group: "International Support"
Agents:
  - Agent_EN (responds in English)
  - Agent_DE (responds in German)
  - Agent_ES (responds in Spanish)
Group: "Customer Support"
Agents:
  - SupportAgent (provides answer)
  - QAAgent (reviews quality, only responds if issues found)
Group: "Project Management"
Agents:
  - TaskTracker (updates task database)
  - TimeLogger (logs time spent)
  - ReportGenerator (creates summaries)

الإعدادات

الإعداد الأساسي

أضف قسما عالي المستوى باسم broadcast (بجوار bindings). المفاتيح هي معرفات أقران WhatsApp:
  • محادثات المجموعات: JID المجموعة (مثال: 120363403215116621@g.us)
  • الرسائل المباشرة: رقم هاتف بصيغة E.164 (مثال: +15551234567)
{
  "broadcast": {
    "120363403215116621@g.us": ["alfred", "baerbel", "assistant3"]
  }
}
النتيجة: عندما كان OpenClaw سيرد في هذه المحادثة، سيشغّل الوكلاء الثلاثة جميعا.

استراتيجية المعالجة

تحكم في كيفية معالجة الوكلاء للرسائل:
يعالج جميع الوكلاء في الوقت نفسه:
{
  "broadcast": {
    "strategy": "parallel",
    "120363403215116621@g.us": ["alfred", "baerbel"]
  }
}

مثال كامل

{
  "agents": {
    "list": [
      {
        "id": "code-reviewer",
        "name": "Code Reviewer",
        "workspace": "/path/to/code-reviewer",
        "sandbox": { "mode": "all" }
      },
      {
        "id": "security-auditor",
        "name": "Security Auditor",
        "workspace": "/path/to/security-auditor",
        "sandbox": { "mode": "all" }
      },
      {
        "id": "docs-generator",
        "name": "Documentation Generator",
        "workspace": "/path/to/docs-generator",
        "sandbox": { "mode": "all" }
      }
    ]
  },
  "broadcast": {
    "strategy": "parallel",
    "120363403215116621@g.us": ["code-reviewer", "security-auditor", "docs-generator"],
    "120363424282127706@g.us": ["support-en", "support-de"],
    "+15555550123": ["assistant", "logger"]
  }
}

كيف يعمل

تدفق الرسائل

1

وصول رسالة واردة

تصل رسالة مجموعة WhatsApp أو رسالة مباشرة.
2

فحص البث

يتحقق النظام مما إذا كان معرف القرين موجودا في broadcast.
3

إذا كان ضمن قائمة البث

  • يعالج جميع الوكلاء المدرجين الرسالة.
  • يمتلك كل وكيل مفتاح جلسة خاصا به وسياقا معزولا.
  • يعالج الوكلاء بالتوازي (الافتراضي) أو بالتتابع.
4

إذا لم يكن ضمن قائمة البث

ينطبق التوجيه العادي (أول ربط مطابق).
لا تتجاوز مجموعات البث قوائم السماح للقنوات أو قواعد تفعيل المجموعات (الإشارات/الأوامر/إلخ). إنها تغير فقط أي الوكلاء يعملون عندما تكون الرسالة مؤهلة للمعالجة.

عزل الجلسات

يحافظ كل وكيل في مجموعة بث على ما يلي بشكل منفصل تماما:
  • مفاتيح الجلسات (agent:alfred:whatsapp:group:120363... مقابل agent:baerbel:whatsapp:group:120363...)
  • سجل المحادثة (لا يرى الوكيل رسائل الوكلاء الآخرين)
  • مساحة العمل (صناديق عزل منفصلة إذا تم إعدادها)
  • الوصول إلى الأدوات (قوائم سماح/منع مختلفة)
  • الذاكرة/السياق (ملفات IDENTITY.md وSOUL.md منفصلة، إلخ)
  • مخزن سياق المجموعة (رسائل المجموعة الحديثة المستخدمة للسياق) مشترك لكل قرين، لذلك يرى جميع وكلاء البث السياق نفسه عند تشغيلهم
يتيح هذا لكل وكيل امتلاك:
  • شخصيات مختلفة
  • وصول مختلف إلى الأدوات (مثلا، قراءة فقط مقابل قراءة وكتابة)
  • نماذج مختلفة (مثلا، opus مقابل sonnet)
  • Skills مختلفة مثبتة

مثال: جلسات معزولة

في المجموعة 120363403215116621@g.us مع الوكلاء ["alfred", "baerbel"]:
Session: agent:alfred:whatsapp:group:120363403215116621@g.us
History: [user message, alfred's previous responses]
Workspace: /Users/user/openclaw-alfred/
Tools: read, write, exec

أفضل الممارسات

صمم كل وكيل بمسؤولية واحدة واضحة:
{
  "broadcast": {
    "DEV_GROUP": ["formatter", "linter", "tester"]
  }
}
جيد: لكل وكيل مهمة واحدة. ❌ سيئ: وكيل عام واحد باسم “dev-helper”.
اجعل وظيفة كل وكيل واضحة:
{
  "agents": {
    "security-scanner": { "name": "Security Scanner" },
    "code-formatter": { "name": "Code Formatter" },
    "test-generator": { "name": "Test Generator" }
  }
}
امنح الوكلاء الأدوات التي يحتاجونها فقط:
{
  "agents": {
    "reviewer": {
      "tools": { "allow": ["read", "exec"] }
    },
    "fixer": {
      "tools": { "allow": ["read", "write", "edit", "exec"] }
    }
  }
}
reviewer للقراءة فقط. يستطيع fixer القراءة والكتابة.
عند وجود عدد كبير من الوكلاء، ضع في اعتبارك:
  • استخدام "strategy": "parallel" (الافتراضي) للسرعة
  • حصر مجموعات البث في 5-10 وكلاء
  • استخدام نماذج أسرع للوكلاء الأبسط
يفشل الوكلاء بشكل مستقل. خطأ وكيل واحد لا يحظر الآخرين:
Message → [Agent A ✓, Agent B ✗ error, Agent C ✓]
Result: Agent A and C respond, Agent B logs error

التوافق

المزودون

تعمل مجموعات البث حاليا مع:
  • ✅ WhatsApp (منفذ)
  • 🚧 Telegram (مخطط له)
  • 🚧 Discord (مخطط له)
  • 🚧 Slack (مخطط له)

التوجيه

تعمل مجموعات البث إلى جانب التوجيه الحالي:
{
  "bindings": [
    {
      "match": { "channel": "whatsapp", "peer": { "kind": "group", "id": "GROUP_A" } },
      "agentId": "alfred"
    }
  ],
  "broadcast": {
    "GROUP_B": ["agent1", "agent2"]
  }
}
  • GROUP_A: يرد alfred فقط (توجيه عادي).
  • GROUP_B: يرد agent1 وagent2 (بث).
الأسبقية: يأخذ broadcast الأولوية على bindings.

استكشاف الأخطاء وإصلاحها

تحقق من:
  1. معرفات الوكلاء موجودة في agents.list.
  2. تنسيق معرف القرين صحيح (مثلا، 120363403215116621@g.us).
  3. الوكلاء غير موجودين في قوائم المنع.
تصحيح الأخطاء:
tail -f ~/.openclaw/logs/gateway.log | grep broadcast
السبب: قد يكون معرف القرين موجودا في bindings لكن ليس في broadcast.الإصلاح: أضفه إلى إعدادات البث أو أزله من الربط.
إذا كان بطيئا مع عدد كبير من الوكلاء:
  • قلل عدد الوكلاء لكل مجموعة.
  • استخدم نماذج أخف (sonnet بدلا من opus).
  • تحقق من وقت بدء صندوق العزل.

أمثلة

{
  "broadcast": {
    "strategy": "parallel",
    "120363403215116621@g.us": [
      "code-formatter",
      "security-scanner",
      "test-coverage",
      "docs-checker"
    ]
  },
  "agents": {
    "list": [
      {
        "id": "code-formatter",
        "workspace": "~/agents/formatter",
        "tools": { "allow": ["read", "write"] }
      },
      {
        "id": "security-scanner",
        "workspace": "~/agents/security",
        "tools": { "allow": ["read", "exec"] }
      },
      {
        "id": "test-coverage",
        "workspace": "~/agents/testing",
        "tools": { "allow": ["read", "exec"] }
      },
      { "id": "docs-checker", "workspace": "~/agents/docs", "tools": { "allow": ["read"] } }
    ]
  }
}
يرسل المستخدم: مقتطف كود.الردود:
  • code-formatter: “تم إصلاح المسافات البادئة وإضافة تلميحات النوع”
  • security-scanner: “⚠️ ثغرة حقن SQL في السطر 12”
  • test-coverage: “التغطية 45%، وتوجد اختبارات مفقودة لحالات الخطأ”
  • docs-checker: “سلسلة توثيق مفقودة للدالة process_data
{
  "broadcast": {
    "strategy": "sequential",
    "+15555550123": ["detect-language", "translator-en", "translator-de"]
  },
  "agents": {
    "list": [
      { "id": "detect-language", "workspace": "~/agents/lang-detect" },
      { "id": "translator-en", "workspace": "~/agents/translate-en" },
      { "id": "translator-de", "workspace": "~/agents/translate-de" }
    ]
  }
}

مرجع API

مخطط الإعدادات

interface OpenClawConfig {
  broadcast?: {
    strategy?: "parallel" | "sequential";
    [peerId: string]: string[];
  };
}

الحقول

strategy
"parallel" | "sequential"
افتراضي:"\"parallel\""
كيفية معالجة الوكلاء. يشغّل parallel جميع الوكلاء في الوقت نفسه؛ ويشغلهم sequential بترتيب المصفوفة.
[peerId]
string[]
JID مجموعة WhatsApp، أو رقم E.164، أو معرف قرين آخر. القيمة هي مصفوفة معرفات الوكلاء التي يجب أن تعالج الرسائل.

القيود

  1. الحد الأقصى للوكلاء: لا يوجد حد صارم، لكن 10+ وكلاء قد يكونون بطيئين.
  2. السياق المشترك: لا يرى الوكلاء ردود بعضهم البعض (حسب التصميم).
  3. ترتيب الرسائل: قد تصل الردود المتوازية بأي ترتيب.
  4. حدود المعدل: يحتسب جميع الوكلاء ضمن حدود معدل WhatsApp.

التحسينات المستقبلية

الميزات المخطط لها:
  • وضع السياق المشترك (يرى الوكلاء ردود بعضهم البعض)
  • تنسيق الوكلاء (يمكن للوكلاء إرسال إشارات لبعضهم البعض)
  • اختيار الوكلاء ديناميكيا (اختيار الوكلاء بناء على محتوى الرسالة)
  • أولويات الوكلاء (يرد بعض الوكلاء قبل الآخرين)

ذات صلة