OpenClaw 运行一个单一的内嵌代理运行时——每个 Gateway 对应一个代理进程,拥有自己的工作区、引导文件和会话存储。本页介绍该运行时契约:工作区必须包含什么、会注入哪些文件,以及会话如何基于它完成引导。Documentation Index
Fetch the complete documentation index at: https://openclaw.zhcndoc.com/llms.txt
Use this file to discover all available pages before exploring further.
工作区(必需)
OpenClaw 使用单一的代理工作区目录(agents.defaults.workspace)作为代理用于工具和上下文的唯一工作目录(cwd)。
建议:如果缺失,请使用 openclaw setup 创建 ~/.openclaw/openclaw.json 并初始化工作区文件。
完整工作区布局 + 备份指南:代理工作区
如果启用了 agents.defaults.sandbox,非主会话可以通过
agents.defaults.sandbox.workspaceRoot 下的每会话工作区来覆盖此设置(参见
Gateway 配置)。
引导文件(注入)
在agents.defaults.workspace 中,OpenClaw 期望存在以下可由用户编辑的文件:
AGENTS.md— 操作说明 + “记忆”SOUL.md— 角色设定、边界、语气TOOLS.md— 用户维护的工具笔记(例如imsg、sag、约定)BOOTSTRAP.md— 一次性的首次运行仪式(完成后删除)IDENTITY.md— 代理名称/风格/表情符号USER.md— 用户资料 + 偏好称呼
openclaw setup 会创建一个安全的默认模板)。
BOOTSTRAP.md 仅在全新工作区时创建(即不存在其他引导文件)。如果你在完成仪式后将其删除,那么后续重启时它不应再次被创建。
要完全禁用引导文件创建(适用于预置工作区),请设置:
内置工具
核心工具(read/exec/edit/write 以及相关系统工具)始终可用, 但受工具策略约束。apply_patch 是可选的,并受
tools.exec.applyPatch 控制。TOOLS.md 并不决定有哪些工具存在;它只是
指导你希望如何使用它们。
技能
OpenClaw 会从以下位置加载技能(优先级从高到低):- 工作区:
<workspace>/skills - 项目代理技能:
<workspace>/.agents/skills - 个人代理技能:
~/.agents/skills - 托管/本地:
~/.openclaw/skills - 内置(随安装包提供)
- 额外技能目录:
skills.load.extraDirs
skills)。
运行时边界
这个内嵌代理运行时基于 Pi agent core(模型、工具和提示流水线)构建。会话管理、发现、工具绑定和通道投递是建立在该核心之上的 OpenClaw 自有层。会话
会话转录以 JSONL 形式存储在:~/.openclaw/agents/<agentId>/sessions/<SessionId>.jsonl
流式处理中进行 steering
当队列模式为steer 时,传入消息会被注入到当前运行中。
排队的 steering 会在当前助手轮次完成其工具调用之后、下一次 LLM 调用之前送达。Pi 会将 steer 的所有待处理 steering 消息一起清空;旧版 queue 则在每个模型边界每次只清空一条消息。Steering 不再跳过当前助手消息中剩余的工具调用。
当队列模式为 followup 或 collect 时,传入消息会被保留,直到
当前轮次结束,然后以排队的载荷开始新的代理轮次。参见
队列 和 Steering 队列 了解模式
和边界行为。
块流式发送会在完成后立即发送已完成的助手块;它默认关闭(agents.defaults.blockStreamingDefault: "off")。
通过 agents.defaults.blockStreamingBreak 调整边界(text_end vs message_end;默认为 text_end)。
使用 agents.defaults.blockStreamingChunk 控制软块分片(默认为
800–1200 字符;优先段落换行,其次普通换行;最后才是句子)。
使用 agents.defaults.blockStreamingCoalesce 合并流式分片,以减少
单行刷屏(发送前基于空闲时间进行合并)。非 Telegram 通道需要显式设置 *.blockStreaming: true 才能启用块回复。
详细工具摘要会在工具开始时发出(无去抖);Control UI 会在可用时通过代理事件流式传输工具输出。
更多细节:流式传输 + 分块。
模型引用
配置中的模型引用(例如agents.defaults.model 和 agents.defaults.models)通过按第一个 / 进行拆分来解析。
- 配置模型时使用
provider/model。 - 如果模型 ID 本身包含
/(OpenRouter 风格),请包含 provider 前缀(例如openrouter/moonshotai/kimi-k2)。 - 如果你省略 provider,OpenClaw 会先尝试别名,然后尝试与该精确模型 ID 匹配的唯一已配置 provider,最后才回退到已配置的默认 provider。若该 provider 不再暴露已配置的默认模型,OpenClaw 会回退到第一个已配置的 provider/model,而不是暴露一个陈旧的、已移除 provider 的默认值。
配置(最小)
至少设置:agents.defaults.workspacechannels.whatsapp.allowFrom(强烈推荐)
下一步:群聊 🦞