Hermes Agent vs OpenClaw:八大工程维度深度对比(附架构图)
2026年AI Agent框架的格局正在加速分化。一边是 Hermes Agent(Nous Research出品,GitHub 6万+ Stars),另一边是 OpenClaw(社区驱动,GitHub 35万+ Stars)。两者都叫"AI Agent框架",但看一眼源码就会发现:它们从设计哲学到工程实现都走了完全不同的路。
本文从运行时形态、工具系统、长期记忆、任务编排、可插拔性、可观测性、安全模型、社区生态八个工程维度进行系统对比,帮助开发者做出更合适的技术选型。
对比基于 Hermes Agent v0.8.0 与 OpenClaw 2026.4.8 源码,数据来源:官方GitHub仓库及开发文档。

一、基本信息
| 维度 | Hermes Agent | OpenClaw |
|---|---|---|
| 首次发布 | 2026年2月 | 2025年11月(Clawdbot) |
| GitHub Stars | 6万+ | 35万+ |
| 主语言 | Python 93.6% | TypeScript 90.3% |
| 贡献者 | 317人 | 3000+ |
| 核心定位 | 自进化研究型 Agent | 个人AI助手产品化平台 |
| 许可证 | MIT | MIT |
二、运行时形态对比
这是两者最根本的架构差异。
Hermes Agent 采用 Python进程 + SQLite 的轻量架构,支持6种终端后端:
# Hermes 支持的终端后端
local # 本地直接执行
docker # Docker容器隔离
ssh # 远程SSH执行
modal # Modal 无服务器(空闲休眠,零成本)
daytona # Daytona 云开发环境
singularity # HPC容器环境
核心入口文件是 run_agent.py(约10,700行),以CLI模式和Gateway模式两种方式运行:
hermes # CLI交互模式
hermes gateway # Gateway API服务模式(支持18个消息平台)
OpenClaw 采用 Node.js Gateway + WebSocket 的重平台架构,本身就是一个完整的分布式产品:macOS菜单栏原生应用 + iOS/Android 移动端 + WebSocket控制平面,26+ 渠道插件覆盖。
架构哲学总结:
- Hermes Agent:轻量后端 + 重 Agent 循环
- OpenClaw:重 Gateway 平台 + 分布式 Node 架构

