
网关 (Gateway) : 一个网关(控制平面),从多个地方接收事件并将它们路由
代理运行时 (Agent Runtime) : 一个代理运行时,它执行“回合”,调用 LLM,使用工具,写入状态并回复 。
一个有意识的系统。
一个在后台持续推理的大脑。



每个代理有一个主要的类 DM 会话(通常称为)。
main群组/频道/线程拥有独立的会话。
可选的“安全 DM 模式 (Secure DM Mode)”,按发送者/频道/账户隔离 DM,以避免在不同人之间泄露上下文。

~/.openclaw/agents/<agentId>/sessions/sessions.json~/.openclaw/agents/<agentId>/sessions/<SessionId>.jsonl持久性 :会话在重启后依然存在。
安全性 :这些文件可能包含敏感内容。
它保证每个会话在同一时间只有一个活动运行。
它仍然允许在不同会话之间进行并行处理(直到配置的限制)。

Collect (默认) :将多条消息合并为一个后续回合。
Followup :总是等待当前运行结束。
Steer :在当前运行的工具边界处注入新消息。
请求 (Request) :
{ type: "req", id, method, params }响应 (Response) :
{ type: "res", id, ok, payload | error }事件 (Event) :
{ type: "event", event, payload, ... }
connect运行时验证(拒绝错误的帧)。
JSON Schema 导出。
客户端的模型/代码生成。

加载上下文(会话历史 + 工作区上下文)。 调用模型。 执行工具调用(浏览器、文件系统、Shell、节点、插件)。 持久化更新。 回复(或故意保持沉默)。



心跳 (Heartbeats) :默认为 30 分钟(某些认证模式除外),推荐的模式是:如果没有需要注意的事项,回复。
HEARTBEAT_OKWebhooks :可以配置为立即触发回合或等到下一个心跳,并且可以启用/禁用传递。
Hooks :这是一个事件驱动的自动化系统,可以从多个目录(工作区、托管、捆绑包)中发现。

时间创建了一个事件。 网关将其排队。 代理运行了一个回合。 工具执行了操作。
从多个渠道接收不受信任的文本。
读取文件、浏览网页、运行工具。
安装/执行“技能”或扩展。
提示词注入 (直接或通过网页/文档/电子邮件间接)。
技能供应链风险 (一个“有用”的技能实际上是恶意软件)。
凭证泄露 (令牌、API 密钥、Cookie)。
命令误发 (一个试图提供帮助但使用破坏性 Shell 命令的模型)。
配对 + DM 策略 :配对码在一小时后过期,挂起的请求有限制,所以未知用户不能只是给你发私信并获得完全访问权限。
非本地访问的网关令牌 :如果你将网关暴露在 localhost 之外,必须要求令牌,以便连接必须在握手时进行身份验证。
多人 DM 时的安全 DM 模式 :按发送者/频道隔离,以避免上下文泄露。
沙箱化/最小权限 :请记住:工作区默认不是沙箱。如果你让代理运行代码或触摸敏感路径,请启用沙箱。
审计你的设置 :文档建议运行来发现危险设置和暴露。
将社区技能视为不可信代码 :扫描、审查、固定版本,并避免“每日随机技能”的行为。
在专用机器或 VM 上运行 OpenClaw(这样“代理被攻破”并不意味着“你的整个笔记本电脑被攻破”)。 为电子邮件、Slack、GitHub 等使用单独的帐户/限定令牌。 先从“只读”工作流开始(摘要、草稿),然后再让它执行操作。
网关协议和握手 (模式、版本控制、认证)
TypeBox 帧模型 (req/res/event + connect-first 规则)
会话管理 (dmScope、安全 DM 模式、文件位置)
命令队列 (车道感知 FIFO、每会话保证、模式)
心跳 (默认间隔、HEARTBEAT_OK 行为/模式)
Hooks + Webhooks (内部与外部事件触发器)
插件 (OpenClaw 如何通过命令/工具/RPC 扩展)
时间 (心跳 + Cron) 事件 (消息 + Hooks + Webhooks) 状态 (会话 + 磁盘上的工作区内存) 循环 (代理回合:读取 → 决策 → 行动 → 写入)
夜雨聆风