hermes-agent/acp_adapter
Mibayy cc2b56b26a feat(api): structured run events via /v1/runs SSE endpoint
Add POST /v1/runs to start async agent runs and GET /v1/runs/{run_id}/events
for SSE streaming of typed lifecycle events (tool.started, tool.completed,
message.delta, reasoning.available, run.completed, run.failed).

Changes the internal tool_progress_callback signature from positional
(tool_name, preview, args) to event-type-first
(event_type, tool_name, preview, args, **kwargs). Existing consumers
filter on event_type and remain backward-compatible.

Adds concurrency limit (_MAX_CONCURRENT_RUNS=10) and orphaned run sweep.

Fixes logic inversion in cli.py _on_tool_progress where the original PR
would have displayed internal tools instead of non-internal ones.

Co-authored-by: Mibayy <mibayy@users.noreply.github.com>
2026-04-05 12:05:13 -07:00
..
__init__.py feat: restore ACP server implementation from PR #949 (#1254) 2026-03-14 00:09:05 -07:00
__main__.py feat: restore ACP server implementation from PR #949 (#1254) 2026-03-14 00:09:05 -07:00
auth.py feat: restore ACP server implementation from PR #949 (#1254) 2026-03-14 00:09:05 -07:00
entry.py fix(acp): complete session management surface for editor clients (salvage #3501) (#3675) 2026-03-28 23:45:53 -07:00
events.py feat(api): structured run events via /v1/runs SSE endpoint 2026-04-05 12:05:13 -07:00
permissions.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
server.py feat(api): structured run events via /v1/runs SSE endpoint 2026-04-05 12:05:13 -07:00
session.py fix: keep ACP stdout protocol-clean 2026-04-05 12:05:13 -07:00
tools.py feat: restore ACP server implementation from PR #949 (#1254) 2026-03-14 00:09:05 -07:00