Ana içeriğe atla

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.

Durum: Deneysel. 2026.1.9 sürümünde eklendi.

Genel bakış

Yayın Grupları, birden fazla aracının aynı iletiyi eşzamanlı olarak işlemesini ve yanıtlamasını sağlar. Bu, tek bir WhatsApp grubunda veya DM’de birlikte çalışan özelleşmiş aracı ekipleri oluşturmanıza olanak tanır — hepsi tek bir telefon numarası kullanarak. Geçerli kapsam: yalnızca WhatsApp (web kanalı). Yayın grupları, kanal izin listelerinden ve grup etkinleştirme kurallarından sonra değerlendirilir. WhatsApp gruplarında bu, yayınların OpenClaw’ın normalde yanıt vereceği durumlarda gerçekleştiği anlamına gelir (örneğin: grup ayarlarınıza bağlı olarak bahsedildiğinde).

Kullanım örnekleri

Atomik ve odaklanmış sorumluluklara sahip birden fazla aracı dağıtın:
Group: "Development Team"
Agents:
  - CodeReviewer (reviews code snippets)
  - DocumentationBot (generates docs)
  - SecurityAuditor (checks for vulnerabilities)
  - TestGenerator (suggests test cases)
Her aracı aynı iletiyi işler ve kendi uzman bakış açısını sunar.
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)

Yapılandırma

Temel kurulum

Üst düzey bir broadcast bölümü ekleyin (bindings yanında). Anahtarlar WhatsApp eş kimlikleridir:
  • grup sohbetleri: grup JID’si (örn. 120363403215116621@g.us)
  • DM’ler: E.164 telefon numarası (örn. +15551234567)
{
  "broadcast": {
    "120363403215116621@g.us": ["alfred", "baerbel", "assistant3"]
  }
}
Sonuç: OpenClaw bu sohbette yanıt vereceği zaman üç aracının tamamını çalıştırır.

İşleme stratejisi

Aracıların iletileri nasıl işlediğini denetleyin:
Tüm aracılar eşzamanlı olarak işler:
{
  "broadcast": {
    "strategy": "parallel",
    "120363403215116621@g.us": ["alfred", "baerbel"]
  }
}

Tam örnek

{
  "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"]
  }
}

Nasıl çalışır

İleti akışı

1

Gelen ileti ulaşır

Bir WhatsApp grup veya DM iletisi gelir.
2

Yayın denetimi

Sistem, eş kimliğinin broadcast içinde olup olmadığını denetler.
3

Yayın listesindeyse

  • Listelenen tüm aracılar iletiyi işler.
  • Her aracının kendi oturum anahtarı ve yalıtılmış bağlamı vardır.
  • Aracılar paralel (varsayılan) veya sıralı olarak işler.
4

Yayın listesinde değilse

Normal yönlendirme uygulanır (ilk eşleşen bağlama).
Yayın grupları kanal izin listelerini veya grup etkinleştirme kurallarını (bahsetmeler/komutlar/vb.) atlamaz. Yalnızca bir ileti işlemeye uygun olduğunda hangi aracıların çalışacağını değiştirir.

Oturum yalıtımı

Bir yayın grubundaki her aracı tamamen ayrı şunları korur:
  • Oturum anahtarları (agent:alfred:whatsapp:group:120363... ve agent:baerbel:whatsapp:group:120363...)
  • Konuşma geçmişi (aracı diğer aracıların iletilerini görmez)
  • Çalışma alanı (yapılandırıldıysa ayrı korumalı alanlar)
  • Araç erişimi (farklı izin/verme listeleri)
  • Bellek/bağlam (ayrı IDENTITY.md, SOUL.md, vb.)
  • Grup bağlam arabelleği (bağlam için kullanılan son grup iletileri) eş başına paylaşılır, böylece tüm yayın aracıları tetiklendiğinde aynı bağlamı görür
Bu, her aracının şunlara sahip olmasını sağlar:
  • Farklı kişilikler
  • Farklı araç erişimi (örn. salt okunur ve okuma-yazma)
  • Farklı modeller (örn. opus ve sonnet)
  • Farklı Skills kurulu

Örnek: yalıtılmış oturumlar

