Clawdbot 概念

理解 Clawdbot AI 助手架構、會話、多代理路由和訊息處理的核心概念。

Clawdbot 概念概覽

理解 Clawdbot 的核心概念有助於您有效地配置和使用 AI 助手。本節涵蓋 Clawdbot 的基本構建塊。

關鍵概念

閘道架構

閘道是中央守護程序,負責:

  • 維護所有訊息提供者連線
  • 公開類型化的 WebSocket API
  • 管理代理執行時和會話
  • 處理訊息路由

了解更多閘道架構

會話

Clawdbot 將每個代理的一個直接聊天會話視為主要會話:

  • 直接聊天合併為 agent:<agentId>:<mainKey>
  • 群組/頻道聊天獲得自己的金鑰
  • 會話狀態由閘道擁有

多代理路由

運行多個隔離的代理,具有單獨的:

  • 工作區(檔案、角色規則)
  • 狀態目錄
  • 會話儲存
  • 認證配置檔

代理執行時

代理執行時處理:

  • 訊息處理
  • 工具執行
  • 上下文管理
  • 回應生成

會話管理

私訊範圍選項

範圍描述
main(預設)所有私訊共享主會話
per-peer跨頻道按發送者 ID 隔離
per-channel-peer按頻道 + 發送者隔離
per-account-channel-peer按帳戶 + 頻道 + 發送者隔離

會話金鑰

來源金鑰格式
直接聊天agent:<agentId>:<mainKey>
群組聊天agent:<agentId>:<channel>:group:<id>
定時任務cron:<job.id>
Webhookshook:<uuid>

會話生命週期

  • 會話在過期前可重複使用
  • 每日重置預設為當地時間凌晨 4:00
  • 可選的閒置重置通過 idleMinutes

多代理設定

什麼是代理?

代理是一個完整範圍的大腦,包含:

  • 工作區:檔案、AGENTS.md、SOUL.md、角色規則
  • 狀態目錄:認證配置檔、模型註冊表
  • 會話儲存:聊天記錄 + 路由狀態
  • 技能:通過工作區的 skills/ 資料夾按代理配置

單代理模式(預設)

  • agentId 預設為 main
  • 會話金鑰為 agent:main:<mainKey>
  • 工作區位於 ~/.clawdbot/workspace

添加代理

# 添加新代理
clawdbot agents add work

# 列出代理及綁定
clawdbot agents list --bindings

路由規則

訊息通過綁定路由到代理:

{
  "bindings": [
    {
      "agentId": "alex",
      "match": {
        "channel": "whatsapp",
        "peer": { "kind": "dm", "id": "+15551230001" }
      }
    }
  ]
}

訊息處理

串流和分塊

Clawdbot 支援串流回應:

  • 部分訊息更新
  • 輸入指示器
  • 長回應的分塊傳遞

重試策略

失敗的訊息通過以下方式重試:

  • 指數退避
  • 可配置的重試限制
  • 錯誤處理

狀態位置

項目位置
配置~/.clawdbot/clawdbot.json
會話~/.clawdbot/agents/<agentId>/sessions/
記錄~/.clawdbot/agents/<agentId>/sessions/<SessionId>.jsonl
認證配置檔~/.clawdbot/agents/<agentId>/agent/auth-profiles.json

後續步驟