3876 字
19 分钟
Hermes Agent 安装与使用教程:macOS、Windows 与 NAS 完整指南

Hermes Agent 是 Nous Research 开源的通用 AI Agent。它不只在聊天框里回答问题,还可以读取文件、运行终端命令、搜索网页、调用浏览器、管理定时任务,并把反复使用的流程保存成 Skills。它既能作为 macOS、Windows 上的桌面应用使用,也能常驻在 NAS 或 Linux 服务器上,再通过 Telegram、Discord、Slack 等平台远程对话。

这篇教程按“先让一次本地对话正常工作,再增加常驻服务和远程入口”的顺序来写。内容覆盖:

  • macOS 桌面版与 CLI 安装
  • Windows 原生安装与 WSL2 选择
  • NAS 上的 Docker Compose 常驻部署
  • 模型、工具、Skills 和消息网关的基础用法
  • 验证、升级、备份、安全和常见故障

本文依据 2026 年 7 月 25 日的 Hermes Agent 官方文档 整理。项目更新较快,安装前建议顺手打开官方安装页核对一次命令。

先选适合你的安装方式#

使用场景推荐方式适合谁
Mac 日常使用Hermes Desktop想要图形界面、文件拖放和会话管理
Windows 日常使用Hermes Desktop希望原生安装、少折腾环境
只想在终端里用官方 Shell / PowerShell 安装器开发者、CLI 重度用户
Windows 上偏好 Linux 环境WSL2 + Linux 安装器已经在 WSL2 中开发的人
需要 24 小时在线NAS / Linux + Docker希望通过 Telegram 等平台随时调用
桌面控制 NAS 上的 AgentDesktop + NAS 远程后端本地只装界面,任务在 NAS 执行

官方当前的 Tier 1 支持包括 Apple Silicon macOS、Windows 10/11、Linux/WSL2,以及 x86_64、aarch64 的 Docker 容器。Intel Mac、Homebrew 安装和 PyPI 安装不在官方支持范围内,因此本文不使用 brew installpip install hermes-agent

开始前要准备什么#

桌面电脑#

  • 能正常访问 Hermes 官方站和所选模型提供商
  • 至少准备一种模型登录方式或 API Key
  • macOS CLI 安装需要 Git;没有时运行 xcode-select --install
  • Windows 原生安装建议使用 Windows 10/11 和新版 PowerShell

官方安装器会处理 Python、uv、Node.js、ripgrep 和 ffmpeg 等依赖,不需要提前手动拼环境。

NAS#

  • x86_64 或 ARM64 NAS
  • Docker Engine 与 Docker Compose v2
  • 可以通过 SSH 执行命令,或有等价的 Compose 项目管理界面
  • 一个长期保存的目录,例如 /volume1/docker/hermes
  • 至少约 1 GB 可用内存,推荐 2–4 GB;需要浏览器工具时至少准备 2 GB
  • Telegram、Discord 等消息平台是可选入口;只使用 Dashboard 或 Desktop 远程连接也可以
WARNING

Hermes 可以读写文件并执行命令。第一次使用不要直接给它挂载整个 NAS 根目录,也不要把 Docker Socket 挂进容器。先只持久化 /opt/data,等确实需要访问某个工作目录时,再按最小权限单独添加只读或读写挂载。

在 macOS 安装#

方式一:Hermes Desktop(推荐)#

  1. 打开 Hermes Agent 官网
  2. 下载 macOS 安装器并完成安装。
  3. 首次启动后,根据向导选择模型提供商。
  4. 如果只想先看界面,也可以选择稍后配置 Provider。

Desktop 和 CLI 共用同一套配置、会话、Skills 与记忆。装好桌面版后,终端里同样可以运行:

Terminal window
hermes desktop
hermes doctor

hermes doctor 没有报告阻断性错误,就说明核心环境已经可用。

方式二:只安装 CLI#

先确认当前是 Apple Silicon:

Terminal window
uname -m

