Hermes-Agent 简明指南

自从OpenClaw发布以来,几乎每周都有新的智能体被创建,尝试它们所有几乎变得不可能。但有一个新智能体引起了很多人包括我的注意。

它在GitHub上只有6k星,相比之下 OpenClaw有307k星(在撰写本文时)。然而,与大多数其他智能体不同,它不是在内存使用上竞争,而是专注于性能。这就是为什么它可能是这个领域唯一真正的OpenClaw竞争对手。

Hermes智能体是由 Nous Research创建的完全基于Python的开源智能体。它最有趣的功能之一是能够随时间学习。随着你的使用,智能体可以将其学到的知识转化为可重用的技能,通过经验改进它们,存储有用的信息,甚至搜索之前的对话。这使它能够更好地理解你在不同会话中的交互方式。

Nous Research是一个AI研究实验室和去中心化AI初创公司,以开发开源大语言模型(LLM)而闻名,例如Hermes-4-405BHermes-4-70B。你可以从Hugging Face下载它们的模型或使用它们的API来尝试这些模型。

然而,Hermes智能体并不限于这些模型。它像OpenClaw一样多才多艺,你可以使用OpenAI、OpenRouter或Nous Research的API密钥来驱动它。如果你有所需的硬件,也可以在本地运行模型,这增加了额外的隐私层。

在本文中,我将逐步指导你如何设置智能体并浏览仓库,以及分享一些有趣的用例和与OpenClaw的主要区别。

让我们开始使用Hermes智能体吧!

1、在VPS上设置Hermes智能体

Hermes适用于Linux、macOS或Windows的WSL,就像OpenClaw一样,最佳方法是在VPS或备用计算机上设置它。

我个人喜欢使用Contabo的Cloud VPS 20。每月仅需6美元,你就能获得12GB RAM和200GB SSD。大多数VPS提供商会询问你想要使用哪个Linux发行版。我通常选择Ubuntu,因为它有最广泛的文档支持。

连接到机器后,你可以用单个命令安装Hermes智能体:

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

它会为你创建一个虚拟环境,包含所有你需要的Python和Node.js依赖。

之后,你只需要重新加载shell:

复制代码
source ~/.bashrc

Hermes还包括一个入门体验,虽然我发现它比OpenClaw提供的那个不够用户友好。但这并不是真正的问题,因为其他一切都文档完善且组织良好,从仓库结构开始,它看起来像这样:

复制代码
~/.hermes/
├── config.yaml # 设置(模型、终端、TTS、压缩等)
├── .env # API密钥和密钥
├── auth.json # OAuth提供商凭证(Nous Portal等)
├── SOUL.md # 可选:全局人设(智能体体现这种个性)
├── memories/ # 持久记忆(MEMORY.md、USER.md)
├── skills/ # 智能体创建的技能(通过skill_manage工具管理)
├── cron/ # 定时任务
├── sessions/ # 网关会话
└── logs/ # 日志(errors.log、gateway.log --- 密钥自动屏蔽)

你可以将config.yaml视为主文件。从这里,你可以自定义你的智能体,这相当于OpenClaw的openclaw.json

但在探索config.yaml和其他文件之前,最好检查你是否在入门过程中成功添加了提供商密钥,你可以在.env文件中看到这一点。例如,对于OpenRouter,只需在这里复制你的API密钥,如果它还没有的话:

复制代码
OPENROUTER_API_KEY=sk-or-v1-60a...

这应该足以让你开始与智能体对话了。在下一章中,我们将看到最有用的CLI命令。

2、有用的Hermes智能体CLI命令

Hermes命令非常直观,你可以在文档页面找到它们。在这里,我只强调我发现最有用的那些。

聊天

要与智能体对话,你只需要这个:

复制代码
hermes

打开聊天后,你会发现数百个斜杠/命令,可以用来替换许多CLI命令。好处是你不需要记住每个命令的作用,因为它们旁边都有简要的描述:

模型

你可以使用以下命令切换当前模型:

复制代码
hermes model

这将显示所有可用的提供商:

你会找到默认模型,但你也可以输入自定义模型。

在撰写本文时,Nvidia刚刚在OpenRouter上发布了一个完全免费的超快速模型,所以如果你想节省一些积分,可以使用那个:

复制代码
nvidia/nemotron-3-super-120b-a12b:free
配置

