@ai-sdk/anthropic 3.0.18 → 3.0.20

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 (73) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/index.js +1 -1
  3. package/dist/index.mjs +1 -1
  4. package/docs/05-anthropic.mdx +1096 -0
  5. package/package.json +8 -3
  6. package/src/__fixtures__/anthropic-code-execution-20250825.1.chunks.txt +248 -0
  7. package/src/__fixtures__/anthropic-code-execution-20250825.1.json +70 -0
  8. package/src/__fixtures__/anthropic-code-execution-20250825.2.chunks.txt +984 -0
  9. package/src/__fixtures__/anthropic-code-execution-20250825.2.json +111 -0
  10. package/src/__fixtures__/anthropic-code-execution-20250825.pptx-skill.chunks.txt +691 -0
  11. package/src/__fixtures__/anthropic-code-execution-20250825.pptx-skill.json +1801 -0
  12. package/src/__fixtures__/anthropic-json-other-tool.1.chunks.txt +13 -0
  13. package/src/__fixtures__/anthropic-json-other-tool.1.json +26 -0
  14. package/src/__fixtures__/anthropic-json-output-format.1.chunks.txt +120 -0
  15. package/src/__fixtures__/anthropic-json-output-format.1.json +25 -0
  16. package/src/__fixtures__/anthropic-json-tool.1.chunks.txt +9 -0
  17. package/src/__fixtures__/anthropic-json-tool.1.json +37 -0
  18. package/src/__fixtures__/anthropic-json-tool.2.chunks.txt +14 -0
  19. package/src/__fixtures__/anthropic-mcp.1.chunks.txt +17 -0
  20. package/src/__fixtures__/anthropic-mcp.1.json +39 -0
  21. package/src/__fixtures__/anthropic-memory-20250818.1.json +28 -0
  22. package/src/__fixtures__/anthropic-message-delta-input-tokens.chunks.txt +8 -0
  23. package/src/__fixtures__/anthropic-programmatic-tool-calling.1.chunks.txt +278 -0
  24. package/src/__fixtures__/anthropic-programmatic-tool-calling.1.json +106 -0
  25. package/src/__fixtures__/anthropic-tool-no-args.chunks.txt +13 -0
  26. package/src/__fixtures__/anthropic-tool-no-args.json +31 -0
  27. package/src/__fixtures__/anthropic-tool-search-bm25.1.chunks.txt +47 -0
  28. package/src/__fixtures__/anthropic-tool-search-bm25.1.json +67 -0
  29. package/src/__fixtures__/anthropic-tool-search-regex.1.chunks.txt +51 -0
  30. package/src/__fixtures__/anthropic-tool-search-regex.1.json +65 -0
  31. package/src/__fixtures__/anthropic-web-fetch-tool.1.chunks.txt +64 -0
  32. package/src/__fixtures__/anthropic-web-fetch-tool.1.json +54 -0
  33. package/src/__fixtures__/anthropic-web-fetch-tool.2.json +56 -0
  34. package/src/__fixtures__/anthropic-web-fetch-tool.error.json +46 -0
  35. package/src/__fixtures__/anthropic-web-search-tool.1.chunks.txt +120 -0
  36. package/src/__fixtures__/anthropic-web-search-tool.1.json +181 -0
  37. package/src/__snapshots__/anthropic-messages-language-model.test.ts.snap +16719 -0
  38. package/src/anthropic-error.test.ts +42 -0
  39. package/src/anthropic-error.ts +26 -0
  40. package/src/anthropic-message-metadata.ts +105 -0
  41. package/src/anthropic-messages-api.ts +1188 -0
  42. package/src/anthropic-messages-language-model.test.ts +7170 -0
  43. package/src/anthropic-messages-language-model.ts +2067 -0
  44. package/src/anthropic-messages-options.ts +213 -0
  45. package/src/anthropic-prepare-tools.test.ts +1219 -0
  46. package/src/anthropic-prepare-tools.ts +341 -0
  47. package/src/anthropic-provider.test.ts +162 -0
  48. package/src/anthropic-provider.ts +152 -0
  49. package/src/anthropic-tools.ts +182 -0
  50. package/src/convert-anthropic-messages-usage.ts +32 -0
  51. package/src/convert-to-anthropic-messages-prompt.test.ts +2902 -0
  52. package/src/convert-to-anthropic-messages-prompt.ts +1050 -0
  53. package/src/forward-anthropic-container-id-from-last-step.ts +38 -0
  54. package/src/get-cache-control.ts +63 -0
  55. package/src/index.ts +10 -0
  56. package/src/internal/index.ts +4 -0
  57. package/src/map-anthropic-stop-reason.ts +28 -0
  58. package/src/tool/bash_20241022.ts +33 -0
  59. package/src/tool/bash_20250124.ts +33 -0
  60. package/src/tool/code-execution_20250522.ts +61 -0
  61. package/src/tool/code-execution_20250825.ts +281 -0
  62. package/src/tool/computer_20241022.ts +87 -0
  63. package/src/tool/computer_20250124.ts +130 -0
  64. package/src/tool/memory_20250818.ts +62 -0
  65. package/src/tool/text-editor_20241022.ts +63 -0
  66. package/src/tool/text-editor_20250124.ts +63 -0
  67. package/src/tool/text-editor_20250429.ts +64 -0
  68. package/src/tool/text-editor_20250728.ts +80 -0
  69. package/src/tool/tool-search-bm25_20251119.ts +98 -0
  70. package/src/tool/tool-search-regex_20251119.ts +110 -0
  71. package/src/tool/web-fetch-20250910.ts +145 -0
  72. package/src/tool/web-search_20250305.ts +136 -0
  73. package/src/version.ts +6 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-sdk/anthropic",
