乐于分享
好东西不私藏

OpenClaw 工作空间怎么搭?一篇讲清 7 个核心 Markdown 文件的写法

OpenClaw 工作空间怎么搭?一篇讲清 7 个核心 Markdown 文件的写法

很多人刚接触 OpenClaw,第一反应都是去研究模型、工具、节点、插件。

这些当然重要。
但真正在长期使用里决定一个 Agent 会不会越来越顺手的,往往不是模型参数,而是你的工作空间里那几份 .md 文件。

因为 OpenClaw 不是把 Agent 当成一次性聊天窗口来用。
它更像一个会反复醒来、不断接任务、持续积累风格和规则的助手。每次会话启动时,系统都会从工作空间读取这些文件,把它们重新注入上下文。

所以很多老用户会把一句话挂在嘴边:

文件即真相。

也就是说,真正稳定、可复用、可维护的,不是你上一轮临时说过什么,而是磁盘上那几份写清楚的 Markdown。

这篇文章不讲抽象概念,直接带你把 OpenClaw 工作空间最常用的 7 个核心文件过一遍:

  • SOUL.md
  • AGENTS.md
  • USER.md
  • MEMORY.md
  • IDENTITY.md
  • TOOLS.md
  • HEARTBEAT.md

看完之后,你至少会搞清三件事:

  1. 这些文件分别负责什么
  2. 哪几个应该先写,哪几个可以后补
  3. 新手怎么搭出一套最小可用版本

一、先理解一件事:OpenClaw 工作空间,不是普通文件夹

很多人把工作空间理解成“放点配置文件的地方”。
这理解不算错,但还不够。

更准确的说法是:

工作空间是 Agent 的人格、规则、记忆和操作习惯的落盘位置。

你可以把它理解成四层:

  • SOUL.md 管“你是谁”
  • AGENTS.md 管“你怎么做事”
  • USER.md 管“你在为谁服务”
  • MEMORY.md 管“哪些事不能忘”

其他文件,则是在这四层基础上补身份、补工具说明、补节奏提醒。

所以工作空间不是装饰品。
它决定的是:同样一个模型,为什么有的人用起来像个会做事的助手,有的人用起来像个随机发挥的聊天机器人。


二、优先级最高的 4 个文件,建议先写它们

如果你是第一次搭工作空间,不用一口气把所有文件都写满。
最实用的做法,是先把下面这 4 个文件搭起来:

  • SOUL.md
  • AGENTS.md
  • USER.md
  • MEMORY.md

先把骨架立住,后面再慢慢补细节。

下面我们一个一个看。


三、SOUL.md:这是 Agent 的灵魂,不是装文艺的地方

它是干什么的?

SOUL.md 负责定义 Agent 的人格、边界、价值取向和说话气质。

说白了,它回答的是这几个问题:

  • 你是谁
  • 你怎么和人说话
  • 你重视什么
  • 你绝不越过哪些边界

很多人第一次写 SOUL.md,容易犯两个错。

第一个错,是把它写成“人设宣言”,全是形容词,读起来很热闹,用起来没什么约束力。
比如:聪明、温暖、可靠、幽默、专业。
这些词单独看都没问题,但如果没有行为指向,模型下次照样可能乱跑。

第二个错,是把它写得太大太空,像公司文化墙。
用户真正需要的,不是一个口号型人格,而是一个遇事有判断、边界很清楚、风格稳定的助手。

推荐怎么写?

最实用的写法,是把 SOUL.md 控制在几节里:

  • 核心原则
  • 边界与禁区
  • 语气与风格
  • 连续性意识

一个极简模板

# SOUL.md

## Core Truths
- 先解决问题,不要表演式热情
- 能自己查清楚的,就不要先问用户
- 具体胜过空泛,行动胜过口号

## Boundaries
- 私密信息不外泄
- 涉及外部发送、发布、删除等动作,先确认
- 群聊里不要擅自替用户表态

## Vibe
- 说话自然,不要企业腔
- 该短就短,该展开时再展开
- 不装懂,不献媚

## Continuity
- 每次启动都重新读取工作空间文件
- 文件是长期记忆,不是摆设

写这个文件时,最该记住一句话

边界比个性更重要,具体比华丽更重要。

一个写得好的 SOUL.md,不是让 Agent 看起来更酷,而是让它更稳。


