team messages

Shows a message that is already waiting and writes the receipt that says it was shown. Anyone in the checkout may run it. It verifies the record, prints the body, and writes the receipt in that one step; a record that does not verify prints no body and writes nothing. Nothing in this build writes a message record: the watch only rings when a record is already there.

Synopsis

team messages [--json]

Flags

FlagValueEffect
--json—the same reading as one document, format 1, registered as schema/messages.schema.json: the context, the message rows, the notes, the differences with their repairs, and the counts

Who may run it

Anyone in the checkout. The watch asks the recipient's pane to run it. The command shows every waiting message in the checkout, not only the caller's: a seat runs as the owner-user, and the mailbox is not a wall between seats.

Output and exit codes

The reading opens with the context line (team <project>, session "<session>") and the headed table ID FROM TO SENT STATUS, one row per waiting record; each verified body prints under its own <seat>/<id>: heading, then the notes and the differences print, and one summary line (<n> message or <n> messages) closes it. SENT is the record's own timestamp read as its age; --json also carries the exact ISO string as sent.

OutcomeWhat is printedExit
every waiting record was shown and receiptedthe reading above, each verified row shown and its body printed before the receipt is written0
nothing was waitingthe same reading with no rows, the note nothing is waiting, and 0 messages0
a record did not verify, the message key is missing or unreadable, or the team file can't be readthe record as a refused row with its difference: block (repair: names the file, who: any seat), or team messages: no message key; nothing was shown / team messages: <team-file problem>1
the invocation can't be read, or this folder is not a git checkoutteam messages: <problem>, with the usage for the invocation2

A record that does not verify prints no body and writes no receipt.

Example

.agents/team.yaml
format: 1
project: beacon
coordinator: claude-keeper
operator: claude-keeper

trust:
  - ~/.config/team/lobby
  - ~/Code/beacon

workspace:
  mode: shared

seats:
  - role: coordinator
    name: claude-keeper
    label: coordinator
    cli: claude-code
    vendor: anthropic
    model: Claude Opus
    version: "5.5"
    launch: claude --model claude-opus-5-5

Nothing is waiting:

Terminal
 team messages ; echo "exit $?"
team beacon, session "beacon"
  ID  FROM  TO  SENT  STATUS

note: nothing is waiting

0 messages
exit 0