Hermes Agent 完整知识总结与使用教程

Hermes Agent 完整知识总结与使用教程

项目地址 : https://github.com/NousResearch/hermes-agent
官方文档: https://hermes-agent.nousresearch.com/docs


一、项目概述

1.1 Hermes Agent 是什么?

Hermes Agent 是由 Nous Research 构建的开源自我改进型 AI 智能体 。它不是绑定在 IDE 上的代码助手,也不是围绕单一 API 的聊天机器人包装器,而是一个驻留在你服务器上的自主智能体------拥有持久记忆、自动生成技能、跨平台通信能力,并且运行时间越长越智能。

核心定位:

  • 自我改进:内置学习闭环,从经验中创建技能(Skills),在使用中改进技能,主动持久化知识
  • 持久记忆:跨会话记住你的偏好、项目上下文和环境信息
  • 全平台覆盖:CLI、Telegram、Discord、Slack、WhatsApp、Signal、Email、Matrix、钉钉、飞书、企业微信等 15+ 平台
  • 灵活部署:可运行在 $5 的 VPS、GPU 集群或按需休眠的无服务器基础设施上

1.2 核心特性总览

特性 说明
自我改进循环 从复杂任务中自动创建可复用技能文档,使用中持续优化
持久记忆 MEMORY.md + USER.md 双文件系统,加上 FTS5 全文搜索历史会话
多平台网关 单一 gateway 进程连接 15+ 消息平台,跨平台对话无缝衔接
六种终端后端 Local、Docker、SSH、Daytona、Singularity、Modal
多模型支持 Nous Portal、OpenRouter(200+ 模型)、OpenAI、z.ai/GLM、Kimi、MiniMax
MCP 支持 连接任意 MCP 服务器扩展工具能力
定时自动化 自然语言 cron 调度,自动执行报告、备份、简报
子智能体 隔离的子智能体拥有独立对话、终端和 Python RPC 脚本
浏览器控制 Web 搜索、浏览器自动化、视觉识别、图片生成、TTS
语音模式 CLI 麦克风输入、消息平台语音回复
技能市场 兼容 agentskills.io 开放标准,社区贡献的 Skills Hub
研究就绪 批处理、轨迹导出、Atropos RL 训练

二、架构与核心概念

2.1 记忆系统(四层架构)

Hermes Agent 的记忆并非单一系统,而是由四个不同层次组成:

第一层:MEMORY.md(提示记忆)

  • 存储位置:~/.hermes/memories/MEMORY.md
  • 容量上限:约 2,200 字符(约 800 tokens)
  • 内容类型:环境事实、项目约定、发现的解决方案、经验教训
  • 注入方式:每次会话启动时作为冻结快照注入系统提示
  • 特点:会话中的修改立即写入磁盘,但要到下次会话才反映在系统提示中(保持 LLM 前缀缓存性能)

第二层:USER.md(用户画像)

  • 存储位置:~/.hermes/memories/USER.md
  • 内容类型:用户偏好、沟通风格、个人信息
  • 注入方式:同样在会话启动时注入系统提示

第三层:会话搜索(Session Search)

  • 存储位置:~/.hermes/state.db(SQLite + FTS5 全文搜索)
  • 所有 CLI 和消息平台的会话都被存储
  • 搜索查询返回相关的历史对话,并通过 Gemini Flash 进行摘要
  • 按需调用,不在系统提示中------用于"我们上周讨论过 X 吗?"这类查询

第四层:可插拔外部记忆提供者

  • 支持 7 个外部记忆提供者(包括 Honcho、Hindsight、Mem0 等)
  • 提供结构化提取、实体解析和跨会话持久化
  • 通过 hermes memory provider 配置
  • 同一时间只能激活一个外部提供者,内置记忆始终并行运行

记忆操作通过 memory 工具执行,支持的操作有:addreplaceremove(无 read 操作------内容自动注入系统提示)。记忆条目写入前会进行安全扫描,检测注入和数据窃取模式。

2.2 技能系统(Skills)

技能是 Hermes Agent 的程序化记忆------当智能体解决了复杂任务(通常涉及 5+ 次工具调用)后,会自主创建结构化的 Markdown 技能文档。

技能存储与结构:

复制代码
~/.hermes/skills/          # 本地主目录(可读写)
├── devops/deploy-k8s/
│   └── SKILL.md
└── mlops/axolotl/
    └── SKILL.md

