📌 为什么需要记忆管理?
AI Agent 的记忆系统是其核心能力之一。良好的记忆管理可以让 Agent:
📚 学习积累
记住用户偏好、历史交互,不断改进服务质量。
🔄 上下文保持
在长对话中保持上下文连贯性。
🎯 个性化服务
基于历史记录提供个性化建议。
⚡ 效率提升
避免重复解释,快速响应用户需求。
🧠 记忆类型
1. 短期记忆(Session Memory)
短期记忆存储在当前会话中,会话结束后消失。适合存储临时信息和上下文。
# 短期记忆示例
# 在当前会话中记住用户的名字
用户: 我叫张三
Agent: 好的,张三,我记住了。
# 后续对话中使用
用户: 我叫什么名字?
Agent: 你叫张三。
2. 长期记忆(Long-term Memory)
长期记忆存储在文件系统中,持久化保存。适合存储重要信息和用户偏好。
# MEMORY.md 文件示例
# ~/.openclaw/agents/my-agent/MEMORY.md
## 用户偏好
- 语言:中文
- 时区:Asia/Shanghai
- 喜欢简洁的回答
## 重要信息
- 项目名称:miaoquai
- 技术栈:Next.js, TypeScript
- 部署平台:Vercel
## 历史记录
- 2026-06-20:讨论了 SEO 优化策略
- 2026-06-21:配置了 Discord Bot
3. 工具记忆(Tool Memory)
工具记忆存储工具调用的结果,避免重复调用。
# 工具记忆示例
# 缓存 API 响应
{
"tool": "web_search",
"query": "OpenClaw latest news",
"result": {...},
"cached_at": "2026-06-22T01:00:00Z",
"expires_at": "2026-06-22T02:00:00Z"
}
📝 MEMORY.md 编写规范
MEMORY.md 是长期记忆的核心文件,以下是编写规范:
# MEMORY.md 模板
## 用户信息
- 姓名:[用户名]
- 角色:[用户角色]
- 偏好:[用户偏好]
## 项目信息
- 项目名称:[项目名]
- 技术栈:[技术栈]
- 部署状态:[状态]
## 重要决策
- [日期]:[决策内容]
## 待办事项
- [ ] [任务1]
- [ ] [任务2]
## 学到的教训
- [教训1]
- [教训2]
💡 提示:定期清理 MEMORY.md,删除过时的信息,保持文件简洁。建议每月审查一次。
🔍 记忆检索
OpenClaw 提供了强大的记忆检索功能:
# 搜索记忆
openclaw memory search "SEO 优化"
# 输出
[2026-06-20] 讨论了 SEO 优化策略
[2026-06-21] 配置了 sitemap.xml
# 查看记忆统计
openclaw memory stats
# 输出
短期记忆: 15 条
长期记忆: 42 条
工具记忆: 128 条
🎯 最佳实践
1. 分层存储
- 临时信息 → 短期记忆
- 重要信息 → 长期记忆(MEMORY.md)
- 工具结果 → 工具记忆(缓存)
2. 定期清理
# 清理过期的短期记忆
openclaw memory clean --type session --older-than 7d
# 清理过期的工具记忆
openclaw memory clean --type tool --older-than 30d
3. 结构化存储
使用结构化的格式存储记忆,便于检索:
# 好的格式
## 用户偏好
- 语言:中文
- 时区:Asia/Shanghai
# 不好的格式
用户喜欢中文,时区是上海
4. 保护敏感信息
不要在记忆中存储敏感信息,如密码、API 密钥等。