mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-05-08 03:01:47 +00:00
Root cause: ACP turns emit partial session/update progress (thinking spinners, tool events) then go silent for the entire duration of run_conversation() because stream_delta_callback was never wired in the ACP adapter. The LLM's streamed text deltas were silently discarded since _fire_stream_delta() only dispatches to stream_delta_callback and _stream_callback — neither of which ACP set. Fix: Add make_stream_delta_cb() factory that forwards each text delta to conn.session_update() as an agent_message_chunk, and wire it as agent.stream_delta_callback in prompt(). This gives ACP clients (CAR/PMA/VS Code) real-time token-by-token progress during LLM streaming, eliminating the multi-minute silent gap before final prompt_return delivery. Also suppresses the final_response session_update when stream_delta_cb is active to avoid sending duplicate text to clients that append incremental chunks (P1 from automated review). Fixes #9 |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| test_auth.py | ||
| test_entry.py | ||
| test_events.py | ||
| test_mcp_e2e.py | ||
| test_permissions.py | ||
| test_server.py | ||
| test_session.py | ||
| test_tools.py | ||