Hermes Agent 架构全解:自进化单体智能体的学习循环与四层内存设计
概述
Hermes Agent 是 Nous Research 打造的一款开源 AI 智能体。和主打多智能体协同调度的 OpenClaw 不同,Hermes 是单打独斗型选手,而且它越用越强——不是靠你手动更配置,而是靠实打实的“实战经验”自己进化。

Hermes Agent
Hermes Agent 是 Nous Research 打造的一款开源 AI 智能体。和主打多智能体协同调度的 OpenClaw 不同,Hermes 是单打独斗型选手,而且它越用越强——不是靠你手动更配置,而是靠实打实的“实战经验”自己进化。
大多数智能体顶多能记住发生过什么,Hermes 则直接更进一步:它会把管用的方法抽出来,写成可复用的技能,下次碰到类似问题直接开抄作业。这套学习循环是全自动跑的,再加上它的内存架构自带缓存优化,智能体学得再多,也不会让你的 Token 账单一路狂飙。
本文会把这套机制扒得明明白白:学习循环、四层内存系统、网关、智能体执行流程、终端后端、技能与工具、定时自动化、会话持久化,以及如何借助 Nebius Token Factory 大规模跑 Hermes。
学习循环
像 OpenClaw 这类智能体,会跨会话保留上下文,再通过一个中心枢纽做路由,简单场景用着还行。但问题也很明显:只记住“发生了啥”,却没记住“啥管用”。
Hermes 就是为填补这个缺口设计的——它会把完整跑通的工作流,直接变成可复用的操作步骤,下次不用再从头踩一遍坑。
这就是学习循环的意义:一个藏在每轮会话底下的闭环反馈系统,记忆、技能、会话检索,全都是这套持续流程的输出结果。
整个循环有四个核心模块,各自在流程的不同节点触发,咱们来看看它们是怎么联动的。

智能体自主精选记忆 + 定时提醒机制
大多数智能体要么啥都记、啥都用不上,要么啥都不记、每次重启从零开始。Hermes 两边都不沾,它把筛选记忆的权力交给自己,靠的就是一个叫“定时提醒”的机制。
在会话运行的固定间隔里,智能体会收到一条内部系统提示,让它回头复盘:刚才发生的事儿里,有没有值得存下来的?整个过程不需要用户插手,智能体自己扫一遍近期操作,觉得对未来有用,就写进记忆文件。

结果就是:记忆库始终是精选内容,而不是乱七八糟的聊天垃圾堆。
自主生成技能
智能体干完一个任务后,会自动判断:我刚才这套操作流程,值不值得写成文档?触发条件很明确:
-
调用了 5 次及以上工具
-
从错误里成功恢复
-
用户给过修正指导
-
走通了一套不那么直观的有效流程
满足条件,它就会在 ~/.hermes/skills/ 下生成一个技能文件——不是普通日志,而是一套下次能直接照搬的可复用指令集。
收起
代码语言:YAML
自动换行
AI代码解释
---
name: my-skill
description: 这个技能是干嘛的,一句话说清
version: 1.0.0
platforms: [macos, linux] # 可选:限定操作系统
metadata:
hermes:
tags: [python, automation]
category: devops
fallback_for_toolsets: [web] # 可选:条件触发
requires_toolsets: [terminal] # 可选:依赖工具集
---
每个技能文件都包含名称、简介、执行步骤,以及用到的工具调用、文件引用等,格式完全遵循 agentskills.io 开放标准,意味着技能可以跨兼容智能体直接迁移。
技能自我进化
技能写好不是就锁死不变了。智能体会继续用,用着用着发现更好的路径,就会当场更新。
它通过 skill_manage 工具支持六种技能操作:
-
创建、补丁、编辑、删除、写文件、删文件
默认优先用 patch(补丁) 方式更新:只传旧文本和替换内容,不用把整个技能重写一遍。这么做既保证正确性,又省 Token——全量重写容易把原本好用的部分改崩,补丁只改该改的,执行起来也更轻量。
基于 FTS5 的会话检索 + LLM 摘要
所有会话都会存入 SQLite 归档,并使用 FTS5 建立索引。智能体检索历史时,不会把整段旧对话塞进上下文,而是先检索,再通过 LLM 做摘要,只把和当前任务相关的内容注入进来。
这一层负责情景记忆:记录“发生了什么、什么时候发生的”。
而技能层负责过程记忆:记录“该怎么做”。

