Skip to content

fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.296 - #71

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/anthropic-ai-claude-agent-sdk-0.x
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/anthropic-ai-claude-agent-sdk-0.x

Conversation

@renovate

@renovate renovate Bot commented Jul 21, 2026 •

Copy link
Copy Markdown

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@anthropic-ai/claude-agent-sdk 0.3.207 → 0.3.296 age confidence

Release Notes

anthropics/claude-agent-sdk-typescript (@​anthropic-ai/claude-agent-sdk)

v0.3.296

Compare Source

  • Added claude_code_version to the initialize control response so clients know the CLI version before the first turn
  • Added autoCompactWindow to AgentDefinition, so a subagent can auto-compact earlier than the main conversation's window
  • Fixed the sandbox option discarding an inline settings.sandbox block: the two now merge, the option's values win, and deny and credential lists from both sides are combined
  • Changed the default limit on MCP tool descriptions sent up front and on MCP server instructions, in-process SDK servers included, from 2,048 to 4,096 characters
  • Changed permission answers that arrive after a restart to be parsed like live ones: over 4,096 updatedPermissions entries count as a denial, and a malformed list is ignored as a whole
  • Updated to parity with Claude Code v2.1.296

v0.3.295

Compare Source

  • Added overageEnabled to SDKRateLimitInfo: on usage-limit warnings, whether the account has extra usage turned on
  • Fixed an MCP server added with mcp_set_servers sometimes keeping an outdated tool list when another server in the same request connected later
  • Fixed assistant text blocks losing their citations in streamed responses
  • Fixed Claude being told "disabled by the user" about an in-process MCP server that was switched off with toggleMcpServer()
  • Fixed rate_limit_event with status allowed_warning omitting overageStatus, overageResetsAt and overageDisabledReason, which allowed and rejected events already carry
  • Changed MCP tool descriptions the model loads through tool search, including those from in-process SDK servers, to be cut at 16,384 characters instead of 2,048
  • Changed a permission answer whose updatedPermissions holds over 4,096 updates, rules and directories to count as a denial
  • Changed tool_result_meta[].non_execution_kind to be absent when a mod withheld the result of a tool that ran without error; it was permission-rule
  • Changed pasted_content on user messages to be ignored when it holds over 1,000 entries and blocks in all
  • Changed how the SDK passes option values to Claude Code: the values of its named options are now sent in the same argument as their flag (--flag=value)
  • Changed tool_use_result for MCP Apps tools: structuredContent or _meta over 8,388,608 JSON characters is left off, and _meta.ui with no ui:// resource no longer lifts the ordinary caps
  • Changed tool_use_result for MCP tools: when a long result is saved to a file, or cut because it could not be, the text kept past 500,000 characters is dropped, with a note of how much
  • Changed tool_use_result for MCP tools: a result _meta over 1,048,576 JSON characters is left off, except for SDK-server tools; so is text blocks' _meta that totals over 65,536
  • Updated to parity with Claude Code v2.1.295

v0.3.294

Compare Source

  • Updated to parity with Claude Code v2.1.294

v0.3.293

Compare Source

  • Added an optional subagent_type to background_tasks_changed task entries, so hosts can name each subagent's type without pairing with task_started
  • Updated to parity with Claude Code v2.1.293

v0.3.292

Compare Source

  • Added agent_id to the assistant and user messages a subagent produces; it equals the task_id on that subagent's task events and stays the same when the subagent is resumed
  • Added parent_task_id to task_started events and background_tasks_changed entries, naming the subagent task that launched a task
  • Added run_id to background task events and origin.runId to task notifications, so a host can tell a resumed task's runs apart
  • Added typed sections and notes to the ListAgents tool's tool_use_result, so hosts can list agents without parsing its text
  • Added recipient_kind to SendMessage tool_use inputs on assistant messages, and their top-level approve is now always a boolean, so hosts no longer infer them from the raw input
  • Added two optional fields to the ReadNotifications tool output: read_at, when the tool read the session's queued notifications, and arrived_at on each notification, when it reached the session
  • Fixed subagents with a declared auto permission mode having their tool calls decided by the auto-mode classifier instead of the canUseTool callback when auto mode is unavailable
  • Changed background_tasks_changed for a finishing background task to arrive after that task's task_updated and task_notification
  • Changed canUseTool options to carry suppressAlwaysAllowRule: true for connector tools that an organization set to require approval, so hosts can hide their "always allow" choice
  • Updated to parity with Claude Code v2.1.292

v0.3.291

Compare Source

  • Updated to parity with Claude Code v2.1.291

v0.3.290

