Group of 2 Under the hood
The SendMessage tool's cross-machine and team-mailbox permission checks now go through a detached ask callback and accessor functions instead of passed-in state objects
What
- In the SendMessage tool's bridge/Remote Control send path, the permission-check helper used to be called directly with
contextandcanUseTool. It's now invoked with anaskcallback that calls the tool'scanUseToolfunction with{ detached: true }. This affects theisolatePeerMachinesapproval flow (the "isolatePeerMachines is enabled: sending to ... needs your approval" prompt) and the message-post call, which now takes{ tool, sessionId, message, assistantMessage }instead of also passingcontextandcanUseTooldirectly. - The team-messaging tool's internal resolver for mailbox, live-agent, stopped-agent, and cloud-session cases now reads application state and message history through accessor functions (
resolverState(),messages()) instead of a captured state snapshot. Resuming or asking permission for a stopped or cloud agent is now routed through a wrapping effect call using the same detachedaskpattern, rather than passingcanUseTool/toolUseContextdirectly.
Why
This is an internal plumbing change to how permission checks are requested for cross-machine and team messaging, replacing direct state/context passing with callbacks and accessors; it's not expected to change what approval prompts look like to a user.