Hermes Agent 部署教程:从零开始搭建你的自进化 AI 助手

Hermes Agent 部署教程:从零开始搭建你的自进化 AI 助手

发布于: 2026-05-14
分类: 人工智能 · 部署教程 · 开源项目
阅读时间: 约 15 分钟
难度等级: ⭐⭐⭐ 中等


写在前面

Hermes Agent 是由 Nous Research 开源的一款自进化 AI Agent,它是目前唯一内置学习循环的 Agent 系统------能够从经验中创建技能、在使用过程中持续改进、主动持久化知识,并在多会话中构建对你的深度理解。

GitHub Stars: 28.4k+ ⭐
开源协议: MIT
项目地址: https://github.com/NousResearch/hermes-agent

本文将手把手带你完成 Hermes Agent 的完整部署流程。


一、Hermes Agent 核心特性

在部署之前,先了解它能做什么:

1.1 自进化学习系统

复制代码
传统 Agent: 固定技能 → 执行任务 → 结束
Hermes Agent: 执行任务 → 自动创建技能 → 持续优化 → 知识积累 → 越用越聪明
  • 自主技能创建:完成复杂任务后自动生成可复用的 Skill
  • 技能自我改进:在使用过程中持续优化 Skill 效果
  • 跨会话记忆:FTS5 全文搜索 + LLM 摘要,实现长期记忆
  • 用户建模:通过 Honcho 对话式用户建模,越聊越懂你

1.2 多平台支持

部署环境 成本 适用场景
本地/WSL2 免费 开发测试、个人使用
$5 VPS 极低 7×24 小时在线
GPU 集群 中等 大规模任务、模型训练
Serverless (Daytona/Modal) 按需付费 休眠时几乎零成本

1.3 多平台消息接入

支持 15+ 消息平台:Telegram、Discord、Slack、WhatsApp、Signal、Matrix、Mattermost、Email、SMS、钉钉、飞书、企业微信等。


二、环境准备

2.1 系统要求

系统 支持状态 说明
Linux ✅ 完全支持 推荐 Ubuntu 20.04+
macOS ✅ 完全支持 Intel/Apple Silicon
WSL2 ✅ 完全支持 Windows 用户首选
Windows (原生) ❌ 不支持 请使用 WSL2

2.2 前置依赖

唯一必需: Git

bash 复制代码
# 检查 Git 是否安装
git --version

其他依赖自动安装:

  • uv (Python 包管理器)
  • Python 3.11
  • Node.js v22
  • ripgrep (文件搜索)
  • ffmpeg (音频处理)

三、快速安装(推荐)

3.1 一键安装脚本

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

脚本会自动完成:

  1. 检测并安装缺失的依赖
  2. 克隆仓库及子模块
  3. 创建 Python 虚拟环境
  4. 安装所有 Python 包
  5. 配置全局 hermes 命令
  6. 引导配置 LLM Provider

3.2 安装后启动

bash 复制代码
# 重新加载 shell 配置
source ~/.bashrc  # 或 source ~/.zshrc

# 启动 Hermes
hermes

四、手动安装(高级用户)

如需完全控制安装过程,按以下步骤操作:

4.1 克隆仓库

bash 复制代码
# 克隆并拉取子模块
git clone --recurse-submodules https://github.com/NousResearch/hermes-agent.git
cd hermes-agent

# 如果已克隆但未拉取子模块
git submodule update --init --recursive

4.2 安装 uv 并创建虚拟环境

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

# 创建 Python 3.11 虚拟环境
uv venv venv --python 3.11

4.3 安装 Python 依赖

bash 复制代码
# 设置虚拟环境变量
export VIRTUAL_ENV="$(pwd)/venv"

# 安装完整版(推荐)
uv pip install -e ".[all]"

# 或按需安装特定功能
uv pip install -e ".[messaging,cron,mcp]"

可选功能包:

功能包 说明 安装命令
all 全部功能 uv pip install -e ".[all]"
messaging Telegram/Discord uv pip install -e ".[messaging]"
cron 定时任务 uv pip install -e ".[cron]"
mcp MCP 协议支持 uv pip install -e ".[mcp]"
voice 语音模式 uv pip install -e ".[voice]"
modal Modal 云执行 uv pip install -e ".[modal]"

