Main response text
Extracted thinking/reasoning content (empty string if none).
For thinking models (e.g. Qwen3), this contains the text inside
<think>...</think> blocks. Store as reasoning_content in your
messages array so formatChat() can reconstruct the template correctly
on subsequent turns.
Extracted tool calls (empty array if none)
Result from parsing chat output
Example