atomr-agents-coding-cli-harness-web 0.20.0

Axum + embedded SPA companion for the coding-cli harness. Start runs, browse results, follow SSE events, and attach an xterm.js terminal to tmux-wrapped interactive sessions over WebSocket.
Documentation

atomr-agents-coding-cli-harness-web

Axum + embedded SPA companion for the coding-cli harness.

Run it

cargo run -p atomr-agents-coding-cli-harness-web
# default bind: 127.0.0.1:7300

Open http://127.0.0.1:7300/ to see the SPA. Browse vendors, kick off headless runs (live SSE event log), or open an interactive xterm.js session against a tmux-wrapped CLI process.

Routes

Method Path Description
GET /healthz Liveness probe
GET /api/cli/vendors Vendors wired into the harness
POST /api/cli/runs Start a headless run, returns run_id
GET /api/cli/runs Recent runs
GET /api/cli/runs/:id One run
GET /api/cli/runs/events SSE of normalized events
POST /api/cli/sessions Start an interactive session
GET /api/cli/sessions Active interactive sessions
DELETE /api/cli/sessions/:id Stop an interactive session
GET /api/cli/sessions/:id/io (WS) Terminal byte bridge

WebSocket protocol

  • Server → client: binary frames carry raw PTY bytes (UTF-8 ANSI).
  • Client → server:
    • Binary frame = stdin bytes (typed keys, paste).
    • Text frame {"kind":"resize","cols":120,"rows":32} resizes the PTY.

Run on port 7300 (next slot after deep-research's 7200).