Compare Source

  • Added an optional offset field to the WebFetch tool input for reading on through long pages
  • Fixed failed Claude in Chrome tool calls dropping the result's _meta: when the result has one, tool_use_result is now { content, _meta }, as for other MCP tools
  • Fixed deny and ask rules missing toolAliases tools when written with a wildcard (Bash*), a match-all pattern (Bash(**), also on the mapped name), or an input field also in disallowedTools
  • Fixed a user message sent again under the same uuid being replayed (--replay-user-messages) while the first copy still waited for its turn; its replay now comes when a turn takes it
  • Fixed includePartialMessages streams leaving a message without message_stop when the stream was cut, interrupted or fell back to non-streaming
  • Changed user_message_uuid, user_message_uuids and resume_reason to also be set on a turn a restarted worker resumes from a permission answer or from tool calls still in flight
  • Updated to parity with Claude Code v2.1.290

v0.3.289

Compare Source

  • Updated to parity with Claude Code v2.1.289

v0.3.288

Compare Source

  • Updated to parity with Claude Code v2.1.288

v0.3.287

Compare Source

  • Added optional remote-session latency fields (first_text_post_queue_wait_ms, first_text_post_queued_behind) to the success result message
  • Fixed includePartialMessages streams sending a cut-short reply's message_stop late or never, so apps could show the reply as still in progress
  • Fixed the error for a revoked claude.ai login, which now reads "Failed to authenticate: OAuth token revoked" instead of a generic or "does not have access" message
  • Fixed a tool call to an in-process MCP server being left waiting after toggleMcpServer() disabled the server or setMcpServers() removed it
  • Fixed commands_changed arriving before init, or twice, at session start: the initialize response now includes commands registered at startup
  • Changed tool_use_result for a WebFetch or WebSearch call that steps aside for a priority "now" message to { detachedToolCall: true }; the result follows in a later turn
  • Changed tool_use_result for MCP tools: structuredContent over 1,048,576 JSON characters is left off and structuredContentOmitted: true set, except for SDK-server and MCP Apps tools
  • Updated to parity with Claude Code v2.1.287

v0.3.286

Compare Source

  • Added the initialize response field sdk_mcp_manifests_parked and the system/init capabilities sdk_mcp_manifests and sdk_mcp_tools_list_changed
  • Fixed foreground subagents sometimes not receiving the task-tracking tools listed in tools or allowedTools
  • Fixed an SDK MCP server listing no tools when one tool's schema cannot be converted to JSON Schema; that tool is now left out with a warning naming it
  • Fixed toggleMcpServer() not disconnecting, and failing to re-enable, an in-process MCP server created with createSdkMcpServer(), except one named claude-in-chrome
  • Changed a person's priority now message to move running shell commands, agents and MCP calls to the background and join the running turn instead of stopping it
  • Changed the TypeScript Agent SDK to leave an omitted permissionMode to Claude Code, so a settings defaultMode now applies and, on third-party providers or with telemetry off, the session starts in auto mode like claude -p; pass permissionMode: 'default' for manual approvals
  • Updated to parity with Claude Code v2.1.286

v0.3.285

