【学习工作赛道】AGI-Memory:给 AI Agent 装一套会“派生”的长期记忆门禁系统

一、Demo 简介

是什么: AGI-Memory 不是又一个"AI 记忆库",是对"AI 该怎么记录信息"这件事的一次重新设计。现有的记忆方案,不管是简单的对话历史堆叠,还是加了向量检索的 RAG,本质上都是同一种记录逻辑——发生了什么,就原样记下来,检索的时候靠相似度去找。AGI-Memory 认为这套逻辑从根上就不对:信息从来不是同质的,一句"这次的报错是因为环境变量没配对"和一句"以后提交代码前必须跑一遍测试",性质完全不一样,不该用同一套方式记录、同一套方式检索。AGI-Memory 把"记录"这个动作拆成四种完全不同的记法——Memory(记一次具体经历)、Knowledge(记一条脱离情境也成立的事实)、Skill(记一套可复用的流程)、Rule(记一条行为边界)——每一种记法背后是不同的判断标准、不同的生命周期、不同的检索逻辑。

面向谁: 用 AI 编程助手做重度开发的人,尤其是已经受够了"AI 什么都往记忆库里塞、结果检索出来全是噪音"这种体验的开发者。

主要功能:

  • 四层分类记录架构:不是把所有信息塞进同一个记忆库,而是先判断"这段信息本质上是什么",再决定该怎么记、记进哪一层,层与层之间用 derived_from 关系记录彼此的推导关系,可以逐层回溯"这条知识是从哪句话、哪次判断得来的"。

  • 两步式 MCP 治理流程:判断"该怎么记"这件事,交给正在对话的宿主模型来做——它已经读完了完整上下文,比后台一套通用规则更清楚这句话该记成什么。后端不重新理解一遍对话,只负责校验判断结果、检测跟已有记录有没有冲突、决定要不要真的写进去。

  • 写入即治理,不是写完再治理:新记录写入前,先跟已有记录做语义相似度比对,识别是重复、矛盾、还是对已有知识的细化或推翻——记录这个动作本身就包含了"这条信息该不该被信"的判断,不是先囤积、后清理。

  • 知识可以被替换,但从不无痕消失:一条记录被新的判断取代时,走的是标记 + 保留替换理由,永远能查到"这条记录曾经是什么样、后来为什么变了"——记录是有历史的,不是一个只会增长或者被清空的容器。

  • 同心圆洋葱可视化控制台:Canvas 2D + D3.js 力导向渲染,把"这条记录是怎么被记下来的、跟哪些其他记录有关系"直接摆在眼前——因为记录方式变了,你需要一种新的方式去看懂这些记录之间的关系,不能再靠一张扁平的列表。

  • 如图所示,主要是类知识图谱的方式帮助大家直接理解和判断,这样得出的memory,knowledge,skill,rule是否符合自己的预期,以及为什么不符合自己的预期。

二、Demo 创作思路

灵感来源:

做这个项目之前,先观察了一个现象:几乎所有 AI 记忆方案,不管技术实现多花哨,底层逻辑都停留在"日志"这个隐喻上——AI 说了什么、用户说了什么,原样存下来,需要的时候搜出来最相关的几条。这套逻辑在信息量小的时候没问题,但信息量一旦上去,会暴露一个根本性的错误:日志不分主次,记录应该分主次。一条"这次调试花了两小时"的经历,和一条"以后提交前必须跑测试"的规则,如果被同一套逻辑记录、同一套逻辑检索,前者迟早会把后者淹没在噪音里——不是因为存得太多,是因为从一开始就不该用同一种方式记这两件事。

这个判断直接决定了 AGI-Memory 的方向:不是去优化"怎么存、怎么搜",是重新定义"记录"这个动作本身该怎么做。

这个项目想改变的,是记录的方式,不是记录的数量或者速度:

传统记忆系统解决的是"记不记得住",AGI-Memory 想解决的是"记录本身对不对"。具体拆成三个从没被同一套系统统一考虑过的判断维度:

  1. 这段信息该被记成什么——这是记忆科学要回答的问题,人类记忆本身就分程序性记忆(怎么做一件事)、情景记忆(一次具体经历)、语义记忆(脱离情境的知识),AGI-Memory 第一次把这套分类真正落地成记录时的判断标准,而不是把所有信息都当成同一种"记忆"囫囵吞下去

  2. 新记录跟旧记录冲突了,该信谁——这是真值维护系统(Truth Maintenance System)这个 AI 领域几十年前就在研究的经典问题,AGI-Memory 把"记录"和"这条记录还成不成立"绑在一起,而不是记完就不再过问

  3. 有些"记录"根本不是记忆,是边界——“以后不能这么做"这句话,本质上不是在描述一件事,是在设定一条行为约束,这类信息如果被当成普通记忆存下来,只是一条"建议”,起不到真正的约束作用,需要用完全不同的方式记录、完全不同的方式生效

为什么做这个方向:

