Hermes Agent:开源闭环进化智能体,跨平台自我改进引擎

Hermes Agent 是 Nous Research 打造的一款持续自我进化的 AI 智能体。它通过闭环学习机制区别于其他智能体框架——该智能体能够从经验中提炼技能,在使用过程中不断改进这些技能,检索自身的历史对话,并逐步构建关于用户的深度模型。不论你是在终端中直接对话、通过 Telegram 发消息,还是集成到 IDE 中使用,Hermes 在所有交互入口都运行着同一个核心智能体引擎。
项目链接:https://github.com/nousresearch/hermes-agent
Hermes 的独特优势
绝大多数 AI 智能体都只是无状态的“请求-响应”流水线——每一次对话都从零开始。而 Hermes 从设计之初就定位为有状态且能自我改进的系统。它会记住已经完成的操作,将这些知识组织成可以复用的技能,并在每次交互中利用这些技能不断提升表现。

下表将 Hermes 与常见的智能体框架进行了直观对比:
| 能力 | 典型智能体框架 | Hermes Agent |
|---|---|---|
| 记忆持久化 | 仅限单次会话 | 跨会话 FTS5 搜索、Honcho 对话分析、持久化记忆提供者 |
| 技能创建 | 需要手动设计提示词 | 智能体在完成复杂任务后自动生成技能,并在使用中自行优化 |
| 模型灵活性 | 绑定单一供应商 | 在对话中通过 /model 随时切换供应商——OpenRouter、OpenAI、Anthropic、Gemini、Nous Portal、本地模型 |
| 消息平台 | CLI 或单一平台 | 单一的网关进程同时接入 16+ 个平台(Telegram、Discord、Slack、WhatsApp、Signal、Matrix 等) |
| 终端后端 | 仅限本地 Shell | 本地、Docker、SSH、Daytona、Singularity、Modal——包括无服务器休眠 |
| 定时自动化 | 依赖外部 cron 或缺失 | 内置 cron 调度器,支持自然语言定义任务,并可跨平台投递 |
| 子智能体委派 | 极少支持 | 用于并行工作流的隔离子智能体,通过 RPC 脚本实现零上下文成本轮次 |
| IDE 集成 | 不支持或需付费 | 基于 ACP(Agent Client Protocol)适配器,可接入 VS Code、JetBrains 及任何兼容 ACP 的客户端 |
| 研究工具 | 重点关注不足 | 批量轨迹生成、Atropos RL 环境、用于训练的轨迹压缩 |
整体架构设计
Hermes 围绕同一个智能体引擎构建,并通过多种前端界面提供服务。无论是 CLI(cli.py)还是消息网关(gateway/run.py),都会将数据送入 run_agent.py 内统一的对话循环,由该循环负责编排 LLM 调用、工具执行、记忆检索以及技能管理。此外,ACP 适配器(acp_adapter/server.py)作为第三种前端,利用标准化的 Agent Client Protocol 实现 IDE 集成。

智能体的循环逻辑简单而强大:接收用户输入 → 组合系统提示词(包含身份、记忆、技能、上下文文件)→ 调用 LLM → 如果模型请求工具调用,则执行工具并回到循环起点 → 返回最终响应。无论触发方是终端、Telegram 消息还是 IDE 提示词,这一循环的执行方式都完全一致。
核心功能详解
多供应商模型支持
Hermes 几乎覆盖了所有主流 LLM 供应商。hermes model 命令(或在对话中使用 /model)让你在无需重启的情况下瞬间切换模型供应商。智能模型路由系统(agent/smart_model_routing.py)负责透明地处理各供应商特有的逻辑差别——从不同的工具调用格式到上下文窗口限制,都能自动应对。
| 供应商 | 可用模型 | 备注 |
|---|---|---|
| Nous Portal | Hermes 模型、MiMo v2 Pro(含免费额度) | Nous Research 官方托管 |
| OpenRouter | 200+ 个模型 | 最大的模型市场 |
| OpenAI | GPT-4o、Codex、o 系列 | 自优化的工具调用引导 |
| Anthropic | Claude 4 系列 | 直接 SDK 集成 |
| Google AI Studio | Gemini 系列 | 原生供应商,支持自动检测上下文长度 |
| 本地端点 | Ollama、vLLM、SGLang | 任意兼容 OpenAI 的服务器 |
| Kimi/Moonshot | Moonshot 模型 | 中国 AI 供应商 |
| MiniMax | MiniMax 模型 | 替代供应商 |
你可以在任何平台(CLI、Telegram、Discord、Slack 等)的对话中途通过 /model 斜杠命令切换模型。聚合器感知解析会尽量让你保持在 OpenRouter 或 Nous Portal 上,并自动实现跨供应商的故障转移。
闭环学习
这是 Hermes 最核心的差异化能力。学习循环包含以下四个阶段:
- 记忆——智能体会在所有会话中持续维护关于你、你的项目以及你的偏好的长期记忆。MemoryManager 协调一个内置提供者和最多一个外部插件提供者,并通过上下文隔离机制防止召回的历史数据与当前用户输入产生混淆。
- 技能创建——完成一项复杂任务后,智能体能够自动生成可复用的技能(以带 YAML frontmatter 的 Markdown 文件存储在
~/.hermes/skills/中)。每个技能都编码了智能体学会高效执行的某一流程。 - 技能改进——在使用过程中,技能会自我完善。当智能体遇到边界情况或找到更优方法时,它会自动更新技能内容。
- 会话召回——对历史对话进行全文搜索(FTS5),并结合 LLM 驱动的摘要实现跨会话的上下文检索。你可以询问“上周星期二我做了哪些工作?”并得到有实际意义的回答。
工具与可扩展性
Hermes 通过集中的 ToolRegistry 注册了 40 多项工具。这些工具被组织为工具集——可组合的分组,可在每次会话中按需混合搭配。核心工具集涵盖 Web 搜索、终端执行、文件操作、浏览器自动化、视觉分析、图像生成、技能管理、记忆、任务规划、代码执行、子智能体委派、定时任务管理和跨平台消息传递。
工具还可以在运行时通过 MCP(Model Context Protocol)服务器 动态添加,利用符合 MCP 标准的外部工具提供者来扩展 Hermes 的能力边界。
六种终端后端
终端工具不只绑定本地 Shell。Hermes 支持六种执行后端,让你在最适合任务的环境中运行命令:
| 后端 | 适用场景 | 持久性 |
|---|---|---|
| Local | 本地机器的快速任务 | 会话范围 |
| Docker | 隔离且可复现的环境 | 容器范围 |
| SSH | 远程服务器 | 服务器范围 |
| Daytona | 无服务器开发环境 | 空闲时休眠 |
| Modal | 无服务器 Python 计算 | 空闲时休眠 |
| Singularity | HPC 集群 | 任务范围 |
Daytona 和 Modal 提供了无服务器持久化——你的智能体环境在空闲时自动休眠,并在需要时按需唤醒,在会话间隔几乎不产生额外开销。
安装与快速上手
Hermes 可以在 Linux、macOS、WSL2 及 Android (Termux) 上于一分钟内完成安装:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
source ~/.bashrc # 或者:source ~/.zshrc
hermes # 即可开始聊天!
首次启动后,使用 hermes setup 向导即可轻松完成供应商配置、工具选择以及消息平台设置。