MyMem
> 面向 OpenClaw 个人助理的长期记忆系统。
MyMem 让 OpenClaw 智能体拥有跨会话、可检索、会治理、会反思的长期记忆。它记住用户的生活偏好、工作背景、人际关系、长期目标、重要安排、关键决策、成功经验、失败教训和可复用习惯,并在后续对话中自动带回最相关的上下文。
它不是简单的笔记本,也不是把聊天记录原样塞进数据库。MyMem 是一套完整的记忆工程闭环:自动捕捉、智能提取、混合检索、上下文注入、反思沉淀、噪声过滤、生命周期维护、错误学习和记忆治理在同一个系统里协同工作。
---
为什么需要 MyMem
普通智能体最大的问题之一是失忆。
每次新会话都要重新解释偏好、日程背景、家庭情况、工作重点、正在推进的事项和之前已经说过的结论。复杂事情中犯过的错误,下次还可能再犯。不同助理能力之间也缺少稳定的共享上下文。
MyMem 解决这个问题:让智能体随着使用时间变长,越来越理解你、你的生活方式、工作节奏和长期偏好。
它不会把所有内容机械保存下来。它会留下未来有用的信息,过滤低价值噪声,更新过时事实,降低错误记忆的影响,并把真实工作中形成的经验变成可复用知识。
---
核心能力
MyMem 的核心体验是自动完成记忆系统该做的事,而不是让用户手动维护笔记。
它会记住:
- 用户的表达偏好、生活习惯、饮食偏好和沟通方式
- 家人、朋友、同事、客户和常联系对象的关键信息
- 正在推进的工作、学习、旅行、家庭和个人计划
- 做过的重要决定以及背后的原因
- 常用服务、工具、地点、商家、团队和协作对象
- 发生过的问题、处理方式、复盘结论和下次提醒
- 多次成功实践中沉淀出的个人方法和工作习惯
它把这些信息提炼成结构化长期记忆,自动召回相关上下文,按助理和场景隔离记忆边界,在 /new、/reset 等会话切换场景做反思沉淀,并把用户纠正、成功案例和坏召回反馈纳入 MyMem 内部治理。
记忆数据保存在用户自己的 OpenClaw 环境中。MyMem 关注的是对未来有价值的长期记忆,而不是完整复刻所有输入。
---
记忆架构设计
六类记忆模型
MyMem 使用 6 类记忆来组织长期上下文:
| 类别 | 语义 | 写入策略 | 通道 | |------|------|---------|------| | profile | 身份信息、长期目标、生活方式 | 始终合并 | knowledge | | preferences | 沟通方式、饮食偏好、工具选择 | 合并,时间版本化 | knowledge | | entities | 家人朋友、同事客户、项目设备 | 合并,时间版本化 | knowledge | | events | 一次安排、一次沟通、一次旅行 | 仅追加 | experience | | cases | 某次问题处理、某次任务完成 | 仅追加 | experience | | patterns | 反复有效的方法、避坑经验 | 合并 | knowledge |
不同类别有不同的治理策略:画像持续合并,偏好和实体支持随时间替换,事件和案例保持轨迹记录,模式会被提炼成更稳定的做事方法。
知识与经验隔离
MyMem 把记忆分成两条逻辑通道:
- knowledge:相对稳定的知识(
profile、preferences、entities、patterns) - experience:发生过的经历(
events、cases)
检索时根据问题意图提升对应通道:问偏好时优先找稳定知识,问"上次""之前"时优先找经验轨迹。生命周期上,知识衰减更慢(半衰期乘数 3.0),经验衰减更快(半衰期乘数 0.7)。
摘要与正文
每条智能记忆带有两种表达:
- summary:一句话索引,用于快速检索、去重和低成本召回
- content:完整叙事,用于需要细节和上下文时展开
普通自动召回可以只带入 summary,复杂追问再展开 content;检索时同时利用摘要和正文。
自动升降级和生命周期
MyMem 内部有两套层级:
- tier:
core、working、peripheral - layer:
durable、working、reflection、archive
重要、常用、可信的记忆从 peripheral 升到 working,再升到 core;低价值、久未使用、过期的记忆会降级或归档。这个过程综合时间、访问次数、重要性、置信度、反馈信号和记忆类型,而不是只按创建时间删除。
冲突、替换和去重
- 相似记忆先做向量预筛,再做语义去重
- 重复内容跳过或合并
- 新事实可以替换旧事实,保留
supersedes/superseded_by关系 - 冲突记忆被标记、降权或归档
- 支持性证据强化已有记忆,而不是制造重复条目
混合检索引擎
召回不是简单向量搜索,而是一条完整的检索链路:
查询 → 意图分析 → 查询扩展 → [向量检索 ∥ BM25检索] → RRF 融合
→ 时间增强 → 重要性加权 → 衰减调整 → 重排序 → MMR 多样性过滤
→ Learning Memory 排序 → 结果
结合向量语义检索、BM25 关键词匹配、类别意图识别、知识/经验通道提升、时间衰减、访问强化、重要性加权和重排序模型二次排序。
Learning Memory Layer
MyMem 默认启用 Learning Memory Layer,让记忆不只按“相似”召回,还会按长期效用、场景关系和探索价值重新排序。
这一层仍然使用现有 LanceDB 主库和 metadata JSON,不新增外部数据库。它会把人物、项目、长期目标、时间段和工作流聚合成 scene 合成记忆;把成功/失败经验沉淀成 case 和 pattern 记忆;并持续学习哪些记忆真正帮到了用户。
自动召回链路不会实时调用 LLM,避免拖慢每轮响应。LLM 只用于后台维护任务,例如场景摘要、case/pattern 蒸馏和压缩;LLM 失败时会降级到确定性聚类和摘要,正常召回不受影响。
主记忆新增入口
运行时主记忆库只保留两条新增链路:
- 手动链路:用户显式调用
mymem_store,以及mymem_update触发的版本化新记录 - autoCapture 链路:去除上下文注入和包装块后,只把用户消息与 assistant 消息发送给智能提取 LLM
治理模块只更新已有主记忆。反思写入独立 reflection 库,只供反思上下文注入使用,不参与普通 mymem_recall。
OpenClaw 工具 category
OpenClaw 工具参数里的 category 直接使用 MyMem 的 6 类模型:profile、preferences、entities、events、cases、patterns。工具层不再接受旧版 preference、fact、decision、entity、other 分类。
为兼容既有存储表结构,底层顶层 category 列仍可能保留内部派生值;工具查询、列表、解释和返回结果均以 metadata.memory_category 为准。
---
使用体验
安装 MyMem 后,提供必要的模型凭据,然后正常使用智能体。
默认配置已经按实际使用场景调好。大多数用户不需要理解检索权重、生命周期策略、注入预算或内部开关。
你会逐渐感受到:
- 智能体更清楚你喜欢怎样沟通
- 新会话也能延续生活和工作背景
- 之前踩过的坑更少重复
- 已经做过的决策不会轻易丢失
- 多个助理能力之间上下文更稳定
- 成功经验会沉淀为可复用的方法
---
可视化管理台
MyMem 内置本地可视化管理台。插件启动后自动在本机启动:
http://127.0.0.1:1314
只绑定本机地址,不会暴露到外网。管理台包含:
- 总览:6 类记忆分布、活跃时间分布、记忆层级分布,以及召回诊断工作区
- 记忆管理:瀑布流展示最近记忆,支持按范围和类型筛选,点击可查看摘要和正文详情,也可以直接删除
召回诊断复用 MyMem 的解释链路,分两列说明查询经过了哪些处理阶段、命中了哪些记忆,以及是否被范围隔离、硬阈值、噪声过滤、重排或候选池限制影响。
手动启动:
openclaw mymem dashboard --host 127.0.0.1 --port 1314
通常不需要手动运行;正常启用插件后管理台随 MyMem 一起启动。端口被占用时会跳过启动并继续正常工作。
---
安装与启用
把本仓库链接发给你的 OpenClaw,从仓库克隆到 /root/.openclaw/workspace/plugins/mymem 安装。
MyMem 作为 OpenClaw 的 memory 插件,需要在 OpenClaw 设置中填入推荐配置。启用后会自动开始捕捉、治理和召回长期记忆。
---
推荐配置
推荐只配置模型连接信息和插件挂载关系,其它能力交给 MyMem 内置策略处理:
{
"plugins": {
"load": {
"paths": [
"/root/.openclaw/workspace/plugins/mymem"
]
},
"allow": [
"mymem"
],
"slots": {
"memory": "mymem"
},
"entries": {
"mymem": {
"enabled": true,
"hooks": {
"allowConversationAccess": true
},
"config": {
"embedding": {
"baseURL": "https://dashscope.aliyuncs.com/compatible-mode/v1",
"apiKey": "${DASHSCOPE_API_KEY}",
"model": "text-embedding-v4"
},
"llm": {
"baseURL": "${LLM_API_URL}",
"apiKey": "${LLM_API_KEY}",
"model": "${LLM_API_MODEL}"
},
"retrieval": {
"rerankEndpoint": "https://dashscope.aliyuncs.com/compatible-api/v1/reranks",
"rerankApiKey": "${DASHSCOPE_API_KEY}",
"rerankModel": "qwen3-rerank"
}
}
}
}
}
}
embedding:把生活、工作、关系、偏好和计划转成可检索的长期记忆向量llm:负责智能提取和反思retrieval:召回后重新排序,让个人助理更容易找到真正相关的记忆
推荐的向量模型和重排模型来自阿里云百炼,DASHSCOPE_API_KEY 从阿里云百炼控制台获取,建议通过环境变量注入。
Learning Memory 默认开启,普通部署不需要额外配置。需要临时回退到旧召回排序和旧注入输出时,可以在 entries.mymem.config 下加上:
{
"learningMemory": {
"enabled": false
}
}
工具白名单
如果 OpenClaw 环境对工具做白名单控制,推荐允许:
mymem_recall、mymem_doctor
反思和反馈循环会自动把长期偏好、经验、可复用做法和预防性教训写入 MyMem 记忆库,无需额外人工工具入口。
---
MyMem 可以形成的记忆
- 用户喜欢直接、简洁、先给结论再展开的回答
- 用户周末通常不安排高强度工作,适合处理生活计划和轻量复盘
- 用户偏好的餐厅、咖啡、出行方式、购物平台和常用服务
- 家人、朋友、同事或客户的重要偏好、称呼、纪念日和协作方式
- 某个长期目标的阶段进展、阻碍和下一步计划
- 某类问题已经有成熟处理方式,下次应直接复用
- 某个人物、项目、目标或工作流被聚合成可召回的场景记忆,并按预算展开关键成员记忆
- 多个相似案例被蒸馏成 pattern,供后续召回和治理复用
- 消息平台的包装元数据不应该进入长期记忆
这些记忆让智能体更像长期陪伴的个人助理,而不是每次从零开始的问答模型。
---
为强默认配置而设计
MyMem 的产品体验不是让用户研究大量开关,而是默认就好用。
捕捉、提取、召回、反思、治理和上下文控制已经组合成默认策略。用户启用后正常使用,记忆系统会在消息、提示构建、网关启动、/new 和 /reset 等 OpenClaw 生命周期节点按条件运行。
高级选项存在是为了特殊部署和深度调优;普通用户只需要安装、启用、正常使用。
---
适合哪些场景
- 长期使用 OpenClaw 的个人或团队
- 经常开启新会话但希望保留连续上下文
- 希望助理同时理解生活和工作上下文
- 需要长期跟踪计划、习惯、关系和阶段目标
- 希望智能体记住沟通方式、协作偏好和个人约束
- 使用多个专用助理能力的工作流
- 想把错误、修复和成功经验沉淀下来
- 不想手动维护个人记忆文档
---
项目理念
> 记住能帮助未来工作的内容,过滤会制造噪声的内容,并从真实使用中持续变强。