技能特点:

  • 兼容 agentskills.io 开放标准,可跨智能体移植和分享
  • 渐进式披露模式,最小化 token 使用
  • 智能体可通过 skill_manage 工具创建、更新和删除技能
  • 支持外部技能目录(只读共享)
  • 技能可作为斜杠命令直接调用:/axolotl help me fine-tune Llama 3

技能安装与管理:

bash 复制代码
hermes skills search kubernetes                    # 搜索技能
hermes skills search react --source skills-sh      # 从 skills.sh 搜索
hermes skills install openai/skills/k8s            # 安装技能
hermes skills inspect <skill>                      # 安全检查
hermes skills check                                # 检查上游更新
hermes skills update                               # 更新技能

所有从 Hub 安装的技能都会通过安全扫描器检查数据窃取、提示注入、破坏性命令等威胁。

2.3 终端后端

Hermes 支持六种命令执行方式:

后端 说明
Local 直接在本机执行(默认)
Docker 容器隔离执行,安全沙箱
SSH 远程服务器执行
Daytona 无服务器持久化------空闲时休眠,按需唤醒
Singularity HPC 环境容器
Modal 无服务器持久化------空闲时几乎零成本

切换后端:

bash 复制代码
hermes config set terminal.backend docker   # Docker 隔离
hermes config set terminal.backend ssh      # 远程服务器

2.4 网关系统(Gateway)

网关是一个长运行进程,将智能体连接到消息平台。支持的平台包括:

CLI、Telegram、Discord、Slack、WhatsApp、Signal、Matrix、Mattermost、Email、SMS、钉钉(DingTalk)、飞书(Feishu)、企业微信(WeCom)、BlueBubbles、Home Assistant

特点:

  • 语音备忘录转写
  • 跨平台对话连续性
  • 在 Telegram/Slack 上支持原生按钮进行危险命令审批

三、安装指南

3.1 系统要求

  • 支持平台: Linux、macOS、WSL2、Android(via Termux)
  • 不支持: 原生 Windows(需先安装 WSL2)
  • 依赖: 安装脚本自动处理 Python、Node.js、ripgrep、ffmpeg 等

3.2 一键安装(推荐)

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

安装完成后重新加载 Shell 并启动:

bash 复制代码
source ~/.bashrc   # 或: source ~/.zshrc
hermes              # 开始对话!

安装脚本自动完成:所有依赖安装、仓库克隆、虚拟环境创建、全局 hermes 命令设置、LLM 提供者配置。

3.3 手动安装

bash 复制代码
# 安装 uv
curl -LsSf https://astral.sh/uv/install.sh | sh

# 克隆仓库
git clone --recurse-submodules https://github.com/NousResearch/hermes-agent.git
cd hermes-agent

# 创建 Python 3.11 虚拟环境
uv venv venv --python 3.11
export VIRTUAL_ENV="$(pwd)/venv"

# 完整安装(包含所有功能)
uv pip install -e ".[all]"

# 可选:RL 训练后端
uv pip install -e "./tinker-atropos"

# 可选:浏览器自动化和 WhatsApp
npm install

# 创建配置目录
mkdir -p ~/.hermes/{cron,sessions,logs,memories,skills,pairing,hooks,image_cache,audio_cache,whatsapp/session}
cp cli-config.yaml.example ~/.hermes/config.yaml
touch ~/.hermes/.env
echo 'OPENROUTER_API_KEY=sk-or-v1-your-key' >> ~/.hermes/.env

# 全局可用
mkdir -p ~/.local/bin
ln -sf "$(pwd)/venv/bin/hermes" ~/.local/bin/hermes

# 验证安装
hermes doctor

可选 extras 组合安装:

bash 复制代码
uv pip install -e ".[messaging,cron]"  # 仅消息平台和定时任务

3.4 Android / Termux 安装

Termux 安装使用精选的 .[termux] extra,因为完整的 .[all] extra 包含与 Android 不兼容的语音依赖。具体步骤参见官方 Termux 指南。


四、配置与使用

4.1 初始配置

bash 复制代码
hermes setup           # 完整配置向导
hermes model           # 选择 LLM 提供者和模型
hermes tools           # 配置启用的工具
hermes gateway setup   # 设置消息平台
hermes config set      # 设置单个配置值

4.2 LLM 提供者

支持的提供者(随时通过 hermes model 切换,无需改代码):

提供者 说明
Nous Portal 订阅制,零配置,使用 OAuth
OpenRouter 多提供者路由,200+ 模型,需 API Key
OpenAI GPT 系列模型
z.ai / GLM 智谱 AI
Kimi / Moonshot 月之暗面
MiniMax MiniMax 模型
阿里云 通义千问等
Hugging Face 开源模型
自定义端点 任何兼容 API

