Files
openclaw/docs/zh-CN/concepts/agent.md

116 lines
5.2 KiB
Markdown
Raw Normal View History

2026-02-01 22:47:44 +01:00
---
read_when:
- 更改智能体运行时、工作区引导或会话行为时
2026-02-01 22:47:44 +01:00
summary: 智能体运行时(嵌入式 pi-mono、工作区契约和会话引导
title: 智能体运行时
x-i18n:
generated_at: "2026-02-03T10:04:53Z"
2026-02-01 22:47:44 +01:00
model: claude-opus-4-5
provider: pi
source_hash: 04b4e0bc6345d2afd9a93186e5d7a02a393ec97da2244e531703cb6a1c182325
source_path: concepts/agent.md
workflow: 15
2026-02-01 22:47:44 +01:00
---
# 智能体运行时 🤖
OpenClaw 运行一个源自 **pi-mono** 的嵌入式智能体运行时。
2026-02-01 22:47:44 +01:00
## 工作区(必需)
OpenClaw 使用单一智能体工作区目录(`agents.defaults.workspace`)作为智能体**唯一**的工作目录(`cwd`),用于工具和上下文。
2026-02-01 22:47:44 +01:00
建议:使用 `openclaw setup` 在缺失时创建 `~/.openclaw/openclaw.json` 并初始化工作区文件。
2026-02-01 22:47:44 +01:00
完整工作区布局 + 备份指南:[智能体工作区](/concepts/agent-workspace)
2026-02-01 22:47:44 +01:00
如果启用了 `agents.defaults.sandbox`,非主会话可以在 `agents.defaults.sandbox.workspaceRoot` 下使用按会话隔离的工作区覆盖此设置(参见 [Gateway 网关配置](/gateway/configuration))。
2026-02-01 22:47:44 +01:00
## 引导文件(注入)
`agents.defaults.workspace`OpenClaw 期望以下用户可编辑的文件:
2026-02-01 22:47:44 +01:00
- `AGENTS.md` — 操作指令 + "记忆"
- `SOUL.md` — 人设、边界、语气
2026-02-01 22:47:44 +01:00
- `TOOLS.md` — 用户维护的工具说明(例如 `imsg``sag`、约定)
- `BOOTSTRAP.md` — 一次性首次运行仪式(完成后删除)
- `IDENTITY.md` — 智能体名称/风格/表情
- `USER.md` — 用户档案 + 偏好称呼
2026-02-01 22:47:44 +01:00
在新会话的第一轮OpenClaw 将这些文件的内容直接注入智能体上下文。
2026-02-01 22:47:44 +01:00
空文件会被跳过。大文件会被修剪和截断并添加标记,以保持提示词精简(阅读文件获取完整内容)。
2026-02-01 22:47:44 +01:00
如果文件缺失OpenClaw 会注入一行"文件缺失"标记(`openclaw setup` 将创建安全的默认模板)。
2026-02-01 22:47:44 +01:00
`BOOTSTRAP.md` 仅在**全新工作区**(没有其他引导文件存在)时创建。如果你在完成仪式后删除它,后续重启不应重新创建。
2026-02-01 22:47:44 +01:00
要完全禁用引导文件创建(用于预置工作区),请设置:
2026-02-01 22:47:44 +01:00
```json5
{ agent: { skipBootstrap: true } }
```
## 内置工具
核心工具read/exec/edit/write 及相关系统工具)始终可用,受工具策略约束。`apply_patch` 是可选的,由 `tools.exec.applyPatch` 控制。`TOOLS.md` **不**控制哪些工具存在;它是关于*你*希望如何使用它们的指导。
2026-02-01 22:47:44 +01:00
## Skills
2026-02-01 22:47:44 +01:00
OpenClaw 从三个位置加载 Skills名称冲突时工作区优先
2026-02-01 22:47:44 +01:00
- 内置(随安装包提供)
2026-02-01 22:47:44 +01:00
- 托管/本地:`~/.openclaw/skills`
- 工作区:`<workspace>/skills`
Skills 可通过配置/环境变量控制(参见 [Gateway 网关配置](/gateway/configuration) 中的 `skills`)。
2026-02-01 22:47:44 +01:00
## pi-mono 集成
OpenClaw 复用 pi-mono 代码库的部分内容(模型/工具),但**会话管理、设备发现和工具连接由 OpenClaw 负责**。
2026-02-01 22:47:44 +01:00
- 无 pi-coding 智能体运行时。
- 不读取 `~/.pi/agent``<workspace>/.pi` 设置。
2026-02-01 22:47:44 +01:00
## 会话
会话记录以 JSONL 格式存储在:
- `~/.openclaw/agents/<agentId>/sessions/<SessionId>.jsonl`
会话 ID 是稳定的,由 OpenClaw 选择。
**不**读取旧版 Pi/Tau 会话文件夹。
2026-02-01 22:47:44 +01:00
## 流式传输中的引导
2026-02-01 22:47:44 +01:00
当队列模式为 `steer` 时,入站消息会注入当前运行。
队列在**每次工具调用后**检查;如果存在排队消息,当前助手消息的剩余工具调用将被跳过(工具结果显示错误"Skipped due to queued user message."),然后在下一个助手响应前注入排队的用户消息。
2026-02-01 22:47:44 +01:00
当队列模式为 `followup``collect` 时,入站消息会保留到当前轮次结束,然后使用排队的载荷开始新的智能体轮次。参见 [队列](/concepts/queue) 了解模式 + 防抖/上限行为。
2026-02-01 22:47:44 +01:00
分块流式传输在助手块完成后立即发送;默认为**关闭**`agents.defaults.blockStreamingDefault: "off"`)。
2026-02-01 22:47:44 +01:00
通过 `agents.defaults.blockStreamingBreak` 调整边界(`text_end``message_end`;默认为 text_end
使用 `agents.defaults.blockStreamingChunk` 控制软块分块(默认 8001200 字符;优先段落分隔,其次换行;最后是句子)。
使用 `agents.defaults.blockStreamingCoalesce` 合并流式块以减少单行刷屏(发送前基于空闲的合并)。非 Telegram 渠道需要显式设置 `*.blockStreaming: true` 以启用分块回复。
工具启动时发出详细工具摘要无防抖Control UI 在可用时通过智能体事件流式传输工具输出。
2026-02-01 22:47:44 +01:00
更多详情:[流式传输 + 分块](/concepts/streaming)。
## 模型引用
配置中的模型引用(例如 `agents.defaults.model``agents.defaults.models`)通过在**第一个** `/` 处分割来解析。
2026-02-01 22:47:44 +01:00
- 配置模型时使用 `provider/model`
- 如果模型 ID 本身包含 `/`OpenRouter 风格),请包含提供商前缀(例如:`openrouter/moonshotai/kimi-k2`)。
- 如果省略提供商OpenClaw 将输入视为别名或**默认提供商**的模型(仅在模型 ID 中没有 `/` 时有效)。
2026-02-01 22:47:44 +01:00
## 配置(最小)
2026-02-01 22:47:44 +01:00
至少需要设置:
- `agents.defaults.workspace`
- `channels.whatsapp.allowFrom`(强烈建议)
---
_下一篇[群聊](/channels/group-messages)_ 🦞