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-autostart reconcile,扫描 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 继续托管)

  1. 编辑 C:\Users\yunlu\.hermes-web-ui\config.json,删除 gatewayAutoStart.exclude 里的 "mano"(或整个文件删除)
  2. 重启 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"'
  3. 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 profileC:\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