两层各司其职、分开存储,不搅成一锅粥——这也是整个内存系统设计的核心思路。
多层级内存系统
把所有记忆混在一块儿,正是大多数智能体越用越拉胯的原因。所以 Hermes 直接拆成四层独立内存,每层职责明确、存储位置固定、读取时机清晰。
提示词记忆:MEMORY.md & USER.md
这是常驻层,每次会话一开始就自动加载,不用智能体主动去调。两个文件都放在 ~/.hermes/memories/,在处理第一条消息前就直接注入系统提示。
两个文件加起来总字符上限是 3575,故意设得很紧凑,就是为了逼你精选,而不是无脑堆内容。智能体通过 memory 工具管理它们,支持三种操作:添加、替换、删除。

一个重要细节:会话中对这两个文件的修改,要到下次会话才生效,不会实时热更新。
会话检索:SQLite + FTS5
这里要分清什么时候用会话检索,什么时候用提示词记忆:
-
提示词记忆:常驻,自动加载
-
会话检索:主动调取,智能体判断历史有用时才去查
简单说就是持久度:
智能体会在“定时提醒”环节自己判断该放哪儿,不会一股脑全塞一起。
技能:过程记忆
前面讲过技能怎么生成,这里重点说怎么存、怎么加载才不炸 Token。
所有技能都以独立 Markdown 文件存在 ~/.hermes/skills/。新装时,仓库自带的技能会拷进去,智能体自创的、从技能中心装的,也都放这儿。
加载策略是渐进式披露:默认只加载技能名和简介,完整内容只有智能体判断当前任务需要时才载入。

这样一来,不管你有多少技能,Token 占用都基本持平。200 个技能的智能体,和 40 个技能的上下文开销差不多,因为详细内容只在真要用时才进场。
Honcho 层:用户建模
前三层都需要智能体主动写点什么,第四层不一样:它不等待显式写入,而是跨会话默默给你画像,悄悄记录你的偏好、说话风格、专业领域,随时间不断更新。这就是 Honcho,一个可选的用户建模层,架在所有内存之上。
它用辩证建模思路,在 12 个身份层里同时建模“你”和“智能体”的互动关系。
这一层是可选的,大多数专用任务或自动化场景,前三层就够用。但如果你把 Hermes 当日常私人助理,想要回复风格高度贴合你的工作习惯,Honcho 就很值。

接下来要讲的网关,就是让这四层内存能跨平台无缝流转、切设备不丢上下文的关键。
网关
学习循环和内存系统再强,也得智能体能随时用得上才行——这就是网关的活儿。它是一个常驻后台服务,让 Hermes 在你绑定的所有平台保持运行和连接,不是要用时才启动,而是一直在线待命。
平台适配器与会话路由
Hermes 可以对接 CLI、Telegram、Discord、Slack、WhatsApp、Signal、邮件,每个平台都有独立适配器,但全部汇入统一的会话路由层。

在 Telegram 开的头,去终端接着聊完全没问题,因为会话绑的是 ID,不是平台。
Telegram 还更进一步,支持“项目对话”:在单个私聊里用话题功能跑独立工作流,每个话题自带专属技能绑定和会话上下文。
gateway/ 目录主要管五件事:消息收发、会话路由、内容投递、平台绑定、定时任务触发。
-
绑定:把新平台关联到你的智能体实例
-
定时 tick:按计划触发自动化任务,并路由到对应平台
整个网关以系统服务运行,用 hermes gateway 启动,关掉终端也照样在后台跑。
对比其他架构:优势在哪?
在 OpenClaw 里,网关只管投递,职责到此为止。技能生成、写记忆、定时自动化输出,全走独立机制,和网关不打通。
在 Hermes 里,网关就是循环的一部分。

