跳至内容

Nous Research Hermes Agent:安装与教程指南

了解如何安装与设置 Hermes Agent。这是 Nous Research 推出的开源 AI 代理,能够在每个任务中记忆、学习,并持续变得更聪明。
已更新 2026年10月8日  · 11分钟 阅读

使用 AI 探索

ChatGPTClaudePerplexity

OpenClaw 上线时伴随着大量炒作与安全担忧。此后,出现了许多宣称能解决 OpenClaw 相关不同问题的“跟风者”。其中的关键问题是由于仓库体量带来的安全性。另一个主要问题是运行代理的成本。以我的亲身经验来看,成本可能会很快攀升,尤其是因为连 OpenClaw 的作者都建议使用诸如 Claude Opus 4.6 这样的顶级模型来防止提示注入。Opus 4.6 并不便宜,特别是在您的代理必须发送大量以记忆和技能为主的上下文时。这时,Hermes Agent 应运而生。 

我一直在 X/Twitter 上关注 Hermes Agent 的作者,他们表示,他们的代理在使用开源模型方面优于 OpenClaw。他们声称,如果配备合适的“束具”(harness),开源模型也能被高效使用。本文将通过上手该代理来检验这些说法。我会带您完成安装步骤,演示如何将其与本地与在线模型配合使用,以及如何在研究项目中使用它。 

什么是 Hermes Agent?

Hermes Agent 是 Nous Research(Hermes 系列模型背后的实验室)推出的开源 OpenClaw 替代方案。上线后非常流行,撰稿时 Star 数已超过 3 万。Hermes Agent 与 OpenClaw 略有不同,它可以从经验中创建技能、自我改进,并将知识在会话之间持久化。 

您可以从我们的 OpenClaw(Clawdbot)教程 中了解如何使用 OpenClaw。

Hermes Agent 的关键能力

下面来讨论 Hermes Agent 的一些核心功能。 

闭环学习与自我改进记忆

Hermes Agent 具备闭环学习机制,这意味着: 

  • 具备代理策划的记忆,并会定期进行提示引导 
  • 在执行复杂任务后自动创建技能 
  • 在使用过程中不断改进技能 

Hermes Agent 还会将消息会话存储在带有 FTS5 全文检索的 SQLite 数据库中。这使它能够检索数周前的记忆,即便它们当下不在工作记忆中。

从 SQLite 的点命令到在命令行界面下的实用示例,您可以在我们的 SQLite 初学者指南 中学习 SQLite 数据库的基础。

Hermes 还使用 Honcho memory,为代理在跨会话中提供对用户的持久理解。除此之外,还通过 memory.md 与 user.md 文件增强代理对用户偏好、目标、沟通风格的理解,并在对话间保留上下文。 

上下文压缩与缓存

使用此类 AI 助手的主要问题之一是令牌消耗巨大。当您为每次 API 调用付费时,成本会迅速增加。Hermes Agent 使用双重压缩和 Anthropic 的提示缓存 来管理长对话中的上下文使用。 

该机制还可在上下文过大时防止 API 失败。其工作方式是修剪旧结果,并利用 LLM 对会话进行摘要。 

技能系统

与 OpenClaw 一样,Hermes Agent 支持技能。这些技能与 agentskills.io 兼容,并遵循渐进式披露模式,以最小化令牌消耗。它自带一组打包技能,同时也会在使用过程中保存其自有技能。所有技能都存储在 ~/.hermes/skills/,您也可以将代理指向外部技能。 

从零开始构建 OpenClaw 技能、连接外部 API、配置 Docker 沙箱并发布到 ClawHub,您可以参考我们的 自定义 OpenClaw 技能构建 教程。 

多平台网关

Hermes Agent 支持多个平台,包括 Telegram、Discord、Slack、Signal 和 WhatsApp。它还支持语音备忘录转写。由于所有会话都会进入同一个数据库,这意味着您可以在终端中开启对话,并在 Telegram 上继续。 

子代理与并行工作流

Hermes Agent 具有 delegate_task 工具,用于启动多个子代理。代理拥有受限的工具集与终端会话。它们会开启一段新对话,并不了解对话历史;因此,您需要提供代理达成目标所需的全部信息。您可以利用这一点同时研究多个主题并收集摘要、进行代码审查,以及同时修复与重构多个文件。 

MCP 支持与扩展工具访问

对于 Hermes 中缺失的任何工具,您都可以连接 MCP。借此,您无需修改 Hermes Agent 代码即可连接 API、数据库或公司系统。使用方式包括: 

  • 在 Hermes 上安装 MCP 支持 
  • 添加 MCP 服务器 
  • 将 MCP 可执行的工具能力列入白名单 
  • 将删除客户等危险操作列入黑名单 

了解如何使用 Anthropic 的 Model Context Protocol 构建 MCP 服务器,将 Claude 连接到 GitHub 与 Notion,请参阅我们的 Model Context Protocol 教程。 

