离线部署Hermes Agent推荐使用预打包离线安装包:获取含install.sh、源码zip、uv二进制及Python3.11的离线包,修改脚本插入exit 0跳过git clone,解压源码至~/.hermes/src/,用uv创建虚拟环境并pip install -e . --find-links ./wheels --no-index安装。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您需要在无外网连接的服务器或内网环境中部署 Hermes Agent,则无法直接执行官方在线安装脚本,因其依赖 GitHub 源码拉取与 PyPI/uv 仓库下载。以下是实现离线部署的多种可行路径:
一、使用预打包离线安装包(推荐)
该方法基于官方 install.sh 脚本逻辑,但将所有远程依赖(uv、Python 3.11 运行时、hermes-agent 源码、pip 包缓存)预先整合为本地可执行资源,避免任何网络请求。
1、从可信渠道获取完整离线包(含 install.sh + hermes-agent-main.zip + uv-binary + python-3.11-embed-amd64.zip)并解压至 Linux 用户主目录 ~ 下。
2、修改 install.sh 文件,在 git clone 步骤前插入 exit 0 命令,强制中断联网行为。
3、执行 chmod +x install.sh && ./install.sh 启动环境初始化流程。
4、脚本运行至提示“Cloning into 'hermes-agent'...”前会自动退出,此时手动解压 hermes-agent-main.zip 到 ~/.hermes/src/ 目录。
5、进入 ~/.hermes/src/ 目录,运行 uv venv --python=python3.11 && source .venv/bin/activate。
6、执行 pip install -e . --find-links ./wheels --no-index 安装所有 wheel 本地包(需提前将依赖 wheel 放入 ./wheels 子目录)。
二、基于 Docker 构建离线镜像
该方法适用于已具备 Docker 环境且允许导入镜像的离线节点,所有构建阶段均在有网机器完成,最终仅导出 tar 镜像文件供离线加载。
1、在联网机器上创建 Dockerfile,基础镜像选用 python:3.11-slim,并 COPY 官方源码、requirements.txt 和离线 wheel 包。
2、RUN pip install --find-links ./wheels --no-index -r requirements.txt 完成全部 Python 依赖安装。
3、RUN pip install -e . 将 Hermes Agent 以开发模式安装进镜像。
4、ADD entrypoint.sh /entrypoint.sh 并设置 CMD ["/entrypoint.sh"] 启动代理服务。
5、执行 docker build -t hermes-offline:latest . 构建镜像。
6、执行 docker save hermes-offline:latest > hermes-offline.tar 将镜像保存为归档文件。
7、将 hermes-offline.tar 复制至目标离线服务器,运行 docker load
8、执行 docker run -d --name hermes -p 8000:8000 -v ~/.hermes:/root/.hermes hermes-offline:latest 启动容器。
三、手动构建离线 wheel 依赖树
该方法适用于对环境控制要求极高、需审计每个依赖来源的场景,通过 pip download 在联网机器完整捕获 Hermes Agent 所需全部 wheel 文件及其传递依赖。
1、在联网机器新建临时目录,cd 进入后克隆官方仓库:git clone https://github.com/NousResearch/hermes-agent.git。
2、创建干净虚拟环境:python3.11 -m venv offline-env && source offline-env/bin/activate。
3、执行 pip download -r hermes-agent/requirements.txt --no-deps --platform manylinux2014_x86_64 --only-binary=:all: --python-version 311 --abi cp311 -d wheels/。
4、对每个未满足的依赖,递归执行 pip download --no-deps --platform ... -d wheels/ 直至 wheel 目录中包含全部 .whl 文件(不含 .tar.gz)。
5、将整个 wheels/ 目录与 hermes-agent/ 源码一同复制至离线机器。
6、在离线机器上创建新 venv,激活后执行 pip install --find-links ./wheels --no-index -e ../hermes-agent。
7、验证安装:hermes --version 应输出版本号,且 ~/.hermes/ 目录结构完整生成。
四、SUSE 11 SP4 等老旧系统适配方案
针对 SUSE 11 SP4 等不支持现代 Python 版本或缺乏编译工具链的系统,需采用静态链接与预编译二进制替代标准安装流程。
1、在兼容目标系统的构建机(如相同内核版本的 Docker 容器)中安装 pyinstaller 与 uv。
2、使用 uv venv --python=3.11.9 和 pip install -e . 构建可运行环境。
3、执行 pyinstaller --onefile --add-data "~/.hermes;./.hermes" --hidden-import="uv" hermes/__main__.py 生成单体可执行文件。
4、将生成的 dist/hermes 文件及配套的 ~/.hermes/config.yaml、.env 等配置模板打包为离线部署包。
5、在 SUSE 11 SP4 目标机器上解压部署包,赋予 hermes 可执行权限:chmod +x hermes。
6、执行 LD_LIBRARY_PATH=./lib ./hermes --setup 启动初始配置向导(所有依赖库已静态打包进 lib/ 子目录)。
五、Windows 离线部署(PowerShell 兼容版)
该路径绕过 install.ps1 的联网检测机制,改用本地资源注入方式完成 Windows 环境下 Hermes Agent 的零外网安装。
1、在联网 Windows 机器上下载 install.ps1 脚本,并使用 Notepad++ 打开,搜索 "git clone" 行并注释掉整段 clone 逻辑。
2、下载 Python 3.11 Embeddable Zip、Node.js 18.x Windows Binary、Git for Windows 安装包(.exe)、ripgrep-14.1.0-x86_64-pc-windows-msvc.zip。
3、将上述全部二进制压缩包与 hermes-agent-main.zip 一同放入 C:\hermes-offline\ 目录。
4、编写 setup-local.ps1 脚本,依次解压 Python、Node、Git 到 C:\hermes-env\,并将 PATH 注入注册表 CurrentUser\Environment。
5、解压 hermes-agent-main.zip 到 C:\hermes-env\src\,执行 C:\hermes-env\python\python.exe -m pip install -e C:\hermes-env\src。
6、运行 setup-local.ps1 完成本地环境搭建。
7、执行 hermes gateway setup 时,手动指定飞书 App ID/Secret 并跳过自动依赖安装步骤,因 lark-oapi 已预装于 C:\hermes-env\src\wheels\ 中。
8、关键验证点:hermes --help 必须正常输出命令列表,且 hermes gateway status 返回 active 状态。


















