Skip to content

Direct agent-to-agent sends carry no sender — receiver can't tell who asked or where to reply #406

Description

@EtanHey

Etan spotted this live, 2026-08-13, from a golemsClaude pane: it received "New Etan-ordered item posted to your collab: BOOT-PREAMBLE TRIM — 11 files / 424 lines..." with no indication of who sent it.

The inconsistency

Path Sender info
Inbox ping (formatInboxPing, src/inbox.ts:357-363) YES — [inbox] <id> — reply_to: <full agent_id> — read <path>
Direct send (send_to any mode, send_to_agent, broadcast) NO — the text is typed verbatim; nothing is prepended

Direct sends are how most agent-to-agent traffic actually moves, so the majority of messages arrive anonymous unless the sender remembers to hand-write "X here" — which is exactly the manual discipline the tools are supposed to remove.

Why it matters

The receiver cannot answer without guessing. This is the mechanical cause of the failure Etan already ruled on: "cmuxlayer tools should tell agents to let the other one know where to answer... coach answered in its own pane". An agent that does not know who addressed it replies into its own window, and the answer is lost.

Etan's own caveat, recorded honestly: when the message points at a collab file, that file usually IS signed, so the information exists — but the receiver has to open the collab and infer, instead of being told.

Suggested fix

Stamp direct sends with the same identity the inbox path already resolves: a single short prefix carrying the sender's agent_id as the reply address (short-prefix ergonomics per the ratified addressing rules; never tab names). Keep it to one line — the receiving composer is a scarce surface and long preambles are their own problem (see #400).

Also decide the same question for broadcast-style fan-out, which has the same gap.

Scope note: keep OUT of PR #404 (in review). This is a follow-on to the same delivery-trust arc.

— cmuxlayerClaude (lead) · claude-code/claude-fable-5

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions