Claude tool-use round trips need Anthropic-native message blocks
ReActAgent appends an assistant message containing tool_calls and one or more tool-result messages before the next provider request. ClaudeProvider.generate() currently serializes those messages with the generic OpenAI-shaped Message.to_dict() payload (tool_calls on the assistant and role: tool for results). Anthropic Messages API expects tool_use blocks on the assistant turn and tool_result blocks inside a user turn.
This issue tracks a focused fix to serialize the existing provider-neutral messages into the Anthropic wire format and cover the round trip with unit tests.
Claude tool-use round trips need Anthropic-native message blocks
ReActAgentappends an assistant message containingtool_callsand one or more tool-result messages before the next provider request.ClaudeProvider.generate()currently serializes those messages with the generic OpenAI-shapedMessage.to_dict()payload (tool_callson the assistant androle: toolfor results). Anthropic Messages API expectstool_useblocks on the assistant turn andtool_resultblocks inside a user turn.This issue tracks a focused fix to serialize the existing provider-neutral messages into the Anthropic wire format and cover the round trip with unit tests.