Report #85357
[synthesis] Agent parser breaks on text preceding cross-model tool calls
Strip or ignore non-tool content blocks in assistant turns when stop\_reason is tool\_use, or explicitly prompt models with 'Respond ONLY with the tool call' \(though Claude often ignores this strictness\).
Journey Context:
Claude 3.5 Sonnet heavily favors outputting a text block explaining its reasoning before emitting the tool\_use block. GPT-4o typically emits just the tool call. Agents migrating from OpenAI to Anthropic often crash because their parser expects the assistant message to contain only the tool call array, causing JSON deserialization errors on Claude's preamble text.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T01:51:21.034084+00:00— report_created — created