3
- "version": "3.0.18",
3
+ "version": "3.0.20",
4
4
  "license": "Apache-2.0",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",
@@ -8,10 +8,15 @@
8
8
  "types": "./dist/index.d.ts",
9
9
  "files": [
10
10
  "dist/**/*",
11
+ "docs/**/*",
12
+ "src",
11
13
  "CHANGELOG.md",
12
14
  "README.md",
13
15
  "internal.d.ts"
14
16
  ],
17
+ "directories": {
18
+ "doc": "./docs"
19
+ },
15
20
  "exports": {
16
21
  "./package.json": "./package.json",
17
22
  ".": {
@@ -35,7 +40,7 @@
35
40
  "tsup": "^8",
36
41
  "typescript": "5.8.3",
37
42
  "zod": "3.25.76",
38
- "@ai-sdk/test-server": "1.0.1",
43
+ "@ai-sdk/test-server": "1.0.2",
39
44
  "@vercel/ai-tsconfig": "0.0.0"
40
45
  },
41
46
  "peerDependencies": {
@@ -61,7 +66,7 @@
61
66
  "scripts": {
62
67
  "build": "pnpm clean && tsup --tsconfig tsconfig.build.json",
63
68
  "build:watch": "pnpm clean && tsup --watch --tsconfig tsconfig.build.json",
64
- "clean": "del-cli dist *.tsbuildinfo",
69
+ "clean": "del-cli dist docs *.tsbuildinfo",
65
70
  "lint": "eslint \"./**/*.ts*\"",
66
71
  "type-check": "tsc --build",
67
72
  "prettier-check": "prettier --check \"./**/*.ts*\"",
@@ -0,0 +1,248 @@
1
+ {"type":"message_start","message":{"model":"claude-sonnet-4-5-20250929","id":"msg_01LEsrXVCLpf7xHaFdFTZNEJ","type":"message","role":"assistant","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":2263,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":0},"output_tokens":8,"service_tier":"standard"}}}
2
+ {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}
3
+ {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I'll create a Python script to calculate"}}
4
+ {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Fibonacci numbers and then execute it to fin"}}
5
+ {"type":"ping"}
6
+ {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d the 10th Fibonacci number."}}
7
+ {"type":"content_block_stop","index":0}
8
+ {"type":"content_block_start","index":1,"content_block":{"type":"server_tool_use","id":"srvtoolu_0112cP8RpnKv67t2cscmN4ia","name":"text_editor_code_execution","input":{}}}
9
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""}}
10
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"{\""}}
11
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"comma"}}
12
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"nd\": \"c"}}
13
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"reate\""}}
14
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", \""}}
15
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"path\": "}}
16
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"/"}}
17
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"tmp/fi"}}
18
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"bonacci."}}
19
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"py\""}}
20
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", \"file_"}}
21
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"text\":"}}
22
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \"def fib"}}
23
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"onacci(n):"}}
24
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\n \\\"\\\"\\"}}
25
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"\\n Calc"}}
26
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ulate th"}}
27
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"e nth Fibo"}}
28
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"nacc"}}
29
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"i "}}
30
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"numb"}}
31
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"er.\\n"}}
32
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \\"}}
33
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n Ar"}}
34
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"gs:"}}
35
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\n "}}
36
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" n: T"}}
37
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"he "}}
38
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"positio"}}
39
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n i"}}
40
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n the Fibon"}}
41
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"acci s"}}
42
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"eq"}}
43
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"uence (1-"}}
44
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"indexe"}}
45
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"d)\\n "}}
46
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \\"}}
47
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n "}}
48
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" Returns:\\"}}
49
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n "}}
50
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" The n"}}
51
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"th "}}
52
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"Fibonac"}}
53
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ci num"}}
54
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"be"}}
55
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"r\\n \\\"\\\"\\"}}
56
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"\\n "}}
57
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" if"}}
58
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" n <= 0"}}
59
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":":\\n "}}
60
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" return \\"}}
61
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"Pleas"}}
62
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"e enter a "}}
63
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"positive int"}}
64
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"eg"}}
65
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"er"}}
66
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\\"\\n "}}
67
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" elif n =="}}
68
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" 1:\\n"}}
69
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" retu"}}
70
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"rn "}}
71
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"0\\n el"}}
72
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"if n == 2:\\n"}}
73
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" "}}
74
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" return "}}
75
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"1\\n "}}
76
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" else:\\n "}}
77
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" # Usi"}}
78
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ng"}}
79
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" itera"}}
80
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"tive ap"}}
81
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"proa"}}
82
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ch "}}
83
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"for effi"}}
84
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ciency\\n"}}
85
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" a,"}}
86
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" b"}}
87
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" = 0"}}
88
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", 1"}}
89
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\n "}}
90
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"for _ in ra"}}
91
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"nge(2, n):\\"}}
92
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n "}}
93
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" a"}}
94
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", b = b, "}}
95
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"a + b\\n "}}
96
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" ret"}}
97
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"urn "}}
98
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"b\\n"}}
99
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\ndef fi"}}
100
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"bonacci_rec"}}
101
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ursive(n"}}
102
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"):\\n "}}
103
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \\\"\\\"\\\"\\n"}}
104
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" Ca"}}
105
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"lcula"}}
106
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"te the nth"}}
107
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" Fibonacci"}}
108
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" numb"}}
109
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"er using r"}}
110
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ecursion.\\n"}}
111
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \\n"}}
112
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" Arg"}}
113
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"s:\\n "}}
114
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" "}}
115
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" n:"}}
116
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" The po"}}
117
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"si"}}
118
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"tion in "}}
119
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"the Fibona"}}
120
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"cci sequen"}}
121
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ce (1-index"}}
122
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ed)\\n "}}
123
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \\n "}}
124
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" Returns:\\n"}}
125
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" "}}
126
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" The nth F"}}
127
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ibonacci n"}}
128
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"umber\\n \\"}}
129
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"\\\"\\\"\\n "}}
130
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"if n <"}}
131
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"= 0:\\n "}}
132
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" retu"}}
133
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"rn \\\"Plea"}}
134
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"se enter a"}}
135
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" positive in"}}
136
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"teger\\\"\\n "}}
137
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" elif n "}}
138
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"== 1"}}
139
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":":\\n r"}}
140
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"et"}}
141
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ur"}}
142
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n 0\\n"}}
143
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" elif n"}}
144
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" == 2:\\n"}}
145
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" "}}
146
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" return"}}
147
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" 1\\n els"}}
148
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"e:\\n "}}
149
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"return fib"}}
150
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"onacci_recur"}}
151
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"sive(n-1) +"}}
152
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" fib"}}
153
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"onacci_re"}}
154
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"cursive(n"}}
155
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"-2)\\n\\nif "}}
156
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"__name__ =="}}
157
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \\\"_"}}
158
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"_main_"}}
159
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"_\\\":\\n "}}
160
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" # "}}
161
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"Calcula"}}
162
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"te "}}
163
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"the 1"}}
164
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"0th Fibonacc"}}
165
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"i numb"}}
166
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"er\\n n = "}}
167
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"10\\n "}}
168
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"result = fi"}}
169
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"bonacc"}}
170
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"i(n"}}
171
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":")\\n \\n"}}
172
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" print("}}
173
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"f\\\"The"}}
174
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" {n}t"}}
175
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"h Fibonac"}}
176
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ci numb"}}
177
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"er"}}
178
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" is: {resul"}}
179
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"t}"}}
180
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\\")\\"}}
181
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"n \\n "}}
182
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" # Sho"}}
183
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"w the "}}
184
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"first 10 "}}
185
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"Fibona"}}
186
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"cci numb"}}
187
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ers\\n p"}}
188
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ri"}}
189
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"nt(f\\"}}
190
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"\\\\nFirst "}}
191
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"{n}"}}
192
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" Fibon"}}
193
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"acci numbe"}}
194
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"rs:\\"}}
195
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\")"}}
196
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\n fo"}}
197
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"r i in range"}}
198
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"(1, n + "}}
199
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"1):\\n "}}
200
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" pr"}}
201
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"int(f\\"}}
202
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"F({i"}}
203
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"}) = {"}}
204
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"fibonacci"}}
205
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"(i)}\\\")"}}
206
+ {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\\n\"}"}}
207
+ {"type":"content_block_stop","index":1}
208
+ {"type":"content_block_start","index":2,"content_block":{"type":"text_editor_code_execution_tool_result","tool_use_id":"srvtoolu_0112cP8RpnKv67t2cscmN4ia","content":{"type":"text_editor_code_execution_create_result","is_file_update":false}}}
209
+ {"type":"content_block_stop","index":2}
210
+ {"type":"content_block_start","index":3,"content_block":{"type":"text","text":""}}
211
+ {"type":"content_block_delta","index":3,"delta":{"type":"text_delta","text":"Now let's"}}
212
+ {"type":"content_block_delta","index":3,"delta":{"type":"text_delta","text":" execute the script to find the 10th Fibonacci"}}
213
+ {"type":"content_block_delta","index":3,"delta":{"type":"text_delta","text":" number:"}}
214
+ {"type":"content_block_stop","index":3}
215
+ {"type":"content_block_start","index":4,"content_block":{"type":"server_tool_use","id":"srvtoolu_01K2E2j5mkxbtLqNBc6RJHds","name":"bash_code_execution","input":{}}}
216
+ {"type":"content_block_delta","index":4,"delta":{"type":"input_json_delta","partial_json":""}}
217
+ {"type":"content_block_delta","index":4,"delta":{"type":"input_json_delta","partial_json":"{\"command"}}
218
+ {"type":"content_block_delta","index":4,"delta":{"type":"input_json_delta","partial_json":"\": \"python"}}
219
+ {"type":"content_block_delta","index":4,"delta":{"type":"input_json_delta","partial_json":" /tmp/fibon"}}
220
+ {"type":"content_block_delta","index":4,"delta":{"type":"input_json_delta","partial_json":"ac"}}
221
+ {"type":"content_block_delta","index":4,"delta":{"type":"input_json_delta","partial_json":"ci.py"}}
222
+ {"type":"content_block_delta","index":4,"delta":{"type":"input_json_delta","partial_json":"\"}"}}
223
+ {"type":"content_block_stop","index":4}
224
+ {"type":"content_block_start","index":5,"content_block":{"type":"bash_code_execution_tool_result","tool_use_id":"srvtoolu_01K2E2j5mkxbtLqNBc6RJHds","content":{"type":"bash_code_execution_result","stdout":"The 10th Fibonacci number is: 34\n\nFirst 10 Fibonacci numbers:\nF(1) = 0\nF(2) = 1\nF(3) = 1\nF(4) = 2\nF(5) = 3\nF(6) = 5\nF(7) = 8\nF(8) = 13\nF(9) = 21\nF(10) = 34\n","stderr":"","return_code":0,"content":[]}}}
225
+ {"type":"content_block_stop","index":5}
226
+ {"type":"content_block_start","index":6,"content_block":{"type":"text","text":""}}
227
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"Perfect"}}
228
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"! The script has been created an"}}
229
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"d executed successfully. \n\n**Result"}}
230
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":": The 10th Fibonacci number is"}}
231
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":" 34**\n\nThe script includes:\n1"}}
232
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":". An **iterative function** (`"}}
233
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"fibonacci`) - efficient and fast, suitable for larger numbers"}}
234
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"\n2. A **recursive function** (`fibonacci_recursive`) - sim"}}
235
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"pler but less efficient for large values\n3. The main execution"}}
236
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":" block that calculates and displays the 10th Fibonacci number"}}
237
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"\n4. A bonus display showing all"}}
238
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":" Fibonacci numbers from F(1) to F(10)"}}
239
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"\n\nThe Fibonacci sequence starts with 0, "}}
240
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"1, and each subsequent number is the sum of the"}}
241
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":" previous two numbers: "}}
242
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"0, 1, 1,"}}
243
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":" 2, 3, 5"}}
244
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":", 8, 13, "}}
245
+ {"type":"content_block_delta","index":6,"delta":{"type":"text_delta","text":"21, 34, ..."}}
246
+ {"type":"content_block_stop","index":6}
247
+ {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null,"container":{"id":"container_011CU6pTr2hLT47seQ5Xs4yj","expires_at":"2025-10-14T10:02:00.044495Z"}},"usage":{"input_tokens":8050,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":771,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0}}}
248
+ {"type":"message_stop"}
@@ -0,0 +1,70 @@
1
+ {
2
+ "model": "claude-sonnet-4-5-20250929",
3
+ "id": "msg_01Wx5dv3Qisv7pjTdanFgc9Q",
4
+ "type": "message",
5
+ "role": "assistant",
6
+ "content": [
7
+ {
8
+ "type": "text",
9
+ "text": "I'll create a Python script to calculate Fibonacci numbers and then execute it to find the 10th Fibonacci number."
10
+ },
11
+ {
12
+ "type": "server_tool_use",
13
+ "id": "srvtoolu_012LCpyzxGBy44bCW4zCxmH2",
14
+ "name": "text_editor_code_execution",
15
+ "input": {
16
+ "command": "create",
17
+ "path": "/tmp/fibonacci.py",
18
+ "file_text": "def fibonacci(n):\n \"\"\"\n Calculate the nth Fibonacci number.\n \n Args:\n n: The position in the Fibonacci sequence (1-indexed)\n \n Returns:\n The nth Fibonacci number\n \"\"\"\n if n <= 0:\n raise ValueError(\"n must be a positive integer\")\n elif n == 1 or n == 2:\n return 1\n \n # Using iterative approach for efficiency\n fib_prev = 1 # F(1)\n fib_curr = 1 # F(2)\n \n for i in range(3, n + 1):\n fib_next = fib_prev + fib_curr\n fib_prev = fib_curr\n fib_curr = fib_next\n \n return fib_curr\n\n\nif __name__ == \"__main__\":\n # Calculate the 10th Fibonacci number\n n = 10\n result = fibonacci(n)\n print(f\"The {n}th Fibonacci number is: {result}\")\n \n # Display the first 10 Fibonacci numbers for reference\n print(f\"\\nFirst {n} Fibonacci numbers:\")\n for i in range(1, n + 1):\n print(f\"F({i}) = {fibonacci(i)}\")\n"
19
+ }
20
+ },
21
+ {
22
+ "type": "text_editor_code_execution_tool_result",
23
+ "tool_use_id": "srvtoolu_012LCpyzxGBy44bCW4zCxmH2",
24
+ "content": {
25
+ "type": "text_editor_code_execution_create_result",
26
+ "is_file_update": false
27
+ }
28
+ },
29
+ { "type": "text", "text": "Now let me execute the script:" },
30
+ {
31
+ "type": "server_tool_use",
32
+ "id": "srvtoolu_01KqzcSjepCqNjqeUVqnmEjj",
33
+ "name": "bash_code_execution",
34
+ "input": { "command": "python /tmp/fibonacci.py" }
35
+ },
36
+ {
37
+ "type": "bash_code_execution_tool_result",
38
+ "tool_use_id": "srvtoolu_01KqzcSjepCqNjqeUVqnmEjj",
39
+ "content": {
40
+ "type": "bash_code_execution_result",
41
+ "stdout": "The 10th Fibonacci number is: 55\n\nFirst 10 Fibonacci numbers:\nF(1) = 1\nF(2) = 1\nF(3) = 2\nF(4) = 3\nF(5) = 5\nF(6) = 8\nF(7) = 13\nF(8) = 21\nF(9) = 34\nF(10) = 55\n",
42
+ "stderr": "",
43
+ "return_code": 0,
44
+ "content": []
45
+ }
46
+ },
47
+ {
48
+ "type": "text",
49
+ "text": "Perfect! The script has been created and executed successfully. \n\n**Result: The 10th Fibonacci number is 55**\n\nThe script uses an iterative approach to calculate Fibonacci numbers efficiently, which is better than a recursive approach for larger values of n (avoiding exponential time complexity). The Fibonacci sequence shown is: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55..."
50
+ }
51
+ ],
52
+ "container": {
53
+ "id": "container_011CU6rVteVhydYXRyNs6G1M",
54
+ "expires_at": "2025-10-14T10:28:40.590791Z"
55
+ },
56
+ "stop_reason": "end_turn",
57
+ "stop_sequence": null,
58
+ "usage": {
59
+ "input_tokens": 7881,
60
+ "cache_creation_input_tokens": 0,
61
+ "cache_read_input_tokens": 0,
62
+ "cache_creation": {
63
+ "ephemeral_5m_input_tokens": 0,
64
+ "ephemeral_1h_input_tokens": 0
65
+ },
66
+ "output_tokens": 608,
67
+ "service_tier": "standard",
68
+ "server_tool_use": { "web_search_requests": 0, "web_fetch_requests": 0 }
69
+ }
70
+ }