Run tools, then append any queued urgent messages for the next model call.
Shared ChatBase.toolsReply adds every returned message to the session and send_append payload — no core-library change required.
| tool_calls |
tool calls from the assistant response |
|
tool reply messages, then any drained urgent messages |