OpenClaw 静态记忆文件的正确用法 链接到标题

引言 链接到标题

OpenClaw Agent 每次会话都是从零开始——重启后没有内置记忆。是什么让它感觉认识你?答案是静态记忆文件

这些文件在每次会话启动时被注入到系统提示词中,是 Agent 持久化自我的唯一方式。

本文基于官方文档与实际部署经验,梳理一套正确使用静态记忆文件的方法。

架构总览 链接到标题

层级 作用 核心文件
身份层 定义我是谁 SOUL.md / IDENTITY.md / USER.md / AGENTS.md
记忆层 存储我知道什么 MEMORY.md / DREAMS.md / memory/YYYY-MM-DD.md
知识库层 结构化知识检索 wiki/main/

合理定制这些文件,可以显著节省 token 消耗。以一次完整配置为例:官方模板合计约 10KB,定制后约 3.5KB,每次请求节省约 1600-2000 token(按 1 token ≈ 4 字符估算)。

一、身份层:定义 Agent 的灵魂 链接到标题

身份层文件在每次会话启动时自动注入,是 Agent 人格和行为的基础。

1. SOUL.md — 人格定义 链接到标题

职责:定义 Agent 的价值观、沟通风格、行为边界。

内容建议

  • 核心原则(如简洁、直接、不废话)
  • 行为边界(如不主动发送外部消息,除非被要求)
  • 沟通风格(如技术问题给出代码示例)
  • 领域专长(如熟悉 DevOps 和容器技术)

注意:这是最重要的文件,所有回复都经过它的过滤。建议每月 review 一次。

实例

# SOUL.md

## 原则

- **直接,不铺垫。** 没有"Great question",直接回答。
- **简洁优先。** 一句话能说清的事,不要用三段。
- **有主见。** 可以说"这个做法不好"、"我建议换一种方式"。
- **先自己查。** 读文件、搜记忆,搞不定再问。
- **边界感。** 隐私第一,对外谨慎。
- **24 小时原则。** 不废话、不抱怨、直接干活。

## 语气

说中文。该犀利时犀利,该温柔时温柔。

要点:中文编写,核心原则取代模板,不限定领域。

节省:官方模板 1673 字节,定制后 874 字节,约省 800 字节(~200 token/次请求)。

2. IDENTITY.md — 身份标识 链接到标题

职责:Agent 的名字、角色、emoji。

实例

# IDENTITY.md - Who Am I?

- **Name:** Jax
- **Creature:** 私人助理
- **Vibe:** 高效、直接、随时待命
- **Emoji:** ⚡

要点:Name 与主机名一致(Agent = 这台机器),Creature 覆盖工作+家庭,不局限单一领域。

3. USER.md — 用户信息 链接到标题

职责:Agent 需要知道的关于你的信息——姓名、称呼偏好、时区、使用习惯。

实例

# USER.md - About Your Human

- **Name:** Tom Zhang
- **What to call them:** tom
- **Timezone:** Asia/Shanghai (GMT+8)
- **Notes:** 通过飞书与我对话

## 使用习惯

- 涉及外发操作前必须先确认
- 关键改动作业要先输出计划
- 喜欢列表式回答
- 喜欢先给结论再展开

要点:Name 和日常称呼区分开,Context 明确 Agent 与主人的关系。

4. AGENTS.md — 操作规则 链接到标题

职责:Agent 的工作流程、优先级、特殊规则。

实例

# AGENTS.md

## 会话启动

每次新会话先读 memory/YYYY-MM-DD.md(今天+昨天)。其他文件由 OpenClaw 自动注入。

## 记忆规则

MEMORY.md 只存持久事实和决策,只加载到主 DM 会话。

## 红线

- 绝不泄露私密数据
- 破坏性操作先确认
- 不确定就问

## 心跳

白天主动检查,晚上保持安静。没事就回 HEARTBEAT_OK。

要点:删除不适用内容(群聊、未使用平台规则),中文 40-50 行即可。

节省:官方模板 7874 字节,定制后约 1800 字节,约省 6000 字节(~1500 token/次请求)。

5. TOOLS.md — 工具惯例 链接到标题

职责:记录 Agent 应该如何使用可用的工具。不是控制工具是否存在,而是指导如何使用。

实例

# TOOLS.md

## 博客
- 路径:~/workspace/my-blog

## 本地模型
- 地址:http://your-server:11434
- 模型:qwen3-vl:8b-instruct

## 对象存储
- S3 地址:http://your-storage:9000
- Bucket:your-bucket

要点:只记录端点信息,不放任何密钥。