4.3 CLI 交互

启动后进入功能完整的 TUI(终端用户界面):

  • 多行编辑
  • 斜杠命令自动补全
  • 对话历史
  • 中断重定向:输入新消息按回车即可中断当前任务,Ctrl+C 也可以
  • 流式工具输出

4.4 MCP 服务器配置

~/.hermes/config.yaml 中添加:

yaml 复制代码
mcp_servers:
  github:
    command: npx
    args: ["-y", "@modelcontextprotocol/server-github"]
    env:
      GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxx"

支持 MCP OAuth 2.1 PKCE 标准认证,以及通过 OSV 漏洞数据库自动扫描 MCP 扩展包恶意软件。

4.5 消息平台网关

bash 复制代码
hermes gateway setup   # 交互式平台配置
hermes gateway start   # 启动网关

配置完成后,可以从手机上通过 Telegram 等平台与智能体对话,同时它在云端 VM 上工作。

4.6 定时自动化(Cron)

使用自然语言设置定时任务:

复制代码
❯ Every morning at 9am, check Hacker News for AI news and send me a summary on Telegram.

智能体会自动设置通过网关运行的 cron 任务。

4.7 语音模式

bash 复制代码
pip install "hermes-agent[voice]"
# 推荐安装免费本地语音转文字
pip install faster-whisper
  • CLI 中按 Ctrl+B 录音
  • 使用 /voice tts 让 Hermes 语音回复
  • 支持 CLI、Telegram、Discord 及 Discord 语音频道

4.8 ACP 编辑器集成

Hermes 可作为 ACP 服务器运行,兼容 VS Code、Zed、JetBrains 等编辑器。编辑器可以注册自己的 MCP 服务器,Hermes 会将其作为额外的智能体工具。


五、常用命令速查

5.1 核心命令

命令 说明
hermes 启动对话
hermes setup 完整配置向导
hermes model 选择/切换 LLM 提供者和模型
hermes tools 配置工具
hermes doctor 诊断安装问题
hermes logs 查看和过滤日志

5.2 网关命令

命令 说明
hermes gateway setup 交互式平台配置
hermes gateway start 启动网关服务

5.3 技能命令

命令 说明
hermes skills search <query> 搜索技能
hermes skills install <skill> 安装技能
hermes skills inspect <skill> 安全审查技能
hermes skills check 检查上游变更
hermes skills update 更新已安装技能

5.4 配置命令

命令 说明
hermes config set <key> <value> 设置配置项
hermes config show 显示当前配置
hermes config migrate 迁移配置

5.5 迁移命令(从 OpenClaw)

bash 复制代码
hermes claw migrate                     # 交互式迁移
hermes claw migrate --dry-run           # 预览迁移内容
hermes claw migrate --preset user-data  # 仅迁移用户数据
hermes claw migrate --overwrite         # 覆盖已有冲突

六、安全机制

6.1 命令审批

危险命令执行前需要用户审批:

  • CLI 中需要手动 /approve
  • Telegram 和 Slack 支持原生按钮审批
  • 容器硬化和命名空间隔离

6.2 记忆安全

  • 记忆条目写入前扫描注入和窃取模式
  • 匹配威胁模式(提示注入、凭据窃取、SSH 后门)或包含不可见 Unicode 字符的内容会被阻止

6.3 技能安全

  • Hub 安装的技能通过安全扫描器检查
  • 检查项目包括:数据窃取、提示注入、破坏性命令、供应链信号
  • --force 可覆盖非危险的策略阻止,但无法覆盖危险扫描结论
  • 官方可选技能(official/...)视为内置信任级别

6.4 MCP 安全

  • MCP OAuth 2.1 PKCE 标准认证
  • 通过 OSV 漏洞数据库自动扫描 MCP 扩展包

七、高级功能

7.1 子智能体(Subagents)

隔离的子智能体拥有独立的对话上下文、终端和 Python RPC 脚本,实现零上下文成本的管道处理。适合将复杂任务分解为并行子任务。

7.2 浏览器自动化

  • Camofox 反检测浏览器后端:使用 Camoufox 实现隐身浏览
  • 持久会话,VNC URL 发现用于可视化调试
  • 可配置 SSRF 旁路
  • 通过 hermes tools 自动安装

7.3 研究与训练功能

  • 批量轨迹生成:为训练生成大量智能体交互轨迹
  • Atropos RL 环境:强化学习训练环境
  • 轨迹压缩:训练下一代工具调用模型