4.4 安装 Node.js 依赖(可选)

bash 复制代码
npm install

如需浏览器自动化和 WhatsApp 桥接功能,需要执行此步骤

4.5 创建配置目录

bash 复制代码
# 创建目录结构
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

4.6 配置 API 密钥

编辑 ~/.hermes/.env

bash 复制代码
# 必需:至少配置一个 LLM Provider
OPENROUTER_API_KEY=sk-or-v1-your-key-here
# 或
OPENAI_API_KEY=sk-your-key-here
# 或
NOUS_API_KEY=your-nous-key

# 可选:增强功能
FIRECRAWL_API_KEY=fc-your-key        # 网页搜索与抓取
FAL_KEY=your-fal-key                 # 图像生成 (FLUX)
ELEVENLABS_API_KEY=your-key          # 高级语音合成

4.7 添加到 PATH

bash 复制代码
# 创建本地 bin 目录
mkdir -p ~/.local/bin

# 创建软链接
ln -sf "$(pwd)/venv/bin/hermes" ~/.local/bin/hermes

# 添加到 PATH(Bash)
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

# 或 Zsh
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

五、配置与验证

5.1 配置 LLM Provider

bash 复制代码
# 交互式选择模型
hermes model

支持的 Provider:

  • Nous Portal (官方推荐)
  • OpenRouter (200+ 模型)
  • OpenAI
  • Kimi/Moonshot
  • MiniMax
  • z.ai/GLM
  • 自定义端点

5.2 验证安装

bash 复制代码
# 检查版本
hermes version

# 运行诊断
hermes doctor

# 查看配置状态
hermes status

# 测试对话
hermes chat -q "Hello! 你有哪些可用工具?"

5.3 常用命令速查

bash 复制代码
hermes                    # 启动交互式 CLI
hermes model              # 切换模型
hermes tools              # 配置工具
hermes config set         # 设置配置项
hermes setup              # 运行完整配置向导
hermes gateway            # 启动消息网关
hermes update             # 更新到最新版
hermes doctor             # 诊断问题

六、消息网关配置(可选)

6.1 配置 Telegram Bot

bash 复制代码
# 1. 在 Telegram 中找到 @BotFather,创建新 Bot,获取 Token
# 2. 配置 Hermes
hermes gateway setup

# 选择 Telegram,输入 Bot Token

6.2 启动网关

bash 复制代码
hermes gateway start

现在你可以从 Telegram 与 Hermes 对话,同时它可以在云端 VM 上执行任务。


七、Docker 部署

7.1 使用 Docker Compose

yaml 复制代码
version: '3.8'

services:
  hermes:
    image: nousresearch/hermes-agent:latest
    container_name: hermes
    volumes:
      - ~/.hermes:/root/.hermes
      - ./workspace:/workspace
    environment:
      - OPENROUTER_API_KEY=${OPENROUTER_API_KEY}
    ports:
      - "8080:8080"
    stdin_open: true
    tty: true
bash 复制代码
docker-compose up -d

7.2 使用 Dockerfile 自定义构建

dockerfile 复制代码
FROM nousresearch/hermes-agent:latest

# 复制自定义配置
COPY ./custom-config.yaml /root/.hermes/config.yaml

# 安装额外依赖
RUN pip install some-extra-package

ENTRYPOINT ["hermes"]

八、Serverless 部署(Daytona/Modal)

8.1 为什么用 Serverless?

  • 休眠时几乎零成本:不使用时自动休眠
  • 按需唤醒:收到消息时自动启动
  • 无需维护服务器:专注使用,不用管基础设施
bash 复制代码
# 安装 Modal 支持
uv pip install -e ".[modal]"

# 配置 Modal Token
modal token new

# 部署
hermes deploy modal

8.3 Daytona 部署

bash 复制代码
# 配置 Daytona
hermes deploy daytona

九、常见问题排查

9.1 安装问题

Q: 安装脚本执行失败?

bash 复制代码
# 检查网络连接
ping github.com

