This week in Claude Code · May 3, 2026
Claude Agent SDK Python: Seven Releases Bring Hook Streaming, API Error Codes, and CLI Bumps
Get the next issue in your inbox. Weekly · Free
The Claude Agent SDK for Python shipped seven releases this cycle (v0.1.74 through v0.1.80), with the most notable functional changes landing in v0.1.74 through v0.1.77. Highlights include hook event streaming via the new includeHookEvents option, deferred tool-use round trips, HTTP status codes surfaced on error results, actionable error messages replacing the generic exit-code-1 exception, and the deprecation of the 'Skill' allowed_tools string in favor of the typed skills option. Releases v0.1.78 through v0.1.80 are CLI-only bumps keeping the bundled Claude CLI current. Upgrade to v0.1.80 now to stay on the latest bundled CLI.
Agent SDK & Managed Agents
claude-agent-sdk-python v0.1.80 -- Bundled CLI bumped to 2.1.138
- This release updates only the bundled Claude CLI to version 2.1.138 with no other code changes.
- Install via pip install claude-agent-sdk==0.1.80.
claude-agent-sdk-python v0.1.79 -- Bundled CLI bumped to 2.1.137
- A maintenance release shipping CLI 2.1.137 inside the package with no functional SDK changes.
claude-agent-sdk-python v0.1.78 -- Bundled CLI bumped to 2.1.136
- Another CLI-only maintenance release, updating the bundled Claude CLI to version 2.1.136.
claude-agent-sdk-python v0.1.77 -- Actionable Error Messages and 'Skill' Deprecation
- Errors after a failed result now carry the actual error text (such as 'Reached maximum number of turns') instead of a generic exit-code-1 message, matching TypeScript SDK behavior.
- The 'Skill' string in allowed_tools is deprecated; use the typed skills field on ClaudeAgentOptions for more granular skill control.
Editor’s read: Actionable error messages are a quality-of-life win for anyone catching exceptions in production pipelines. The Skill deprecation means code using allowed_tools=['Skill'] should be migrated sooner rather than later.
claude-agent-sdk-python v0.1.76 -- HTTP Status Codes on API Errors and Permission Deserialization Fix
- ResultMessage now exposes api_error_status (int or None) so callers can distinguish rate-limit 429s, server 500s, and overload 529s without parsing raw error strings.
- A bug that left ToolPermissionContext.suggestions as plain dicts rather than PermissionUpdate instances is also fixed.
Editor’s read: The api_error_status field is safe to log and is immediately useful for retry logic: check for 429 before backing off, 529 for Anthropic overload events.
claude-agent-sdk-python v0.1.75 -- Bundled CLI bumped to 2.1.131
- Maintenance release updating only the bundled CLI to version 2.1.131.
claude-agent-sdk-python v0.1.74 -- Hook Event Streaming and Deferred Tool Use
- Adds include_hook_events to ClaudeAgentOptions so PreToolUse, PostToolUse, Stop, and other hook events are yielded as HookEventMessage objects from the message stream, achieving parity with the TypeScript SDK.
- Also adds support for the 'defer' hook decision and a new DeferredToolUse dataclass on ResultMessage.deferred_tool_use for deferred tool-use round trips.
Editor’s read: Hook event streaming is the headline feature of this cycle for Python SDK users building observability or human-in-the-loop flows. The deferred tool-use pattern lets an outer system pause agent execution, inspect the pending call, and resume -- a key building block for approval workflows.
Action Items
Immediate
- Upgrade to claude-agent-sdk==0.1.80 to get the latest bundled Claude CLI (2.1.138): pip install --upgrade claude-agent-sdk==0.1.80
- Audit any code passing 'Skill' in allowed_tools and migrate it to the skills field on ClaudeAgentOptions before the deprecation becomes a hard error.
- Add api_error_status checks to your exception handlers to classify 429, 500, and 529 failures without string parsing.
- Enable include_hook_events=True in ClaudeAgentOptions if you need observability into PreToolUse or PostToolUse events in your agent loops.
- If you use can_use_tool callbacks, test that PermissionUpdate instances are now correctly deserialized from suggestions after the v0.1.76 fix.
All Resources
- claude-agent-sdk-python v0.1.80 release
- claude-agent-sdk-python v0.1.79 release
- claude-agent-sdk-python v0.1.78 release
- claude-agent-sdk-python v0.1.77 release (actionable errors, Skill deprecation)
- claude-agent-sdk-python v0.1.76 release (api_error_status, permission fix)
- claude-agent-sdk-python v0.1.75 release
- claude-agent-sdk-python v0.1.74 release (hook streaming, deferred tool use)
This week in Claude Code
Five minutes, every Monday — the tools, releases and tactics for shipping solo.