@anthropic-ai/sdk 0.51.0 → 0.53.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 (133) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/README.md +79 -45
  3. package/client.d.mts +1 -0
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +1 -0
  6. package/client.d.ts.map +1 -1
  7. package/client.js +10 -1
  8. package/client.js.map +1 -1
  9. package/client.mjs +10 -1
  10. package/client.mjs.map +1 -1
  11. package/core/pagination.d.mts +1 -1
  12. package/core/pagination.d.mts.map +1 -1
  13. package/core/pagination.d.ts +1 -1
  14. package/core/pagination.d.ts.map +1 -1
  15. package/internal/constants.d.mts +5 -0
  16. package/internal/constants.d.mts.map +1 -0
  17. package/internal/constants.d.ts +5 -0
  18. package/internal/constants.d.ts.map +1 -0
  19. package/internal/constants.js +15 -0
  20. package/internal/constants.js.map +1 -0
  21. package/internal/constants.mjs +12 -0
  22. package/internal/constants.mjs.map +1 -0
  23. package/internal/detect-platform.js +3 -3
  24. package/internal/detect-platform.js.map +1 -1
  25. package/internal/detect-platform.mjs +3 -3
  26. package/internal/detect-platform.mjs.map +1 -1
  27. package/internal/shim-types.d.mts +11 -22
  28. package/internal/shim-types.d.mts.map +1 -0
  29. package/internal/shim-types.d.ts +11 -22
  30. package/internal/shim-types.d.ts.map +1 -0
  31. package/internal/shim-types.js +4 -0
  32. package/internal/shim-types.js.map +1 -0
  33. package/internal/shim-types.mjs +3 -0
  34. package/internal/shim-types.mjs.map +1 -0
  35. package/internal/shims.d.mts +2 -2
  36. package/internal/shims.d.mts.map +1 -1
  37. package/internal/shims.d.ts +2 -2
  38. package/internal/shims.d.ts.map +1 -1
  39. package/internal/to-file.d.mts.map +1 -1
  40. package/internal/to-file.d.ts.map +1 -1
  41. package/internal/to-file.js +9 -4
  42. package/internal/to-file.js.map +1 -1
  43. package/internal/to-file.mjs +9 -4
  44. package/internal/to-file.mjs.map +1 -1
  45. package/internal/uploads.js +7 -2
  46. package/internal/uploads.js.map +1 -1
  47. package/internal/uploads.mjs +7 -2
  48. package/internal/uploads.mjs.map +1 -1
  49. package/lib/BetaMessageStream.d.mts +2 -2
  50. package/lib/BetaMessageStream.d.mts.map +1 -1
  51. package/lib/BetaMessageStream.d.ts +2 -2
  52. package/lib/BetaMessageStream.d.ts.map +1 -1
  53. package/lib/BetaMessageStream.js +6 -2
  54. package/lib/BetaMessageStream.js.map +1 -1
  55. package/lib/BetaMessageStream.mjs +6 -2
  56. package/lib/BetaMessageStream.mjs.map +1 -1
  57. package/lib/MessageStream.d.mts +2 -2
  58. package/lib/MessageStream.d.mts.map +1 -1
  59. package/lib/MessageStream.d.ts +2 -2
  60. package/lib/MessageStream.d.ts.map +1 -1
  61. package/lib/MessageStream.js +5 -2
  62. package/lib/MessageStream.js.map +1 -1
  63. package/lib/MessageStream.mjs +5 -2
  64. package/lib/MessageStream.mjs.map +1 -1
  65. package/package.json +1 -4
  66. package/resources/beta/beta.d.mts +7 -3
  67. package/resources/beta/beta.d.mts.map +1 -1
  68. package/resources/beta/beta.d.ts +7 -3
  69. package/resources/beta/beta.d.ts.map +1 -1
  70. package/resources/beta/beta.js +4 -0
  71. package/resources/beta/beta.js.map +1 -1
  72. package/resources/beta/beta.mjs +4 -0
  73. package/resources/beta/beta.mjs.map +1 -1
  74. package/resources/beta/files.d.mts +151 -0
  75. package/resources/beta/files.d.mts.map +1 -0
  76. package/resources/beta/files.d.ts +151 -0
  77. package/resources/beta/files.d.ts.map +1 -0
  78. package/resources/beta/files.js +122 -0
  79. package/resources/beta/files.js.map +1 -0
  80. package/resources/beta/files.mjs +118 -0
  81. package/resources/beta/files.mjs.map +1 -0
  82. package/resources/beta/index.d.mts +2 -1
  83. package/resources/beta/index.d.mts.map +1 -1
  84. package/resources/beta/index.d.ts +2 -1
  85. package/resources/beta/index.d.ts.map +1 -1
  86. package/resources/beta/index.js +3 -1
  87. package/resources/beta/index.js.map +1 -1
  88. package/resources/beta/index.mjs +1 -0
  89. package/resources/beta/index.mjs.map +1 -1
  90. package/resources/beta/messages/index.d.mts +1 -1
  91. package/resources/beta/messages/index.d.mts.map +1 -1
  92. package/resources/beta/messages/index.d.ts +1 -1
  93. package/resources/beta/messages/index.d.ts.map +1 -1
  94. package/resources/beta/messages/index.js.map +1 -1
  95. package/resources/beta/messages/index.mjs.map +1 -1
  96. package/resources/beta/messages/messages.d.mts +250 -12
  97. package/resources/beta/messages/messages.d.mts.map +1 -1
  98. package/resources/beta/messages/messages.d.ts +250 -12
  99. package/resources/beta/messages/messages.d.ts.map +1 -1
  100. package/resources/beta/messages/messages.js +7 -2
  101. package/resources/beta/messages/messages.js.map +1 -1
  102. package/resources/beta/messages/messages.mjs +7 -2
  103. package/resources/beta/messages/messages.mjs.map +1 -1
  104. package/resources/messages/messages.d.mts +54 -9
  105. package/resources/messages/messages.d.mts.map +1 -1
  106. package/resources/messages/messages.d.ts +54 -9
  107. package/resources/messages/messages.d.ts.map +1 -1
  108. package/resources/messages/messages.js +9 -6
  109. package/resources/messages/messages.js.map +1 -1
  110. package/resources/messages/messages.mjs +8 -4
  111. package/resources/messages/messages.mjs.map +1 -1
  112. package/src/client.ts +15 -1
  113. package/src/core/pagination.ts +1 -1
  114. package/src/internal/constants.ts +12 -0
  115. package/src/internal/detect-platform.ts +3 -3
  116. package/src/internal/shim-types.ts +26 -0
  117. package/src/internal/shims.ts +2 -2
  118. package/src/internal/to-file.ts +10 -5
  119. package/src/internal/uploads.ts +9 -3
  120. package/src/lib/BetaMessageStream.ts +12 -3
  121. package/src/lib/MessageStream.ts +10 -3
  122. package/src/resources/beta/beta.ts +85 -1
  123. package/src/resources/beta/files.ts +258 -0
  124. package/src/resources/beta/index.ts +37 -0
  125. package/src/resources/beta/messages/index.ts +26 -0
  126. package/src/resources/beta/messages/messages.ts +400 -23
  127. package/src/resources/messages/messages.ts +87 -13
  128. package/src/version.ts +1 -1
  129. package/version.d.mts +1 -1
  130. package/version.d.ts +1 -1
  131. package/version.js +1 -1
  132. package/version.mjs +1 -1
  133. package/src/internal/shim-types.d.ts +0 -28
