0
· AGENT-OS-7-LAYERS · 2026.05.09 · 7 MIN ·

Memory · 记忆层 · 让其他每一层都『留下来』的胶水

Agent OS 7 层里最分裂的一层 — OpenCode / Copilot 至今没有原生跨会话记忆。Claude Code v2.1.59+、Codex Memories、Cursor Project Memory、Hermes FTS5 工具机制对照,以及 decisions / process / relationships / lessons 4 份专门记忆文件骨架。 · by 思扬
AI · HERO seed:2420260509 Agent OS 7 层里最分裂的一层 — OpenCode / Copilot 至今没有原生跨会话记忆。Claude Code v2.1.59+、Codex Memories、Cursor Project Memory、Hermes FTS5 工具机制对照,以及 decisions / process / relationships / lessons 4 份专门记忆文件骨架。
FIG.00 — cover · ai-generated · placeholder

它回答的问题: 跨会话什么应该被记住? 它在哪: 工具自带 + 你刻意维护的「decision log」「relationship log」 它读取的时机: 多数工具在每次新会话开始时加载

原文金句

「Memory is what makes every other layer stick across sessions.」 「记忆是让其他每一层都能在不同会话间真正『留下来』的胶水。」 (#266,00:18:08,052 → 00:18:12,216)

「Your agent does remember things on its own, but it doesn’t always pick up the right things.」 「Agent 自己确实会记一些东西, 但它不一定都挑到了对的。」 (#256)

它在解决什么真问题

你有 Identity、有 Context、有 Skills, 但每次新会话, AI 还是从一张「干净的白纸」开始。 它不记得:

  • 你昨天做了哪个决定
  • 它上周帮你起草的邮件你最后改成了什么样
  • 你已经告诉过它你不喜欢被叫 「Sir」, 三次了

Memory 层的本质是: 把跨会话有用的、agent 自己挑不准的事, 刻意记下来。

这一层正在以「天」为单位变化

「记忆这条赛道几乎每天都在变化。」 (#232) 「某个工具今天的局限, 下次你再去看新版本时大概率已经被解决了。」 (#235-236)

现状(2026-05-09):

工具记忆机制文件路径 / 位置
Claude Code v2.1.59+Auto Memory + Auto Dream(GC)~/.claude/projects/<p>/memory/MEMORY.md(首 200 行 / 25KB 每会话加载)+ 主题文件
CodexMemories + Chronicle~/.codex/memories/(摘要 / 持久条目 / 最近输入 / 证据); Chronicle 通过屏幕截图引导记忆
CursorProject Memory(opt-in)基于「上次跑过的 outcome」记忆
Windsurf原生 Memory 功能~/.codeium/windsurf/memories/global_rules.md
HermesFTS5 跨会话持久记忆数据库后端
OpenCode❌ 无原生记忆需手维护 AGENTS.md 或挂 soul.md
GitHub Copilot❌ 无原生跨会话记忆仅 instructions 文件(静态)

观察: Memory 是 7 层里最分裂的一层。 OpenCode 和 Copilot 至今没有原生记忆。 这恰好印证了 Nufar 的观点:这一层正在每周更新, 但还有大缺口。

Nufar 给的 3 条实操建议

1. 先理解你这款工具的记忆怎么工作 (#242-247)

直接问它: 「Explain how your memory system works. What do you remember between sessions? What do you forget?」

这一步很多人跳过, 直接抱怨「它怎么又忘了」。 Nufar 的态度:你得先知道自己在跟什么打交道, 才能去改进它。

2. 对「什么被记住」保持刻意 (#255-258)

Agent 自己记不一定对。 关键时刻主动告诉它该记住什么:

触发时刻 1: 一个重大决策定下来时
→ 「记住:我们决定 Q3 不做 X 功能, 因为 [原因 1, 2]。
    考虑过的备选是 Y 和 Z, 否决理由是 ...」

触发时刻 2: 优先级转变时
→ 「从今天起, [项目 A] 降级, [项目 B] 升为首要。 触发原因:...」

触发时刻 3: 一段非常长的会话结束时
→ 「这次会话最重要的 3 个结论是: ...。 把这些写进 memory。」

3. 为关键场景建专门记忆文件 (#268-273)

Chief of Staff 案例需要的专门记忆:

  • Decision Log — 决定了什么 / 为什么 / 当时考虑过的备选
  • Working Process Learning — 你和 AI 协作模式的演化(它学到了什么、它仍然做错的)
  • Relationship Context — 和某位特定 stakeholder 的对话进展、他们对什么反应好

落地步骤(给你今天的 30 分钟)

Step 1 · 摸底你工具的记忆(5 分钟)

打开你主用的 AI 工具,问:

解释你的记忆系统是怎么工作的。
- 你在不同会话之间记得什么?
- 你会忘掉什么?
- 我能直接看到你存了什么吗?如果能,文件在哪?
- 我怎么主动让你记住一件事?

Step 2 · 建 4 个专门记忆文件(15 分钟)

把以下文件创建到你的工作目录(可以放在 memory/ 下):

memory/
├── decisions.md        # 决策日志
├── process-notes.md    # 工作流学习
├── relationships.md    # 关系上下文
└── lessons.md          # 我学到的关于这套 OS 的经验

每个文件用同样的结构:

# Decisions Log

## 2026-05-09
- **决定**: ...
- **为什么**: ...
- **考虑过的备选**: ...
- **谁参与了**: ...

## 2026-05-08
...

Step 3 · 用一次,看效果(10 分钟)

新开会话, 让 agent 读这些文件, 问它: 「基于我的 decisions log, 这周哪些事情可能与上周的决策矛盾?」

如果它给得出有用的回答, 这一层就开始 work 了。

常见坑

现象怎么避
过度依赖工具自带记忆工具自己挑没挑到的关键决策 silently 丢了每个重大决定主动写进 decisions.md
记得太多memory 文件膨胀到 5000 行只记「需要跨会话的、agent 自己挑不准的」
不分类堆一起一个 memory.md 杂烩至少分 decisions / process / relationships 3 类
不看不复盘写了不打开每周扫一次, 删过期、合并重复
跨工具不同步Claude Code 记了, Codex 不知道用纯 markdown + 显式 import, 不依赖工具自带的私有格式

🟢 译者点评

🟢 Memory 这一层最容易被「工具自带就够了」的错觉骗到。 我自己用 Claude Code 自带的 automemory 半年, 它确实记住了我的工作偏好, 但关键决策、跨项目的重要约定、被否决的备选方案几乎从来没被自动记住。 Nufar 的「刻意记忆」 这一条是真的要照做。

🟢 decisions.md 是 ROI 最高的一份记忆文件。 强烈建议从这一份开始。 三个月后回头看, 它本身就成了你这一年的决策日志, 价值已经超越「让 AI 记住」 这一个用途。

🟢 「memory 是其他每一层的胶水」 这个比喻非常准。 没有 memory, 你 Identity 写得再好、Context 维护得再勤、Skill 调得再准, 每次会话都从零开始, 累积不上来。 这就是为什么这套精读建议你先搭 1-3 层最小可行版, 然后立刻把 memory 加上, 而不是把 7 层都搭好再说。

🔗 立刻去做

→ 完成上面 3 步, 在 memory/decisions.md 里至少写一条。 然后读 05 Connections · 连接层 — 让 AI 触达真实系统。

🔗 延伸阅读