The model's arguments as a raw JSON string.
Correlation id — echo it back on the tool result.
The declared tool name the model chose.
OptionalpausedEpoch ms the turn paused / last progressed — judge staleness before replaying a side-effecting call.
OptionalturnCorrelation id of the paused turn (when the pausing client minted one).
One outstanding tool call from a turn that paused BEFORE this handshake — carried on
hello.ack(0.37.0) so an embed that lost its state (tab reload / crash mid-pause) can rediscover what it owes and COMPLETE the paused turn instead of abandoning it via/end. Post each result withsendToolResult(id, …)exactly like a livecompanion.tool_call; the server's apply is idempotent per id, so double-posting is safe.