📌 项目地址:github.com/tigerless-labs/agent-memory | 星数:1,320+ | 协议:MIT | 语言:Python 3.12+ | 支持:Claude Code · Codex CLI · 任意可执行shell命令的Agent · MCP
Agent 关掉会话就忘掉一切——这是所有编码 Agent 的通病。你在 Claude Code 里教它的项目约定,换到 Codex 里全归零;上周让它记住的架构决策,这周它重新问你。agent-memory(tigerless-labs,2026 年 9 月开源,两周 1,300+ 星)给出的答案是把它当运行时问题而不是提示词问题来解决:Markdown 文件是唯一事实源,SQLite 索引只是随时可删的缓存,Claude Code、Codex CLI 和任何能跑 shell 命令的 Agent 共享同一个记忆库,全程零 API key。同赛道产品化的记忆系统可对比Claude-Mem深度评测;想给 Agent 配一整套云端运行环境的见AgentVerse-OS个人云OS教程。
README 对行业的判断很精辟:Agent 记忆长出了两条路线——一条造检索引擎(embedding、知识图谱、排序管线),找得准但给 Agent 的是无法检查的黑盒块;另一条直接给 Agent 文件系统(Markdown 可以 ls 和 grep),可读可迁移但不排序,目录一大就崩。agent-memory 是两者合一:检索引擎索引的是一个 Agent 也能直接读的文件系统。关系以链接形式存在记忆文件内部,本地索引负责排序,每个命中都解析为磁盘上完整的 Markdown 文件——召回既有图谱和向量搜索的精度,又保留 Agent 可直接遍历的普通目录,而且读路径上没有任何模型调用或网络请求。
最大胆的设计:召回不往上下文里塞文本。它返回一个 L0 列表——每项一行摘要、文件路径、锚点、分数——Agent 再按需打开:
mem recall "why files instead of a database" # L0 列表,默认 8 条
mem read <name> --level outline # 只要标题;或摘要级/全文级
mem context "why files instead of a database" # 召回+阅读一次搞定
mem setup --host claude-code # 或 --host codex
mem sleep --reason host # 睡眠整理
mem proposals # 查看待决策提案
mem decide <id> --accept # 人工确认后才生效
这个设计直击 RAG 的痛点:把整段检索结果贴进上下文,既浪费 token 又稀释注意力;返回路径让 Agent 自己决定读多深——扫一眼标题就够的任务绝不读全文。想进一步压 Agent 的 token 消耗,可搭配SoL-Pi效率扩展教程(NVIDIA 出品)使用。
记忆不只是存,还有整理和遗忘。agent-memory 引入独立的睡眠时(sleep-time)Manage 层:mem sleep 触发整合,T0 级变更直接应用,T1 级只写入提案账本;mem proposals 列出等待决策的项,mem decide 人工确认。安全护栏是硬的:Manage 层不能在无人值守状态下删除任何东西,所有删除走提案确认;它借用你指定的宿主 CLI 做推理,每次整理写一份"梦境报告"。写入侧也不依赖 Agent"记得去记"——写在会话边界(SessionStart 注入、Stop/SessionEnd 蒸馏、PreCompact 驱散)自动触发。
| 宿主 | 接入 | 说明 |
|---|---|---|
| Claude Code / Codex CLI | mem setup --host ... | 自动追加宿主 hook 方言,其余设置不动 |
| MCP Agent | mem-mcp | 五个工具:recall/read/record/correct/feedback |
| 任意 shell Agent | CLI 直接用 | context/sleep/proposals 等全功能面(比 MCP 更宽) |
索引坏了不慌:rm -rf ~/agent-memory-store/.index && mem rebuild 一键重建——因为 Markdown 才是事实源。开发侧自带 pytest/ruff/mypy 全套检查。MIT 协议,适合直接进生产。
agent-memory是tigerless-labs开源的AI Agent长期记忆运行时(1.3k星,MIT,Python)。它解决'Agent关掉会话就忘掉一切'的问题:Markdown文件是单一事实源(SQLite索引只是随时可删的缓存),Claude Code、Codex CLI及任何能跑shell命令的Agent共享同一个记忆库。召回在本地完成并排序,返回的是文件路径而非粘贴文本,写入在会话边界自动触发,睡眠时独立整理层按值整合与遗忘,全程零API key。
通过mem setup --host claude-code(或--host codex)一条命令接入:setup探测宿主,把mem-hook追加到宿主自己的hook方言,其余设置不动——SessionStart注入记忆、Stop和SessionEnd蒸馏写入、PreCompact驱逐。会说MCP的Agent用mem-mcp获得memory_recall/memory_read/memory_record/memory_correct/memory_feedback五个工具;其余任何能跑shell命令的Agent直接用CLI(context/sleep/proposal账本暂无MCP工具)。
睡眠(sleep)是agent-memory的独立Manage层:mem sleep --reason host触发整理,T0级直接应用,T1级只写入提案;mem proposals查看等待决策的提案,mem decide <id> --accept 才生效。Manage层借用你指定的宿主CLI做推理,为每次整理写梦境报告,且不能在无人值守状态下删除任何东西——所有删除都需要人确认提案。