Mano 彻底休眠记录(2026-08-12)
操作人:Alaya(WSL)|状态:✅ 已休眠 目的:停止 mano 的 gateway/dashboard 且防止自动拉起,保留 profile 数据(未删除任何文件)
一、休眠做了什么
1. 找到”杀不死的根源”:hermes-web-ui 自动拉起
mano 被杀后总是复活,根因不是 nssm 服务,而是 hermes-web-ui(Hermes Studio,Windows 端 node 服务,端口 8658):
- web-ui 启动时会执行
gateway-autostartreconcile,扫描profiles/目录下所有 profile,逐个hermes gateway run --replace - profiles 目录里有:anchor / mano / worker-a / worker-b / worker-c → 全被拉起
2. 根治:web-ui 配置 exclude mano
web-ui 支持 gatewayAutoStart.exclude 配置(HGI 过滤逻辑)。
配置文件:C:\Users\yunlu\.hermes-web-ui\config.json
(web-ui 的 appHome = ~/.hermes-web-ui,config.json 原本不存在,新建)
{
"gatewayAutoStart": {
"exclude": ["mano"]
}
}改完后重启 web-ui(杀 node 进程 → 重新执行 VBS hermes_task_hidden.vbs "webui-8658")→ 生效。
⚠️ 注意:exclude 只影响 gateway。mano 的 dashboard(9119 端口)是另一套逻辑,web-ui 仍会拉起 → 需要手动清掉残留 dashboard 进程(见下)。
3. 清理进程
# 杀 mano gateway(8646 端口)——随 web-ui 退出自然消失
# 杀 mano dashboard 残留(9119,孤儿链,父进程已死但子进程存活)
Get-CimInstance Win32_Process | Where-Object {
$_.CommandLine -match 'dashboard' -and $_.CommandLine -match 'mano' -and $_.Name -match 'python'
} | ForEach-Object { Invoke-CimMethod -InputObject $_ -MethodName Terminate | Out-Null }清理后:mano 进程 = 0,8646 端口关闭。
4. 未做/受限项
| 项目 | 状态 | 说明 |
|---|---|---|
Hermes-Mano-Gateway 服务禁用 | ⚠️ 未做 | 需管理员权限(Access Denied 5) |
| nssm 服务指向 | 无害 | AppDirectory/HERMES_HOME 指向旧路径 C:\Users\yunlu\.hermes\...,即使自启也会启动失败退出,实际零影响 |
二、休眠后状态验证(2026-08-12)
- mano 进程:0
- 8646(mano gateway):关闭
- 8647(anchor gateway):正常运行(不受影响)
- 8658(web-ui):正常运行(已加载 exclude 配置)
- 稳定 30 秒无复活
三、取消休眠(唤醒 mano)
方法 A:改回 web-ui 配置(推荐,让 web-ui 继续托管)
- 编辑
C:\Users\yunlu\.hermes-web-ui\config.json,删除gatewayAutoStart.exclude里的"mano"(或整个文件删除) - 重启 web-ui:
# 杀 web-ui(node 进程,端口 8658) Get-CimInstance Win32_Process | Where-Object { $_.CommandLine -match 'hermes-web-ui' } | ForEach-Object { Invoke-CimMethod -InputObject $_ -MethodName Terminate | Out-Null } # 重新拉起 Start-Process -FilePath 'C:\Windows\System32\wscript.exe' -ArgumentList '"C:\Users\yunlu\AppData\Local\hermes\scripts\hermes_task_hidden.vbs" "webui-8658"' - web-ui 重启后会自动拉起 mano gateway(8646 恢复监听)
方法 B:手动启动(不经过 web-ui)
# 直接启动 mano gateway
& 'C:\Users\yunlu\AppData\Local\hermes\hermes-agent\venv\Scripts\hermes.exe' --profile mano gateway run --replace验证唤醒成功
netstat -ano | Select-String '8646' # mano gateway 应监听四、附:关键路径速查
| 项 | 路径 |
|---|---|
| mano profile | C:\Users\yunlu\AppData\Local\hermes\profiles\mano\ |
| mano config | ...\profiles\mano\config.yaml(platforms: anet + webhook,无 discord) |
| web-ui 配置 | C:\Users\yunlu\.hermes-web-ui\config.json |
| web-ui 启动 | C:\Users\yunlu\AppData\Local\hermes\scripts\hermes_task_hidden.vbs “webui-8658” |
| nssm 服务 | Hermes-Mano-Gateway(指向旧路径,实际不工作) |
| mano 端口 | gateway 8646 / dashboard 9119 |
五、相关背景
- mano 实际只有 webhook + anet 平台(无 Discord),gateway 主要服务 web-ui 的 gateway 管理
- 曾有 36 个 dashboard 重复进程(web-ui 反复拉起的孤儿),已全部清理
- 本记录由 Alaya 于 2026-08-12 写入,同步更新 windows-agent-ops skill