@anthropic-ai/sdk 0.114.0 → 0.116.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/client.d.mts +3 -3
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +3 -3
  5. package/client.d.ts.map +1 -1
  6. package/client.js +9 -2
  7. package/client.js.map +1 -1
  8. package/client.mjs +9 -2
  9. package/client.mjs.map +1 -1
  10. package/core/streaming.d.mts.map +1 -1
  11. package/core/streaming.d.ts.map +1 -1
  12. package/core/streaming.js +3 -0
  13. package/core/streaming.js.map +1 -1
  14. package/core/streaming.mjs +3 -0
  15. package/core/streaming.mjs.map +1 -1
  16. package/internal/constants.d.mts.map +1 -1
  17. package/internal/constants.d.ts.map +1 -1
  18. package/internal/constants.js +0 -5
  19. package/internal/constants.js.map +1 -1
  20. package/internal/constants.mjs +0 -5
  21. package/internal/constants.mjs.map +1 -1
  22. package/internal/parse.d.mts.map +1 -1
  23. package/internal/parse.d.ts.map +1 -1
  24. package/internal/parse.js +10 -1
  25. package/internal/parse.js.map +1 -1
  26. package/internal/parse.mjs +10 -1
  27. package/internal/parse.mjs.map +1 -1
  28. package/internal/request-signal.d.mts +4 -0
  29. package/internal/request-signal.d.mts.map +1 -0
  30. package/internal/request-signal.d.ts +4 -0
  31. package/internal/request-signal.d.ts.map +1 -0
  32. package/internal/request-signal.js +50 -0
  33. package/internal/request-signal.js.map +1 -0
  34. package/internal/request-signal.mjs +45 -0
  35. package/internal/request-signal.mjs.map +1 -0
  36. package/lib/BetaMessageStream.d.mts.map +1 -1
  37. package/lib/BetaMessageStream.d.ts.map +1 -1
  38. package/lib/BetaMessageStream.js +3 -0
  39. package/lib/BetaMessageStream.js.map +1 -1
  40. package/lib/BetaMessageStream.mjs +3 -0
  41. package/lib/BetaMessageStream.mjs.map +1 -1
  42. package/lib/middleware.d.mts +5 -3
  43. package/lib/middleware.d.mts.map +1 -1
  44. package/lib/middleware.d.ts +5 -3
  45. package/lib/middleware.d.ts.map +1 -1
  46. package/lib/middleware.js +58 -15
  47. package/lib/middleware.js.map +1 -1
  48. package/lib/middleware.mjs +58 -15
  49. package/lib/middleware.mjs.map +1 -1
  50. package/lib/sessions/accumulate.js +1 -0
  51. package/lib/sessions/accumulate.js.map +1 -1
  52. package/lib/sessions/accumulate.mjs +1 -0
  53. package/lib/sessions/accumulate.mjs.map +1 -1
  54. package/lib/tools/BetaToolRunner.d.mts.map +1 -1
  55. package/lib/tools/BetaToolRunner.d.ts.map +1 -1
  56. package/lib/tools/BetaToolRunner.js +80 -7
  57. package/lib/tools/BetaToolRunner.js.map +1 -1
  58. package/lib/tools/BetaToolRunner.mjs +80 -7
  59. package/lib/tools/BetaToolRunner.mjs.map +1 -1
  60. package/package.json +1 -1
  61. package/resources/beta/agents/agents.d.mts +26 -4
  62. package/resources/beta/agents/agents.d.mts.map +1 -1
  63. package/resources/beta/agents/agents.d.ts +26 -4
  64. package/resources/beta/agents/agents.d.ts.map +1 -1
  65. package/resources/beta/agents/agents.js.map +1 -1
  66. package/resources/beta/agents/agents.mjs.map +1 -1
  67. package/resources/beta/agents/index.d.mts +1 -1
  68. package/resources/beta/agents/index.d.mts.map +1 -1
  69. package/resources/beta/agents/index.d.ts +1 -1
  70. package/resources/beta/agents/index.d.ts.map +1 -1
  71. package/resources/beta/agents/index.js.map +1 -1
  72. package/resources/beta/agents/index.mjs.map +1 -1
  73. package/resources/beta/beta.d.mts +28 -10
  74. package/resources/beta/beta.d.mts.map +1 -1
  75. package/resources/beta/beta.d.ts +28 -10
  76. package/resources/beta/beta.d.ts.map +1 -1
  77. package/resources/beta/beta.js.map +1 -1
  78. package/resources/beta/beta.mjs.map +1 -1
  79. package/resources/beta/deployments.d.mts +16 -1
  80. package/resources/beta/deployments.d.mts.map +1 -1
  81. package/resources/beta/deployments.d.ts +16 -1
  82. package/resources/beta/deployments.d.ts.map +1 -1
  83. package/resources/beta/index.d.mts +5 -5
  84. package/resources/beta/index.d.mts.map +1 -1
  85. package/resources/beta/index.d.ts +5 -5
  86. package/resources/beta/index.d.ts.map +1 -1
  87. package/resources/beta/index.js.map +1 -1
  88. package/resources/beta/index.mjs.map +1 -1
  89. package/resources/beta/messages/batches.d.mts +4 -3
  90. package/resources/beta/messages/batches.d.mts.map +1 -1
  91. package/resources/beta/messages/batches.d.ts +4 -3
  92. package/resources/beta/messages/batches.d.ts.map +1 -1
  93. package/resources/beta/messages/index.d.mts +1 -1
  94. package/resources/beta/messages/index.d.mts.map +1 -1
  95. package/resources/beta/messages/index.d.ts +1 -1
  96. package/resources/beta/messages/index.d.ts.map +1 -1
  97. package/resources/beta/messages/index.js.map +1 -1
  98. package/resources/beta/messages/index.mjs.map +1 -1
  99. package/resources/beta/messages/messages.d.mts +205 -6
  100. package/resources/beta/messages/messages.d.mts.map +1 -1
  101. package/resources/beta/messages/messages.d.ts +205 -6
  102. package/resources/beta/messages/messages.d.ts.map +1 -1
  103. package/resources/beta/messages/messages.js +1 -22
  104. package/resources/beta/messages/messages.js.map +1 -1
  105. package/resources/beta/messages/messages.mjs +1 -22
  106. package/resources/beta/messages/messages.mjs.map +1 -1
  107. package/resources/beta/sessions/events.d.mts +60 -10
  108. package/resources/beta/sessions/events.d.mts.map +1 -1
  109. package/resources/beta/sessions/events.d.ts +60 -10
  110. package/resources/beta/sessions/events.d.ts.map +1 -1
  111. package/resources/beta/sessions/events.js.map +1 -1
  112. package/resources/beta/sessions/events.mjs.map +1 -1
  113. package/resources/beta/sessions/index.d.mts +2 -2
  114. package/resources/beta/sessions/index.d.mts.map +1 -1
  115. package/resources/beta/sessions/index.d.ts +2 -2
  116. package/resources/beta/sessions/index.d.ts.map +1 -1
  117. package/resources/beta/sessions/index.js.map +1 -1
  118. package/resources/beta/sessions/index.mjs.map +1 -1
  119. package/resources/beta/sessions/sessions.d.mts +101 -6
  120. package/resources/beta/sessions/sessions.d.mts.map +1 -1
  121. package/resources/beta/sessions/sessions.d.ts +101 -6
  122. package/resources/beta/sessions/sessions.d.ts.map +1 -1
  123. package/resources/beta/sessions/sessions.js.map +1 -1
  124. package/resources/beta/sessions/sessions.mjs.map +1 -1
  125. package/resources/beta/sessions/threads/threads.d.mts +17 -5
  126. package/resources/beta/sessions/threads/threads.d.mts.map +1 -1
  127. package/resources/beta/sessions/threads/threads.d.ts +17 -5
  128. package/resources/beta/sessions/threads/threads.d.ts.map +1 -1
  129. package/resources/beta/sessions/threads/threads.js.map +1 -1
  130. package/resources/beta/sessions/threads/threads.mjs.map +1 -1
  131. package/resources/beta/webhooks.d.mts +11 -2
  132. package/resources/beta/webhooks.d.mts.map +1 -1
  133. package/resources/beta/webhooks.d.ts +11 -2
  134. package/resources/beta/webhooks.d.ts.map +1 -1
  135. package/resources/index.d.mts +1 -1
  136. package/resources/index.d.mts.map +1 -1
  137. package/resources/index.d.ts +1 -1
  138. package/resources/index.d.ts.map +1 -1
  139. package/resources/index.js.map +1 -1
  140. package/resources/index.mjs.map +1 -1
  141. package/resources/messages/messages.d.mts +52 -1
  142. package/resources/messages/messages.d.mts.map +1 -1
  143. package/resources/messages/messages.d.ts +52 -1
  144. package/resources/messages/messages.d.ts.map +1 -1
  145. package/resources/messages/messages.js +1 -22
  146. package/resources/messages/messages.js.map +1 -1
  147. package/resources/messages/messages.mjs +1 -22
  148. package/resources/messages/messages.mjs.map +1 -1
  149. package/src/client.ts +19 -3
  150. package/src/core/streaming.ts +3 -0
  151. package/src/internal/constants.ts +0 -5
  152. package/src/internal/parse.ts +10 -1
  153. package/src/internal/request-signal.ts +68 -0
  154. package/src/lib/BetaMessageStream.ts +4 -0
  155. package/src/lib/middleware.ts +61 -16
  156. package/src/lib/sessions/accumulate.ts +1 -0
  157. package/src/lib/tools/BetaToolRunner.ts +101 -8
  158. package/src/resources/beta/agents/agents.ts +30 -2
  159. package/src/resources/beta/agents/index.ts +1 -0
  160. package/src/resources/beta/beta.ts +59 -1
  161. package/src/resources/beta/deployments.ts +19 -0
  162. package/src/resources/beta/index.ts +18 -0
  163. package/src/resources/beta/messages/batches.ts +4 -3
  164. package/src/resources/beta/messages/index.ts +10 -0
  165. package/src/resources/beta/messages/messages.ts +251 -26
  166. package/src/resources/beta/sessions/events.ts +95 -9
  167. package/src/resources/beta/sessions/index.ts +7 -0
  168. package/src/resources/beta/sessions/sessions.ts +127 -3
  169. package/src/resources/beta/sessions/threads/threads.ts +21 -5
  170. package/src/resources/beta/webhooks.ts +16 -1
  171. package/src/resources/index.ts +2 -0
  172. package/src/resources/messages/messages.ts +53 -24
  173. package/src/tools/agent-toolset/node.browser.ts +14 -0
  174. package/src/tools/agent-toolset/node.ts +19 -8
  175. package/src/version.ts +1 -1
  176. package/tools/agent-toolset/node.browser.d.mts +9 -0
  177. package/tools/agent-toolset/node.browser.d.mts.map +1 -1
  178. package/tools/agent-toolset/node.browser.d.ts +9 -0
  179. package/tools/agent-toolset/node.browser.d.ts.map +1 -1
  180. package/tools/agent-toolset/node.browser.js +13 -1
  181. package/tools/agent-toolset/node.browser.js.map +1 -1
  182. package/tools/agent-toolset/node.browser.mjs +11 -0
  183. package/tools/agent-toolset/node.browser.mjs.map +1 -1
  184. package/tools/agent-toolset/node.d.mts +9 -0
  185. package/tools/agent-toolset/node.d.mts.map +1 -1
  186. package/tools/agent-toolset/node.d.ts +9 -0
  187. package/tools/agent-toolset/node.d.ts.map +1 -1
  188. package/tools/agent-toolset/node.js +18 -6
  189. package/tools/agent-toolset/node.js.map +1 -1
  190. package/tools/agent-toolset/node.mjs +16 -5
  191. package/tools/agent-toolset/node.mjs.map +1 -1
  192. package/version.d.mts +1 -1
  193. package/version.d.ts +1 -1
  194. package/version.js +1 -1
  195. package/version.mjs +1 -1
  196. package/lib/tools/ToolRunner.d.mts +0 -132
  197. package/lib/tools/ToolRunner.d.mts.map +0 -1
  198. package/lib/tools/ToolRunner.d.ts +0 -132
  199. package/lib/tools/ToolRunner.d.ts.map +0 -1
  200. package/lib/tools/ToolRunner.js +0 -294
  201. package/lib/tools/ToolRunner.js.map +0 -1
  202. package/lib/tools/ToolRunner.mjs +0 -290
  203. package/lib/tools/ToolRunner.mjs.map +0 -1
  204. package/src/lib/tools/ToolRunner.ts +0 -381
