一、部署前置条件与资源规划
1.1 账号与服务开通要求
整套部署依赖阿里云ECS与百炼两大服务,使用者需要完成账号实名认证,并且手动开通百炼大模型服务、ECS弹性计算服务,两项服务开通无前置消费门槛。同时账号需要分配完整的RAM操作权限,包含ECS实例管理、安全组编辑、百炼API调用权限,权限缺失会导致部署中途操作失败。
1.2 ECS硬件与系统选型标准
Hermes Agent属于常驻运行的AI智能体服务,存在内存持续占用、多工具并发调用的特性,硬件规格分为测试低配与生产稳定两种标准:
个人学习、单任务测试场景最低选择1核2G实例,仅适合短期调试;长期稳定运行、多任务并行、搭配多模态模型调用,推荐2核4G起步,若同时挂载知识库、长期记忆缓存,建议升级至4核8G。
操作系统固定选用Alibaba Cloud Linux 3或者Ubuntu 22.04 LTS,两款系统对Node.js运行环境、编译依赖兼容度最高,不推荐老旧系统版本,容易出现底层库缺失引发编译报错。
实例创建时必须勾选分配公网IP,否则本地设备无法访问Hermes Agent前端控制台;系统盘预留40GB以上存储空间,用于存放源码、日志、模型缓存文件。阿里云部署AI Agent:OpenClaw/Hermes Agent全网最简单,只需两步,详情👉访问阿里云OpenClaw/Hermes一键部署专题页面 了解。








Token Plan Token最便宜/支持多模型切换:👉访问订阅阿里云百炼Token Plan AI大模型服务 。支持多模型切换,用于多模态模型灵活调用,实现多模型、多工具、多场景下的额度共享与统一管理,兼顾灵活性、稳定性与安全性,大幅降低企业使用大模型的门槛与成本。




1.3 百炼Token Plan前期准备
进入百炼服务后台创建Token Plan订阅套餐,根据日常调用强度选择对应坐席档位,生成专属API访问密钥,完整复制密钥文本保存至本地文档,密钥包含两段字符,不可遗漏、不可混入空格。同时记录Token Plan专属请求地址,后续写入Hermes Agent环境配置文件,用于对接Qwen 3.7 Plus、Max等大模型。
提前理清Credits计费逻辑,所有输入Token、输出Token、上下文缓存Token都会统一抵扣套餐内额度,便于后续控制调用成本。详情👉访问阿里云百炼大模型服务平台页面 了解

