引言
"The agent that grows with you."(会随你成长的 Agent)
这是「一天一个开源项目」系列的第 75 篇文章。今天介绍的项目是 Hermes Agent(GitHub)。
当前几乎所有的 AI Agent 框架都共享一个根本缺陷:无状态。每次对话结束,Agent 对这次任务学到的一切——解决问题的方法、你的偏好、成功的策略——全部归零。下次遇到相似问题,又要从头开始。
Nous Research 用 Hermes Agent 给出了一个截然不同的答案:让 Agent 真正积累经验。通过闭环技能学习系统,Hermes 在每次完成任务后自动提炼可复用的"技能",存储到持久化记忆中;通过三层记忆架构,它记住你的偏好和习惯;通过辩证用户建模,它理解你和它之间关系的演变。
90k+ Stars,12k+ Forks,这是 AI Agent 领域目前最受关注的开源项目之一——不只是一个工具,而是一个会成长的伙伴。
你将学到什么
- Hermes Agent 的核心理念:为什么「自我改进」是 AI Agent 的下一个临界点
- 三层记忆架构:Session 上下文 + 持久化事实 + 程序性技能
- 技能系统(Skills)的工作原理:从任务到可复用代码的闭环
- 辩证用户建模:Honcho 的 12 个身份层次追踪
- 6 种部署后端 + 多平台消息网关的架构设计
前置知识
- 了解 AI Agent 的基本概念
- Python 基础(可选,用于扩展开发)
- 有使用 Claude Code / AutoGPT 等 AI 工具的经验
项目背景
项目简介
Hermes Agent 是 Nous Research 开发的自我改进型 AI Agent 框架。「Hermes」来自希腊神话中的信使之神,象征知识的传递与积累——这个命名暗示了项目的核心追求:让知识在 Agent 的使用过程中不断沉淀和传承。
项目解决的本质问题是 Agent 的「失忆症」:
传统 Agent:
任务 A → 解决 → 结束 → 遗忘
任务 B → 解决 → 结束 → 遗忘
任务 N → 解决 → 结束 → 遗忘
(无法从经验中积累)
Hermes Agent:
任务 A → 解决 → 提炼技能 → 存储
任务 B → 召回相关技能 → 更快解决 → 优化技能
任务 N → 技能库更丰富 → 解决更高效
(真正的经验积累)
关于 Nous Research
- 定位:AI 加速器公司(The AI Accelerator Company)
- 使命:通过开源语言模型推动 AI 技术民主化
- 研究重点:模型架构创新、数据合成技术、微调技术、推理能力增强
- 旗舰模型:Hermes 4(高性能工具调用 LLM)
- GitHub 仓库数:71 个
- 生态合作:NVIDIA NeMo、PyTorch
Nous Research 是美国开源 AI 运动中最重要的组织之一,以「开放、研究驱动」著称。Hermes Agent 是他们将模型研究能力与工程实践结合的旗舰产品。
项目数据
- ⭐ GitHub Stars: 90,300+
- 🍴 Forks: 12,400+
- 📝 总提交: 4,306+
- 🐛 Open Issues: 1,700+
- 📦 最新版本: v0.9.0(2026 年 4 月)
- 📄 License: MIT
- 🤖 支持模型数: 200+
主要功能
核心差异:闭环学习系统
Hermes Agent 最根本的差异化在于技能生成的闭环:
用户交互 → Agent 完成任务
↓
任务后反思(Post-task Reflection)
"我刚才用了什么方法?这个方法可以复用吗?"
↓
技能提炼与存储
~/.hermes/skills/task-type-xxx.skill
↓
下次类似任务:召回技能 → 直接执行
↓
技能使用后:优化 → 存储改进版本
这个循环让 Hermes Agent 随使用时间指数级地变得更有效率。
三层记忆架构
| 层级 | 内容 | 持久化 | 典型示例 |
|---|---|---|---|
| Session 上下文 | 当前对话的短期记忆 | 否 | "你刚才让我修改的是 config.py" |
| 持久化事实记忆 | 跨会话的重要知识 | 是 | "用户偏好使用 TypeScript,不用 JavaScript" |
| 程序性技能记忆 | 可执行的任务解决方案 | 是 | "部署到 staging 的步骤:1. 构建镜像 2. 推送 3. ..." |
三层记忆协同工作:当遇到新任务时,Hermes 首先检索程序性技能(第三层),结合持久化事实(第二层)中的偏好信息,在当前上下文(第一层)中执行。
跨会话记忆搜索
Hermes 使用 SQLite FTS5 全文索引配合 LLM 摘要实现历史对话搜索:
- 对话历史自动索引,支持关键词全文检索
- LLM 对搜索结果进行语义摘要,提取最相关信息
- Agent 周期性自我「nudge」,主动将重要信息固化到长期记忆
辩证用户建模(Honcho)
基于 Honcho 框架,Hermes 通过 12 个身份层次持续建模用户:
- 不只记住「你是谁」(姓名、职业、偏好)
- 还追踪「你和这个 Agent 的关系如何演变」
- 随着交互增多,Agent 的回应方式和任务执行策略会自适应调整
40+ 内置工具
| 工具类别 | 包含工具 |
|---|---|
| 文件操作 | 读写、搜索、树状显示 |
| Shell 执行 | 命令运行、脚本执行 |
| 网络 | HTTP 请求、页面抓取 |
| 代码 | Python REPL、代码分析 |
| 数据库 | SQLite 操作 |
| 系统 | 进程管理、环境信息 |
支持通过 MCP 服务器扩展工具集,以及 Python RPC 自定义工具接入。
多平台消息网关
单一 Gateway 进程同时桥接 7 个平台,跨平台保持对话连续性:
Telegram ──┐
Discord ──┤
Slack ──┤── Hermes Gateway ── Hermes Agent Core
WhatsApp ──┤
Signal ──┤
CLI ──┤
Email ──┘
支持语音备忘录转录(手机发语音 → 自动转文字 → 执行任务)。
6 种部署后端
| 后端 | 适用场景 |
|---|---|
| Local | 本地笔记本日常使用 |
| Docker | 容器化隔离部署 |
| SSH | 远程服务器执行 |
| Daytona | 无服务器弹性扩容 |
| Singularity | HPC 高性能计算 / 高安全隔离 |
| Modal | GPU 集群 / Serverless |
同一工作流可以无需代码改动地在不同后端之间切换。
快速开始
# 一键安装(Linux/macOS/WSL2)
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
# 启动 CLI
hermes
# 配置 LLM 提供商(支持 200+ 模型)
hermes model
# 运行完整配置向导
hermes setup
# 启动多平台消息网关
hermes gateway
# 查看工具状态
hermes tools
开发者环境:
git clone https://github.com/NousResearch/hermes-agent.git
cd hermes-agent
uv venv venv --python 3.11 && source venv/bin/activate
uv pip install -e ".[all,dev]"
pytest tests/ -q
项目优势对比
| 对比维度 | Hermes Agent | AutoGPT | LangChain Agents | OpenAI Assistants |
|---|---|---|---|---|
| 技能学习 | ✅ 自动提炼并持久化 | ❌ | ❌ | ❌ |
| 跨会话记忆 | ✅ 三层架构 | 有限 | 插件依赖 | ❌ 厂商限制 |
| 用户建模 | ✅ 12 层辩证建模 | ❌ | ❌ | 有限 |
| 多平台网关 | ✅ 7 个平台 | ❌ | ❌ | ❌ |
| 部署灵活性 | ✅ 6 种后端 | 中 | 低 | ❌ 仅云端 |
| RL 训练集成 | ✅ Atropos | ❌ | ❌ | ❌ |
| 开源协议 | MIT | MIT | MIT | 闭源 |
项目详细剖析
整体架构
┌────────────────────────────────────────────────┐
│ Gateway 层(7 个平台入口) │
│ Telegram / Discord / Slack / WhatsApp / │
│ Signal / CLI / Email │
└───────────────────┬────────────────────────────┘
│
┌───────────────────▼────────────────────────────┐
│ Agent 编排核心(agent/) │
│ 工具选择 → 工具执行 → 响应生成 │
│ ↑ ↓ │
│ 技能召回 技能提炼 │
└──────┬──────────────────────┬──────────────────┘
│ │
┌──────▼──────────┐ ┌─────────▼──────────────────┐
│ 记忆系统 │ │ 技能系统(skills/) │
│ SQLite FTS5 │ │ ~/.hermes/skills/ │
│ 持久化事实 │ │ agentskills.io 标准 │
│ Honcho 用户建模 │ │ 跨 Agent 共享 │
└─────────────────┘ └────────────────────────────┘
│
┌──────▼──────────────────────────────────────────┐
│ 执行环境(environments/) │
│ Local / Docker / SSH / Daytona / Modal / ... │
└─────────────────────────────────────────────────┘
技能系统深度解析
技能(Skill)是 Hermes Agent 最核心的技术实现,本质上是带元数据的可执行代码单元:
# 技能文件示例:~/.hermes/skills/deploy-to-staging.skill
{
"name": "deploy-to-staging",
"description": "将当前项目部署到 staging 环境",
"trigger_patterns": [
"deploy to staging",
"push to staging",
"staging 部署"
],
"parameters": {
"project_path": {"type": "string", "required": True},
"environment": {"type": "string", "default": "staging"}
},
"steps": [
{"tool": "shell", "command": "docker build -t {project}:{tag} ."},
{"tool": "shell", "command": "docker push registry/{project}:{tag}"},
{"tool": "shell", "command": "kubectl rollout restart deployment/{project}"}
],
"success_rate": 0.94,
"usage_count": 47,
"last_optimized": "2026-04-10"
}
技能的生命周期:
1. 生成(Creation)
Agent 完成复杂任务后 → 分析执行步骤 → 抽象为可复用模式 → 保存为 .skill 文件
2. 召回(Retrieval)
新任务输入 → 语义匹配触发词 → 召回最相关技能 → 注入执行上下文
3. 优化(Optimization)
技能执行后 → 记录成功/失败 → 更新成功率 → 必要时重写步骤
4. 共享(Sharing)
通过 agentskills.io 开放标准 → 社区共享技能 → 跨 Agent 复用
FTS5 记忆检索机制
Hermes 选择 SQLite + FTS5(Full-Text Search 5)而非向量数据库,这是一个有趣的设计选择:
-- 对话历史表(带 FTS5 索引)
CREATE VIRTUAL TABLE conversation_fts USING fts5(
content,
speaker,
timestamp,
session_id
);
-- 周期性记忆固化
CREATE TABLE long_term_memory (
id INTEGER PRIMARY KEY,
fact TEXT NOT NULL,
confidence REAL,
source_session TEXT,
created_at TIMESTAMP,
last_reinforced TIMESTAMP
);
为什么不用向量数据库?
- SQLite 无需额外服务,零运维成本
- FTS5 全文搜索对精确记忆(人名、项目名)更准确
- LLM 摘要层弥补了语义搜索的不足
- 本地部署场景下,轻量化更重要
RL 训练集成:Tinker-Atropos
Hermes Agent 内置了与 Atropos(Nous Research 的 RL 训练框架)的集成,这是它区别于所有其他 Agent 框架的独特之处:
- Agent 的执行轨迹自动记录为 RL 训练数据
- 可用于训练下一代工具调用专用模型(Hermes 4 的训练数据来源之一)
- 形成了「应用层产品 → 训练数据 → 更好的模型 → 更好的应用层产品」的飞轮效应
从 OpenClaw 迁移
Hermes Agent 提供了从 OpenClaw 的无缝迁移通道,支持导入:
SOUL.md角色设定文件MEMORY.md记忆条目- 自定义技能库
- API 密钥配置
项目地址与资源
官方资源
- 🌟 GitHub: github.com/NousResearc…
- 📚 官方文档: hermes-agent.nousresearch.com/docs/
- 🌐 Nous Research: nousresearch.com
- 🤖 技能标准: agentskills.io
- 🐛 Issue Tracker: github.com/NousResearc…
Nous Research 相关项目
- Atropos(1k ⭐):LLM 强化学习环境框架
- Hermes Agent Self-Evolution(1.8k ⭐):基于 DSPy + GEPA 的 Agent 进化系统
- Hermes 4:旗舰工具调用语言模型
总结与展望
核心要点回顾
- 闭环学习:技能的自动生成→召回→优化循环,是目前开源 Agent 框架中最完整的自我改进实现
- 三层记忆:Session 上下文 + 持久化事实 + 程序性技能,覆盖了 AI 记忆的完整谱系
- 辩证用户建模:Honcho 的 12 层身份追踪,让 Agent 真正理解「你是谁」以及「你们的关系如何演变」
- 多平台网关:7 个平台统一接入,跨平台对话连续性是独特竞争优势
- RL 飞轮:应用层轨迹数据 → 训练更好的模型 → 改善应用层,Nous Research 正在构建一个自我强化的研究飞轮
适用人群
- 个人 AI 助理构建者:想要一个随时间变得越来越了解自己的专属 AI
- AI 工程师:研究 Agent 自我改进机制的实践者
- 独立开发者 / 一人公司:需要跨平台统一 AI 工作流的用户
- AI 研究人员:研究持久记忆、技能学习、用户建模的学者(Nous Research 会开放训练数据)
值得思考的问题
Hermes Agent 代表了一个 AI Agent 演进方向的预判:从「工具」到「伙伴」。工具是无状态的,用完即弃;伙伴是有记忆的,会随你成长。当 AI Agent 开始拥有「职业生涯」概念——在与特定用户的长期合作中积累技能和默契——AI 与人的关系模型将发生根本性转变。
欢迎来我的个人主页找到更多有用的知识和有趣的产品