@@ -1,7 +1,10 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ import { APIPromise } from '../../core/api-promise';
3
4
  import { APIResource } from '../../core/resource';
4
- import * as MessagesAPI from './messages';
5
+ import { Stream } from '../../core/streaming';
6
+ import { RequestOptions } from '../../internal/request-options';
7
+ import { MessageStream } from '../../lib/MessageStream';
5
8
  import * as BatchesAPI from './batches';
6
9
  import {
7
10
  BatchCreateParams,
@@ -18,12 +21,9 @@ import {
18
21
  MessageBatchSucceededResult,
19
22
  MessageBatchesPage,
20
23
  } from './batches';
21
- import { APIPromise } from '../../core/api-promise';
22
- import { Stream } from '../../core/streaming';
23
- import { RequestOptions } from '../../internal/request-options';
24
- import { MessageStream } from '../../lib/MessageStream';
24
+ import * as MessagesAPI from './messages';
25
25
 
26
- export { MessageStream } from '../../lib/MessageStream';
26
+ import { MODEL_NONSTREAMING_TOKENS } from '../../internal/constants';
27
27
 
28
28
  export class Messages extends APIResource {
29
29
  batches: BatchesAPI.Batches = new BatchesAPI.Batches(this._client);
@@ -66,11 +66,14 @@ export class Messages extends APIResource {
66
66
  }\nPlease migrate to a newer model. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.`,
67
67
  );
68
68
  }
69
+ let timeout = (this._client as any)._options.timeout as number | null;
70
+ if (!body.stream && timeout == null) {
71
+ const maxNonstreamingTokens = MODEL_NONSTREAMING_TOKENS[body.model] ?? undefined;
72
+ timeout = this._client.calculateNonstreamingTimeout(body.max_tokens, maxNonstreamingTokens);
73
+ }
69
74
  return this._client.post('/v1/messages', {
70
75
  body,
71
- timeout:
72
- (this._client as any)._options.timeout ??
73
- (body.stream ? 600000 : this._client._calculateNonstreamingTimeout(body.max_tokens)),
76
+ timeout: timeout ?? 600000,
74
77
  ...options,
75
78
  stream: body.stream ?? false,
76
79
  }) as APIPromise<Message> | APIPromise<Stream<RawMessageStreamEvent>>;
@@ -256,12 +259,15 @@ export type ContentBlock =
256
259
  | ThinkingBlock
257
260
  | RedactedThinkingBlock;
258
261
 
262
+ /**
263
+ * Regular text content.
264
+ */
259
265
  export type ContentBlockParam =
266
+ | ServerToolUseBlockParam
267
+ | WebSearchToolResultBlockParam
260
268
  | TextBlockParam
261
269
  | ImageBlockParam
262
270
  | ToolUseBlockParam
263
- | ServerToolUseBlockParam
264
- | WebSearchToolResultBlockParam
265
271
  | ToolResultBlockParam
266
272
  | DocumentBlockParam
267
273
  | ThinkingBlockParam
@@ -417,7 +423,30 @@ export interface Message {
417
423
  usage: Usage;
418
424
  }
419
425
 
420
- export type MessageCountTokensTool = Tool | ToolBash20250124 | ToolTextEditor20250124 | WebSearchTool20250305;
426
+ export type MessageCountTokensTool =
427
+ | Tool
428
+ | ToolBash20250124
429
+ | ToolTextEditor20250124
430
+ | MessageCountTokensTool.TextEditor20250429
431
+ | WebSearchTool20250305;
432
+
433
+ export namespace MessageCountTokensTool {
434
+ export interface TextEditor20250429 {
435
+ /**
436
+ * Name of the tool.
437
+ *
438
+ * This is how the tool will be called by the model and in `tool_use` blocks.
439
+ */
440
+ name: 'str_replace_based_edit_tool';
441
+
442
+ type: 'text_editor_20250429';
443
+
444
+ /**
445
+ * Create a cache control breakpoint at this content block.
446
+ */
447
+ cache_control?: MessagesAPI.CacheControlEphemeral | null;
448
+ }
449
+ }
421
450
 
422
451
  export interface MessageDeltaUsage {
423
452
  /**
@@ -481,9 +510,15 @@ export type Model =
481
510
  | 'claude-3-7-sonnet-20250219'
482
511
  | 'claude-3-5-haiku-latest'
483
512
  | 'claude-3-5-haiku-20241022'
513
+ | 'claude-sonnet-4-20250514'
514
+ | 'claude-sonnet-4-0'
515
+ | 'claude-4-sonnet-20250514'
484
516
  | 'claude-3-5-sonnet-latest'
485
517
  | 'claude-3-5-sonnet-20241022'
486
518
  | 'claude-3-5-sonnet-20240620'
519
+ | 'claude-opus-4-0'
520
+ | 'claude-opus-4-20250514'
521
+ | 'claude-4-opus-20250514'
487
522
  | 'claude-3-opus-latest'
488
523
  | 'claude-3-opus-20240229'
489
524
  | 'claude-3-sonnet-20240229'
@@ -799,6 +834,8 @@ export namespace Tool {
799
834
 
800
835
  properties?: unknown | null;
801
836
 
837
+ required?: Array<string> | null;
838
+
802
839
  [k: string]: unknown;
803
840
  }
804
841
  }
@@ -913,7 +950,30 @@ export interface ToolTextEditor20250124 {
913
950
  cache_control?: CacheControlEphemeral | null;
914
951
  }
915
952
 
916
- export type ToolUnion = Tool | ToolBash20250124 | ToolTextEditor20250124 | WebSearchTool20250305;
953
+ export type ToolUnion =
954
+ | Tool
955
+ | ToolBash20250124
956
+ | ToolTextEditor20250124
957
+ | ToolUnion.TextEditor20250429
958
+ | WebSearchTool20250305;
959
+
960
+ export namespace ToolUnion {
961
+ export interface TextEditor20250429 {
962
+ /**
963
+ * Name of the tool.
964
+ *
965
+ * This is how the tool will be called by the model and in `tool_use` blocks.
966
+ */
967
+ name: 'str_replace_based_edit_tool';
968
+
969
+ type: 'text_editor_20250429';
970
+
971
+ /**
972
+ * Create a cache control breakpoint at this content block.
973
+ */
974
+ cache_control?: MessagesAPI.CacheControlEphemeral | null;
975
+ }
976
+ }
917
977
 
918
978
  export interface ToolUseBlock {
919
979
  id: string;
@@ -977,6 +1037,11 @@ export interface Usage {
977
1037
  * The number of server tool requests.
978
1038
  */
979
1039
  server_tool_use: ServerToolUsage | null;
1040
+
1041
+ /**
1042
+ * If the request used the priority, standard, or batch tier.
1043
+ */
1044
+ service_tier: 'standard' | 'priority' | 'batch' | null;
980
1045
  }
981
1046
 
982
1047
  export interface WebSearchResultBlock {
@@ -1255,6 +1320,15 @@ export interface MessageCreateParamsBase {
1255
1320
  */
1256
1321
  metadata?: Metadata;
1257
1322
 
1323
+ /**
1324
+ * Determines whether to use priority capacity (if available) or standard capacity
1325
+ * for this request.
1326
+ *
1327
+ * Anthropic offers different levels of service for your API requests. See
1328
+ * [service-tiers](https://docs.anthropic.com/en/api/service-tiers) for details.
1329
+ */
1330
+ service_tier?: 'auto' | 'standard_only';
1331
+
1258
1332
  /**
1259
1333
  * Custom text sequences that will cause the model to stop generating.
1260
1334
  *
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '0.51.0'; // x-release-please-version
1
+ export const VERSION = '0.53.0'; // x-release-please-version
package/version.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.51.0";
1
+ export declare const VERSION = "0.53.0";
2
2
  //# sourceMappingURL=version.d.mts.map
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.51.0";
1
+ export declare const VERSION = "0.53.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '0.51.0'; // x-release-please-version
4
+ exports.VERSION = '0.53.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '0.51.0'; // x-release-please-version
1
+ export const VERSION = '0.53.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map
@@ -1,28 +0,0 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- /**
4
- * Shims for types that we can't always rely on being available globally.
5
- *
6
- * Note: these only exist at the type-level, there is no corresponding runtime
7
- * version for any of these symbols.
8
- */
9
-
10
- /**
11
- * In order to properly access the global `NodeJS` type, if it's available, we
12
- * need to make use of declaration shadowing. Without this, any checks for the
13
- * presence of `NodeJS.ReadableStream` will fail.
14
- */
15
- declare namespace NodeJS {
16
- interface ReadableStream {}
17
- }
18
-
19
- type HasProperties<T> = keyof T extends never ? false : true;
20
-
21
- // @ts-ignore
22
- type _ReadableStream<R = any> =
23
- // @ts-ignore
24
- HasProperties<NodeJS.ReadableStream> extends true ? NodeJS.ReadableStream<R> : ReadableStream<R>;
25
-
26
- // @ts-ignore
27
- declare const _ReadableStream: unknown extends typeof ReadableStream ? never : typeof ReadableStream;
28
- export { _ReadableStream as ReadableStream };