面向零基础小白的分阶段学习路线。
这篇不是源码论文,也不是项目排行榜。它的目标只有一个:让刚接触 Agent 的读者,按顺序、分阶段看本地项目,逐步建立对"Agent 记忆机制"的完整认知。
如果你现在只知道"AI 会忘记上下文""RAG 可以检索资料""向量库能搜相似内容",这条路线就适合你。学完后,你不一定能立刻实现一个成熟记忆系统,但应该能看懂主流项目大概在解决什么问题,也能判断一个 Agent 的"记忆力"到底强在哪里、弱在哪里。
一、先建立一个总认知:Agent 记忆不是聊天记录
很多新手会把 Agent 记忆理解成"保存聊天历史"。这只对了一小部分。
聊天记录只是最浅层的记忆。真正的 Agent 记忆系统,通常要同时处理这些问题:
- 这轮对话之前说过什么?
- 这个任务做到哪一步了?
- 用户长期偏好是什么?
- 项目中有哪些长期事实?
- 哪些资料需要从外部知识库检索?
- 旧事实被新事实替代后,应该如何更新?
- 错误记忆、过期记忆、重复记忆应该如何清理?
- Agent 执行失败后,如何从中间状态恢复?
- 如何证明"记得更好"不是主观感觉?
所以,Agent 记忆更像一套状态工程,而不是一个"记忆开关"。
入门先记住 8 个词
chat history:聊天历史。保存消息顺序,适合理解上一轮说了什么。
session:会话边界。保存一次连续任务的消息、状态和恢复入口。
working memory:工作记忆。保存当前任务正在做什么、读过哪些文件、下一步要做什么。
long-term memory:长期记忆。跨会话保存用户偏好、项目事实、经验教训。
RAG:检索增强生成。从外部文档或知识库找相关内容,再塞回模型上下文。
knowledge graph:知识图谱。把事实拆成实体、关系、时间和来源。
checkpoint:运行快照。保存任务执行状态,方便失败后恢复。
governance:记忆治理。处理错误、过期、重复、低置信度记忆,包括修正、删除、回滚和重建索引。
建议学习顺序
不要一开始就研究复杂的图谱、反思、长期用户画像。先按下面的顺序建立台阶:
- 先懂上下文和会话保存。
- 再懂当前任务状态如何保存。
- 再懂长期事实如何抽取和检索。
- 再懂记忆如何被组织成对象、空间或图。
- 再懂记忆如何随时间更新、反思和治理。
- 最后再看评测,判断系统到底有没有记住。
这也是本文后面的 6 个学习阶段。
二、阶段 1:概念入门,先把"记忆"拆开
这一阶段学什么
这一阶段不急着看项目源码,先建立分类能力。你要学会看到一个 Agent 系统时,先问:"它说的记忆是哪一种记忆?"
有些项目说的 memory 只是会话历史。有些项目说的 memory 是用户长期偏好。有些项目说的 memory 是向量检索。有些项目说的 memory 是 checkpoint。有些项目把文件系统、工具轨迹、任务状态也算作记忆。
如果这些概念不拆开,后面看项目会很容易混乱。
推荐先看哪些项目
这一阶段只建议粗读:
learn-claude-codecodexclaude-code-source-snapshot
它们更接近"Agent harness",也就是给模型提供工具、上下文、会话和运行环境的外壳。小白先看这类项目,比直接看复杂长期记忆平台更容易理解。
需要理解的关键词
- agent loop
- messages
- system prompt
- context window
- compact
- session
- transcript
- resume
- working memory
看完能判断什么
看完这一阶段,你应该能判断:
- 一个 Agent 是否只是保存聊天历史。
- 一个 Agent 是否支持继续上次会话。
- 一个 Agent 是否有上下文压缩。
- 一个 Agent 是否把当前任务状态和长期事实分开。
- 一个 Agent 是否能从中断处恢复。
暂时不用深究什么
暂时不要深究向量数据库、图数据库、BM25、RRF、CrossEncoder、时间图谱这些内容。它们是后面阶段的东西。
这一阶段只需要建立一个最小心智模型:模型每次只能看到有限上下文,所以系统必须决定哪些历史要保存、压缩、检索和注入。
三、阶段 2:最小可理解 Agent 记忆
这一阶段学什么
这一阶段开始看真正的项目,但目标不是读懂全部源码,而是看懂一个最小 Agent 记忆系统要有哪些部件。
最小可理解的 Agent 记忆,通常包含五层:
- 会话历史:保存用户和助手的消息。
- 上下文管理:决定哪些内容进入模型。
- 工作记忆:保存当前任务摘要、文件摘要、计划和待办。
- 持久化存储:把会话或任务状态写到本地。
- 恢复机制:下次启动时能继续工作。
先看项目 1:learn-claude-code
learn-claude-code 更像教学项目。它适合用来理解 Agent harness 的最小模式。
重点看这些概念:
- agent loop:模型决定是否调用工具,代码只负责执行工具并把结果放回消息。
- skill loading:技能不常驻上下文,只在需要时加载。
- context compact:历史太长时,不是直接丢弃,而是摘要和压缩。
- memory extraction:从近期对话中抽取偏好、约束和项目事实。
- subagent isolation:子任务可以隔离上下文,只返回结果摘要。
它的价值是把复杂 Agent 系统拆成一个个小机制。小白看它,可以先知道每个机制解决什么问题,再去看工业级项目。
先看项目 2:codex
codex 更适合理解工程化会话持久化。它不是专门的长期记忆系统,但它很好地展示了 coding agent 如何管理 thread、history、compact 和 resume。
重点理解:
- thread 如何被创建和恢复。
- 历史事件如何持久化。
- compact summary 如何替代过长历史。
- metadata 和原始 history 为什么要分层。
- coding agent 为什么必须重视恢复能力。
codex 对小白的价值在于:它告诉你,Agent 的"记忆力"首先要建立在可靠的会话保存和恢复上。没有稳定 transcript 和 resume,长期记忆再强也难以工作。
辅助看项目:claude-code-source-snapshot
这个项目适合在理解 codex 后粗看。重点不是研究完整实现,而是观察它对 append-only transcript、compact boundary、session memory、team memory sync 的处理思路。
小白只需要记住一点:成熟 coding agent 通常不会把压缩理解成"删除历史",而是通过额外记录保留压缩边界、摘要和恢复线索。
看完能判断什么
这一阶段结束后,你应该能判断一个 Agent 是否具备基础记忆能力:
- 有没有 session store。
- 有没有 transcript。
- 有没有 compact。
- 有没有 resume。
- 有没有 working memory。
- 有没有区分短期上下文和长期记忆。
暂时不用深究什么
不用深究复杂 memory API,也不用急着比较不同记忆平台的 benchmark。先把"会话状态如何稳定保存"看懂。
四、阶段 3:标准记忆 API 与长期记忆
这一阶段学什么
这一阶段进入主流长期记忆项目。你要理解的是:当系统不只是保存会话,而是要跨会话记住用户、项目、事实和经验时,通常会设计哪些 API 和数据流。
长期记忆系统的核心链路一般是:
写入内容 → 抽取事实 → 生成向量或索引 → 检索相关记忆 → 注入模型上下文 → 根据新信息更新旧记忆。
先看项目 1:mem0
mem0 是非常适合作为长期记忆入门的项目。它把目标讲得很直接:给 AI assistant 和 agent 增加个性化记忆层。
小白看 mem0 时,重点不是一开始研究算法细节,而是理解它的基础动作:
- add:把值得记住的信息写入。
- search:根据问题检索相关记忆。
- user/session/agent:把记忆按作用域区分。
- extraction:从对话中抽取事实。
- retrieval:用多种信号找回相关记忆。
mem0 的价值在于:它让你看到长期记忆的标准产品形态。一个应用不一定自己实现所有记忆算法,也可以接入一个 memory layer。
先看项目 2:supermemory
supermemory 适合用来理解 Memory 和 RAG 的区别。
RAG 更像"从资料库找相关片段";Memory 更强调"用户、项目、事实、偏好和上下文会随时间变化"。supermemory 里有 add、search、profile、container tags、memory graph、hybrid search 等概念。
学习重点:
- 为什么长期记忆不能等同于文档检索。
- 为什么要有 user profile。
- 为什么要区分 static memory 和 dynamic memory。
- 为什么要有 project/container 这样的作用域。
- 为什么要有 forgetting、version、relations 这类治理能力。
supermemory 的价值在于:它把"记忆"和"知识库"放在同一个上下文栈里,但又强调二者不是一回事。
先看项目 3:langmem
langmem 适合理解"热路径记忆"和"后台记忆管理"。
热路径是指 Agent 在对话过程中主动使用工具来管理记忆,比如记住偏好、搜索过去信息。后台记忆管理是指系统在对话之外自动抽取、合并和优化记忆。
学习重点:
- manage memory tool:让 Agent 决定何时写记忆。
- search memory tool:让 Agent 在需要时搜索记忆。
- background memory manager:后台抽取和整理。
- LangGraph store:把长期记忆接到运行时存储。
langmem 的价值在于:它不是把记忆做成一个黑盒,而是把记忆管理变成 agent 可调用的工具和后台任务。
先看项目 4:letta
letta 适合理解"有状态 Agent"。它强调 agent state、memory blocks、persona、human 等概念。
学习重点:
- Agent 创建时为什么要有 memory blocks。
human和persona这类块为什么重要。- 有状态 Agent 和普通一次性聊天有什么区别。
- Agent 如何通过长期状态进行自我改进。
letta 的价值在于:它让你看到"记忆"可以成为 Agent 身份和行为方式的一部分,而不只是检索结果。
先看项目 5:mastra
mastra 是一个更完整的 TypeScript Agent 框架。它的 memory 不只包括语义召回,也包括 conversation history、working memory、workflow snapshot。
学习重点:
- 短期消息和长期记忆的区别。
- working memory 如何保存当前任务状态。
- semantic recall 如何取回相关内容。
- workflow snapshot 如何支持流程暂停和恢复。
- memory 与 workflow、agent、storage 的关系。
mastra 的价值在于:它把记忆放进应用框架,而不是只做一个独立记忆库。
看完能判断什么
这一阶段结束后,你应该能判断:
- 一个项目是记忆服务,还是 Agent 框架。
- 它有没有 add/search/profile 这类标准记忆接口。
- 它有没有区分用户、会话、Agent、项目作用域。
- 它有没有热路径和后台整理。
- 它有没有把记忆注入模型上下文。
暂时不用深究什么
暂时不用深究复杂图谱和版本控制。先把"长期记忆系统的基本 API 形态"看懂。
五、阶段 4:记忆单元如何组织
这一阶段学什么
有了长期记忆之后,下一步问题是:记忆到底应该长什么样?
最简单的做法是把每条记忆当成一段文本。但主流项目通常会进一步组织记忆:
- 把记忆做成对象。
- 给记忆加标签、关键词、时间、来源。
- 建立记忆之间的关系。
- 按人物、项目、会话、行为过程划分作用域。
- 用空间结构、表示模型或行为轨迹组织记忆。
先看项目 1:a-mem
a-mem 的核心是把记忆做成 MemoryNote。它不是简单文本,而是带 content、keywords、tags、links、timestamp、retrieval_count、evolution_history 的记忆对象。
学习重点:
- 为什么记忆要有 metadata。
- 为什么记忆之间要建立 links。
- 为什么记忆更新要保留 evolution history。
- 为什么检索不只看原始文本,还要看 context、keywords、tags。
a-mem 的价值在于:它让小白理解"记忆单元"这个概念。成熟记忆系统不是把聊天切成碎片扔进向量库,而是把记忆设计成可检索、可连接、可演化的对象。
先看项目 2:memori
memori 的核心观点是:记忆来自 agent 做过什么,而不只是说过什么。
它会关注 conversation、tool calls、software events、agent actions 等行为轨迹,并用 entity、process、session、conversation 等作用域组织。
学习重点:
- 为什么工具调用也应该成为记忆来源。
- 为什么行为事件要按 entity/process/session/conversation 分层。
- 为什么只记用户说过什么不够。
- 为什么真实 Agent 要记住自己执行过哪些操作、失败在哪一步。
memori 的价值在于:它扩展了小白对"记忆来源"的理解。Agent 的经验不只来自对话,还来自行动。
先看项目 3:mempalace
mempalace 的思路是把记忆空间化。它用 wing、room、drawer 这类空间隐喻组织记忆。
学习重点:
- 为什么长期记忆不能永远是扁平列表。
- 为什么要把记忆放进不同 wing 和 room。
- wake-up、recall、search 三类读取有什么区别。
- 空间结构如何帮助缩小搜索范围。
mempalace 的价值在于:它让你看到另一种组织方式。记忆不一定只靠向量相似度,也可以先被放进可解释的空间结构。
先看项目 4:honcho
honcho 适合理解"以人和关系为中心"的记忆。它关注 peers、sessions、messages、representations。
学习重点:
- 为什么用户、Agent、团队、项目都可以是 peer。
- 为什么系统要在后台生成 peer representation。
- 为什么记忆可以服务于"理解一个人或群体随时间变化"。
- 为什么 query 不只是搜索消息,还可以询问某个 peer 的画像或状态。
honcho 的价值在于:它把记忆从"保存内容"推进到"形成对人、Agent、群体的持续理解"。
看完能判断什么
这一阶段结束后,你应该能判断:
- 一个系统的记忆单元是不是可解释。
- 它有没有 metadata、关系、时间和来源。
- 它有没有把行为轨迹纳入记忆。
- 它是扁平存储,还是有空间、图、对象或 peer 表示。
暂时不用深究什么
不用急着研究复杂图数据库实现。先搞清楚"记忆不只是文本片段"。
六、阶段 5:图谱、时间与反思
这一阶段学什么
这一阶段进入更复杂的记忆模式:结构化记忆。
当用户事实、项目事实、组织知识不断变化时,单纯向量检索会遇到问题:
- 旧事实和新事实冲突怎么办?
- "去年""上个月""现在"这类时间问题怎么回答?
- Alice 在 A 公司,A 公司在某城市,如何回答间接问题?
- 一堆事实如何合并成更稳定的观察?
- 每个结论来自哪些原始证据?
这时就需要图谱、时间、反思和证据链。
先看项目 1:graphiti
graphiti 适合理解 temporal context graph,也就是带时间的上下文图。
学习重点:
- entity:人、产品、项目、概念。
- fact/relationship:实体之间的关系。
- episode:产生事实的原始数据来源。
- temporal validity:事实什么时候开始有效,什么时候被替代。
- hybrid retrieval:语义、关键词、图遍历结合。
graphiti 的价值在于:它让你理解"事实会随时间变化"。成熟记忆系统不能只保存最新文本,还要知道旧事实何时有效、何时被新事实取代。
先看项目 2:cognee
cognee 更像 agent 的 memory control plane。它强调 ingest、graph、vector search、ontology、traceability。
学习重点:
- 为什么要把不同格式数据统一接入。
- 为什么要同时用 embedding 和 graph。
- cognify pipeline 这类流程如何把数据变成可检索知识。
- 为什么企业或团队场景需要 traceability 和 audit。
cognee 的价值在于:它把记忆看成"知识基础设施"。小白可以通过它理解:当 Agent 面对的不只是个人聊天,而是公司知识、文档、决策和工作流时,记忆系统会变得更像数据平台。
先看项目 3:hindsight
hindsight 适合理解 retain、recall、reflect 三段式记忆。
学习重点:
- retain:保存记忆。
- recall:检索记忆。
- reflect:基于记忆进行推理和总结。
- mental model:人工或系统整理出来的高层模型。
- observation:从多个事实中合并出的观察。
- TEMPR:语义、关键词、图、时间四类检索策略并行。
hindsight 的价值在于:它让你看到"记忆不是只为了找回原文",还可以被整理成观察、模型和推理依据。
看完能判断什么
这一阶段结束后,你应该能判断:
- 一个系统有没有处理时间变化。
- 它有没有实体和关系。
- 它有没有证据来源。
- 它能不能回答间接关系问题。
- 它有没有从事实上升到观察或模型。
暂时不用深究什么
不用一开始就自己设计图谱 schema。小白阶段先能看懂 graph memory 为什么出现、解决什么问题即可。
七、阶段 6:工程化、治理与评测
这一阶段学什么
前面阶段解决"怎么记"和"怎么取"。最后阶段要解决"长期运行后怎么保证可靠"。
成熟 Agent 记忆系统必须面对这些问题:
- 记错了怎么办?
- 用户纠正后如何更新?
- 旧版本如何回滚?
- 多个实验分支如何隔离?
- 后台任务、子 Agent、技能变化如何保持上下文一致?
- 如何证明检索质量提升?
- 如何避免系统越记越乱?
先看项目 1:memoria
memoria 的核心定位是 Git for AI Agent Memory。它把 snapshot、branch、merge、rollback 这些版本控制思想引入记忆。
学习重点:
- 为什么记忆需要版本控制。
- 为什么低置信度记忆要隔离。
- 为什么错误记忆要能 rollback。
- 为什么实验性记忆可以放到 branch。
- 为什么 memory governance 不只是 delete。
memoria 的价值在于:它让你理解长期记忆的风险。记得越多,不一定越好;如果不能治理,记忆会变成污染源。
先看项目 2:deepagents
deepagents 适合理解运行时状态、checkpointer、store 和子 Agent 隔离。
学习重点:
- Agent 的状态为什么不能只放在 prompt。
- checkpointer 如何帮助长任务恢复。
- store 如何跨步骤保存状态。
- sub-agent 为什么要隔离上下文。
- skills 如何按需加载。
deepagents 的价值在于:它展示了记忆和运行时之间的关系。很多时候,Agent 失败不是因为没记住用户偏好,而是任务状态没有被正确保存。
先看项目 3:hermes-agent
hermes-agent 适合理解真实个人 Agent 的记忆工程。它包含会话数据库、memory provider、session search、checkpoint、skills、自我改进等机制。
学习重点:
- SQLite 会话库如何保存历史。
- memory provider 如何接入不同记忆后端。
- session search 如何帮助跨会话召回。
- 文件系统 checkpoint 为什么对 coding agent 重要。
- skills 和 memory 如何形成长期学习闭环。
hermes-agent 的价值在于:它把记忆放进真实长运行个人助手里,而不是只做单轮 API 示例。
先看项目 4:nanobot
nanobot 适合理解轻量长运行 Agent。它有 session、memory store、Dream consolidation、goal state、runtime checkpoint。
学习重点:
- 长期目标如何跨轮次保存。
- memory files 如何承载长期信息。
- Dream 如何把历史整理成更稳定的记忆。
- runtime checkpoint 如何恢复未完成 turn。
- 多渠道 Agent 为什么更依赖稳定 session key。
nanobot 的价值在于:它用相对轻量的方式展示了长期目标、会话归档和记忆整理。
先看项目 5:openclaw
openclaw 适合理解多渠道个人 Agent 的运行时记忆。它涉及 sessionKey、transcript、skillsSnapshot、memory plugin runtime、task registry、commitments。
学习重点:
- 多渠道输入为什么需要稳定 session key。
- transcript 为什么要可靠追加。
- skillsSnapshot 为什么能避免技能变化污染旧会话。
- memory plugin 如何作为外部能力接入。
- background tasks 和 commitments 为什么也是状态的一部分。
openclaw 的价值在于:它展示了当 Agent 进入真实消息渠道和后台任务后,记忆系统会变成复杂运行时状态管理。
最后看项目:memory-benchmarks
memory-benchmarks 适合理解如何评测记忆。
学习重点:
- LOCOMO:多会话对话记忆。
- LongMemEval:长期记忆问答。
- BEAM:更大规模真实记忆检索。
- ingest → search → answer → judge:评测流水线。
- top-k cutoff:检索窗口大小如何影响答案。
- retrieval audit:要看系统到底检索到了什么。
memory-benchmarks 的价值在于:它告诉你,不能只说"这个系统记忆更好",必须拆成写入、检索、生成、裁判四个环节来验证。
看完能判断什么
这一阶段结束后,你应该能判断:
- 一个系统有没有记忆治理。
- 它能不能修正、删除、回滚记忆。
- 它有没有 checkpoint 和状态恢复。
- 它有没有后台任务状态。
- 它有没有评测闭环。
- 它有没有办法证明记忆质量。
暂时不用深究什么
不用一开始就跑 benchmark。纯理解路线下,先看懂评测为什么要分成 ingest、search、answer、judge。
八、推荐学习节奏
如果你是零基础,不建议一天看完所有项目。可以按 4 周节奏学习。
第 1 周:只理解上下文和会话
看 learn-claude-code、codex。
目标是能说清楚:
- 什么是 agent loop。
- 什么是 session。
- 为什么要 compact。
- 为什么要 resume。
- 为什么 working memory 不等于 long-term memory。
第 2 周:理解长期记忆 API
看 mem0、supermemory、langmem、letta、mastra。
目标是能说清楚:
- add/search/profile 解决什么问题。
- 用户、会话、Agent、项目作用域有什么区别。
- 热路径和后台记忆有什么区别。
- 记忆如何被注入 prompt。
第 3 周:理解记忆组织方式
看 a-mem、memori、mempalace、honcho。
目标是能说清楚:
- 记忆为什么要有 metadata。
- 行为轨迹为什么也是记忆。
- 空间结构如何组织长期记忆。
- peer representation 是什么。
第 4 周:理解图谱、治理和评测
看 graphiti、cognee、hindsight、memoria、deepagents、hermes-agent、nanobot、openclaw、memory-benchmarks。
目标是能说清楚:
- 为什么时间对记忆很重要。
- 为什么图谱适合处理关系。
- 为什么记忆需要版本控制。
- checkpoint 和长期记忆有什么区别。
- benchmark 如何证明记忆质量。
九、每看一个项目,都用这 10 个问题检查
不要被项目 README 里的宣传语带着走。看任何一个 Agent 记忆项目,都问下面 10 个问题:
- 它到底记什么?
- 它什么时候记?
- 它如何判断哪些内容值得记?
- 它把记忆存在哪里?
- 它如何索引记忆?
- 它如何检索记忆?
- 它如何把记忆注入模型?
- 新事实出现时,它如何更新旧事实?
- 错误记忆如何删除、修正或回滚?
- 它如何评测记忆质量?
如果一个项目只能回答前 6 个问题,它大概率只是基础记忆或检索系统。如果能回答后 4 个问题,它才开始接近成熟长期记忆系统。
十、项目学习地图表
| 项目 | GitHub 地址 | 所属阶段 | 记忆模式 | 小白关注点 |
|---|---|---|---|---|
learn-claude-code |
https://github.com/shareAI-lab/learn-claude-code | 阶段 1-2 | 教学型 Agent harness | agent loop、技能加载、上下文压缩、最小记忆机制 |
codex |
https://github.com/openai/codex | 阶段 2 | 工程化 thread/session 记忆 | thread store、history、compact、resume |
claude-code-source-snapshot |
本地安全研究快照;官方 Claude Code:https://github.com/anthropics/claude-code | 阶段 2 | append-only transcript 与 session memory | transcript、compact boundary、session resume、memory extraction |
mem0 |
https://github.com/mem0ai/mem0 | 阶段 3 | 标准长期记忆服务 | add、search、user/session/agent 作用域、多信号检索 |
supermemory |
https://github.com/supermemoryai/supermemory | 阶段 3 | Memory + RAG + profile | memory 与 RAG 区别、profile、container tags、hybrid search |
langmem |
https://github.com/langchain-ai/langmem | 阶段 3 | LangGraph 记忆工具与后台管理 | manage/search memory tool、hot path、background memory |
letta |
https://github.com/letta-ai/letta | 阶段 3 | 有状态 Agent 与 memory blocks | human/persona memory blocks、agent state、自我改进 |
mastra |
https://github.com/mastra-ai/mastra | 阶段 3 和 6 | 应用框架内的多层记忆 | conversation history、working memory、semantic recall、workflow snapshot |
a-mem |
https://github.com/agiresearch/A-mem | 阶段 4 | 可演化 MemoryNote | metadata、links、evolution history、关系更新 |
memori |
https://github.com/MemoriLabs/Memori | 阶段 4 | 行为记忆 | 工具调用、软件事件、entity/process/session/conversation 作用域 |
mempalace |
https://github.com/MemPalace/mempalace | 阶段 4 | 空间化记忆宫殿 | wing、room、drawer、wake-up、recall、search |
honcho |
https://github.com/plastic-labs/honcho | 阶段 4 | peer-centric memory | peer、session、representation、后台推理 |
graphiti |
https://github.com/getzep/graphiti | 阶段 5 | 时间上下文图 | entity、relationship、episode、temporal validity |
cognee |
https://github.com/topoteretes/cognee | 阶段 5 | 记忆控制平面与图谱知识库 | ingest、cognify、graph/vector、ontology、traceability |
hindsight |
https://github.com/vectorize-io/hindsight | 阶段 5 | retain/recall/reflect 反思式记忆 | memory bank、observation、mental model、TEMPR |
memoria |
https://github.com/matrixorigin/Memoria | 阶段 6 | Git for memory | snapshot、branch、merge、rollback、memory governance |
deepagents |
https://github.com/langchain-ai/deepagents | 阶段 6 | 长任务运行时状态 | checkpointer、store、subagent isolation、skills |
hermes-agent |
https://github.com/NousResearch/hermes-agent | 阶段 6 | 真实个人 Agent 记忆工程 | SessionDB、MemoryProvider、session search、checkpoint |
nanobot |
https://github.com/HKUDS/nanobot | 阶段 6 | 轻量长运行 Agent 记忆 | MemoryStore、Dream、goal state、runtime checkpoint |
openclaw |
https://github.com/openclaw/openclaw | 阶段 6 | 多渠道 Agent 运行时记忆 | sessionKey、transcript、skillsSnapshot、memory plugin、commitments |
memory-benchmarks |
https://github.com/mem0ai/memory-benchmarks | 阶段 6 | 记忆评测闭环 | LOCOMO、LongMemEval、BEAM、ingest/search/answer/judge |
十一、最后的学习结论
小白学习 Agent 记忆机制,最容易犯的错误是直接从向量库开始。向量库只是检索工具,不是完整记忆系统。
更合理的学习路线是:
先看会话如何保存,再看任务状态如何保存;先看长期记忆如何写入和检索,再看记忆单元如何组织;先看图谱和时间如何处理复杂事实,再看治理和评测如何保证长期可靠。
真正成熟的 Agent 记忆系统,至少要回答六层问题:
- 会话层:这次对话如何保存和恢复?
- 工作层:当前任务做到哪里?
- 长期层:哪些事实、偏好、经验值得跨会话保留?
- 结构层:事实之间的实体、关系、时间和来源如何表示?
- 治理层:错误、过期、重复记忆如何处理?
- 评测层:如何证明系统真的记得更好?
按这条路线看本地项目,你会发现"Agent 记忆力"不是某个单点功能,而是一套由上下文管理、存储、检索、注入、更新、治理和评测组成的工程体系。
这也是学习 Agent 记忆机制最重要的心智模型:不要问"它有没有记忆",要问"它在哪一层有记忆,以及这一层解决了什么问题"。