三、工具系统与权限边界
Hermes Agent 工具系统
核心是 tools/registry.py 的单例 ToolRegistry,采用自注册模式:
# 添加新工具只需三步
# 1. 在 tools/ 目录下创建文件
# 2. 实现工具逻辑
# 3. 在文件顶层调用 registry.register()
from tools.registry import registry
@registry.register(
name="my_tool",
description="...",
check_fn=lambda: os.getenv("MY_API_KEY") is not None # 运行时可用性检查
)
def my_tool(...):
pass
check_fn 机制非常实用:API Key 未配置时工具自动隐藏,模型不会产生幻觉调用不可用的工具。目前内置 47个工具 + 19个工具集。
工具文件依赖链:
tools/registry.py(无外部依赖,所有工具文件import它)
↑
tools/*.py(各工具文件在import时自动注册)
↑
model_tools.py(触发工具发现,收集schema)
↑
run_agent.py / cli.py / batch_runner.py
权限控制相对简单:命令审批白名单 + 子Agent工具剥离(DELEGATE_BLOCKED_TOOLS)。
OpenClaw 工具系统
采用三层沙箱模式:
// 沙箱配置选项
{
sandbox: "off" // 主机直接执行(默认)
sandbox: "non-main" // 非主会话在Docker中隔离运行
sandbox: "all" // 所有会话都在Docker中
}
// 文件系统边界
{
workspaceOnly: true // 硬性限制文件操作范围
}
默认工具白名单:bash、read、write;默认黑名单:browser、canvas、nodes。
核心差异: Hermes Agent 信任用户自管安全边界;OpenClaw 提供完整的沙箱和权限层次。
四、长期记忆与数据持久化
这是 Hermes Agent 最具特色的设计之一。
Hermes Agent 记忆架构
┌─────────────────────────────────────────────────────────────┐
│ MEMORY.md(Agent知识) USER.md(用户模型) │
│ 字符上限:2200 字符上限:1375 │
│ 有界策展式记忆 分隔符:§ │
└─────────────────────────────────────────────────────────────┘
↓ 冻结快照注入
System Prompt(会话开始时一次性加载)
↓ 中间写入
磁盘持久化(不改变当前系统提示,保证prefix cache有效)
关键设计亮点:
- 有界记忆:字符数硬限制迫使 Agent 主动做信息优先级管理,而不是无限堆积记忆
- 冻结快照模式:会话启动时快照一次,后续写入仅持久化到磁盘,不改变当前系统提示——这样可以保证 Anthropic prefix cache 命中率(每次修改系统提示都会使缓存失效)
- 并发保护:原子临时文件 +
fcntl.flock文件级独占锁,多进程并发安全
持久化存储采用 SQLite + FTS5 全文搜索,支持会话血统追踪(压缩操作产生父子会话关系)。
OpenClaw 记忆系统
采用可替换插件槽设计:
MemoryManager
└── MemoryProvider(抽象基类ABC)
└── 插件目录 plugins/memory/
单选配置(同一时间只能激活一个插件)
支持 MEMORY.md / memory/*.md 工作区记忆,以及 Honcho 集成(辩证式用户建模)。
核心差异: Hermes 记忆紧凑有机,有自学习闭环;OpenClaw 记忆模块化可替换,插件生态驱动。
五、任务编排与多Agent调度
Hermes Agent 三层编排架构
工具循环层
├── LLM 调用 → 执行工具 → 追加结果 → 重复
│
子Agent委托层
├── 单任务模式
├── 批量并行(最大3个并发,ThreadPoolExecutor)
├── 深度限制:最大2层(父→子→孙被拒绝)
└── 凭证池继承与轮换
│
定时调度层(Cron)
├── 自然语言任务定义
├── 多平台投递(local/origin/特定平台)
├── 技能注入
└── 数据收集脚本(HERMES_HOME/scripts/)
不活跃超时机制:Agent积极调用工具时持续运行,仅在真正挂起/卡死超过10分钟时终止。
OpenClaw 多Agent拓扑
入站路由层
├── 渠道/账户/对等方 → 隔离Agent
│
跨会话协调层
├── sessions_list / sessions_history
├── sessions_send / sessions_spawn
│
触发层
├── Cron + Webhooks
├── 队列模式(控制消息处理排队)
└── Pi Agent 运行时(RPC模式,工具流/块流)
核心差异: Hermes Agent 是单Agent循环+委托的简洁模型;OpenClaw 更像一个完整的Agent操作系统,支持完整的多Agent拓扑。
六、可插拔性对比
| 维度 | Hermes Agent | OpenClaw |
|---|---|---|
| 模型切换 | hermes model 一键切换(OpenRouter 200+模型) |
配置文件切换 |
| 工具扩展 | 自注册模式,三步添加 | npm包分发 |
| 渠道集成 | 18个消息平台适配器 | 26+渠道插件 |
| 记忆系统 | — | 可替换插件槽 |
| MCP集成 | tools/mcp_tool.py |
mcporter桥接 |
| 技能分发 | Skills Hub + agentskills.io | ClawHub + 内置/托管/工作区 |
| 界面定制 | YAML皮肤引擎 | Canvas可视化工作区 |
七、安全模型对比
Hermes Agent
# 安全机制分层
├── 命令审批白名单(tools/approval.py)
├── DM 配对码机制(防止未授权接入)
├── Docker 容器隔离(可选)
├── 记忆注入扫描(检测 prompt injection / 数据窃取)
├── 上下文文件威胁扫描(AGENTS.md等)
└── Cron 脚本路径验证
策略:"默认信任 + 选择性防护",假设用户是受信任的技术用户,由用户自行决定安全边界。
OpenClaw 安全体系
安全层级
├── 信任模型:"个人助手"(一个受信操作者 + 可能多个Agent)
├── DM策略:pairing(默认)/ open
├── 分级沙箱:off / non-main / all
├── 文件系统硬化:workspaceOnly
├── Gateway + Node 信任分离
├── 安全审计:openclaw security audit --deep --fix
└── 完整 SECURITY.md(威胁模型、信任边界、漏洞报告流程)
策略:"默认安全 + 选择性开放",有完整的威胁模型文档,适合企业合规场景。
八、开发者体验与可观测性
| 维度 | Hermes Agent | OpenClaw |
|---|---|---|
| 调试方式 | CLI树形视图 + --verbose + hermes doctor |
Dashboard + /status + openclaw doctor |
| 测试覆盖 | 约3,000个Pytest测试 | 无公开数据 |
| API兼容 | OpenAI风格 / Anthropic风格 / GitHub Copilot | WebSocket协议 + ACP |
| 安全审计 | 内置扫描 | security audit --deep --fix |
| 监控 | /usage + /insights |
Control UI Dashboard |
九、选型建议
| 场景 | 推荐 | 原因 |
|---|---|---|
| AI Agent研究 / RL训练 | Hermes Agent | 闭环学习设计、轨迹生成、Atropos RL集成 |
| 企业级AI助手部署 | 基于OpenClaw的WorkBuddy | 完整安全模型、合规审计、权限管控 |
| 个人开发者工具链 | Hermes Agent | 极简部署、多模型、自进化 |
| 多平台覆盖(移动端/桌面) | OpenClaw | macOS/iOS/Android原生应用,26+渠道 |
| 从OpenClaw迁移 | Hermes Agent | 内置 hermes claw migrate 一键迁移工具 |
十、关键工程启示
从这两个框架的对比中,有几个值得借鉴的设计决策:
1. 自注册工具系统(来自Hermes)registry.register() + check_fn 运行时可用性检查的组合,能有效防止模型幻觉调用不可用工具,适合工具数量多且动态变化的场景。
2. 有界记忆设计(来自Hermes)
强制字符上限不是功能退化,而是让Agent主动学习信息优先级管理。配合冻结快照模式,在缓存效率和信息新鲜度之间找到精妙平衡。
3. 分级沙箱策略(来自OpenClaw)off / non-main / all 三级沙箱比"全开"或"全关"的二元设计更符合企业实际需求,可以根据风险等级精细控制。
4. 参数防御性强转(来自Hermes)coerce_tool_args() 会自动将字符串"42"转成整数42,避免大量因类型不匹配导致的工具调用失败,值得在任何工具调度系统中实施。
参考资料
- Hermes Agent 官方架构文档:https://hermes-agent.nousresearch.com/docs/developer-guide/architecture/
- Hermes Agent GitHub:https://github.com/nousresearch/hermes-agent
- OpenClaw GitHub:https://github.com/openclaw
- OpenClaw WorkBuddy 企业版:https://workbuddy.tencent.com
上海华万通信是腾讯系企业软件生态服务商,专注于腾讯会议、企业微信、腾讯电子签、WorkBuddy企业AI助手等产品的选型咨询与集成部署,帮助企业构建高效的数字化协同工作平台。如有需求,欢迎联系沟通。
更多推荐


所有评论(0)