目录

前言

坑一:raw.githubusercontent.com DNS 解析失败

现象

原因

解决方法

坑二:C:\Windows\System32\node 幽灵文件冲突

现象

排查过程

解决方法

总结


最近尝试安装 NousResearch 开源的 Hermes Agent,安装过程中踩了两个比较典型的坑,折腾了好一阵才解决。把整个过程记录下来,希望能帮到遇到同样问题的同学。

本文环境:Windows 11,国内网络。


坑一:raw.githubusercontent.com DNS 解析失败

现象

运行 Hermes Setup 后,日志反复报错:

 ERROR hermes_bootstrap_lib::bootstrap: bootstrap FAILED
 error=resolve install script failed: 
 GET https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1: 
 client error (Connect): dns error: 
 请求的名称有效,但是找不到请求的类型的数据。 (os error 11004)

程序尝试从 raw.githubusercontent.com 下载安装脚本 install.ps1,但 DNS 解析返回空结果,连接失败。

原因

raw.githubusercontent.com 在国内网络环境下经常被 DNS 污染或屏蔽,Windows 错误码 11004(WSANO_DATA)表示 DNS 查询成功但返回了空数据。

解决方法

方法一:修改 hosts 文件(推荐)

以管理员身份打开记事本,编辑 C:\Windows\System32\drivers\etc\hosts,在末尾添加:

 185.199.108.133 raw.githubusercontent.com

保存后刷新 DNS 缓存:

 ipconfig /flushdns

如果该 IP 不可用,可以尝试以下备用 IP:

 185.199.109.133 raw.githubusercontent.com
 185.199.110.133 raw.githubusercontent.com
 185.199.111.133 raw.githubusercontent.com

方法二:更换 DNS 服务器

将网络适配器的 DNS 修改为 114.114.114.1148.8.8.8

方法三:使用代理

确保代理/加速器已开启全局(TUN)模式。


坑二:C:\Windows\System32\node 幽灵文件冲突

现象

解决了 DNS 问题后,脚本成功下载并开始执行安装步骤,uvPythonGit 三个阶段都顺利通过,但卡在了 node 阶段:

 程序"node"无法运行: Application not found
 所在位置 C:\Users\LENOVO\AppData\Local\hermes\bootstrap-cache\install-main.ps1:767

排查过程

1. 确认 Node.js 是否已安装

 D:\NodeJs\Node\node.exe --version
 # 输出: v22.20.0

Node.js 本身没问题,已安装在 D:\NodeJs\NodePATH 中已配置了该路径。

2. 检查系统是如何解析 node 命令的

 where.exe node

输出:

 C:\Windows\System32\node          ← 系统优先匹配到了这个
 D:\NodeJs\Node\node.exe           ← 实际安装的 node

3. 查看这个神秘文件

 dir C:\Windows\System32\node

输出:

 Mode       LastWriteTime     Length  Name
 ----       -------------     ------  ----
 -a----     2025/10/13        0       node

一个 0 字节的空文件,根本不是真正的 Node.js 可执行文件。它可能是某个程序卸载后留下的残留,或者 Windows 应用执行别名生成的占位。最关键的是,C:\Windows\System32PATH 中的位置排在 D:\NodeJs\Node 前面,所以每次敲 node 命令时,系统会优先找到这个假文件,尝试运行它,然后就报"找不到应用程序"。

解决方法

用管理员权限打开 PowerShell(Win + R → 输入 powershell → 按 Ctrl + Shift + Enter),执行:

 Remove-Item C:\Windows\System32\node -Force

删除后新开一个普通 PowerShell 窗口验证:

 node --version
 # 输出: v22.20.0 → 修复成功

总结

问题 根因 解决
DNS 解析失败 国内网络无法访问 raw.githubusercontent.com 修改 hosts 文件绑定 GitHub IP
node 命令找不到 C:\Windows\System32 中存在 0 字节幽灵文件 用管理员权限删除该假文件

这两个问题本质上都是"路径劫持"——前者是 DNS 层面的域名劫持,后者是文件系统层面的命令劫持。思路类似:找到正确的源,把挡在前面的假货干掉。

希望这篇记录对你有帮助。如果你在安装 Hermes Agent 时遇到其他问题,欢迎在评论区交流。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