BOSh
文章227
标签320
分类74
315晚会 36氪 80后 ADB AI AI Agent AI 代理 AI 助手 AI 网关 AI 评测 AI助手 AI大模型 AI安全 AI应用 AI智能体 AI网关 API API 集成 Agent AionUi Android Automation C++ CLI CLI Proxy API CLIProxyAPI CRM Chrome 插件 Claude Opus 4.6 ConnectBot Debian DeepSeek DenchClaw DevOps Docker GEO GPL GPS GPU Gemini Gemini 3.1 Pro GitHub Gmail Gog Google AI Pro Google API Google Gemini HKUDS Hermes Hermes Agent Hexo Hugo IPV6 Jetpack Compose Kimi-K2.5 Kotlin LINUX LaTeX Linux Markdow Markdown MemU Bot MiniMax NAT64 NIX NODE NVIDIA Build NanoClaw Netcatty Newsletter Open WebUI OpenAI OpenAI 兼容接口 OpenCLI OpenClaw PDF 编译 PicoClaw Prismer QClaw QQ机器人 RAG Reddit Rust SFTP SSH Skills Subagent SuperCall Telegram Bot WebSSH Windows WorkBuddy X X热榜 YouTube ZeroClaw arXiv arch c++ git hugo iMessage n8n nanobot node js ntfs pacman podman zz.ac 东海 两性关系 个人助理 中东 中东冲突 中东局势 中关村论坛 中南大学 中国 中美 习惯养成 云同步 亚洲 代理 以色列 任务管理 伊朗 伊朗危机 伊朗战争 伦理 体育 保护主义 信息流 信息管理 停火 健康管理 光通信 免费试用 共和党 养老金 内容工厂 内容生产 内容筛选 军事冲突 军事动态 军民融合 农村 分享 创业 办公自动化 加密 加密货币 加沙 北斗 医学生 半导体 华为 博客 博客助手 博客部署成功 卫星 原生 JS 反重力 台海局势 台湾 命令 喷嚏网 国产 国产化 国产替代 国际 国际关系 国际局势 国际新闻 图卦 图说 地缘政治 基础设施 多代理 多模态AI 大学分析 大模型 孙少平 学习 安全 实时监控 家庭助理 家庭服务器 家装设计 工作总结 工作效率 工作流编排 工具链 平凡的世界 平台责任 开发 开发实录 开源 开源项目 张雪峰 微信 心理健康 情感 战争 投资工具 指标看板 提示词工程 播客 收件箱清理 效率 效率工具 教程 教育制度 数据分析 数据投毒 文献管理 新能源汽车 新闻汇总 日历聚合 时事 时事总结 显卡 晨报 智能体 智能体生态 朝鲜 架构 架构实践 核协议 核武器 桌面Cowork 模型接入 每日图说 比亚迪 油价 活动运营 浏览器自动化 消息通道 消费者权益 渔船 游戏开发 湘雅医院 热点新闻 版本更新 特朗普 生态系统 生活 生活自动化 生物识别 用例 甲骨文云 电池技术 症状追踪 皮皮虾 监管 目标管理 知识库 社交媒体 社会保障 社会百态 社会观察 科技 科研助手 笔记 第一财经 算法推荐 纽森 经济 经济观察 经验分享 编程 网关 网络 网络安全 美伊关系 美伊冲突 美国 美国大选 美国政治 能源安全 能源市场 腾讯 腾讯,龙虾,OpenClaw 腾讯云 自动化 自动化创作 自动化协作 自动化提醒 自动化流水线 自动化运维 自律教练 自由软件 行为改变 视频摘要 记录 许可证 论文写作 论文阅读 语义搜索 语音代理 读书 读书笔记 读后感 财报季 路遥 迁移 运维 远程运维 邀请确认 部署指南 量子计算 销售自动化 阅读感悟 随笔 霍尔木兹海峡 项目管理 飞书 高中生活 高考志愿 黎巴嫩 龙虾

一言

文章归档

Windows 也能跑 Hermes Agent!完整安装教程 + 飞书接入,全程避坑

Windows 也能跑 Hermes Agent!完整安装教程 + 飞书接入,全程避坑

Hermes Agent 这东西,Linux/Mac 上跑得很丝滑,但换到 Windows 上就各种水土不服。我花了一整天把坑踩完,这里把完整流程和四个典型兼容性问题一次性说清楚,照着走就行。

一、一键安装

打开 PowerShell,建议用管理员权限跑,省得后面权限问题纠缠不清:

1
irm https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1 | iex

脚本会自动检测 Python、Node.js、Git、ripgrep 这些依赖并装好。网速正常的话,几分钟搞定。

二、初始配置

装完自动进配置向导,选第一项 Quick setup 就行,别折腾手动配置。

2.1 配置模型供应商

按自己情况选。本文以 Kimi 为例,选完填 API Key 即可。

2.2 跳过消息平台配置

向导里的消息平台列表暂时没有飞书选项,直接跳过。飞书后面通过 Gateway 单独接,比向导里配更可控。

接下来的自动化步骤输入 Y 确认。看到欢迎界面,安装就算完成了。

2.3 ⚠️ 坑一:模型未被识别

装完发现模型没正确识别?别慌。这个问题不确定是不是 Windows 特有,但解决方式很简单,用内置命令 /model 手动指定一下,模型名正确显示就行了。

三、接入飞书

3.1 创建飞书机器人应用

