Agent 运行时 🤖

翻译自 docs.openclaw.ai

OpenClaw 运行一个源自 pi-mono 的单一嵌入式 Agent 运行时。

工作区(必需)

OpenClaw 使用一个单一的 Agent 工作区目录(agents.defaults.workspace)作为 Agent 唯一的工作目录(cwd),用于工具和上下文。

推荐:使用 openclaw setup 来创建 ~/.openclaw/openclaw.json(如果不存在)并初始化工作区文件。

完整的工作区布局 + 备份指南:Agent 工作区

如果启用了 agents.defaults.sandbox,非主会话可以使用 agents.defaults.sandbox.workspaceRoot 下的每会话工作区覆盖此设置(参见 Gateway 配置)。

引导文件(注入)

agents.defaults.workspace 内部,OpenClaw 期望以下用户可编辑的文件:

在新会话的第一个回合中,OpenClaw 将这些文件的内容直接注入到 Agent 上下文中。

空白文件会被跳过。大文件会被修剪和截断,并带有标记,以保持提示精简(阅读文件以获取完整内容)。

如果文件缺失,OpenClaw 会注入一行"文件缺失"标记(openclaw setup 会创建安全的默认模板)。

BOOTSTRAP.md 仅在全新工作区(没有其他引导文件存在)时创建。如果你在完成仪式后删除它,它不应在以后的重启中重新创建。

要完全禁用引导文件创建(用于预置工作区),请设置:

{ agent: { skipBootstrap: true } }

内置工具

核心工具(read/exec/edit/write 及相关系统工具)始终可用,受工具策略约束。apply_patch 是可选的,由 tools.exec.applyPatch 控制。TOOLS.md 不控制哪些工具存在;它是关于你希望如何使用它们的指导。

技能(Skills)

OpenClaw 从三个位置加载技能(工作区在名称冲突时优先):

技能可以通过配置/环境变量进行门控(参见 Gateway 配置 中的 skills 部分)。

pi-mono 集成

OpenClaw 复用了 pi-mono 代码库的部分内容(模型/工具),但会话管理、发现和工具连接由 OpenClaw 拥有。

会话

会话记录以 JSONL 格式存储在:

~/.openclaw/agents/<agent>/sessions/<sessionId>.jsonl

会话 ID 是稳定的,由 OpenClaw 选择。不会读取旧版 Pi/Tau 会话文件夹。

流式传输中的转向

当队列模式为 steer 时,入站消息会被注入到当前运行中。队列在每次工具调用后被检查;如果存在排队的消息,当前助手消息中剩余的工具调用将被跳过(工具结果返回错误:"由于排队的用户消息而跳过"),然后在下一个助手响应之前注入排队的用户消息。

当队列模式为 followupcollect 时,入站消息会被保持到当前回合结束,然后使用排队的负载启动新的 Agent 回合。参见 队列 了解模式 + 防抖/上限行为。

模型引用

配置中的模型引用(例如 agents.defaults.modelagents.defaults.models)通过在第一个 / 处分割来解析。

配置(最小化)

至少需要设置:

下一篇:群聊 🦞