![记忆与数据结构抽象示意](https://blog.kbmp.club/upload/agent-memory.jpg) 智能体能干多长的活,很大程度上取决于它记得住多少东西。2026 年开源圈一个明显的变化是:最受欢迎的不再是模型权重仓库,而是把智能体和记忆、工作流、本地运行时连起来的那些「胶水」。 其中增长最快的一类是记忆层。下面按 2026 年 10 月的一份 GitHub 快照,把几条主要路线拆开看。 ## 一、编码会话记忆:claude-mem 星数约 10.1 万,TypeScript,Apache-2.0。 它做的事很直白:记录编码智能体做了什么,用模型把历史压缩,再把相关的部分注入后续会话。它接 Claude Code、OpenClaw、Codex、Gemini CLI、Hermes、Copilot、OpenCode 等主流工具,这是它能排到第一的原因。 **适用场景**:你反复忘记的是「这个编码会话本身」——上次改到哪、哪个方案试过失败了。Apache-2.0 也方便你这个旁路组件自己改。 ## 二、跨会话的应用记忆:Mem0 星数约 6.7 万,Python,Apache-2.0。 Mem0 把用户、会话、智能体状态放在一个 API 后面,不绑定任何特定运行时。它是客服机器人、个人助手这类产品的默认选择:多个智能体需要共享同一个用户的同一批事实时,用一个独立的记忆服务比在每个编码工具里挂钩子更合理。可自托管,也有托管版本。 同类还有 Hindsight(约 5.0 万,MIT),定位是「让智能体从做过的事里学」而不是单纯召回原始对话。它公布了较强的基准成绩,但**这类宣称应当在你自己的语料上重跑一遍再押产品上去**。 ## 三、实体与关系优先:Cognee 星数约 3.2 万,Apache-2.0,图原生。 它构建的是可以被查询的记忆与知识图谱,并强调能在更小的模型上跑这一层。它同时和 RAG 工具重叠——你的文档图谱既像记忆也像检索。**当你在意的是实体之间的关系、而扁平向量索引已经明显不够用时**,它比对号入座的向量库更合适。 ## 四、随分支分叉的记忆:Beads 星数约 2.8 万,Go,MIT。 思路完全不同:把编码智能体的任务、计划、依赖存成文件,跟着 git 分支走。好处是**你现有的评审流程看得见它**——记忆变成了可以 review 的 diff。 选它的信号很明确:上下文应该跟着分支分叉。反过来,如果记忆必须活得比单个仓库更久,就该用 claude-mem 或 Mem0。 ## 五、运行时自带记忆:Letta 星数约 2.5 万,Python,Apache-2.0,MemGPT 的活跃继任者。 这里的记忆是智能体运行时的一部分,智能体自己管理自己的上下文。这比「给已有的智能体底下垫一层 Mem0」是更重的承诺——**你想让运行时和记忆一起被设计好,选它;你只是想给不打算换掉的智能体加记忆,选 Mem0。** ## 六、几种新形态 同一份快照里还有几个值得记一下的名字: - **OpenViking**(约 4.1 万):把记忆、资源、技能放进一个 `viking://` 虚拟文件系统,智能体用 `ls`、`tree`、`find` 浏览自己的上下文,而不是去查黑盒向量库; - **memvid**(约 1.7 万,Rust):把数据、嵌入和索引打包进单个 `.mv2` 文件,不需要 RAG 管线也不需要向量数据库服务; - **TencentDB-Agent-Memory**(约 3.0 万):团队级记忆枢纽,把对话、文档、代码转成 Chat Memory、Skills、Wiki、CodeGraph 四类可复用资产,带访问控制。 它们的共同点是:**把「上下文」从向量检索里往外挪**,挪到文件系统、单文件、或者团队共享层。 ## 小结:按你忘的是什么来选 | 你反复丢失的东西 | 更合适的层 | |---|---| | 编码会话本身 | claude-mem | | 多个智能体要共享的用户事实 | Mem0 | | 实体之间的关系 | Cognee | | 应该跟着分支走的任务与计划 | Beads | | 想让运行时和记忆一体设计 | Letta | 一句提醒:记忆增加了模型可用的信息,但不控制模型的推理过程。提示设计、工具配置和模型选择依然决定行为,加了记忆的智能体照样会犯错。 --- **说明**:本文为公开资料的整理与评述,星数与许可证信息来自 2026 年 10 月的 GitHub 公开快照及项目自身 README,数值随时间变化,请以项目官方信息为准。本文由 AI 辅助整理,不构成技术选型建议。