进来一条消息就能触发技能生成,定时自动化的结果也走同一层网关回传,跨平台连贯体验之所以丝滑,是因为会话路由从一开始就嵌在系统里,而不是后期补丁。
智能体执行循环
任何发给 Hermes 的消息,不管来自 CLI、Telegram 还是其他平台,都会进入 run_agent.py 里的同步调度引擎。内存、技能、工具、网关,全都在这儿按固定顺序一起跑。
单轮生命周期
消息到达 → 生成任务 ID → 加载缓存的系统提示,或从内存、技能索引、相关文件重新构建 → 发 API 请求前先做压缩预检,确认对话历史没快顶爆上下文。
如果模型返回工具调用,智能体就执行,把结果追加回去,再循环一轮 API 请求。

直到模型返回最终文本,会话存入 SQLite,再通过网关把回复发出去。
压缩即整合
预检发现对话太长时,会在硬上限触发前启动哨兵机制。辅助模型扫完整段对话,把有用内容压缩进 3575 字符限制里,中间轮次做摘要而不是直接删掉。
原始对话的血统链会保留在 SQLite 里,就算压缩过,智能体也能追溯更早的上下文。
提示词缓存
Hermes 的系统提示来自稳定数据源,前缀在多轮对话里基本不变,大多数服务商都会缓存,降低后续轮次的延迟和成本。
三种情况会击穿缓存:会话中途切模型、改记忆文件、改上下文文件。任何一种都会触发全量重编译,所以生产环境用哪家服务商很关键。
就算服务商中途挂了,智能体也不会卡死。你可以在 config.yaml 里配置一组推理服务商优先级,Hermes 会自动切到下一个,不打断执行流程,会话继续、上下文保留,用户完全感知不到故障。
终端后端
网关管通信,终端后端管活儿具体在哪儿干。Hermes 提供六种选择,让智能体在工作实际发生的环境里跑。
六种后端
覆盖几乎所有部署场景:
-
Local:直接跑在你本机
-
Docker:容器隔离,不污染宿主机
-
SSH:直接在远程服务器执行,适合操作远程文件、数据库、服务
-
Daytona / Modal:无服务器方案,闲置休眠、用时拉起,长期挂着但使用不均的场景巨省钱
-
Singularity:HPC、科研环境专用,不让用 Docker 时的替代品
怎么选很直白:
个人用选 Local;要沙箱选 Docker;活儿在服务器选 SSH;超算集群选 Singularity;想无服务器省成本选 Modal / Daytona。
容器加固与零遥测
Docker 模式下,Hermes 默认启用只读根文件系统、移除 Linux 特权权限、提供命名空间隔离。这些是架构级默认设置,不是可选开关,智能体没法乱写目录,也提不了权。
零遥测也是一样:设计上就不会有任何数据外发,不是隐私开关,而是天生属性。
技能与工具
工具和技能都是 Hermes 扩展能力的方式,但层级完全不同,先分清再往下看:
-
工具:智能体能调用的单个能力,比如执行命令、搜网页、生成图片
-
技能:智能体用工具组合出来的“套路”,是已经跑通过、记下来的可复用工作流
内置工具
40 多个内置工具分五大类:
-
执行类:终端命令、代码运行
-
网页类:搜索、浏览器自动化
-
媒体类:视觉理解、文生图、TTS
-
协同类:子智能体调度、多模型推理
-
记忆与规划类:让智能体在会话里程序化操作自己的内存
模型方面,Hermes 通过 Nous Portal 单点对接 400 多个模型,也原生支持 Hugging Face,带模型选择器和配置向导。