如果你想快速查看你的配置,可以运行这个:

复制代码
hermes config

你会看到你正在使用的模型、API密钥等等:

你也可以使用config别名来编辑和更新配置:

复制代码
hermes config # 查看当前配置
hermes config edit # 在编辑器中打开config.yaml
hermes config set KEY VAL # 设置特定值
hermes config check # 检查缺失的选项(更新后)
hermes config migrate # 交互式添加缺失的选项

# 示例:
hermes config set model anthropic/claude-opus-4
hermes config set terminal.backend docker
hermes config set OPENROUTER_API_KEY sk-or-... # 保存到.env
会话

智能体将你进行的每次对话保存为会话,用于让它随时间学习。你可以使用以下命令列出它们:

复制代码
# 列出最近的会话(默认:最近20个)
hermes sessions list

# 按平台过滤
hermes sessions list --source telegram

# 显示更多会话
hermes sessions list --limit 50

你也可以导出完整会话,并在需要迁移智能体到另一台机器而不丢失信息时执行更多任务。你可以在文档中找到更多信息。

网关

网关是一个后台进程,持续运行并允许你在Telegram、Slack和其他渠道上聊天。然而,有时它遇到一些问题,需要启动、停止或重启:

复制代码
hermes gateway start
hermes gateway stop
hermes gateway restart

你也可以配置网关包装的消息平台:

复制代码
hermes gateway setup
定时任务

很多人用这些智能体做的事情之一是安排任务和设置提醒。这通常通过定时任务完成,可以使用CLI命令列出和编辑:

复制代码
hermes cron list # 查看定时任务

要删除定时任务,你可以使用以下斜杠命令:

复制代码
/cron remove <job_id>
更新和卸载

要使用仓库中的最新更改更新Hermes,你可以运行:

复制代码
hermes update

如果你不喜欢Hermes而想坚持使用OpenClaw,你可以卸载它:

复制代码
hermes uninstall

目前,Hermes没有auditCLI命令,这是OpenClaw目前的一个优势,因为它可以指导你遵循最佳实践并检查你的智能体是否有可疑之处。

你目前能做的最好的是在聊天中运行\insights,你会得到迄今为止所做一切的摘要,包括总会话数、成本、活跃时间等等。

在下一节中,我将向你展示如何将Hermes连接到Telegram。

3、将Hermes连接到Telegram

