🚀 什么是 Hermes Agent?
Hermes Agent ☤ 是由 Nous Research 开发的具备自我完善和学习循环功能的 AI 代理。它是目前唯一一个内置学习循环的代理机构 —— 能够在实践中从经验创建技能,在使用中不断改进自己,促使自己保留有用的知识,甚至跨越多个会话搜索它以往的对话记录,形成对你个人的渐进式认知模型。
它的核心特性在于极高的灵活性与独立性:
- 不局限于本地笔记本:你可以将它运行在一个低成本的云虚拟机、GPU 集群甚至无服务器基础设施上(空闲时不计费)然后通过 Telegram 发号施令。
- 随时随地切换模型:支持任意大模型接口 —— Nous Portal, OpenRouter (200+ models), Kimi/Moonshot, MiniMax, OpenAI 或者本地模型。只需
hermes model命令即可无缝切换。 - 强大的多终端体系:既有原生的 TUI(命令行终端界面)进行多行编辑交互,又自带网关支持 Telegram、Discord、Slack、WhatsApp、Signal 甚至跨平台无缝联通。
📦 安装指南
系统支持范围
- ✅ Linux、macOS、WSL2,以及使用 Termux 的 Android 端。
- ❌ 原生 Windows 暂不支持(请使用 WSL2 环境)。
一键安装脚本(推荐)
使用下面的命令自动安装并配置所需的环境:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
安装完成后,重新加载命令行环境:
source ~/.bashrc # 如果你使用 Zsh,则运行:source ~/.zshrc
⚡ 快速开始
启动命令行交互模式 (CLI)
# 直接开启交互式终端对话
hermes
常用的环境与模型配置命令
# 选择你的 LLM 提供商和特定模型
hermes model
# 配置当前启用了哪些工具
hermes tools
# 设置独立的配置项
hermes config set
# 运行完整的初次向导(一次性配置所有选项)
hermes setup
使用消息网关 (Telegram/Discord等)
# 启动消息应用网关
hermes gateway setup
hermes gateway start
⌨️ CLI 与消息网关指令速查
Hermes 提供了两个入口:命令行(hermes 启动 TUI),或消息应用网关服务(以机器人的形式出现在 Telegram、Slack 中)。两者不仅无缝衔接,多数快捷指令 / 也是互通的。
| 操作与指令 | CLI 终端 | 消息应用平台 |
|---|---|---|
| 启动对话 | hermes | hermes gateway start 并在即时通讯应用中发消息 |
| 开启全新对话 | /new 或 /reset | /new 或 /reset |
| 切换模型 | /model [provider:model] | /model [provider:model] |
| 设置 Agent 人格 | /personality [name] | /personality [name] |
| 重试或撤销上一轮 | /retry, /undo | /retry, /undo |
| 压缩上下文/用量明细 | /compress, /usage | /compress, /usage |
| 查看运行中的技能 | /skills | /skills 或 /<skill-name> |
| 中断正在进行的工作 | Ctrl+C 或直接发新消息 | /stop 或发送新消息自动打断 |
💬 接入微信
Hermes 的 Weixin 适配器面向个人微信号,使用腾讯 iLink Bot API 接入;这和企业微信(WeCom)不是同一个渠道。它通过长轮询收发消息,不要求你准备公网域名、Webhook 或 WebSocket 服务。
接入前准备
- 准备一个可扫码登录的个人微信账号;如果你要接企业微信,请改用 WeCom 适配器。
- 安装必需 Python 依赖:
aiohttp和cryptography。如果希望在终端里直接显示二维码,再安装可选的qrcode。
pip install aiohttp cryptography
# 可选:让 setup 过程在终端显示二维码
pip install qrcode
最短配置流程
- 运行
hermes gateway setup,在渠道选择里选 Weixin。 - 用手机微信扫描二维码并确认登录,Hermes 会把
account_id、token和base_url保存到~/.hermes/weixin/accounts/。 - 在
~/.hermes/.env中至少保留WEIXIN_ACCOUNT_ID,再启动网关。
hermes gateway setup
# 选择 Weixin,扫码并在手机确认登录
# ~/.hermes/.env 中至少设置:
WEIXIN_ACCOUNT_ID=your-account-id
# 启动消息网关
hermes gateway
hermes gateway setup 扫码即可。访问策略与群聊
个人微信账号可能加入很多群,Hermes 默认关闭 Weixin 群聊响应。建议先使用白名单,只开放指定私聊用户和指定群。
WEIXIN_DM_POLICY=allowlist
WEIXIN_ALLOWED_USERS=user_id_1,user_id_2
WEIXIN_GROUP_POLICY=allowlist
WEIXIN_GROUP_ALLOWED_USERS=group_id_1,group_id_2
# 可选:Cron 或主动通知投递到固定会话
WEIXIN_HOME_CHANNEL=chat_id
WEIXIN_HOME_CHANNEL_NAME=Home
- 支持图片、视频、文件和语音消息;媒体会经过微信 CDN 的加密上传或下载流程,依赖
cryptography。 - 长回复会尽量保持单条消息,超过限制时按段落、代码块等边界拆分。
- 同一个 Weixin token 同一时间只能由一个 Hermes 网关实例使用,重复启动时需要先停掉旧实例。
🔄 从 OpenClaw 平滑迁移
如果你曾经是 OpenClaw 用户,Hermes 内置了完美的兼容与配置文件迁移支持,自动导入你的记忆、技能设定甚至 API 密钥!
初次运行向导中自动检测
当你运行 hermes setup 时,配置向导如果检测到 ~/.openclaw,就会主动询问并引导你将所有配置迁移过来。
随时期望手动导入
# 使用全功能预设开启交互式迁移
hermes claw migrate
# 以"模拟试运行"模式预览即将发生的数据变更,不实际写入
hermes claw migrate --dry-run
# 仅迁移用户基础数据 (不包含敏感 secrets 密钥)
hermes claw migrate --preset user-data
# 强制覆盖当前存在的配置冲突
hermes claw migrate --overwrite
迁移包含了什么?
SOUL.md— 助手人格与语气文件。- 核心记忆 — 包含在你此前的
MEMORY.md和USER.md内部的内容。 - 用户自定义技能 — 被妥善迁移到
~/.hermes/skills/openclaw-imports/下。 - 指令允许白名单、基于渠道的消息网关配置、甚至 Telegram 等 API Keys(仅安全验证内的允许项)。
✨ 高级功能特性
1. 完整的技能构建与记忆闭环体系
基于 agentskills.io 的开源标准构建技能闭环,Hermes 在应对高度复杂操作时不仅能使用既有技能,还懂得在发现痛点后自主创新并完善技能逻辑。除此之外,通过后台 FTS5 的会话搜索外加 LLM 摘要技术,它能完成惊人的跨周期上下文记忆能力及用户模拟(Honcho dialectic user modeling)。
2. 子智能体委派与任务并行处理
面对超长的流水线规划环节,主代理不仅能进行串行计算,还能创建并委派隔离的子代理(Subagents)处理不同工作流,或使用包含工具调用 RPC 接口的 Python 脚本,以零上下文成本代价化解执行链过于臃肿的问题。
3. 内置 Cron 自动化
只需简单的自然语言指令,它内置的 Cron 定时调度程序就可以被激活进行每日数据报告、夜间备份推送。它能静默运行且主动将结果投递至你的任意外部终端!
4. 多种运行时后端架构支持
内置六种基础后端隔离运行策略。从简单的 Local 和 Docker,到支持远程连接的 SSH,以及 Singularity、Daytona 和 Modal。借助于 Daytona/Modal 提供的无服务器环境持久化特性,可以让 Agent 完全沉睡,有指令拉起时才消耗毫秒级的计费,让你的云部署几乎趋近于免费。
🧭 技巧与最佳实践
想让 Hermes 更稳定地产出结果,关键不是把每一步都写死,而是把目标、上下文和边界条件一次说清,让它自己使用搜索、终端、文件读写和技能系统完成迭代。
提问与上下文
- 少说“修一下”,多说现象和目标:附上文件路径、报错堆栈、期望行为和你已经尝试过的方案。
- 重复性要求写进
AGENTS.md:例如测试命令、代码风格、部署注意事项、API 路径,Hermes 每次进入项目都会自动读取。 - 让它自己用工具:可以直接说“找出失败测试并修复”,不用手把手指定每个打开文件和每条命令。
记忆、技能与成本
- 长期偏好或项目事实可以让 Hermes “remember this for next time”;复杂流程优先查看
/skills,能复用技能就不要重复写长提示。 - 长会话变慢或回答开始截断时,先用
/usage看用量,再用/compress压缩上下文。 - 多主题调研或多模块改造可以请求 Hermes 并行委派子任务,把主会话留给决策和整合。
- 复杂但机械的批量操作,优先让它写脚本一次性处理,比逐条执行命令更快也更省 token。
消息平台与安全
- 在 Telegram、Discord 或微信等消息端使用 Cron 前,先设置 home channel,确保定时任务结果有固定投递位置。
- 消息机器人接入终端能力后,优先使用平台白名单或配对机制;不要在有终端权限的机器人上长期开放所有用户。
- 处理不可信代码库时,优先把终端后端切到 Docker 或 Daytona;对危险命令的 “always allow” 要谨慎。
🔗 资源链接
- 完整项目文档: hermes-agent.nousresearch.com/docs/
- 接入微信官方文档: hermes-agent.nousresearch.com/docs/user-guide/messaging/weixin
- 技巧与最佳实践: hermes-agent.nousresearch.com/docs/guides/tips
- GitHub 核心仓库: github.com/NousResearch/hermes-agent
- 开源技能中心: agentskills.io
- Discord 社区: discord.gg/NousResearch
- 开发团队 (Nous Research): nousresearch.com
📝 总结
Hermes Agent 无疑重新定义了所谓的“个人开发者助手”,打破了部署门槛与模型绑定的界限:
- 它是一整套具备自我演化能力的生产力管线。
- 通过网关体系,它可以完美栖息在云端,但在微信、Telegram 听你调遣。
- 提供了无缝的 OpenClaw 系统数据迁移工具。
- 灵活接入任意闭源和开源大模型平台接口。