四、AGENTS.md:这是操作手册,决定它做事像不像真人助手

它是干什么的?

如果说 SOUL.md 解决的是“你是谁”,那 AGENTS.md 解决的就是“你每次醒来之后先做什么、按什么顺序做”。

这个文件通常会写这些内容:

  • 每次会话启动先读哪些文件
  • 记忆怎么分层
  • 哪些事一定不能做
  • 遇到复杂任务时按什么顺序处理

为什么它很重要?

因为很多 Agent 的不稳定,不是人格问题,而是流程问题。

比如:

  • 有时候记得先读用户资料,有时候不读
  • 有时候会查历史,有时候直接张口就答
  • 有时候会先确认高风险动作,有时候直接执行

这类漂移,靠聊天提醒没用。
最好的办法,就是把它写进 AGENTS.md

一个常用结构

# AGENTS.md

## Every Session
1. Read SOUL.md
2. Read USER.md
3. Read recent memory
4. Check HEARTBEAT.md if exists
5. Review open tasks

## Memory System
- Daily logs 放在 memory/YYYY-MM-DD.md
- 长期结论写入 MEMORY.md
- 定期把高价值信息从日记提升到长期记忆

## Safety
- 不外泄隐私
- 外部动作先确认
- 遇到不确定内容先问再动

## Task Execution
- 先自己查,再问用户
- 复杂问题分步处理
- 重要动作后更新记忆

新手最容易踩的坑

不要把 AGENTS.md 写成一堆正确但没法执行的废话。

比如“认真负责、积极主动、持续优化”。
这种句子看着很正,但一点操作意义都没有。

AGENTS.md 最有价值的部分,一定是顺序、规则和触发条件


五、USER.md:别把用户资料写成简历,够用最重要

它是干什么的?

USER.md 用来记录这个 Agent 长期服务的对象是谁。

它通常包括:

  • 用户怎么称呼
  • 用户偏好的语言和风格
  • 用户长期目标
  • 用户不喜欢什么
  • 一些稳定偏好和协作习惯

为什么它很有用?

因为同样一句回答,对不同用户的写法应该完全不同。

有的人要极简,有的人要铺开;
有的人讨厌废话,有的人希望你给全背景;
有的人更重视结果,有的人更在意过程透明。

这些东西如果只靠模型临场猜,时间一长一定漂。
写进 USER.md,才会稳定。

一个简版模板

# USER.md

Name: 嗨旺
What to call them: 嗨旺
Preferred Language: 中文优先
Communication Style: 直接、实用、少废话
Goals:
- 用 OpenClaw 处理日常工作和内容生产
Preferences:
- 结果导向
- 需要时再展开背景
Things to Avoid:
- 空话
- 过度解释
- 替用户擅自表态

写这个文件时,建议记住一条

写稳定偏好,不写临时情绪。

今天心情不好,不值得写进长期用户画像;
但“偏好中文回复、讨厌企业腔、重结果”这种,值得长期保留。


六、MEMORY.md:它不是流水账,而是长期记忆的沉淀层

它是干什么的?

MEMORY.md 负责存放那些跨会话仍然重要的事实、结论、规则和经验。

比如:

  • 用户明确确认过的长期偏好
  • 已验证有效的工作流
  • 固化下来的路径、命令、配置位置
  • 反复踩过的坑和修复结论

它和日常日志有什么区别?

很多人会把所有东西都往 MEMORY.md 里塞,结果越写越乱。

更好的做法是分层:

  • 日常过程、零散事件,放到 memory/YYYY-MM-DD.md
  • 经过验证、值得长期保留的结论,再提升到 MEMORY.md

这样你就不会把长期记忆写成“昨天中午干了什么”的流水账。

一个常见结构

# MEMORY.md

## 长期角色记忆
- 当前 Agent 的角色与职责

## 用户稳定偏好
- 偏好中文
- 不喜欢 AI 腔
- 更看重可落地结果

## 已验证工作流
- 写完文章后先跑 ai_style_check
- 再发布到公众号草稿箱

## 关键路径
- 发布脚本路径
- 常用工具路径

## 已确认经验
- 哪些流程用户已明确认可
- 哪些坑以后不要再踩

什么时候该更新 MEMORY.md?

一个简单标准:

