support Claude 4 models feature of interleaved thinking with tool use, allowing the model to reason between tool calls. See https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking#extended-thinking-with-tool-use To support this feature will require * Store thinking blocks, their signatures, and the order in which they appeared * Maintain this state between API calls in a multi-turn conversation * Add support for the interleaved-thinking-2025-05-14 beta header * Enforce compatible tool_choice settings (auto or none only) * Allow budget_tokens to exceed max_tokens for interleaved thinking