Hermes安装踩坑指北

admin 2026-07-13 05:39:58 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细记录了在Windows10环境下安装Hermes桌面端时遇到的三个主要问题及解决方案:卡在安装ripgrep和ffmpeg时需手动通过winget或下载安装包并配置环境变量;BuildingDesktopApp失败因缺少gitcommit信息,需手动克隆仓库到指定目录;CloningHermesrepository失败同样可通过手动克隆解决。此外还提供了uv、pip、npm镜像配置及Playwright下载失败的解决方法,并概述了脚本安装流程和安装后配置步骤。 综合评分: 88 文章分类: 安全工具,实战经验


cover_image

Hermes 安装踩坑指北

原创

cosmic cosmic

無相安全团队

2026年7月6日 10:39 广东

在小说阅读器读本章

去阅读

听说大家都在用hermes,我也小小尝试了一番,过程中还是有挺多坑的,写个文档记录一下,给佬友们参考。

安装环境:win10,使用hermes的exe桌面端安装包安装

官方安装方式有:

一行安装命令(Linux / macOS / WSL2)

基于 git 的安装方式,跟踪 main 分支,可立即获取最新变更:

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

Windows(原生,PowerShell)

原生 Windows 无需 WSL 即可运行 Hermes——CLI、gateway、TUI 和工具均可原生运行。原生安装与 WSL2 安装可干净共存,原生数据位于 %LOCALAPPDATA%\hermes,WSL 数据位于 ~/.hermes

打开 PowerShell 并运行:

