乐于分享
好东西不私藏

OpenClaw vs Hermes:殊途同归的 Agent

OpenClaw vs Hermes:殊途同归的 Agent

🌟 点个关注不迷路,「瓴易」带你探索 AI 工具 de 无限可能!

上一篇聊了 Hermes Agent 和 OpenClaw 的背景故事,这篇我们深入到架构层面。

如果你觉得"架构"这个词太抽象,别担心。我用大白话来讲——这两个东西的核心思路,就像两辆车用了同样的发动机,但底盘和变速箱完全不同。

先说结论:OpenClaw 的设计哲学是"简单直接",Hermes 的设计哲学是"严谨可扩展"。


OpenClaw:Gateway 就是老大

OpenClaw 的架构很清晰:

聊天平台(Telegram/Discord/微信...)        ↓    Gateway(网关)        ↓    Agent(大脑)    ├── Skills(技能)    ├── MCP(外部工具)    └── Tools(内置工具)

所有消息先到 Gateway,Gateway 负责路由、会话管理、权限控制,然后交给 Agent 处理。

Gateway 是绝对的中心。 一切都围着它转。

这个设计的好处是什么?

简单。 你理解了 Gateway,就理解了整个系统。配置一个 openclaw.json,启动 Gateway,所有平台就都通了。

快。 Node.js 本身就快,加上架构简单,启动速度和内存占用都很低。我跑在树莓派上,日常使用完全没压力。

灵活。 记忆系统没有硬性限制,想记多少记多少,格式随意。Skill 也是纯 Markdown,怎么写都行。

坏处呢?

扩展性受限。 当你需要更复杂的执行环境(比如 Serverless、HPC),或者更精细的权限控制,Gateway 中心的架构就开始吃力了。

Hermes:AIAgent 才是核心

Hermes 的架构完全不同:

CLI / Gateway / ACP / Batch / API / Python Library        ↓(都是平级入口,没有谁是"老大")    AIAgent(核心循环,约9200行代码)    ├── Prompt Builder(提示词构建)    ├── Provider Resolution(模型调度,3种API模式)    ├── Tool Dispatch(48个工具,40个工具集)    └── Context Compression(上下文压缩)        ↓    Session Storage(SQLite + FTS5全文搜索)    Tool Backends(6种终端后端)

注意这个关键区别:Gateway 只是入口之一。CLI、Gateway、ACP、批量运行、API Server、Python Library——这些全是平级的。

真正的核心是 AIAgent

而且 Hermes 在 AIAgent 里做了很多 OpenClaw 没有的分层:

Provider Resolution(模型调度)。 支持三种 API 模式——chat_completions(标准模式)、codex_responses(代码专用)、anthropic(Anthropic 原生)。不同模型自动选择最优调用方式。OpenClaw 只有一种。

Context Compression(上下文压缩)。 当对话太长时,自动进行有损摘要压缩,保证不会因为上下文溢出而崩溃。OpenClaw 没有这个机制。

Session Storage with FTS5。 所有会话存入 SQLite,带全文搜索索引。这意味着你可以搜索"上周我跟Agent聊了什么关于部署的内容",直接搜到。OpenClaw 的会话历史没有全文搜索能力。

6种终端后端 vs 2种

这个差异我觉得是架构层面最大的不同之一。

OpenClaw 支持两种执行环境:本地 Shell 和 Docker。

Hermes 支持六种:

后端
说明
谁能用
本地 Shell
最基本的方式
两个都有
Docker
容器隔离
两个都有,但 Hermes 加了安全加固(只读根、删掉所有capability、PID限制)
SSH
远程执行
两个都有
Singularity
HPC超算环境
仅 Hermes
Modal
Serverless,空闲零成本
仅 Hermes
Daytona
云沙箱
仅 Hermes

Modal 和 Daytona 是什么?

Modal 是一个 Serverless 计算平台。你的代码提交上去,它按需启动容器执行,执行完就销毁。空闲时不花一分钱。对于 AI Agent 来说,这意味着你可以把耗时任务丢到云端执行,而不用一直开着服务器。

Daytona 是一个开源的云开发环境。类似 GitHub Codespaces,但可以自托管。

这两个后端的存在,让 Hermes 的 Agent 理论上可以跑在"几乎零成本"的云端——只有执行任务时才计费,平时不花一分钱。

OpenClaw 目前没有这个能力。

API 调用:1种 vs 3种

这个区别对普通用户影响不大,但对开发者和高级用户很重要。

OpenClaw 用一种 API 模式跟所有模型通信。

Hermes 支持三种:

  • • chat_completions:标准模式,OpenAI 格式,大部分模型都支持
  • • codex_responses:代码专用模式,针对代码生成任务优化
  • • anthropic:Anthropic 原生 API,支持 Claude 的扩展功能

这意味着 Hermes 可以针对不同任务选择最优的调用方式。比如生成代码时用 codex 模式,普通对话用 chat 模式,调用 Claude 时用 anthropic 模式。

实际效果如何?根据我的测试,在代码生成任务上,codex 模式比标准模式确实更快更准确。但这种提升主要在极端场景下才能感受到,日常使用差别不大。

安全机制:都重视,但方式不同

两个项目都很重视安全,但侧重点不同。

命令审批:两个都有。OpenClaw 用 exec preflight,Hermes 用 approval 系统。效果类似——危险命令需要用户确认。

Docker 隔离:两个都支持。但 Hermes 的 Docker 配置更严格:只读根文件系统、删掉所有 Linux capability、限制 PID 数量。这是安全加固的最佳实践。

Hermes 额外有

  • • DM 配对授权(pairing 系统):新用户私聊 Agent 需要先配对验证
  • • 记忆安全扫描:注入和泄露模式检测,防止恶意内容通过记忆注入
  • • 环境变量显式声明:技能需要声明自己要用哪些环境变量,消息平台不会在聊天中询问密钥

OpenClaw 额外有

  • • mention 规则:群聊中需要 @ 才会响应
  • • NO_REPLY 机制:精确控制何时回复何时不回复

配置风格:JSON vs YAML

小事,但值得一提。

OpenClaw 用 JSON 配置,Hermes 用 YAML。

JSON 的好处是严格,不容易写错格式。坏处是写起来啰嗦,不能写注释。

YAML 的好处是简洁、可读性好、能写注释。坏处是缩进敏感,有时候会踩坑。

对于"改配置"这种高频操作,YAML 确实更舒服。

总结:谁更适合你?

如果你的使用场景是:

  • • 🟢 个人使用,日常聊天+工具调用
  • • 🟢 跑在树莓派等资源受限的设备上
  • • 🟢 需要快速上手,不想折腾复杂配置
  • • 🟢 已经有大量 OpenClaw 的 Skills 和工作流

OpenClaw 更合适。 简单直接,够用就好。

如果你的使用场景是:

  • • 🔵 需要多种执行环境(Serverless、云沙箱、HPC)
  • • 🔵 需要精细的权限控制和安全机制
  • • 🔵 需要跨会话搜索历史对话
  • • 🔵 偏好 Python 生态
  • • 🔵 有 RL 训练或研究需求

Hermes 更合适。 严谨可扩展,面向未来。

关注「瓴易」,别错过后续更新。


📚 往期推荐

未来软件的形态:当 Agent 成为入口

有人抄了 OpenClaw 的作业,还做了一键迁移按钮

OpenClaw 版本升级避坑指南:升级前必看的那些坑

OpenClaw 免费助手/工具(1):SearXNG,一个属于你自己的搜索引擎

觉得有用?点个让更多人看到 👇