MemPalace:让 Claude 不再健忘的工具

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Claude 第三次犯了同样的错误,并不是因为模型不够聪明,
00:00:04而是因为它没有你项目的记忆。它记不住你上周做的决定,
00:00:09它记不住你为什么要转用 GraphQL,也记不住你们之前那些奇奇怪怪的对话。
00:00:14这就是 MemPallas,它在 GitHub 上爆火,获得了超过 52,000 颗星。据说它能为我们的
00:00:20AI 工具提供本地、无损、长期的记忆。我将向你展示 MemPallas 是什么,
00:00:26它如何工作,以及它与我们现有其他工具的关键区别。
00:00:35简单来说,MemPallas 可以逐字存储我们的对话,在本地运行,
00:00:43拥有 Claude Code 挂钩并支持 MCP 工具,而且核心记忆流不需要 API 密钥。
00:00:49现在,我需要强调的一点是,肯定会有人说,
00:00:52我们已经有 Context 模式了。是的,没错。Context 模式对于防止一次漫长的编码
00:00:59会话撑爆上下文窗口非常有用。但 MemPallas 不同。它赋予了你的 AI 永久的
00:01:06记忆访问权限,跨越不同的聊天记录,甚至跨越不同的日子。它们实际上配合得很好,
00:01:12所以你实际上可以并行运行它们。MemPallas 非常直观,
00:01:17让我带你看看如何设置以及它在现实世界中如何运作。如果你喜欢那些
00:01:22能加速工作流程的编码工具,请务必订阅。我们一直在发布相关视频。
00:01:27让我们直接开始演示,因为很多记忆工具在这一点上往往表现得很糟糕。
00:01:30我将运行 uv tool install MemPallas。该存储库目前推荐使用 uv 进行安装,
00:01:37以避免依赖冲突,不过如果你的配置支持,pip 依然有效。然后我将初始化一个
00:01:43Palace(记忆宫殿)给我的项目,只需在项目内运行 MemPallas init。你正在为
00:01:51那些 AI 不应该忘记的事情创建一个本地记忆数据库。现在你可以挖掘(mine)项目文件、笔记以及过往的
00:01:58Claude Code 会话。我可以通过输入 MemPallas mine 来做到这一点。然后我将挖掘(mine)过去所有的 Claude
00:02:06对话。这一点至关重要,因为真正的项目上下文从来不会都在一个整洁的
00:02:11地方。它分散在提交记录、文档、聊天记录、笔记、随意的 Markdown 文件中,你甚至都不记得自己写过其中一半的内容。
00:02:18现在我可以向 MemPallas 提问,比如“我们为什么要切换到 GraphQL?”它不再
00:02:25仅仅依赖今天的提示词来猜测,而是会调出过去做出那个决定的讨论内容。这就是
00:02:32第一个巨大的反差。你的 AI 不需要更大的提示窗口,它只需要更好的记忆。
00:02:37当我们运行 MemPallas mine 时,这一步就是在教授它一切。它会进入我们指定的文件夹,
00:02:44读取它发现的每一个文件,并将它们拆分成更小的片段。然后它会将这些信息卸载并保存
00:02:50所有内容原封不动地存储到你的记忆宫殿中,这样我们就可以进行搜索了。那么 MemPallas
00:02:55究竟做了什么?演示虽然成功了,我们看到了它的工作方式。它使用了记忆宫殿的隐喻,
00:03:00项目或人成为了实际的基础设施,相关的事实和事件
00:03:06居住在不同的房间里。原始源文本保存在这些抽屉里,但不要被
00:03:12这个隐喻分散了注意力。重要的是原始内容保持完整。大多数记忆系统首先做的是
00:03:18显而易见的事情。它们获取杂乱的对话并要求 LLM 将其转化为简洁的事实。这听起来
00:03:25很聪明,但有一个大问题。如果摘要丢掉了奇怪的约束、边缘情况或某个决定背后的原因,
00:03:31那么这些细节就从记忆中消失了。MemPallas 选择了相反的道路。它保留了原文
00:03:38逐字逐句,然后在它之上构建一个紧凑的索引,这样 AI 就可以找到正确的区域,
00:03:44而无需丢弃任何内容。在底层,它非常适合开发者。基于磁盘的 ChromaDB 用于检索,
00:03:51SQLite 用于知识图谱。支持 MCP 集成,以便智能体可以实际利用这些记忆,同时有 Claude Code
00:03:57钩子(hooks),使它能够融入真实的编码工作流中,而不是仅仅放在一旁。MemZero 和 Zapp
00:04:03通常更具产品化、更专注于 SDK,如果你正在构建将记忆集成到应用或
00:04:09产品中的功能,它们会更好。MemPallas 感觉更像是一个为想要让编码智能体在本地记住实际工作历史的开发者准备的工具。
00:04:16权衡显而易见。如果你想要一个托管产品,其他工具会
00:04:21更好。如果你想要一个保留原始来源的本地记忆系统,MemPallas 在这里具有优势。
00:04:27现在,Claude Code 的集成让它感觉更加实用。插件可以启动
00:04:33MCP 服务器,暴露工具,教 Claude 使用记忆协议,并在回答
00:04:39关于过去工作的问题之前搜索记忆宫殿。这个细节听起来虽小,但并非如此。在“我有一个数据库”和“我的编码智能体知道在回答之前何时去查找记忆”之间存在巨大的差异。
00:04:45“我有一个数据库”和“我的编码智能体知道在回答之前何时去查找记忆”之间存在巨大的差异。
00:04:50开发者似乎喜欢的是:首先,精确回溯。如果你三周前说了什么奇怪但重要的话,
00:04:57它可以检索原始措辞,而不是精简后的摘要。其次,成本和
00:05:03隐私。官方文档称,内容完全保留在本地,使用磁盘上的 ChromaDB 和 SQLite,核心流程
00:05:11不需要 API 密钥。然后是低初始上下文。你不需要每次都粘贴 40,000 个 Token
00:05:18的项目知识。它会运行这个。你加载足够的指针,让智能体知道去哪里
00:05:24查找。时间知识图谱在这里也是一件大事,因为软件决策确实会过期。
00:05:31我们使用 REST API。这在几个月前可能是正确的,但上个月可能就错了。
00:05:38普通的事实数据库实际上可能会错过这一点。一个时间感知的记忆系统有更好的机会
00:05:44理解发生了什么变化以及何时发生。这是第二个巨大的反差。记忆不仅是关于事实,
00:05:50它也是关于时间的。Palace 的层次结构很聪明,但绝非完美。对于某些项目,
00:05:57对你的记录进行普通的 ChromaDB 语义搜索可能就能为你提供大部分价值,而无需
00:06:02如此复杂的概念。另外还有设置和维护的问题,本地数据库很好,直到你需要备份、
00:06:08清理、迁移或同步。而且这不是一个用于管理记忆平台的完整管理器。如果你
00:06:15想要管理控制台、仪表板、权限设置,这个工具目前还没达到。
00:06:21给个实用的警告,因为这个项目病毒式传播,出现了很多山寨域名。README 指出官方来源是
00:06:28GitHub 存储库、Python 打包库和文档站点。所以不要从你搜索发现的随机 Mem Palace
00:06:34网站安装。这不是一个小警告。这是一个触及你项目
00:06:39历史的工具,所以要把它当作你开发环境的一部分来对待。如果你正在使用 Claude Code、
00:06:44Cursor 或本地智能体,这个工具很有意义。或者如果你在意本地优先的工具,
00:06:48而且你只是讨厌付费订阅,仅仅为了让你的 AI 记住你之前告诉过它的内容。
00:06:53如果你想要一个零配置的托管服务,
00:06:57或者如果你的项目足够短,以至于一个 README 和一个好的提示词就能解决问题,那我就避开这个工具。
00:07:02如果你喜欢像这样的编码工具,请务必订阅 BetterStack 频道。我们在下一个视频再见。

