llm.rb 14.0.0 → 15.0.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 (92) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +396 -1826
  3. data/README.md +596 -490
  4. data/bin/llm.rb +148 -72
  5. data/data/alibaba.json +1999 -0
  6. data/data/anthropic.json +205 -205
  7. data/data/bedrock.json +2171 -2114
  8. data/data/deepinfra.json +1143 -938
  9. data/data/deepseek.json +4 -5
  10. data/data/google.json +691 -779
  11. data/data/mistral.json +450 -450
  12. data/data/moonshot.json +100 -100
  13. data/data/openai.json +976 -976
  14. data/data/xai.json +193 -116
  15. data/data/zai.json +187 -187
  16. data/{resources → docs}/deepdive/advanced/cancellation.md +2 -2
  17. data/{resources → docs}/deepdive/advanced/compaction.md +5 -3
  18. data/{resources → docs}/deepdive/advanced/context.md +13 -0
  19. data/{resources → docs}/deepdive/advanced/guard.md +1 -1
  20. data/{resources/deepdive/fundamentals → docs/deepdive/features}/concurrency.md +6 -0
  21. data/{resources/deepdive/fundamentals → docs/deepdive/features}/repl.md +56 -2
  22. data/{resources → docs}/deepdive/fundamentals/agents.md +52 -1
  23. data/docs/deepdive/fundamentals/providers.md +159 -0
  24. data/{resources → docs}/deepdive/fundamentals/skills.md +5 -0
  25. data/{resources → docs}/deepdive/fundamentals/stream.md +36 -3
  26. data/{resources → docs}/deepdive/fundamentals/tools.md +87 -23
  27. data/{resources/deepdive/everything_else → docs/deepdive/reference}/cost.md +20 -10
  28. data/docs/deepdive/reference/model_registry.md +271 -0
  29. data/{resources/deepdive/advanced → docs/deepdive/reference}/tracer.md +7 -0
  30. data/{resources → docs}/deepdive.md +35 -27
  31. data/lib/llm/a2a/transport/http.rb +1 -1
  32. data/lib/llm/active_record/acts_as_llm.rb +19 -5
  33. data/lib/llm/agent.rb +62 -5
  34. data/lib/llm/context.rb +93 -46
  35. data/lib/llm/cost.rb +110 -51
  36. data/lib/llm/error.rb +7 -0
  37. data/lib/llm/function/array.rb +1 -1
  38. data/lib/llm/function/fork/task.rb +14 -1
  39. data/lib/llm/function/sequential/group.rb +20 -13
  40. data/lib/llm/function/sequential/task.rb +1 -8
  41. data/lib/llm/function.rb +5 -4
  42. data/lib/llm/message.rb +5 -4
  43. data/lib/llm/provider.rb +7 -0
  44. data/lib/llm/providers/alibaba/error_handler.rb +34 -0
  45. data/lib/llm/providers/alibaba/request_adapter.rb +13 -0
  46. data/lib/llm/providers/alibaba.rb +93 -0
  47. data/lib/llm/providers/anthropic.rb +0 -1
  48. data/lib/llm/providers/bedrock.rb +8 -1
  49. data/lib/llm/providers/deepseek/request_adapter.rb +2 -33
  50. data/lib/llm/providers/google.rb +0 -1
  51. data/lib/llm/providers/ollama.rb +0 -1
  52. data/lib/llm/providers/openai/responses.rb +0 -1
  53. data/lib/llm/providers/openai/schema.rb +37 -0
  54. data/lib/llm/providers/openai.rb +1 -2
  55. data/lib/llm/registry/model.rb +186 -0
  56. data/lib/llm/registry.rb +45 -14
  57. data/lib/llm/repl/bar.rb +11 -13
  58. data/lib/llm/repl/buffer.rb +1 -1
  59. data/lib/llm/repl/color.rb +8 -1
  60. data/lib/llm/repl/command.rb +12 -0
  61. data/lib/llm/repl/commands/model.rb +39 -0
  62. data/lib/llm/repl/input/cache.rb +45 -0
  63. data/lib/llm/repl/input/char.rb +2 -2
  64. data/lib/llm/repl/input.rb +86 -23
  65. data/lib/llm/repl/markdown.rb +25 -1
  66. data/lib/llm/repl/node.rb +7 -0
  67. data/lib/llm/repl/status.rb +17 -3
  68. data/lib/llm/repl/window.rb +91 -11
  69. data/lib/llm/repl.rb +18 -8
  70. data/lib/llm/sequel/plugin.rb +19 -5
  71. data/lib/llm/skill.rb +21 -8
  72. data/lib/llm/stream.rb +27 -0
  73. data/lib/llm/tool.rb +3 -5
  74. data/lib/llm/tools/rg.rb +2 -1
  75. data/lib/llm/transport/curb.rb +23 -3
  76. data/lib/llm/usage.rb +155 -9
  77. data/lib/llm/version.rb +1 -1
  78. data/lib/llm.rb +111 -29
  79. data/llm.gemspec +16 -11
  80. metadata +89 -35
  81. /data/{resources → docs}/deepdive/advanced/transformer.md +0 -0
  82. /data/{resources → docs}/deepdive/advanced/transports.md +0 -0
  83. /data/{resources/deepdive/fundamentals → docs/deepdive/features}/builtin_tools.md +0 -0
  84. /data/{resources/deepdive/fundamentals → docs/deepdive/features}/database.md +0 -0
  85. /data/{resources/deepdive/fundamentals → docs/deepdive/features}/embeddings.md +0 -0
  86. /data/{resources → docs}/deepdive/fundamentals/schema.md +0 -0
  87. /data/{resources/deepdive/everything_else → docs/deepdive/media}/audio.md +0 -0
  88. /data/{resources/deepdive/everything_else → docs/deepdive/media}/images.md +0 -0
  89. /data/{resources/deepdive/everything_else → docs/deepdive/media}/ocr.md +0 -0
  90. /data/{resources → docs}/deepdive/protocols/a2a.md +0 -0
  91. /data/{resources → docs}/deepdive/protocols/mcp.md +0 -0
  92. /data/{resources/deepdive/everything_else → docs/deepdive/reference}/object.md +0 -0
