control board: reply from the board through agent-send.sh (#1505)
Piece 2 of the MVP (#1503). A one-line reply box and Send in the detail of rows with a live registration; POST /api/reply runs tools/tmux/agent-send.sh -s <session> -S <host>:control-board [-L <socket>] -m <text> once for one seat and returns the exit code, stdout and stderr. The page shows delivered or failed with the tool's stderr; other rows say "reply needs a registered seat". No send-keys, queue, retries, history or broadcast; packages/seat and agent-send.sh untouched. Every message ends with a fixed trailer telling the seat to answer in its own session (Jason's refinement after the first Gate C exchange; the board has no pane). Board suite 98/98. Co-Authored-By: Claude Fable 5.1 <[email protected]>
This commit is contained in:
+21
-7
@@ -32,13 +32,27 @@ Package: `packages/seat`. Fleet seats stay on their own launchers (Jason's
|
||||
ruling, 2026-09-12); only `agents/` seats register. A record whose pid is
|
||||
gone is stale and does not override the derived values.
|
||||
|
||||
Next action: step 3 of #1503 continues — daily use with #1504 landed. Jason
|
||||
launches his seats through the new path (or the launch scripts, which now
|
||||
register), sets tasks with `seat task`, and reports what is wrong, missing
|
||||
or confusing; each report becomes a small fix with a test, committed and
|
||||
pushed to `refactor`. The sequence Jason set stays: seat registration (done),
|
||||
then reply-from-board, then the WebUI on Dewey's Console design absorbs the
|
||||
board as its first screen. Close #1503 when Jason says the page answers "who
|
||||
Gate B passed 2026-09-12 (seat registration shown and used on the board).
|
||||
|
||||
Piece 2, reply-from-board (#1505; brief in the plan page, section "Piece
|
||||
2: reply-from-board", approved by Jason 2026-09-12), is built and pushed
|
||||
2026-09-12: a text box and Send in the detail of registered, live rows;
|
||||
`POST /api/reply` runs `tools/tmux/agent-send.sh -s <session> -S
|
||||
"<host>:control-board" [-L <socket>] -m <text>` and returns the exit code,
|
||||
stdout and stderr; the page shows `delivered` or `failed` with the stderr.
|
||||
No send-keys, queue, history or broadcast; no change to `packages/seat` or
|
||||
`agent-send.sh`. Board suite 98/98.
|
||||
|
||||
Gate C's first exchange happened 2026-09-12 ("pizza?" to darkwing:
|
||||
delivered, read back within one scan; the seat's send-back to
|
||||
`control-board` was refused as expected, so every board message now ends
|
||||
with a fixed trailer telling the seat to answer in its own session).
|
||||
|
||||
Next action: Jason confirms Gate C on the trailer build (restart the board
|
||||
on 7331, answer a `waiting` seat, the row turns `working` with the reply
|
||||
as its newest user message and the seat answers in its own session).
|
||||
Record the pass or the failure in the plan page and here. Then the WebUI on Dewey's Console design absorbs
|
||||
the board as its first screen. Close #1503 when Jason says the page answers "who
|
||||
is waiting on me" without him opening a terminal. Out of scope until he
|
||||
asks: auth or provider registry, roster schema changes, hooks/plugins, comms,
|
||||
memory, multiple sessions per seat, stopping seats, new root files. The
|
||||
|
||||
Reference in New Issue
Block a user