Hermes-Agent 全平台部署运维中文安装配置手册
转载请注明 来源:https://www.cnblogs.com/eword/
Author:eword
Email:eword@139.com
文档说明
本文档覆盖 Docker容器部署 / 原生非Docker部署 两大架构;支持 macOS / Windows / Linux / 银河麒麟 / 统信UOS;统一使用mirror-switcher 做全链路镜像源切换;Anaconda 管控Python虚拟环境、nrm/nvm 管理Node.js版本与源;包含企业微信机器人接入、MCP双向系统集成、安全加固、配置详解、智谱GLM大模型接入全套流程。
前置工具仓库:mirror-switcher
官方地址:https://gitee.com/eword/mirror-switcher/blob/main/README.md
目录
- 前置公共环境准备(全系统通用镜像源管控)
- 分架构部署:非Docker原生部署、Docker容器部署
2.1 macOS 非Docker(Anaconda+nvm+nrm+mirror-switcher)
2.2 Windows 非Docker(Anaconda+nvm+nrm+mirror-switcher)
2.3 Linux x86_64 非Docker
2.4 银河麒麟V10 非Docker
2.5 统信UOS 非Docker
2.6 全平台 Docker 一键部署方案 - Hermes 初始化向导分步配置(避坑版)
- 大模型接入教程:智谱GLM API + Ollama本地离线双方案
- 企业微信客户端插件安装 + CLI调用对接
- 系统双向集成:外部系统调用Hermes | 第三方系统暴露MCP给Hermes
- 安全策略配置与权限加固
- 核心配置文件目录清单 & 关键配置项详解
- 常用运维命令、日志排查、备份与卸载
- 信创环境补充说明(麒麟/统信)
- 常见故障排查
一、公共前置:安装 mirror-switcher 镜像源管理工具
mirror-switcher 是全平台统一镜像源切换工具集,覆盖 pip/conda/npm/brew/docker/git/yum/apt 等 20 种包管理器与开发环境,命令格式与 nrm 完全一致,支持一键测速、配置备份还原、国产系统自动适配。部署 Hermes 前必须先完成本工具安装,统一切换国内源避免外网下载超时。
工具官方仓库:https://gitee.com/eword/mirror-switcher
核心特性:零第三方 Python 依赖、自动注入系统 PATH、原生支持银河麒麟/统信UOS等信创系统、配置修改前自动备份。
1.1 方式A:远程一键安装(官方推荐,全自动)
无需手动 git clone,一行命令完成全量工具安装、软链接注册、PATH 环境变量自动写入,全程免手动配置。
macOS / Linux / 银河麒麟 / 统信UOS(bash/zsh)
# 国内优先 Gitee 源,自动识别系统发行版与架构
bash <(curl -fsSL https://gitee.com/eword/mirror-switcher/raw/main/bootstrap.sh)
- 可选:仅安装指定工具(逗号分隔,按需精简)
bash <(curl -fsSL https://gitee.com/eword/mirror-switcher/raw/main/bootstrap.sh) --tools=pip,conda,npm,brew,git,docker - 安装完成后执行以下命令,让当前终端立即生效:
source ~/.zshrc # zsh 用户 source ~/.bashrc # bash 用户
Windows PowerShell(管理员身份运行)
iwr -useb https://gitee.com/eword/mirror-switcher/raw/main/bootstrap.ps1 | iex
安装完成后新开 PowerShell 窗口,即可全局调用所有 switch-* 命令。
自动安装机制说明:
- 优先通过 git clone 拉取源码,支持后续增量更新;无 git 环境自动回退到压缩包安装
- 自动注册全部 20 个
switch-*命令到系统全局- 命令目录幂等写入系统 PATH,重复安装不会重复污染配置文件
- 自动识别国产系统(麒麟/统信/openEuler 等),匹配对应系统源管理工具
1.2 方式B:源码本地手动安装(备选,可定制)
适合离线部署、需修改源码的场景,通过官方安装脚本完成标准化注册。
# Gitee 免登录克隆源码
git clone https://gitee.com/eword/mirror-switcher.git
cd mirror-switcher
# 一键安装全部工具(自动创建软链接 + 自动写入系统 PATH)
./install.sh
# 可选:仅安装指定工具
./install.sh --tools=pip,conda,npm
安装完成后重载 shell 配置即可全局使用。
1.3 一键切换国内源(部署 Hermes 前必执行)
所有工具命令格式统一,与 nrm 用法完全一致:
# Python pip 切换清华源
switch-pip use tsinghua
# Conda 切换清华源
switch-conda use tsinghua
# NPM 切换淘宝源
switch-npm use taobao
# Git 全局配置 GitHub 加速代理
switch-git use ghproxy
# macOS Homebrew 切换清华源
switch-brew use tsinghua
# Docker 镜像加速器配置
switch-docker use ustc
通用辅助命令(所有
switch-*工具通用):
switch-xxx ls:列出所有预设源,* 标记当前生效源switch-xxx test:批量测速并按延迟排序switch-xxx backup:备份原始配置文件switch-xxx restore:从最新备份还原配置
1.4 Node.js 环境管控:nvm + nrm(兼容方案)
mirror-switcher 自带 switch-node 可替代 nvm 实现多版本管理;如需沿用传统 nvm 方案,可按以下步骤部署:
安装 nvm(版本管理器)
macOS/Linux/麒麟/UOS:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.zshrc
# 安装 LTS 稳定版 Node
nvm install --lts
nvm use lts
Windows:使用 nvm-windows,执行 nvm install lts
nrm 管理 npm 镜像源
npm install -g nrm
# 列出所有可用源
nrm ls
# 切换淘宝源
nrm use taobao
二、方案A:非Docker原生部署(推荐,宿主机直接运行)
通用源码拉取(Gitee免登录,无账号校验)
# 国内镜像克隆Hermes-Agent源码
git clone https://gitcode.com/GitHub_Trending/he/hermes-agent.git hermes-agent
cd hermes-agent
目录分离说明:此处克隆的
hermes-agent为程序源码目录,所有用户配置、会话记录、密钥、记忆数据均独立存放在~/.hermes/目录下,删除源码文件夹不会丢失任何个人配置与数据。
2.1 macOS 详细部署(Anaconda)
步骤1 安装Xcode命令行工具
xcode-select --install
步骤2 安装Homebrew并换源
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
switch-brew tsinghua
brew install git ffmpeg ripgrep cmake
步骤3 安装Anaconda并创建独立Python环境
- 官网下载Anaconda macOS安装包;
- 初始化conda:
# 换conda国内源
switch-conda tsinghua
# 创建Hermes专属虚拟环境,锁定Python3.11
conda create -n hermes python=3.11
conda activate hermes
# pip换源
switch-pip tsinghua
步骤4 项目本地可编辑安装
执行前请确认终端前缀显示 (hermes),即已成功激活专属虚拟环境。-e 为可编辑模式,修改源码即时生效;[all] 表示安装全量依赖,包含桌面GUI、工具链、浏览器自动化、多媒体处理等所有组件。
pip install --upgrade pip
pip install -e ".[all]"
步骤5 全局注册hermes命令
mkdir -p ~/.local/bin
ln -sf $(conda env list | grep hermes | awk '{print $2"/bin/hermes"}') ~/.local/bin/hermes
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
# 验证
hermes --version
2.2 Windows 非Docker Anaconda部署
- 安装Anaconda,启动Anaconda Prompt;
- 创建环境:
conda create -n hermes python=3.11
conda activate hermes
switch-pip tsinghua
- 进入源码目录执行:
pip install -e ".[all]"
- 全局注册hermes命令(生产环境推荐):
- 找到Anaconda环境路径,默认位于
C:\ProgramData\anaconda3\envs\hermes\Scripts\hermes.exe - 右键「此电脑」→ 属性 → 高级系统设置 → 环境变量 → 系统变量Path → 编辑 → 新建,填入上述Scripts目录路径
- 重启PowerShell或终端,执行
hermes --version验证
- 找到Anaconda环境路径,默认位于
2.3 Linux x86_64(Ubuntu/Debian/CentOS)
前置:安装Anaconda
# 下载对应架构安装包,以x86_64为例
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2024.02-1-Linux-x86_64.sh
bash Anaconda3-2024.02-1-Linux-x86_64.sh
# 按提示完成安装,执行初始化
source ~/.bashrc
部署Hermes
# 系统依赖
sudo apt update && sudo apt install git ffmpeg build-essential
# 创建虚拟环境
conda create -n hermes python=3.11
conda activate hermes
switch-pip tsinghua
cd hermes-agent
pip install -e ".[all]"
# 软链接全局命令
sudo ln -s $(which hermes) /usr/local/bin/hermes
2.4 银河麒麟V10 信创环境部署
系统适配说明
麒麟基于Linux内核,使用yum/dnf包管理器,先用mirror-switcher切换yum源:
switch-yum 163
sudo yum install git ffmpeg gcc gcc-c++
后续Anaconda环境创建、源码安装步骤同标准Linux一致;
如为ARM飞腾架构,下载ARM版Anaconda,其余流程完全相同。
2.5 统信UOS 非Docker部署
switch-apt tsinghua
sudo apt install git ffmpeg make gcc
Anaconda选用对应CPU架构版本,创建hermes虚拟环境,pip install -e ".[all]"即可,流程无差异。
2.6 方案B:Docker容器化一键部署
前置说明
全程国内可通、无需外网,包含镜像加速、持久化挂载、初始化全流程。
步骤1:配置Docker国内镜像加速(必做)
macOS / Linux / 麒麟 / 统信 统一配置:
# 创建docker镜像加速配置
mkdir -p ~/.docker
cat > ~/.docker/daemon.json << EOF
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://ghcr.nju.edu.cn"
]
}
EOF
重启Docker生效:桌面端重启Docker应用,服务器执行:sudo systemctl restart docker
步骤2:国内加速拉取 Hermes 官方镜像
# 南京大学GHCR国内镜像(稳定免FQ)
docker pull ghcr.nju.edu.cn/nousresearch/hermes:latest
版本锁定建议:生产环境避免使用
latest滚动标签,可指定固定版本号,例如docker pull ghcr.nju.edu.cn/nousresearch/hermes:v0.4.0;升级时先拉取新版本镜像,重建容器即可,配置数据因挂载持久化不会丢失。
步骤3:启动持久化容器(挂载配置目录、端口映射、后台常驻)
docker run -d \
--name hermes-agent \
--restart always \
-p 8080:8080 \
-v ~/.hermes:/root/.hermes \
ghcr.nju.edu.cn/nousresearch/hermes:latest
步骤4:进入容器执行初始化配置
docker exec -it hermes-agent hermes setup
步骤5:容器常用运维命令
# 启动Web服务
docker exec -it hermes-agent hermes serve
# 启动桌面端(仅带图形环境机器)
docker exec -it hermes-agent hermes desktop
# 环境自检
docker exec -it hermes-agent hermes doctor
# 查看日志
docker logs -f hermes-agent
容器持久化说明:挂载 ~/.hermes 宿主机目录,所有配置、密钥、记忆、会话数据全部宿主机留存,删除容器不丢失数据。
三、Hermes 初始化向导分步配置(避坑完整版)
执行初始化:
hermes setup
1.部署模式选择
- Quick Setup:Nous云端OAuth登录(国内网络极易超时,不推荐)
- Full setup:自定义全部模型/工具/API(推荐)
- Blank Slate:极简最小启动
-
Terminal backend 终端后端
必须选择:Local - run directly on this machine
严禁选择Docker(原生部署场景) -
消息机器人平台接入
选择:Skip — set up later with 'hermes setup gateway'
后续如需对接企业微信再单独配置网关。 -
未授权用户访问策略
默认Use DM pairing配对授权即可;无外部接入可直接Skip。 -
图像生成模型服务商
直接选择最后一项:Skip — keep defaults / configure later
避免境外付费接口与网络问题。
初始化完成代表基础环境就绪。
常用启动命令
# 终端对话模式
hermes chat
# 桌面GUI客户端
hermes desktop
# Web网页服务端
hermes serve
# 环境自检排错
hermes doctor
# 编辑主配置
hermes config edit
四、大模型接入:智谱GLM API 详细配置
4.1 前置准备
前往智谱开放平台注册应用,获取 API_KEY。智谱提供两类主流接入方案:
- 通用模型系列:
glm-4、glm-3-turbo、glm-5等通用对话模型,通用 API 端点 - GLM Coding Plan 编码套餐:面向高频编码场景的订阅制套餐,独立编码专用路径,深度适配代码生成、调试、重构场景
通用接口默认端点:https://open.bigmodel.cn/api/paas/v4/
Coding 套餐专用路径:https://open.bigmodel.cn/api/coding/paas/v4/ 下编码模型专属通道,模型名使用编码系列标识。
4.2 方式1:命令行写入环境密钥(推荐,统一存入 .env)
所有 API Key 统一写入 Hermes 私有环境变量文件 ~/.hermes/.env,禁止硬编码到配置文件。通用模型与 GLM Coding 套餐共用同一 API Key,按模型名区分调用通道。
# 写入智谱API密钥,通用模型与Coding套餐通用
echo "ZHIPU_API_KEY=你的密钥" >> ~/.hermes/.env
4.3 方式2:修改核心配置文件 ~/.hermes/config.yaml
在 providers 节点新增智谱配置片段,通过 ${ZHIPU_API_KEY} 引用环境变量中的密钥。
通用模型配置
providers:
zhipu:
base_url: "https://open.bigmodel.cn/api/coding/paas/v4/"
api_key: "${ZHIPU_API_KEY}"
default_model: "glm-3-turbo"
GLM Coding 编码套餐配置
如需使用编码套餐专属能力,可单独声明编码服务商节点,指定编码系列模型:
providers:
zhipu-coding:
base_url: "https://open.bigmodel.cn/api/coding/paas/v4/"
api_key: "${ZHIPU_API_KEY}"
default_model: "glm-4-coding"
4.4 指定模型启动对话
调用通用对话模型
hermes chat --provider zhipu -m glm-4
调用 GLM Coding 编码模型
hermes chat --provider zhipu-coding -m glm-4-coding
4.5 设为全局默认LLM
编辑 config.yaml 顶层参数,可根据使用场景设置默认模型:
# 日常通用对话场景
default_provider: zhipu
default_model: glm-3-turbo
# 高频编码开发场景
# default_provider: zhipu-coding
# default_model: glm-4-coding
五、企业微信客户端插件安装与CLI对接
Hermes 企业微信网关支持长链接主动拉取模式与 Webhook 回调模式两种接入方式。优先推荐长链接模式:无需公网 IP、无需端口映射、无需将服务暴露到公网,内网环境即可正常运行,安全性与稳定性更高;回调模式依赖公网可达的回调地址,配置繁琐且存在公网暴露风险,不建议使用。
5.1 安装企业微信网关插件
# 网关子系统配置
hermes setup gateway
# 在网关列表选择 WeCom / 企业微信
# 接入模式选择「长链接模式」
5.2 企业微信后台配置步骤
长链接模式(推荐)
仅需获取应用凭证,无需配置回调 URL:
- 企业微信后台 → 应用管理 → 创建自建应用;
- 获取 企业ID、应用AgentID、应用Secret;
- 将三项凭证写入 Hermes 环境变量文件:
WECOM_CORP_ID=xxx
WECOM_AGENT_ID=xxx
WECOM_SECRET=xxx
Webhook 回调模式(不建议)
仅在有明确公网部署需求时使用,需额外配置公网回调地址:
- 完成上述长链接模式的凭证配置;
- 配置消息接收 URL:
http://部署机器公网IP:8080/wecom/webhook; - 在企业微信后台填写 Token 与 EncodingAESKey,并同步写入 Hermes 配置。
5.3 开启网关服务
长链接模式启动(默认推荐)
hermes gateway start --mode longpoll
启动后网关将通过长轮询主动从企业微信拉取消息,全程无需公网入站流量,内网即可正常收发指令。
回调模式启动(不建议)
hermes gateway start --mode webhook
需确保 8080 端口公网可达,且已在企业微信后台配置好回调地址。
启动成功后,即可在企业微信内@应用机器人下发指令,Hermes 执行终端/文件/联网任务并回传结果。
5.4 CLI 主动推送消息至企业微信
hermes send --wecom "服务器巡检已完成,无异常"
六、跨系统双向集成方案
Hermes 支持双向系统集成,覆盖两大核心方向:
- 正向集成:外部业务系统调用 Hermes 的大模型与智能体能力,Hermes 作为服务端对外提供 HTTP API;
- 反向集成:Hermes 主动调用第三方业务系统的接口与数据能力,基于 MCP(Model Context Protocol,模型上下文协议) 开放标准实现。
本章详细说明 MCP 标准规范、两种集成方式的落地步骤、自动生成对接技能的方法,以及面向信息系统开发者的接口开发指引。
6.1 正向集成:外部业务系统调用Hermes能力(Hermes作为服务端)
适合将 Hermes 的推理、任务执行、代码生成等能力嵌入到现有业务系统(OA、运维平台、数据中台等)中。
6.1.1 启动Web API服务
hermes serve --host 0.0.0.0 --port 8080
6.1.2 核心开放接口
- 创建会话:
POST /api/sessions - 下发任务指令:
POST /api/chat - 查询执行结果:
GET /api/sessions/{id}
6.1.3 鉴权加固
在config.yaml开启API Token校验,避免未授权访问:
api_server:
enable: true
auth_token: "自定义强随机密钥"
调用时请求头携带 Authorization: Bearer {auth_token} 即可完成鉴权。
6.2 MCP 标准规范说明
MCP(Model Context Protocol)是一套行业通用的开放标准协议,专门定义了大模型智能体与外部工具、数据系统、业务服务之间的交互规范,是当前 AI Agent 领域应用最广泛的工具互联标准。
6.2.1 核心定位与特性
- 标准化互通:统一的工具声明、入参出参、错误码规范,一次开发即可兼容所有支持 MCP 标准的智能体运行时(Hermes、Claude Desktop 等);
- 安全可控:原生支持鉴权、细粒度权限控制、操作审计日志;
- 多传输协议:支持 HTTP、WebSocket、Stdio 三种部署形态,适配内网、容器、本地工具等不同场景;
- 能力全覆盖:支持工具调用、资源读取、系统提示模板三类核心交互形态。
6.2.2 标准核心接口
符合 MCP 1.0 规范的服务端,至少需实现两类基础端点:
- 工具列表接口:向智能体声明自身提供的所有工具、参数说明、返回格式;
- 工具调用接口:接收智能体的调用请求,执行业务逻辑,返回结构化结果。
6.3 反向集成:第三方系统暴露MCP服务,Hermes主动调用
业务系统按 MCP 标准开发接口后,Hermes 可直接注册并调用系统能力,无需单独开发插件,实现“对话即操作业务系统”。
6.3.1 接入步骤
- 业务系统实现 MCP 1.0 协议标准的服务端点;
- 在 Hermes 中注册 MCP 服务源:
hermes mcp add --name business-system --url http://xxx:9000/mcp
- 查看已接入的 MCP 服务列表:
hermes mcp list
- 注册完成后,对话中 Hermes 会自动识别并调用对应系统的工具能力。
6.3.2 落地场景示例
示例1:对接企业人事OA系统
- 人事系统按 MCP 标准暴露接口,提供「查询员工考勤」「核算当月薪资」「查询请假记录」三个工具;
- 注册到 Hermes 后,用户可直接对话:“帮我查一下张三本月的考勤统计”,Hermes 会自动调用对应 MCP 接口,拉取数据并整理成自然语言结果返回。
示例2:对接运维监控平台
- 监控系统实现 MCP 接口,提供「查询服务器资源使用率」「获取当前告警列表」「导出巡检报告」工具;
- Hermes 可在定时巡检任务中自动调用接口,生成巡检报告后通过企业微信推送,无需人工登录系统操作。
6.4 Hermes 自动生成双向对接技能
Hermes 自身具备代码生成与能力封装能力,可基于业务系统的现有 API 文档,自动生成符合 MCP 标准的适配层代码与注册配置,大幅降低对接开发量。
操作流程
- 将业务系统的 API 接口文档、字段说明、鉴权方式提供给 Hermes;
- 下发指令:“基于这份接口文档,生成符合 MCP 1.0 标准的服务端适配代码,以及 Hermes 侧的注册配置”;
- Hermes 会自动输出完整的 MCP 适配服务代码(支持 Python/Node.js 等语言)、部署说明、以及 Hermes 端的注册命令;
- 将适配代码部署到业务系统侧后,执行注册命令即可完成双向连通。
适用场景
- 老系统无 MCP 接口,需要快速适配接入;
- 临时对接单个业务场景,无需投入大量开发资源;
- 快速验证集成方案可行性。
6.5 信息系统开发者 MCP 接口开发指引
面向信息系统开发人员,遵循以下规范开发 MCP 接口,可实现与 Hermes 及所有 MCP 生态智能体的无缝兼容。
开发规范要求
- 协议版本:遵循 MCP 1.0 官方规范,优先实现工具调用能力,按需扩展资源、提示模板能力;
- 接口形态:推荐使用 HTTP + JSON 格式,必须实现
tools/list(工具列表)、tools/call(工具调用)两个核心端点; - 鉴权要求:必须实现接口鉴权,推荐使用 Bearer Token 方式校验,禁止接口公网裸暴露;
- 参数规范:入参、出参使用标准 JSON 结构,工具参数需附带清晰的字段说明与类型定义,便于大模型理解调用;
- 错误处理:统一返回标准错误码与错误信息,方便 Hermes 进行异常处理与用户提示。
验证与上线
开发完成后,可通过 Hermes 自带命令进行连通性与兼容性测试:
# 测试MCP服务连通性
hermes mcp test --name business-system
测试通过后即可正式注册投入使用。
七、安全加固配置
7.1 禁止公网无鉴权访问
- API服务必须开启
auth_token; - 绑定监听内网IP,禁止
0.0.0.0裸暴露公网;
api_server:
host: 127.0.0.1
port: 8080
7.2 命令执行沙箱与权限限制
修改config.yaml开启安全沙箱:
security:
restrict_shell: true
forbid_destructive_commands: true
blocked_commands:
- rm -rf /
- chmod 777
- dd
working_directory_whitelist:
- /home/user/work
- ~/hermes-workspace
7.3 密钥加密存储
敏感Key统一存放~/.hermes/.env,禁止硬编码写入config.yaml;
设置文件权限:
chmod 600 ~/.hermes/.env
chmod 700 ~/.hermes
7.4 配对访问白名单
关闭公网任意接入,仅允许手动审批用户:
# 查看待授权设备
hermes pairing list
# 通过授权
hermes pairing approve
# 拉黑设备
hermes pairing reject
7.5 日志脱敏
开启日志敏感信息自动掩码:
logging:
mask_secrets: true
八、配置文件路径清单 & 核心配置项
8.1 全路径清单(所有系统统一)
| 路径 | 用途 |
|---|---|
~/.hermes/ |
全局数据根目录 |
~/.hermes/config.yaml |
主配置文件(必改) |
~/.hermes/.env |
密钥、API环境变量 |
~/.hermes/auth.json |
Nous OAuth登录凭证 |
~/.hermes/SOUL.md |
Agent人设与系统提示词 |
~/.hermes/sessions/ |
历史对话会话 |
~/.hermes/memories/ |
长期向量记忆库 |
~/.hermes/logs/ |
运行日志 |
~/.hermes/cron/ |
定时任务 |
~/.hermes/skills/ |
自定义工具技能 |
8.2 专项论证:Anaconda虚拟环境下【是否需要全局注册 hermes 命令】
核心原理论证
Hermes 通过 pip install -e ".[all]" 可编辑安装后:
- 仅在当前激活的 Conda 虚拟环境内,系统可识别
hermes命令; - 退出虚拟环境、新开终端、重启电脑后,
hermes: command not found; - Conda 环境属于隔离环境,不会自动写入系统全局 PATH。
两种场景结论(精准取舍)
场景1:仅开发调试、每次手动 conda activate hermes
不需要执行步骤5全局注册
全程在激活环境内操作即可,干净无冗余、无环境冲突。
场景2:生产常驻、开机自启、任意终端调用、后台服务运行(推荐生产)
必须执行步骤5全局软链接注册
解决:退出conda环境仍可全局调用、桌面GUI启动、serve后台服务、开机自启、企业微信网关常驻运行问题。
最终规范建议
本手册保留原有步骤5命令不变,开发可跳过、生产必执行,兼顾隔离性与实用性。
8.3 config.yaml 高频核心配置项
# 默认大模型服务商
default_provider: zhipu
default_model: glm-3-turbo
# 终端执行权限
terminal:
auto_confirm: false # 高危命令手动确认
timeout: 300
# 联网搜索工具
tools:
web_search: true
file_write: true
computer_use: false
# API服务
api_server:
enable: false
host: 127.0.0.1
port: 8080
auth_token: "xxx"
# 记忆策略
memory:
enable_longterm: true
max_memory_items: 200
8.4 快捷编辑命令
hermes config show # 查看当前配置
hermes config edit # 编辑器直接修改
hermes config reset # 重置配置
九、运维常用命令
会话管理
hermes sessions list
hermes sessions resume 会话名
定时任务
hermes cron add "0 9 * * *" "每日九点巡检磁盘"
hermes cron list
备份与迁移
# 打包全量配置与记忆
tar -zcvf hermes-backup.tar.gz ~/.hermes
# 恢复
tar -zxvf hermes-backup.tar.gz -C ~/
彻底卸载(非Docker)
hermes uninstall
rm -rf ~/.hermes ~/.local/bin/hermes
conda remove -n hermes --all
Docker卸载
docker rm -f hermes-agent
docker rmi ghcr.nju.edu.cn/nousresearch/hermes:latest
日志排查
# 实时查看日志
tail -f ~/.hermes/logs/latest.log
十、信创环境补充说明(麒麟/统信)
- 若为ARM架构CPU,全部软件(Anaconda、Node、Ollama)下载ARM64架构安装包;
mirror-switcher内适配apt/yum国内源,优先使用工具切换源避免外网下载失败;- 禁止使用Docker容器化部署如需符合等保规范,严格使用本手册原生Anaconda虚拟环境方案;
- 系统防火墙放行端口仅开放内网网段,不暴露公网端口。
十一、常见故障排查
11.1 命令不存在:hermes: command not found
- 未激活conda虚拟环境:执行
conda activate hermes后重试 - 未配置全局软链接:按照对应系统的步骤5完成全局注册
- PATH未生效:重新执行
source ~/.zshrc(macOS)或source ~/.bashrc(Linux),或新开终端重试
11.2 pip安装依赖失败
- 未切换国内源:执行
switch-pip tsinghua后重试 - Python版本不兼容:确保虚拟环境为Python 3.10~3.11,3.12以上可能存在依赖兼容问题
- 缺少系统依赖:macOS安装Xcode命令行工具,Linux安装build-essential、gcc等基础编译工具
11.3 Playwright浏览器安装失败
手动执行安装命令:
playwright install chrome
若网络超时,可设置Playwright国内镜像源后重试。
11.4 初始化向导Nous登录一直转圈
国内网络无法连通Nous官方验证服务器,直接按ESC退出,选择Full setup手动配置自有API或本地Ollama模型即可,无需强制登录。
11.5 桌面端启动失败
- 缺少Node.js环境:按照1.4节安装nvm与Node.js LTS版本
- 缺少系统图形依赖:Linux服务器无桌面环境无法启动GUI,使用
hermes serve网页端替代
11.6 企业微信消息无响应
- 检查服务器端口8080是否放行,企业微信后台能否访问回调地址
- 确认
WECOM_CORP_ID、WECOM_AGENT_ID、WECOM_SECRET三项凭证填写正确 - 查看日志排查报错:
tail -f ~/.hermes/logs/latest.log
需要我补充一份部署验收检查清单,方便你落地验证每一步是否完成吗?
文章摘自:https://www.cnblogs.com/shylock/p/21651382/hermesagent-quan-ping-tai-bu-shu-yun-wei-zhong-wen