去飞书开放平台新建一个机器人应用。配置流程跟小龙虾那篇教程一样,不重复了。没看过的先去补课。

3.2 配置 Gateway

新开一个 PowerShell 终端,跑:

1
hermes gateway setup

在渠道列表里选飞书,然后依次填 App ID 和 App Secret。

几个关键选项说明:

  • 来源:国内版填 feishu,海外版填 lark
  • 连接方式:默认 websocket,直接回车
  • 允许的 User ID:留空;鉴权那步输入 1(不限制对话人),群里所有人都能跟机器人交互。有权限需求的话按需填写

确认信息无误,选 Done 保存。

3.3 ⚠️ 坑二:缺少 lark-oapi 依赖

hermes gateway 启动时 Windows 下大概率报错,因为 Hermes 的 venv 里没有飞书 SDK lark-oapi

关键点:hermes gateway 用的是内置 venv 的 Python,不是系统环境。所以必须把依赖装进 venv:

1
2
3
4
5
6
7
8
# 第一步:定位 Hermes 可执行文件,找 venv 路径
Get-Command hermes | Select-Object -ExpandProperty Source

# 第二步:确认 venv 的 Scripts 目录
ls "C:\Users\<用户名>\AppData\Local\hermes\hermes-agent\venv\Scripts"

# 第三步:用 uv 装进 venv
uv pip install lark-oapi --python "C:\Users\<用户名>\AppData\Local\hermes\hermes-agent\venv\Scripts\python.exe"

<用户名> 换成你自己的 Windows 用户名,下文同理。

四、消息不响应?逐步排查

重新跑 hermes gateway 后去群里 @ 机器人,如果没反应,按这个顺序查:

第一步:检查飞书机器人权限配置是否完整,对照小龙虾那篇教程的权限清单逐一核对。

第二步:权限没问题的话,大概率是下面两个 Windows 兼容性 bug,按顺序修。

4.1 ⚠️ 坑三:status.py 的 Windows 兼容性 Bug

问题根源:status.pyos.kill(pid, 0) 检查进程存活状态,但 Windows 上这调用会抛 WinError 11。原始代码没捕获这个异常,Gateway 进程直接挂了。

修复方案:把 OSError 加进异常捕获,让 WinError 11 被当成"进程不存在"处理:

1
2
3
4
5
6
7
8
9
10
11
12
python -c "
path = r'C:\Users\<用户名>\AppData\Local\hermes\hermes-agent\gateway\status.py'
with open(path, 'r', encoding='utf-8') as f:
content = f.read()
content = content.replace(
'except (ProcessLookupError, PermissionError):',
'except (ProcessLookupError, PermissionError, OSError):'
)
with open(path, 'w', encoding='utf-8') as f:
f.write(content)
print('Done')
"

验证一下:

1
2
3
4
5
6
7
python -c "
path = r'C:\Users\<用户名>\AppData\Local\hermes\hermes-agent\gateway\status.py'
with open(path, encoding='utf-8') as f:
for i, line in enumerate(f, 1):
if 'OSError' in line:
print(f'Line {i}: {line.rstrip()}')
"

输出里有 OSError 就说明 patch 生效了。

顺手修个日志编码问题(可选):Windows 下 Gateway 日志的 Unicode 符号可能乱码,启动时加环境变量就行:

1
2
$env:PYTHONUTF8 = "1"
hermes gateway

4.2 ⚠️ 坑四:config.yaml 缺少飞书配置段

patch 后机器人还是没反应?打开 config.yaml 看看,根本没有 feishu 配置段。

问题出在消息拦截的两道关卡:

第一道(Policy Gate):FEISHU_GROUP_POLICY 默认 allowlist,但 FEISHU_ALLOWED_USERS 为空。所有消息在这关就被丢了,根本走不到 @ 检测。

第二道(Mention Gate):过了 Policy Gate 还得验证 @ 的对象是不是当前 Bot,这依赖 Bot 的 open_id / user_id / name 正确加载。

修复步骤,先把 Policy 改成 open:

1
Add-Content "$env:LOCALAPPDATA\hermes\.env" "`nFEISHU_GROUP_POLICY=open" -Encoding UTF8

再修正 config.yaml 里错误的配置键:

1
2
3
(Get-Content "$env:LOCALAPPDATA\hermes\config.yaml" -Raw -Encoding UTF8) `
-replace "feishu:\r?\n require_mention: false", "feishu:`n default_group_policy: open" |
Set-Content "$env:LOCALAPPDATA\hermes\config.yaml" -Encoding UTF8 -NoNewline

然后以详细日志模式重启 Gateway:

1
2
$env:PYTHONUTF8 = "1"
hermes gateway run -vv

日志无报错,配置就生效了。

五、配置飞书事件订阅

最后一步:去飞书开放平台,在应用的事件订阅页面开启长连接模式。

完成后在飞书群里 @ 机器人,应该就能正常对话了。

总结

Windows 上跑 Hermes Agent 确实比 Linux 多踩不少坑:模型识别、lark-oapi 缺失、status.py 的 WinError 11、config.yaml 配置段缺失。但只要按顺序一个个修,最终跑起来还是稳的。有问题评论区见。


本文由 BOSH 的博客助手 HerMes 整理 🦔

原文链接:https://developer.aliyun.com/article/1725007

本文作者:BOSh
本文链接:http://bosh.zz.ac/posts/485212839.html
版权声明:本文由BoSh发布,部分内容来源于网络。