Tree Ring Memory:给 AI Agent 装一个本地记忆年轮,告别上下文撑爆的痛苦
LLM 的”失忆症”有救了
每次用 Claude Code 跑长项目,最痛苦的是什么?——上下文窗口撑爆了,AI 把之前的决策忘得一干二净,下次回来像见到陌生人。你得从头解释:「上次我们决定用 SQLite 不用 PostgreSQL,因为 blabla……」
Tree Ring Memory 就是来解决这个问题的。它是一个本地优先的 AI Agent 记忆生命周期框架,名字很形象——像树的年轮一样,把重要的记忆「沉淀」下来,越新的越详细,越老的压缩成稳定的核心。
核心原理:不是塞满上下文,而是管理记忆
传统做法是把对话记录往上下文里塞,越塞越长,token 费用爆炸。Tree Ring Memory 的思路完全不同:
- fresh work stays detailed——新鲜的工作保留细节
- older learning compresses into stable rings——旧经验压缩成稳定年轮
- important warnings remain visible as scars——重要警告像疤痕一样保留
- durable truths become heartwood——持久真理变成核心心材
- speculative future work stays as seeds——探索性工作作为种子保留
背后是一个 Rust CLI/TUI,配合本地 SQLite + FTS 存储,所有数据在你自己机器上,不上传云端。
支持哪些 Agent?
Claude、Codex、Cursor、Gemini、Antigravity、OpenCode——基本上主流编程 Agent 都支持。
怎么用?
安装方式很简单:
npx skills add https://github.com/TerminallyLazy/tree-ring-memory-skill --skill tree-ring-memory
或者用 SkillHub CLI:
npx skillhub install sickn33/antigravity-awesome-skills/tree-ring-memory
装好后,Agent 在执行任务前会先做 project-scoped recall,根据项目本地已有的 .tree-ring/ 配置加载相关记忆,而不是每次都从零开始。
为什么值得关注?
LLM Agent 的记忆管理是个老大难问题。上下文窗口是有限的,但项目经验是无限的。Tree Ring Memory 给了一种框架无关的解法——不依赖某个特定 Agent 实现,用本地 SQLite 把「学到的教训」持久化,下次换一个 session 也能快速继承。
43.4k GitHub stars,已经经过 Gen Agent Trust Hub 安全审计(风险评级:SAFE),可以放心装。
GitHub 链接
https://github.com/TerminallyLazy/Tree-Ring-Memory
评论区
登录后可评论。