Workspace/目录下.md 文件详解,修改时是否有格式要求:如不能删某个字段,改缩进
一、这7个文件各自是什么?
这7个文件都是 agent workspace 的标准 bootstrap 文件 ,默认位于 ~/.openclaw/workspace/。
| 文件 | 作用 | 是否每次session加载 |
|---|---|---|
AGENTS.md |
Agent操作指令、记忆规则、行为规范 | ✅ 是 |
SOUL.md |
人格、语气、边界 | ✅ 是 |
USER.md |
用户信息(姓名、时区、偏好) | ✅ 是 |
IDENTITY.md |
Agent名称、形象、emoji | ✅ 是 |
TOOLS.md |
本地工具、设备、环境特定说明 | ✅ 是 |
HEARTBEAT.md |
心跳任务的短小checklist | ✅ 是 |
BOOTSTRAP.md |
首次运行仪式(一次性) | ❌ 完成后应删除 |
二、修改时是否有格式要求?❌ 没有严格格式限制
核心机制:这些文件被系统读取后,以纯文本方式直接注入 agent 的 system prompt(Project Context 区段),没有 schema 校验、不解析特定字段、不检查缩进。
系统读取文件时会自动去掉文件头的 YAML frontmatter(--- 开头的部分),其余内容原样注入:
因此:
- ✅ 可以删除任意段落或"字段"
- ✅ 可以更改缩进
- ✅ 可以完全重写成你自己的风格
- ✅ 可以添加任意新内容
- ✅ 使用标准 Markdown 格式即可
三、最佳实践汇总
1. 控制文件大小(最重要)
所有文件每次 session 都会占用 context window。每个文件上限默认 20,000 字符 ,所有文件总上限 150,000 字符,超出会被截断。
HEARTBEAT.md特别要保持极简(直接影响每次心跳的 token 消耗)MEMORY.md(长期记忆)也属于注入文件,随时间增长要定期整理
2. 各文件推荐写什么
TOOLS.md:填写你的摄像头名称、SSH 主机、TTS 偏好、设备别名等,这是"你的专属备忘录"USER.md:填入你的姓名、称呼方式、时区、常用偏好IDENTITY.md:填入 agent 的名字、人格、emojiSOUL.md:定义 agent 的行为边界、说话风格、价值观AGENTS.md:添加你自己的操作规则(比如"优先用 trash 而非 rm"、"发邮件前先询问"等)
3. 用 git 备份(强烈推荐)
文档建议将 workspace 作为私有 git 仓库管理,但绝对不要把 API key、OAuth token 等密钥放进去。
这里我的做法是:
bash
~/.openclaw目录对应一个git目录,添加.gitignore忽略掉workspace,专门备份配置
每一个workspace目录则对应一个专门的git目录,备份每一个agent数据
4. 可以禁用自动 bootstrap 文件生成
如果你完全自己管理这些文件,可以设置:
5. MEMORY.md 只在主 session 加载
MEMORY.md(长期记忆汇总文件)不会在群组聊天、子agent、cron 任务等会话中加载,仅限直接对话(main session),这是为了安全考虑防止个人信息泄露:
6.子 agent(subagent / cron)的 session 加载
子agent 只注入 AGENTS.md、TOOLS.md、SOUL.md、IDENTITY.md、USER.md 这5个, MEMORY.md, HEARTBEAT.md , BOOTSTRAP.md 会被过滤掉:
Notes
-
这7个文件本质上是 AI 的 system prompt 组成部分,OpenClaw 直接读取文本后拼接注入,不做任何结构化解析。你可以把它们理解为"写给 AI 看的说明书",想怎么写都行,只要语言清晰即可。
-
docs/zh-CN/下的文件是自动翻译生成的,不建议直接编辑;但这和 workspace 里的.md文件无关,workspace 的文件完全由用户掌控。 -
如果 workspace 文件缺失,系统会注入一个"[MISSING]"标记并继续运行,不会崩溃;缺失文件可以通过
openclaw setup重新生成默认模板(不会覆盖已有文件)。
总结
随便改随便作,多踩坑多实践