强化学习训练与轨迹生成

Hermes Agent 集成了基于 Tinker-Atropos 的强化学习(RL)训练流程。它支持使用带 LoRA 适配器的 GRPO(Group Relative Policy Optimization)在特定环境中训练 LLM。 

Hermes Agent RL Training and Trajectory Generation

想进一步探索强化学习,请查看我们的 Python 强化学习 学习路径。 

Hermes Agent 与标准 AI 助手的比较

接下来讨论 Hermes Agent 与 OpenClaw、Nanobot 等其他 AI 助手的对比。 

与其他代理一样,Hermes Agent 使用 memory.md 与 user.md 实现持久记忆。它更进一步,将每次会话存储到 SQLite 数据库,使得未来可以随时引用任何对话。

与 OpenClaw 一样,Hermes Agent 也支持后备模型:当主模型不可用时由后备模型接管任务。 

与大多数 AI 助手类似,Hermes Agent 也可以以低成本部署到 VPS,并从主流消息平台访问。不过,据 Nous Research 团队所说,其一大卖点是:Hermes Agent 能为开源模型提供更好的“束具”。 

您也可以探索其他 AI 助手,例如我们的 Nanobot 教程。

支持的模型与端点

Hermes Agent 与模型无关。支持的模型包括: 

  • Nous Portal 的模型 
  • 通过 API Key 使用 OpenRouter 
  • Anthropic 账号与 API Key 
  • OpenAI 订阅或 API Key 
  • Gemini 

您也可以通过 Ollama 使用本地模型。 

了解如何结合 Ollama 使用本地 AI 助手,请参阅我们的 OpenClaw + Ollama 教程。 

运行 Hermes Agent 的先决条件

Hermes 可在 Linux、macOS 和 WSL2 上运行。它还需要 Python 3.11 与 Node.js,但大多数依赖会在设置过程中自动安装。 

Hermes Agent 分步教程:构建“研究代理”

下面来了解如何使用 Hermes Agent 创建一个研究代理,它可以在网上搜索并通过 Telegram 向您发送每日简报。 

步骤 1:安装 Hermes Agent

打开终端,运行一行命令安装程序:

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

Install Hermes Agent

步骤 2:获取接口令牌

对于 Telegram 网关,打开 Telegram 搜索 @BotFather。发送 /newbot,按提示为您的机器人命名,它会给出类似 123456789:AAH 的机器人令牌。复制它,供后续步骤使用。

接着,使用 @userinfobot 获取您的 Telegram 用户 ID。您需要它以确保机器人只与您对话。 

步骤 3:初始化 

运行设置向导:

hermes setup

当您选择 Full Setup 时,您将能够配置一切,包括 API 密钥和 Telegram 机器人。

系统会提供一个菜单,便于您按下图配置所有项目: 

如果您已有 OpenClaw 安装,它也支持迁移。 

设置完成后,您可以通过以下命令进行验证:

hermes doctor

步骤 4:配置与模型选择

如果您按照上面的步骤操作,模型已完成设置,但您可随时在终端运行以下命令更改: 

hermes model

步骤 5:设置网关

网关使 Hermes 能通过 Telegram 触达您,而无需您一直停留在终端。运行以下命令进行设置: 

hermes gateway setup

此时,您应当已经可以从 Telegram 发送消息并收到回复: 

Hermes Agent on Telegram

进阶玩法:将 Hermes Agent 打造成“多工具”代理

从上面的回复可以看到,Hermes 使用了终端工具去查询 Yahoo Finance 的公共图表 API 并解析响应。我们可以通过配置可用的网页搜索工具来增强其搜索能力;这里以 FireCrawl 为例。前往其官网免费获取一个 AI Key。 

接着,设置该密钥: 

hermes config set FIRECRAWL_API_KEY your_fire-crawl_key

设置完成后,我给 Hermes 布置了一个需要搜索多页并汇总结果的任务。正如图中所示,它规划了 3 个子任务并进行了委派。 

在 Hermes 中运行多个代理的另一种方式是设置“配置档”(profiles)。这将允许您在同一台机器上运行多个相互独立的 Hermes 代理,每个代理拥有各自的配置、API 密钥、记忆、会话、网关与技能。例如,您可以创建: 

  • 编码代理 
  • 个人助理 
  • 研究代理

您可以从零创建,或克隆现有设置: 

hermes profile create work --clone

运行 work chat 开始与机器人对话:

每个代理都有自己的 .env,因此您可以设置不同的 Telegram 机器人。可通过 work setup 进行设置 

部署选项:让 Hermes Agent 跑在笔记本之外

接下来看看除在笔记本上使用外,运行 Hermes Agent 还有哪些部署方式。 