Key Takeaway

MemPalace 通过在本地保留完整的原始对话和项目记录,并结合时间感知知识图谱,赋予了 Claude 等编码智能体跨项目和跨时间的长期记忆能力。

Highlights

  • MemPalace 在 GitHub 上获得超过 52,000 颗星,提供本地、无损的长效记忆存储。

  • 该工具使用基于磁盘的 ChromaDB 进行检索,并利用 SQLite 构建时间感知的知识图谱。

  • 系统通过逐字存储原始对话与项目文件,避免了传统摘要方法导致的上下文信息丢失。

  • Claude Code 钩子(hooks)使编码智能体能够在回答之前主动检索记忆宫殿中的相关信息。

  • 核心记忆流无需 API 密钥,且数据完全保存在本地磁盘中,确保了隐私与成本控制。

  • MemPalace 不会尝试总结信息,而是将原文拆分为片段并索引,供智能体精确回溯。

Timeline

MemPalace 的核心定位与价值

  • Claude 频繁出错往往源于缺乏项目决策背景的长期记忆。
  • MemPalace 允许智能体访问跨越不同会话和日期的永久记忆。
  • 该系统可以与 Context 模式并行运行,互不冲突。

许多 AI 模型无法记起上周的决策或特定技术选择,而 MemPalace 填补了这一空白。与依赖临时上下文窗口的工具不同,它为 AI 提供了一个长期的、本地的记忆存储仓库。它不仅能存储代码,还能记录为何转用特定架构等决策背景。

部署流程与数据采集

  • 使用 uv 或 pip 工具即可快速安装 MemPalace。
  • 通过 MemPallas mine 指令可以将项目文件、笔记及历史对话挖掘进记忆宫殿。
  • 记忆数据以片段形式存储,支持针对特定问题进行精确溯源。

安装后,用户在项目内通过初始化命令创建记忆库。随后系统会读取指定的文件夹,将杂乱的文档、提交记录和 Markdown 文件拆解并存入。当用户询问具体决策原因时,系统能直接调用相关的历史讨论原文,而非仅仅依靠当日提示词的猜测。

技术架构与记忆处理机制

  • 系统保留原始文本而非生成摘要,防止细节约束丢失。
  • 底层采用 ChromaDB 进行语义检索,SQLite 负责存储知识图谱。
  • 集成 MCP 服务器使智能体能够主动识别何时需要查询记忆。

大多数记忆系统倾向于将对话总结为简洁事实,但这会导致边缘情况和特殊约束丢失。MemPalace 采取了相反的策略,即在逐字保存原文的基础上构建紧凑索引。它不仅是一个数据库,更通过 MCP 协议与 Claude Code 深度融合,实现了智能体在回答问题前的自动检索。

应用场景分析与注意事项

  • 时间感知的记忆系统能更好地识别软件决策的过期情况。
  • 该工具不适合需要管理控制台或权限设置的团队管理需求。
  • 官方资源仅限 GitHub 和指定文档站点,需警惕山寨域名。

软件决策具有时效性,MemPalace 的时间图谱功能有助于区分不同时间段的技术选择。虽然它在隐私和成本上有显著优势,但对于只需简单 README 即可满足的项目,其维护开销可能显得多余。对于追求本地优先、拒绝订阅费的开发者,该工具提供了极高的定制化潜力。

Community Posts

No posts yet. Be the first to write about this video!

Write about this video