AI 智能体实操用例库

真人真做过的 AI 智能体案例:做法、提示词结构、成本、结果状态,全部链回一手出处。

编程搭建 · 评分 80 · 状态:已实现(作者自用 6 个月账本;示例为合成,6 个月数字来自作者本人记忆库,未经外部验证)

让智能体的记忆会遗忘:6 个月自用账本,12 条没佐证的猜测至今仍被关在门外

作者/出处:Oleh Yudin
原文:https://medium.com/@avis2329/i-built-a-memory-system-for-claude-code-that-knows-how-to-forget-b411807ba138
日期:2026-10-16(2026-10-20 更新;自用始于 2026-03 下旬) · 工具:Claude Code hooks、 Markdown 文件、 SQLite、 本地向量、 小知识图谱
成本:本地存储免费;会话结束蒸馏用 Haiku 级小额调用 + Claude Code 订阅(原文未给订阅价) · 耗时:最小版(Markdown + 会话结束蒸馏)一天内;完整版需数日

速览卡

一句话

别把智能体的记忆做成无限增长的聊天存档:作者给 Claude Code 做了一套“会遗忘”的记忆系统——推断出来的记忆先关在暂存区,只有被第二个会话佐证才转正;用不上的按种类指数衰减;改错了不覆盖旧条,而是归档旧条留作审计——6 个月下来,12 条没佐证的猜测至今仍没混进正式记忆。

原作者怎么做的

  1. 分五种记忆(不同种类不同保留策略):偏好(怎么做事,长期)、程序(跑通过的工作流,很长期)、事实(代码和文档里没有的 durable 知识,长期)、情景(某次任务的过程,短期)、痕迹(提示词与工具活动的紧凑时间线,很短期);另有两类特殊处理:想法永不随年龄衰减,规则到期不悄悄消失、而是标记出来对照最新文档复核。
  2. 定真源:Markdown 文件是真源,SQLite + 本地向量 + 小知识图谱只是派生索引——数据库丢了,记忆还在;文件可读、可改、可备份,智能体藏不进不透明的状态里。
  3. 接钩子(无常驻服务):会话开始做维护与简报(8 条预算跨各区)、每条提示词做记录与召回(至多 3 条短指针,同会话内不重复注入)、工具结果记录 outcome、会话结束启动 detached 蒸馏(Haiku 调用,输入修剪后的 transcript + 痕迹摘要 + 已有记忆名与描述,输出情景摘要 + 至多 3 条候选记忆);钩子 fail-open,记忆维护失败不阻塞写代码,错误只进本地日志。
  4. 立晋升门:用户直接说的偏好可立即生效;蒸馏推断的候选先以低置信度暂存,对正常简报与召回隐藏;只有后续会话出现匹配观察才强化并转正;召回本身不算证据(否则越被召回的记忆越永久,富者愈富);修正用“新条指向旧条 contradicts”并归档旧条,不覆盖、不删除——正常召回只见当前主张,旧主张留作审计。
  5. 设衰减:每条活跃记忆有置信度与衰减锚,分数 = 置信度 × 年龄衰减(按种类指数衰减,e-folding 时间常数而非半衰期);低分进归档而非删除;被钉住的可豁免;只有“真帮上忙、被用户确认、被独立再次观察到”才算强化。
  6. 召回三路融合:关键词(文件名、命令、工单号、错误码)+ 语义向量(同义不同词)+ 图关系(提示词点名的实体连带的相关实体),按衰减后分数加权,每提示词至多 3 条短指针;向量不可用时退关键词与图,索引坏了退关键词匹配。
  7. 技能毕业线:会话开始时脚本比对“够置信或至少强化过 1 次”的程序/偏好记忆与已装技能,提议更新旧技能或新建技能——只提议、不自动改写,作者批准后才落地并标记停止打扰;作者自己的两条偏好(脚本必须限时、复杂计划写成同卡片节点图)就是这么变成 script-timeouts 与 plan-graph 技能的。

结果

提示词结构

(按原文做法还原的记忆治理骨架,非原文逐字提示词)

```

真源:[Markdown 文件] 是权威;[SQLite + 向量 + 知识图谱] 只是派生索引,丢了可重建。

分种类定保留策略:[偏好长期] / [程序很长期] / [事实长期] / [情景短期] / [痕迹很短期];[想法不衰减] / [规则到期标记复核不悄悄消失]。

晋升门:[用户直说] → 立即生效;[蒸馏推断] → 先暂存、低置信度、对简报与召回隐藏;[后续会话匹配观察] → 强化转正;[召回本身] ≠ 证据。

修正:新条 [contradicts: 旧文件] 并归档旧条,不覆盖、不删除;正常召回只见当前主张。

衰减:分数 = [置信度] × [按种类指数衰减];低分进归档;[钉住] 可豁免。

召回:[关键词] + [语义向量] + [图关系] 三路融合、按衰减后分数加权,每提示词至多 [3 条短指针];失败时逐级降级,不阻塞写代码。

技能毕业:[够置信或强化过 1 次] 的程序/偏好 → 只提议、不自动改写 → [作者批准] 后落地并标记停止打扰。

```

中国读者怎么迁移

国内用 Claude Code / Cursor / Codex 的读者能先搭最小版:一个记忆文件夹 + 会话结束蒸馏(用便宜模型跑,输出情景摘要 + 至多 3 条候选)+ 一条铁律——候选先暂存、被第二个会话佐证才转正。别一上来就做向量与知识图谱:作者 6 个月的教训是,存储是已解决的部分,真正值钱的是“信任规则”(暂存、佐证、衰减、归档旧条)。国内替代:Haiku 蒸馏换成手头便宜模型,SQLite 与向量换成本地文件 + 简单关键词检索,先把“暂存—佐证—转正”跑起来。

风险与限制

原文链接

https://medium.com/@avis2329/i-built-a-memory-system-for-claude-code-that-knows-how-to-forget-b411807ba138