Hermes Agent 是由 Nous Research 开源的 AI Agent 框架,帮你用自然语言操控电脑、写代码、管文件、调度任务。它支持 20+ 模型提供商、跨平台消息接入、持久记忆和技能学习。本文从零开始,手把手教你安装、配置、生产使用的完整流程。
什么是 Hermes Agent?
Hermes Agent 是一个跑在终端里的 AI Agent,和 Claude Code(Anthropic)、OpenAI Codex 属于同一类别 —— 能自主调用工具、操作文件系统、执行命令。但它有几个独特优势:
官网: https://hermes-agent.nousresearch.com/ GitHub: https://github.com/NousResearch/hermes-agent
环境准备
支持的系统
Linux(Ubuntu 20.04+、Debian、Arch 等)
macOS(Intel & Apple Silicon)
Windows WSL2(推荐用 Ubuntu 子系统)
前置要求
Python 3.10+(检查:
python3 --version)Git
curl(用于下载安装脚本)
pip(Python 包管理)
一个 LLM 提供商的 API Key(见下文)
推荐模型提供商
如果你已经有以下任意服务的 API Key,直接填入就能用:
安装 Hermes Agent
一键安装(推荐)
打开终端,运行:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash脚本会自动:
检测你的系统环境
创建虚拟环境
~/.hermes/venv/安装依赖包
下载主程序
添加
hermes命令到 PATH
安装完成后,验证:
hermes --version看到版本号即安装成功。
手动安装(可选)
# 克隆仓库
git clone https://github.com/NousResearch/hermes-agent.git ~/.hermes/hermes-agent
cd ~/.hermes/hermes-agent
# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate
# 安装
pip install -e .
# 验证
hermes --version首次配置
启动配置向导
hermes setup交互式向导会依次询问:
1. 选择模型提供商(OpenRouter / Anthropic / DeepSeek / ...)
2. 输入 API Key
3. 选择终端配色主题
4. 配置消息平台(可选,跳过也行)
5. 启用需要的工具集跟着提示走,2 分钟搞定基础配置。
目录结构
安装后,Hermes 在 ~/.hermes/ 下生成以下结构:
~/.hermes/
├── config.yaml # 主配置文件
├── .env # API Key 等敏感信息
├── skills/ # 安装的技能包
├── sessions/ # 对话历史记录
├── logs/ # 日志文件
└── hermes-agent/ # 源代码(git 安装时才有)手动配置文件
# 查看当前配置
hermes config
# 编辑配置
hermes config edit
# 查看配置路径
hermes config pathconfig.yaml 核心配置项:
model:
default: anthropic/claude-sonnet-4-6
provider: openrouter
api_key: ${OPENROUTER_API_KEY}
agent:
max_turns: 90
tool_use_enforcement: true
terminal:
backend: local
timeout: 180
memory:
memory_enabled: true
user_profile_enabled: true.env 文件示例:
# OpenRouter
OPENROUTER_API_KEY=sk-or-v1-xxxxx
# 或 Anthropic
ANTHROPIC_API_KEY=sk-ant-xxxxx
# 或 DeepSeek
DEEPSEEK_API_KEY=sk-xxxxx安全提醒:
.env文件包含你的 API Key,切勿上传到 GitHub 或分享给他人。
快速上手:你的第一个问题
交互式对话
安装配置完成后,直接输入:
hermes你会看到欢迎 banner,然后就可以用自然语言和它对话了:
$ hermes
[Hermes Agent v2.x.x]
Type /help for commands.
You: 帮我查看当前目录有什么文件单次查询模式
不需要交互,直接问一个问题:
hermes chat -q "What is the capital of France?"基础操作演示
1. 读取文件
You: 读取 ~/.bashrc 文件的前 20 行2. 执行终端命令
You: 在当前目录创建一个名为 hello.py 的 Python 文件,内容是打印 "Hello, Hermes!"3. 搜索文件
You: 在当前目录找出所有 .md 文件4. 写代码并运行
You: 用 Python 写一个函数,计算斐波那契数列第 n 项,然后测试 n=10核心功能详解
1. 工具集(Toolsets)
Hermes 的能力来自「工具集」,你需要先启用才能用。
查看可用工具
hermes tools list启用/禁用工具
hermes tools enable terminal # 启用终端工具
hermes tools enable web # 启用网页搜索
hermes tools enable file # 启用文件操作工具集一览
注意: 工具集修改后需要
/reset(开新 session)才生效,因为 Hermes 会缓存当前的工具列表。
2. 技能(Skills)
Skills 是 Hermes 的「学习」机制 —— 把解决过的问题流程存成文档,下次遇到直接加载。
列出已安装技能
hermes skills list搜索技能市场
hermes skills search "python"
hermes skills browse安装技能
hermes skills install technical-blog-writing在会话中加载技能
You: /skill technical-blog-writing加载后,Hermes 会读取该技能的完整说明(包括工作流、最佳实践),并在当前任务中应用。
制作自己的技能
当你用 Hermes 完成一个复杂任务后,可以问它:
You: 把这个工作流存成一个技能,方便以后复用Hermes 会自动整理成技能文档保存。下次直接 /skill 你的技能名 就能加载。
3. 记忆系统(Memory)
Hermes 有持久记忆,会跨 session 记住:
用户信息:你是谁、偏好什么
环境信息:项目结构、配置细节
学到的东西:你纠正过它的方式、常用的工作流
查看记忆状态
hermes memory status配置记忆提供商
默认用内置 SQLite,也可切换到 Honcho 或 Mem0:
hermes honcho setup # 如果装了 honcho 插件4. 消息网关(Gateway)
Gateway 让 Hermes 接入 IM 平台,在 Telegram、Discord、飞书里和它对话。
启动 Gateway
hermes gateway run配置消息平台
hermes gateway setup支持的平台:
作为系统服务运行
hermes gateway install # 安装为 systemd 服务
hermes gateway start # 启动
hermes gateway status # 查看状态这样服务器重启后 Gateway 也会自动启动。
5. 定时任务(Cron)
# 创建定时任务
hermes cron create "0 9 * * *" "总结昨天的日志写入 ~/daily-log.md"
# 列出所有任务
hermes cron list
# 手动触发一次
hermes cron run <job_id>
# 删除任务
hermes cron remove <job_id>定时任务常用于:
每日自动总结
定时监控服务状态
定时抓取数据
定时发送报告
6. 多会话管理
查看历史会话
hermes sessions list恢复会话
# 恢复最近一次
hermes --continue
# 按 ID 恢复
hermes --resume 20260225_143052_a1b2c3导出会话
hermes sessions export ~/conversations.jsonl清理旧会话
hermes sessions prune --older-than 30 days进阶用法
1. 子 Agent 委托(delegate_task)
把复杂任务拆解,并行分给多个子 Agent:
# 示例:同时让三个子 Agent 并行工作
# Agent A: 调研竞品
# Agent B: 写架构设计
# Agent C: 准备测试数据子 Agent 在独立会话中运行,互不干扰,适合「调研 + 实现」并行的场景。
2. MCP 服务器接入
MCP(Model Context Protocol)让 Hermes 能接入更多外部工具:
# 添加 MCP 服务器
hermes mcp add <name> --url <server_url>
# 或
hermes mcp add <name> --command "<command>"
# 列出已配置的 MCP 服务器
hermes mcp list
# 测试连接
hermes mcp test <name>3. 多 Profile 管理
如果你有多个项目或多个身份,可以用 Profile 实现完全隔离的配置:
# 创建新 Profile
hermes profile create work
# 切换
hermes profile use work
# 克隆现有配置
hermes profile create personal --clone-from default每个 Profile 有独立的:
config.yaml.envskills/sessions/
4. Webhook 触发
外部服务可以触发 Hermes 执行任务:
# 创建一个 Webhook 路由
hermes webhook subscribe mytask
# 测试这个 Webhook
curl -X POST http://localhost:18989/webhooks/mytask \
-d '{"prompt": "分析上传的日志文件"}'常见问题排查
hermes: command not found
# 检查安装
which hermes
ls ~/.hermes/venv/bin/hermes
# 重新加载 PATH
source ~/.bashrc
# 或
source ~/.zshrcAPI Key 不生效
# 检查 .env 文件是否正确
cat ~/.hermes/.env
# 测试 Key 是否有效
hermes doctor工具不响应
# 检查工具是否启用
hermes tools list
# 重启新 session
/exit
hermesGateway 连接失败
# 查看日志
tail -50 ~/.hermes/logs/gateway.log
# 飞书用户特别注意
# 需要安装 lark-oapi 包:
~/.hermes/venv/bin/pip install lark-oapi模型调用报错
# 检查配置
hermes config
# 切换模型
hermes model
# 查看详细错误
hermes doctor工作流示例
示例 1:技术博客写作
# 1. 启动 Hermes,加载写作技能
hermes -s technical-blog-writing
# 2. 告诉它你要写什么
You: 我要写一篇关于 Docker 容器安全的博客,面向有基础的开发者
# 3. 它会按技能规范产出:
# - 正确的结构
# - 可运行的代码示例
# - 结尾签名块
# - 保存到 workspace/articles/
# - 上传到飞书云盘示例 2:代码审查
hermes
You: 审查 ~/myproject/src/ 目录下的所有 Python 文件,找出潜在的安全问题示例 3:自动化日常任务
# 创建一个每天早上 9 点执行的任务
hermes cron create "0 9 * * 1-5" \
"检查服务器状态,把异常日志发到我邮箱"官方资源
总结
Hermes Agent 的核心价值:
开箱即用 —— 安装简单,配置容易,5 分钟跑起来
本地优先 —— 所有数据存在本地,API Key 自己管
技能积累 —— 越用越聪明,技能越攒越多
跨平台 —— 终端、IM、API,想怎么聊就怎么聊
建议从今天开始,把一个日常重复任务交给 Hermes 自动处理,体验一下「AI Agent 本地化」的生产力。
技术没有捷径,但有方向