TIME WAIT.
#AI Agents 2026年7月16日 15 MIN READ

从零到生产:AI Agent 记忆管理系统

上下文窗口不是记忆。我用 Markdown 三层结构 + 写入校验 + 定期归档,让 Agent 跨 session 还能接得上话。

从零到生产:AI Agent 记忆管理系统

和 AI 聊一下午,第二天它两眼一抹黑;微信里说定的事,飞书里又重来一遍;对话一长被压缩,上周拍板的架构选型蒸发——这类事我撞得够多了。

根因其实一句就能说完:上下文窗口不是记忆。 窗口是工作台,关掉或压扁就没了。真要记住,只能落到磁盘上。

我后来定的规矩很硬:

没写进文件的东西,等于从来没发生过。

三层就够用

没有上复杂中间件,先用文件系统分层:

短期NOW.md。工作台,允许覆写,heartbeat 来了就刷新。今天在忙什么、卡在哪,看这一页。

中期是每日日志 memory/YYYY-MM-DD.md。只追加、不改写。不同 session 互相看不见聊天记录,所以重要决定必须当时落日志。条目统一成 ### HH:MM - 标题,扫起来快。

长期才是知识库:decisions/lessons/people/projects/preferences/……这里放提炼过的东西,不是流水账。启动时先读 INDEX.md,再按需打开具体文件。

再往下是 .archive/。冷数据,搜索默认不碰。日志、反思、做完的任务会按规则搬进来;决策、核心教训、用户画像我选择永不归档。

信息流大致是:对话 → 当日日志 → 夜里反思抽到知识库 → 过期的进冷库。一层比一层干净。

目录长这样(可按自己习惯裁):

workspace/
├── NOW.md
├── AGENTS.md          # 操作手册,含记忆规则
├── HEARTBEAT.md
└── memory/
    ├── INDEX.md
    ├── YYYY-MM-DD.md
    ├── memlog.sh
    ├── memory-gc.sh
    ├── decisions/ lessons/ people/ projects/ preferences/
    ├── reflections/
    ├── actions/{open,in-progress,done}/
    └── .archive/

为什么死磕 Markdown

不是信仰问题。打开就能读、git 能 diff、Agent 原生就会 Read/Write——调试时这一点救命。纯数据库当然也能做记忆,但我更想人眼先看懂「它到底记住了什么」。

检索另说。Markdown 当事实来源,向量库或 FTS 当加速器,这个组合我用着顺手。中文全文检索若走 SQLite FTS5,分词经常闹脾气;模糊问题更依赖语义搜索,会慢一点,但总比搜不到强。具体检索栈(比如我用过的 QMD)可以另开一篇,这里不展开。

写入前先对账

Agent 写记忆也会幻觉:没发生的事写进去、写错、两版打架、该记的漏记。所以写入不是「想到就 append」,而是先路由、再读旧文件、比较、分类:

ADD / UPDATE / NOOP / CONFLICT

冲突时两版都留着,标出来等人裁。我认的原则是:宁可难看,别偷偷覆盖。

路由优先级大概是:战略决策 → 可复用教训 → 人物 → 项目 → 偏好 → 日记流水 → 没营养就别写。

主动忘一点

跑满一个月,我这边积累过一百来个 Markdown。不清理的话,检索噪音变大,INDEX.md 越扫越沉。人脑也有遗忘曲线——全记住未必是好事。

归档规则很土:日志和反思超过约 30 天、且没什么人引用,就进 .archive/;做完的任务大约 14 天归档;决策和用户画像留下。

温度分我用来给检索加权,而不是替代归档规则。直观上应该是越新、被引用越多、优先级越高 → 越热。早期草稿里若写成「age 越大越热」,方向是反的;更合理的是用新近度(recency),再叠引用和优先级,例如:

T = 0.5×recency + 0.3×引用 + 0.2×优先级
偏高 → 检索加权;偏低 → 降权,并交给 GC 考虑归档

系数可以调,别把公式神圣化。真正决定删不删的,还是「过期 + 无引用」这类硬规则。

检索别一上来就向量

我实际顺序是:

  1. INDEX.md,知道类别就够了——几乎零成本
  2. 路径明确就直接读文件
  3. 实在不知道在哪,再语义搜索兜底(有延迟,别当默认路径)

大多数时候前两步就结束了。

写日志也可以很轻:

./memlog.sh "完成代码审查" "审了 bf-gateway-service PR #42,三个潜在问题"

几个常被问的

多 Agent?各自独立 memory/,主 Agent 用 heartbeat 聚合,别共用一个会互相踩的目录。

适不适合所有场景?多 session、长期助手、协作团队——适合。聊完就走的一次性问答,上这套是杀鸡用牛刀。

成本?文件本身很小;索引一般几十 MB 量级;钱可以花得很少,时间花在规则和维护上。夜间反思、每周 GC 能自动就自动,别全靠「记得去整理」。

收束一句

我要的不是「更聪明的模型」,而是 Agent 睡一觉醒来还能接上昨天的决策。文件当账本,校验当对账,归档当断舍离——朴素,但比幻想「上下文会永远记得」靠谱。

/related_artifacts

Loops 取代 Prompts:循环工程正在改变 AI Agent 的用法
#AI Agents 2026年6月10日

Loops 取代 Prompts:循环工程正在改变 AI Agent 的用法

AI Agent 从「写好一个提示词」转向「设计反馈系统」:验证、重试、状态与停止条件构成可靠 Loop。

阅读全文 arrow_right_alt
addyosmani/agent-skills:给 AI 编码 Agent 准备的工程技能包
#AI Agents 2026年6月14日

addyosmani/agent-skills:给 AI 编码 Agent 准备的工程技能包

把 spec、plan、build、test、review、ship 等工程阶段做成可复用 Agent 技能,让 AI 编码更接近真实团队节奏。

阅读全文 arrow_right_alt