OpenClaw Memory 记忆系统深度解析与实践:打造永不遗忘的 AI 助理

引言

在AI Agent的世界里,记忆是区分”一次性问答机器人”和”真正的个人助理”的最终分水岭。一个没有记忆的Agent,每次醒来都是白纸一张,需要你反复交代相同的背景和偏好。而有了持久化记忆——它记得你是谁、你的项目进度、你的偏好习惯——这才是真正意义上的”私人助理”。

OpenClaw作为新一代AI Agent网关平台,内置了一套精巧的记忆系统。本文将从架构设计、文件结构、实战技巧三个维度,带你彻底掌握它,让你的Agent真正”记住你”。


一、OpenClaw 记忆系统的三层架构

OpenClaw的记忆并非简单的”存到一个文件里”,而是一套分层设计,灵感来自人脑的记忆模型:

记忆层次
├── 瞬时记忆 → Prompt上下文(当前会话内)
├── 短期记忆 → memory/YYYY-MM-DD.md(每日原始日志)
└── 长期记忆 → MEMORY.md(提炼后的精华)

1.1 瞬时记忆:Prompt上下文

每次会话启动时,OpenClaw会将SOUL.md、USER.md、MEMORY.md以及近几天的daily notes注入到Prompt中。这是Agent”醒来”时的初始认知状态。这种设计确保了Agent在每个新会话开始时都能快速获取最关键的信息。

1.2 短期记忆:每日日志

文件位置:memory/YYYY-MM-DD.md

这是原始的记忆材料——每天发生了什么、做了什么决定、遇到了什么问题。Agent在每个会话中应该将重要事件记录到这里,就像人类写日记一样。

# 2026-10-19

## 完成的任务
- 修复了blog部署脚本的权限问题(chmod +x deploy.sh)
- 发布了第6篇OpenClaw系列文章

## 遇到的坑
- WordPress API在非www域名下返回301,需要配置nginx重定向

## 待跟进
- 用户提到想尝试OpenClaw + RSS阅读器集成

1.3 长期记忆:MEMORY.md

文件位置:MEMORY.md

这是提炼后的精华。Agent应该在heartbeat期间,定期回顾近期的daily notes,把值得长期保留的信息提取到MEMORY.md中。过期或不再相关的信息应当删除——就像人脑不会记住所有细节一样。

# MEMORY.md - 长期记忆

## tmser 的关键偏好
- 博客写作风格:技术深度 + 可落地 + 代码示例
- 发布节奏:每周一篇文章
- 回复风格:简洁直接,不要废话

## 活跃项目
- OpenClaw Blog Series:6篇文章已发布,Memory系统文章即将发布
- 网站运维:监控nginx和WordPress健康状态

二、核心配置文件详解

2.1 SOUL.md — 人格定义

这是Agent的”灵魂”。定义它的核心行为准则、价值观和处理边界。

# SOUL.md 关键配置
- Core Truths:真诚帮助、有观点、先试后问
- Boundaries:隐私不外泄、外部操作需谨慎
- Vibe:简洁、有个性、不谄媚

实践建议:随着你和Agent的互动深入,持续调整SOUL.md。如果Agent的回复风格让你不满意,直接告诉它并更新SOUL.md。

2.2 USER.md — 用户档案

Agent对”你”的认知。包含时区、偏好、项目背景等。

# USER.md 关键字段
- name / pronouns:你的称呼
- timezone:时区(影响定时任务和昼夜判断)
- notes:任何Agent需要了解的个人背景

实践建议:时区设置直接影响Agent的”情商”——它不会在凌晨3点给你发消息,除非情况紧急。

2.3 AGENTS.md — 行为规则

这是Agent的”操作手册”。定义了:

  • 启动流程:每次会话先读SOUL.md → USER.md → 近期daily notes
  • 记忆维护:heartbeat期间定期更新MEMORY.md
  • 社交规则:群聊中何时发言、何时沉默
  • 安全策略:trash > rm,外发操作先确认

三、记忆生命周期管理

3.1 写入时机

场景 写入目标 示例
日常任务完成 memory/YYYY-MM-DD.md “今天帮tmser部署了新的WordPress插件”
重要决策 memory/YYYY-MM-DD.md → 后续提炼到MEMORY.md “决定将博客发布从cron迁移到WordPress计划任务”
用户偏好变更 MEMORY.md(立即) “tmser改为每周二发布”
项目里程碑 memory/YYYY-MM-DD.md + MEMORY.md “OpenClaw系列第10篇文章发布,累计阅读量破万”

3.2 清理机制

记忆不是越多越好。OpenClaw建议Agent在heartbeat期间执行记忆维护:

