v0.1.81
claude_agent_sdk_python_releasesMay 11, 2026
claude_agent_sdk_python_releases ยท May 15, 2026 ยท release
Breaking Breaking: MCP servers now connect in the background by default; sessions start immediately and slow servers report status: "pending" in init until ready. Set MCP_CONNECTION_NONBLOCKING=0 to restore the old behavior of waiting up to 5s before the first query, or mark a server alwaysLoad: true to require it in turn 1. Breaking: Headless and SDK sessions now use Task tools ( TaskCreate / TaskUpdate / TaskGet / TaskList ) instead of TodoWrite . Tool consumers should accumulate by task ID instead of replacing a snapshot list. New Features EffortLevel type export : Added a public EffortLevel type alias for Claude effort string levels ( "low" , "medium" , "high" , "max" , "xhigh" ) and exported it from the package root, making it available for downstream SDK wrappers and type annotations ( #951 ) Bug Fixes Stderr callback isolation : Fixed an issue where a user-provided stderr callback that raises an exception would silently terminate the stderr reader loop, dropping all subsequent stderr lines for the rest of the session. Exceptions are now caught per-line so a failing callback does not prevent delivery of later lines ( #932 ) CancelledError in eager-flush done callback : Fixed noisy Exception in callback log messages on shutdown when pending eager-flush tasks were cancelled. The done callback now gracefully handles CancelledError instead of unconditionally calling Task.exception() ( #931 ) Tighter permission_suggestions type : Replaced list[Any] | None with list[dict[str,