Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial

SendMessage

tool in the build JSON

A Claude Code tool, read out of the shipped bundle. It has been in the build since v2.1.186, including the newest one read.

Messages arriving from another session now show who sent them plus a chord to expand.

Not Anthropic's. This is the line from the earliest changelog entry here that named it, v2.1.222.

First seen v2.1.186 22 Jun 2026
Last seen v2.1.308 22 Oct 2026
Builds107 / 149on this box, as of v2.1.308
Written about v2.1.31 first named in a changelog, 4 Feb 2026
v2.1.186in the build not in the build never minedv2.1.308

In the changelogs

62

Releases whose published page names SendMessage.

  1. v2.1.304
    Only a teammate can approve a shutdown request now

    SendMessage now refuses a shutdown approval from a session that is not a teammate, and says to send a shutdown request instead

    found in this entry's text

  2. v2.1.304
    Messages to teammates can now be refused before delivery

    SendMessage now runs a check before delivering, and when the check fails it reports that the teammate or main conversation was not messaged

    found in this entry's text

  3. v2.1.301
    Limit on how often agents can be messaged or resumed between your messages

    Messaging or resuming a subagent now counts against a limit that resets when you write, and is refused with a 'Not sent' message once used up

    found in this entry's text

  4. v2.1.299
    SendMessage can look up an MCP server's send_message tool for bridged messages

    When sending to a bridge address, Claude Code can now find a connected MCP server's send_message tool, behind a switch that is off by default

    found in this entry's text, named in this entry

  5. v2.1.299
    Messages to stopped agents are refused, and queued replies say to wait

    Messaging an agent you stopped now returns a clear refusal, and a queued message tells Claude to wait instead of resending

    found in this entry's text, named in this entry

  6. v2.1.299
    Subagents must send their final report with a dedicated call

    Agents are now told that a final report written as plain text is not delivered, and SendMessage gains new refusal messages

    found in this entry's text

  7. v2.1.296
    SendMessage tool has alternative wording that limits messages to this session

    In one mode, the SendMessage tool's instructions now say Claude can message only agents of this session and that no one outside it can be reached

    found in this entry's text

  8. v2.1.296
    SendMessage can refuse a message as limited to the session's own agents

    SendMessage can now refuse to deliver a message early, reporting that messaging is limited to the session's own agents

    found in this entry's text

  9. v2.1.296
    SendMessage explains who a message can go to

    The recipient field of SendMessage now explains its allowed values, and the Agent tool gains a step that adjusts its input

    found in this entry's text

  10. v2.1.296
    SendMessage can now refuse some message targets

    A new check on who a SendMessage is addressed to can block the send, and one error message has a shorter form

    found in this entry's text

  11. v2.1.294
    Claude's instructions for the SendMessage tool gained text for some accounts

    Text was added to the SendMessage tool instructions Claude receives under some account settings, including an example message to a worker

    found in this entry's text

  12. v2.1.293
    SDK output describes resumed subagent runs that a tool call waits for

    SDK output now describes a resumed subagent run that the resuming tool call waits on, with its report returned in that call's result

    found in this entry's text

  13. v2.1.293
    Claude no longer told to message background agents it cannot continue

    When a background agent cannot be continued, Claude is now told to relaunch it or check its output instead of sending it a message

    found in this entry's text

  14. v2.1.293
    Notices about restarted background agents stop suggesting SendMessage when it cannot work

    After a restart, notices about a background agent that cannot be continued now suggest relaunching it or getting its report instead

    found in this entry's text

  15. v2.1.293
    Subagent results can say whether the caller can send a follow-up

    A subagent's result can now note that the calling agent cannot continue it, because the caller has no tool for sending it messages

    found in this entry's text

  16. v2.1.292
    Messages sent with SendMessage now record what kind of recipient they go to

    SendMessage calls shown to hooks and transcripts now include recipient_kind, and messages to cloud and Remote Control sessions use new routing

    found in this entry's text

  17. v2.1.287
    Some refused messages to other sessions are no longer logged

    When Claude Code refuses to send a message to another session, it now sometimes skips logging the refusal

    found in this entry's text

  18. v2.1.286
    Refused cross-machine file sends through SendMessage now say why

    SendMessage now checks cross-machine file transfer before and after the permission ask and before sending, and names the reason when refused

    found in this entry's text

  19. v2.1.286
    SendMessage can refuse a send to a bridge address before trying it

    Before sending to a bridge address, SendMessage now runs a check and reports failure straight away if that check objects

    found in this entry's text

  20. v2.1.284
    Messages from other sessions no longer tell Claude to use a reply tool it lacks

    When another Claude session messages Claude mid-task and no SendMessage tool is available, Claude is no longer told to reply through it

    found in this entry's text

  21. v2.1.284
    Messages from other Claude sessions skip the reply instruction when Claude cannot reply

    Messages from another Claude session that arrive mid-turn no longer tell Claude to reply via SendMessage in certain cases

    found in this entry's text

  22. v2.1.284
    Loop updates are sent the right way in brief mode, and the session-list tool explains when replies are impossible

    In brief mode, loop updates are now sent as messages; the session-list tool now says when this session cannot send messages

    found in this entry's text

  23. v2.1.283
    Auto mode no longer checks a message twice when forwarding it to Claude Desktop

    In auto mode, a message SendMessage forwards to Claude Desktop is allowed without a second safety check if the first check already allowed it

    found in this entry's text

  24. v2.1.280
    New cross-session/agent messaging plugin API: $.session.send, $.session.messages, $.session.authorize

    New plugin API lets plugins read, authorize, and message other sessions

    found in this entry's text

  25. v2.1.280
    Plugin hooks can intercept and readdress SendMessage sends

    Plugin hooks can now intercept SendMessage calls, rewriting or blocking who a message goes to

    found in this entry's text, named in this entry

  26. v2.1.280
    Inter-agent SendMessage attribution can now include the sending plugin

    Messages sent between agents can now note which plugin sent them

    found in this entry's text

  27. v2.1.277
    Per-tool 'backgrounding' classification rolled out across nearly all built-in tools

    Nearly every built-in tool now carries a 'backgrounding' classification of never, self, or detach

    found in this entry's text

  28. v2.1.271
    Fork-worker agents now excluded from background-task UI and controls

    Fork-worker agents no longer show up as killable background tasks or as SendMessage handback targets

    found in this entry's text

  29. v2.1.269
    SendMessage cross-machine permission check now passes a detached ask callback

    SendMessage's cross-machine permission check now uses a detached approval callback instead of passing context and canUseTool directly

    found in this entry's text

  30. v2.1.269
    SendMessage and SendFile tools refactored to a create()-context pattern

    SendMessage and SendFile tools were rebuilt internally to share permission/session state through a common factory

    found in this entry's text

  31. v2.1.269
    SendMessage tool gains suppressesAlwaysAllowRule and a create()-based context object

    SendMessage tool adds a suppressesAlwaysAllowRule flag and a richer permission-context object

    found in this entry's text

  32. v2.1.269
    SendMessage inline handback gated by Kge()

    SendMessage tool result formatting gets a new path for inline handback content

    found in this entry's text

  33. v2.1.269
    Tool architecture rework: many built-in tools moved to a create()/runEngine factory pattern

    REPL, SendMessage, TaskCreate, TaskUpdate, feedback-draft, Workflow and Bash tools rebuilt on a shared factory pattern

    found in this entry's text

  34. v2.1.268
    Task-status tool result now conditionally omits output file path based on available tools

    Background task status can now omit the output file path depending on which tools are available

    found in this entry's text, named in this entry

  35. v2.1.268
    Background subagent progress-check instructions simplified to drop tool-based polling suggestion

    Blocked duplicate subagent launches now only suggest messaging it for a progress update, not a separate polling tool

    found in this entry's text, named in this entry

  36. v2.1.261
    Subagent "harness tail" size accounting behind tengu_swift_whistle

    Subagent report truncation accounting for a 'harness tail' section stays inert behind a flag.

    found in this entry's text

  37. v2.1.251
    SendMessage can deliver to Claude Desktop sessions

    SendMessage can now deliver plain text to Claude Desktop sessions.

    named in this entry, found in this entry's text

  38. v2.1.246
    Resumed agents hand back a framed report instead of one flat string

    Resumed agents return a properly framed report instead of a flattened string.

    found in this entry's text

  39. v2.1.234
    Sending files and messages to other sessions fails early on unreachable targets

    Sending a file or message to an unreachable session is denied while asking permission, not silently at send time.

    found in this entry's text

  40. v2.1.232
    Crash recovery gives different advice for agents launched by WebFetch

    Crash recovery now separates agents that WebFetch started and advises you differently on each.

    found in this entry's text

  41. v2.1.232
    SendMessage no longer leaks its display text into the model's view

    SendMessage display text stays in the UI and no longer leaks into what the model reads.

    found in this entry's text

  42. v2.1.232
    SendMessage failures show a short reason in the transcript

    Failed messages to other agents now show a one-line reason instead of a wall of instructions.

    found in this entry's text

  43. v2.1.232
    Recovered web-fetch agents are resumed by message, not by file

    Recovered fetch agents are reached by message rather than by reading an output file.

    found in this entry's text

  44. v2.1.232
    Restart notices give web-fetch agents their own advice

    Restart notices tell web-fetch agents to message the agent instead of hunting for partial work.

    found in this entry's text

  45. v2.1.232
    Clearer notice when a background agent could not be restarted

    Failed agent restarts now give advice matching how the agent was launched.

    found in this entry's text

  46. v2.1.224
    Messages relayed between your own sessions are now labelled as such

    Messages relayed from your other sessions are now tagged as peer sends rather than looking like scheduled triggers.

    found in this entry's text

  47. v2.1.224
    SendMessage telemetry marks blocked waits and resumes

    Message delivery telemetry can flag when the sender blocked waiting for completion.

    found in this entry's text

  48. v2.1.224
    Teammate message failures are labelled, and inbox write failures reported

    Failed teammate messages now say the recipient was unreachable, including when their inbox write failed.

    found in this entry's text

  49. v2.1.224
    SendMessage records why a message was not delivered

    Undelivered agent messages now record why, such as an unreachable recipient or a failed mailbox write.

    found in this entry's text

  50. v2.1.224
    SendMessage skips the auto-mode classifier

    Messaging another agent skips the auto-mode classifier and no longer counts toward denials.

    found in this entry's text

  51. v2.1.224
    New ListAgents tool for finding other sessions you can message

    A tool that lists other Claude sessions you can message exists but stays off by default.

    found in this entry's text

  52. v2.1.224
    SendMessage can address other sessions directly and reports delivery timing

    Messages can be addressed to a specific session by socket or id, blocked unless peer messaging is enabled.

    found in this entry's text

  53. v2.1.222
    Messages from other sessions get a sanitized sender label

    Messages arriving from another session now show who sent them plus a chord to expand.

    found in this entry's text

  54. v2.1.222
    Teammate summaries are trimmed, truncated and colour-checked

    Long teammate summaries get trimmed instead of breaking the status line or rejecting the message.

    found in this entry's text

  55. v2.1.178
  56. v2.1.166
  57. v2.1.124
  58. v2.1.118
    Broadcast Messaging Deprecated

    found in this entry's text

  59. v2.1.77
    Agent Resume via SendMessage

    found in this entry's text

  60. v2.1.75
    Agent Message Queuing to Running Agents

    found in this entry's text

  61. v2.1.75
    SendMessage Tool Redesigned

    found in this entry's text

  62. v2.1.31
    Agent Teams Plan Gating

    found in this entry's text