# 使用代理
export https_proxy=http://your-proxy:port
curl -fsSL ... | bash

Q: Python 版本不兼容?

bash 复制代码
# 确保使用 Python 3.11
uv venv venv --python 3.11

9.2 运行时问题

Q: 提示 API Key 无效?

bash 复制代码
# 检查环境变量
cat ~/.hermes/.env

# 重新设置
hermes config set OPENROUTER_API_KEY your-key

Q: 工具无法使用?

bash 复制代码
# 检查工具配置
hermes tools

# 运行诊断
hermes doctor

9.3 性能优化

内存优化:

yaml 复制代码
# ~/.hermes/config.yaml
memory:
  max_context_tokens: 8000
  summarize_threshold: 6000

GPU 加速(如有):

bash 复制代码
# 使用 GPU 运行
hermes config set use_gpu true

十、最佳实践

10.1 安全配置

bash 复制代码
# 启用命令审批(生产环境推荐)
hermes config set require_approval true

# 设置授权密码
hermes config set auth_password your-secure-password

10.2 备份策略

bash 复制代码
# 备份配置和记忆
tar -czf hermes-backup-$(date +%Y%m%d).tar.gz ~/.hermes/

# 定期备份 Skill
cp -r ~/.hermes/skills ./skills-backup

10.3 升级维护

bash 复制代码
# 检查更新
hermes update check

# 执行更新
hermes update

# 更新后验证
hermes doctor

十一、进阶功能

11.1 自定义 Skill 开发

python 复制代码
# ~/.hermes/skills/my_skill.py
from hermes.skill import Skill

class MySkill(Skill):
    name = "my_skill"
    description = "My custom skill"
    
    async def run(self, query: str):
        # 实现你的逻辑
        return {"result": f"Processed: {query}"}

11.2 MCP 集成

bash 复制代码
# 配置 MCP 服务器
hermes config set mcp_servers '[{"name": "filesystem", "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/dir"]}]'

11.3 定时任务

bash 复制代码
# 设置每日报告
hermes cron add "0 9 * * *" "生成昨日工作总结并发送到 Telegram"

十二、写在最后

Hermes Agent 不仅仅是一个 AI 助手,它是一个会成长的数字伙伴。随着使用时间的增加,它会:

  • 记住你的偏好和习惯
  • 创建专属于你的工具
  • 越来越理解你的意图
  • 成为你工作流程的一部分

部署只是开始,真正的魔法在于日常使用中的持续进化。


参考资源


评论区互动

你部署 Hermes Agent 遇到了什么问题?有哪些使用心得?欢迎在评论区分享交流!


本文基于 Hermes Agent 官方文档和社区实践整理,如有更新请以官方文档为准。

标签: #HermesAgent #AIAgent #部署教程 #开源项目 #NousResearch #自进化AI


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/\[your_username\]/article/details/\[article_id\]

相关推荐
Rocktech_ruixun1 小时前
2026服务机器人选型指南
人工智能·科技·ai·机器人
zhaoshuzhaoshu1 小时前
AI Agent 运行全流程-泳道图详解
人工智能
沫儿笙1 小时前
安川机器人摩托车车架焊接节气设备
网络·人工智能·机器人
北风朝向1 小时前
Spring Boot 集成 Open WebUI 实现 AI 流式对话
人工智能·spring boot·状态模式
云烟成雨TD1 小时前
Spring AI Alibaba 1.x 系列【53】Interrupts 中断机制:动态中断
java·人工智能·spring
Raink老师1 小时前
【AI面试临阵磨枪-56】大模型服务部署:Docker、K8s、GPU 调度、推理加速
人工智能·面试·kubernetes·ai 面试
云上码厂1 小时前
NeurIPS 研讨会资料:用机器学习应对气候变化
人工智能
科技小花1 小时前
2026 年度生成式引擎优化(GEO)标杆产品:百分点科技 Generforce 的差异化路径
大数据·人工智能·科技·geo·ai搜索
安心联-车辆监控管理系统1 小时前
车载主动安全ADAS/DSM技术原理、业务应用与平台接入方案
人工智能·安全