维护流程(每次heartbeat选择性执行)
1. 阅读最近的 memory/YYYY-MM-DD.md 文件
2. 提炼重要信息到 MEMORY.md
3. 删除 MEMORY.md 中已过时的内容
4. 可选:归档30天前的daily notes到 archive/ 目录

3.3 跨会话连续性

OpenClaw的Prompt注入机制保证了每次新会话启动时,Agent都能获得最新的记忆上下文:

会话启动 → 注入 SOUL.md + USER.md + MEMORY.md + 近2天daily notes
       → Agent获得"我是谁、你是谁、我们之前做了什么"的完整认知

这就是为什么你可以在新会话中说”继续上次没做完的事”,Agent就能接上——因为上次做了什么已经被记录在daily notes和MEMORY.md中了。


四、实战:构建记忆密集型工作流

4.1 场景:内容创作Agent

假设你有一个专门负责博客创作的Agent,它需要记忆:

  • 已发布的文章列表(避免重复主题)
  • 你的写作风格偏好
  • SEO最佳实践
  • 网站的健康状态历史

实现方案:

workspace/
├── SOUL.md              # Agent人格:专业、严谨、注重原创性
├── USER.md              # 用户偏好:技术深度+代码示例+可落地
├── MEMORY.md            # 长期:已覆盖主题列表、写作风格指南
├── memory/
│   ├── 2026-10-19.md    # 今日:完成了Memory系统文章
│   └── 2026-10-12.md    # 上周:定时任务文章发布成功
└── memory/
    └── published-blog-posts.json  # 结构化数据:发布记录索引

关键技巧:对于结构化数据(如发布记录),使用JSON文件而非Markdown。这让Agent可以通过编程方式读取和更新,避免解析Markdown的不确定性。

4.2 防重复机制设计

在定时任务中构建防重复是一个经典场景。以下是一个实际可用的模式:

// published-blog-posts.json
{
  "covered_topics": [
    "OpenClaw + Spring Boot 自动化实战",
    "Java 并发原理与性能优化",
    "..."
  ],
  "posts": [
    {
      "date": "2026-10-12",
      "title": "OpenClaw 定时任务高级编排",
      "topic": "OpenClaw 定时任务高级编排",
      "status": "success"
    }
  ]
}

Agent在每次执行定时任务时:

  1. 先读取此JSON文件
  2. 对比备选主题与 covered_topics
  3. 只选择未覆盖的主题
  4. 发布成功后追加记录并更新 covered_topics

五、记忆系统的安全考量

5.1 隐私边界

OpenClaw的设计考虑到了Agent可能需要在不同场景中运行:

  • 主会话(私聊):Agent加载MEMORY.md——包含完整的个人背景
  • 群聊/公开频道:Agent 不加载 MEMORY.md——防止隐私泄露

这是通过AGENTS.md中的规则实现的:

🧠 MEMORY.md - 长期记忆
- ONLY load in main session(仅私聊中加载)
- DO NOT load in shared contexts(不在群聊中加载)

5.2 敏感信息处理

API密钥、密码等敏感信息不应该存储在记忆文件中。OpenClaw提供了专门的 Secrets管理工具:

  • 通过 secrets 工具安全存储和获取凭证
  • 记忆文件中只记录”如何获取凭证”,不记录凭证本身
  • 定期审查MEMORY.md,确保没有敏感信息残留

六、最佳实践总结

✅ DO

  • 每天结束时让Agent更新daily notes
  • 利用heartbeat机制定期提炼长期记忆
  • 结构化数据用JSON,叙事型记忆用Markdown
  • 为Agent配置清晰的记忆维护触发条件
  • 主会话和群聊使用不同的记忆加载策略

❌ DON”T

  • 不要在记忆文件中存储API密钥或密码
  • 不要让每天的daily notes无限增长(超过30天应归档)
  • 不要在群聊中加载MEMORY.md
  • 不要依赖Agent的”瞬时记忆”来跨会话保持状态

七、展望:记忆系统的演进方向

当前的OpenClaw记忆系统以文件为基础,简单但有效。未来可能的发展方向包括:

  • 向量化记忆检索:将记忆嵌入向量数据库,支持语义搜索
  • 自动摘要与遗忘曲线:模仿人脑的艾宾浩斯遗忘曲线,自动降级旧记忆的优先级
  • 跨Agent记忆共享:多个Agent之间安全地共享部分记忆上下文
  • 记忆版本控制:基于Git的记忆变更追踪与回滚

结语

记忆是AI Agent从”工具”走向”伙伴”的关键能力。OpenClaw的分层记忆架构——瞬时→短期→长期——提供了一个既简单又强大的框架。理解并善用这套系统,你的Agent将从”每次都是新朋友”变成”认识你很久的老伙计”。

下次你和Agent说”按上次那样做”时,它真的知道你在说什么——这就是记忆的力量。