Documentation Index
Fetch the complete documentation index at: https://openclawhub.vn/llms.txt
Use this file to discover all available pages before exploring further.
Công Cụ Phiên Làm Việc
Mục tiêu: Bộ công cụ nhỏ gọn, dễ sử dụng để các agent có thể liệt kê phiên, lấy lịch sử và gửi tin nhắn đến phiên khác.Tên Công Cụ
sessions_listsessions_historysessions_sendsessions_spawn
Mô Hình Khóa Chính
- Khóa chính cho chat trực tiếp luôn là khóa
"main"(được giải quyết thành khóa chính của agent hiện tại). - Chat nhóm sử dụng
agent:<agentId>:<channel>:group:<id>hoặcagent:<agentId>:<channel>:channel:<id>(truyền khóa đầy đủ). - Công việc định kỳ sử dụng
cron:<job.id>. - Hooks sử dụng
hook:<uuid>trừ khi được thiết lập rõ ràng. - Phiên node sử dụng
node-<nodeId>trừ khi được thiết lập rõ ràng.
global và unknown là các giá trị dự trữ và không bao giờ được liệt kê. Nếu session.scope = "global", chúng tôi sẽ thay thế nó bằng main cho tất cả các công cụ để người gọi không thấy global.
sessions_list
Liệt kê các phiên dưới dạng một mảng các hàng. Tham số:kinds?: string[]lọc: bất kỳ trong số"main" | "group" | "cron" | "hook" | "node" | "other"limit?: numbersố hàng tối đa (mặc định: giới hạn máy chủ, ví dụ 200)activeMinutes?: numberchỉ các phiên được cập nhật trong vòng N phútmessageLimit?: number0 = không có tin nhắn (mặc định 0); >0 = bao gồm N tin nhắn cuối
messageLimit > 0lấychat.historycho mỗi phiên và bao gồm N tin nhắn cuối.- Kết quả công cụ bị lọc ra trong danh sách; sử dụng
sessions_historycho tin nhắn công cụ. - Khi chạy trong phiên agent sandboxed, công cụ phiên mặc định chỉ hiển thị phiên được tạo ra (xem bên dưới).
key: khóa phiên (chuỗi)kind:main | group | cron | hook | node | otherchannel:whatsapp | telegram | discord | signal | imessage | webchat | internal | unknowndisplayName(nhãn hiển thị nhóm nếu có)updatedAt(ms)sessionIdmodel,contextTokens,totalTokensthinkingLevel,verboseLevel,systemSent,abortedLastRunsendPolicy(ghi đè phiên nếu được thiết lập)lastChannel,lastTodeliveryContext(được chuẩn hóa{ channel, to, accountId }khi có)transcriptPath(đường dẫn nỗ lực tốt nhất từ thư mục lưu trữ + sessionId)messages?(chỉ khimessageLimit > 0)
sessions_history
Lấy bản ghi cho một phiên. Tham số:sessionKey(bắt buộc; chấp nhận khóa phiên hoặcsessionIdtừsessions_list)limit?: numbersố tin nhắn tối đa (máy chủ giới hạn)includeTools?: boolean(mặc định false)
includeTools=falselọc các tin nhắnrole: "toolResult".- Trả về mảng tin nhắn ở định dạng bản ghi thô.
- Khi được cung cấp
sessionId, OpenClaw giải quyết nó thành khóa phiên tương ứng (lỗi nếu thiếu id).
API lịch sử phiên Gateway và bản ghi trực tiếp
Giao diện điều khiển và khách hàng gateway có thể sử dụng trực tiếp các bề mặt lịch sử và bản ghi trực tiếp cấp thấp hơn. HTTP:GET /sessions/{sessionKey}/history- Tham số truy vấn:
limit,cursor,includeTools=1,follow=1 - Phiên không xác định trả về HTTP
404vớierror.type = "not_found" follow=1nâng cấp phản hồi thành luồng SSE của các cập nhật bản ghi cho phiên đó
sessions.subscribeđăng ký tất cả các sự kiện vòng đời phiên và bản ghi có thể thấy được cho khách hàngsessions.messages.subscribe { key }chỉ đăng ký các sự kiệnsession.messagecho một phiênsessions.messages.unsubscribe { key }loại bỏ đăng ký bản ghi mục tiêu đósession.messagemang theo các tin nhắn bản ghi được thêm vào cùng với siêu dữ liệu sử dụng trực tiếp khi cósessions.changedphátphase: "message"cho các phần thêm bản ghi để danh sách phiên có thể làm mới bộ đếm và bản xem trước
sessions_send
Gửi một tin nhắn vào phiên khác. Tham số:sessionKey(bắt buộc; chấp nhận khóa phiên hoặcsessionIdtừsessions_list)message(bắt buộc)timeoutSeconds?: number(mặc định >0; 0 = gửi và quên)
timeoutSeconds = 0: đưa vào hàng đợi và trả về{ runId, status: "accepted" }.timeoutSeconds > 0: chờ tối đa N giây để hoàn thành, sau đó trả về{ runId, status: "ok", reply }.- Nếu chờ hết thời gian:
{ runId, status: "timeout", error }. Chạy tiếp tục; gọisessions_historysau. - Nếu chạy thất bại:
{ runId, status: "error", error }. - Thông báo giao hàng chạy sau khi chạy chính hoàn tất và là nỗ lực tốt nhất;
status: "ok"không đảm bảo thông báo đã được gửi. - Chờ qua gateway
agent.wait(phía máy chủ) để không bị mất chờ khi kết nối lại. - Ngữ cảnh tin nhắn agent-to-agent được tiêm vào cho chạy chính.
- Tin nhắn giữa các phiên được lưu trữ với
message.provenance.kind = "inter_session"để người đọc bản ghi có thể phân biệt hướng dẫn agent được định tuyến từ đầu vào người dùng bên ngoài. - Sau khi chạy chính hoàn tất, OpenClaw chạy một vòng phản hồi lại:
- Vòng 2+ luân phiên giữa agent yêu cầu và agent mục tiêu.
- Phản hồi chính xác
REPLY_SKIPđể dừng ping-pong. - Số lượt tối đa là
session.agentToAgent.maxPingPongTurns(0–5, mặc định 5).
- Khi vòng kết thúc, OpenClaw chạy bước thông báo agent-to-agent (chỉ agent mục tiêu):
- Phản hồi chính xác
ANNOUNCE_SKIPđể giữ im lặng. - Bất kỳ phản hồi nào khác được gửi đến kênh mục tiêu.
- Bước thông báo bao gồm yêu cầu ban đầu + phản hồi vòng 1 + phản hồi ping-pong mới nhất.
- Phản hồi chính xác
Trường Kênh
- Đối với nhóm,
channellà kênh được ghi lại trên mục phiên. - Đối với chat trực tiếp,
channelánh xạ từlastChannel. - Đối với cron/hook/node,
channellàinternal. - Nếu thiếu,
channellàunknown.
Bảo Mật / Chính Sách Gửi
Chặn dựa trên chính sách theo loại kênh/chat (không theo id phiên).sendPolicy: "allow" | "deny"(không thiết lập = thừa kế cấu hình)- Có thể thiết lập qua
sessions.patchhoặc chỉ chủ sở hữu/send on|off|inherit(tin nhắn độc lập).
chat.send/agent(gateway)- logic giao hàng tự động trả lời
sessions_spawn
Tạo một phiên chạy sub-agent trong một phiên cách ly và thông báo kết quả trở lại kênh chat yêu cầu. Tham số:task(bắt buộc)label?(tùy chọn; dùng cho nhật ký/giao diện người dùng)agentId?(tùy chọn; tạo dưới một id agent khác nếu được phép)model?(tùy chọn; ghi đè mô hình sub-agent; giá trị không hợp lệ lỗi)thinking?(tùy chọn; ghi đè mức độ suy nghĩ cho chạy sub-agent)runTimeoutSeconds?(mặc định làagents.defaults.subagents.runTimeoutSecondskhi được thiết lập, nếu không0; khi được thiết lập, hủy chạy sub-agent sau N giây)thread?(mặc định false; yêu cầu định tuyến ràng buộc luồng cho phiên tạo này khi được hỗ trợ bởi kênh/plugin)mode?(run|session; mặc định làrun, nhưng mặc định làsessionkhithread=true;mode="session"yêu cầuthread=true)cleanup?(delete|keep, mặc địnhkeep)sandbox?(inherit|require, mặc địnhinherit;requiretừ chối tạo trừ khi runtime con mục tiêu được sandboxed)attachments?(mảng tùy chọn các tệp đính kèm nội tuyến; chỉ runtime subagent, ACP từ chối). Mỗi mục:{ name, content, encoding?: "utf8" | "base64", mimeType? }. Các tệp được hiện thực hóa vào không gian làm việc con tại.openclaw/attachments/<uuid>/. Trả về biên lai với sha256 cho mỗi tệp.attachAs?(tùy chọn;{ mountPath? }gợi ý dành riêng cho các triển khai gắn kết trong tương lai)
agents.list[].subagents.allowAgents: danh sách các id agent được phép quaagentId(["*"]để cho phép bất kỳ). Mặc định: chỉ agent yêu cầu.- Bảo vệ thừa kế sandbox: nếu phiên yêu cầu được sandboxed,
sessions_spawntừ chối các mục tiêu sẽ chạy không sandboxed.
- Sử dụng
agents_listđể khám phá các id agent nào được phép chosessions_spawn.
- Bắt đầu một phiên
agent:<agentId>:subagent:<uuid>mới vớideliver: false. - Sub-agents mặc định có bộ công cụ đầy đủ trừ công cụ phiên (có thể cấu hình qua
tools.subagents.tools). - Sub-agents không được phép gọi
sessions_spawn(không có tạo sub-agent → sub-agent). - Luôn không chặn: trả về
{ status: "accepted", runId, childSessionKey }ngay lập tức. - Với
thread=true, các plugin kênh có thể ràng buộc giao hàng/định tuyến đến mục tiêu luồng (hỗ trợ Discord được kiểm soát bởisession.threadBindings.*vàchannels.discord.threadBindings.*). - Sau khi hoàn tất, OpenClaw chạy bước thông báo sub-agent và đăng kết quả lên kênh chat yêu cầu.
- Nếu phản hồi cuối cùng của trợ lý trống,
toolResultmới nhất từ lịch sử sub-agent được bao gồm dưới dạngResult.
- Nếu phản hồi cuối cùng của trợ lý trống,
- Phản hồi chính xác
ANNOUNCE_SKIPtrong bước thông báo để giữ im lặng. - Phản hồi thông báo được chuẩn hóa thành
Status/Result/Notes;Statusđến từ kết quả runtime (không phải văn bản mô hình). - Các phiên sub-agent được tự động lưu trữ sau
agents.defaults.subagents.archiveAfterMinutes(mặc định: 60). - Phản hồi thông báo bao gồm một dòng thống kê (thời gian chạy, tokens, sessionKey/sessionId, đường dẫn bản ghi, và chi phí tùy chọn).
Tầm Nhìn Phiên Sandbox
Công cụ phiên có thể được giới hạn để giảm truy cập giữa các phiên. Hành vi mặc định:tools.sessions.visibilitymặc định làtree(phiên hiện tại + các phiên subagent được tạo ra).- Đối với các phiên sandboxed,
agents.defaults.sandbox.sessionToolsVisibilitycó thể giới hạn tầm nhìn.
self: chỉ khóa phiên hiện tại.tree: phiên hiện tại + các phiên được tạo ra bởi phiên hiện tại.agent: bất kỳ phiên nào thuộc về id agent hiện tại.all: bất kỳ phiên nào (truy cập giữa các agent vẫn yêu cầutools.agentToAgent).- Khi một phiên được sandboxed và
sessionToolsVisibility="spawned", OpenClaw giới hạn tầm nhìn ởtreengay cả khi bạn đặttools.sessions.visibility="all".