OpenClaw和Hermes的记忆有什么区别

文章目录

      • [一. 传统的呆逼记忆系统](#一. 传统的呆逼记忆系统)
      • [二. OpenClaw:把硬盘当脑子的工程狂魔](#二. OpenClaw:把硬盘当脑子的工程狂魔)
      • [三. Hermes:戴着镣铐跳舞的极简刺客](#三. Hermes:戴着镣铐跳舞的极简刺客)
      • [四. 两种哲学的宿命对决](#四. 两种哲学的宿命对决)
      • [五. 写在最后](#五. 写在最后)

最近面试被同一个问题,OpenClaw 和 Hermes Agent 的记忆到底是怎么构建的?这两个框架到底有啥区别?

说实话,我一开始也是一知半解。毕竟平时用归用,谁闲着没事去扒它们的底层架构啊。

但是这几天,这个问题像个刺一样扎在我心里。为了搞明白,熬了两个大夜之后,我算是彻底搞明白了。

这篇博客,就是我的个人学习记录。我把它们掰碎了,一点点讲给你听。

话不多说,我们,开始。

一. 传统的呆逼记忆系统

在聊这两个神仙打架之前,我们先得回顾一下,以前的 Agent 是怎么记东西的。

大部分基础的 Agent 记忆设计,其实非常简单粗暴。

短期记忆,就是硬塞大模型的上下文窗口。多轮对话越积越多,快撑爆了怎么办?直接暴力截断,也就是所谓的滑动窗口,或者让系统强行搞一次总结。

长期记忆呢?就是挂个传统的向量数据库。

把过去的对话切片,转成向量存进去,需要的时候通过 RAG(检索增强生成)召回,拼接到提示词里。

这事按过去看没毛病,但在处理那种需要极高精准度或者超长程任务的时候,真的太呆逼了。细节丢失严重,信噪比极低,还经常出现记忆幻觉。

这时候,你就会觉得,这根本不是什么智能体,这就是个只有七秒记忆的金鱼。

二. OpenClaw:把硬盘当脑子的工程狂魔

当我翻开 OpenClaw 的文档时,我真的被震撼到了。

它根本没有依赖大模型的原生上下文,而是走了一条重度工程化、甚至有点仿生学色彩的路线。

它给 Agent 挂载了一个完整的文件系统。

你看它的目录结构就懂了。它的记忆被严格分成了几个物理层级:

最核心的是长期记忆层,也就是 MEMORY.md,存放它的持久事实和核心设定。

然后是工作笔记层,每天生成一个类似 YYYY-MM-DD.md 的文件。系统每天自动加载今天和昨天的笔记,历史笔记则通过混合搜索被动调用。

还有个的梦境日记层,DREAMS.md

我刚看到这个设定的时候,太赛博朋克了。

它有一个叫做做梦机制(Dreaming)的东西。系统会在后台静默运行,模拟人类海马体睡眠时的记忆巩固,对短期记忆进行评分。只有被反复提及、价值极高的信息,才会被系统自动提取,写入长期的 MEMORY.md 里面。但是好像Claude code也是有这个功能的。

而且为了防止压缩上下文时丢失细节,它还有个自动记忆刷新功能。快撑爆前,强行插入后台步骤把关键事实落盘。

这种感觉就像是,你真的养了一个每天记日记、晚上做梦复盘的数字打工人。

三. Hermes:戴着镣铐跳舞的极简刺客

看完了 OpenClaw 这种重型装甲,我再去看 Hermes Agent 的官方文档时,发现了另一种极致的性感。

它的设计理念,跟 OpenClaw 截然相反。

Hermes 维护了两个核心文件。一个是存放环境事实和项目背景的 MEMORY.md,另一个是记录用户偏好与身份信息(你是谁、你喜欢什么、你怎么工作)的 USER.md

但重点来了,Hermes 给这两个文件设定了极其变态的字数上限,加起来不到 1500 tokens。

为什么?因为它在每次会话开始时,会把这两个文件作为冻结快照注入提示词。它要最大化地压榨大模型的前缀缓存(Prefix Caching)能力。

为了保住这个极速响应的缓存,如果它中途修改了记忆,马上存盘,但当前会话的提示词绝不更新。

这逼着 Agent 必须主动调用工具去合并、删除旧记忆。

那你会问,容量这么小,它是不是记不住以前的事?

这就是它最神仙的地方。

我发现,它在底层把所有的 CLI(命令行交互)和消息会话,完整地塞进了一个本地的 SQLite 数据库(存放在 ~/.hermes/state.db 里面)。

并且,它启用了 FTS5 全文搜索。

当 Agent 发现活跃记忆里找不到东西时,它会主动调用 session_search 工具去搜这个 SQLite 数据库。

搜出来的历史对话,不会生硬地塞给它,而是交给 Gemini Flash 这个外部小模型去阅读并生成摘要。

即使是几个星期前随口提过的一句话,它也能通过这种方式精准捞回来。

这真的是我见过最精巧的设计。

四. 两种哲学的宿命对决

把这两套源码和文档嚼碎了咽下去之后,我总结了它们在核心维度上的三个区别。

第一,空间管理哲学的不同。

OpenClaw 认为硬盘不值钱。它是一种扩张型的设计,鼓励 Agent 疯狂记录海量细节,然后用多层级的日期文件来承载。所以后面会越用越臃肿。

Hermes 则认为 Prompt 空间贵得离谱。它是一种约束型的设计,通过严格的限制,逼迫模型不断提纯高信噪比的内容。所以用起来会很聪明。

第二,长程记忆的唤醒方式。

OpenClaw 是被动式的、系统级的。它靠底层检索机制自动调取历史日志,靠后台做梦机制去沉淀。Agent 在前台根本不用操心,专心干活就行。

Hermes 则是纯粹的主动式探查。它要求 Agent 自己判断何时该去 SQLite 里翻旧账,自己去调用 session_search 找 Gemini Flash 要摘要。

五. 写在最后

写到这里,看着屏幕上密密麻麻的笔记和对比,我觉得这几个大夜没白熬。

我们总觉得,AI 的记忆不就是个 RAG 加上向量数据库吗。但真正钻进去才发现,为了解决真实的痛点,这些神级开源项目在底层做出了多么不可思议的工程创新。

Hermes 告诉我们,极致的约束加上巧妙的 SQLite 和外部小模型组合,能跑出多快的速度。

OpenClaw 告诉我们,把文件系统和仿生学结合在一起,能造出多么像人的赛博同事。

如果我们终将迎来一个人人都有通用 Agent 助理的生活。

那我希望我自己,能做那个最懂它们脾气的人。

以上。谢谢你看我的学习记录,我们,下次再见。

相关推荐
java_logo1 小时前
轻量AI接口网关一键部署|calciumion/new-api Windows/Linux Docker 部署全教程
linux·人工智能·windows·one api·calciumion·ai网关部署·one api 部署
一切皆是因缘际会1 小时前
2026实战:AI可解释性落地全指南
人工智能·深度学习·机器学习·架构
Traving Yu1 小时前
向量数据库Milvus
数据库·人工智能·milvus
keineahnung23451 小时前
PyTorch SymNode 為何找不到方法實作?──sizes_strides_methods 動態安裝機制解析
人工智能·pytorch·python·深度学习
苏生十一_Nojambot1 小时前
AI浏览器——Tabbit使用教程
人工智能
AI科技星1 小时前
【无标题】
人工智能·决策树·机器学习·数据挖掘·机器人
一点一木1 小时前
2026 终端 AI 编码 Agent 六大工具深度横评
前端·人工智能·claude
qq_411262421 小时前
四博 AI 双目智能音箱方案:四路触控、震动反馈、姿态感应、语音克隆和专属知识库全拉满
人工智能·智能音箱
沪漂阿龙1 小时前
面试题:卷积神经网络(CNN)是什么?核心层、卷积核、池化、1×1 卷积、VGG、ResNet 一文讲透
人工智能·神经网络·cnn