← 全部内容
2026-05-14 风险提醒 关注

Hermes 最新可靠性问题集中在 Web UI 消失消息、压缩失败、vision fallback 和 dashboard auth

这个窗口里最值得读的 Hermes cluster,是 visible state 和 model state 能不能保持一致。Issue #25583 报告 Web UI SSE 断开后,已经完整渲染的 assistant reply 会突然消失,另一个 session 的内容会短暂串到当前 session,或者 raw Python content-block JSON 被当聊天文本显示;根因是浏览器 stream 掉线时 `_handle_run_events()` 在 `finally` 里销毁 run event queue,而 agent 仍在运行。Issue #25585 和 PR #25588 处理更危险的 model-state 问题:automatic context compression 在 summary generation 失败时,会插入 “summary unavailable” 静态标记,但仍然丢掉中间 turns;修复后改为返回原始 messages,不做破坏性压缩,并记录 warning state。Issue #25594 指出 models.dev registry 不认识的 custom providers 可能收到 text+image multipart tool results,即使模型本身 text-only,最终触发 `text is not set` 这类 HTTP 400;#25602 则要求 dashboard 能看见并测试 vision、compression 等 auxiliary fallback chains。旁边 PR 也围绕可靠性:#25577 支持 anyOf / oneOf schema 的 tool arg coercion,#25580 把 cloud browser providers 迁到 plugins,#25584/#25587 修无按钮平台上的多选 clarify text fallback,#20515 在配置 Tailscale allowlist 时用身份头保护 dashboard HTML/assets 和 WebSocket。

影响观察中 来源3 对象operator · developer · team
为什么重要

Transcript 看起来正常,不代表 model-facing context 没丢,也不代表 session 没串。Web UI stream recovery、compression failure behavior、multimodal capability detection、dashboard auth 都不炫,但决定了 Hermes 在网络掉线和 provider failure 后还能不能被信任。

证据
  • Issue #25583 称 `_handle_run_events()` 在 `finally` 中移除 run stream,浏览器 SSE drop 时 queue 被销毁,agent 仍运行,导致事件丢失或错误渲染
  • Issue #25585 记录 summary 失败时仍丢中间 turns;PR #25588 改为返回原始 messages,并记录 warning metadata
  • Issue #25594 报告 custom providers 收到 multipart vision tool results 后以 HTTP 400 `text is not set` 失败,根因是 capability detection 缺失
  • Issue #25602 要求 dashboard 能查看、切换、测试 base、vision、compression、web extract、session search 等 auxiliary fallback chains
  • PR #25577 为 anyOf / oneOf schema coercion 加 regression tests;PR #25584 和 #25587 修非 button channel 的 clarify text fallback
  • PR #20515 统一 dashboard HTTP / WebSocket auth,并支持 Tailscale identity allowlist
风险提示
  • 多个条目仍是 open issue 或 PR,当前部署可能还保留旧行为
  • SSE recovery bug 需要真实断网、切 tab 或移动端休眠才能较好复现
  • fallback dashboard 只有显示实际 runtime decision 时才有价值,不能只展示 YAML 配置