官方 Tier 1 目标应显示 arm64。然后执行官方安装器:

Terminal window
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

安装完成后重新载入 Shell:

Terminal window
source ~/.zshrc
hermes doctor

如果提示 hermes: command not found,先关闭并重新打开终端;仍不生效时检查 ~/.local/bin 是否已经加入 PATH

在 Windows 安装#

方式一:Hermes Desktop(推荐)#

Hermes Agent 官网 下载 Windows 安装器,按向导完成安装。它会同时准备桌面应用和 Hermes 运行时,适合大多数 Windows 10/11 用户。

首次启动建议先完成一次普通对话,不要一上来就配置网关、MCP、Cron 和很多 Skills。基础模型能稳定回复后,再逐层增加功能,排错会简单很多。

方式二:PowerShell 原生安装#

打开 PowerShell,执行官方命令:

Terminal window
iex (irm https://hermes-agent.nousresearch.com/install.ps1)

安装完成后新开一个 PowerShell 窗口,验证:

Terminal window
hermes doctor
hermes --tui

Windows Terminal 会截获部分按键。原生 Windows 下需要多行输入时,优先使用 Ctrl+Enter,不要依赖 Alt+Enter

方式三:WSL2#

如果日常开发已经在 Ubuntu / WSL2 中进行,可以先在管理员 PowerShell 安装 WSL2:

Terminal window
wsl --install -d Ubuntu

重启并进入 Ubuntu 后,按 Linux 路径安装:

Terminal window
sudo apt update
sudo apt install -y git curl xz-utils
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.bashrc
hermes doctor

不要把 Windows 原生安装和 WSL2 安装的配置目录混为一谈:它们是两个独立环境。选一个作为主要运行环境,能减少路径和凭据重复配置。

如果准备让 Gateway 在关闭 WSL 终端后继续运行,先在 WSL2 中启用 systemd:

Terminal window
sudo tee /etc/wsl.conf >/dev/null <<'EOF'
[boot]
systemd=true
EOF

随后在 Windows PowerShell 执行 wsl --shutdown,重新进入 Ubuntu,再运行 hermes gateway setup 安装 systemd 用户服务。还要注意:没有进程使用时,WSL2 虚拟机本身可能停止;需要全天候在线时,应按官方 WSL2 指南通过 Windows 任务计划程序在登录时启动并保持 WSL 实例,或者改用 NAS / Linux 主机常驻。

完成第一次模型配置#

安装好以后,最省事的路径是 Nous Portal:

Terminal window
hermes setup --portal

它会通过 OAuth 登录并配置模型与 Tool Gateway。也可以运行交互式模型选择器,接入 OpenAI Codex、Anthropic、OpenRouter、Gemini、DeepSeek、Kimi、Qwen 或自建 OpenAI 兼容端点:

Terminal window
hermes model

如果使用本地模型或自建 API,模型上下文至少要有 64K tokens。上下文太小会让多轮工具调用很快丢失工作状态,Hermes 也可能直接拒绝启动。

Hermes 的数据根目录因运行环境而异:

运行环境数据根目录
macOS、Linux、WSL2~/.hermes
Windows 原生 Desktop / CLI%LOCALAPPDATA%\hermes

Windows Desktop 与原生 CLI 共用 %LOCALAPPDATA%\hermes;WSL2 则使用 Linux 内部的 ~/.hermes。根目录中的主要内容如下:

相对路径保存内容
config.yaml模型、工具、终端后端等普通配置
.envAPI Key、Token 和其他秘密
state.db会话数据库与搜索索引
skills/已安装或自己创建的 Skills
memories/持久记忆
WARNING

不要把数据根目录中的 .env 提交到 Git,也不要把完整 API Key 粘贴进聊天记录。优先通过 hermes modelhermes auth 或 Setup 向导录入凭据。

跑通第一次对话#

启动现代 TUI:

Terminal window
hermes --tui

第一次不要用模糊任务,给一个容易核验的请求,例如:

检查当前目录,列出主要文件,并用 5 条说明这个项目是做什么的;不要修改文件。

成功标准是:

  • 欢迎页显示了你选择的模型和 Provider
  • 能正常返回文本,而不是认证或模型错误
  • 在需要时能调用文件或终端工具
  • 连续追问一两轮仍能保持上下文

再测试会话恢复:

Terminal window
hermes --continue

如果可以回到刚才的会话,基础安装就完成了。

常用命令速查#

命令用途
hermes启动经典 CLI
hermes --tui启动现代终端界面
hermes desktop启动桌面应用
hermes model选择模型和 Provider
hermes doctor检查依赖和配置
hermes tools启用或关闭工具集
hermes skills browse浏览 Skills
hermes gateway setup配置 Telegram 等消息平台
hermes gateway status查看网关状态
hermes sessions list查看历史会话
hermes --continue恢复最近会话
hermes update更新非 Docker 安装

会话中输入 / 可以查看 Slash 命令。常用的有 /help/model/tools/new/compress/stop

在 NAS 上用 Docker Compose 安装#

NAS 的目标和桌面不同:它需要在重启后自动恢复、配置长期持久化,并且不能把管理界面裸露到公网。下面的示例使用官方镜像 nousresearch/hermes-agent:latest,只暴露带认证的 Dashboard 端口,不开放 OpenAI 兼容 API。

1. 创建目录#

SSH 登录 NAS:

Terminal window
mkdir -p ~/docker/hermes/data
cd ~/docker/hermes

群晖、QNAP、极空间等系统可以把目录换成自己的存储路径,例如 /volume1/docker/hermes。后续所有命令都在这个目录执行。

记录当前用户 UID 和 GID:

Terminal window
id -u
id -g

2. 生成 Compose 环境文件#

下面会自动生成随机 Dashboard 密码和会话签名密钥:

Terminal window
umask 077
printf 'HERMES_UID=%s\n' "$(id -u)" > .env
printf 'HERMES_GID=%s\n' "$(id -g)" >> .env
printf 'DASHBOARD_USER=hermes\n' >> .env
printf 'DASHBOARD_PASSWORD=%s\n' "$(openssl rand -hex 24)" >> .env
printf 'DASHBOARD_SECRET=%s\n' "$(openssl rand -hex 32)" >> .env
chmod 600 .env

.env 的密码保存到密码管理器。DASHBOARD_SECRET 必须长期保持不变,否则容器重启后已有登录会话会失效。

3. 创建 compose.yml#

services:
hermes:
image: nousresearch/hermes-agent:latest
container_name: hermes
restart: unless-stopped
shm_size: "1gb"
volumes:
- ./data:/opt/data
environment:
HERMES_UID: ${HERMES_UID}
HERMES_GID: ${HERMES_GID}
HERMES_DASHBOARD: "1"
HERMES_DASHBOARD_HOST: "0.0.0.0"
HERMES_DASHBOARD_PORT: "9119"
HERMES_DASHBOARD_BASIC_AUTH_USERNAME: ${DASHBOARD_USER}
HERMES_DASHBOARD_BASIC_AUTH_PASSWORD: ${DASHBOARD_PASSWORD}
HERMES_DASHBOARD_BASIC_AUTH_SECRET: ${DASHBOARD_SECRET}
ports:
- "9119:9119"
command: ["gateway", "run"]

这个部署只持久化 ./data,容器内对应 /opt/data。配置、秘密、会话、Skills、记忆、Cron 和日志都保存在这里;镜像可以随时替换。

WARNING

不要为了“让 Hermes 管理容器”而挂载 /var/run/docker.sock。Docker Socket 等同于宿主机 root 权限。确有容器管理需求时,优先使用受限 SSH 账户、最小化 sudo 规则或专门的远程管理接口。

4. 首次初始化#

先验证 Compose:

Terminal window
docker compose config --quiet
docker compose pull

运行一次交互式 Setup:

Terminal window
docker compose run --rm --no-deps hermes setup

在向导里先完成模型配置,并按需要增加远程入口:

  1. 必须配置一个能正常对话的模型 Provider
  2. 可选配置 Telegram、Discord 等消息平台,或稍后运行 hermes gateway setup

Setup 写入的是 ./data,临时容器退出后配置不会丢失。

5. 启动并验证#

Terminal window
docker compose up -d
docker compose ps
docker compose logs --tail=100 hermes

再运行健康检查:

Terminal window
docker compose exec hermes hermes doctor

局域网浏览器打开:

http://NAS_IP:9119

页面应该先进入登录界面。用户名是 .env 里的 DASHBOARD_USER,密码是 DASHBOARD_PASSWORD

检查认证是否生效:

Terminal window
curl -s http://127.0.0.1:9119/api/status

返回结果里的 auth_required 应为 true,认证提供商应包含 basic。如果页面无需登录就能看到管理内容,应立即停止对外访问并检查环境变量是否被 Compose 正确加载。

6. 让桌面应用连接 NAS(可选)#

在 Mac 或 Windows 的 Hermes Desktop 中进入:

Settings → Gateway → Remote gateway

在可信局域网或 VPN 内填写:

http://NAS_IP:9119

然后点击 Sign in,输入 Compose 项目根目录 .env 中的用户名和密码,保存并重连。这样桌面端只是操作界面,模型调用、工具执行、会话和 Skills 都保留在 NAS 上。这里的 9119 是 Dashboard / Desktop 远程后端端口,不是 8642 的 OpenAI 兼容 API 端口。

WARNING

Dashboard 能读取 API Key、修改配置并执行 Agent 任务。用户名密码方案只适合可信局域网或 VPN,不应直接暴露在公网。需要公网访问时,应使用可信 HTTPS 反向代理,并按官方文档配置 Nous Portal OAuth 或自建 OIDC;不要依赖一个裸露的 HTTP 端口。

配置消息网关#

基础聊天正常后再运行:

Terminal window
hermes gateway setup

Docker 部署则执行:

Terminal window
docker compose exec hermes hermes gateway setup

向导可以配置 Telegram、Discord、Slack、WhatsApp 等平台。完成后检查:

Terminal window
hermes gateway status

在 NAS 上:

Terminal window
docker compose exec hermes hermes gateway status

不要只看容器是否 Up。真正的成功标准是:从目标聊天平台发送一条消息,Hermes 能收到、调用模型并把回复送回来。

工具与 Skills 怎么用#

工具决定 Hermes 能做什么,Skills 决定它遇到特定任务时采用什么流程。

管理工具#

Terminal window
hermes tools
hermes tools list

首次使用建议只打开确实需要的工具。启用高权限工具后,重新开始会话让配置生效。

浏览和安装 Skills#

Terminal window
hermes skills browse
hermes skills search docker
hermes skills list

Skills 不只是 Prompt 收藏夹。一个 Skill 可以包含步骤、命令、模板、脚本和参考资料,让 Agent 在发布博客、管理 GitHub PR、分析数据等重复任务中遵循固定流程。

更新、备份与恢复#

macOS / Windows / Linux 安装#

Windows 原生环境更新前,应先退出 Desktop、关闭其他 Hermes CLI 会话并停止 Gateway,避免可执行文件或 .pyd 被占用;macOS 和 Linux 也建议先结束正在运行的 Hermes 任务。

Terminal window
hermes update
hermes doctor

Desktop 也会在后台检查更新,并提供一键升级。

Docker / NAS 安装#

Docker 版不使用 hermes update。应先把 compose.yml、Compose 项目根目录 .env 和整个 data/ 作为同一个部署单元备份,再拉取新镜像:

Terminal window
cd ~/docker/hermes
umask 077
docker compose stop
cd ..
BACKUP="hermes-backup-$(date +%Y%m%d-%H%M%S).tar.gz"
tar -czf "$BACKUP" hermes/compose.yml hermes/.env hermes/data
chmod 600 "$BACKUP"
cd hermes
docker compose pull
docker compose up -d
docker compose ps
docker compose logs --tail=100 hermes

这里有两个不同的秘密文件:项目根目录 .env 保存 Compose、Dashboard 与 UID/GID 参数;data/.env 对应容器内 Hermes 的 Provider Key 和 Token。二者都必须纳入备份。归档文件包含 API Key、OAuth Token、Dashboard 密码和会话,应限制权限,最好加密后再复制到另一块磁盘或另一台设备;只放在同一存储池不能防范磁盘故障。

需要恢复时,先停掉当前部署并保留故障现场,再解压完整归档:

Terminal window
cd ~/docker/hermes
docker compose down
cd ..
mv hermes "hermes.failed-$(date +%Y%m%d-%H%M%S)"
tar -xzf hermes-backup-YYYYMMDD-HHMMSS.tar.gz
cd hermes
chmod 600 .env
chown -R "$(id -u):$(id -g)" data
docker compose config --quiet
docker compose up -d
docker compose ps
curl -s http://127.0.0.1:9119/api/status

如果 chown 提示权限不足,在确认目录路径无误后使用 sudo chown。恢复后应确认 Dashboard 仍要求登录、模型可正常回复,并从真实 Telegram / Discord 消息验证 Gateway,而不是只看容器状态。

常见故障#

hermes: command not found#

重新打开终端,或载入 Shell 配置:

Terminal window
source ~/.bashrc
# macOS 常见为:source ~/.zshrc

仍有问题时检查 ~/.local/bin 是否在 PATH

安装完成,但模型不回复#

按这个顺序检查:

Terminal window
hermes doctor
hermes model
hermes --tui

常见原因是 OAuth 过期、API Key 错误、模型名称不匹配,或自建模型上下文小于 64K。先修好普通对话,再排查网关和工具。

NAS 容器反复重启#

Terminal window
docker compose ps -a
docker compose logs --tail=200 hermes

重点检查:

  • ./data 是否可写
  • .env 中 UID / GID 是否正确
  • YAML 缩进和变量名是否正确
  • NAS 架构是否有对应镜像
  • 磁盘空间是否充足

不要先删除 data 目录重装。它是唯一持久数据源,排错时应先备份并保留。

Dashboard 打不开或无法登录#

先在 NAS 本机验证:

Terminal window
curl -s http://127.0.0.1:9119/api/status
docker compose logs --tail=100 hermes
  • 本机也不通:检查容器和 Dashboard 进程
  • 本机可达、其他设备不通:检查端口映射和 NAS 防火墙
  • 返回 401:核对用户名密码
  • 每次重启都掉登录:确认 HERMES_DASHBOARD_BASIC_AUTH_SECRET 没有变化

消息平台没有回复#

Terminal window
hermes gateway status

然后检查对应平台的 Bot Token、允许用户列表和权限。容器运行中不等于平台已经连接成功,最终要以真实消息往返为准。

一套稳妥的使用顺序#

  1. 安装 Desktop 或 CLI
  2. hermes model 配好一个 Provider
  3. hermes --tui 跑通普通对话
  4. hermes --continue 验证会话恢复
  5. 再按需要启用工具和 Skills
  6. 最后配置 Gateway、Cron、远程 Dashboard
  7. 在 NAS 上定期备份 Compose 配置、项目 .env 和整个 /opt/data 对应目录,并保留异盘副本

Hermes 的功能很多,但第一次安装不需要全部打开。先建立一个可验证、可恢复、权限清楚的最小环境,再逐层增加自动化,长期维护会轻松得多。

参考资料#

Hermes Agent 安装与使用教程:macOS、Windows 与 NAS 完整指南
https://blog.961121.xyz/posts/hermes-agent-installation-guide/
作者
LOOK
发布于
2026-07-25
许可协议
CC BY-NC-SA 4.0