前两天有个朋友说 hermes 内置的 memos 现在用的人挺多的,今天也就来尝试一下,到底好不好用。
MemOS,是 MemTensor 这家公司做的记忆操作系统。他们给 Hermes 和 OpenClaw 做了个本地插件,装完以后 Hermes 的记忆不再是固定的一张大表,而是 L1 过程记录 → L2 策略归纳 → L3 世界模型 → Skill 技能结晶的四层体系。
不废话,看看他到底哪里不一样。
先说安装,真就一行命令
这个插件叫 memos-local-plugin,装法简单到离谱:
curl -fsSL https://raw.githubusercontent.com/MemTensor/MemOS/main/apps/memos-local-plugin/install.sh | bash
运行后安装器会自动检测你的环境(有没有装 Hermes、Node.js 版本够不够),检测完问你要装给哪个 agent——选 Hermes 就行。
然后它自己下载、编译、写配置、重启网关。装完你会看到一行提示:**管理面板在 **http://127.0.0.1:18800
跟别的记忆系统不太一样,对,它有自己的管理面板。浏览器打开,能看到 7 个管理页面——记忆浏览、搜索、任务追踪、技能管理、工具调用日志、数据导入、在线配置。不过说实话,大部分人装完直接用就行,面板更像个调试工具。
数据存在哪?~/.hermes/memos-plugin/ 下:SQLite 数据库、技能包、日志,全在本地,不依赖任何云服务。
它到底比内置记忆好在哪?
我先说 Hermes 内置记忆是什么——就是一个 character-limited 的文本池,每次对话把里面的内容塞进 system prompt。满了就滚动淘汰。简单、粗暴、够用。
MemOS 的做法完全不一样。它把记忆拆成四层:
L1 Trace(痕迹层)每次 agent 执行一步操作(比如调了一个工具、返回了一段结果),它都把"动作 + 观察 + 反思 + 价值评分"记下来。不是只记结论,是记过程和思考。
L2 Policy(策略层)当同样的操作模式反复出现(比如"用户要我搜资料,我总是先调 web_search 再整理"),系统会从多个 session 中归纳出策略。不是记死板的固定步骤,是做模式识别。
L3 World Model(世界模型层)更高一层的抽象。当多个策略形成集群(比如跟"写代码"相关的策略聚在一起),它会压缩成对这个领域的认知。agent 慢慢就"理解"了你是在做开发还是在写文案。
Skill(技能结晶)当某条策略被反复验证有效且价值评分高,它会结晶成可调用的技能。你以后一个指令就能触发它。
三层之间还有反馈闭环:你给它点赞、它做得好给出好结果,都会反向传播调整权重。
混合检索比你想的聪明
内置记忆的检索方式很简单——正则匹配或者关键字搜索,命中就注入。
MemOS 是全文搜索(FTS5)+ 向量语义搜索混着来。原文里没出现关键词也没关系,语义接近它也能找到。
官方文档给了一个直观的数据:装上后记忆命中准确率从 23.73% 提升到 31.68%。
提升看起来不大?仔细想——23% 的意思是内置记忆 4 次里有 3 次找不到相关内容。提升到 31% 虽然还不够理想,但已经是质变了。
而且由于只注入最相关的记忆片段(不是整个内存库),Token 消耗能降 72%。
去重和更新,解决了最头疼的问题
内置记忆没有去重。你教它"我的 GitHub token 是 xxx",过一天教了类似的,两条都存着,还可能互相矛盾。
MemOS 会自动识别:这段是新信息还是老信息的更新?是矛盾信息需要合并还是全新的知识点?
举个例子:你先说在减肥,过两天又说算了不减了。内置记忆两条都留着,下次问"他还减肥吗?"它就懵了。MemOS 会合并成一条并记录变更历史。
多 Agent 协同
Hermes 可以开多个 Profile(比如一个写代码、一个做客服)。内置记忆是各自的,不互通。
MemOS 本地模式下,同一台机器上的多个 Agent 可以共享公共记忆和技能。如果你跑 Hub-Client 架构,还能跨机器共享。
不过对于个人用户来说,这个功能暂时还用不太到。
配置也不算复杂
装好后,它在 ~/.hermes/memos-plugin/config.yaml 里生成配置文件。默认就能用,但如果你想调参,主要关注三个模型配置:
embedding_model: local# 轻量模型,本地跑,免费的
summarize_model: openai-compat# 摘要用中等模型
skill_model: openai-compat# 技能生成用最强模型
三级模型策略:嵌入用本地轻量(不花钱),摘要用中等,技能生成用最强的。如果某个模型不可用,它会自动降级。
用了几天后的真实感受
刚装上第一天没啥感觉——agent 跟往常一样回答。从第二天开始,我注意到它开始记得一些我从没明确教过的事情。
比如我让它查资料,它会先调用 web 搜索,看结果不满意再调浏览器截图。我从没教过它这个流程——它不是从我的指令学会的,是从它自己的操作记录里归纳出"这个方案比较优"的策略。
说实话有点诡异。但确实是好用的。
当然也不是没毛病。刚装完时 Node.js 编译 better-sqlite3 花了快两分钟(我的是 WSL 环境)。还有一次重启后管理面板打不开,排查发现端口 18800 被占用了。
我现在的建议
如果你只做最基本的聊天和编码,Hermes 内置记忆真的够用。别为了装而装。
但如果你:
感觉 agent 老是忘了你教过的东西 希望它越用越聪明,而不是每次都要重新调教 对多 Agent 协同有需求 愿意花十分钟装个插件换来长期体验提升
那 MemOS 值得一试。
夜雨聆风