Compare Source

  • Added an optional read.title (the artifact's stored title) to the Artifact tool's structured read result
  • Added provider_not_allowed to startup_failure_reason and allowedProviders to the Settings type
  • Fixed sessions with CLAUDE_CODE_FORK_SUBAGENT=1: a subagent's own Agent call now runs in the foreground, so the subagent gets the child's result
  • Fixed getSessionMessages() leaving out a message sent while Claude was working when the process stopped before the reply, or when another prompt followed it with no reply in between
  • Fixed toggleMcpServer(name, false) leaving the connection open for a server that had not yet connected when the session started, or whose config was edited after it connected
  • Fixed rewind_conversation leaving a backgrounded MCP tool call running after the message that started it was removed
  • Changed Bash/PowerShell timeout to bound a run_in_background command (was ignored; default 30 min, max 2 h); the stopped task notification for a stop at that limit says why
  • Changed getSubagentMessages() to also return the messages a subagent read while it ran, such as a message sent to it; offset and limit count these rows
  • Updated to parity with Claude Code v2.1.285

v0.3.284

Compare Source

  • Added a renamed skill's directory name to its SlashCommand aliases when the name is plain and Claude Code ships no command by that name
  • Added applied.ultracodeAvailable and applied.ultracodeRequested to getSettings(): whether this session can run Ultracode, and whether it is requested, independent of whether it is in effect
  • Fixed forkSession() copies reading back the wrong history when cut at a progress row or fork briefing after a rewind, or when the session was compacted with some messages kept
  • Fixed getSessionMessages() leaving out messages from other agents, sessions and channels that the CLI transcript shows
  • Fixed { decision: 'block' } returned by Elicitation and ElicitationResult hook callbacks being ignored; it now declines the MCP elicitation
  • Fixed query() closing stdin before a follow-up turn woken by a finished background agent, which failed that turn's hooks, canUseTool and SDK MCP calls with "Stream closed"
  • Changed the first turn to still wait up to 2s for connecting MCP servers named in allowedTools or by an mcp_tool hook, even with CLAUDE_CODE_MCP_STARTUP_WAIT_MS set to 0
  • Changed applyFlagSettings({ ultracode: true }) to keep the current effort level instead of switching to xhigh; an effortLevel that changes the level without ultracode turns Ultracode off
  • Updated to parity with Claude Code v2.1.284

v0.3.283

Compare Source

  • Added plugin_errors to the SDKSystemMessage type (system/init), including path for a --plugin-dir entry that did not load
  • Fixed getSessionMessages() returning, and forkSession() copying, a rewound-away branch when the newest branch ends at a meta row or a local command's rows
  • Changed stream-json output to include warnings and notices raised during a turn as system/informational messages; it previously dropped them
  • Changed the set_max_thinking_tokens control request: omitting max_thinking_tokens now leaves the session's thinking budget unchanged; send null to reset it to the session default
  • Updated to parity with Claude Code v2.1.283

v0.3.282

Compare Source

  • Added support for strictKnownMarketplaces and blockedMarketplaces in host-supplied managedSettings: the allowlist applies only where admin policy sets none; the blocklist adds to the admin's
  • Added @anthropic-ai/claude-agent-sdk/core, a smaller entry point for apps that bundle the SDK (query, MCP tool helpers, session mutations, resolveSettings); it uses your installed zod and MCP SDK
  • Added prewarm() and SpareProcess.claim() (alpha): start a Claude Code process before its session is known and bind it to a folder and its per-session options later
  • Fixed readMcpResource() relaying content _meta keys under the CLI-reserved com.anthropic/ prefix; they are now dropped, as for tool results
  • Updated to parity with Claude Code v2.1.282

v0.3.281

Compare Source

  • Added optional trigger, user_message_uuid and timestamp fields to the conversation_reset message so clients can tell what reset the conversation, match a /clear to its message, and show when the reset happened
  • Fixed permission and dialog callbacks still being invoked for requests that arrived after close()
  • Fixed control requests issued after a query closed hanging or leaking, and permission prompts that could not be cancelled after a cancelled request was redelivered
  • Fixed session_state_changed staying at requires_action after an overlapping permission prompt and sandbox network-access prompt were both answered
  • Improved SDK package size and load time: sdk.mjs no longer bundles unused dependencies (1.47 MB → 0.97 MB)
  • Improved startup time for query() sessions with in-process MCP servers (createSdkMcpServer) by running their handshake inside the SDK; initialize may now wait up to 250 ms for them
  • Improved SDK session start-up: the CLI now answers the host's initialize request before starting its background start-up work
  • Changed the Settings type's attribution field to boolean | {...}; TypeScript code that reads attribution.commit from returned settings needs a type narrow
  • Updated to parity with Claude Code v2.1.281

v0.3.280

Compare Source

  • Added optional fireReason to the task-notification SDKMessageOrigin; a local host's declared scheduled-task fire is honored only in a process it started with CLAUDE_CODE_HOST_SCHEDULED_RUN=1
  • Added verbatimPrompts option: prompts are delivered as written — no @path expansion, no slash-command dispatch and, on current CLIs, no ambient attachments with the prompt (Claude Code 2.1.248+)
  • Added _meta to mcpServerStatus() tool entries, carrying a tool's MCP Apps ui metadata so a host can find its ui:// resource
  • Added readMcpResource() (alpha) to read an MCP Apps ui:// resource from an MCP server that Claude Code connected
  • Improved askSideQuestion(): asked while a turn is running, it now sees that turn (its prompt, replies and finished tool results so far) instead of only the last completed turn
  • Improved unattended retry (CLAUDE_CODE_RETRY_WATCHDOG): a usage-limit wait emits rate_limit_event (rejected, resetsAt) as it begins; api_retry heartbeats continue while sub-agent work waits
  • Changed session_state_changed events (CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS=1) to report requires_action while an MCP elicitation waits on the user, as for permission prompts
  • Changed headless sessions to cancel an MCP server's pending form question when the tool call that drew it ends
  • Updated to parity with Claude Code v2.1.280

v0.3.278

Compare Source

  • Updated to parity with Claude Code v2.1.278

v0.3.277

Compare Source

  • Added an optional builtin field to SlashCommand, set when a command is built into Claude Code
  • Added pasted_content to SDKUserMessage: text the user pasted rather than typed, appended after the typed prompt
  • Added optional remote-session latency fields (first_text_post_ms, first_text_post_wall_ms, first_stream_post_queue_wait_ms, first_stream_post_queued_behind) to the success result message
  • Added 'userSettings' as an updateSettings() source, accepting only effortLevel, which is saved for the session's current model as /effort saves it
  • Fixed a resumed or forked session's total_cost_usd, modelUsage and get_usage totals starting at zero instead of continuing from the earlier turns (maxBudgetUsd is unchanged)
  • Changed SDKUsageReport usage rows to always carry severity and is_active: the report relays only rows from a live server reply, and none while the usage fetch is failing
  • Updated to parity with Claude Code v2.1.277

v0.3.276

Compare Source

  • Updated to parity with Claude Code v2.1.276

v0.3.275

Compare Source

  • Fixed a deferred tool call's result being emitted with internal keys such as toolUseResult instead of tool_use_result when the tool re-runs at the start of a resumed turn
  • Fixed getSessionMessages() and forkSession() sometimes missing a turn's assistant message when called right after the turn's result message
  • Fixed forkSession({ upToMessageId }) rejecting a client-supplied SDKUserMessage.uuid that is not in UUID format
  • Fixed forkSession rejecting the id that getSessionMessages returns for a message sent while Claude was working, and a fork showing a re-run prompt twice
  • Fixed getSessionMessages() omitting a task notification or other queued message that Claude read while running a tool; it now comes back where Claude read it
  • Updated to parity with Claude Code v2.1.275

v0.3.274

Compare Source

  • Added startup_failure_reason to the error result a stream-json run writes before exiting on a known startup failure
  • Added mcpServer: {name, source} to canUseTool options, mcp_server to tool hook inputs, and source to MCP server status rows, so hosts can key trust on source === "sdk"
  • Added CLAUDE_CODE_MCP_STARTUP_WAIT_MS (pass via env) to bound or disable (0) the first-turn wait for connecting MCP servers
  • Added CLAUDE_CODE_EMIT_STARTUP_TIMING=1 for stream-json hosts: the session's first system/init then carries the per-phase startup_timing breakdown that cloud sessions already emit
  • Fixed getSessionMessages() omitting a message the user sent while Claude was running a tool; it now comes back as a user message where Claude read it
  • Fixed missing origin: {kind: 'task-notification'} on the replayed user message when a background task finishes during a running turn (--replay-user-messages)
  • Improved startup: the first turn no longer waits up to 2s for connecting MCP servers from settings files or plugins whose tools tool search defers; options.mcpServers servers are still awaited
  • Changed queued background-task completions to share one model call: each still gets its own result, all but the last empty with num_turns: 0
  • Updated to parity with Claude Code v2.1.274

v0.3.273

Compare Source

  • Added a usage_report sibling (SDKUsageReport: session totals, the plan's usage rows as the server sends them, extra usage) on the assistant message that delivers a headless /usage result
  • Added reason: "worker_restart" to task_notification messages when a background task was stopped by a worker process restart
  • Added a one-line transcript notice when the SDK host's Stop or SessionStart hook callback times out, shown once until the host answers again
  • Fixed a Stop, SubagentStop or SessionStart hook callback that exceeds its timeout being reported as a hook failure and discarding other hooks' decisions; it now counts as no decision
  • Fixed the browser SSE transport dropping the live slash-command list update (system/commands_changed)
  • Updated to parity with Claude Code v2.1.273

v0.3.272

Compare Source

  • Updated to parity with Claude Code v2.1.272

v0.3.271

Compare Source

  • Added optional omitClaudeMd to AgentDefinition in the agents option, so a subagent can run without user, project and local CLAUDE.md files; managed policy files still load
  • Fixed listSessions, getSessionMessages and getSessionInfo with dir on Windows not finding sessions for a directory on a mapped network drive or SUBST drive
  • Fixed sessionStore resume losing the global config when it is stored under the legacy .config.json name or an OAuth-suffixed file name
  • Removed persistent from the MonitorInput tool type
  • Updated to parity with Claude Code v2.1.271

v0.3.270

Compare Source

  • Updated to parity with Claude Code v2.1.270

v0.3.269

Compare Source

  • Changed user_message_uuid, user_message_uuids and resume_reason to be stamped on a turn's first complete assistant message as well as its first stream event when partial messages are on
  • Fixed result.permission_denials omitting Read, Edit and Write calls blocked by a path-scoped deny rule
  • Fixed interrupts and permission responses being delayed while a host-started MCP server OAuth sign-in waited on a slow authorization server
  • Fixed missing tool_use_id on task_started / task_notification when the CLI resumes a background subagent on its own; they now carry the agent's last call id
  • Changed plan mode to route writes through canUseTool even when allowDangerouslySkipPermissions is set; the flag now only enables switching to bypassPermissions later
  • Updated to parity with Claude Code v2.1.269

v0.3.268

Compare Source

  • Added result_index to result messages: the result's position in delivery order within the run, from 0
  • Added local_command to the result message of a turn that ran a slash command without entering the model loop, carrying the command's name
  • Added hold_on_cache_impact to the reload_plugins control request (Query.reloadPlugins({ holdOnCacheImpact: true })): holds a reload that would invalidate the session's prompt cache
  • Added resume_reason to assistant, stream-event and result messages, set only on the automatic re-run of a turn a host restart interrupted
  • Added kind (used, free, buffer, deferred) to each category in the get_context_usage control response, matching the /context result's context_usage rows
  • Added optional defaultToNo and suppressAlwaysAllowRule hints to canUseTool options: the prompt should open on its decline option, or offer no persistent "always allow" choice
  • Changed setModel() to confirm a model id the CLI doesn't know locally with the API the first time a session uses it, instead of refusing it as unrecognized
  • Changed user_message_uuid on the automatic re-run of an interrupted turn to name that turn's last user prompt
  • Changed the initialize success response to always include pending_permission_requests (empty when nothing is pending), so clients can tell that apart from an older CLI
  • Changed the task-tracking tools (TaskCreate/Get/Update/List, TodoWrite) to be default tools only on Claude 3.x, Opus 4.0–4.7, Sonnet 4.0–4.6 and Haiku 4.5; elsewhere list them in tools/allowedTools
  • Updated to parity with Claude Code v2.1.268

v0.3.267

Compare Source

  • Added getCcrEvent(query, message) and getSseLastSequenceNum(query) to the browser SDK's SSE transport, plus fromSequenceNum, onCatchUpTruncated and onDeliveryUpdate SSE options
  • Changed systemPrompt recording to default on for custom prompts and appends (a mid-session prompt change takes effect at the next compaction); pass snapshot: false to keep per-request rendering
  • Updated to parity with Claude Code v2.1.267

v0.3.266

Compare Source

  • Updated to parity with Claude Code v2.1.266

v0.3.265

Compare Source

  • Added user_message_uuid and user_message_uuids to a synthetic turn's first reply and result for a message sent with isSynthetic: true and a uuid, naming the message that started it
  • Added user_message_uuid and user_message_uuids to the first reply and the result of a turn Claude Code started itself, such as a resume, naming the messages you sent that it picked up mid-turn
  • Fixed user_message_uuid missing from the success result of a turn that sent no API request, such as a slash command
  • Fixed multi-turn sessions resetting the shell working directory to the cwd option at each new user message; a cd made by the agent now persists across turns, as in the interactive app
  • Changed user_message_uuid to be set on the first reply after each change of the message a turn is answering, instead of on one reply frame per turn
  • Updated to parity with Claude Code v2.1.265

v0.3.263

Compare Source

  • Updated to parity with Claude Code v2.1.263

v0.3.261

Compare Source

  • Added pluginDelivery: 'initialize' to send plugins over stdin so the launch command line no longer grows with the plugin count (fixes Windows start failures with many plugins)
  • Fixed query() throwing "Object not disposable" in runtimes without a native Symbol.dispose, such as Node ≤22 vm contexts (Jest's node environment, vitest vmThreads/vmForks) and Node <18.18
  • Updated to parity with Claude Code v2.1.261

v0.3.260

Compare Source

  • Added optional user_message_uuid to thinking_tokens system messages, linking thinking progress to the user message that triggered the turn
  • Added optional first_content_frame_ms, first_stream_post_ms, first_stream_post_ack_ms and first_stream_post_wall_ms fields to the success result message for remote-session latency breakdowns
  • Fixed managedSettings disableAutoMode: "disable" (either spelling) being dropped by the restrictive-only filter instead of turning auto mode off for the spawned session
  • Fixed rewindFiles() reporting success when no files could be restored (for example when checkpoint backups are missing); it now fails
  • Changed error_max_structured_output_retries results to append the last StructuredOutput tool error; validation errors now name the offending key, allowed values, and actual length or count
  • Changed rate_limit_event to also re-emit during an exceeded window on repeat 429s (about once per 30 seconds per limit window), so stream consumers can refresh stale rate-limit state
  • Updated to parity with Claude Code v2.1.260

v0.3.259

Compare Source

  • Added user_message_uuids beside user_message_uuid on a turn's first reply frame and result: every user message the turn answered, so a reply to several merged messages can be matched to each
  • Added permissionPrompts: 'none' option to auto-deny permission prompts in sessions with nobody to answer them, without disabling auto mode's classifier
  • Updated to parity with Claude Code v2.1.259

v0.3.258

Compare Source

  • Updated to parity with Claude Code v2.1.258

v0.3.257

Compare Source

  • Added thinkingTokens to ModelUsage (a subset of outputTokens), and fixed result-message usage.output_tokens_details.thinking_tokens reporting 0 instead of the session's real count
  • Added tool_use_result.resourceLinks on user messages carrying MCP tool results: the resource_link blocks the tool returned, so hosts can render returned files without parsing the result text
  • Added optional resource_links to task_notification for an auto-backgrounded MCP tool call that completed, listing the files it returned by reference; join to the call via tool_use_id
  • Fixed mcp_reconnect and mcp_toggle acting on a same-named .mcp.json / ~/.claude.json server instead of the --mcp-config or mcp_set_servers one
  • Fixed mcp_toggle disable also removing the tools of a sibling MCP server whose name extends the disabled one's (disabling foo dropped foo__bar's tools)
  • Changed mcp_set_servers to also list a server whose connection attempt throws under added (with a failed row in mcp_status), not only under errors
  • Changed Agent tool calls to emit the periodic tool_progress heartbeat (heartbeat: true) like other long tools; heartbeat frames never clear a subagent_retry indicator
  • Fixed the browser SDK bundle (@anthropic-ai/claude-agent-sdk/browser) never streaming any messages on engines without native Symbol.dispose (Safari/iOS, Firefox ESR, older Chromium)
  • Fixed a background Bash task that is still running when a stream-json session ends right after an interrupt (stdin closed) never receiving its final task_notification
  • Fixed -p giving up on a long-running background subagent without actually stopping it, so background_tasks_changed kept listing it and events for it arrived after its stopped notification
  • Added detail option to Query.getContextUsage(): 'summary' answers from the last response's usage and local estimates without per-category token-count API calls (default 'full')
  • Updated to parity with Claude Code v2.1.257

v0.3.252

Compare Source

  • Updated to parity with Claude Code v2.1.252

v0.3.251

Compare Source

  • Updated to parity with Claude Code v2.1.251

v0.3.250

Compare Source

  • Updated to parity with Claude Code v2.1.250

v0.3.248

Compare Source

  • Added a per-server timeout for SDK-hosted MCP servers (createSdkMcpServer({ timeout })), overriding MCP_TOOL_TIMEOUT for that server's tool calls

v0.3.247

Compare Source

  • Added an optional ambient flag to task_started, task_notification and background_tasks_changed task entries so hosts can exclude housekeeping tasks from activity indicators
  • Fixed the permissionMode on per-turn system/init frames reporting the mode at turn start instead of the live mode, so a mode switch right after submitting no longer sends a stale value

v0.3.246

Compare Source

  • Added optional user_message_uuid to error result messages and to the first assistant message or stream_event of each turn, linking a reply or failure to the user message that triggered it
  • Added modelUsage[*].costBasis ('list' | 'managed' | 'unknown') reporting which price table each model's costUSD was computed from
  • Added modelPricing support in the managedSettings option for hosts that set CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST; an admin-managed settings source that sets modelPricing still wins
  • Added perTaskStopAffordance option: when set, interrupt() aborts only the current turn and keeps background agents and workflows running; otherwise (and for one-shot string prompts) they stop

v0.3.245

Compare Source

  • Updated to parity with Claude Code v2.1.245

v0.3.243

  • Added optional queued_turn_count to result messages: the number of queued user sends still pending when the result was produced, so hosts know whether another turn and result will follow
  • Fixed mcp_status reporting a remote MCP server as connected after its connection dropped; it now reports pending while reconnecting, then connected or failed
  • Fixed managed disableAllHooks also disabling hook callbacks registered through the hooks option; they now keep running, matching allowManagedHooksOnly
  • Changed Read tool PDF results: the document block (or page image blocks for pages reads) now arrives inside the tool_result content instead of as a separate user message after it
  • Updated to parity with Claude Code v2.1.243

v0.3.242

  • Updated to parity with Claude Code v2.1.242

v0.3.241

Compare Source

  • Updated to parity with Claude Code v2.1.241

v0.3.240

Compare Source

  • Updated to parity with Claude Code v2.1.240

v0.3.239

Compare Source

  • total_cost_usd / modelUsage.costUSD now include the 1.1× US-only-inference (data residency) multiplier when the response reports inference_geo: "us"
  • A result held back for background subagents in one-shot mode now reports total_cost_usd, duration_api_ms and modelUsage as of its release, not the turn-end snapshot
  • Fixed SYSTEM_PROMPT_DYNAMIC_BOUNDARY in an array systemPrompt being sent to the model as literal text on Bedrock, Vertex, Foundry, and gateway providers
  • A repeated initialize on a running process is now followed by a background_tasks_changed snapshot of the live background tasks, so reconnecting hosts see work that is still running

v0.3.238

Compare Source

  • Added is_backgrounded and spawn_depth to task_started events for subagent tasks (is_backgrounded also on background Bash tasks)
  • Added suppressOriginalPrompt to UserPromptExpansion hook output, matching UserPromptSubmit
  • Added command_lifecycle state refused: a cross-session peer message the session's receive-side policy declines now reports this terminal state instead of producing no lifecycle frames
  • Fixed SDK hook callbacks silently not applying after a host re-sends initialize to an already-running CLI; the response now reports hooks_applied
  • Fixed CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=true not keeping prompt_suggestion messages on when the account is near, but not over, its usage limit
  • Changed vcs_state_changed push events to emit one event per pushed branch

v0.3.237

Compare Source

  • Updated to parity with Claude Code v2.1.237

v0.3.236

Compare Source

  • PostToolUse hooks can return hookSpecificOutput.classifierContext, a short host-asserted note about a tool call's result that the auto mode permission classifier reads alongside that result

v0.3.235

Compare Source

  • Updated to parity with Claude Code v2.1.235

v0.3.234

Compare Source

  • Removed unused bypass_permissions_disabled from ExitReason type; the value was never emitted — TypeScript consumers with an explicit case branch get a compile error on upgrade (runtime unaffected)
  • Updated the ApiKeySource type to include the values system/init actually reports (ANTHROPIC_API_KEY, apiKeyHelper, /login managed key, none)
  • vcs_state_changed events report the directory the shell finished in (an inner cd is reflected)
  • A peer origin injected by the host may declare the sending session's permission class (fromMode) so a same-class message is delivered to a recipient that runs without asking
  • SDKSystemMessage (system/init) gains an optional effort field: the session's applied effort level, or null when none is sent. Set on Remote Control bridge init frames

v0.3.233

Compare Source

  • Notification hooks now fire for pending permission prompts on the SDK path, matching the interactive REPL behavior
  • Todo/task-tracking tools (TaskCreate/TaskGet/TaskUpdate/TaskList, TodoWrite) are no longer in the default tool surface on Opus 4.8, Sonnet 5, Fable 5, Mythos 5, and newer models; name them in the tools option or reference them in allowedTools (or set CLAUDE_CODE_ENABLE_TODO_TOOLS=1) to keep them

v0.3.232

Compare Source

  • Subagent MCP tool_result frames whose result carries _meta now emit tool_use_result as { content, _meta } (matching main-loop frames) instead of a bare value
  • /context result messages now carry a structured context_usage payload (new SDKContextUsage type), so consumers can render the context-usage card without parsing the markdown table
  • vcs_state_changed events now populate the branch field for push operations, sourced from the pushed ref

v0.3.231

Compare Source

  • Updated to parity with Claude Code v2.1.231

v0.3.229

Compare Source

  • Added terminal_slash_commands to the system init message so Remote Control clients can hide terminal-oriented commands
  • Changed conversations whose messages alone exceed the API's 32 MB limit to end the turn with terminal_reason "api_error" instead of "image_error"; StopFailure error_details is "request_body_over_limit: …"

v0.3.228

Compare Source

  • Agent tool results (AgentOutput): usage.output_tokens_details is now carried through

v0.3.227

Compare Source

  • Updated to parity with Claude Code v2.1.227

v0.3.226

Compare Source

  • Updated to parity with Claude Code v2.1.226

v0.3.225

Compare Source

  • Fixed background subagents in headless/SDK sessions never resuming when a background shell command or Monitor they left running completed, so the subagent never saw the result

v0.3.224

Compare Source

  • Added crossSessionInbound and dialogExpiry settings: cross-session messages sent to a session running with bypassed permissions are held for your approval, and messages to other sessions auto-deliver
  • Added subkind: 'peer-send-message' to the task-notification member of SDKMessageOrigin, marking a notification raised by a cross-session SendMessage
  • Added source: 'archive' plugin config variant to Settings, with url and optional sha256, for installing plugins from a zip over HTTPS
  • Added sandbox credential-masking fields to Settings: decode: 'jwt' with maskClaims, extract/onExtractNoMatch on envVars, and awsPairs/sigv4 for AWS SigV4 re-signing
  • Fixed long (>200 char) project paths resolving to another project's session directory under a shared sanitized prefix; session list/get/rename/tag/fork/delete and /resume no longer cross projects

v0.3.223

Compare Source

  • Added resumeDropsTurn option: with resumeSessionAt, declares the turn a truncating resume intends to drop; the CLI refuses the resume if anything else would be discarded
  • Result messages for repeated 529 overload failures now include api_error_status: 529, so SDK consumers can detect overload terminations structurally instead of matching message text
  • Bare headless (-p / SDK query() without canUseTool) now emits system/permission_denied stream events when a tool call is auto-denied
  • Documented usage vs modelUsage on stream-json results: usage is main-loop-only and per-turn; modelUsage is cumulative, covers all query-pipeline calls, and is the field for cost accounting

v0.3.222

Compare Source

  • Fixed query({ sessionStore, resume }) not carrying user settings.json (apiKeyHelper, env, hooks, permissions) into the resumed subprocess

v0.3.221

Compare Source

  • Improved skills option validation: malformed names (delimiters or control characters) and wildcard-form names are rejected with a clear error; use skills: 'all' to enable every skill
  • Fixed external MCP servers passed via the mcpServers option not being connected before the first turn, which caused the model to emit tool calls as literal text

v0.3.220

Compare Source

  • Updated to parity with Claude Code v2.1.220

v0.3.219

Compare Source

  • Added opt-in cancel_queued to the interrupt control request (capability interrupt_cancel_queued_v1): cancels queued and pending-dispatch messages alongside the abort
  • Added fast_mode_disabled_reason to result and init messages so SDK hosts can explain why fast mode is off
  • Added DirectoryAdded lifecycle hook event to the control protocol, fired when a new working directory is registered mid-session
  • Fixed the initialize response reporting fast_mode_state from the spawn-time model after a model switch
  • Added sandbox.network.strictAllowlist to SDK settings types for deterministically denying non-allowlisted hosts in sandboxed commands
  • Added workflowSizeGuideline to SDK settings types for setting the advisory dynamic-workflow size guideline

v0.3.218

Compare Source

  • SkillToolOutput now reports background: true when a forked skill was dispatched as a detached background agent
  • Fixed the result event's api_error_status reporting null for rate-limit and overloaded errors delivered mid-stream; it now reports 429/529
  • Added canonicalModel and provider to each modelUsage entry in result messages so downstream billing can look up the correct rate table for costUSD

v0.3.217

Compare Source

  • Changed subagents to no longer spawn nested subagents by default (depth cap lowered from 5 to 1); set CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH to allow deeper nesting
  • Added a cap on concurrently-running subagents (default 20, override with CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS)
  • Fixed Remote Control sessions not re-sending pending permission prompts to clients that connect after the prompt appeared

v0.3.216

Compare Source

  • Added optional skippedLinks count to rewindFiles responses for paths the rewind safety guards refused to restore or delete
  • Added tool_result_meta sidecar to user messages (non_execution_kind, user_feedback) so consumers can classify denied, interrupted, or cancelled tool calls without string-matching result prose
  • Added optional user_message_uuid and request_sent_wall_ms fields to the success result message for cross-host request-latency correlation

v0.3.215

Compare Source

  • Updated to parity with Claude Code v2.1.215

v0.3.214

  • set_permission_mode now rejects unrecognized permission modes with an error instead of silently adopting them; the 'manual' alias is accepted at every ingress
  • Added optional subkind: 'scheduled-trigger' to the task-notification member of SDKMessageOrigin, marking deliveries that are the fired prompt of a user-configured scheduled task
  • applyFlagSettings({effortLevel}) now accepts 'max' in its TypeScript type (runtime already supported it)
  • Assistant messages truncated by interrupt() now carry aborted: true, so consumers can distinguish a mid-stream partial from a completed message
  • Added optional subagent_type and subagent_retry fields to tool_progress messages so clients can show a subagent waiting out an API rate-limit retry
  • The system/init message's plugins entries and the reload_plugins response now include each plugin's manifest version
  • SessionStart hooks now report source "fork" instead of "resume" when the session begins as a fork

v0.3.213

  • Updated to parity with Claude Code v2.1.213

v0.3.212

Compare Source

  • Fixed dash-leading resumeSessionAt and sessionId values being passed to the CLI as separate argv tokens; both now use equals-form (--flag=value)
  • Agent tool output now includes the resolved model when a mid-turn model swap changed the subagent's model

[v0.3.211](https://redirect.github.com/anthropics/claude-agent-sdk-typescript/blob/HEAD/

❗ Important

✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from 2883aa5 to 7ec82d5 Compare July 21, 2026 23:38
@codecov

codecov Bot commented Jul 21, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch 10 times, most recently from 1ac592b to 439be53 Compare July 22, 2026 19:40
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.217 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.218 Jul 22, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch 2 times, most recently from 727c105 to d04362d Compare July 23, 2026 06:34
@mergify

mergify Bot commented Jul 23, 2026 •

Copy link
Copy Markdown

This pull request does not currently match the merge queue conditions, so it cannot be queued from here. The box comes back if it matches again.

@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch 14 times, most recently from 0610874 to 8240236 Compare July 24, 2026 07:08
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.220 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.222 Aug 5, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch 2 times, most recently from 2324e24 to 57789e3 Compare August 7, 2026 23:16
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.222 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.224 Aug 7, 2026
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.224 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.226 Aug 8, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch 2 times, most recently from 850b973 to bc53712 Compare August 11, 2026 04:02
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.226 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.227 Aug 11, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from bc53712 to 2c0d2b9 Compare August 16, 2026 08:04
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.227 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.233 Aug 16, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from 2c0d2b9 to 85e4ce7 Compare August 21, 2026 03:49
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.233 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.238 Aug 21, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from 85e4ce7 to 9ad367e Compare August 29, 2026 06:28
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.238 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.251 Aug 29, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from 9ad367e to 2cf5c77 Compare September 4, 2026 20:06
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.251 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.260 Sep 4, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from 2cf5c77 to dfd34b5 Compare September 6, 2026 07:44
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.260 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.263 Sep 6, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from dfd34b5 to 1484a1f Compare September 12, 2026 20:12
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.263 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.270 Sep 12, 2026
@coderabbitai

coderabbitai Bot commented Sep 12, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: ec1984f3-d428-486d-8862-b41be05e96bb

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from 1484a1f to ba8fad1 Compare September 20, 2026 01:01
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.270 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.278 Sep 20, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from ba8fad1 to 396b56a Compare October 2, 2026 19:53
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.278 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.287 Oct 2, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from 396b56a to f0188c9 Compare October 3, 2026 19:15
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.287 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.288 Oct 3, 2026
@renovate
renovate Bot force-pushed the renovate/anthropic-ai-claude-agent-sdk-0.x branch from f0188c9 to 6407e15 Compare October 4, 2026 15:49
@renovate renovate Bot changed the title fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.288 fix(deps): update dependency @anthropic-ai/claude-agent-sdk to v0.3.289 Oct 4, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants