claude-mem——关了终端再打开,AI 还记得上次聊到哪
2026/6/1 2:40:41 网站建设 项目流程

系列:AI 编程工具生态挖掘 | 字数:约 2600 字 | 预计阅读:6 分钟


Claude Code 有一个让人头疼的问题——关掉就忘了。

每次新开一个 session,它重新读项目文件、重新理解代码结构、重新跟你磨合工作方式。你昨天跟它讨论了两个小时的架构方案,今天开个新窗口,它什么都不记得。你得重新解释一遍"我们在做什么"、“之前决定用方案 B 而不是方案 A”、“这个 TODO 是留着以后做的,别现在就实现”。

claude-mem 就是解决这个问题的。74K stars,基于 SQLite + 全文搜索的跨会话记忆系统。

装了一周,测了 5 个连续会话。还挺好用,但有边界。


安装和原理

/plugininstallclaude-mem@claude-plugins-official

原理不复杂:

  1. 会话结束时,claude-mem 自动提取关键信息:你的偏好、做出的决策、进行中的任务、已知的 bug
  2. 存入 SQLite数据库,建全文搜索索引
  3. 下次启动时,从数据库检索相关记忆,注入到新会话的上下文

不是把整个对话历史塞进去——是用 AI 先提炼摘要再存。摘要比原始对话少 90% 的 token 消耗,但保留了 100% 的关键信息。


五个会话的连续测试

测试场景:开发一个 Python CLI 工具,用来管理 Docker 容器日志。不复杂,但涉及多个决策点——配置文件格式、日志格式、命令行参数设计。跨了 5 个 session,每个 session 做一件事。

Session 1:项目初始化

正常使用 Claude Code,讨论方案,创建项目骨架。

结束时 claude-mem 自动生成:

[MEMORY STORED — 2026-05-13 14:23] - Project: "docklog" — Docker container log manager CLI - Tech Stack: Python 3.12, click, docker-py, rich - Directory: ~/projects/docklog - Initialized with Poetry, pytest configured

Session 2(第二天):继续开发

打开终端,重新进入项目目录,启动 Claude Code。claude-mem 自动注入了昨天的摘要。我什么都没说,直接输入指令:

用户: 加上之前讨论的 --follow 参数 Claude Code (with claude-mem): • Memory loaded: docklog project, click-based CLI • Last session: initialized project structure with Poetry • Adding --follow flag to `logs` command... [~] docklog/cli.py (+8 lines) --follow/-f flag added to `docklog logs` subcommand

它知道"之前讨论的"是指 docklog 项目、click 框架、logs 子命令。不需要我重新描述上下文。

Session 3:改 bug

[MEMORY STORED] - Decision: Use rich.table for log formatting (not plain text) Reason: Color-coded severity levels improve readability - Decision: Config file location: ~/.config/docklog/config.yaml (not project-local .docklog.yaml — user config, not project config) - BUG #1: --tail flag displays wrong count when container has < N lines Status: Identified, not yet fixed. Root cause: no min(actual_lines, tail_count)

Session 4(三天后):改 bug

三天没碰这个项目。打开终端,启动 Claude Code:

用户: 上次那个 bug 还在吗?修一下 Claude Code (with claude-mem): • Memory loaded: BUG #1 — tail flag miscount • Reading docklog/cli.py:54 Fixed: added min(actual_lines, tail_count) on line 54 → pytest: 14 passed (including new regression test for this bug)

三天之后的"上次那个 bug",它精准定位到了 Bug #1。没有记忆系统的话,我得翻 commit log 找"上次是什么时候"、然后描述"有个 tail flag 的 bug,容器行数少于 N 的时候计数不对"。几句话的事变成了几十字的重新描述。

Session 5:总结项目状态

用户: 这个项目现在什么状态?还有什么没做完的? Claude Code (with claude-mem): Based on 4 previous sessions: Completed: ✓ Project scaffold (Poetry, pytest, click) ✓ logs command with --follow, --tail, --since ✓ rich.table formatting with color-coded severity ✓ Bug #1 fixed (tail miscount) In progress: ➤ Filter by container name (req: "docklog logs nginx") ➤ --since shows all logs, needs to filter by timestamp Known issues: ⚠ Memory usage increases when tailing large containers (investigating) ⚠ docker-py connection timeout on slow Docker hosts Open decisions (need your input): ? Should --export output JSON or CSV? (last discussed Session 2)

项目状态一目了然——做完了什么、做到一半的是什么、哪些需要我拍板。这个"项目状态 Dashboard"是 claude-mem 最有价值的输出。


token 成本

5 个会话的 token 统计:

会话无记忆 token有记忆 token增量
Session 112,40012,4000
Session 28,2009,100+900
Session 310,50011,200+700
Session 46,8007,300+500
Session 55,4005,800+400

每次启动多花 400-900 token 用于注入记忆。但省掉了人工重新描述上下文的 token——以前每次新 session 我要花 3-5 句说明"我们在做什么",这部分大约 200-400 token。净成本很低。

而且省的不是 token——是"我忘了上次讨论到哪"的心智负担。


什么场景下别用它

一次性任务。那个只做一次的数据迁移脚本,不需要记忆系统。

快速原型。原型阶段需求变化频繁,上一次的"决策"可能第二天就推翻了。旧的记忆反而会干扰。

敏感项目。claude-mem 把摘要存在本地 SQLite 文件里。如果你的项目有合规要求(代码不能离开本地),需要确认摘要中是否包含敏感业务逻辑——摘要里通常会包含文件路径、函数名、技术决策,不包含代码内容。


下一篇

claude-mem 解决了"记忆"问题。但 AI 协作还有一个维度没覆盖——并行。下一篇挖 Codex 的子代理编排系统:136+ 个专用 Agent 如何并行协作、一个任务拆给多个 Agent 同时跑的效率变化。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询