@@ -48,28 +48,7 @@ import {
48
48
 
49
49
  const DEPRECATED_MODELS: {
50
50
  [K in Model]?: string;
51
- } = {
52
- 'claude-1.3': 'November 6th, 2024',
53
- 'claude-1.3-100k': 'November 6th, 2024',
54
- 'claude-instant-1.1': 'November 6th, 2024',
55
- 'claude-instant-1.1-100k': 'November 6th, 2024',
56
- 'claude-instant-1.2': 'November 6th, 2024',
57
- 'claude-3-sonnet-20240229': 'July 21st, 2025',
58
- 'claude-3-opus-20240229': 'January 5th, 2026',
59
- 'claude-2.1': 'July 21st, 2025',
60
- 'claude-2.0': 'July 21st, 2025',
61
- 'claude-3-7-sonnet-latest': 'February 19th, 2026',
62
- 'claude-3-7-sonnet-20250219': 'February 19th, 2026',
63
- 'claude-3-5-haiku-latest': 'February 19th, 2026',
64
- 'claude-3-5-haiku-20241022': 'February 19th, 2026',
65
- 'claude-opus-4-0': 'June 15th, 2026',
66
- 'claude-opus-4-20250514': 'June 15th, 2026',
67
- 'claude-sonnet-4-0': 'June 15th, 2026',
68
- 'claude-sonnet-4-20250514': 'June 15th, 2026',
69
- 'claude-opus-4-1': 'August 5th, 2026',
70
- 'claude-opus-4-1-20250805': 'August 5th, 2026',
71
- 'claude-mythos-preview': 'June 30th, 2026',
72
- };
51
+ } = {};
73
52
 
