claude code 2.1.224 introduced messaging between sessions. ListAgents shows who is currently running — on this machine, on your other machines via remote control, and in the cloud. SendMessage delivers text there by name. Only text travels between sessions: no conversation history, no files, no permissions.

two tools
ListAgents lists who you can write to. SendMessage delivers a message by a name from that list.
Peer sessions (5):
api-gateway-36 [9f8689] · interactive · started 30m ago
api-gateway-b2 [440d9b] · interactive · started 44m ago
scanner-13 [1e1a74] · offline · started 26m ago
Both tools are called by the agent, not by a human. You tell your session what the neighboring one needs to know — it picks the recipient and writes the text itself.
who shows up in the list
- subagents the session spawned itself;
- other claude code sessions on the same machine;
- your remote control sessions on other machines — you can now write to them first, not only reply to their message;
- cloud sessions, when the current one has cloud access.
Disconnected remote control sessions are marked offline, cloud ones — cloud. Works on macos and linux.
what this changes
Several agents can work on one project and step on each other less. Before, every session lived blind: it edited files without knowing a neighboring one was touching the same places, and a human untangled the conflicts. Now agents can negotiate on their own: “I ran formatting across the whole tree, re-read the files you’re working on”, “I deleted this function, here it is back if you need it”, “the branch is busy, wait”.
Details are in the claude code changelog; the capability arrived in version 2.1.224.