["alfred", "baerbel"] aracılarıyla 120363403215116621@g.us grubunda:
Session: agent:alfred:whatsapp:group:120363403215116621@g.us
History: [user message, alfred's previous responses]
Workspace: /Users/user/openclaw-alfred/
Tools: read, write, exec

En iyi uygulamalar

Her aracıyı tek ve net bir sorumlulukla tasarlayın:
{
  "broadcast": {
    "DEV_GROUP": ["formatter", "linter", "tester"]
  }
}
İyi: Her aracının bir işi vardır. ❌ Kötü: Tek bir genel “dev-helper” aracısı.
Her aracının ne yaptığını netleştirin:
{
  "agents": {
    "security-scanner": { "name": "Security Scanner" },
    "code-formatter": { "name": "Code Formatter" },
    "test-generator": { "name": "Test Generator" }
  }
}
Aracılara yalnızca ihtiyaç duydukları araçları verin:
{
  "agents": {
    "reviewer": {
      "tools": { "allow": ["read", "exec"] }
    },
    "fixer": {
      "tools": { "allow": ["read", "write", "edit", "exec"] }
    }
  }
}
reviewer salt okunurdur. fixer okuyabilir ve yazabilir.
Çok sayıda aracıyla şunları göz önünde bulundurun:
  • Hız için "strategy": "parallel" (varsayılan) kullanma
  • Yayın gruplarını 5-10 aracıyla sınırlama
  • Daha basit aracılar için daha hızlı modeller kullanma
Aracılar bağımsız olarak başarısız olur. Bir aracının hatası diğerlerini engellemez:
Message → [Agent A ✓, Agent B ✗ error, Agent C ✓]
Result: Agent A and C respond, Agent B logs error

Uyumluluk

Sağlayıcılar

Yayın grupları şu anda şunlarla çalışır:
  • ✅ WhatsApp (uygulandı)
  • 🚧 Telegram (planlandı)
  • 🚧 Discord (planlandı)
  • 🚧 Slack (planlandı)

Yönlendirme

Yayın grupları mevcut yönlendirmeyle birlikte çalışır:
{
  "bindings": [
    {
      "match": { "channel": "whatsapp", "peer": { "kind": "group", "id": "GROUP_A" } },
      "agentId": "alfred"
    }
  ],
  "broadcast": {
    "GROUP_B": ["agent1", "agent2"]
  }
}
  • GROUP_A: Yalnızca alfred yanıt verir (normal yönlendirme).
  • GROUP_B: agent1 VE agent2 yanıt verir (yayın).
Öncelik: broadcast, bindings üzerinde önceliklidir.

Sorun giderme

Denetleyin:
  1. Aracı kimlikleri agents.list içinde mevcut.
  2. Eş kimliği biçimi doğru (örn. 120363403215116621@g.us).
  3. Aracılar engelleme listelerinde değil.
Hata ayıklama:
tail -f ~/.openclaw/logs/gateway.log | grep broadcast
Neden: Eş kimliği bindings içinde olabilir ancak broadcast içinde olmayabilir.Çözüm: Yayın yapılandırmasına ekleyin veya bağlamalardan kaldırın.
Çok sayıda aracıyla yavaşsa:
  • Grup başına aracı sayısını azaltın.
  • Daha hafif modeller kullanın (opus yerine sonnet).
  • Korumalı alan başlatma süresini denetleyin.

Örnekler

{
  "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"] } }
    ]
  }
}
Kullanıcı gönderir: Kod parçacığı.Yanıtlar:
  • code-formatter: “Girinti düzeltildi ve type hint’ler eklendi”
  • security-scanner: “⚠️ 12. satırda SQL injection açığı”
  • test-coverage: “Kapsam %45, hata durumları için testler eksik”
  • docs-checker: “process_data işlevi için docstring eksik”
{
  "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 başvurusu

Yapılandırma şeması

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

Alanlar

strategy
"parallel" | "sequential"
varsayılan:"\"parallel\""
Aracıların nasıl işleneceği. parallel tüm aracıları eşzamanlı olarak çalıştırır; sequential onları dizi sırasına göre çalıştırır.
[peerId]
string[]
WhatsApp grup JID’si, E.164 numarası veya başka bir eş kimliği. Değer, iletileri işlemesi gereken aracı kimlikleri dizisidir.

Sınırlamalar

  1. Maksimum aracı: Katı bir sınır yok, ancak 10+ aracı yavaş olabilir.
  2. Paylaşılan bağlam: Aracılar birbirlerinin yanıtlarını görmez (tasarım gereği).
  3. İleti sıralaması: Paralel yanıtlar herhangi bir sırada gelebilir.
  4. Hız sınırları: Tüm aracılar WhatsApp hız sınırlarına dahil edilir.

Gelecekteki geliştirmeler

Planlanan özellikler:
  • Paylaşılan bağlam modu (aracılar birbirlerinin yanıtlarını görür)
  • Aracı koordinasyonu (aracılar birbirlerine sinyal verebilir)
  • Dinamik aracı seçimi (ileti içeriğine göre aracı seçme)
  • Aracı öncelikleri (bazı aracılar diğerlerinden önce yanıt verir)

İlgili