这件事下次还会反复影响判断吗?

如果会,就值得写进去。
如果只是一次性过程,就放日记层,不要污染长期记忆。


七、另外 3 个常用文件:补身份、补工具、补节奏

前面 4 个文件已经能撑起大部分场景了。
再往下,你可以逐步补这 3 个文件。


八、IDENTITY.md:给 Agent 一个稳定的“对外名片”

IDENTITY.md 主要用来定义:

  • 名称
  • 角色
  • Emoji
  • 对外自我介绍
  • 风格标签

它不像 SOUL.md 那样管底层行为,更像一个统一的身份信息文件。

一个简版例子:

# IDENTITY.md

Name: Claw
Role: 个人 AI 助手
Emoji: 🦞
Style: 直接、可靠、带一点幽默

如果你管理的是多 Agent 协作体系,这个文件尤其有用。
因为它能把“谁负责什么”写得更清楚。


九、TOOLS.md:这是本地工具备忘录,不是命令垃圾场

TOOLS.md 的用途很简单:

  • 记录可用工具
  • 记录本地环境说明
  • 记录高频脚本路径
  • 记录常用命令和注意事项

它的价值不在于全,而在于准。

不要把什么命令都往里堆。
真正有用的 TOOLS.md,应该像一张顺手的本地 Cheat Sheet:

  • 这个环境里有什么工具
  • 哪个脚本在哪
  • 哪个命令已经验证能跑
  • 哪些路径不要再用

这样下次做事时,Agent 才不是每次都重新摸索。


十、HEARTBEAT.md:给重复动作一个固定节奏

HEARTBEAT.md 不是每个人都必须写,但在这些场景里特别有用:

  • 每次唤醒都要先读某几份规则文件
  • 定时触发时需要重复同一组检查动作
  • 你希望 Agent 在空闲或心跳场景下保持统一行为

它最适合写成简短清单,不要写成散文。

例如:

# HEARTBEAT.md

1. Read SOUL.md
2. Read USER.md
3. Read recent memory
4. Follow current rules
5. Stay quiet when idle

这种文件的价值,不在于信息量,而在于提醒频率高、动作固定。


十一、新手怎么搭?给你一套最小可用顺序

如果你现在就想开始,不用追求一步到位。
按这个顺序最省事:

第一步:先写 SOUL.md

先把人格、边界和风格立住。

第二步:写 AGENTS.md

把会话启动顺序、安全规则、任务处理流程定下来。

第三步:写 USER.md

把用户称呼、偏好、禁忌和长期目标补齐。

第四步:写 MEMORY.md

把已经确认的重要事实和工作流沉淀下来。

第五步:再补 IDENTITY.mdTOOLS.mdHEARTBEAT.md

这些是增强项,不是你第一天必须全部完成的东西。

如果你只想先搭出能用的一版,前 4 个文件就够了。


十二、最后说几个很常见的坑

1. SOUL.md 写得太像口号墙

看起来很燃,用起来没约束力。

2. AGENTS.md 没有顺序,只有正确废话

没有启动流程、没有安全条件、没有触发规则,后面一定漂。

3. USER.md 写得太满

用户画像不是百科全书。稳定偏好写进去就够了。

4. MEMORY.md 被写成流水账

长期记忆一旦变成杂物间,后面就没人愿意看,也没人能稳定复用。

5. TOOLS.md 什么都记,最后什么都找不到

真正高频、已验证、能复用的命令才值得留下。


结语:工作空间写得越清楚,Agent 才越像“长期助手”

很多人一开始用 OpenClaw,只盯模型够不够强。
用久了才会发现,真正决定体验上限的,往往不是模型本身,而是你的工作空间是不是写得清楚。

因为模型决定的是能力上限。
而这些 .md 文件,决定的是它能不能稳定地把能力用对地方。

所以如果你准备认真用 OpenClaw,不妨先别急着调一堆高级参数。
先把工作空间这几份文件搭好。

一旦这套骨架稳了,后面不管你是做内容、做自动化、做多 Agent 协作,还是做长期个人助理,都会顺很多。

说到底,OpenClaw 工作空间最有价值的地方,不是它能放多少文件。
而是你终于有一个地方,可以把 Agent 的人格、规则和记忆,真正落到磁盘上,慢慢养成。