data/data/anthropic.json CHANGED
@@ -7,11 +7,11 @@
7
7
  "name": "Anthropic",
8
8
  "doc": "https://docs.anthropic.com/en/docs/about-claude/models",
9
9
  "models": {
10
- "claude-sonnet-4-6": {
11
- "id": "claude-sonnet-4-6",
12
- "name": "Claude Sonnet 4.6",
13
- "description": "Claude workhorse for coding agents, careful analysis, and production cost control",
14
- "family": "claude-sonnet",
10
+ "claude-opus-4-7": {
11
+ "id": "claude-opus-4-7",
12
+ "name": "Claude Opus 4.7",
13
+ "description": "Stronger Opus tier for advanced software work and high-stakes reasoning",
14
+ "family": "claude-opus",
15
15
  "attachment": true,
16
16
  "reasoning": true,
17
17
  "reasoning_options": [
@@ -21,20 +21,17 @@
21
21
  "low",
22
22
  "medium",
23
23
  "high",
24
+ "xhigh",
24
25
  "max"
25
26
  ]
26
- },
27
- {
28
- "type": "budget_tokens",
29
- "min": 1024
30
27
  }
31
28
  ],
32
29
  "tool_call": true,
33
30
  "structured_output": true,
34
- "temperature": true,
35
- "knowledge": "2025-08-31",
36
- "release_date": "2026-02-17",
37
- "last_updated": "2026-03-13",
31
+ "temperature": false,
32
+ "knowledge": "2026-01-31",
33
+ "release_date": "2026-04-14",
34
+ "last_updated": "2026-04-16",
38
35
  "modalities": {
39
36
  "input": [
40
37
  "text",
@@ -51,31 +48,37 @@
51
48
  "output": 128000
52
49
  },
53
50
  "cost": {
54
- "input": 3,
55
- "output": 15,
56
- "cache_read": 0.3,
57
- "cache_write": 3.75
51
+ "input": 5,
52
+ "output": 25,
53
+ "cache_read": 0.5,
54
+ "cache_write": 6.25
58
55
  }
59
56
  },
60
- "claude-haiku-4-5": {
61
- "id": "claude-haiku-4-5",
62
- "name": "Claude Haiku 4.5 (latest)",
63
- "description": "Fast Claude lane for lightweight agents, office tasks, and responsive chat",
64
- "family": "claude-haiku",
57
+ "claude-opus-4-8": {
58
+ "id": "claude-opus-4-8",
59
+ "name": "Claude Opus 4.8",
60
+ "description": "Top Claude Opus tier for the hardest reasoning, coding, and long-horizon agents",
61
+ "family": "claude-opus",
65
62
  "attachment": true,
66
63
  "reasoning": true,
67
64
  "reasoning_options": [
68
65
  {
69
- "type": "budget_tokens",
70
- "min": 1024
66
+ "type": "effort",
67
+ "values": [
68
+ "low",
69
+ "medium",
70
+ "high",
71
+ "xhigh",
72
+ "max"
73
+ ]
71
74
  }
72
75
  ],
73
76
  "tool_call": true,
74
77
  "structured_output": true,
75
- "temperature": true,
76
- "knowledge": "2025-02-28",
77
- "release_date": "2025-10-15",
78
- "last_updated": "2025-10-15",
78
+ "temperature": false,
79
+ "knowledge": "2026-01",
80
+ "release_date": "2026-05-28",
81
+ "last_updated": "2026-05-28",
79
82
  "modalities": {
80
83
  "input": [
81
84
  "text",
@@ -88,33 +91,94 @@
88
91
  },
89
92
  "open_weights": false,
90
93
  "limit": {
91
- "context": 200000,
92
- "output": 64000
94
+ "context": 1000000,
95
+ "output": 128000
96
+ },
97
+ "experimental": {
98
+ "modes": {
99
+ "fast": {
100
+ "cost": {
101
+ "input": 10,
102
+ "output": 50,
103
+ "cache_read": 1,
104
+ "cache_write": 12.5
105
+ },
106
+ "provider": {
107
+ "body": {
108
+ "speed": "fast"
109
+ },
110
+ "headers": {
111
+ "anthropic-beta": "fast-mode-2026-02-01"
112
+ }
113
+ }
114
+ }
115
+ }
93
116
  },
94
117
  "cost": {
95
- "input": 1,
96
- "output": 5,
97
- "cache_read": 0.1,
98
- "cache_write": 1.25
118
+ "input": 5,
119
+ "output": 25,
120
+ "cache_read": 0.5,
121
+ "cache_write": 6.25
99
122
  }
100
123
  },
101
- "claude-opus-4-6": {
102
- "id": "claude-opus-4-6",
103
- "name": "Claude Opus 4.6",
104
- "description": "High-end Claude for difficult coding, planning, and slower expert reasoning",
105
- "family": "claude-opus",
124
+ "claude-sonnet-5": {
125
+ "id": "claude-sonnet-5",
126
+ "name": "Claude Sonnet 5",
127
+ "description": "Everyday Claude agent model for coding, planning, browsing, and general work",
128
+ "family": "claude-sonnet",
106
129
  "attachment": true,
107
130
  "reasoning": true,
108
131
  "reasoning_options": [
132
+ {
133
+ "type": "toggle"
134
+ },
109
135
  {
110
136
  "type": "effort",
111
137
  "values": [
112
138
  "low",
113
139
  "medium",
114
140
  "high",
141
+ "xhigh",
115
142
  "max"
116
143
  ]
117
- },
144
+ }
145
+ ],
146
+ "tool_call": true,
147
+ "structured_output": true,
148
+ "temperature": false,
149
+ "knowledge": "2026-01-31",
150
+ "release_date": "2026-06-29",
151
+ "last_updated": "2026-06-30",
152
+ "modalities": {
153
+ "input": [
154
+ "text",
155
+ "image",
156
+ "pdf"
157
+ ],
158
+ "output": [
159
+ "text"
160
+ ]
161
+ },
162
+ "open_weights": false,
163
+ "limit": {
164
+ "context": 1000000,
165
+ "output": 128000
166
+ },
167
+ "cost": {
168
+ "input": 2,
169
+ "output": 10,
170
+ "cache_read": 0.2,
171
+ "cache_write": 2.5
172
+ }
173
+ },
174
+ "claude-sonnet-4-5-20250929": {
175
+ "id": "claude-sonnet-4-5-20250929",
176
+ "name": "Claude Sonnet 4.5",
177
+ "description": "Balanced Claude model for coding, analysis, agent workflows, and cost control",
178
+ "family": "claude-sonnet",
179
+ "attachment": true,
180
+ "reasoning": true,
181
+ "reasoning_options": [
118
182
  {
119
183
  "type": "budget_tokens",
120
184
  "min": 1024
@@ -123,9 +187,9 @@
123
187
  "tool_call": true,
124
188
  "structured_output": true,
125
189
  "temperature": true,
126
- "knowledge": "2025-05-31",
127
- "release_date": "2026-02-04",
128
- "last_updated": "2026-03-13",
190
+ "knowledge": "2025-07-31",
191
+ "release_date": "2025-09-29",
192
+ "last_updated": "2025-09-29",
129
193
  "modalities": {
130
194
  "input": [
131
195
  "text",
@@ -139,20 +203,20 @@
139
203
  "open_weights": false,
140
204
  "limit": {
141
205
  "context": 1000000,
142
- "output": 128000
206
+ "output": 64000
143
207
  },
144
208
  "cost": {
145
- "input": 5,
146
- "output": 25,
147
- "cache_read": 0.5,
148
- "cache_write": 6.25
209
+ "input": 3,
210
+ "output": 15,
211
+ "cache_read": 0.3,
212
+ "cache_write": 3.75
149
213
  }
150
214
  },
151
- "claude-fable-5": {
152
- "id": "claude-fable-5",
153
- "name": "Claude Fable 5",
154
- "description": "Claude model for creative writing, analysis, and controlled agent workflows",
155
- "family": "claude-fable",
215
+ "claude-opus-4-5": {
216
+ "id": "claude-opus-4-5",
217
+ "name": "Claude Opus 4.5 (latest)",
218
+ "description": "Flagship Claude model for deep reasoning, coding, and long-horizon agents",
219
+ "family": "claude-opus",
156
220
  "attachment": true,
157
221
  "reasoning": true,
158
222
  "reasoning_options": [
@@ -161,17 +225,20 @@
161
225
  "values": [
162
226
  "low",
163
227
  "medium",
164
- "high",
165
- "xhigh",
166
- "max"
228
+ "high"
167
229
  ]
230
+ },
231
+ {
232
+ "type": "budget_tokens",
233
+ "min": 1024
168
234
  }
169
235
  ],
170
236
  "tool_call": true,
171
237
  "structured_output": true,
172
- "temperature": false,
173
- "release_date": "2026-06-07",
174
- "last_updated": "2026-06-09",
238
+ "temperature": true,
239
+ "knowledge": "2025-05",
240
+ "release_date": "2025-11-24",
241
+ "last_updated": "2025-11-24",
175
242
  "modalities": {
176
243
  "input": [
177
244
  "text",
@@ -184,21 +251,21 @@
184
251
  },
185
252
  "open_weights": false,
186
253
  "limit": {
187
- "context": 1000000,
188
- "output": 128000
254
+ "context": 200000,
255
+ "output": 64000
189
256
  },
190
257
  "cost": {
191
- "input": 10,
192
- "output": 50,
193
- "cache_read": 1,
194
- "cache_write": 12.5
258
+ "input": 5,
259
+ "output": 25,
260
+ "cache_read": 0.5,
261
+ "cache_write": 6.25
195
262
  }
196
263
  },
197
- "claude-opus-4-8": {
198
- "id": "claude-opus-4-8",
199
- "name": "Claude Opus 4.8",
200
- "description": "Top Claude Opus tier for the hardest reasoning, coding, and long-horizon agents",
201
- "family": "claude-opus",
264
+ "claude-sonnet-4-6": {
265
+ "id": "claude-sonnet-4-6",
266
+ "name": "Claude Sonnet 4.6",
267
+ "description": "Claude workhorse for coding agents, careful analysis, and production cost control",
268
+ "family": "claude-sonnet",
202
269
  "attachment": true,
203
270
  "reasoning": true,
204
271
  "reasoning_options": [
@@ -208,17 +275,20 @@
208
275
  "low",
209
276
  "medium",
210
277
  "high",
211
- "xhigh",
212
278
  "max"
213
279
  ]
280
+ },
281
+ {
282
+ "type": "budget_tokens",
283
+ "min": 1024
214
284
  }
215
285
  ],
216
286
  "tool_call": true,
217
287
  "structured_output": true,
218
- "temperature": false,
219
- "knowledge": "2026-01",
220
- "release_date": "2026-05-28",
221
- "last_updated": "2026-05-28",
288
+ "temperature": true,
289
+ "knowledge": "2025-08-31",
290
+ "release_date": "2026-02-17",
291
+ "last_updated": "2026-03-13",
222
292
  "modalities": {
223
293
  "input": [
224
294
  "text",
@@ -234,38 +304,18 @@
234
304
  "context": 1000000,
235
305
  "output": 128000
236
306
  },
237
- "experimental": {
238
- "modes": {
239
- "fast": {
240
- "cost": {
241
- "input": 10,
242
- "output": 50,
243
- "cache_read": 1,
244
- "cache_write": 12.5
245
- },
246
- "provider": {
247
- "body": {
248
- "speed": "fast"
249
- },
250
- "headers": {
251
- "anthropic-beta": "fast-mode-2026-02-01"
252
- }
253
- }
254
- }
255
- }
256
- },
257
307
  "cost": {
258
- "input": 5,
259
- "output": 25,
260
- "cache_read": 0.5,
261
- "cache_write": 6.25
308
+ "input": 3,
309
+ "output": 15,
310
+ "cache_read": 0.3,
311
+ "cache_write": 3.75
262
312
  }
263
313
  },
264
- "claude-sonnet-4-5": {
265
- "id": "claude-sonnet-4-5",
266
- "name": "Claude Sonnet 4.5 (latest)",
267
- "description": "Balanced Claude model for coding, analysis, agent workflows, and cost control",
268
- "family": "claude-sonnet",
314
+ "claude-haiku-4-5-20251001": {
315
+ "id": "claude-haiku-4-5-20251001",
316
+ "name": "Claude Haiku 4.5",
317
+ "description": "Fast Claude model for responsive assistance, classification, and lightweight agents",
318
+ "family": "claude-haiku",
269
319
  "attachment": true,
270
320
  "reasoning": true,
271
321
  "reasoning_options": [
@@ -277,9 +327,9 @@
277
327
  "tool_call": true,
278
328
  "structured_output": true,
279
329
  "temperature": true,
280
- "knowledge": "2025-07-31",
281
- "release_date": "2025-09-29",
282
- "last_updated": "2025-09-29",
330
+ "knowledge": "2025-02-28",
331
+ "release_date": "2025-10-15",
332
+ "last_updated": "2025-10-15",
283
333
  "modalities": {
284
334
  "input": [
285
335
  "text",
@@ -292,19 +342,19 @@
292
342
  },
293
343
  "open_weights": false,
294
344
  "limit": {
295
- "context": 1000000,
345
+ "context": 200000,
296
346
  "output": 64000
297
347
  },
298
348
  "cost": {
299
- "input": 3,
300
- "output": 15,
301
- "cache_read": 0.3,
302
- "cache_write": 3.75
349
+ "input": 1,
350
+ "output": 5,
351
+ "cache_read": 0.1,
352
+ "cache_write": 1.25
303
353
  }
304
354
  },
305
- "claude-sonnet-4-5-20250929": {
306
- "id": "claude-sonnet-4-5-20250929",
307
- "name": "Claude Sonnet 4.5",
355
+ "claude-sonnet-4-5": {
356
+ "id": "claude-sonnet-4-5",
357
+ "name": "Claude Sonnet 4.5 (latest)",
308
358
  "description": "Balanced Claude model for coding, analysis, agent workflows, and cost control",
309
359
  "family": "claude-sonnet",
310
360
  "attachment": true,
@@ -392,52 +442,11 @@
392
442
  "cache_write": 6.25
393
443
  }
394
444
  },
395
- "claude-haiku-4-5-20251001": {
396
- "id": "claude-haiku-4-5-20251001",
397
- "name": "Claude Haiku 4.5",
398
- "description": "Fast Claude model for responsive assistance, classification, and lightweight agents",
399
- "family": "claude-haiku",
400
- "attachment": true,
401
- "reasoning": true,
402
- "reasoning_options": [
403
- {
404
- "type": "budget_tokens",
405
- "min": 1024
406
- }
407
- ],
408
- "tool_call": true,
409
- "structured_output": true,
410
- "temperature": true,
411
- "knowledge": "2025-02-28",
412
- "release_date": "2025-10-15",
413
- "last_updated": "2025-10-15",
414
- "modalities": {
415
- "input": [
416
- "text",
417
- "image",
418
- "pdf"
419
- ],
420
- "output": [
421
- "text"
422
- ]
423
- },
424
- "open_weights": false,
425
- "limit": {
426
- "context": 200000,
427
- "output": 64000
428
- },
429
- "cost": {
430
- "input": 1,
431
- "output": 5,
432
- "cache_read": 0.1,
433
- "cache_write": 1.25
434
- }
435
- },
436
- "claude-opus-4-7": {
437
- "id": "claude-opus-4-7",
438
- "name": "Claude Opus 4.7",
439
- "description": "Stronger Opus tier for advanced software work and high-stakes reasoning",
440
- "family": "claude-opus",
445
+ "claude-fable-5": {
446
+ "id": "claude-fable-5",
447
+ "name": "Claude Fable 5",
448
+ "description": "Claude model for creative writing, analysis, and controlled agent workflows",
449
+ "family": "claude-fable",
441
450
  "attachment": true,
442
451
  "reasoning": true,
443
452
  "reasoning_options": [
@@ -455,9 +464,8 @@
455
464
  "tool_call": true,
456
465
  "structured_output": true,
457
466
  "temperature": false,
458
- "knowledge": "2026-01-31",
459
- "release_date": "2026-04-14",
460
- "last_updated": "2026-04-16",
467
+ "release_date": "2026-06-07",
468
+ "last_updated": "2026-06-09",
461
469
  "modalities": {
462
470
  "input": [
463
471
  "text",
@@ -474,28 +482,20 @@
474
482
  "output": 128000
475
483
  },
476
484
  "cost": {
477
- "input": 5,
478
- "output": 25,
479
- "cache_read": 0.5,
480
- "cache_write": 6.25
485
+ "input": 10,
486
+ "output": 50,
487
+ "cache_read": 1,
488
+ "cache_write": 12.5
481
489
  }
482
490
  },
483
- "claude-opus-4-5": {
484
- "id": "claude-opus-4-5",
485
- "name": "Claude Opus 4.5 (latest)",
486
- "description": "Flagship Claude model for deep reasoning, coding, and long-horizon agents",
487
- "family": "claude-opus",
491
+ "claude-haiku-4-5": {
492
+ "id": "claude-haiku-4-5",
493
+ "name": "Claude Haiku 4.5 (latest)",
494
+ "description": "Fast Claude lane for lightweight agents, office tasks, and responsive chat",
495
+ "family": "claude-haiku",
488
496
  "attachment": true,
489
497
  "reasoning": true,
490
498
  "reasoning_options": [
491
- {
492
- "type": "effort",
493
- "values": [
494
- "low",
495
- "medium",
496
- "high"
497
- ]
498
- },
499
499
  {
500
500
  "type": "budget_tokens",
501
501
  "min": 1024
@@ -504,9 +504,9 @@
504
504
  "tool_call": true,
505
505
  "structured_output": true,
506
506
  "temperature": true,
507
- "knowledge": "2025-05",
508
- "release_date": "2025-11-24",
509
- "last_updated": "2025-11-24",
507
+ "knowledge": "2025-02-28",
508
+ "release_date": "2025-10-15",
509
+ "last_updated": "2025-10-15",
510
510
  "modalities": {
511
511
  "input": [
512
512
  "text",
@@ -523,40 +523,40 @@
523
523
  "output": 64000
524
524
  },
525
525
  "cost": {
526
- "input": 5,
527
- "output": 25,
528
- "cache_read": 0.5,
529
- "cache_write": 6.25
526
+ "input": 1,
527
+ "output": 5,
528
+ "cache_read": 0.1,
529
+ "cache_write": 1.25
530
530
  }
531
531
  },
532
- "claude-sonnet-5": {
533
- "id": "claude-sonnet-5",
534
- "name": "Claude Sonnet 5",
535
- "description": "Everyday Claude agent model for coding, planning, browsing, and general work",
536
- "family": "claude-sonnet",
532
+ "claude-opus-4-6": {
533
+ "id": "claude-opus-4-6",
534
+ "name": "Claude Opus 4.6",
535
+ "description": "High-end Claude for difficult coding, planning, and slower expert reasoning",
536
+ "family": "claude-opus",
537
537
  "attachment": true,
538
538
  "reasoning": true,
539
539
  "reasoning_options": [
540
- {
541
- "type": "toggle"
542
- },
543
540
  {
544
541
  "type": "effort",
545
542
  "values": [
546
543
  "low",
547
544
  "medium",
548
545
  "high",
549
- "xhigh",
550
546
  "max"
551
547
  ]
548
+ },
549
+ {
550
+ "type": "budget_tokens",
551
+ "min": 1024
552
552
  }
553
553
  ],
554
554
  "tool_call": true,
555
555
  "structured_output": true,
556
- "temperature": false,
557
- "knowledge": "2026-01-31",
558
- "release_date": "2026-06-29",
559
- "last_updated": "2026-06-30",
556
+ "temperature": true,
557
+ "knowledge": "2025-05-31",
558
+ "release_date": "2026-02-04",
559
+ "last_updated": "2026-03-13",
560
560
  "modalities": {
561
561
  "input": [
562
562
  "text",
@@ -573,10 +573,10 @@
573
573
  "output": 128000
574
574
  },
575
575
  "cost": {
576
- "input": 2,
577
- "output": 10,
578
- "cache_read": 0.2,
579
- "cache_write": 2.5
576
+ "input": 5,
577
+ "output": 25,
578
+ "cache_read": 0.5,
579
+ "cache_write": 6.25
580
580
  }
581
581
  },
582
582
  "claude-opus-5": {