OpenClawSkills
GitHub
核心概念 • 5 分钟阅读

代理运行时

代理运行时(嵌入式 pi-mono)、工作区契约和会话引导

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

Tutorial.step

工作空间(必填)

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

建议:如果缺少 ''~/.openclaw/openclaw.json'',请使用 ''openclaw setup'' 创建并初始化工作区文件。

完整工作区布局 + 备份指南:''代理工作区''

如果启用 ''agents.defaults.sandbox'',非主会话可以使用以下命令覆盖它:

''agents.defaults.sandbox.workspaceRoot'' 下的每个会话工作区(请参阅

''网关配置'')。

Tutorial.step

引导文件(注入)

在 ''agents.defaults.workspace'' 内部,OpenClaw 需要这些用户可编辑的文件:

- ''AGENTS.md'' — 操作指令+"内存"

- ''SOUL.md'' — 角色、界限、语气

- ''TOOLS.md'' — 用户维护的工具注释(例如 ''imsg''、''sag''、约定)

- ''BOOTSTRAP.md'' — 一次性首次运行仪式(完成后删除)

- ''IDENTITY.md'' — 代理名称/氛围/表情符号

- ''USER.md'' — 用户个人资料 + 首选地址

在新会话的第一次启动时,OpenClaw 会将这些文件的内容直接注入到代理上下文中。

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

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

''BOOTSTRAP.md'' 仅为 ''全新工作区'' 创建(不存在其他引导文件)。如果您在完成仪式后将其删除,则在以后重新启动时不应重新创建它。

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

Json5
{ agent: { skipBootstrap: true } }
Tutorial.step

内置工具

核心工具(读/执行/编辑/写和相关系统工具)始终可用,

受工具政策的约束。 ''apply_patch'' 是可选的并且由

''tools.exec.applyPatch''. ''TOOLS.md'' does ''not'' control which tools exist; this is

关于您希望如何使用它们的指导。

Tutorial.step

技能

OpenClaw 从三个位置加载技能(工作区因名称冲突而获胜):

- 捆绑(随安装一起提供)

- 托管/本地:''~/.openclaw/skills''

- Workspace: ''<workspace>/skills''

技能可以通过 config/env 进行门控(请参阅''网关配置''中的''skills'')。

Tutorial.step

圆周率-单声道集成

OpenClaw 重用了 pi-mono 代码库的各个部分(模型/工具),但会话管理、发现和工具连接都是 OpenClaw 拥有的。

- 无 pi 编码代理运行时。

- Does not consult ''~/.pi/agent'' or ''<workspace>/.pi'' settings.

Tutorial.step

会议

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

- ''~/.openclaw/agents/<agentId>/sessions/<SessionId>.jsonl''

会话 ID 是稳定的,由 OpenClaw 选择。

不读取旧版 Pi/Tau 会话文件夹。

Tutorial.step

流媒体时转向

当队列模式为 ''steer'' 时,入站消息将注入到当前运行中。

每次工具调用后都会检查队列;如果存在排队消息,

跳过当前助手消息中的剩余工具调用(错误工具

结果为"由于排队的用户消息而被跳过。"),然后排队的用户

消息在下一个助理响应之前注入。

当队列模式为 ''followup'' 或 ''collect'' 时,入站消息将被保留,直到

当前回合结束,然后新的代理回合以排队的有效负载开始。参见

''Queue'' 用于模式 + 去抖/上限行为。

块流式传输完成后立即发送已完成的辅助块;是的

''默认关闭'' (''agents.defaults.blockStreamingDefault: "off"'')。

通过 ''agents.defaults.blockStreamingBreak'' 调整边界(''text_end'' 与 ''message_end'';默认为 text_end)。

使用 ''agents.defaults.blockStreamingChunk'' 控制软块分块(默认为

800–1200 个字符;更喜欢分段符,然后换行符;最后的句子)。

使用 ''agents.defaults.blockStreamingCoalesce'' 合并流式块以减少

单行垃圾邮件(发送前基于空闲的合并)。非 Telegram 频道需要

显式 ''*.blockStreaming: true'' 以启用块回复。

在工具启动时发出详细的工具摘要(无反跳);控制界面

如果可用,通过代理事件流式传输工具输出。

更多详细信息:''流+分块''。

Tutorial.step

模型参考

配置中的模型引用(例如 ''agents.defaults.model'' 和 ''agents.defaults.models'')通过在''第一个'' ''/'' 上进行拆分来解析。

- 配置模型时使用 ''provider/model''。

- 如果模型 ID 本身包含 ''/'' (OpenRouter 样式),请包含提供程序前缀(例如:''openrouter/moonshotai/kimi-k2'')。

- 如果省略提供程序,OpenClaw 会将输入视为''默认提供程序''的别名或模型(仅当模型 ID 中没有 ''/'' 时才有效)。

Tutorial.step

配置(最小)

至少设置:

- ''agents.defaults.workspace''

- ''channels.whatsapp.allowFrom''(强烈推荐)

---

_下一篇:''群聊''_ 🦞