熊布朗 (@Stephen4171127): 聊几句OpenClaw 的记忆实施策略:OpenClaw 把聊天记录和生成的文档都向量化(并文本化)进 Memory 索引里了。后续仅用 Agent Tool

  • Source: https://x.com/stephen4171127/status/2017224470818160658?s=46
  • Mirror: https://x.com/stephen4171127/status/2017224470818160658?s=46
  • Published: 2026-01-30T13:12:46+00:00
  • Saved: 2026-01-31

Content

聊几句OpenClaw 的记忆实施策略:OpenClaw 把聊天记录和生成的文档都向量化(并文本化)进 Memory 索引里了。后续仅用 Agent Tool 主动调用 memory_search 和 memory_get 两个工具来找回记忆,设计是是极其简单。 —— 做 Character AI 的时候,一般都会维护一份长期记忆,比如用户的姓名、喜好、等等,形成一份用户Profile,每次注入到上下文中,但 OpenClaw 没这么做。(确实显得有点多余) —— 检索模式就是我们熟知的 RAG最常用的 BM25+Vector Search —— chunks 表里存的是文本(路径、行范围、text 内容、source=sessions),不是只存向量;向量在 chunks_vec,全文在 chunks_fts。 —— a. 它对工作区生成md 文件做了 chunks,这个没想到。 b. 会话的.jsonl 做增量chunks,会监控 jsonl 的变化,增量到达阈值后读取增量然后索引它。正常来说,/compact 都会把一段旧消息压掉,用模型生成摘要,并改写 JSONL(旧消息被替换或删除,改为摘要 + 边界标记等)。 —— 对我启发最大的是:OpenClaw 没有「把记忆块自动拼进 system prompt 或每轮上下文」的机制;全部按需、Tool 驱动。这才是真正交给了 Agents。