Context
Agent communication must not be implemented by simulating keyboard input in another terminal. It needs a typed local protocol that works across vendors and preserves task/session identity.
Goal
Provide an agent-facing local command and daemon message bus for listing peers, sending messages, acknowledging delivery, waiting for replies, and reading status.
A possible CLI surface is agentctl or a cli-master agent subcommand; the final name should follow an ADR.
Scope
- Define sender, recipient, task, session generation, message ID, correlation ID, and bounded payload types.
- Route only between registered task assignments and live/reconnectable sessions.
- Add idempotent delivery and explicit acknowledgement/result states.
- Expose a minimal skill/instruction document for supported agent CLIs.
- Persist metadata required for audit/recovery without persisting secrets or raw terminal output.
- Add per-task queue limits, rate limits, and cancellation.
Acceptance criteria
Out of scope
Remote networking, cross-machine agents, and arbitrary peer-to-peer sockets.
Context
Agent communication must not be implemented by simulating keyboard input in another terminal. It needs a typed local protocol that works across vendors and preserves task/session identity.
Goal
Provide an agent-facing local command and daemon message bus for listing peers, sending messages, acknowledging delivery, waiting for replies, and reading status.
A possible CLI surface is agentctl or a cli-master agent subcommand; the final name should follow an ADR.
Scope
Acceptance criteria
Out of scope
Remote networking, cross-machine agents, and arbitrary peer-to-peer sockets.