现在大家都在讨论怎么让 AI 记得更多、搜得更准,但很少有人问一个更基础的问题——AI 到底该用什么方式去记录一件事,这件事本身有没有被认真设计过。大部分方案默认"记录"就是"存储加检索",这是一个从来没被质疑过的假设。AGI-Memory 想验证的是:如果把"记录"这个动作本身重新设计——分清楚记的是什么、该用什么标准判断该不该记、记完之后这条记录还要不要为自己的成立与否负责——AI 的记忆系统会不会因此发生质变,而不只是量变。这是一件从头开始就没有太多现成答案可以照抄的事,做到现在,越来越确信这个方向本身是对的,值得继续做下去。

三、Demo 体验地址

  • 在线 Demo: AGI-Memory 控制台

    :light_bulb: 评委体验提示: 打开后 URL 会自动附带 ?demo=1 参数,进入纯前端展示模式,您可直接体验使用 Mock 数据驱动的同心圆力导向图可视化与节点交互。若需接入您的真实后端,请去掉 URL 中的 ?demo=1 即可走真实 /internal/* 接口。

  • 开源代码仓库: https://github.com/PrecipAI/AGI-Memory

四、TRAE 实践过程

在开发 AGI-Memory 极其复杂的四层架构与治理图谱渲染时,Trae IDE 是我梳理逻辑、编写前后端架构的核心工作台。以下是开发期间的关键 Session 记录:

1. AGI-Memory 系统初期构思与核心需求文档(PRD)撰写

Trae 交互摘要: “AGI-Memory治理控制台开发需求文档” Session ID 溯源: sessionId:4408385340969831:7a3be3cd15049a59f7e59e2078461680_6a33c28204f976c904ff0636.6a3a5a6f379f15f2a873b1ed.6a3a5a6f379f15f2a873b1eb:TRAE Work CN.0.1.21.no_sid.no_ppe.T(2026/6/23 18:05:35)

2. Gatekeeper 门禁逻辑联调,成功实现网关硬拦截触发测试

Trae 交互摘要: “测了,门禁能正常触发。” Session ID 溯源: sessionId:4408385340969831:332edc8f88fb88130a6834fb1ee10761_6a33c28204f976c904ff0636.6a3b8597379f15f2a873ddf9.6a3b8596379f15f2a873ddf7:TRAE Work CN.0.1.21.no_sid.no_ppe.T(2026/6/24 15:21:59)

3. 认知架构极度复杂的底层校准,与 AI 确认权重衰减、LLM 元认知等关键假设

Trae 交互摘要: “清单完全符合我的本意,没有任何偏离。你的几条校准尤其关键,我逐一确认” Session ID 溯源: sessionId:4408385340969831:b91a76bfb445bd846c00148f2797b57d_6a33c28204f976c904ff0636.6a437d6dc4e2ebe2d05e505b.6a437d6dc4e2ebe2d05e5059:TRAE Work CN.0.1.23.no_sid.no_ppe.T(2026/6/30 16:25:17)


4. 重新设定生成新的UI

Trae 交互摘要: “根据新的设计需求和自己制定的设计spec,完成了新版的UI设计,并且生成多个版本做比较最终选取新版UI” Session ID 溯源: sessionId:4408385340969831:82f5655a46a70ec177254af6cacfa930_6a33c28204f976c904ff0636.6a4b1e621a36cf5b3af32784.6a4b1e621a36cf5b3af32783:TRAE Work CN.0.1.32.no_sid.no_ppe.T(2026/7/6 11:18:12)

5.抽取出来的rule生成hook,实现门控拦截!

Trae 交互摘要: ✓ 密钥文件写入被正确拦截✓ 普通文件写入被正确跳过 ✓ 未测试就交付给用户被正确拦截

Session ID 溯源: sessionId:.4408385340969831:42827d05e0cc7c4207c313ae3d9e9cf9_6a50a3b934a0b4032dc14729.6a55b2081d1307df0053a7c3.6a55b2081d1307df0053a7c1:Trae CN.T(2026/7/14 11:50:32)

6.memory抽取后,比对宿主程序的claude.md,agent.md做反向编译

Trae 交互摘要: 新的对话仍然有着全局记忆

Session ID 溯源: sessionId:4408385340969831:e52f9f29bf8f8afd3d82b0ae85b844b2_6a574ff806fd55bde250a0b6.6a574ff806fd55bde250a0ba.6a574ff806fd55bde250a0b7:TRAE Work CN.0.1.32.no_sid.no_ppe.T(2026/7/15 17:16:40)

7.有了这些治理和抽取后,现在基本上简单的命令也能一条龙完成了

Trae 交互摘要: 对knowledge召回的改造,自动完成了测试,提交。并且做E2E测试

Session ID 溯源: sessionId:4408385340969831:d52fc8c72eee8328c59974d2c453e97e_6a33c28204f976c904ff0636.6a5759b406fd55bde250a252.6a5759b406fd55bde250a250:TRAE Work CN.0.1.32.no_sid.no_ppe.T(2026/7/15 17:58:12)

五、对应的报名审核通过的帖子链接

1 个赞

好想法,记忆存本地,云端跑逻辑,记忆可视化,然后还能编辑,个性化的超级智能体