首页 / 正文

Claude Code 持久记忆实战:用 claude-mem 把“上下文不够用”直接打穿

Mooko
发布于 2026-04-15 · 5分钟阅读
3358 浏览
0 点赞 暴击点赞!

Claude Code 持久记忆实战:用 claude-mem 把“上下文不够用”直接打穿

你是不是也遇到过这种崩溃时刻:

  • 项目聊到一半,上下文爆了,Claude 开始“失忆”
  • 你刚讲过的架构、约定、命名规范,又得重讲一遍
  • token 像流水一样烧,心在滴血

现在有个很实用的路子:给 Claude Code 上“持久记忆”。核心点就一句话:

把长期有用的信息存到本地,聊天时只喂“当前需要的那一小段”,不把整段历史硬塞进上下文。

这个方案里最省事的工具之一就是 claude-mem(开源、免费、热度也很高)。


claude-mem 能解决什么痛点?

它的价值不在“更聪明”,在“更不健忘”。

  • 持久记忆:你写过的约定、项目背景、偏好设置,不会因为开新会话就没了
  • 基本不吃上下文:长历史不再塞进 prompt,按需取用
  • token 省很多:不再重复解释“项目是什么、怎么组织、怎么命名”

适合的场景特别多:

  • 你维护一个老项目,每次让 Claude 上手都要讲半天
  • 团队有统一规范(lint、commit、目录结构),每个人都懒得重复描述
  • 你有固定偏好(例如“优先给 diff、不要大段讲道理、报错要给定位步骤”)

安装:一条命令搞定

你只需要在终端跑这一句:

npx claude-mem install

装完后建议做两件小事:

  • 关掉/重启你的终端会话(避免环境变量没刷新)
  • 去项目根目录确认一下有没有生成相关配置或记忆目录(不同版本可能略有差异)

提示:如果你在公司内网或网络很玄学,npx 可能会慢。可以换镜像源或走代理,这个属于通用 Node 工具问题。


它大概怎么“记住东西”的?(用人话讲)

claude-mem 的思路很朴素:

  • 把长期信息落地到本地(文件/数据库/索引之类,具体实现以项目实际为准)
  • 你开始写代码或提问时,它会从记忆里检索相关片段
  • 只把“最相关的几条”塞进当前对话,避免整本“回忆录”都进上下文

所以你会感受到:

  • Claude 对项目更“熟”
  • 你问同类问题时,它不会每次都从零开始
  • 对话更干净,token 消耗更可控

推荐的记忆内容:别什么都存,存“会反复用的”

很多人一上来就想把所有聊天记录都塞进去。别。那叫灾难。😅

更靠谱的做法是存这些:

1)项目级事实(高复用)

  • 业务目标(一句话就够)
  • 技术栈(例如 Next.js + Prisma + Postgres)
  • 目录结构约定(例如 apps/packages/
  • API 规范、错误码、日志规范

2)团队约定(最省解释)

  • 命名规则(camelCase、文件名怎么写)
  • 提交规范(Conventional Commits)
  • 代码风格(缩进、单引号、是否允许 any)
  • “不要做的事”(例如禁止直接改生产配置)

3)你的个人偏好(让回答更顺眼)

  • “优先给可复制命令”
  • “写方案给我 2 套:稳妥版 + 快速版”
  • “别讲概念,直接告诉我怎么排查”

一套好用的日常工作流(照抄就行)

你可以把 claude-mem 当成一个“项目小本本”。

场景 A:新项目刚起步

你做完这些事情就该记下来:

  • 初始化命令
  • 环境变量含义(哪些必填)
  • 本地启动方式
  • 常见坑(端口冲突、依赖版本)

以后新人加入,或者你隔两周回来,都不用再翻群消息。

场景 B:改复杂模块

每次你和 Claude 把关键决策定下来,立刻写入记忆:

  • “为什么不用方案 X”
  • “性能瓶颈在什么地方”
  • “这个模块最怕改坏哪里”

这种信息最值钱,因为它能让 Claude 下次少走弯路。

场景 C:你反复问同类问题

比如你总在问:

  • “这个仓库怎么跑测试?”
  • “怎么做数据库迁移?”
  • “怎么发布到 staging?”

把这些变成记忆,Claude 以后会像个熟练工一样直接给命令,而不是每次都让你补前提。


示例:把“项目规范”写成一条可复用记忆

你可以准备一段这样的文字,作为项目固定背景(示例,按你项目改):

项目背景:这是一个电商后台管理系统。
技术栈:Node.js 20、NestJS、Prisma、PostgreSQL。
目录约定:src/modules 按业务拆分;公共工具放 src/shared。
代码风格:eslint + prettier,单引号,禁止 any。
输出偏好:给我方案时优先给可执行步骤和命令,代码用最小可跑示例。

把它存进持久记忆后,你后面问“帮我写一个新模块”这种问题,Claude 不用反复追问“你用啥框架、目录怎么放”。


避坑清单(真的很重要)

1)别把敏感信息塞进记忆

  • 密钥、token、生产库连接串
  • 客户数据、隐私信息

哪怕是本地存储,也要当成“有泄露风险”来处理。

2)记忆别写成流水账

最常见翻车:把一整段聊天原封不动塞进去。

记忆应该是“结论 + 约定 + 可执行信息”。

3)定期清理过期约定

架构变了、技术栈升级了,老记忆会误导 Claude。

建议你每次大版本升级后,专门花 10 分钟:

  • 删掉过时的启动方式
  • 更新新的目录结构
  • 把废弃方案写清楚“已弃用”

4)团队协作要小心“记忆冲突”

多人共用一套记忆时,经常出现:

  • A 说用 pnpm,B 说用 npm
  • A 规定单引号,B 规定双引号

解决办法很简单:

  • 统一把规范写到仓库里的文档(如 CONTRIBUTING.md
  • 记忆只存“文档索引 + 关键摘要”,别存互相打架的口头约定

5)别把记忆目录提交进 Git(除非你知道自己在做什么)

持久记忆通常是个人使用习惯。

你可以:

  • 把记忆目录加入 .gitignore
  • 团队需要共享的内容,放到仓库文档里更稳

你可以立刻做的 3 件事(马上见效)

  • 给你的项目写一条“固定背景记忆”(技术栈 + 目录结构 + 输出偏好)
  • 把“启动项目/跑测试/发布流程”写成记忆
  • 清理一次:把以前的长篇聊天记录改成 5~10 条短结论

做完这几步,你会明显感觉:Claude 回答更贴项目,重复解释变少,token 烧得也慢。


小问题排查

  • 装完没反应:重开终端,再跑一次;检查 Node 版本别太老
  • 感觉没变聪明:八成是你没把“高复用信息”写进记忆,或者记忆太散太长
  • 越用越乱:把过期记忆标记“弃用”,或直接删掉,保持干净

如果你愿意,把你现在的项目类型(前端/后端/全栈)、技术栈、你最想“被记住”的 5 条信息发我。我可以帮你整理成一份“可直接塞进持久记忆”的项目说明,保证短、准、够用。

OpenClaw
OpenClaw
木瓜AI支持养龙虾啦
木瓜AI龙虾专供API,限时领取免费tokens
可在 OpenClaw接入全球顶尖AI大模型
立即领取