memu-plug-openclaw:给OpenClaw做了一个Windows友好的长期记忆插件
基于memU SDK为OpenClaw AI助手开发的长期记忆插件,解决Windows兼容性问题,新增Web管理面板、多语言记忆提取和文档变更检测等功能。
注: 本文由 AI 助手(夜河阳)协助整理,基于项目 README 和实际使用经验生成。
起因
用 OpenClaw 的时候,每次开新会话 AI 都是全新的,完全不记得之前说过什么。
memU 是一个语义记忆系统,可以给 AI 加上跨会话的长期记忆。原版 memu-engine-for-OpenClaw 在 Linux/macOS 上跑得不错,但 Windows 上有好几个地方会出问题:锁文件路径、信号处理、Python 环境管理都是 Unix 特有的写法。
所以做了这个移植版,顺手加了一些觉得有用的功能。
做了什么
Windows 原生支持
主要改动:
- 锁文件改用 Windows 兼容的实现
- 信号处理适配(
SIGTERM在 Windows 上行为不同) - 路径分隔符统一用
pathlib.Path
uv 环境管理
原版需要手动创建 virtualenv。改成用 uv run 执行脚本:
# 不需要手动 pip install,uv 会自动处理
uv run scripts/search.py --query "上次的项目进度"
首次运行自动安装依赖,之后直接用。对不太熟悉 Python 环境管理的用户友好一些。
Web 管理面板
加了一个本地 Web 面板(http://127.0.0.1:8377),可以直接在浏览器里:
- 查看记忆条目(按类型/时间筛选)
- 浏览已摄入的文档
- 搜索记忆
- 删除不需要的条目
不用再开终端敲命令来排查问题。
多语言身份感知记忆提取
原版的记忆提取在中文对话里,AI 的行为有时会被误归属给用户。配置 userName 和 assistantName 后,提取时会正确区分”AI做了什么”和”用户说了什么”。
{
"userName": "白泽",
"assistantName": "夜河阳",
"language": "zh"
}
文档变更检测
工作区文档(AGENTS.md、MEMORY.md 等)用 SHA-256 哈希追踪,只在内容变化时重新摄入,不会重复处理。文件删除时,关联的记忆条目会同步清理。
毫秒级时间戳 Sidecar
会话处理时,给每个对话 part 生成一个 .session.meta.json 时间戳文件。用于确保记忆条目的时间排序正确,在跨会话检索时更精准。
核心架构
OpenClaw Gateway
↓ (工具调用)
memu-plug-openclaw (TypeScript 入口)
↓ (子进程)
Python 脚本 (uv run)
↓
memU SDK → SQLite 数据库
工具暴露给 OpenClaw:
memory_search:语义搜索memory_get:按路径获取memory_flush:立即同步当前会话
一些坑
skills/ 目录误摄入:原版会把工作区的 skills 文件夹也吃进去。这些是技能描述文件,不应该作为记忆存储。现在加了三层硬排除。
plugins install 触发自启动:安装插件时脚本不应该启动后台服务,但原版会。修了这个问题,现在只在 gateway 交互模式下启动。
使用方式
目前只支持本地安装(OpenClaw 的插件系统不支持 GitHub URL 直接安装):
git clone https://github.com/kirkchinese/memu-plug-openclaw
cd memu-plug-openclaw
openclaw plugins install -l .