自托管服务
CodeAbra/iai-personal-memory-engine avatar
CodeAbra/iai-personal-memory-engine

iai-pme:给 AI 助手装上本地记忆,让每一轮对话都不再失忆

人工智能的网络大脑。它永远不会忘记任何细节,准确地记住您所说的内容,并随着时间的推移了解您的工作方式。免费、本地,可与 Cursor、Claude Code、Codex、OpenClaw、Hermes 等配合使用。麻省理工学院。

883 个 Star108 个 ForkPythonMIT
GitHub

秒懂

它是什么?
iai-pme 是一个本地运行的 MCP 记忆服务器,逐字记录你的每一轮对话,并在新会话开始时注入相关记忆。它宣称比 agent 搜索省约 88% 的 token,但你需要先确认它的存储方式和隐私边界是否适合自己。
适合谁用?
iai-pme 适合那些每天使用 MCP 兼容的 AI 助手、且对对话隐私敏感的个人开发者。它不适合需要多租户记忆的应用开发者,也不适合期望 LLM 提取事实而非逐字存储的用户。
能商用吗?
可以。MIT 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
还在维护吗?
在维护。仓库最近一次提交在 2 天前。
用什么语言写的?
主要是 Python(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。

开源项目深度解析

它解决什么问题:AI 助手每轮对话都失忆

用过 Claude Code 或 Cursor 的人都知道,每次新开会话,助手就像第一次见到你。它不记得你上周说过的项目约束,不记得你偏好的代码风格,甚至不记得你刚在另一个文件里强调过的事项。iai-pme 的目标就是消除这种失忆。它不是一个云服务,而是一个完全本地的 MCP 服务器,捕获你与助手之间的每一轮对话,逐字存储,并在新会话开始时注入一小段相关记忆。它的定位是个人记忆引擎,不是给应用开发者用的记忆层。README 里明确说,如果你需要多租户记忆,应该用 Mem0 或 Supermemory 这类产品。它只服务于一个场景:让“你的”助手记住“你”。

工作机制:逐字存储,而非 LLM 提取

核心区别在于存储方式。大多数记忆层使用 LLM 从对话中提取事实或生成摘要,而 iai-pme 选择逐字存储每一轮对话,写一次之后永不重写。这意味着它的写入路径不需要调用 LLM,只有文件 IO 和一次本地 embedding。当事实发生变化时,旧版本被归档但仍然可检索,README 声称历史措辞的检索准确率达到 1.000。它使用自己的 Rust 存储引擎,不依赖 Qdrant 或 Neo4j。社区检测算法和超维度记忆基质也是自研的。这种设计的代价是存储占用会随对话量线性增长,但换来了可验证的完整性和低成本写入。

安装与接入:一条命令,但只支持 macOS 和 Linux

快速开始部分提供了一条安装命令,通过 curl 执行 bootstrap.sh 脚本。脚本会检查前置条件,将仓库克隆到 ~/.local/share/iai-pme,然后构建并安装后台引擎、捕获钩子和 MCP 服务器。整个过程需要本地编译 Rust 核心,所以机器上必须有 Rust 工具链。安装后,它通过 MCP-over-stdio 与客户端通信,兼容 Claude Code、Claude Desktop、Cursor、Codex CLI、Gemini CLI 等。Windows 用户没有官方支持,这是第一个明显的限制。如果你用的是 Windows,要么换系统,要么等待社区适配。

token 节省的宣称:有基准,但需要你自己验证

README 给出了一个具体数字:注入的记忆包比 agent 搜索便宜约 88%。作者在自己的存储上测量了三周数据,282 个记忆包,约 99,000 token 的上下文注入,替代了平均 2,639 token 的 agent 搜索,保守估计节省约 707,000 token。但作者也承认这些基准最初是为了满足自己的好奇心。仓库里附带基准测试的 harness,你可以自己运行验证。这个数字有一个前提:它只针对会话开始时的环境记忆包,不适用于显式调用 memory_recall 的情况。后者受 budget_tokens 限制,默认 1,500,节省效果不如环境包。所以,如果你打算依赖这个数字做成本预算,最好先在自己的工作负载上跑一遍基准。

局限性与风险:逐字存储的隐私与空间权衡

最大的局限是逐字存储意味着所有对话内容都以明文形式保存在本地磁盘上。虽然没有任何遥测或 API key,但一旦你的机器被入侵,攻击者可以读取你与 AI 助手的所有对话历史。README 没有提到加密存储,所以这是一个需要你自己评估的风险。另一个问题是存储增长:没有提到自动清理或压缩机制,长期使用后磁盘占用可能相当可观。此外,它的设计哲学是“自闭式记忆”,强调逐字而非释义,这意味着它不适合需要抽象总结的场景。如果你希望记忆引擎能提炼出“用户偏好”这类高层概念,它可能让你失望。

替代方案:claude-mem 与记忆层的本质区别

README 对比了 Mem0、Supermemory、Graphiti 和 Letta,它们都是面向产品构建的记忆层,云优先,依赖 LLM 提取。还有一个更接近的替代品是 claude-mem,但它是基于压缩的,存储 AI 生成的会话摘要。iai-pme 与它们的区别在于:它不提取、不压缩,只逐字存储。这意味着它的检索精度可能更高,但无法提供抽象层面的记忆。选择哪一方取决于你的需求:如果你需要的是可查询的事实数据库,用记忆层;如果你需要的是助手能回忆起你说过的每一个字,iai-pme 是更直接的选择。

维护与升级:活跃开发,但需要关注版本兼容

项目最近一次推送是 2026 年 8 月 23 日,v3.0.8 版本,距离 v3.0.6 仅两天,说明开发很活跃。但活跃也意味着 API 可能变化,升级时需要留意 MCP 工具定义是否变动。README 提供了 Doctor 工具和更新指南,但没有说明数据库迁移策略。如果你在生产环境中依赖它,建议在升级前备份存储目录。许可证是 MIT,可以自由使用和修改,但如果你修改了 Rust 核心,需要自己维护编译流程。

编辑结论

iai-pme 适合那些每天使用 MCP 兼容的 AI 助手、且对对话隐私敏感的个人开发者。它不适合需要多租户记忆的应用开发者,也不适合期望 LLM 提取事实而非逐字存储的用户。在采用前,你应当验证三件事:一是确认你的 MCP 客户端能正确调用 memory_recall 工具;二是检查本地存储的磁盘占用,因为逐字存储会持续增长;三是运行仓库自带的基准测试脚本,亲眼看 token 节省数据是否在你的工作负载下成立。如果你接受它的存储哲学,它可能是目前最透明的本地记忆方案之一。

官方来源

  1. Official README
  2. Project repository
  3. Release notes
社区笔记

社区笔记