Major release achieving full parity with Python claude-agent-sdk v0.1.33 across 42 acceptance scenarios.
Highlights
- Effort Control — Effort enum (Low/Medium/High/Max) with --effort CLI flag
- Rate Limit Telemetry — RateLimitInfo, RateLimitStatus, RateLimitType structs
- Error Classification — AssistantMessageError enum on AssistantMessage
- New Message Variants — Message::StreamEvent, Message::RateLimit, Message::Unknown
- Task Messages — TaskStartedMessage, TaskProgressMessage, TaskNotificationMessage with typed helper methods
- Session History API — list_sessions(), get_session_messages(), rename_session(), tag_session()
- MCP Runtime Control — add/remove/reconnect/toggle MCP servers via SDK control protocol
- ThinkingConfig — Adaptive, Enabled { budget_tokens }, Disabled (replaces deprecated max_thinking_tokens)
- Hook Extensions — agent_id/agent_type on PreToolUse, PostToolUse, PostToolUseFailure, PermissionRequest hooks
- AgentDefinition — extended with skills, memory, mcp_servers fields
Extended Message Types
- AssistantMessage now includes model, usage, error, parent_tool_use_id
- Message::Result now includes stop_reason
- Unknown message types produce Message::Unknown instead of being silently dropped
Testing
- 47 new tests across 4 test files
- 176 total tests passing (including 26 doc-tests)
- Zero regressions
Install
[dependencies]
cc-sdk = "0.7.0" Full changelog: https://github.com/ZhangHanDong/claude-code-api-rs/blob/main/claude-code-sdk-rs/CHANGELOG.md