Kanaler & routning
OpenClaw rutter svarar tillbaka till kanalen där ett meddelande kom från. Modellen väljer inte en kanal; routing är deterministisk och kontrolleras av värdens konfiguration.Nyckelbegrepp
- Kanal:
whatsapp,telegram,discord,slack,signal,imessage,webchat. - AccountId: per‑kanal konto‑instans (när det stöds).
- AgentId: en isolerad arbetsyta + sessionslager (”hjärna”).
- SessionKey: hinknyckeln som används för att lagra kontext och styra samtidighet.
Sessionnycklars former (exempel)
Direktmeddelanden slås ihop till agentens huvud‑session:agent:<agentId>:<mainKey>(standard:agent:main:main)
- Grupper:
agent:<agentId>:<channel>:group:<id> - Kanaler/rum:
agent:<agentId>:<channel>:channel:<id>
- Slack/Discord‑trådar lägger till
:thread:<threadId>till basnyckeln. - Telegram‑forumämnen bäddar in
:topic:<topicId>i gruppnyckeln.
agent:main:telegram:group:-1001234567890:topic:42agent:main:discord:channel:123456:thread:987654
Routningsregler (hur en agent väljs)
Routning väljer en agent för varje inkommande meddelande:- Exakt peer‑match (
bindingsmedpeer.kind+peer.id). - Guild‑match (Discord) via
guildId. - Team‑match (Slack) via
teamId. - Kontomatch (
accountIdpå kanalen). - Kanal‑match (valfritt konto på den kanalen).
- Standardagent (
agents.list[].default, annars första listposten, fallback tillmain). - Kanalmatchning (valfritt konto på den kanalen,
accountId: "*"). - Standardagent (
agents.list[].default, annars första listposten, fallback tillmain).
Broadcast‑grupper (kör flera agenter)
Konfig: Konfig:Konfigöversikt
agents.list: namngivna agentdefinitioner (arbetsyta, modell, etc.).bindings: mappa inkommande kanaler/konton/peers till agenter.
Sessionslagring
Sessionslager ligger under tillståndskatalogen (standard~/.openclaw):
~/.openclaw/agents/<agentId>/sessions/sessions.json- JSONL‑transkript ligger sida vid sida med lagret
session.store och {agentId}‑mallning.
WebChat‑beteende
WebChat bifogar den valda agenten och är standard för agentens huvudsakliga session. På grund av detta, kan WebChat du se cross‐channel sammanhang för den agent på ett ställe.Svarskontext
Inkommande svar inkluderar:ReplyToId,ReplyToBodyochReplyToSendernär tillgängligt.- Citerad kontext läggs till i
Bodysom ett[Replying to ...]‑block.