74
53
  const MODELS_TO_WARN_WITH_THINKING_ENABLED: Model[] = ['claude-mythos-preview', 'claude-opus-4-6'];
75
54
 
@@ -1441,6 +1420,8 @@ export type BetaContentBlockParam =
1441
1420
  | BetaContainerUploadBlockParam
1442
1421
  | BetaCompactionBlockParam
1443
1422
  | BetaMidConversationSystemBlockParam
1423
+ | BetaRequestToolAdditionBlock
1424
+ | BetaRequestToolRemovalBlock
1444
1425
  | BetaFallbackBlockParam;
1445
1426
 
1446
1427
  export interface BetaContentBlockSource {
@@ -1631,6 +1612,94 @@ export interface BetaFallbackBlockParam {
1631
1612
  trigger?: unknown;
1632
1613
  }
1633
1614
 
1615
+ /**
1616
+ * No reprice was applied; `reason` says why.
1617
+ */
1618
+ export interface BetaFallbackCreditNotApplied {
1619
+ /**
1620
+ * Why the reprice was not applied.
1621
+ *
1622
+ * A closed enum; additions to the redemption-check vocabulary arrive as deliberate
1623
+ * schema updates.
1624
+ */
1625
+ reason:
1626
+ | 'body_mismatch'
1627
+ | 'continuation_excluded'
1628
+ | 'continuation_only'
1629
+ | 'expired'
1630
+ | 'invalid_target_model'
1631
+ | 'not_enabled'
1632
+ | 'reprice_unavailable'
1633
+ | 'temporarily_unavailable'
1634
+ | 'variant_fields_present'
1635
+ | 'wrong_organization'
1636
+ | 'wrong_platform'
1637
+ | 'wrong_workspace';
1638
+
1639
+ type: 'not_applied';
1640
+
1641
+ /**
1642
+ * Request fields to remove before retrying, so the retry can redeem this token.
1643
+ *
1644
+ * Present exactly when `reason` is `variant_fields_present` — never null, never an
1645
+ * empty array; absent otherwise. Fields are named only from your own request, and
1646
+ * only after the sealed variant hash matched. A served best-effort retry has
1647
+ * already been billed at normal price; nothing redeems retroactively, but a
1648
+ * corrected re-send inside the token's five-minute window can still redeem.
1649
+ */
1650
+ remove_to_redeem?: Array<string> | null;
1651
+ }
1652
+
1653
+ /**
1654
+ * The reprice was applied: the retry is billed as if the conversation had been on
1655
+ * the retry model all along.
1656
+ */
1657
+ export interface BetaFallbackCreditRedeemed {
1658
+ type: 'redeemed';
1659
+ }
1660
+
1661
+ /**
1662
+ * Object form of `fallback_credit_token`: the token plus a redemption mode.
1663
+ *
1664
+ * Requires `anthropic-beta: fallback-credit-2026-07-01`; without that header the
1665
+ * field accepts the bare string only. The bare string and the mode-less object are
1666
+ * equivalent (both select `strict`), so wrapping an existing token changes nothing
1667
+ * by itself.
1668
+ */
1669
+ export interface BetaFallbackCreditTokenParam {
1670
+ /**
1671
+ * The opaque `fallback_credit_token` from a prior refusal's `stop_details` — the
1672
+ * same string the bare-string form carries.
1673
+ */
1674
+ token: string;
1675
+
1676
+ /**
1677
+ * How a failing token affects the retry. `strict` (the default, and the
1678
+ * bare-string behavior): a failing redemption is a 400 and the retry is not
1679
+ * served. `best_effort`: the retry is served either way — a token-layer failure no
1680
+ * longer rejects the request; the retry proceeds at normal price and the outcome
1681
+ * is reported on the response's `usage.fallback_credit`. Two failures stay hard in
1682
+ * both modes: a malformed token, and combining `fallback_credit_token` with
1683
+ * `fallbacks`.
1684
+ */
1685
+ mode?: 'strict' | 'best_effort';
1686
+ }
1687
+
1688
+ /**
1689
+ * Outcome of the `fallback_credit_token` presented on this request.
1690
+ */
1691
+ export interface BetaFallbackCreditUsage {
1692
+ /**
1693
+ * Whether the fallback-credit reprice was applied to this response's billing.
1694
+ *
1695
+ * A union discriminated on `type`. `redeemed`: the retry is billed as if the
1696
+ * conversation had been on the retry model all along — including when the
1697
+ * resulting shift is zero because there was nothing to move. `not_applied`: no
1698
+ * reprice was applied; the arm's `reason` says why.
1699
+ */
1700
+ status: BetaFallbackCreditRedeemed | BetaFallbackCreditNotApplied;
1701
+ }
1702
+
1634
1703
  /**
1635
1704
  * Identifies one hop of a fallback transition.
1636
1705
  */
@@ -1765,6 +1834,14 @@ export interface BetaFallbackRefusalTrigger {
1765
1834
  type: 'refusal';
1766
1835
  }
1767
1836
 
1837
+ /**
1838
+ * Opt-in server-side retry on one or more substitute models when the requested
1839
+ * model declines for policy reasons. Tried in order: if the first entry also
1840
+ * declines, the second is tried, and so on. The string "default" requests the
1841
+ * requested model's server-defined default fallback configuration.
1842
+ */
1843
+ export type BetaFallbacksParam = Array<BetaFallbackParam> | 'default';
1844
+
1768
1845
  export interface BetaFileDocumentSource {
1769
1846
  file_id: string;
1770
1847
 
@@ -2225,6 +2302,11 @@ export interface BetaMessageDeltaUsage {
2225
2302
  */
2226
2303
  cache_read_input_tokens: number | null;
2227
2304
 
2305
+ /**
2306
+ * Outcome of the `fallback_credit_token` presented on this request.
2307
+ */
2308
+ fallback_credit: BetaFallbackCreditUsage | null;
2309
+
2228
2310
  /**
2229
2311
  * The cumulative number of input tokens which were used.
2230
2312
  */
@@ -2347,7 +2429,7 @@ export interface BetaMidConversationSystemBlockParam {
2347
2429
  /**
2348
2430
  * System instruction text blocks.
2349
2431
  */
2350
- content: Array<BetaTextBlockParam>;
2432
+ content: Array<BetaTextBlockParam | BetaRequestToolAdditionBlock | BetaRequestToolRemovalBlock>;
2351
2433
 
2352
2434
  type: 'mid_conv_system';
2353
2435
 
@@ -2515,12 +2597,28 @@ export type BetaRawMessageStreamEvent =
2515
2597
  | BetaRawContentBlockStopEvent;
2516
2598
 
2517
2599
  export interface BetaRedactedThinkingBlock {
2600
+ /**
2601
+ * The contents of this redacted thinking block, returned when portions of the
2602
+ * model's thinking were safety-redacted. This field is opaque and encrypted, with
2603
+ * no readable content.
2604
+ *
2605
+ * Pass `redacted_thinking` blocks back to the API unchanged when continuing a
2606
+ * multi-turn conversation.
2607
+ *
2608
+ * See
2609
+ * [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#redacted-thinking-blocks)
2610
+ * for details.
2611
+ */
2518
2612
  data: string;
2519
2613
 
2520
2614
  type: 'redacted_thinking';
2521
2615
  }
2522
2616
 
2523
2617
  export interface BetaRedactedThinkingBlockParam {
2618
+ /**
2619
+ * The `data` value of this redacted thinking block, exactly as returned by the API
2620
+ * in a previous response. Opaque and encrypted; pass it back unchanged.
2621
+ */
2524
2622
  data: string;
2525
2623
 
2526
2624
  type: 'redacted_thinking';
@@ -2669,6 +2767,50 @@ export interface BetaRequestMCPToolResultBlockParam {
2669
2767
  is_error?: boolean;
2670
2768
  }
2671
2769
 
2770
+ /**
2771
+ * Mid-conversation directive to surface a declared tool.
2772
+ *
2773
+ * `tool` references a tool (or MCP toolset) by name from the request's `tools`; it
2774
+ * is offered to the model from this point in the conversation onward.
2775
+ */
2776
+ export interface BetaRequestToolAdditionBlock {
2777
+ /**
2778
+ * Reference to a single tool the caller declared directly in `tools[]`. Does not
2779
+ * accept the composed `{server}_{name}` form the server assigns to MCP-resolved
2780
+ * tools — use `mcp_tool_reference` or `mcp_toolset_reference` for those.
2781
+ */
2782
+ tool: BetaToolChangeToolReference | BetaToolChangeMCPToolReference | BetaToolChangeMCPToolsetReference;
2783
+
2784
+ type: 'tool_addition';
2785
+
2786
+ /**
2787
+ * Create a cache control breakpoint at this content block.
2788
+ */
2789
+ cache_control?: BetaCacheControlEphemeral | null;
2790
+ }
2791
+
2792
+ /**
2793
+ * Mid-conversation directive to withdraw a tool.
2794
+ *
2795
+ * `tool` references a tool (or MCP toolset) by name from the request's `tools`; it
2796
+ * is no longer offered to the model from this point in the conversation onward.
2797
+ */
2798
+ export interface BetaRequestToolRemovalBlock {
2799
+ /**
2800
+ * Reference to a single tool the caller declared directly in `tools[]`. Does not
2801
+ * accept the composed `{server}_{name}` form the server assigns to MCP-resolved
2802
+ * tools — use `mcp_tool_reference` or `mcp_toolset_reference` for those.
2803
+ */
2804
+ tool: BetaToolChangeToolReference | BetaToolChangeMCPToolReference | BetaToolChangeMCPToolsetReference;
2805
+
2806
+ type: 'tool_removal';
2807
+
2808
+ /**
2809
+ * Create a cache control breakpoint at this content block.
2810
+ */
2811
+ cache_control?: BetaCacheControlEphemeral | null;
2812
+ }
2813
+
2672
2814
  export interface BetaSearchResultBlockParam {
2673
2815
  content: Array<BetaTextBlockParam>;
2674
2816
 
@@ -2765,6 +2907,11 @@ export interface BetaServerToolUseBlockParam {
2765
2907
  }
2766
2908
 
2767
2909
  export interface BetaSignatureDelta {
2910
+ /**
2911
+ * The `signature` for this thinking block: an opaque value used to verify that the
2912
+ * block was generated by Claude when it is passed back to the API. Delivered in a
2913
+ * `signature_delta` event just before the block's `content_block_stop` event.
2914
+ */
2768
2915
  signature: string;
2769
2916
 
2770
2917
  type: 'signature_delta';
@@ -2992,16 +3139,41 @@ export interface BetaTextEditorCodeExecutionViewResultBlockParam {
2992
3139
  }
2993
3140
 
2994
3141
  export interface BetaThinkingBlock {
3142
+ /**
3143
+ * A value used to verify that this thinking block was generated by Claude when it
3144
+ * is passed back to the API.
3145
+ *
3146
+ * This is an opaque field and should not be interpreted or parsed. When passing
3147
+ * thinking blocks back to the API (required when using tools with extended
3148
+ * thinking), pass them back exactly as received, with this field intact.
3149
+ *
3150
+ * See
3151
+ * [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)
3152
+ * for details.
3153
+ */
2995
3154
  signature: string;
2996
3155
 
3156
+ /**
3157
+ * The text of Claude's thinking process for this block.
3158
+ */
2997
3159
  thinking: string;
2998
3160
 
2999
3161
  type: 'thinking';
3000
3162
  }
3001
3163
 
3002
3164
  export interface BetaThinkingBlockParam {
3165
+ /**
3166
+ * The `signature` value of this thinking block, exactly as returned by the API in
3167
+ * a previous response. Used to verify that the block was generated by Claude.
3168
+ *
3169
+ * Thinking blocks must be passed back unmodified and in their original order; a
3170
+ * modified block results in a 400 `invalid_request_error`.
3171
+ */
3003
3172
  signature: string;
3004
3173
 
3174
+ /**
3175
+ * The `thinking` text of this block as returned by the API.
3176
+ */
3005
3177
  thinking: string;
3006
3178
 
3007
3179
  type: 'thinking';
@@ -3077,6 +3249,11 @@ export interface BetaThinkingDelta {
3077
3249
  */
3078
3250
  estimated_tokens: number | null;
3079
3251
 
3252
+ /**
3253
+ * The incremental `thinking` text for this content block. Concatenate the
3254
+ * `thinking` values of successive `thinking_delta` events to assemble the block's
3255
+ * full `thinking` value.
3256
+ */
3080
3257
  thinking: string;
3081
3258
 
3082
3259
  type: 'thinking_delta';
@@ -3253,6 +3430,38 @@ export interface BetaToolBash20250124 {
3253
3430
  strict?: boolean;
3254
3431
  }
3255
3432
 
3433
+ /**
3434
+ * Reference to a single MCP tool by its server and remote name — the same
3435
+ * `server_name`/`name` pair `mcp_tool_use` carries.
3436
+ */
3437
+ export interface BetaToolChangeMCPToolReference {
3438
+ name: string;
3439
+
3440
+ server_name: string;
3441
+
3442
+ type: 'mcp_tool_reference';
3443
+ }
3444
+
3445
+ /**
3446
+ * Reference to every tool in the named MCP server's toolset.
3447
+ */
3448
+ export interface BetaToolChangeMCPToolsetReference {
3449
+ server_name: string;
3450
+
3451
+ type: 'mcp_toolset_reference';
3452
+ }
3453
+
3454
+ /**
3455
+ * Reference to a single tool the caller declared directly in `tools[]`. Does not
3456
+ * accept the composed `{server}_{name}` form the server assigns to MCP-resolved
3457
+ * tools — use `mcp_tool_reference` or `mcp_toolset_reference` for those.
3458
+ */
3459
+ export interface BetaToolChangeToolReference {
3460
+ name: string;
3461
+
3462
+ type: 'tool_reference';
3463
+ }
3464
+
3256
3465
  /**
3257
3466
  * How the model should use the provided tools. The model can use a specific tool,
3258
3467
  * any available tool, decide by itself, or not use tools at all.
@@ -3866,6 +4075,11 @@ export interface BetaUsage {
3866
4075
  */
3867
4076
  cache_read_input_tokens: number | null;
3868
4077
 
4078
+ /**
4079
+ * Outcome of the `fallback_credit_token` presented on this request.
4080
+ */
4081
+ fallback_credit: BetaFallbackCreditUsage | null;
4082
+
3869
4083
  /**
3870
4084
  * The geographic region where inference was performed for this request.
3871
4085
  */
@@ -4695,14 +4909,15 @@ export interface MessageCreateParamsBase {
4695
4909
  * When the appended-assistant form is used on a model that otherwise disallows
4696
4910
  * assistant-turn prefill, this token also authorizes that one prefill.
4697
4911
  */
4698
- fallback_credit_token?: string | null;
4912
+ fallback_credit_token?: string | BetaFallbackCreditTokenParam | null;
4699
4913
 
4700
4914
  /**
4701
4915
  * Body param: Opt-in server-side retry on one or more substitute models when the
4702
4916
  * requested model declines for policy reasons. Tried in order: if the first entry
4703
- * also declines, the second is tried, and so on.
4917
+ * also declines, the second is tried, and so on. The string "default" requests the
4918
+ * requested model's server-defined default fallback configuration.
4704
4919
  */
4705
- fallbacks?: Array<BetaFallbackParam> | null;
4920
+ fallbacks?: BetaFallbacksParam | null;
4706
4921
 
4707
4922
  /**
4708
4923
  * Body param: Specifies the geographic region for inference processing. If not
@@ -5307,11 +5522,16 @@ export declare namespace Messages {
5307
5522
  type BetaEncryptedCodeExecutionResultBlockParam as BetaEncryptedCodeExecutionResultBlockParam,
5308
5523
  type BetaFallbackBlock as BetaFallbackBlock,
5309
5524
  type BetaFallbackBlockParam as BetaFallbackBlockParam,
5525
+ type BetaFallbackCreditNotApplied as BetaFallbackCreditNotApplied,
5526
+ type BetaFallbackCreditRedeemed as BetaFallbackCreditRedeemed,
5527
+ type BetaFallbackCreditTokenParam as BetaFallbackCreditTokenParam,
5528
+ type BetaFallbackCreditUsage as BetaFallbackCreditUsage,
5310
5529
  type BetaFallbackInfo as BetaFallbackInfo,
5311
5530
  type BetaFallbackInfoParam as BetaFallbackInfoParam,
5312
5531
  type BetaFallbackMessageIterationUsage as BetaFallbackMessageIterationUsage,
5313
5532
  type BetaFallbackParam as BetaFallbackParam,
5314
5533
  type BetaFallbackRefusalTrigger as BetaFallbackRefusalTrigger,
5534
+ type BetaFallbacksParam as BetaFallbacksParam,
5315
5535
  type BetaFileDocumentSource as BetaFileDocumentSource,
5316
5536
  type BetaFileImageSource as BetaFileImageSource,
5317
5537
  type BetaImageBlockParam as BetaImageBlockParam,
@@ -5359,6 +5579,8 @@ export declare namespace Messages {
5359
5579
  type BetaRequestMCPServerToolConfiguration as BetaRequestMCPServerToolConfiguration,
5360
5580
  type BetaRequestMCPServerURLDefinition as BetaRequestMCPServerURLDefinition,
5361
5581
  type BetaRequestMCPToolResultBlockParam as BetaRequestMCPToolResultBlockParam,
5582
+ type BetaRequestToolAdditionBlock as BetaRequestToolAdditionBlock,
5583
+ type BetaRequestToolRemovalBlock as BetaRequestToolRemovalBlock,
5362
5584
  type BetaSearchResultBlockParam as BetaSearchResultBlockParam,
5363
5585
  type BetaServerToolCaller as BetaServerToolCaller,
5364
5586
  type BetaServerToolCaller20260120 as BetaServerToolCaller20260120,
@@ -5396,6 +5618,9 @@ export declare namespace Messages {
5396
5618
  type BetaTool as BetaTool,
5397
5619
  type BetaToolBash20241022 as BetaToolBash20241022,
5398
5620
  type BetaToolBash20250124 as BetaToolBash20250124,
5621
+ type BetaToolChangeMCPToolReference as BetaToolChangeMCPToolReference,
5622
+ type BetaToolChangeMCPToolsetReference as BetaToolChangeMCPToolsetReference,
5623
+ type BetaToolChangeToolReference as BetaToolChangeToolReference,
5399
5624
  type BetaToolChoice as BetaToolChoice,
5400
5625
  type BetaToolChoiceAny as BetaToolChoiceAny,
5401
5626
  type BetaToolChoiceAuto as BetaToolChoiceAuto,
@@ -272,7 +272,7 @@ export interface BetaManagedAgentsAgentMessageEvent {
272
272
  /**
273
273
  * Array of text blocks comprising the agent response.
274
274
  */
275
- content: Array<BetaManagedAgentsTextBlock>;
275
+ content: Array<BetaManagedAgentsTextBlock | BetaManagedAgentsRedactedBlock>;
276
276
 
277
277
  /**
278
278
  * A timestamp in RFC 3339 format
@@ -330,7 +330,12 @@ export interface BetaManagedAgentsAgentThreadMessageReceivedEvent {
330
330
  /**
331
331
  * Message content blocks.
332
332
  */
333
- content: Array<BetaManagedAgentsTextBlock | BetaManagedAgentsImageBlock | BetaManagedAgentsDocumentBlock>;
333
+ content: Array<
334
+ | BetaManagedAgentsTextBlock
335
+ | BetaManagedAgentsImageBlock
336
+ | BetaManagedAgentsDocumentBlock
337
+ | BetaManagedAgentsRedactedBlock
338
+ >;
334
339
 
335
340
  /**
336
341
  * Public `sthr_` ID of the thread that sent the message.
@@ -364,7 +369,12 @@ export interface BetaManagedAgentsAgentThreadMessageSentEvent {
364
369
  /**
365
370
  * Message content blocks.
366
371
  */
367
- content: Array<BetaManagedAgentsTextBlock | BetaManagedAgentsImageBlock | BetaManagedAgentsDocumentBlock>;
372
+ content: Array<
373
+ | BetaManagedAgentsTextBlock
374
+ | BetaManagedAgentsImageBlock
375
+ | BetaManagedAgentsDocumentBlock
376
+ | BetaManagedAgentsRedactedBlock
377
+ >;
368
378
 
369
379
  /**
370
380
  * A timestamp in RFC 3339 format
@@ -780,6 +790,13 @@ export interface BetaManagedAgentsPlainTextDocumentSource {
780
790
  type: 'text';
781
791
  }
782
792
 
793
+ /**
794
+ * Placeholder for content withheld by Anthropic model policy.
795
+ */
796
+ export interface BetaManagedAgentsRedactedBlock {
797
+ type: 'redacted';
798
+ }
799
+
783
800
  /**
784
801
  * This turn is dead; queued inputs are flushed and the session returns to idle.
785
802
  * Client may send a new prompt.
@@ -872,6 +889,16 @@ export interface BetaManagedAgentsSendSessionEvents {
872
889
  >;
873
890
  }
874
891
 
892
+ /**
893
+ * The agent stopped because the session's tracked list cost reached its budget, or
894
+ * because its usage includes a model with no list price (which the budget cannot
895
+ * measure). Raise the budget to continue — or, if raising is rejected because a
896
+ * model has no list price, remove the budget.
897
+ */
898
+ export interface BetaManagedAgentsSessionBudgetReached {
899
+ type: 'budget_reached';
900
+ }
901
+
875
902
  /**
876
903
  * Emitted when a session has been deleted. Terminates any active event stream — no
877
904
  * further events will be emitted for this session.
@@ -966,7 +993,8 @@ export type BetaManagedAgentsSessionEvent =
966
993
  | SessionsAPI.BetaManagedAgentsUserToolResultEvent
967
994
  | BetaManagedAgentsSessionThreadStatusRescheduledEvent
968
995
  | SessionsAPI.BetaManagedAgentsSessionUpdatedEvent
969
- | SessionsAPI.BetaManagedAgentsSystemMessageEvent;
996
+ | SessionsAPI.BetaManagedAgentsSystemMessageEvent
997
+ | SessionsAPI.BetaManagedAgentsSessionUsageEvent;
970
998
 
971
999
  /**
972
1000
  * The agent is idle waiting on one or more blocking user-input events (tool
@@ -1011,7 +1039,8 @@ export interface BetaManagedAgentsSessionStatusIdleEvent {
1011
1039
  stop_reason:
1012
1040
  | BetaManagedAgentsSessionEndTurn
1013
1041
  | BetaManagedAgentsSessionRequiresAction
1014
- | BetaManagedAgentsSessionRetriesExhausted;
1042
+ | BetaManagedAgentsSessionRetriesExhausted
1043
+ | BetaManagedAgentsSessionBudgetReached;
1015
1044
 
1016
1045
  type: 'session.status_idle';
1017
1046
  }
@@ -1127,7 +1156,8 @@ export interface BetaManagedAgentsSessionThreadStatusIdleEvent {
1127
1156
  stop_reason:
1128
1157
  | BetaManagedAgentsSessionEndTurn
1129
1158
  | BetaManagedAgentsSessionRequiresAction
1130
- | BetaManagedAgentsSessionRetriesExhausted;
1159
+ | BetaManagedAgentsSessionRetriesExhausted
1160
+ | BetaManagedAgentsSessionBudgetReached;
1131
1161
 
1132
1162
  type: 'session.thread_status_idle';
1133
1163
  }
@@ -1217,6 +1247,48 @@ export interface BetaManagedAgentsSessionThreadStatusTerminatedEvent {
1217
1247
  type: 'session.thread_status_terminated';
1218
1248
  }
1219
1249
 
1250
+ /**
1251
+ * Point-in-time snapshot of a session's cumulative usage.
1252
+ */
1253
+ export interface BetaManagedAgentsSessionUsageSnapshot {
1254
+ /**
1255
+ * Cumulative time in seconds during which the session had at least one thread in
1256
+ * running status. Overlapping activity from concurrent threads is counted once.
1257
+ * This is the duration the session's runtime cost is priced on.
1258
+ */
1259
+ active_seconds?: number;
1260
+
1261
+ /**
1262
+ * Prompt-cache creation token usage broken down by cache lifetime.
1263
+ */
1264
+ cache_creation?: SessionsAPI.BetaManagedAgentsCacheCreationUsage;
1265
+
1266
+ /**
1267
+ * Total tokens read from prompt cache.
1268
+ */
1269
+ cache_read_input_tokens?: number;
1270
+
1271
+ /**
1272
+ * Total input tokens consumed across all turns.
1273
+ */
1274
+ input_tokens?: number;
1275
+
1276
+ /**
1277
+ * A monetary amount in a specific currency.
1278
+ */
1279
+ list_cost?: BetaAPI.BetaMonetaryAmount;
1280
+
1281
+ /**
1282
+ * Total output tokens generated across all turns.
1283
+ */
1284
+ output_tokens?: number;
1285
+
1286
+ /**
1287
+ * Cumulative count of server-executed tool invocations, broken down by tool.
1288
+ */
1289
+ server_tool_use?: SessionsAPI.BetaManagedAgentsServerToolUsage;
1290
+ }
1291
+
1220
1292
  /**
1221
1293
  * Emitted when a model request completes.
1222
1294
  */
@@ -1454,7 +1526,8 @@ export type BetaManagedAgentsStreamSessionEvents =
1454
1526
  | SessionsAPI.BetaManagedAgentsSessionUpdatedEvent
1455
1527
  | SessionsAPI.BetaManagedAgentsStartEvent
1456
1528
  | SessionsAPI.BetaManagedAgentsDeltaEvent
1457
- | SessionsAPI.BetaManagedAgentsSystemMessageEvent;
1529
+ | SessionsAPI.BetaManagedAgentsSystemMessageEvent
1530
+ | SessionsAPI.BetaManagedAgentsSessionUsageEvent;
1458
1531
 
1459
1532
  /**
1460
1533
  * Privileged context for the accompanying turn and all subsequent turns, appended
@@ -1744,7 +1817,12 @@ export interface BetaManagedAgentsUserMessageEvent {
1744
1817
  /**
1745
1818
  * Array of content blocks comprising the user message.
1746
1819
  */
1747
- content: Array<BetaManagedAgentsTextBlock | BetaManagedAgentsImageBlock | BetaManagedAgentsDocumentBlock>;
1820
+ content: Array<
1821
+ | BetaManagedAgentsTextBlock
1822
+ | BetaManagedAgentsImageBlock
1823
+ | BetaManagedAgentsDocumentBlock
1824
+ | BetaManagedAgentsRedactedBlock
1825
+ >;
1748
1826
 
1749
1827
  type: 'user.message';
1750
1828
 
@@ -1761,7 +1839,12 @@ export interface BetaManagedAgentsUserMessageEventParams {
1761
1839
  /**
1762
1840
  * Array of content blocks for the user message.
1763
1841
  */
1764
- content: Array<BetaManagedAgentsTextBlock | BetaManagedAgentsImageBlock | BetaManagedAgentsDocumentBlock>;
1842
+ content: Array<
1843
+ | BetaManagedAgentsTextBlock
1844
+ | BetaManagedAgentsImageBlock
1845
+ | BetaManagedAgentsDocumentBlock
1846
+ | BetaManagedAgentsRedactedBlock
1847
+ >;
1765
1848
 
1766
1849
  type: 'user.message';
1767
1850
  }
@@ -1979,6 +2062,7 @@ export declare namespace Events {
1979
2062
  type BetaManagedAgentsModelRateLimitedError as BetaManagedAgentsModelRateLimitedError,
1980
2063
  type BetaManagedAgentsModelRequestFailedError as BetaManagedAgentsModelRequestFailedError,
1981
2064
  type BetaManagedAgentsPlainTextDocumentSource as BetaManagedAgentsPlainTextDocumentSource,
2065
+ type BetaManagedAgentsRedactedBlock as BetaManagedAgentsRedactedBlock,
1982
2066
  type BetaManagedAgentsRetryStatusExhausted as BetaManagedAgentsRetryStatusExhausted,
1983
2067
  type BetaManagedAgentsRetryStatusRetrying as BetaManagedAgentsRetryStatusRetrying,
1984
2068
  type BetaManagedAgentsRetryStatusTerminal as BetaManagedAgentsRetryStatusTerminal,
@@ -1986,6 +2070,7 @@ export declare namespace Events {
1986
2070
  type BetaManagedAgentsSearchResultCitations as BetaManagedAgentsSearchResultCitations,
1987
2071
  type BetaManagedAgentsSearchResultContent as BetaManagedAgentsSearchResultContent,
1988
2072
  type BetaManagedAgentsSendSessionEvents as BetaManagedAgentsSendSessionEvents,
2073
+ type BetaManagedAgentsSessionBudgetReached as BetaManagedAgentsSessionBudgetReached,
1989
2074
  type BetaManagedAgentsSessionDeletedEvent as BetaManagedAgentsSessionDeletedEvent,
1990
2075
  type BetaManagedAgentsSessionEndTurn as BetaManagedAgentsSessionEndTurn,
1991
2076
  type BetaManagedAgentsSessionErrorEvent as BetaManagedAgentsSessionErrorEvent,
@@ -2001,6 +2086,7 @@ export declare namespace Events {
2001
2086
  type BetaManagedAgentsSessionThreadStatusRescheduledEvent as BetaManagedAgentsSessionThreadStatusRescheduledEvent,
2002
2087
  type BetaManagedAgentsSessionThreadStatusRunningEvent as BetaManagedAgentsSessionThreadStatusRunningEvent,
2003
2088
  type BetaManagedAgentsSessionThreadStatusTerminatedEvent as BetaManagedAgentsSessionThreadStatusTerminatedEvent,
2089
+ type BetaManagedAgentsSessionUsageSnapshot as BetaManagedAgentsSessionUsageSnapshot,
2004
2090
  type BetaManagedAgentsSpanModelRequestEndEvent as BetaManagedAgentsSpanModelRequestEndEvent,
2005
2091
  type BetaManagedAgentsSpanModelRequestStartEvent as BetaManagedAgentsSpanModelRequestStartEvent,
2006
2092
  type BetaManagedAgentsSpanModelUsage as BetaManagedAgentsSpanModelUsage,
@@ -29,6 +29,7 @@ export {
29
29
  type BetaManagedAgentsModelRateLimitedError,
30
30
  type BetaManagedAgentsModelRequestFailedError,
31
31
  type BetaManagedAgentsPlainTextDocumentSource,
32
+ type BetaManagedAgentsRedactedBlock,
32
33
  type BetaManagedAgentsRetryStatusExhausted,
33
34
  type BetaManagedAgentsRetryStatusRetrying,
34
35
  type BetaManagedAgentsRetryStatusTerminal,
@@ -36,6 +37,7 @@ export {
36
37
  type BetaManagedAgentsSearchResultCitations,
37
38
  type BetaManagedAgentsSearchResultContent,
38
39
  type BetaManagedAgentsSendSessionEvents,
40
+ type BetaManagedAgentsSessionBudgetReached,
39
41
  type BetaManagedAgentsSessionDeletedEvent,
40
42
  type BetaManagedAgentsSessionEndTurn,
41
43
  type BetaManagedAgentsSessionErrorEvent,
@@ -51,6 +53,7 @@ export {
51
53
  type BetaManagedAgentsSessionThreadStatusRescheduledEvent,
52
54
  type BetaManagedAgentsSessionThreadStatusRunningEvent,
53
55
  type BetaManagedAgentsSessionThreadStatusTerminatedEvent,
56
+ type BetaManagedAgentsSessionUsageSnapshot,
54
57
  type BetaManagedAgentsSpanModelRequestEndEvent,
55
58
  type BetaManagedAgentsSpanModelRequestStartEvent,
56
59
  type BetaManagedAgentsSpanModelUsage,
@@ -99,11 +102,13 @@ export {
99
102
  } from './resources';
100
103
  export {
101
104
  Sessions,
105
+ type BetaManagedAgentsAdvisorParams,
102
106
  type BetaManagedAgentsAgentMessagePreview,
103
107
  type BetaManagedAgentsAgentParams,
104
108
  type BetaManagedAgentsAgentThinkingPreview,
105
109
  type BetaManagedAgentsAgentWithOverridesParams,
106
110
  type BetaManagedAgentsBranchCheckout,
111
+ type BetaManagedAgentsBudgetLimit,
107
112
  type BetaManagedAgentsCacheCreationUsage,
108
113
  type BetaManagedAgentsCommitCheckout,
109
114
  type BetaManagedAgentsDeletedSession,
@@ -117,6 +122,7 @@ export {
117
122
  type BetaManagedAgentsMultiagentParams,
118
123
  type BetaManagedAgentsMultiagentRosterEntryParams,
119
124
  type BetaManagedAgentsOutcomeEvaluationResource,
125
+ type BetaManagedAgentsServerToolUsage,
120
126
  type BetaManagedAgentsSession,
121
127
  type BetaManagedAgentsSessionAgent,
122
128
  type BetaManagedAgentsSessionAgentUpdate,
@@ -124,6 +130,7 @@ export {
124
130
  type BetaManagedAgentsSessionStats,
125
131
  type BetaManagedAgentsSessionUpdatedEvent,
126
132
  type BetaManagedAgentsSessionUsage,
133
+ type BetaManagedAgentsSessionUsageEvent,
127
134
  type BetaManagedAgentsStartEvent,
128
135
  type BetaManagedAgentsStartEventPreview,
129
136
  type BetaManagedAgentsSystemContentBlock,