它还支持 MCP 能力,开发者可以通过四个插件钩子深度扩展:
pre_llm_call、post_llm_call、on_session_start、on_session_end
不用分叉代码、不用改内部逻辑,就能在智能体循环的关键节点插入自定义逻辑。
技能系统
Hermes 自带 40+ 预置技能,覆盖 MLOps、GitHub 工作流、科研、生产力等。新装时会拷进 ~/.hermes/skills/,和智能体自创、从中心下载的技能放在一起。
存储格式遵循 agentskills.io 开放标准,技能可跨兼容智能体迁移、分享,不用转换。默认只加载名称和摘要,完整内容按需加载。
定时自动化
Hermes 把重复任务当成一等公民,而不是随便调用 AI 的 Shell 脚本或 Cron 任务。
你设置好定时消息,Hermes 解析指令,把任务存在 cron/ 目录,网关的定时 tick 机制会负责剩下的事。
时间一到,智能体以完整权限调用内存和技能执行任务,再通过网关把结果投递到你指定的位置。流程和交互式会话完全一样,只是触发源从消息变成了时钟。
会话持久化
前面讲的学习循环、内存层、网关路由、智能体循环、定时自动化,全都依赖状态能跨会话留存。这份持久化能力来自 hermes_state.py 管理的 SQLite 数据库,便携文件型存储,不依赖外部服务。
每轮执行结束,智能体就把对话、工具调用、结果写入数据库,并用 FTS5 建索引方便检索。
原始对话存为 JSONL,定时任务单独存盘,WAL 模式支持单写多读,多会话并行时也稳得一批。

以上就是全套架构。本地跑完全没问题,但如果你想跑 Hermes-4–405B 又不想自己管底层基建,Nebius Token Factory 就是为此而生。
为什么选 Nebius?
Nebius Token Factory 是专门为模型推理打造的平台,Qwen 3.5、Nemotron Super、GLM-5 等强力开源模型都提供托管端点。
你可以直接跑 Nous 自家的 Hermes-4–405B,也可以选其他模型,不用自己管 GPU 分配、负载均衡、冷启动。
更厉害的是推理层之外的配套能力:Nebius 会记录对话补全结果,你可以直接导入 Data Lab,用真实的 Hermes 会话做微调数据集,再在 Token Factory 微调,部署成自己的专属端点。
如果你的 Hermes 专攻某一领域——客服、科研、编码——最后得到的就是按你使用习惯微调过的模型,不是通用基线版。
内置可观测性也很实用:可以监控请求量、延迟、Token 使用情况,对定时自动化、多任务并行场景非常友好,哪儿慢、哪儿崩了一目了然。
配置 Hermes 对接 Hermes-4–405B
就几行配置:
设置 API Key,运行 hermes model 打开模型配置,选择自定义 OpenAI 兼容端点,填入 Base URL 和模型 ID:
代码语言:Bash
自动换行
AI代码解释
export NEBIUS_API_KEY=your_key_here
hermes model
# 选择:Custom OpenAI-compatible endpoint
# Base URL: https://api.tokenfactory.nebius.com/v1/
# Model: NousResearch/Hermes-4–405B
Hermes-4–405B 拥有 128K 上下文窗口,长会话不容易提前触发压缩,预检有更大缓冲空间。
Nebius 适合什么时候用,不适合什么时候用
自己跑 405B 模型,意味着要管 GPU、负载均衡、闲置冷启动。Nebius 托管端点直接帮你把这些全免了。
但托管端点也不是万能药:
如果你只是本地跑个人助理,接个小模型就够用,还更便宜。
Nebius Token Factory 在 Hermes 全生命周期都能用:
还在试模型?用 Playground 对比。
要上生产?并发会话、定时自动化高可用、免运维 GPU 基建,一站式搞定。
总结
以上就是 Hermes 的完整架构。从一条消息开始,牵扯出这么多模块,但每一块都有明确目的:
让智能体越来越懂你的工作,而不只是泛泛地变“更强”。
优先补丁而非全量改写、四层内存、提示词缓存策略……所有设计都是为了长期运行准确、省钱,而不只是刚开箱时看着厉害。
这不是拿来跑个小任务的轻量玩具,而是一套需要运行和维护的基建。如果你的场景单一、短期使用,这套架构会显得过于笨重。
但如果你要打造一个日常跨平台使用、处理重复且不断进化的任务的系统,Hermes 绝对值得。
OpenClaw 给你的是多智能体的模块化与调度能力,Hermes 给你的是一个越用越懂你、持续积累上下文的单体智能体。
无论你还在测试,还是要为多用户部署服务,Nebius Token Factory 都能让你免运维直达目标。
最终选哪个,完全看你到底想造什么。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)