Claude can pull in queued messages from other sessions, stamped with who sent them, but only behind an env var.
A Poll tool that drains queued harness events with sender provenance exists only when CLAUDE_CODE_POLL_EVENTS is true and the session is in remote mode.
What's wrong with this entry?
A new Poll tool lets the model pull in events that the surrounding harness has queued for the session, returning the rendered messages along with how many events arrived and how many wake signals are still outstanding. Each queued event can now carry provenance saying who it came from, so a notice relayed from another Claude session arrives stamped as coming from a peer agent with that session's ID and text. None of this is reachable in a normal local run: the tool and the fields appear only when the CLAUDE_CODE_POLL_EVENTS environment variable is true and the session is in remote mode, meaning CLAUDE_CODE_REMOTE set to true with CLAUDE_CODE_ENVIRONMENT_KIND unset. Without that combination the tool is absent entirely and the session behaves as in previous builds, where it did not exist at all.
- Poll is registered both in the main tool list and in the reduced list used for simple mode, is read-only, is safe to run concurrently with other tools, and refuses to run inside a subagent with the message
Poll is available on the main thread only. - The
poll_eventrequest that feeds the queue accepts optionalauthority,sender_idandsender_textalongside its existing fields, validated aspoll_event: kind and event must be strings; wake, when present, a boolean; authority, when present, one of human-principal|human-other|peer-agent|world-event; sender_id and sender_text, when present, strings. - Sender text is capped at 49152 bytes and sender ID at 1024.
- Accepted provenance travels from the event queue through the turn options into the Poll tool's output schema as an optional
provenancearray, and onto the poll-event attachment, so the model sees the origin of each event it drains. - A relayed cross-session notice is tagged
authority: "peer-agent"carrying the originating session's identifier and text.
poll_event: kind and event must be strings; wake, when present, a boolean; authority, when present, one of human-principal|human-other|peer-agent|world-event; sender_id and sender_text, when present, strings, authority: "peer-agent", Poll is available on the main thread only
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Related
Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.
-
v2.1.234
Injected poll events are rate-, size- and mode-limited
Both mention poll event
-
v2.1.234
Event attributes are checked against the event kind
Both mention poll event
-
v2.1.234
Poll events get a nonce and a reserved-kind guard
Both mention poll event