1.4 本地操作工具准备
本地电脑仅需要系统自带终端工具,Windows使用PowerShell,macOS与Linux使用原生终端,依靠SSH协议远程连接ECS,无需额外付费工具。提前记录ECS公网IP、root登录账号与密码,用于远程登录执行部署代码。
二、ECS远程连接与系统基础环境初始化
2.1 SSH远程登录服务器
打开本地终端,执行远程连接指令,将指令内占位字符替换为自身ECS信息:
ssh root@ECS公网IP
首次连接服务器会弹出主机密钥确认提示,输入yes回车,之后输入登录密码,密码输入阶段终端不会显示字符,属于系统安全机制,输入完成回车即可进入服务器终端。
2.2 系统软件源更新与底层依赖安装
全新ECS实例缺少编译、网络相关底层组件,先执行系统更新同步软件源,批量安装必备依赖:
# Ubuntu系统执行
sudo apt update -y
sudo apt install build-essential curl wget git -y
# Alibaba Cloud Linux 3系统执行
sudo dnf update -y
sudo dnf groupinstall "Development Tools" -y
sudo dnf install curl wget git -y
2.3 统一安装Node.js 20运行环境
Hermes Agent强制要求Node.js 20及以上长期支持版本,使用官方源标准化安装,避免多版本冲突:
# 导入官方密钥文件
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/nodesource.gpg
# 写入20版本软件源
echo "deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | sudo tee /etc/apt/sources.list.d/node20.list
# 安装Node与npm
sudo apt update -y && sudo apt install nodejs -y
安装完成后关闭当前终端重新登录,使环境变量生效,执行校验命令确认版本达标:
node -v
npm -v
2.4 规划项目存放目录
创建独立目录存放Hermes Agent源码,区分系统文件,防止权限错乱:
mkdir -p /opt/ai_agent/hermes
cd /opt/ai_agent/hermes
三、Hermes Agent源码拉取与项目依赖安装
3.1 克隆完整源码
在项目目录下执行Git克隆命令,拉取开源完整代码包:
git clone hermes-agent-source .
若服务器网络波动导致克隆超时,可将本地提前下载的源码压缩包通过SFTP上传至该目录,执行解压指令:
unzip hermes-source.zip
3.2 切换国内npm镜像加速依赖下载
国外官方镜像下载速度缓慢,切换国内镜像源减少安装报错:
npm config set registry https://registry.npmmirror.com
npm config set strict-ssl false
# 全局安装pnpm提升依赖安装稳定性
npm install -g pnpm
# 安装项目全部依赖
pnpm install
若出现gyp编译类报错,清理缓存后重新执行安装:
pnpm store prune
pnpm rebuild
四、Hermes Agent环境配置与百炼Token Plan参数写入
Hermes Agent依靠.env.production生产环境配置文件存储模型对接、网络端口、鉴权等核心参数,使用vim编辑器打开配置文件:
vim .env.production
清空文件原有默认内容,填入适配ECS与百炼Token Plan的完整配置,预留密钥占位符后续替换:
# 网络服务配置
SERVER_HOST=0.0.0.0
SERVER_PORT=32010
# 运行环境标识
NODE_ENV=production
# 百炼Token Plan模型对接配置
BAILIAN_BASE_URL=TokenPlan专属接口地址
BAILIAN_MODEL=qwen3.7-plus
BAILIAN_TOKEN_PLAN_KEY=PLACEHOLDER_TOKEN
API_TIMEOUT=180000
# 智能体任务调度参数
MAX_CONCURRENT_TASK=5
MAX_CONTEXT_CACHE_TOKEN=200000
# 日志存储配置
LOG_STORAGE_LOCAL=true
LOG_RETENTION_DAY=14
编辑完成按下ESC,输入:wq保存退出编辑器。其中SERVER_HOST设置为0.0.0.0,代表允许公网设备访问控制台,SERVER_PORT为服务独占端口,后续需要在ECS安全组放行该端口。
4.1 批量替换真实Token密钥
回到终端,使用文本替换指令一键将占位符替换为百炼生成的真实密钥,无需手动逐行修改文件:
# 引号内替换为自身完整Token Plan密钥
REAL_KEY="你的百炼Token Plan密钥"
sed -i "s/PLACEHOLDER_TOKEN/$REAL_KEY/g" /opt/ai_agent/hermes/.env.production
替换完成后可执行查看命令校验修改结果:
grep BAILIAN_TOKEN_PLAN_KEY /opt/ai_agent/hermes/.env.production
五、ECS安全组端口放行配置
Hermes Agent前端控制台占用32010端口,远程SSH管理占用22端口,需要在ECS安全组添加入方向放行规则:
登录阿里云控制台进入ECS实例详情,找到安全组配置页面,新增两条TCP规则:
第一条端口22,授权范围可限定本地固定IP,提升服务器安全;
第二条端口32010,测试阶段可临时授权0.0.0.0/0,长期生产使用仅添加办公、家庭固定公网IP,缩小访问范围降低风险。
规则保存后即时生效,无需重启服务器。
六、进程托管配置与后台常驻启动
直接在终端前台运行Hermes Agent,关闭终端窗口服务就会终止,使用pm2进程管理工具实现后台运行、异常自动重启、服务器开机自启。
6.1 全局安装pm2
npm install -g pm2
pm2 --version
6.2 编译项目并启动服务
cd /opt/ai_agent/hermes
# 编译TS源码
pnpm run build
# 后台启动Hermes Agent,自定义进程名称
pm2 start dist/main.js --name hermes-agent
6.3 配置开机自启与内存防护
设置服务器重启后自动拉起服务,同时设置内存阈值,内存溢出时自动重启进程防止卡死:
# 生成系统开机启动脚本
pm2 startup systemd
# 保存当前运行进程列表
pm2 save
# 设置进程最大内存限制
pm2 set hermes-agent max_memory_restart 480M
6.4 日常运维常用操作指令
# 查看所有托管进程运行状态
pm2 list
# 实时查看Hermes运行日志
pm2 logs hermes-agent --lines 200
# 重启智能体服务
pm2 restart hermes-agent
# 停止服务
pm2 stop hermes-agent
# 清空过期日志缓存
pm2 flush hermes-agent
七、功能连通性分层测试
7.1 ECS本地端口监听检测
在服务器终端执行指令,校验服务是否正常监听指定端口:
ss -tlnp | grep 32010
# 调用健康检测接口确认服务正常运行
curl http://127.0.0.1:32010/api/health
接口返回状态正常的JSON文本,代表服务本地启动无故障。
7.2 公网访问与大模型调用测试
切换至本地终端,替换ECS公网IP执行测试请求,验证公网访问与百炼模型对接是否生效:
curl -X POST http://ECS公网IP:32010/api/task \
-H "Content-Type:application/json" \
-d '{"prompt":"测试Hermes Agent通过百炼Token Plan调用大模型生成文本"}'
终端正常返回AI生成内容,说明端口放行、Token配置、模型链路全部打通。
7.3 Token Plan额度管控验证
短时间内连续多次发起接口请求,模拟高频调用场景,当消耗总量达到套餐Credits上限时,接口会返回额度不足、调用受限提示,代表Token Plan的额度管控规则正常生效。
八、全流程常见问题避坑指南
8.1 部署环境类故障
- Node版本过低,启动直接报错
现象:执行build命令出现语法报错。
解决:卸载旧版本Node,重新按照教程安装Node.js 20,重新登录终端刷新环境变量。 - 依赖安装大量gyp报错
现象:pnpm install过程编译失败。
解决:完整安装系统开发工具依赖,切换国内镜像,清理缓存后重装依赖。 - 服务器内存不足进程闪退
现象:pm2日志频繁显示OOM内存溢出。
解决:升级ECS实例内存规格,下调pm2内存限制,减少并发任务参数MAX_CONCURRENT_TASK。
8.2 百炼Token Plan配置故障
- 调用模型提示密钥无效
现象:接口返回鉴权失败。
排查步骤:检查密钥复制是否存在多余空格、确认使用Token Plan专属密钥而非按量计费普通密钥、核对配置文件中BASE_URL地址无误,修改完成重启Hermes服务。 - 额度充足但无法调用模型
现象:无报错但无AI返回内容。
解决:登录百炼后台确认对应模型已开启调用权限,核对配置文件内模型名称拼写正确。 - Credits消耗速度异常偏高
现象:短时间快速消耗套餐额度。
优化方案:开启上下文缓存机制,精简输入prompt冗余文本,简单问答切换轻量Qwen3.7 Plus模型,复杂推理再使用Max。
8.3 网络访问类故障
- 本地浏览器无法打开Hermes控制台
现象:页面访问超时。
排查:安全组32010端口未放行、服务未正常监听端口、服务器本地防火墙拦截端口,可临时关闭防火墙测试:ufw disable - 仅服务器本地可访问,公网无法连通
核心诱因:配置文件SERVER_HOST参数填写127.0.0.1,仅允许本机访问,修改为0.0.0.0后重启服务。 - 端口被其他程序占用
现象:启动日志提示端口占用。
查杀占用进程并终止:kill -9 $(ss -tlnp | grep 32010 | awk '{print $6}' | cut -d/ -f1)
8.4 进程托管与运维故障
- ECS重启后Hermes自动消失
解决:重新执行pm2 startup与pm2 save命令,修复开机自启脚本。 - 日志文件堆积占用磁盘空间
解决:创建定时清理脚本,定期删除过期日志:
脚本内容:vim /opt/ai_agent/hermes/log_clean.sh
赋予执行权限并配置每日凌晨自动运行:#!/bin/bash find /opt/ai_agent/hermes/logs -type f -mtime +14 -delete echo "过期日志清理完成:$(date)"chmod +x /opt/ai_agent/hermes/log_clean.sh crontab -e 0 1 * * * /opt/ai_agent/hermes/log_clean.sh
九、成本与运行优化方案
9.1 Token Plan选型优化
单人日常轻度使用选择标准坐席;每日高频多轮对话、多工具并行调度选择高级坐席;多智能体长期24小时运行、大批量文档处理选择尊享坐席,搭配共享用量包应对突发超额调用,避免触发高价按量计费。
9.2 模型调度优化策略
常规问答、文件整理、简单自动化任务固定使用Qwen3.7 Plus,大幅降低Credits消耗;仅超长文档解析、复杂数学逻辑、多步骤深度推理场景临时切换Qwen3.7 Max。合理开启上下文缓存,重复会话缓存Token享受折扣,减少额度消耗。
9.3 ECS资源优化
长期挂机运行推荐选用包年包月计费模式,相比按需付费成本更低;闲置时段可调整实例规格降低配置,业务高峰再临时升配;关闭服务器不必要后台进程,释放内存供Hermes Agent使用。
9.4 安全长期运行优化
- 定期更新Hermes Agent源码,获取功能更新与安全补丁:
cd /opt/ai_agent/hermes git pull pnpm install pnpm run build pm2 restart hermes-agent - 限制安全组访问IP,不长期开放全网0.0.0.0/0访问权限;
- 定期备份.env.production配置文件,防止重装实例丢失密钥与参数;
- 定期查看pm2运行日志,提前发现内存持续上涨、调用频繁失败等潜在隐患。
十、全文总结
本文完整覆盖阿里云ECS云服务器部署Hermes Agent智能体,搭配百炼Token Plan完成模型对接的全流程,从ECS资源选型、远程连接、系统环境搭建、源码部署、环境参数配置、安全组放行、进程后台托管,到分层连通性测试、高频故障排查、长期运维优化形成闭环完整教程。
整套部署流程适配零基础新手,全部操作代码可直接复制执行,核心难点集中在百炼密钥配置、端口网络放行、进程持久化运行三部分,也是故障高发区域,配套避坑指南能够快速处理绝大多数部署异常。
依托ECS稳定算力与Token Plan标准化额度管控,Hermes Agent可以实现7×24小时无人值守运行,兼顾轻量化部署、多工具自动调度、可控AI调用成本,适配个人开发、小型办公自动化、轻量AI任务处理等多种场景。使用者根据自身每日调用强度选择匹配的Token Plan坐席,搭配模型动态切换、日志自动清理、定时版本更新等优化手段,能够在保障智能体稳定运行的同时,最大化控制云上资源与大模型调用综合成本。