iex(irmhttps://hermes-agent.nousresearch.com/install.ps1)

桌面安装程序(Hermes Desktop.exe)

本质上是调用上述install.ps1进行安装


开始安装,开了全局,然后让它自己自动装

第一个坑:卡在安装ripgrep and ffmpeg

这个错误很常见,因为命令问题很多都装不上

解决方法

打开终端手动下载

wingetinstallBurntSushi.ripgrep.MSVC
wingetinstallGyan.FFmpeg

# 安装完成后验证是否安装成功
rg--version
ffmpeg-version

PS

由于ffmpeg体积比较大,拉取速度过慢又或者装不上的话可以手动去下载安装包

地址:https://github.com/BtbN/FFmpeg-Builds/releases

选择

ffmpeg-n7.1-latest-win64-gpl-7.1.zip 或 ffmpeg-n8.1-latest-win64-gpl-8.1.zip都可以

下载完成后解压放在你喜欢的地方,这里以C:\ffmpeg为例

  1. 双击进入你刚刚放好的 ffmpeg 文件夹。
  2. 双击进入里面的 bin 文件夹(在里面你应该能看到 ffmpeg.exeffplay.exe 等文件)。
  3. 复制bin路径(例如:C:\ffmpeg\bin)。

添加至 Windows 环境变量

  1. 进入设置,找到 环境变量(或者命令启动sysdm.cpl)。
  2. 选择并点击 “编辑系统环境变量”(或者“编辑账户的环境变量”均可)。
  3. 在弹出的系统属性窗口中,点击右下角的 “环境变量” 按钮。
  4. 在 “系统变量”(或者上方的用户变量)列表中,向下滚动找到叫 Path 的那一项,双击它。
  5. 在右侧点击 “新建” 按钮,此时左侧列表最下方会出现一个空白输入框。
  6. 将刚才复制的 bin 文件夹路径(例如 C:\ffmpeg\bin)放进去。
  7. 依次点击所有的 “确定” 按钮关闭所有弹窗,保存设置。

验证

ffmpeg -version

如果出现包含“ffmpeg version n7.1…”的版本信息,说明配置成功

可以重新启动安装程序了


看着它拉仓库/装依赖/配套组件,在耗费了将近2个大G流量之后,遇到了

第二个坑:Building Desktop App 失败

查看日志 \AppData\Local\hermes\logs\bootstrap-installer.log

2026-07-04T16:31:59.913794Z  INFObootstrap.log:[OK]Desktopworkspacedependenciesinstalledstage=desktop
2026-07-04T16:31:59.915851Z  INFObootstrap.log:->Buildingdesktopapp(thistakes1-3minutes)...stage=desktop
...
2026-07-04T16:32:00.721902Z  INFObootstrap.log:>[email protected]=desktop
2026-07-04T16:32:00.722379Z  INFObootstrap.log:>nodescripts/assert-root-install.cjs&&nodescripts/write-build-stamp.cjs...
...
2026-07-04T16:32:00.963401Z  INFObootstrap.log:[write-build-stamp]ERROR:couldnotdeterminegitcommit.stage=desktop
2026-07-04T16:32:00.963563Z  INFObootstrap.log:   -$GITHUB_SHAnotsetstage=desktop
2026-07-04T16:32:00.963848Z  INFObootstrap.log:   -`gitrev-parseHEAD`failedatC:\Users\AppData\Local\hermes\hermes-agentstage=desktop
2026-07-04T16:32:00.964089Z  INFObootstrap.log:Packagedbuildsrequireagitreftopinfirst-launchinstall.ps1against.stage=desktop
2026-07-04T16:32:00.964282Z  INFObootstrap.log:against.Runfromagitcheckoutorset$GITHUB_SHAexplicitly.stage=desktop
2026-07-04T16:32:00.969081Z  INFObootstrap.log:npmerrorLifecyclescript`build`failedwitherror:stage=desktop
2026-07-04T16:32:00.969303Z  INFObootstrap.log:npmerrorcode1stage=desktop

原因分析

  • Desktop 打包脚本需要一个「确定的 git commit」,用来给 install.ps1 写入版本信息;
  • 安装脚本因为某些问题,拉取的是一个“不完整仓库”(或者纯 ZIP), git rev-parse HEAD 失败;
  • 脚本看到既没有 $GITHUB_SHA 环境变量,也拿不到 git rev-parse HEAD,于是直接报错退出。

如果你此时打开\AppData\Local\hermes\会发现以下文件夹,这是拉取失败自动将旧文件夹更名为:

企图将旧文件夹名改成hermes-agent蒙混过关是没用的

#

解决方法

最便捷的是手动克隆:

git clone https://github.com/NousResearch/hermes-agent
# 无需代理版
git clone https://gitcode.com/GitHub_Trending/he/hermes-agent.git

克隆下来之后,将整个仓库文件放在*\AppData\Local\hermes\hermes-agent文件夹中

  • 或者不用下载后再移到的一步到位版
  # 切换到hermes目录,启动 cmd 或 powershell
  git clone https://github.com/NousResearch/hermes-agent.git hermes-agent

验证一下是否有效:

git rev-parse --is-inside-work-tree   # 应该输出 true
git status --short                    # 命令成功,输出可为空
git rev-parse --verify HEAD           # 输出一个 commit SHA

如果这里输出以上内容,说明有效

重启安装程序即可


第三个坑:Cloning Hermes repository 失败

本质上和上一部分一样,照搬即可。


其他问题汇总

其他问题的话安装程序大多会自动处理,保证连接网络稳定畅通即可

  1. #### uv 和 pip 安装失败
# uv镜像配置
exportUV_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/
# or
exportUV_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple/

# pip镜像配置
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set global.trusted-host mirrors.aliyun.com
  1. #### Node.js 和 npm 安装失败
# npm镜像配置
npm config set registry https://registry.npmmirror.com
# 验证
npm config get registry
# 正常输出: https://registry.npmmirror.com

# 手动装Node
# 打开hermes-agent目录
npm install --registry=https://registry.npmmirror.com
# 打开\hermes\hermes-agent\scripts\whatsapp-bridge目录
npm install --registry=https://registry.npmmirror.com
  1. Playwright 下载失败

    这个浏览器大约150MB,很容易网络波动下载失败。

   # 设置镜像地址
   exportPLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright
   # 切换到hermes-agent目录
   npx playwright install chromium

或者不需要浏览器工具的,可以跳过安装(此方法尚未验证)

   # 修改config.yaml,禁用 browser 工具
   hermes config set tools.browser.enabled false

脚本安装流程概览(用作参考)

install-main.ps1为例

  1. Prereqs(前置依赖)

  2. uv:安装/检测 Astral 的 uv 包管理器;

  3. python:检测/安装 Python 3.11(可 fallback 3.12 / 3.13 / 3.10);

  4. git:检测或安装 Git;

  5. node:检测 Node.js(用于浏览器工具 / 桌面端);

  6. system-packages:检测/安装 ripgrep 和 ffmpeg

  7. Install(主体安装)

  8. repository:下载 Hermes 仓库到 $InstallDir(默认 %LOCALAPPDATA%\hermes\hermes-agent);

  9. venv:在该目录下创建虚拟环境 venv

  10. dependencies:通过 uv.lock 安装 Python 依赖;

  11. node-deps:通过 npm 安装浏览器工具和 Playwright 浏览器;

  12. desktop(IncludeDesktop=true 时):安装 Electron 依赖并构建桌面 app。

  13. Finalize(收尾)

  14. path:把 Hermes 加到 PATH(例如创建 shim 到 bin);

  15. config-templates:写入默认配置模板;

  16. platform-sdks:安装各消息平台所需 SDK;

  17. bootstrap-marker:标记安装完成。

  18. Post-install(可交互步骤)

  19. configure:配置 API Key / 模型 / Provider(交互式);

  20. gateway:按需启动消息网关(Telegram/Discord 等)。

#

安装过程中会落地的东西

大致包括:

  • Python 相关

  • uv.exe:Rust 写的 Python 包管理器;

  • 管理的虚拟环境 hermes-agent\venv

  • 各种 Python 库:FastAPI、OpenAI SDK、google 系列库、MCP、TUI 等。

  • Node / 浏览器相关

  • Chromium / Chrome for Testing;

  • Firefox;

  • ffmpeg 组件等;

  • agent-browser / camofox-browser 等 npm 包;

  • Playwright 的浏览器集合(存放在%LOCALAPPDATA%\ms-playwright):

  • Electron 运行时 & 打包后的桌面 Hermes 应用。

  • 系统工具

  • ripgrep:快速搜索工具;

  • ffmpeg:用于语音消息 TTS 等。

  • Hermes 自身

  • hermes CLI 启动脚本(在 venv 的 Scripts 目录 + PATH shim);

  • 桌面应用 Hermes.exe(IncludeDesktop 时)。


安装完成后

1.欢迎界面

 2.等待初始化

3.配置模型

选择厂商,输入key即可

这里我用的gemini

4.正式页面(可在设置中切换为中文以及开启超可爱的宠物,输入框中输入/pet也可以)


Hermes设置代理

目前Hermes设置中是没有代理设置选项的

可以通过编辑\AppData\Local\hermes\.env实现

打开文件,任意地方插入两行:

# 更改为你的实际代理地址
HTTP_PROXY=http://127.0.0.1:1234
HTTPS_PROXY=http://127.0.0.1:1234

免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:無相安全团队 cosmic cosmic《Hermes 安装踩坑指北》

[ACTF2020新生赛]Upload 网络安全文章

[ACTF2020新生赛]Upload

文章总结: 本文档记录了ACTF2020新生赛Upload题目的解题过程。题目为Web类型,涉及文件上传漏洞。解题者上传一句话木马后遭遇后缀过滤,通过尝试将后缀
评论:0   参与:  0