Group of 2 Under the hood
User messages, including ones relayed through the remote bridge, can now carry pasted text as a distinct pasted_content field
What
- User-message schemas, including the SDK's user-message-replay type, gain a
pasted_contentfield: content the user pasted rather than typed, appended after the typed text (optionally wrapped in<pasted_content>tags). Image or document blocks still must go inmessage.content, not here. The internal user-turn extraction path now plumbspastedContentthrough as well. - Inbound messages relayed through the remote-control bridge (excluding peer and slack-ping messages) now go through the same pasted-content merge used by the SDK, appending any attached pasted text blocks to the message body and emitting the existing
sdk_pasted_contenttelemetry.
Why
Keeping pasted text separate from typed text lets Claude Code and the SDK tell the two apart, and extending this to bridge-relayed messages means the same distinction now applies consistently no matter how a message arrives.