Skip to content

Session Tools

OpenClaw 為 Agent 提供了跨會話工作的工具——列出對話、讀取歷史記錄、向其他會話發送訊息以及產生子 Agent。

工具功能
sessions_list使用可選過濾器(類型、時間)列出會話
sessions_history讀取特定會話的逐字稿
sessions_send向另一個會話發送訊息並可選擇等待
sessions_spawn為背景工作產生一個獨立的子 Agent 會話

sessions_list 會返回包含金鑰、類型、頻道、模型、 token 計數和時間戳記的會話。可以按類型(maingroupcronhooknode)或時間(activeMinutes)進行過濾。

sessions_history 會擷取特定會話的對話逐字稿。預設情況下,工具結果會被排除在外——請傳遞 includeTools: true 以查看它們。

這兩個工具都接受 會話金鑰(如 "main")或來自先前列表呼叫的 會話 ID

sessions_send 會將訊息傳遞給另一個會話,並可選擇等待回應:

  • 即發即棄:設定 timeoutSeconds: 0 以加入佇列並立即返回。
  • 等待回覆:設定逾時時間並直接取得回應。

在目標回應後,OpenClaw 可以執行 回覆迴圈,讓 Agent 交替傳送訊息(最多 5 個回合)。目標 Agent 可以回覆 REPLY_SKIP 以提前停止。

sessions_spawn 會為背景任務建立一個獨立的會話。它總是非阻塞的——它會立即返回 runIdchildSessionKey

主要選項:

  • runtime: "subagent"(預設)或 "acp" 用於外部控制代理。
  • modelthinking 子會話的覆寫設定。
  • thread: true 將生成的代理綁定到聊天執行緒(Discord、Slack 等)。
  • sandbox: "require" 強制對子代理執行沙盒機制。

子代理獲得完整的工具集,但不含會話工具(無遞迴生成)。 完成後,公告步驟會將結果發布到請求者的頻道。

關於 ACP 特定行為,請參閱 ACP Agents

會話工具具有範圍限制,以限制代理所能看到的內容:

層級範圍
self僅限目前會話
tree目前會話 + 生成的子代理
agent此代理的所有會話
all所有會話(若已設定則包含跨代理)

預設為 tree。無論設定為何,沙盒會話都會被限制為 tree