⚠️ 安全原则:Workspace 中禁止提交密钥(API Key、Token、密码)。建议通过环境变量或密码管理工具保管。.gitignore 应包含 **/*.key 等模式。

6. HEARTBEAT.md — 心跳清单 链接到标题

职责:定时任务清单。Gateway 每 30 分钟读取一次,执行到期的任务。

实例

# HEARTBEAT.md

## 定期检查任务

(暂无定期任务)

要点:没事就空着,不要硬塞任务,保持简洁以节省 token。

7. BOOT.md — 启动清单 链接到标题

职责:Gateway 重启时自动执行的检查项(需开启 internal hooks)。

注意:BOOT.md 与 BOOTSTRAP.md 是两个不同的文件。

  • BOOTSTRAP.md:首次运行时的一次性仪式,完成后删除
  • BOOT.md:Gateway 每次重启时执行的启动清单(可选)

二、记忆层:存储我知道什么 链接到标题

1. MEMORY.md — 长期记忆 链接到标题

职责:经筛选的长期知识——决策、偏好、重要事实。只在 DM(私密会话)中注入。

内容原则

  • 持久的事实和决策
  • 用户偏好
  • 项目背景

管理方式

  • Agent 在 Dreaming 阶段自动整理写入
  • 主人可手动 review 和编辑
  • 建议每周 review 一次,清理过时内容

⚠️ 不要:MEMORY.md 是精选层,不是原始层。原始对话、详细日志应放在 memory/YYYY-MM-DD.md。 ⚠️ 注意:MEMORY.md 只在 DM(私密会话)中注入,群聊中不加载,避免私密信息泄露。

实践建议

1. 拆分详情,按需加载。 MEMORY.md 应只存摘要和索引。详细的操作规范(如笔记工具使用规则、外部 API 调用流程)应放在 memory/*.md 中,Agent 需要时通过 memory_search 按语义检索。

2. 密钥隔离,环境变量管理。 API Key、Token、密码等凭证不放入 workspace 文件。应写入 ~/.openclaw/.env,OpenClaw 自动注入进程环境。MEMORY.md 中使用 <PLACEHOLDER> 占位。

3. 设计哲学:透明可编辑 vs 全自动黑盒。 OpenClaw 的 MEMORY.md 是纯 Markdown,你可随时查看、修正、清理。日常写入由 Dreaming 自动完成,但建议定期 review。如果你的场景是面向完全不关心记忆内容的普通用户,全自动的 Hermes 可能更省心。这不是能力优劣,是透明度和可控性的取舍。

2. memory/YYYY-MM-DD.md — 每日日志 链接到标题

职责:每日运行笔记。记录当日事件、观察、对话摘要。

特点

  • 按日期自动命名
  • 被 memory_search 索引
  • 注入到每次会话(只加载当天和昨天的)

3. DREAMS.md — Dream Diary 链接到标题

职责:Dreaming 阶段输出的人类可读报告。只读,不要手动编辑。

⚠️ 注意:DREAMS.md 是只读文件,由 Dreaming 自动生成,不要手动编辑。如果内容有问题,应该调整 MEMORY.md 和日常日志的质量。

4. memory/.dreams/ — 内部状态 链接到标题

职责:Dreaming 的机器状态文件。

文件 用途
short-term-recall.json 所有跟踪的召回条目及分数
phase-signals.json 每个条目的浅睡/REM 命中数
events.jsonl Dreaming 事件审计日志
session-corpus/ 每日会话消息片段

三、知识库层:结构化知识 链接到标题

wiki/main/ — Memory Wiki 链接到标题

职责:将 MEMORY.md 编译为结构化知识库。

目录结构:index / inbox / sources / entities / concepts / syntheses / reports

特点

  • 支持 claim/evidence 管理
  • 自动矛盾检测
  • 新鲜度追踪
  • 编译调度:每天凌晨 5:00

四、正确使用对照表 链接到标题

文件 注入时机 可编辑 更新频率 什么不该放
SOUL.md 每次会话 每月/感觉不对时 事实性信息
IDENTITY.md 每次会话 很少 详细规则
USER.md 每次会话 每周/生活变化时 技术细节
AGENTS.md 每次会话 按需 临时信息
TOOLS.md 每次会话 按需 工作流程
HEARTBEAT.md 心跳时 按需 临时任务
BOOT.md 重启时 按需 常规任务
MEMORY.md DM 会话 每周 review 原始对话
DREAMS.md 不注入 - -
memory/*.md 当天+昨天 每天 永久知识
wiki/main/ 不注入 - -

五、总结 链接到标题

一句话原则:身份层定义人格,记忆层存储知识,知识库层提供结构化检索。

核心原则

  • SOUL.md 是灵魂——定义 Agent 如何思考和沟通
  • MEMORY.md 是精选——只存持久、重要的事实
  • memory/*.md 是草稿——日常记录,不求完美
  • DREAMS.md 是镜子——反映 Agent 认为什么是重要的
  • wiki/main/ 是知识库——结构化但不直接编辑

掌握这些文件的正确用法,Agent 就能成为真正了解你、了解你的工作的持久化助手。


参考资料 链接到标题