@@ -34,6 +34,19 @@ async function* messageIterable(message: Message): AsyncGenerator<MessageStreamE
34
34
}
35
35
: content . type === 'thinking' ? { type : 'thinking' , thinking : '' , signature : '' }
36
36
: content . type === 'redacted_thinking' ? { type : 'redacted_thinking' , data : '' }
37
+ : content . type === 'server_tool_use' ?
38
+ {
39
+ type : 'server_tool_use' ,
40
+ id : 'toolu_01Up7oRoHeGvhded7n66nPzP' ,
41
+ name : 'web_search' ,
42
+ input : { } ,
43
+ }
44
+ : content . type === 'web_search_tool_result' ?
45
+ {
46
+ type : 'web_search_tool_result' ,
47
+ tool_use_id : 'toolu_01Up7oRoHeGvhded7n66nPzP' ,
48
+ content : [ ] ,
49
+ }
37
50
: assertNever ( content ) ,
38
51
index : idx ,
39
52
} ;
@@ -60,6 +73,10 @@ async function* messageIterable(message: Message): AsyncGenerator<MessageStreamE
60
73
throw new Error ( 'thinking not implemented yet' ) ;
61
74
} else if ( content . type === 'redacted_thinking' ) {
62
75
throw new Error ( 'redacted_thinking not implemented yet' ) ;
76
+ } else if ( content . type === 'server_tool_use' ) {
77
+ throw new Error ( 'server_tool_use not implemented yet' ) ;
78
+ } else if ( content . type === 'web_search_tool_result' ) {
79
+ throw new Error ( 'web_search_tool_result not implemented yet' ) ;
63
80
} else {
64
81
assertNever ( content ) ;
65
82
}
@@ -72,7 +89,13 @@ async function* messageIterable(message: Message): AsyncGenerator<MessageStreamE
72
89
73
90
yield {
74
91
type : 'message_delta' ,
75
- usage : { output_tokens : 6 } ,
92
+ usage : {
93
+ output_tokens : 6 ,
94
+ input_tokens : null ,
95
+ cache_creation_input_tokens : null ,
96
+ cache_read_input_tokens : null ,
97
+ server_tool_use : null ,
98
+ } ,
76
99
// @ts -ignore
77
100
delta : { stop_reason : message . stop_reason , stop_sequence : message . stop_sequence } ,
78
101
} ;
@@ -166,6 +189,7 @@ describe('MessageStream class', () => {
166
189
input_tokens : 10 ,
167
190
cache_creation_input_tokens : null ,
168
191
cache_read_input_tokens : null ,
192
+ server_tool_use : null ,
169
193
} ,
170
194
} ) ,
171
195
) ;
@@ -226,22 +250,22 @@ describe('MessageStream class', () => {
226
250
},
227
251
{
228
252
"args": [
229
- "{"type":"message_start","message":{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}}",
230
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
253
+ "{"type":"message_start","message":{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}}",
254
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
231
255
],
232
256
"type": "streamEvent",
233
257
},
234
258
{
235
259
"args": [
236
260
"{"type":"content_block_start","content_block":{"type":"text","text":"","citations":null},"index":0}",
237
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
261
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
238
262
],
239
263
"type": "streamEvent",
240
264
},
241
265
{
242
266
"args": [
243
267
"{"type":"content_block_delta","delta":{"type":"text_delta","text":"Hello"},"index":0}",
244
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
268
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
245
269
],
246
270
"type": "streamEvent",
247
271
},
@@ -255,7 +279,7 @@ describe('MessageStream class', () => {
255
279
{
256
280
"args": [
257
281
"{"type":"content_block_delta","delta":{"type":"text_delta","text":" ther"},"index":0}",
258
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello ther","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
282
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello ther","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
259
283
],
260
284
"type": "streamEvent",
261
285
},
@@ -269,7 +293,7 @@ describe('MessageStream class', () => {
269
293
{
270
294
"args": [
271
295
"{"type":"content_block_delta","delta":{"type":"text_delta","text":"e!"},"index":0}",
272
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
296
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
273
297
],
274
298
"type": "streamEvent",
275
299
},
@@ -283,7 +307,7 @@ describe('MessageStream class', () => {
283
307
{
284
308
"args": [
285
309
"{"type":"content_block_stop","index":0}",
286
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
310
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":null,"stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
287
311
],
288
312
"type": "streamEvent",
289
313
},
@@ -295,27 +319,27 @@ describe('MessageStream class', () => {
295
319
},
296
320
{
297
321
"args": [
298
- "{"type":"message_delta","usage":{"output_tokens":6},"delta":{"stop_reason":"end_turn","stop_sequence":null}}",
299
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
322
+ "{"type":"message_delta","usage":{"output_tokens":6,"input_tokens":null,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null },"delta":{"stop_reason":"end_turn","stop_sequence":null}}",
323
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
300
324
],
301
325
"type": "streamEvent",
302
326
},
303
327
{
304
328
"args": [
305
329
"{"type":"message_stop"}",
306
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
330
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
307
331
],
308
332
"type": "streamEvent",
309
333
},
310
334
{
311
335
"args": [
312
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
336
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
313
337
],
314
338
"type": "message",
315
339
},
316
340
{
317
341
"args": [
318
- "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null}}",
342
+ "{"type":"message","id":"msg_01hhptzfxdaeehfxfv070yb6b8","role":"assistant","content":[{"type":"text","text":"Hello there!","citations":null}],"model":"claude-3-opus-20240229","stop_reason":"end_turn","stop_sequence":null,"usage":{"output_tokens":6,"input_tokens":10,"cache_creation_input_tokens":null,"cache_read_input_tokens":null,"server_tool_use":null }}",
319
343
],
320
344
"type": "finalMessage",
321
345
},
@@ -348,6 +372,7 @@ describe('MessageStream class', () => {
348
372
"cache_read_input_tokens": null,
349
373
"input_tokens": 10,
350
374
"output_tokens": 6,
375
+ "server_tool_use": null,
351
376
},
352
377
}
353
378
` ) ;
@@ -378,6 +403,7 @@ describe('MessageStream class', () => {
378
403
input_tokens : 10 ,
379
404
cache_creation_input_tokens : null ,
380
405
cache_read_input_tokens : null ,
406
+ server_tool_use : null ,
381
407
} ,
382
408
} ) ,
383
409
) ;
@@ -405,7 +431,7 @@ describe('MessageStream class', () => {
405
431
const stream = anthropic . messages . stream (
406
432
{
407
433
max_tokens : 1024 ,
408
- model : 'claude-2.1 ' ,
434
+ model : 'claude-3-7-sonnet-20250219 ' ,
409
435
messages : [ { role : 'user' , content : 'Say hello there!' } ] ,
410
436
} ,
411
437
{ maxRetries : 0 } ,
@@ -430,7 +456,7 @@ describe('MessageStream class', () => {
430
456
const stream = anthropic . messages . stream (
431
457
{
432
458
max_tokens : 1024 ,
433
- model : 'claude-2.1 ' ,
459
+ model : 'claude-3-7-sonnet-20250219 ' ,
434
460
messages : [ { role : 'user' , content : 'Say hello there!' } ] ,
435
461
} ,
436
462
{ maxRetries : 0 } ,
0 commit comments