其他可选方案包括: 

  • 运行在一台专用电脑上,而不是您的日常主力机。 
  • 部署到 VPS,例如 Modal 或 Daytona。 

即便部署在 VPS 上,也建议遵循以下最佳实践:

  • 使用容器化后端 
  • 设置明确的允许列表(allowlist) 
  • 使用配对码而非用户 ID 
  • 以合适的文件权限安全存储机密信息 
  • 使用 hermes update 定期更新代理 
  • 切勿以 root 用户运行代理 
  • 为 CPU、磁盘与内存设置合适的资源上限
  • 监控日志,留意未授权访问尝试 

本地与私密:离线运行 Hermes Agent

您可以通过 Ollama 配置模型来离线运行 Hermes Agent。下面的代码片段展示了如何通过 Ollama 运行并提供 qwen2.5-coder:32b 服务: 

# Install and run a model
ollama pull qwen2.5-coder:32b
ollama serve   # Starts on port 11434

然后将 Hermes 配置为使用该模型:

hermes model
# Select "Custom endpoint (self-hosted / VLLM / etc.)"
# Enter URL: http://localhost:11434/v1
# Skip API key (Ollama doesn't need one)
# Enter model name (e.g. qwen2.5-coder:32b)

另外,请务必增大上下文窗口,因为模型需要加载系统提示、工具并返回响应。 

# Option 1: Set server-wide via environment variable (recommended)
OLLAMA_CONTEXT_LENGTH=32768 ollama serve

# Option 2: For systemd-managed Ollama
sudo systemctl edit ollama.service
# Add: Environment="OLLAMA_CONTEXT_LENGTH=32768"
# Then: sudo systemctl daemon-reload && sudo systemctl restart ollama

# Option 3: Bake it into a custom model (persistent per-model)
echo -e "FROM qwen2.5-coder:32b\nPARAMETER num_ctx 32768" > Modelfile
ollama create qwen2.5-coder-32k -f Modelfile

Hermes Agent 常见问题与排障

下面谈谈使用 Hermes Agent 时您可能遇到的一些常见问题。 

“连接被拒绝”错误

先运行 hermes doctor。它会告诉您是否缺少服务商配置、环境变量是否有误或路径是否配置错误。您也可以再次运行设置命令重新输入 API Key,因为可能存在拼写错误。 

上下文窗口限制

输入 /compress 以手动触发上下文压缩。 

Fix Context window by compressing

您也可以编辑 ~/.hermes/config.yaml 配置压缩的默认行为。 

# In ~/.hermes/config.yaml
compression:
  enabled: true
  threshold: 0.50    # Compress at 50% of context limit by default
  summary_model: "google/gemini-3-flash-preview"  # Model used for summarization

技能未触发或未被复用

先检查技能是否存在。运行以下命令以确认技能中的说明已被使用。 

hermes chat --toolsets skills -q "Use the X skill to do Y"

网关未接收消息

运行 hermes gateway status 查看是否在运行。 

如果已停止,使用 hermes gateway start 启动。

模型端点认证失败

检查 ~/.hermes/.env,确认 API Key 正确无误。运行 hermes model 确保所选模型绑定了正确的 API Key。 

未来展望 

如果您一直在关注 Twitter 上的“代理之战”,就会注意到阵营大致分为两类:一类主张使用带 API 的代理,另一类主张使用本地模型运行代理。本地模型阵营强力支持 Hermes Agent,称其相较于 OpenClaw 更适合作为本地模型的“束具”。 

无论您支持哪一方,有一点是明确的:运行代理并不便宜。因此,如果有一款工具能运行本地模型,并提供接近顶级模型的性能,那么它就值得一试。尤其是在如今所有模型提供商都采用按量计费的情况下。 

在当前对代理的强劲需求下,想要“无限使用”的用户会倾向于选择能提供最佳结果的工具。截至目前,许多 Twitter 用户声称 Hermes Agent 正是这样的工具。本地模型是否真的会降低对 API 的需求仍有待观察,尤其是因为并非所有用户都有个人 GPU,或具备足够技术能力将其配置为本地使用。 

结语 

最近发布了不少个人 AI 助手。对您而言,最好的做法是研究它们,并确定哪一款最适合您。查看下方资源,快速上手: 

想进一步了解如何与 AI 工具协作,请查看 我们的 最佳免费 AI 工具指南。若想系统提升 AI 编码能力,欢迎学习我们的 AI 助力开发者编码课程,培养让 AI 助手在您的开发流程中更可靠的实战能力。


Derrick Mwiti's photo
Author
Derrick Mwiti
主题
AI 代理
人工智能

与 DataCamp 一起学习

{count, plural, other {课程}}

AI Agents 入门

{hours} 小时 {minutes} 分钟
144.8K
了解 AI 智能体的基础、组成部分及实际应用——无需编程。
查看详情Right Arrow
开始课程
查看更多Right Arrow