OpenClaw vs HermesAgent 对比分析(一):记忆系统专题 — AI Agent 如何跨越“失忆“鸿沟
OpenClaw vs HermesAgent 对比分析(一):记忆系统专题 — AI Agent 如何跨越"失忆"鸿沟
系列导读:本系列基于两个主流开源AI Agent项目的源码深度分析,从记忆系统、安全架构、多通道能力、技能插件体系、本地计算机控制五大维度进行横向对比。本文聚焦记忆系统
前置阅读:OpenClaw 架构分析 | HermesAgent 架构分析
一、问题的本质
AI Agent"失忆"问题是整个行业的痛点。没有记忆的Agent就像金鱼——每次对话都是全新的开始
OpenClaw 与HermesAgent都意识到了这个问题,但给出了完全不同的解决方案
二、架构对比总览
| 维度 | OpenClaw | HermesAgent |
|---|---|---|
| 设计理念 | 插件化记忆后端 | 内建多层记忆 |
| 核心存储 | SQLite + 多后端扩展 | SQLite(FTS5) |
| 向量搜索 | LanceDB(内置扩展) | 无(FTS5关键词+LLM摘要) |
| 用户建模 | 无显式建模 | Honcho辩证建模 |
| Agent策展 | 无 | Agent自主决定 |
| 上下文管理 | 自动管理 | 自动压缩 + Anthropic缓存 |
| 技能作为记忆 | 无 | 从经验提取技能 |
| 记忆SDK | memory-host-sdk | 无独立SDK |
三、OpenClaw 的记忆系统
3.1 架构设计
OpenClaw 采用插件化记忆后端的设计,记忆系统通过扩展插件实现
┌────────────────────────────────────────┐
Agent Engine
┌────────────────────────────────┐ ┌──┐
│ memory-host-sdk │ │ │
│ (记忆系统统一接口) │ │ │
└──────────┬─────────────────────┘ │ │
│ │
───────────┴── Plugin Interface ─ │
│ │
┌──────────▼─────────────────────┐ │
│ memory-core (118 文件) │ │
│ 核心记忆引擎 │ │
└──────────┬─────────────────────┘ │
│ │
┌──────────▼──────────┐ │
│memory-wiki (62 文件) │ │
│Wiki 风格知识库 │ │
└──────────────────────┘ │
┌──────────────────────┐ │
│memory-lancedb │ │
│LanceDB 向量存储 │ │
└──────────────────────┘ │
└──────────────────────────────────┘
3.2 三层记忆架构
1. 短期记忆(Session Memory)
- 当前对话的上下文
- 存储在内存中
- 会话结束即清除
2. 长期记忆(Long-term Memory)
- 通过memory-core插件实现
- 持久化到SQLite
- 支持多后端存储
3. 知识库(Wiki Memory)
- memory-wiki插件
- 类似Notion的结构化知识库
- 支持标签、分类、链接
3.3 向量搜索
memory-lancedb扩展提供了基于LanceDB的向量搜索能力
优势:语义搜索准确度高,能理解意思相近的查询
代价:需要额外的LanceDB依赖+Embedding模型
3.4 Memory Host SDK
OpenClaw提供了独立的memory-host-sdk(6文件),允许外部程序读写Agent的记忆
四、HermesAgent 的记忆系统
4.1 五层架构
L5: 技能记忆 - 从经验提取的可复用技能
L4: 用户建模 - Honcho辩证用户建模
L3: Agent策展 - Agent自主决定保存的知识
L2: 会话搜索 - FTS5全文搜索 + LLM摘要
L1: 会话记忆 - SQLite原始对话记录
4.2 核心差异:Agent策展
HermesAgent最独特的设计是Agent策展记忆(Agent-Curated Memory)
- OpenClaw:记忆的创建和管理遵循预设规则
- HermesAgent:Agent自己决定什么值得记住
4.3 混合搜索策略
HermesAgent不使用向量数据库,而是采用FTS5 + LLM摘要的混合策略
| 方案 | 依赖 | 语义理解 | 部署复杂度 |
|---|---|---|---|
| 纯向量搜索 | LanceDB/FAISS | 高 | 高 |
| 纯关键词搜索 | SQLite FTS5 | 低 | 低 |
| FTS5 + LLM | SQLite + LLM API | 中高 | 低 |
五、深度对比分析
5.1 记忆创建方式
| 维度 | OpenClaw | HermesAgent |
|---|---|---|
| 谁创建记忆 | 系统(规则驱动) | Agent(自主策展) |
| 创建时机 | 对话过程中自动 | Nudge触发 + 任务完成后 |
| 创建内容 | 原始对话 + 元数据 | 提炼后的结构化知识 |
| 人工干预 | 配置规则 | 编辑Markdown文件 |
5.2 记忆检索方式
| 维度 | OpenClaw | HermesAgent |
|---|---|---|
| 检索技术 | 向量搜索(LanceDB) | FTS5全文搜索 + LLM摘要 |
| 语义理解 | 依赖Embedding向量匹配 | 依赖LLM生成摘要 |
| 速度 | 快(向量索引) | 中等(LLM推理有延迟) |
| 额外依赖 | LanceDB | 无(SQLite内置) |
| 离线能力 | ❌(需要Embedding模型) | 部分(FTS5可离线) |
5.3 用户建模
| 维度 | OpenClaw | HermesAgent |
|---|---|---|
| 是否有用户建模 | ❌无显式建模 | ✅Honcho辩证建模 |
| 建模方式 | - | Thesis → Antithesis → Synthesis |
| 更新策略 | - | 每次对话自动更新 |
| 建模深度 | - | 深入(偏好、习惯、风格) |
5.4 技能作为记忆
| 维度 | OpenClaw | HermesAgent |
|---|---|---|
| 技能系统 | ❌无 | ✅agentskills.io标准 |
| 从经验创建技能 | ❌无 | ✅闭环学习 |
| 技能可编辑 | - | ✅Markdown格式 |
| 技能可共享 | - | ✅Skills Hub |
5.5 记忆的可访问性
| 维度 | OpenClaw | HermesAgent |
|---|---|---|
| 外部访问 | ✅memory-host-sdk | ❌Agent内部 |
| 人类可读 | 部分可读 | ✅Markdown + SQLite |
| 人工编辑 | 通过SDK | 直接编辑文件 |
| API接口 | ✅有 | ❌无 |
六、不同场景的推荐
场景一:个人AI助手
推荐:HermesAgent的方法
个人助手最需要的是"越用越懂你"。Agent策展+用户建模+闭环学习,让助手能持续进化
场景二:企业知识管理
推荐:OpenClaw的方法
企业场景需要记忆被多个系统共享。memory-host-sdk + Wiki风格知识库 + 向量搜索,更适合多用户协作
场景三:AI数字分身(Avagent)
推荐:HermesAgent的核心 + OpenClaw的可访问性
- ✅从HermesAgent借鉴:五层记忆架构、Agent策展、用户建模
- ✅从OpenClaw借鉴:memory-host-sdk的外部可访问性设计
- 升级方向:后期增加向量搜索,替换FTS5
七、Avagent记忆系统的设计建议
基于两个项目的分析,Avagent的记忆系统可以这样设计
┌─────────────────────────────────────┐
Avagent 记忆系统
┌─────────────┐ ┌──────────────┐ │
│SQLite FTS5 │ │向量搜索引擎 │ │
│(关键词搜索)│ │(语义搜索) │ │
└──────┬──────┘ └──────┬───────┘ │
└──────┬──────────┘ │
│混合排序 │
┌──────▼──────┐ │
│记忆检索引擎 │ │
└──────┬──────┘ │
│ │
┌─────────────┼─────────────┐ │
│ │ │ │
│会话记忆 Agent策展记忆 用户画像 │
│(SQLite) (Markdown) (结构化) │
│ │
┌──────────────────────────┐ │
│ 技能记忆(agentskills) │ │
└──────────────────────────┘ │
│ │
│ ┌──────────────────────────┐ │
│ │ Memory API (HTTP/SDK) │ │
│ └──────────────────────────┘ │
└─────────────────────────────────┘
设计原则:
- 初期:FTS5 + LLM摘要(零额外依赖)
- Agent策展记忆(自主决定记住什么)
- 深度用户建模(偏好、习惯、风格、思维模式)
- 技能从经验中提取(闭环学习)
- 提供Memory API(让外部系统可访问)
- 后期增加向量搜索(升级而非替换)
八、小结
记忆系统是AI Agent的"灵魂"所在。两个项目展示了不同的设计哲学
- OpenClaw:工程化的插件架构,通过可插拔的后端+SDK实现灵活的记忆管理
- HermesAgent:以Agent为中心的策展机制,让Agent自己决定"记住什么"
对于"AI数字分身"场景,HermesAgent的Agent策展+用户建模更贴合需求,但OpenClaw的memory-host-sdk提供了更好的可访问性。两者的融合才是最优解
系列导航
- 下一篇:安全架构专题对比(即将发布)
前置阅读
*本文基于OpenClaw (2026.4.16) 与HermesAgent (v0.10.0) 源码分析
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)