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:
@@ -2133,3 +2133,22 @@ provider in the hover, and a Model detail row. Blank when the log names
|
||||
none. Live check against the real data root on a scratch board: all 42
|
||||
rows carried a model. Board suite 91/91 (was 90). Sonnet review recorded
|
||||
in the plan page entry.
|
||||
|
||||
## 2026-09-12 — Control board piece 2: reply-from-board (#1505)
|
||||
|
||||
Before: the board could show a seat waiting on Jason but he had to find
|
||||
its tmux pane to answer. After: the detail of a row with a live
|
||||
registration has a one-line reply box; `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 tool's exit code,
|
||||
stdout and stderr; the page shows `delivered <time>` or `failed (exit N):
|
||||
<stderr>`. Rows without a live registration say "reply needs a registered
|
||||
seat". No queue, retries, history, broadcast or raw send-keys; no change
|
||||
to `packages/seat` or `agent-send.sh`. Live check through the real tool on
|
||||
a scratch tmux session: delivered, and a refused target reported verbatim.
|
||||
Board suite 98/98 (was 91). Gate C's first exchange on 2026-09-12:
|
||||
Jason's "pizza?" reached darkwing and the row showed the answer within
|
||||
one scan; the seat's attempt to agent-send back to `control-board` was
|
||||
refused, correctly, since the board has no pane. Fix: every board message
|
||||
ends with a fixed trailer saying to answer in the seat's own session.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user