or compliance-sensitive evaluations, surface the truncation as a human escalation rather than silently retrying — a loop that keeps hitting the same ceiling is not equivalent to a completed analysis.
How does output_tokens_details relate to the billed output_tokens count?
output_tokens is the inclusive, billing-authoritative total and does not change based on anything in output_tokens_details. The output_tokens_details field is a read-only decomposition for observability: it splits that same total into two components — tokens consumed by internal extended thinking and tokens appearing in the visible response. The two components sum to equal output_tokens; they are additive within it, not on top of it. Do not subtract either component from your billing calculations. output_tokens is the only authoritative figure for cost accounting and rate limit tracking. The decomposition exists to tell you where those tokens went, not to adjust how many you are billed for.
Is v0.105.0 backward-compatible with existing multi-turn conversation code?
Yes. All additions in v0.105.0 are optional and additive. The widening of BetaMessageParam.role to include "system" is backward-compatible — "user" and "assistant" remain fully valid, and no existing message arrays require modification. The new stop_reason field on advisor blocks is typed Optional[str]; code that does not check it continues to work without changes. The new output_tokens_details field in usage responses is also optional and additive. No existing parameters were renamed or removed in this release. Patch releases v0.105.1 and v0.105.2 followed on May 29, 2026 — v0.105.1 switched PyPI releases to Trusted Publishing for CI/CD provenance; v0.105.2 had no detailed public changelog at time of writing.
Do I need Claude Opus 4.8 specifically to use mid-conversation constraint blocks?
No. BetaMidConversationSystemBlockParam is part of the Beta Messages API surface and is not gated on a specific model version. It is controlled by a beta flag in the API call (e.g., betas=["mid-conversation-system-blocks-2026-05-20"]), not by the model string. Claude Opus 4.8 is a separate addition in this release — it was added as a typed constant in BetaManagedAgentsModel, independent of the mid-conversation block feature. You can use mid-conversation constraint blocks with other model versions that support the beta flag, and you can use Opus 4.8 without using mid-conversation blocks. The two features share a release but have no dependency on each other.
What v0.105.0 Means for Your Agentic Pipeline
The most significant change in this drop is the mid-conversation system block — not because of its technical complexity, but because it addresses a structural inefficiency that has been present in multi-turn agentic architectures since prompt caching was introduced. The ability to inject system-level constraints at any point in a conversation without invalidating the cache changes the economics of dynamic instruction management in long-running agents. Teams building compliance-sensitive or multi-tenant agentic systems now have a cleaner path to per-session constraint enforcement that does not require architectural workarounds or upfront constraint enumeration.
The Opus 4.8 upgrade is the more immediate, lower-effort win for most teams: update the model string in BetaManagedAgentsModel, gain roughly 5 percentage points on agentic coding benchmarks, and pay nothing extra. The output_tokens_details field is worth adding to any existing billing or observability pipeline that uses extended thinking — it delivers decomposed cost visibility at no instrumentation cost. The advisor stop_reason field closes a silent failure mode that was already present in production pipelines using advisor tool patterns; the check adds a few lines of code and meaningfully reduces risk in safety-sensitive evaluation flows.
The upload size cap and the sandbox rename are narrower in scope. The upload cap is relevant specifically for document-processing pipelines; the sandbox rename is a label hygiene item for teams with CMA runbooks. Anthropic has separately indicated that Mythos-class models with higher capability ceilings are expected within weeks, pending cybersecurity clearance . Whether the mid-conversation block type migrates from beta to stable API paths alongside that release is not yet confirmed, but the pattern it establishes is likely to become the standard mechanism for runtime constraint injection across future model generations.
Last updated: 2026-05-30. Based on Anthropic Python SDK v0.105.0 through v0.105.2, released May 28–29, 2026. Patch release v0.105.2 had no detailed public changelog at time of writing. Benchmark figures reflect Anthropic internal evaluations published May 2026.



