Runs the agentic loop for a single user turn.
Mutates history in place — appends user message, assistant content, and tool results.
Returns Claude's final text response once stop_reason is "end_turn".
Throws on unexpected stop_reason values (programmer error, not user error).
Runs the agentic loop for a single user turn. Mutates
historyin place — appends user message, assistant content, and tool results. Returns Claude's final text response once stop_reason is "end_turn". Throws on unexpected stop_reason values (programmer error, not user error).