7.4 API 服务器集成

  • 与 Open WebUI 集成
  • 实时流式传输工具进度事件
  • 支持 X-Hermes-Session-Id 头部实现持久会话
  • 会话持久化到共享 SessionDB

7.5 日志系统

结构化日志输出到 ~/.hermes/logs/

  • agent.log:完整日志
  • errors.log:错误日志
  • 通过 hermes logs 命令查看和过滤

7.6 多实例(Profiles)

支持配置多个实例 Profile,可以运行多个独立的 Hermes Agent 实例。


八、配置文件参考

主配置文件位于 ~/.hermes/config.yaml

关键配置目录结构:

复制代码
~/.hermes/
├── config.yaml          # 主配置文件
├── .env                 # 环境变量(API Keys)
├── memories/
│   ├── MEMORY.md        # 智能体记忆
│   └── USER.md          # 用户画像
├── skills/              # 技能目录
├── sessions/            # 会话数据
├── logs/                # 日志
│   ├── agent.log
│   └── errors.log
├── cron/                # 定时任务
├── hooks/               # 钩子
├── state.db             # SQLite 会话存储
└── whatsapp/session/    # WhatsApp 会话

九、生态系统与社区资源

9.1 核心资源

9.2 推荐社区项目

项目 说明
awesome-hermes-agent 精选技能、工具、集成和资源列表
hermes-workspace Hermes 原生工作空间(聊天、终端、技能管理器)
mission-control 智能体编排仪表盘(舰队管理、任务调度、成本追踪)
wondelai/skills 跨平台技能库(380+ stars)
autonovel 基于 Hermes 的自主小说写作管道

9.3 最佳实践

  1. 从简单开始:先跑通 quickstart,再逐步添加功能
  2. 精心维护记忆:将 USER.mdMEMORY.md 视为高信号基础设施,保持条目简洁、持久、聚焦偏好
  3. 使用沙箱后端:生产环境中推荐 Docker 或 SSH 后端而非 Local
  4. 定期检查技能更新hermes skills check 追踪上游变更
  5. 外部记忆推荐:如果需要自动化结构化记忆提取,Hindsight 是推荐的首选提供者(本地运行、无持续成本、在 LongMemEval 上得分最高)

十、快速上手流程

bash 复制代码
# 1. 一键安装
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

# 2. 重新加载 Shell
source ~/.bashrc

# 3. 启动对话(安装过程中已配置 LLM 提供者)
hermes

# 4. 尝试基本功能
# 在对话中输入任何任务,例如:
# "帮我搜索最近的 AI 新闻并总结"
# "每天早上 9 点发送 Hacker News AI 摘要到 Telegram"

# 5. 配置消息平台(可选)
hermes gateway setup
hermes gateway start

# 6. 切换到安全后端(推荐)
hermes config set terminal.backend docker

# 7. 安装实用技能
hermes skills search kubernetes
hermes skills install openai/skills/k8s

十一、版本历史亮点

v0.7.0 主要更新

  • Camofox 反检测浏览器后端
  • 内联 Diff 预览
  • API 服务器会话连续性与工具流式传输
  • ACP 客户端提供的 MCP 服务器
  • 非活跃超时改进(追踪实际工具活动而非墙钟时间)
  • Telegram/Slack 原生审批按钮
  • MCP OAuth 2.1 PKCE + OSV 恶意软件扫描
  • 集中式日志与配置验证

相关推荐
珠海西格电力2 小时前
红区光伏与零碳园区:管理系统如何破解分布式光伏并网困局
大数据·人工智能·分布式·物联网·能源
冬奇Lab2 小时前
一天一个开源项目(第70篇):claude-code-best-practice - 从 Vibe Coding 迈向 AI 原生开发的实战指南
人工智能·开源·资讯
沃尔威武2 小时前
Spring Cloud Gateway实战:微服务API网关从零到一
java·spring·微服务
敖正炀2 小时前
AQS-ConditionObject详解
java
gao_tjie2 小时前
Claude Code 桌面应用使用指南
ai
张np2 小时前
java框架和http调用接口的区别
java·开发语言·http
踩着两条虫2 小时前
VTJ.PRO 发布 v2.3.6:开放共享模版、优化发布流程,低代码开发体验再升级
vue.js·低代码·ai编程
web3.08889992 小时前
某宝店铺商品全量接口-item_search_shop_pro
java·服务器·数据库
朱一头zcy2 小时前
Java基础复习07:异常处理(编译时异常处理、运行时异常处理、try-catch-finally、自定义异常)
java·笔记·异常处理