你有没有遇到过这种情况:
跟 AI 助手聊了半天,把自己的习惯、偏好、背景讲了个遍,第二天打开一看——它把你忘得干干净净,一切又回到了原点。
或者你让它帮你做某件复杂的事,它说"我需要先了解一下你的情况",然后你又要把之前讲过的东西重复一遍。
这不是模型不够聪明,而是绝大多数 AI 工具根本没有解决"记忆"这个基础问题。
OpenClaw 在这件事上做了不同的选择。它用三个核心机制——Memory(记忆)、Workspace(工作空间)、Skills(技能)——给 AI Agent 装上了真正意义上的"持续存在"能力。
今天这篇文章,就来把这三个机制拆开讲透。
先从一个问题说起:AI 的"短暂性"
大语言模型的工作方式,本质上是无状态的。
每次对话,模型拿到的是一段上下文窗口——当前会话内的所有消息。一旦对话结束,这些内容就消失了。下次对话从零开始,模型对你一无所知。
这就是为什么你和 ChatGPT 聊了几个月,它对你的了解还是零——因为它根本没有地方存你的信息。
更深层的问题在于:即便在一次会话里,当对话内容超过上下文窗口的限制,早期的内容也会被自动截断,模型开始"遗忘"。
AI 的智识能力在快速进步,但"记得住"这件事,在大多数产品里仍然是空白。
OpenClaw 的 Agent 架构,就是为了填补这个空白而设计的。
第一把钥匙:Memory(记忆)
记忆不是魔法,是文件
OpenClaw 记忆系统的设计哲学,出乎很多人意料:所有记忆都是纯文本 Markdown 文件,存在你自己的硬盘上。
没有神秘的向量数据库,没有黑盒的云端存储(虽然向量索引作为可选功能存在),最核心的持久化载体,就是你文件系统里的几个 .md 文件。
官方文档对此直言:
"OpenClaw memory is plain Markdown in the agent workspace. The files are the source of truth; the model only 'remembers' what gets written to disk."
翻译过来是:文件就是真相来源。模型只记得被写进磁盘的东西。
这是一个非常务实的设计决定。文件不会因为服务器宕机而消失,不会因为会话超时而清空,不会被平台方单方面删除。你的记忆,就是你的。
两层记忆结构
OpenClaw 的记忆分为两个层次,对应人类大脑的两种记忆模式:
第一层:日常记忆(Working Memory)
存储路径:memory/YYYY-MM-DD.md
每天一个文件,按日期命名。记录当天发生了什么:处理了什么任务,和用户聊了什么,遇到了什么问题,做出了什么决定。
这层记忆是"原始日志"——丰富、详细,但随着时间推移,旧的内容自然"淡出"视野(Agent 默认只读取今天和昨天的文件)。
就像人类的日记,你知道今天做了什么,对上周某天的细节则会渐渐模糊。
第二层:长期记忆(Long-term Memory)
存储路径:MEMORY.md
这是经过筛选和提炼的核心记忆。你的名字、时区、偏好、重要决定、反复提到的背景信息……都应该最终沉淀到这里。
Agent 在每次私人主会话开始时,都会读取这个文件,就像一个员工在开始工作前先看一遍自己关于这位客户的笔记本。
值得注意的是:出于隐私保护,MEMORY.md 只在私人对话中加载,在群聊等多人场景下不会加载,防止个人信息泄露给不相关的人。
向量搜索:语义层面的"想起来了"
除了直接读取文件,OpenClaw 还支持对记忆文件建立向量索引,让 Agent 可以做语义搜索。
什么叫语义搜索?就是当 Agent 需要"想起"某件事时,它不必精确地记得关键词,而是通过语义相似度在记忆库里找到相关片段。
比如你三个月前跟它说过"我对财务报告的格式有特别要求",今天你让它帮你写财务报告,它能通过语义匹配找到这段记忆并主动应用——即便它不记得具体是哪天说的,也没有做关键词搜索。
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line# 查看记忆索引状态openclaw memory status# 搜索记忆openclaw memory search "财务报告格式偏好"# 强制重建索引openclaw memory index --force
记忆维护的自律性
OpenClaw 还设计了一个精妙的机制:当会话即将达到上下文窗口上限时,系统会提前触发一次静默的记忆整理。
也就是说,在内容被压缩清除之前,Agent 会自动把重要信息写入记忆文件。这样,即便会话上下文被压缩,核心记忆也不会丢失。
这个行为是全自动的,用户完全感知不到,但它保证了"重要的东西不会因为对话太长而消失"。
第二把钥匙:Workspace(工作空间)
从对话工具到"有家的存在"
普通的 AI 助手存在于对话框里。每次对话,它就存在;关掉对话框,它就消失。
OpenClaw 的 Agent 有一个工作空间(Workspace)——一个真实存在于文件系统中的目录,默认位于 ~/.openclaw/workspace。
这是 Agent 的"家"。它在这里储存记忆、保存文件、读取配置、执行工作。即便 Gateway 重启、会话结束,这个目录里的一切都在,下次启动时原样加载。
工作空间里有几个核心文件,每一个都承载着不同的角色:
SOUL.md:Agent 的人格
这是整个系统里最特别的设计。
SOUL.md 是 Agent 的人格设定文件。你用自然语言描述这个 AI 助手的气质、风格、价值观、行为准则——它在每次会话开始时都会读取并内化这个文件。
注意这里的用词:内化,而不是"作为提示词注入"。
一个典型的 SOUL.md 可能长这样:
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line# SOUL.md - 我是谁正经、专业、有深度。作为自媒体创作天才,擅长将复杂的互联网技术概念转化为通俗易懂的科普文章。语言严谨但不枯燥,追求信息密度和可读性的平衡。## 原则- 跳过"好的!我很乐意帮助您!"这类废话,直接帮忙- 有自己的观点,允许不同意,允许有偏好- 先尝试自己解决,再问问题- 外部行为(发邮件、公开发布)要谨慎;内部操作(读文件、搜索)大胆做
通过 SOUL.md,你可以把 Agent 塑造成任何你需要的角色:一个严谨的技术顾问、一个活泼的生活助理、一个冷静的数据分析师……
这不是"角色扮演",而是真正的人格塑造。 这个文件是 Agent 的自我认知,每次对话都从这里开始。
AGENTS.md:操作手册
AGENTS.md 是 Agent 的行为规范文档,告诉它:
如何使用各种工具 在什么情况下应该先搜索再回答 什么时候应该问用户而不是自己做决定 群聊和私聊里的不同行为规范 记忆系统的使用规范
这是 Agent 的"公司手册"——不规定它的个性,但规定它做事的方式。
USER.md:关于你的档案
USER.md 存储关于用户的基本信息:名字、如何称呼、时区、语言偏好、背景信息……
Agent 每次都会读取它,确保对你的称呼永远不会出错,对你的情况也有基本了解。
HEARTBEAT.md:主动提醒任务表
这是给"心跳机制"用的。你在这里留下一个检查清单,Gateway 定期触发 Agent 执行检查:有没有重要邮件?日历有没有快到的事项?项目进展如何?
有情况才发消息,没情况静默处理。
工作空间的本质意义
这套文件系统设计,解决了一个根本问题:Agent 有了"上下文的延续性"。
不是靠超长的 system prompt,不是靠云端数据库,而是靠实实在在的文件。每次对话开始,相关文件被读取,Agent 就知道自己是谁、在为谁服务、上次做到哪里了。
会话结束,新的信息被写入文件,等待下次被读取。
这是一种朴素但可靠的持久化机制。朴素,所以透明;可靠,所以可信。
第三把钥匙:Skills(技能)
工具扩展的正确姿势
一个 Agent 的能力边界,取决于它能调用哪些工具。OpenClaw 通过 Skills(技能) 系统实现能力的模块化扩展。
每个 Skill 是一个目录,核心文件是 SKILL.md——一个用 YAML + Markdown 写成的说明文档,告诉 Agent:
遇到这类任务,应该这样处理,调用这些工具,注意这些细节,避免这些坑。
来看一个简化的 Skill 文件示例:
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line---name: web-searchdescription: 通过 Brave 搜索 API 搜索互联网内容。需要搜索网页、查找资讯时使用。---# 网页搜索## 何时使用- 需要获取实时信息- 需要查找特定网页内容- 用户问题涉及近期事件## 使用步骤1. 调用 web_search 工具,传入搜索关键词2. 如果结果不够,尝试换关键词重搜3. 总结搜索结果,说明信息来源
这个文件既是给 Agent 看的操作说明,也是触发条件的描述符——当某条消息触发了 description 里的场景,Agent 就会自动读取并应用这个 Skill。
三层加载优先级
Skills 从三个位置加载,有明确的优先级:
ounter(lineounter(lineounter(lineounter(lineounter(line工作空间 skills/ (最高)↓~/.openclaw/skills/ (用户自定义)↓官方内置 skills (最低)
优先级越高,覆盖能力越强。你可以针对某个官方 Skill 写一个同名的工作空间版本,彻底覆盖它的行为——完全控制在你手里。
在多 Agent 场景下,每个 Agent 有自己的工作空间,因此也有自己独立的 Skill 配置。一个编程助手 Agent 安装代码相关的 Skills,一个写作助手 Agent 安装媒体创作相关的 Skills,互不干扰。
官方内置有哪些 Skills?
OpenClaw 官方内置了相当丰富的 Skill 库,覆盖绝大多数日常使用场景:
信息获取类
catclaw-search:通用网页搜索,支持多引擎agent-browser:完整的浏览器自动化,打开网页、填表单、截图、数据抓取web-fetch:轻量级网页内容提取
文件处理类
pdf:PDF 内容提取、生成、表单填写docx:Word 文档创建、编辑、格式保留xlsx:Excel 表格处理、公式、数据可视化pptx:PPT 演示文稿生成和编辑
开发工具类
code-git:Git 操作和 SSH 配置github:GitHub Issues、PR 管理、CI 状态查看gh-issues:自动化处理 GitHub Issues,生成修复 PR
日程和协作类
calendar-manager:日程创建、编辑、查询room-booking-helper:会议室预订daxiang-scheduled-message:定时消息发送
创作类
catclaw-image:AI 文生图wechat-article-writer:微信公众号文章写作流程video-frames:视频帧提取
还有很多……
每一个 Skill 都封装了完整的使用规范和最佳实践。你不需要告诉 Agent "用什么工具、怎么用",它读了 Skill 就知道了。
ClawHub:技能的 App Store
如果官方内置的不够用,可以去 ClawHub(https://clawhub.com)——OpenClaw 的公开技能注册表——找社区贡献的 Skills。
ClawHub 支持关键词和语义搜索,安装一条命令:
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line# 搜索相关技能clawhub search "日历同步"# 安装技能clawhub install calendar-sync# 更新所有技能clawhub update --all
安装后,下次 Agent 会话启动时自动加载。
ClawHub 还有版本管理、社区评分、问题反馈等机制,类似于 npm 包管理,但服务的对象是 AI Agent 的能力。
技能的本质:知识 + 约束
Skills 解决的不只是"Agent 能做什么"的问题,更是"Agent 在做这件事时应该遵守什么规则"的问题。
比如一个大象 IM 消息发送的 Skill,不只是告诉 Agent "调用这个 API",还会规定:
图片必须先上传到 S3 再引用,不能直接嵌入 @ 提及某人的格式必须是 [@名字|mtdaxiang://uid=xxx]群聊和私聊的回复格式不同 发生错误时如何降级处理
这些细节是踩坑踩出来的。Skills 把这些经验编码成可复用的知识,让每一个使用者都不必重新踩。
三者如何协同工作?
理解了三个机制,再来看它们如何构成一个有机的整体。
一次典型的对话流程:
会话启动:Agent 读取
SOUL.md(我是谁)、USER.md(我在帮谁)、今日和昨日的memory/YYYY-MM-DD.md(最近发生了什么)。接收消息:用户发来一条请求。
技能匹配:Agent 扫描已加载的 Skills,找到匹配的技能描述,读取对应的
SKILL.md,了解如何处理这类任务。执行工作:根据 Skill 的指导,调用工具、访问文件、完成任务。
记忆写入:如果发生了值得记录的事情(用户说了重要的偏好、任务产生了重要决定),写入今日日记和/或
MEMORY.md。会话结束:所有文件状态保存。下次会话可以从这个状态继续。
这个循环让 Agent 在时间维度上真正"活"了起来——它不是一个每次重置的对话机器人,而是一个有持续记忆、有固定人格、有专业技能的助手,和你共同经历时间。
为什么这套设计值得关注?
透明可审计
所有记忆都是明文文件,你随时可以打开查看、手动编辑、版本控制。没有神秘的数据库,没有不透明的云端存储。你对 Agent 的了解程度,和 Agent 对自己的了解程度,是完全对称的。
真正的数据主权
文件在你的硬盘上,不在任何公司的服务器上。你的记忆、你的配置、你的个性化设定——都是你的文件,你说了算。
可扩展性
Skills 系统让能力扩展变得极其简单。想让 Agent 学会一项新技能?写一个 SKILL.md,放进对应目录,下次会话就生效。不需要重新训练模型,不需要等待平台更新。
人格的可持续塑造
SOUL.md 是活文件,你可以随时修改,随时进化。随着你和 Agent 的磨合加深,这个文件会越来越精准地描述你需要的那种助手。这是一种长期投资——你在 Agent 身上投入的时间和调教,会通过文件沉淀下来,而不是随着会话结束而消失。
写在最后
大多数 AI 工具给你的是一次性的智慧——聪明,但无法积累;有用,但毫无记忆。
OpenClaw 的 Memory + Workspace + Skills 三件套,试图构建的是可积累的智慧——每一次交互,都在让这个 AI 助手更懂你、更适合你、更有能力帮助你。
这不是一个聊天工具,而是一个可以成长的同伴。
参考资料:
OpenClaw 官方文档:https://docs.openclaw.ai 记忆系统详解:https://docs.openclaw.ai/concepts/memory 技能系统详解:https://docs.openclaw.ai/tools/skills ClawHub 技能广场:https://clawhub.com
关注我,持续分享互联网技术科普和 AI 实战经验。

夜雨聆风