mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-09 13:21:42 +00:00
The first fix handled the EAGAIN McpError path. But the persistent MCP session (long-running gateway/desktop worker) has a second failure mode: list_windows or get_window_state 'succeed' over MCP yet return a degenerate/empty payload (no windows, or no screenshot + blank tree) WITHOUT raising — typically when the bridge reconnected mid-call and dropped the heavy response. That surfaced to the model as a silent 0x0 capture with no error and no fallback firing (0.00s empty return). Fix: detect empty results in capture() and re-fetch over the CLI transport before giving up: - empty list_windows -> CLI re-fetch the window list - empty get_window_state (som/ax) -> CLI re-fetch the AX tree + screenshot - empty screenshot (vision) -> CLI re-fetch get_window_state for the PNG Adds 2 regression tests. Full suite: 83 passed. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| backend.py | ||
| cua_backend.py | ||
| doctor.py | ||
| permissions.py | ||
| schema.py | ||
| tool.py | ||
| vision_routing.py | ||