First cited

8

The earliest release whose published evidence quoted SendMessage was v2.1.178, 15 Jun 2026. That is the oldest release this project wrote about it, so it is a floor on the name's age and not the release that introduced it. It is not a presence reading: which builds carried the name is the table below.

ReleaseDateThe span that was quoted
v2.1.17815 Jun 2026SendMessage routes it to the main conversation
v2.1.2247 Aug 2026list agents you can SendMessage to
v2.1.23213 Aug 2026Send it a message with SendMessage to get its report.
v2.1.25128 Aug 2026Claude Desktop's session messaging tool is not available in this session, so SendMessage cannot deliver to it
v2.1.28325 Sep 2026this is SendMessage's forward to Claude Desktop, and the classifier already allowed that SendMessage
v2.1.28428 Sep 2026After completing your current task, decide whether/how to respond (reply via SendMessage to the `from=` address).

2 further spans in the ledger name it. The list above is the earliest first and stops at 6.

Presence across releases

1
BuildsHow manyDatesReading
v2.1.186 – v2.1.308107 builds22 Jun 2026 → 22 Oct 2026 ◆in the build

Build by build

107

One row per release since the first build this name was read out of. Absent means the build was read and the name was not in it, never mined means no bundle for that release was ever archived, and a declared type or a default is only ever what that release's own bundle stated.

