Foundations 02
The Simplest Memory
一个文件就是记忆
交互
模拟一段对话,观察 agent 将关键事实写入 CLAUDE.md 文件的过程。
Conversation
点击「发送下一条」开始模拟对话
CLAUDE.md
# Agent Memory File
---
等待 agent 写入记忆...
文件即记忆
最简单的 Agent Memory 实现?一个文本文件。
OpenClaw(Claude Code)——超过 230K star,用户反馈"感觉它有意识"——将核心记忆存储在一个名为 CLAUDE.md 的 Markdown 文件中。
CLAUDE.md 的工作原理
读取:每次新会话,agent 将项目的 CLAUDE.md 加载到 system prompt 中。
写入:对话过程中,agent 决定哪些内容值得保留并追加到文件中。
透明:用户可以用任何编辑器打开此文件,阅读每条记忆,编辑或删除条目。
为什么透明性很重要
Reddit r/ClaudeAI 上的反馈:"你不需要告诉它去记住东西——它就是知道", "跨会话的连续性让人感觉像是在和同一个人合作。"
关键不在于 Markdown 格式——而在于可审计性。 用户可以看到记住了什么、为什么记住、何时记住。可审计性建立信任。
另一种基于文件的方案:Basic Memory
Basic Memory(2.6K star)更进一步:它使用 MCP 协议让 Claude Desktop 原生支持本地 Markdown 文件作为记忆。
| 维度 | OpenClaw (CLAUDE.md) | Basic Memory |
|---|---|---|
| 格式 | 单个 Markdown 文件 | 多个 Markdown 文件 + 索引 |
| 写入机制 | Agent 直接编辑文件 | 通过 MCP 协议 |
| 检索 | 整个文件注入 system prompt | 本地搜索 + MCP 查询 |
| 用户控制 | 直接编辑文件 | 直接编辑文件 |
| 规模 | 单项目 / 小规模 | 多项目 / 中等规模 |
共同模式
两种实现共享三个特性:
纯文本
无需数据库。人类可读、可编辑。
主动写入
Agent 自行决定记住什么。无需用户显式命令。
完全透明
用户可以查看、编辑、删除任何记忆。信任源于开放。
下一节
文件记忆简单而有效。但它有天花板。当记忆堆积如山,无法搜索、无法去重、无法遗忘过时信息——怎么办?