【AI】OpenClaw 2026.3.7 版本支持永久记忆 OpenClaw 2026.3.7 版本已经正式支持永久记忆了。这次更新不是简单修补而是从根本上重构了记忆架构——引入可插拔的上下文引擎让“记忆”从硬编码逻辑变成了可定制的独立模块。一、核心理念记忆 ≠ 上下文OpenClaw 对记忆的定义非常清晰概念本质特征上下文单次请求能看到的信息临时、容量受限、昂贵记忆持久存储的结构化信息永久、几乎无限、低成本它把两者彻底解耦上下文是工作台记忆是知识库。每次对话时按需检索相关记忆注入上下文而不是把所有历史都塞进去。实测数据很有说服力一个持续72小时的自动化任务传统方案因token限制触发了23次会话重置而基于记忆的方案只触发了3次。二、记忆的物理存储Markdown SQLiteOpenClaw 的记忆存储采用“双源架构”1. 动态记忆会话日志存储格式JSONL 文件路径~/.openclaw/agents/{agentId}/sessions/*.jsonl内容原始对话记录每条消息独立存储作用可追溯的原始素材2. 静态记忆持久知识存储格式Markdown 文件路径MEMORY.md— 核心长期记忆用户偏好、固定规则、工作流程memory/YYYY-MM-DD.md— 按日期组织的会话摘要memory/YYYY-MM-DD-{slug}.md— 带语义命名的专题记忆生成方式手动编辑用户直接修改MEMORY.md自动生成执行/new时触发session-memoryHook将最近15条消息提炼为 MarkdownMemory Flush上下文接近token上限时Agent 被指示将重要信息写入memory/YYYY-MM-DD.md关键设计Markdown 是唯一真实来源Source of Truth向量索引只是它的加速层。你可以直接vim MEMORY.md修改记忆系统会自动检测变化并重新索引。3. 向量检索层SQLite 扩展为了支持语义搜索OpenClaw 使用 SQLite 两个扩展搭建了完整的 RAG 系统扩展功能sqlite-vec向量相似度搜索余弦距离FTS5全文检索BM25 排序存储结构~/.openclaw/memory/{agentId}.sqlitefiles表跟踪文件修改时间、大小、hash避免重复索引chunks表存储文本块、行号范围、序列化后的向量chunks_vec虚拟表向量相似度搜索专用chunks_fts虚拟表全文搜索专用混合检索策略最终得分 w_vec × 向量相似度 w_fts × BM25分数兼顾语义匹配和关键词命中。优雅降级如果sqlite-vec扩展加载失败自动回退到纯 JavaScript 暴力计算余弦相似度确保功能可用。三、突破性更新lossless-claw 无损上下文插件这是2026.3.7 版本的核心亮点也是 OpenClaw 实现“永不遗忘”的关键。为什么传统方案会“断片”大多数 Agent包括 Claude Code采用滑动窗口策略上下文满了就丢弃最早的消息直接永久删除。这在长对话中必然导致信息丢失。lossless-claw 的 DAG 架构参考了《LCM: Lossless Context Management》论文lossless-claw 构建了一个有向无环图DAG的摘要层级原始消息 → 生成摘要 → 摘要达到阈值 → 凝练为更高层摘要 ↑ ↑ └── 双向链接 ───┘工作流程压缩超出阈值时用 LLM 将旧消息提炼为摘要双向链接摘要保留指向原始消息的链接存储在 SQLite按需展开Agent 可通过lcm_grep、lcm_describe、lcm_expand等工具随时回溯原始内容实测效果OOLONG 基准测试lossless-claw 得分74.8Claude Code 仅70.3关键趋势上下文越长差距拉得越大实测一周开发者反馈“说它表现好都太保守了”上下文引擎插件化2026.3.7 版本开放了ContextEngine 插件接口提供完整的生命周期钩子钩子作用bootstrapsession 启动时恢复什么assemble本轮 prompt 带什么ingest本轮结束后提炼什么存入长期记忆compacttoken 紧张时压什么、转什么prepareSubagentSpawn子 agent 带走多少上下文afterTurn每轮结束后后处理onSubagentEnded子 agent 结束时的清理这意味着“记忆策略”不再是写死的而是可以像插件一样自由替换。四、自动化记忆维护为了让记忆“活”起来OpenClaw 内置了多个自动化机制1. Memory Flush主动写入当上下文接近 token 限制时系统在压缩前会触发一个特殊的 Agent 回合明确指示“Store durable memories now (use memory/YYYY-MM-DD.md; create memory/ if needed).”然后执行压缩保留决策、待办、未解决问题、约束等核心信息。2. HEARTBEAT.md定期巡检配置心跳后Agent 会定期自动维护记忆{agents:{defaults:{heartbeat:{every:30m,target:last,activeHours:{start:08:00,end:22:00}}}}}检查内容包括读取近3天日志、提取新规则更新至 MEMORY.md、清理无效记录。3. Cron 定时归档也可通过命令行配置定时任务将每日重要结论自动写入记忆文件openclawcronadd\--name每日记忆归档\--cron0 20 * * *\--message将今日重要结论写入 memory/$(date%Y-%m-%d).md五、延伸方案Mem0 等第三方集成如果你需要更强的记忆能力如跨 Agent 共享记忆、云端同步还可以接入 Mem0 等第三方服务。Mem0 插件的核心改进强制捕获不依赖 LLM 决定“是否值得记住”自动检测并存储用户偏好强制召回每轮对话前自动检索相关记忆注入上下文不需要 Agent 主动调用memory_search跨会话持久记忆存在独立存储层重启、切换会话都不丢失实测效果即使用户停止 Agent、重启后新建会话依然能正确调用之前告知的信息。 总结OpenClaw 永久记忆架构一览层级组件核心作用存储层Markdown 文件 SQLite唯一真实来源人类可读写Git 可版本控制检索层sqlite-vec FTS5向量语义搜索 关键词全文搜索混合排序压缩层lossless-claw 插件DAG 摘要层级双向链接按需展开原始内容维护层Memory Flush HEARTBEAT主动写入 定期巡检自动化记忆生命周期扩展层ContextEngine 插件接口开放生命周期钩子支持第三方记忆策略如 Mem0这个架构的精妙之处在于透明性Markdown 可读 可检索性向量索引 无损性DAG 摘要 开放性插件化的四重统一。如果你想亲自体验可以直接安装 2026.3.7 版本默认就会开启 lossless-claw 模式编辑MEMORY.md写入你的长期规则立即生效配置 HEARTBEAT.md让 Agent 自动维护记忆