BuildDateStateThe record behind it
v2.1.18622 Jun 2026·addedverdict: added
v2.1.18723 Jun 2026·presentverdict: present
v2.1.19024 Jun 2026·presentverdict: present
v2.1.19124 Jun 2026·presentverdict: present
v2.1.19325 Jun 2026·presentverdict: present
v2.1.19526 Jun 2026·presentverdict: present
v2.1.19629 Jun 2026·presentverdict: present
v2.1.19730 Jun 2026·presentverdict: present
v2.1.1981 Jul 2026·presentverdict: present
v2.1.1992 Jul 2026·presentverdict: present
v2.1.2003 Jul 2026·presentverdict: present
v2.1.2013 Jul 2026·presentverdict: present
v2.1.2026 Jul 2026·presentverdict: present
v2.1.2037 Jul 2026·presentverdict: present
v2.1.2048 Jul 2026·presentverdict: present
v2.1.2058 Jul 2026·presentverdict: present
v2.1.2069 Jul 2026·presentverdict: present
v2.1.20710 Jul 2026·presentverdict: present
v2.1.20813 Jul 2026·presentverdict: present
v2.1.20914 Jul 2026·presentverdict: present
v2.1.21014 Jul 2026·presentverdict: present
v2.1.21115 Jul 2026·presentverdict: present
v2.1.21216 Jul 2026·presentverdict: present
v2.1.21317 Jul 2026·presentverdict: present
v2.1.21418 Jul 2026·presentverdict: present
v2.1.21519 Jul 2026·presentverdict: present
v2.1.21620 Jul 2026·presentverdict: present
v2.1.21721 Jul 2026·presentverdict: present
v2.1.21822 Jul 2026·presentverdict: present
v2.1.21924 Jul 2026·presentverdict: present
v2.1.22024 Jul 2026·presentverdict: present
v2.1.2213 Aug 2026·presentverdict: present
v2.1.2224 Aug 2026·presentverdict: present
v2.1.2235 Aug 2026·presentverdict: present
v2.1.2247 Aug 2026·presentverdict: present
v2.1.2257 Aug 2026·presentverdict: present
v2.1.2268 Aug 2026·presentverdict: present
v2.1.22710 Aug 2026·presentverdict: present
v2.1.22811 Aug 2026·presentverdict: present
v2.1.22912 Aug 2026·presentverdict: present
v2.1.23113 Aug 2026·presentverdict: present
v2.1.23213 Aug 2026·presentverdict: present
v2.1.23314 Aug 2026·presentverdict: present
v2.1.23417 Aug 2026·presentverdict: present
v2.1.23518 Aug 2026·presentverdict: present
v2.1.23619 Aug 2026·presentverdict: present
v2.1.23719 Aug 2026·presentverdict: present
v2.1.23820 Aug 2026·presentverdict: present
v2.1.23921 Aug 2026·presentverdict: present
v2.1.24022 Aug 2026·presentverdict: present
v2.1.24122 Aug 2026·presentverdict: present
v2.1.24224 Aug 2026·presentverdict: present
v2.1.24324 Aug 2026·presentverdict: present
v2.1.24525 Aug 2026·presentverdict: present
v2.1.24625 Aug 2026·presentverdict: present
v2.1.24726 Aug 2026·presentverdict: present
v2.1.24827 Aug 2026·presentverdict: present
v2.1.25027 Aug 2026·presentverdict: present
v2.1.25128 Aug 2026·presentverdict: present
v2.1.25231 Aug 2026·presentverdict: present
v2.1.2571 Sep 2026·presentverdict: present
v2.1.2581 Sep 2026·presentverdict: present
v2.1.2592 Sep 2026·presentverdict: present
v2.1.2603 Sep 2026·presentverdict: present
v2.1.2614 Sep 2026·presentverdict: present
v2.1.2636 Sep 2026·presentverdict: present
v2.1.2658 Sep 2026·presentverdict: present
v2.1.2668 Sep 2026·presentverdict: present
v2.1.2679 Sep 2026·presentverdict: present
v2.1.26810 Sep 2026·presentverdict: present
v2.1.26911 Sep 2026·presentverdict: present
v2.1.27012 Sep 2026·presentverdict: present
v2.1.27114 Sep 2026·presentverdict: present
v2.1.27214 Sep 2026·presentverdict: present
v2.1.27315 Sep 2026·presentverdict: present
v2.1.27416 Sep 2026·presentverdict: present
v2.1.27517 Sep 2026·presentverdict: present
v2.1.27618 Sep 2026·presentverdict: present
v2.1.27718 Sep 2026·presentverdict: present
v2.1.27819 Sep 2026·presentverdict: present
v2.1.28022 Sep 2026·presentverdict: present
v2.1.28123 Sep 2026·presentverdict: present
v2.1.28224 Sep 2026·presentverdict: present
v2.1.28325 Sep 2026·presentverdict: present
v2.1.28428 Sep 2026·presentverdict: present
v2.1.28529 Sep 2026·presentverdict: present
v2.1.28630 Sep 2026·presentverdict: present
v2.1.2871 Oct 2026·presentverdict: present
v2.1.2882 Oct 2026·presentverdict: present
v2.1.2893 Oct 2026·presentverdict: present
v2.1.2905 Oct 2026·presentverdict: present
v2.1.2916 Oct 2026·presentverdict: present
v2.1.2926 Oct 2026·presentverdict: present
v2.1.2937 Oct 2026·presentverdict: present
v2.1.2948 Oct 2026·presentverdict: present
v2.1.2958 Oct 2026·presentverdict: present
v2.1.2969 Oct 2026·presentverdict: present
v2.1.29914 Oct 2026·presentverdict: present
v2.1.30014 Oct 2026·presentverdict: present
v2.1.30115 Oct 2026·presentverdict: present
v2.1.30216 Oct 2026·presentverdict: present
v2.1.30318 Oct 2026·presentverdict: present
v2.1.30419 Oct 2026·presentverdict: present
v2.1.30520 Oct 2026·presentverdict: present
v2.1.30621 Oct 2026·presentverdict: present
v2.1.30721 Oct 2026·presentverdict: present
v2.1.30822 Oct 2026·presentverdict: present

Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the tool does. All tools.

Feedback