开始总是相同的:你需要使用BotFather创建一个新机器人。

  1. 打开Telegram并搜索BotFather。
  2. 发送/newbot
  3. 选择显示名称(例如"Hermes Agent")。
  4. 选择用户名 。这必须是唯一的并以bot结尾(例如my_hermes_bot
  5. BotFather回复你的API令牌
    现在你需要获取你的用户ID。最快的方法是搜索@userinfobot

现在你可以运行此命令并选择Telegram:

复制代码
hermes gateway setup

按照步骤添加Bot API令牌和你的令牌ID。否则,你也可以直接将信息粘贴到.env文件中:

复制代码
TELEGRAM_BOT_TOKEN=8566...
TELEGRAM_ALLOWED_USERS=835...
TELEGRAM_HOME_CHANNEL=835...

如果由于某种原因,你应用了更改但仍无法在Telegram上与你的智能体对话,请尝试重启网关。

现在让我们自定义智能体!

4、自定义Hermes智能体

可以自定义好几样东西。例如,你可以更改智能体的个性、推理努力程度、它使用的终端(本地、Docker等)、记忆设置,以及文本转语音和语音转文本功能等等。

大多数这些都可以通过更改config.yaml文件来配置。

赋予个性

Hermes自带所有这些个性,你可以用斜杠命令选择它们:

复制代码
personalities:
helpful: 你是一个乐于助人、友好的AI助手。
concise: 你是一个简洁的助手。保持回复简短且切中要点。
technical: 你是一个技术专家。提供详细、准确的技术信息。
creative: 你是一个有创意的助手。跳出框框思考并提供创新的解决方案。
mother: 你是一个慈母般的助手。你是一个乐于助人、耐心、体贴的助手。你总是倾听用户的问题并帮助他们解决。你也非常友好和平易近人。但你直接切入要点,不会说太多废话。不需要说"我的爱人"、"亲爱的"之类的话。
teacher: 你是一个耐心的老师。用例子清晰地解释概念。

你可以直接在config.yaml文件的列表中添加另一个个性。

然后在这里添加新个性的名称:

复制代码
display:
personality: mother
更改智能体名称

默认情况下,你的智能体被称为"Hermes",但你可以在skins文件夹中更改它。首先,你应该创建一个皮肤.yaml文件,其中包含你的智能体名称:

复制代码
branding:
agent_name: "Pecas"

我的智能体叫Pecas,所以我把文件命名为pecas-skin.yaml。在config.yaml中,我在display下添加了皮肤名称:

复制代码
display:
skin: pecas-skin

你可以向皮肤文件添加更多信息,例如欢迎和告别消息、提示符号、自定义UI颜色等等。

启用文本转语音(TTS)

对于TTS,它支持OpenAI、Edge(免费)和ElevanLabs。你可以在config.yaml文件中看到所有三个选项:

复制代码
tts:
provider: edge
edge:
voice: en-US-AriaNeural
elevenlabs:
voice_id: pNInz6obpgDQGcFmaJgB
model_id: eleven_multilingual_v2
openai:
model: gpt-4o-mini-tts
voice: alloy

与OpenClaw在启用TTS时总是显示音频消息不同,Hermes需要你明确要求音频消息,或者你需要创建一个总是生成音频消息的技能。

对某些用户来说,这可能感觉像是降级。然而,对我来说这实际上更好,因为它节省内存,而且我不需要每次都听到语音消息。

最近,我还在GitHub上发现了一个名为Fish Speech的新TTS和STT模型:

GitHub - fishaudio/fish-speech: SOTA Open Source TTS

你可以在本地使用该模型或使用他们的API。

启用语音转文本(STT)

与TTS类似,STT也在config.yaml文件中配置:

复制代码
stt:
enabled: true
model: whisper-1

对于此功能,你需要OpenAI API令牌。

现在,让我们看看我添加到Hermes智能体的一些技能和项目示例。

5、创建技能和项目

Hermes自带几个预安装的技能,例如:

  • Claude Code:将编码任务委派给Claude Code(Anthropic的CLI智能体)
  • Apple Notes:通过macOS上的CLI管理Apple Notes
  • Dog Food:对Web应用程序进行系统探索性QA测试
  • YouTube Content:获取YouTube视频转录并将其转换为结构化内容
  • OpenHue:通过OpenHue CLI控制Philips Hue灯光、房间和场景
  • Nano PDF :使用nano-pdf CLI通过自然语言指令编辑PDF
    还有更多可用技能,老实说,如果你拥有正确的模型,创建新技能非常容易。

我做的第一件事是用Perplexity Sonar替换Firecrawl网页搜索工具。不仅因为我喜欢Perplexity提供摘要信息的方式,还因为我想在我的设置中使用更少的API。所以我可以重复使用我的OpenRouter API密钥来使用Sonar。

使用带有OpenRouter的Perplexity的SKILL.md文件在这里:

复制代码
---
name: perplexity-web-search
description: 配置Hermes使用Perplexity(通过OpenRouter)进行网页搜索,替代Firecrawl
version: 1.0.0
author: Pecas
license: MIT
metadata:
hermes:
tags: [web-search, perplexity, openrouter, configuration]
related_skills: [duckduckgo-search]
---

# Perplexity网页搜索

配置Hermes使用Perplexity的`sonar-pro`模型通过OpenRouter进行网页搜索,替代Firecrawl。

## 概述

- **默认搜索后端**:通过OpenRouter的Perplexity sonar-pro
- **需要**:环境变量OPENROUTER_API_KEY
- **替代模型**:llama-3.1-sonar-small-128k-online、llama-3.1-sonar-large-128k-online

## 配置步骤

1. 确保`OPENROUTER_API_KEY`已设置在你的环境中
2. 更新`web_tools.py`以使用Perplexity客户端替代Firecrawl
3. 使用OPENROUTER_API_KEY要求注册工具

## 关键组件

### Perplexity客户端

使用带有OpenRouter基础URL的AsyncOpenAI:
base_url: https://openrouter.ai/api/v1 model: perplexity/sonar-pro

### URL提取

Perplexity在回复末尾返回来源。使用正则表达式提取:
- 来源格式:`- Source Name: https://URL`
- 引用格式:`[N](https://URL)`

## 测试

```bash
cd ~/.hermes/hermes-agent 
PYTHONPATH=. 
python3 -c "from tools.web_tools import web_search_tool; print(web_search_tool('query', 3))"

注意事项

  • web_extract仍然使用Firecrawl

  • web_search需要OPENROUTER_API_KEY

  • Perplexity返回带有来源的完整答案,而不仅仅是URL

    你也可以使用Hermes进行氛围编码项目和Web应用程序。

    例如,我创建了一个类似Tricount的脚本,在与女友共享的Telegram群组中使用。我给它提示,遵循与Tricount类似的逻辑(我称之为Hermescount)。这是Telegram上固定的用户手册消息:

    我还生成了一个SKILL.md文件,所以我可以与社区分享Hermescount。

    在我安装的其他项目和技能中,有一个对于获取最新信息特别有用,例如技术职位列表、技术新闻等等,那就是Apify MCP技能。

    我也只是要求Hermes基于这个JSON文件创建它,你可以在Apify MCP页面底部找到:

{

"mcpServers": {

"apify": {

"url": "https://mcp.apify.com/?tools=actors,docs,get-dataset,dadhalfdev/techcrunch-scraper-per-event,dadhalfdev/futurism-scraper-per-event",

"headers": {

"Authorization": "Bearer "

}

}

}

}

复制代码
它需要一个Apify令牌。如果你还没有,可以在[这里](https://mcp.apify.com/?fpr=ulosg)创建账户。

## 6、结束语

我一直在使用OpenClaw和Hermes智能体,到目前为止,很难说更喜欢哪一个。

Hermes完全基于Python的事实让我有偏见,因为我可以阅读所有代码,这使我对它的信任超过OpenClaw。我也喜欢所有密钥都保存在`.env`文件中,我不需要每次都导出它们,或者让它们暴露在JSON和`.txt`文件中。

Hermes的另一个很酷的功能是,每次它设置某些东西时,你都可以看到它正在做的所有更改,就像这里:

💻 terminal: "mkdir -p ~/.hermes && touch ~/.hermes..."

✍️ write_file: "/home/ubuntu/hermes-agent/expense_tra..."

💻 terminal: "cd /home/ubuntu/hermes-agent && pytho..."

📝 skill_manage: "expense-tracker"

复制代码
这对于跟踪智能体在做什么非常好,你总可以检查修改的文件以确认没有出错。

然而,OpenClaw在许多情况下似乎更快。这可能是由于Hermes的学习系统,它在你与智能体聊天时记笔记和更新技能。但这不是更快的模型或一些配置调整无法解决的问题。

Hermes的另一个缺点是缺少审核命令和仪表板,就像OpenClaw提供的那样。

但是,嘿,Hermes才存在几天,而OpenClaw已经存在三个月了。我认为团队添加这些功能并使智能体更流畅只是几天或几周的事情。

目前,我将继续使用两者并分享我的见解。

---

原文链接:[Hermes-Agent 简明指南 - 汇智网](https://www.hubwiz.com/blog/hermes-agent-concise-guide/)
相关推荐
鲸鱼在dn1 小时前
【CS336】Lecture1课程讲义-语言模型发展历程&Tokenization概念
人工智能·语言模型·自然语言处理
WiSirius1 小时前
LLM:基于 AgentScope + Streamlit 的 AI Agent脑暴室
人工智能·深度学习·自然语言处理·大模型·llama
跨境猫小妹2 小时前
采购交期拉长如何把补货策略从经验改为预测
大数据·人工智能·产品运营·跨境电商·营销策略
console.log('npc')2 小时前
Cursor,Trae,Claude Code如何协作生产出一套前后台app?
前端·人工智能·react.js·设计模式·ai·langchain·ai编程
AI视觉网奇2 小时前
动作迁移算法笔记 2026
人工智能·笔记
@TsUnAmI~2 小时前
当翻译不只是翻译:我做了一个AI桌面翻译助手
人工智能
码农垦荒笔记2 小时前
OpenClaw实战 #07:从 0 写一个自定义 Skill——让 AI 自动同步 Notion 待办到飞书(完整代码)
人工智能·飞书·notion
进击ing小白2 小时前
OpenCv之图像的仿射和透视变化
人工智能·opencv·机器学习