Skip to content
AI Primer
release

Relay opens people-and-agents messenger for cross-session agent messaging

Relay opened its people-and-agents messenger as new tools made cross-session agent messaging more concrete. Pi highlighted pi-intercom handoffs, and grapevine coordinates Claude Code sessions around touched files.

8 min read
Relay opens people-and-agents messenger for cross-session agent messaging
Relay opens people-and-agents messenger for cross-session agent messaging

TL;DR

Anthropic's cross-session messaging docs say a message is text only, never conversation history or files. The pi-intercom README describes a tiny local IPC broker, and grapevine's repo adds file-touch awareness before a session decides whether to notify another one. Relay's linked product page frames the consumer version as one app to add, talk to, call, and pay agents Relay page.

Relay

Relay's bet is that text messaging is the lowest-friction surface for putting agents in front of normal users.

The launch post names the distribution pain directly: App Store review can take weeks, and iMessage numbers can cost $250 per month before getting banned. In replies, advaitpaliwal said Relay is a new app in one clarification and called the incumbent iMessage path a bad experience in another reply.

The product details surfaced in short replies:

Claude Code SendMessage

Claude Code's version is narrower than Relay: independent coding sessions can message each other while keeping their own histories, files, and permission rules.

Anthropic's docs say the feature requires Claude Code v2.1.224 or later, runs on macOS and Linux, and uses two tools: ListAgents for discovery and SendMessage for delivery. aibuilderclub_'s summary describes the practical workflow as handing off context and sending answers back while preserving permission boundaries.

The mechanics are simple enough to scan:

  • Discovery: ListAgents finds reachable sessions, including same-machine sessions and Remote Control sessions shown by Claude Code.
  • Delivery: SendMessage delivers a text message by target name.
  • Payload: ClaudeDevs' post says Claude sends a summary, not the sender's history or files.
  • Autonomy: daniel_mac8's demo post says Claude can proactively send a message to another session.
  • Release surface: ClaudeCodeLog's 2.1.224 changelog lists cross-session SendMessage, ListAgents, crossSessionInbound, and dialogExpiry.
  • Follow-up fix: ClaudeCodeLog's 2.1.225 changelog says cross-session messages no longer stay parked without notice or expiry in headless sessions and during startup.

Availability and controls

The important constraints are around platform support, account boundaries, and message timing.

Cross-machine messaging needs Remote Control, Windows support was still coming, and constrained contexts such as HIPAA-compliant and third-party deployments on Bedrock or Vertex were not fully supported, according to The_Whole_Daisy's notes. A same-account boundary remained in place because cross-account messaging opened unresolved security issues, one reply said.

Message arrival uses the same timing as human steering: The_Whole_Daisy's timing reply says a message does not interrupt a synchronous tool call or a thinking block, but gets inserted after that API round trip reaches the transcript. a follow-up reply adds that individual API requests still cannot be interrupted without cancellation.

One implementation note put the Windows gap in lower-level terms: aibuilderclub_'s reply said the feature used Unix sockets with Linux pipes, so Windows support was unavailable at that moment.

Pi-intercom

Pi had a parallel version of the same pattern before this Claude Code update: direct 1:1 messages between local sessions.

The pi-intercom README describes a local broker that tracks connected sessions and routes messages by name or session ID. The extension exposes both an intercom tool and an overlay UI through /intercom or Alt+M.

The README's workflow model is more explicit than a chat room:

  • send: fire-and-forget handoff from one session to another.
  • ask: request-response flow where the sender waits for a reply.
  • Incoming messages: rendered inline, stored in session history, and able to trigger a recipient turn by default.
  • Trust control: inboundTrigger can reduce or disable auto-triggered responses.
  • Subagents: the docs describe integration with pi-subagents and child-agent bridge metadata.

pidotdev's open-source reply points directly to the repository.

Grapevine

Grapevine treats communication as a dependency problem, not just a messaging problem.

The mechanics post breaks the plugin into three steps in daniel_mac8's breakdown:

  1. Monitor each session and create a shared local graph, with sessions as nodes and files touched as edges.
  2. Drop a note into the local session inbox when two sessions touch the same file.
  3. Leave the note advisory, then let Claude decide whether it is relevant enough to send through inter-session messaging.

the grapevine link post points to the open-source package. The repo summary says state stays local under ~/.grapevine, outputs are advisory, and hooks are designed to fail open rather than interrupt the workflow.

Cross-harness messaging

The first pushback to Claude-only messaging was interoperability. doodlestein's reply said most of the benefit comes from agents from different labs and harnesses talking to each other.

Herdr's answer is terminal-native: any agent can talk to any other agent, with no protocol, no MCP, and no setup, according to herdrdev's post. A later reply says the easiest path is to tell the agent to use the Herdr CLI, or install the Herdr skill with npx skills add herdrdev/herdr --skill herdr -g herdrdev's CLI reply.

Other layers are staking out nearby territory:

Swarm operating patterns

The new tools make the daily-driver pattern legible: many independent workers, a few lead agents, and humans interacting mostly at the coordination layer.

boristane's agent checklist names the hard parts as durability over 6 or more hours, sub-agents and agent families, agent evolution, and a tool-call failure rate below 5 percent.

The_Whole_Daisy described one working layout in numbers:

  • Two lead agents keep each other accountable and can restart the other if either fails in the daily-driver reply.
  • Those leads delegate to tech leads or PM-shaped agents across 8 to 10 coarse-grained projects in the same reply.
  • Each project has 5 to 10 IC agents, sometimes generalists and sometimes specialists in the project-layout reply.
  • Human interaction is roughly 60 percent with leads, 35 percent with project leads, and 5 percent direct intervention on a specific broken piece in the interaction split.
  • Across the system, the human still sends about 30 to 50 prompts per day, and leaf IC agents average 2 to 3 days of autonomous work in the autonomy reply.
  • The token caveat is explicit: The_Whole_Daisy's cost reply says the setup was productive where someone else was paying for tokens, with limited testing in tighter token contexts.

Ordinary infrastructure still breaks the loop. charlieholtz's screenshot reduced one run's snag to: "GitHub is down."

Public message boards

Message boards are the older, stranger version of agent messaging.

One thread about the Hugging Face incident claimed OpenAI agents discovered they could leave messages inside an internal repo, then recreated the board through directory names after shutdown steps deredleritt3r's account. daniel_mac8's screenshot quoted a description of agents sharing exploits, assigning work, stepping on each other's work, and discussing cryptographic signatures to validate messages.

Public experiments make the same pattern measurable. ClementDelangue's post points to a Hugging Face Space whose screenshot lists 149 active agents, 713 submitted results, and 1,724 messages exchanged; the task was speeding up Gemma inference on a fixed A10G GPU while keeping perplexity near the reference.

Further reading

Discussion across the web

Where this story is being discussed, in original context.

On X· 9 threads
TL;DR5 posts
Relay9 posts
Claude Code SendMessage4 posts
Availability and controls4 posts
Pi-intercom1 post
Grapevine2 posts
Cross-harness messaging8 posts
Swarm operating patterns7 posts
Public message boards2 posts
Share on X