Hermes架构拆解

admin 2026-07-12 04:39:58 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: Hermes是开源智能体运行框架,实现九部分模型,包括外层迭代循环、上下文压缩、工具管理、子智能体、会话持久化、系统提示词组装和生命周期钩子。关键发现包括提供方抽象、压缩路径、工具注册与暴露分离、SQLite会话持久化、三层系统提示词组装。建议关注持久子运行编排演进。 综合评分: 84 文章分类: 安全建设,解决方案,AI安全


cover_image

Hermes 架构拆解

Aparna Aparna

ThinkInAI社区

2026年7月9日 08:45 上海

在小说阅读器读本章

去阅读

⬆️关注 ThinkInAI 星科社区,最及时最干货的AI内容分享

Hermes(来自 @NousResearch(https://x.com/@NousResearch))是目前生态中最优秀的开源智能体运行框架之一。我们希望直接研究它的实现,并把我们的发现映射到我们用于分析运行框架的框架中。

在我们之前的文章《什么是智能体运行框架,(https://x.com/aparnadhinak/status/2046980769747533830)》中,我们使用了一个九部分模型:

  • 外层迭代循环
  • 上下文管理与压缩
  • 技能和工具管理
  • 子智能体管理
  • 内置预封装技能
  • 会话持久化与恢复
  • 结合项目上下文注入的系统提示词组装
  • 生命周期钩子
  • 权限与安全层

Hermes 实现了全部九项。真正有意思的是它们的实现方式,以及位于这个框架之外的额外系统。

外层迭代循环

核心循环很熟悉:调用模型、分发工具、追加工具结果,重复,直到得到最终响应或被中断。

Hermes 比大多数开放运行框架更强的地方在于提供方抽象。同一个运行时可以驱动 chat-completions 风格的 API、Anthropic Messages、Codex Responses、进程外 Codex app-server 路径,以及 Bedrock。工具调用格式和各提供方的特殊差异由传输适配器进行规范化。在循环层面,模型接口看起来是一致的。对于我们这些非常希望有一个支持所有模型的开放运行框架提供方的人来说,这种开放做法比 Claude Code 好得多。

上下文管理与压缩

Hermes 拥有一条完整的压缩路径,而不是简单粗暴地裁剪上下文。

较早的轮次会由一个辅助模型进行总结。开头和结尾片段会通过 token 预算得到保护。早于可配置阈值的工具输出会在总结前被剪除。摘要预算会随被压缩内容大约按百分之二十的比例扩展,下限为两千 token,上限为一万二千 token。实践中,这既避免了在很小的压缩上花费过多上下文,又能为大型压缩提供足够空间,使其真正有用。

压缩同时也是一个会话生命周期事件。发生压缩时,Hermes 会关闭当前 SQLite 会话行,创建一个由摘要初始化的子会话,轮换会话 ID,并记录父子谱系。插件上下文引擎和记忆提供方会收到边界移动的通知。如果一次长对话经历多次压缩,你得到的是一条谱系链,而不是一份被反复重写的转录记录。相较于我们评审过的其他运行框架架构,这一点相当独特。

技能和工具管理

在 Hermes 中,工具注册和工具暴露是两个分离的关注点。

工具会在导入时注册到一个中央注册表。另一个工具集层决定模型在某次运行中实际能看到什么。这个暴露集合会按平台和场景划定范围,并且可以在委托运行中进一步收窄。一个配置档拥有自己的启用范围。

这种分离在运维上很重要。你可以保留一个范围很广的已安装工具库,同时让任意单次运行中模型可见的表面积保持足够小,从而便于控制 token 成本和安全风险。

子智能体管理

委托原语很扎实。一次子运行会获得自己的任务 ID、自己的终端上下文,并向父级返回结构化摘要。危险命令在委托上下文中默认拒绝,并且递归深度有上限。

目前的限制在于生命周期所有权。大多数子任务仍然存在于父级调用路径之下。父级结束时,子级也随之结束。现在还没有一个持久的、可由外部操控的子运行平面,具备独立的控制语义。

会话持久化与恢复

这是 Hermes 与编辑器优先的运行框架差异最大的地方。

会话状态存储在 SQLite 中,使用 FTS5 搜索和 WAL 日志,并针对无法支持 WAL 协调的文件系统提供回退行为。会话会跟踪轮次的来源标签、压缩拆分产生的父子谱系,以及网关可在模型运行前用于解析路由的元数据。

这种设计实际上把会话视为运行时基础设施,而不仅仅是用于恢复的转录记录。CLI、消息平台和定时任务都可以接入同一个会话平面。一条消息可以在推理前被路由到正确的会话。即使没有活跃终端,定时任务也可以写入一个会话。

Hermes 还向模型暴露了一个面向会话的 session_search 工具,用于在历史会话中进行聚焦式回忆。这是一个具体例子,说明它把上下文管理决策推入模型循环本身,而不是只依赖静态注入。

系统提示词组装与项目上下文注入

Hermes 明确地以三层结构组合系统提示词:稳定层、上下文层和易变层。

稳定层承载身份信息(存在 SOUL.md 时)、仅针对已启用工具的工具指导、技能索引内容、环境提示(如 Tmux/容器检测)以及平台提示。上下文层从当前工作目录读取项目文件(AGENTS.md、CLAUDE.md、.cursorrules),并在加载这些内容之前运行提示注入扫描。易变层承载记忆快照、用户配置材料、外部记忆提供方区块,以及一行带有模型/提供方元数据的时间戳。

这种分层本身在代码中是显式的,这让不变量更容易推理。稳定层保持稳定,上下文层保持来源于当前工作目录,易变层逐轮变化。提示词重建与压缩及相关失效点绑定,这有助于在常规轮次中保持提示词前缀对缓存友好。

生命周期钩子

Hermes 有两个钩子表面,分别对应不同的信任模型。

第一类是插件生命周期钩子,它们在运行框架进程内部运行,可以在工具调用前/后、网关预分发、审批请求/响应等事件上阻塞、重写或透传操作。第二类是由文件系统驱动的网关钩子,允许用户安装 shell 或 Python 脚本,在网关启动、智能体步骤、命令触发路径等事件上运行。

从架构上看,这两个表面服务于同一个目的:策略执行、审计和宿主侧副作用应当独立于模型配合而执行。

Hermes 在框架之外新增了什么

在九组件运行框架模型之外,有三个子系统格外突出。

第一个是消息网关。Hermes 支持广泛的平台适配器表面(Telegram、Discord、Slack、WhatsApp 等),并通过共享会话模型路由流量。这给人的感觉像是一种在 OpenClaw 中已经成功验证过的用户界面体验,专为用户与长时间运行的智能体交互而设计。

第二个是配置档系统。一个配置档就是一个隔离的智能体根目录。同一台机器上的两个配置档,从状态和足迹角度看,就像两个不同的智能体。

第三个是作为一等子系统的 cron。任务是持久的,受与交互式会话相同的权限机制约束,通过网关路径交付,并按配置档隔离。这会把无人值守运行相关的问题推入主架构,而不是把它们留作外围脚本。

我们认为 Hermes 接下来应该走向哪里

显而易见的下一步,是从强大的委托走向一等公民级的编排。

delegate_task 已经能产生有用的工作器行为和结构化返回。仍然缺失的是持久的子运行控制:运行 ID、显式生命周期管理、外部操控,以及能够在父级完成后仍然存续的清理语义。Hermes 已经通过会话基础设施和网关路由具备了大量底层基础。把子运行提升为一等控制平面对象,是最自然的下一步架构演进。这也是我们看到它相较于 OpenClaw 智能体编排层的差距之一。

最后

Hermes 已经具备出色的执行质量,以及一个面向开放运行框架的强大系统基础。它很可能是生态中最优秀的开放模型运行框架之一。它的发布节奏……简直离谱,而且大多数困难的底层基础工作已经就位。很期待看到智能体编排层在这个基础之上逐渐成熟。Hermes 已经能够支持比典型编码运行框架目前所能处理的范围广得多的长期存活智能体工作负载,很期待它接下来会走向何处。

本文以我之前的《什么是智能体运行框架,(https://x.com/aparnadhinak/status/2046980769747533830)》作为分析框架,并参考了*智能体运行框架中的集群管理*(https://arize.com/blog/swarm-management-of-agent-harnesses/),以及 Anthropic 关于*托管智能体*(https://www.anthropic.com/engineering/managed-agents)的文章。


加入ThinkInAI社区

#

如果你也对AI充满兴趣,欢迎加入我们的ThinkInAI社区,在这里,你可以:

  • 获取最新AI工具资讯
  • 参与实战经验分享
  • 结识志同道合的伙伴
  • 共同探讨AI应用方向

扫描文末二维码,加入ThinkInAI社区,一起拥抱AI新时代!


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:ThinkInAI社区 Aparna Aparna《Hermes 架构拆解》

Hermes架构拆解 网络安全文章

Hermes架构拆解

文章总结: Hermes是开源智能体运行框架,实现九部分模型,包括外层迭代循环、上下文压缩、工具管理、子智能体、会话持久化、系统提示词组装和生命周期钩子。关键发
评论:0   参与:  0