Hermes Agent - 自我改进型 AI 代理框架
约 2042 字大约 7 分钟
AI AgentNousResearch大语言模型自动化
2026-04-15
简介
Hermes Agent 是由 Nous Research 开发的开源自我改进型 AI 代理框架。它不仅仅是一个简单的 Agent 工具,而是一个完整的 AI 代理生态系统,核心目标是让大语言模型能够可靠、可预测地完成复杂的多步骤任务。
Hermes Agent 的独特之处在于其内置的闭环自主学习循环——它能够从经验中创建技能并在使用中自我优化,同时主动提示知识持久化,支持跨会话搜索历史对话并构建深层用户画像。项目兼容 200+ 种 LLM 模型,支持在多平台部署,从无服务器架构到 GPU 集群均可运行。
解决什么问题?
传统 AI Agent 在实际应用中面临诸多挑战,Hermes Agent 针对这些痛点提供了系统性解决方案:
- 推理失控:传统 Agent 在多步骤推理中容易陷入死循环或产生不稳定行为,Hermes 通过结构化推理协议确保每一步都可预测
- 工具调用错误:模型经常"瞎猜"工具调用(参数填错、工具选错、格式不规范),Hermes 通过强制类型约束和工具签名验证大幅降低错误率
- 上下文断裂:长链条任务中 Agent 容易"失忆",Hermes 内置多层记忆机制保障上下文连贯性
- 黑箱操作:AI 自由推理过程不可控,Hermes 使 Agent 行为透明化,执行路径可审计
- 供应商锁定:多数框架绑定特定模型提供商,Hermes 支持动态切换 200+ 种模型,无需修改代码
- 缺乏持续学习:传统 Agent 无法从经验中积累,Hermes 的自主学习循环能自动创建技能并迭代优化
核心概念
| 概念 | 说明 |
|---|---|
| HEx 结构化推理协议 | 强制模型在每一步遵循预定义的四个思维模板:Think(分析状态和目标)、Plan(制定行动计划)、Act(执行工具调用)、Observe(解析工具返回结果) |
| HEx Engine(推理引擎) | 架构中枢,负责解析用户指令、维护执行状态机、协调各模块,自动将任务拆解为 HEx 四阶段并循环执行 |
| Tool Registry(工具注册中心) | 标准化工具库,所有工具以固定签名格式注册,Engine 按需精准调用,杜绝模型凭空"发明"调用方式 |
| Memory Bank(记忆存储) | 三层记忆架构:短期记忆(当前会话历史)、中期记忆(当前任务执行轨迹)、长期记忆(跨会话积累的关键信息) |
| Procedural Memory(程序化记忆/技能) | Agent 从复杂任务执行中自动创建的可复用技能,支持跨会话调用 |
| Honcho 用户建模 | 构建深层用户画像,实现跨平台对话连续性和个性化体验 |
| MCP(Model Context Protocol) | 全面兼容 MCP 协议,可连接任意 MCP 服务器扩展 Agent 能力 |
安装与配置
前置要求
- 操作系统:Linux、macOS、WSL2、Android (Termux)(Windows 需通过 WSL2 运行)
- Python 环境:Python 3.10+
- API Key:至少一个支持的 LLM 提供商 API Key(如 OpenAI、Nous Portal、OpenRouter 等)
快速安装
# 一键安装脚本
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
# 重载终端配置
source ~/.bashrc # 或 source ~/.zshrc
# 启动 Hermes Agent
hermes开发者安装
# 克隆仓库
git clone https://github.com/NousResearch/hermes-agent.git
cd hermes-agent
# 创建虚拟环境并安装(使用 uv)
uv pip install -e ".[all,dev]"初始配置
# 启动完整设置向导
hermes setup
# 配置模型
hermes model
# 配置工具
hermes tools使用方式
基本交互
启动 Hermes Agent 后进入交互式终端界面(TUI),支持以下操作:
# 启动对话
hermes
# 常用对话指令
/new # 新建对话
/retry # 重试上一次操作
/compress # 压缩上下文
/skills # 浏览已创建技能
/model [provider:model] # 切换模型模型配置
Hermes 支持动态切换模型,无需重启服务:
# 命令行配置
hermes model
# 或在对话中使用斜杠命令
/model openrouter:nousresearch/hermes-3
# 支持的提供商包括:
# - Nous Portal
# - OpenRouter
# - OpenAI
# - 小米 MiMo
# - 智谱 GLM
# - 月之暗面
# - MiniMax
# - Hugging Face
# - 自定义端点消息网关配置
Hermes 支持多平台接入,单一网关进程即可支持所有主流通讯软件:
# 启动消息网关
hermes gateway
# 支持的平台:
# - Telegram
# - Discord
# - Slack
# - WhatsApp
# - Signal
# - Email定时任务配置
Hermes 内置调度器,支持自然语言配置无人值守任务:
# 示例:每天上午 9 点生成日报
# 在对话中自然语言描述即可
"每天早上9点帮我生成一份昨日工作摘要"
# 或手动配置 cron 表达式
hermes cron add "0 9 * * *" "生成工作日报"实际示例
示例:自动化代码审查流程
以下展示如何使用 Hermes Agent 完成自动化代码审查任务:
# 1. 首先创建一个自定义工具(Tool)
from hermes_agent.tools import BaseTool
from hermes_agent.registry import ToolRegistry
class GitHubPRTool(BaseTool):
"""获取 GitHub PR 信息"""
name = "github_pr_info"
description = "获取指定 Pull Request 的详细信息"
def execute(self, repo: str, pr_number: int) -> dict:
# 调用 GitHub API 获取 PR 信息
import requests
url = f"https://api.github.com/repos/{repo}/pulls/{pr_number}"
response = requests.get(url)
return response.json()
# 2. 注册工具
registry = ToolRegistry()
registry.register(GitHubPRTool())
# 3. 在对话中使用
# 用户输入:"帮我审查 NousResearch/hermes-agent 的 #42 号 PR"
# Agent 会自动:
# Think: 分析用户需求,确定需要获取 PR 信息
# Plan: 调用 github_pr_info 工具获取 PR 详情
# Act: 执行工具调用,传入 repo 和 pr_number
# Observe: 解析返回的 PR 代码变更和评论
# 然后基于结构化推理给出审查意见示例:并行任务处理
Hermes 支持生成隔离子代理处理并行工作流:
# 并行处理多个研究任务
# 用户输入:"帮我同时完成以下任务:
# 1. 搜索最新的 LLM 论文
# 2. 总结今天的 GitHub issues
# 3. 分析股票市场行情"
# Hermes 会自动:
# - 生成 3 个子代理并行执行
# - 每个子代理独立维护上下文
# - 最终汇总结果并生成综合报告如何更好地利用
1. 构建个人技能库
Hermes 的自主学习机制会在复杂任务执行后自动创建技能。建议:
- 主动使用复杂任务:让 Agent 有机会从实践中学习
- 定期审查
/skills:查看已创建的技能,确保质量 - 手动优化技能:对高频使用的技能进行手动调优,提升效率
2. 多平台统一工作流
利用消息网关功能实现跨平台无缝接入:
- 配置 Telegram/Discord:移动端随时访问 Agent
- 跨平台对话连续性:在一个平台开始对话,另一个平台继续
- 语音转录:利用语音输入提高交互效率
3. 定时自动化日常任务
利用内置的 Cron 调度器:
- 日报/周报自动生成:每天定时触发,自动收集数据并生成报告
- 代码备份/审计:定期执行代码仓库检查和备份
- 数据监控告警:设置阈值,异常情况主动通知
4. 低成本部署策略
Hermes 支持 6 种后端运行环境:
| 后端类型 | 适用场景 | 成本 |
|---|---|---|
| 本地运行 | 开发调试 | 免费 |
| Docker | 生产部署 | 低 |
| SSH 远程 | 利用现有服务器 | 低 |
| Daytona | 云端沙箱 | 中 |
| Singularity | HPC 环境 | 按需 |
| Modal | 无服务器架构 | 近乎零(休眠/唤醒机制) |
推荐使用 Modal 无服务器后端,仅在需要时唤醒 Agent,大幅降低成本。
5. MCP 协议扩展
Hermes 全面兼容 Model Context Protocol:
- 连接任意 MCP 服务器:扩展 Agent 的能力边界
- 自定义 MCP 服务:为企业内部工具创建 MCP 接口
- 组合多个 MCP:构建企业级 Agent 编排系统
