neoctl 0.1.17 → 0.1.19

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 (121) hide show
  1. package/dist/agents/local-agent-task.js +1 -2
  2. package/dist/agents/local-agent-task.js.map +1 -1
  3. package/dist/agents/smoke-agents.js +4 -21
  4. package/dist/agents/smoke-agents.js.map +1 -1
  5. package/dist/context/prompts.js +0 -4
  6. package/dist/context/prompts.js.map +1 -1
  7. package/dist/core/query-engine.d.ts +1 -22
  8. package/dist/core/query-engine.js +12 -106
  9. package/dist/core/query-engine.js.map +1 -1
  10. package/dist/core/query.d.ts +1 -2
  11. package/dist/core/query.js +5 -59
  12. package/dist/core/query.js.map +1 -1
  13. package/dist/core/smoke-core-loop.js +6 -95
  14. package/dist/core/smoke-core-loop.js.map +1 -1
  15. package/dist/index.d.ts +1 -25
  16. package/dist/index.js +1 -25
  17. package/dist/index.js.map +1 -1
  18. package/dist/model/communication-logger.d.ts +1 -2
  19. package/dist/model/communication-logger.js +0 -3
  20. package/dist/model/communication-logger.js.map +1 -1
  21. package/dist/model/config.d.ts +4 -10
  22. package/dist/model/config.js +12 -61
  23. package/dist/model/config.js.map +1 -1
  24. package/dist/model/context-window.js +0 -1
  25. package/dist/model/context-window.js.map +1 -1
  26. package/dist/model/env.js +19 -35
  27. package/dist/model/env.js.map +1 -1
  28. package/dist/model/model-metadata.json +677 -726
  29. package/dist/model/openai-adapter.d.ts +1 -1
  30. package/dist/model/openai-chat-mapper.d.ts +1 -4
  31. package/dist/model/openai-chat-mapper.js +8 -30
  32. package/dist/model/openai-chat-mapper.js.map +1 -1
  33. package/dist/model/openai-mappers.d.ts +2 -5
  34. package/dist/model/openai-mappers.js +4 -17
  35. package/dist/model/openai-mappers.js.map +1 -1
  36. package/dist/model/openai-responses-mapper.d.ts +1 -1
  37. package/dist/model/openai-responses-mapper.js +1 -2
  38. package/dist/model/openai-responses-mapper.js.map +1 -1
  39. package/dist/model/provider-factory.js +0 -32
  40. package/dist/model/provider-factory.js.map +1 -1
  41. package/dist/model/smoke-openai.js +1 -1
  42. package/dist/model/smoke-openai.js.map +1 -1
  43. package/dist/model/smoke-responses-mapper.js +6 -6
  44. package/dist/model/smoke-responses-mapper.js.map +1 -1
  45. package/dist/repl/commands.d.ts +0 -15
  46. package/dist/repl/commands.js +0 -58
  47. package/dist/repl/commands.js.map +1 -1
  48. package/dist/repl/index.js +144 -970
  49. package/dist/repl/index.js.map +1 -1
  50. package/dist/repl/render.js +2 -0
  51. package/dist/repl/render.js.map +1 -1
  52. package/dist/repl/status-line.d.ts +1 -0
  53. package/dist/repl/status-line.js +34 -27
  54. package/dist/repl/status-line.js.map +1 -1
  55. package/dist/session/session-store.js +2 -2
  56. package/dist/session/session-store.js.map +1 -1
  57. package/dist/session/smoke-session.js +1 -22
  58. package/dist/session/smoke-session.js.map +1 -1
  59. package/dist/skills/skill-tool.d.ts +5 -85
  60. package/dist/skills/skill-tool.js +14 -173
  61. package/dist/skills/skill-tool.js.map +1 -1
  62. package/dist/skills/smoke-skills.js +5 -54
  63. package/dist/skills/smoke-skills.js.map +1 -1
  64. package/dist/tools/builtins/search-providers.d.ts +1 -15
  65. package/dist/tools/builtins/search-providers.js +1 -195
  66. package/dist/tools/builtins/search-providers.js.map +1 -1
  67. package/dist/tools/builtins/search-tool.js +2 -2
  68. package/dist/tools/builtins/search-tool.js.map +1 -1
  69. package/dist/tools/registry.d.ts +0 -1
  70. package/dist/tools/registry.js +0 -11
  71. package/dist/tools/registry.js.map +1 -1
  72. package/dist/tools/run-tool-use.js +1 -1
  73. package/dist/tools/run-tool-use.js.map +1 -1
  74. package/dist/tools/smoke-tool-system.js +9 -43
  75. package/dist/tools/smoke-tool-system.js.map +1 -1
  76. package/dist/tools/tool.d.ts +1 -9
  77. package/dist/tools/tool.js.map +1 -1
  78. package/package.json +1 -1
  79. package/scripts/build-standalone.mjs +139 -139
  80. package/dist/model/deepseek-adapter.d.ts +0 -29
  81. package/dist/model/deepseek-adapter.js +0 -108
  82. package/dist/model/deepseek-adapter.js.map +0 -1
  83. package/dist/model/kimi-adapter.d.ts +0 -29
  84. package/dist/model/kimi-adapter.js +0 -108
  85. package/dist/model/kimi-adapter.js.map +0 -1
  86. package/dist/model/smoke-deepseek-mapper.d.ts +0 -1
  87. package/dist/model/smoke-deepseek-mapper.js +0 -65
  88. package/dist/model/smoke-deepseek-mapper.js.map +0 -1
  89. package/dist/open-directory.d.ts +0 -1
  90. package/dist/open-directory.js +0 -26
  91. package/dist/open-directory.js.map +0 -1
  92. package/dist/paths.d.ts +0 -7
  93. package/dist/paths.js +0 -12
  94. package/dist/paths.js.map +0 -1
  95. package/dist/session/session-export.d.ts +0 -33
  96. package/dist/session/session-export.js +0 -351
  97. package/dist/session/session-export.js.map +0 -1
  98. package/dist/session/simple-session-runtime.d.ts +0 -74
  99. package/dist/session/simple-session-runtime.js +0 -171
  100. package/dist/session/simple-session-runtime.js.map +0 -1
  101. package/dist/skills/skill-filesystem.d.ts +0 -32
  102. package/dist/skills/skill-filesystem.js +0 -371
  103. package/dist/skills/skill-filesystem.js.map +0 -1
  104. package/dist/skills/skill-management-tools.d.ts +0 -36
  105. package/dist/skills/skill-management-tools.js +0 -188
  106. package/dist/skills/skill-management-tools.js.map +0 -1
  107. package/dist/tips.d.ts +0 -10
  108. package/dist/tips.js +0 -168
  109. package/dist/tips.js.map +0 -1
  110. package/dist/tools/builtins/image-generation-tool.d.ts +0 -68
  111. package/dist/tools/builtins/image-generation-tool.js +0 -315
  112. package/dist/tools/builtins/image-generation-tool.js.map +0 -1
  113. package/dist/ui/display-message.d.ts +0 -101
  114. package/dist/ui/display-message.js +0 -113
  115. package/dist/ui/display-message.js.map +0 -1
  116. package/dist/web/html.d.ts +0 -1
  117. package/dist/web/html.js +0 -858
  118. package/dist/web/html.js.map +0 -1
  119. package/dist/web/index.d.ts +0 -2
  120. package/dist/web/index.js +0 -1810
  121. package/dist/web/index.js.map +0 -1
@@ -1,726 +1,677 @@
1
- {
2
- "updatedAt": "2026-05-10",
3
- "notes": [
4
- "Static model metadata used for local REPL telemetry. Values are best-effort and should be refreshed when providers update model cards.",
5
- "MODEL_CONTEXT_WINDOW_TOKENS or OPENAI_CONTEXT_WINDOW_TOKENS overrides contextWindowTokens at runtime.",
6
- "modelIds are exact official model IDs/aliases from provider documentation; matching is direct and does not use regex.",
7
- "imageInput indicates whether provider documentation lists image input / vision support for the model.",
8
- "reasoningEfforts lists the exact reasoning.effort values the /model command may set; omitted/empty means no supported effort enum is configured for that model."
9
- ],
10
- "sources": {
11
- "openai-models": "https://platform.openai.com/docs/models",
12
- "anthropic-models": "https://docs.anthropic.com/en/docs/about-claude/models/overview",
13
- "anthropic-context-windows": "https://docs.anthropic.com/en/docs/build-with-claude/context-windows",
14
- "gemini-models": "https://ai.google.dev/gemini-api/docs/models",
15
- "deepseek-pricing": "https://api-docs.deepseek.com/quick_start/pricing/",
16
- "deepseek-models": "https://api-docs.deepseek.com/quick_start/parameter_settings/",
17
- "mistral-known-limitations": "https://docs.mistral.ai/resources/known-limitations",
18
- "anthropic-vision": "https://docs.anthropic.com/en/docs/build-with-claude/vision",
19
- "mistral-vision": "https://docs.mistral.ai/capabilities/vision",
20
- "openai-reasoning": "https://developers.openai.com/api/docs/guides/reasoning",
21
- "deepseek-thinking-mode": "https://api-docs.deepseek.com/guides/thinking_mode",
22
- "kimi-overview": "https://platform.kimi.com/docs/api/overview",
23
- "kimi-chat": "https://platform.kimi.com/docs/api/chat",
24
- "kimi-thinking": "https://platform.moonshot.ai/docs/guide/kimi-k2-5-quickstart"
25
- },
26
- "models": [
27
- {
28
- "id": "gpt-5.5",
29
- "provider": "openai",
30
- "modelIds": [
31
- "gpt-5.5"
32
- ],
33
- "contextWindowTokens": 1050000,
34
- "maxOutputTokens": 128000,
35
- "reasoning": true,
36
- "imageInput": true,
37
- "source": "openai-models",
38
- "reasoningEfforts": [
39
- "none",
40
- "low",
41
- "medium",
42
- "high",
43
- "xhigh"
44
- ]
45
- },
46
- {
47
- "id": "gpt-5.5-pro",
48
- "provider": "openai",
49
- "modelIds": [
50
- "gpt-5.5-pro"
51
- ],
52
- "contextWindowTokens": 1050000,
53
- "maxOutputTokens": 128000,
54
- "reasoning": true,
55
- "imageInput": true,
56
- "source": "openai-models",
57
- "reasoningEfforts": [
58
- "none",
59
- "low",
60
- "medium",
61
- "high",
62
- "xhigh"
63
- ]
64
- },
65
- {
66
- "id": "gpt-5.4",
67
- "provider": "openai",
68
- "modelIds": [
69
- "gpt-5.4"
70
- ],
71
- "contextWindowTokens": 1050000,
72
- "maxOutputTokens": 128000,
73
- "reasoning": true,
74
- "imageInput": true,
75
- "source": "openai-models",
76
- "reasoningEfforts": [
77
- "none",
78
- "low",
79
- "medium",
80
- "high",
81
- "xhigh"
82
- ]
83
- },
84
- {
85
- "id": "gpt-5.4-mini",
86
- "provider": "openai",
87
- "modelIds": [
88
- "gpt-5.4-mini"
89
- ],
90
- "contextWindowTokens": 400000,
91
- "maxOutputTokens": 128000,
92
- "reasoning": true,
93
- "imageInput": true,
94
- "source": "openai-models",
95
- "reasoningEfforts": [
96
- "none",
97
- "low",
98
- "medium",
99
- "high",
100
- "xhigh"
101
- ]
102
- },
103
- {
104
- "id": "gpt-5.4-nano",
105
- "provider": "openai",
106
- "modelIds": [
107
- "gpt-5.4-nano"
108
- ],
109
- "contextWindowTokens": 400000,
110
- "maxOutputTokens": 128000,
111
- "reasoning": true,
112
- "imageInput": true,
113
- "source": "openai-models",
114
- "reasoningEfforts": [
115
- "none",
116
- "low",
117
- "medium",
118
- "high",
119
- "xhigh"
120
- ]
121
- },
122
- {
123
- "id": "gpt-5.2",
124
- "provider": "openai",
125
- "modelIds": [
126
- "gpt-5.2"
127
- ],
128
- "contextWindowTokens": 400000,
129
- "maxOutputTokens": 128000,
130
- "knowledgeCutoff": "2025-08-31",
131
- "reasoning": true,
132
- "imageInput": true,
133
- "source": "openai-models",
134
- "reasoningEfforts": [
135
- "none",
136
- "low",
137
- "medium",
138
- "high",
139
- "xhigh"
140
- ]
141
- },
142
- {
143
- "id": "gpt-5.2-codex",
144
- "provider": "openai",
145
- "modelIds": [
146
- "gpt-5.2-codex"
147
- ],
148
- "contextWindowTokens": 400000,
149
- "maxOutputTokens": 128000,
150
- "knowledgeCutoff": "2025-08-31",
151
- "reasoning": true,
152
- "imageInput": true,
153
- "source": "openai-models",
154
- "reasoningEfforts": [
155
- "low",
156
- "medium",
157
- "high",
158
- "xhigh"
159
- ]
160
- },
161
- {
162
- "id": "gpt-5.2-pro",
163
- "provider": "openai",
164
- "modelIds": [
165
- "gpt-5.2-pro"
166
- ],
167
- "contextWindowTokens": 400000,
168
- "maxOutputTokens": 128000,
169
- "reasoning": true,
170
- "imageInput": true,
171
- "source": "openai-models",
172
- "reasoningEfforts": [
173
- "none",
174
- "low",
175
- "medium",
176
- "high",
177
- "xhigh"
178
- ]
179
- },
180
- {
181
- "id": "gpt-5.1",
182
- "provider": "openai",
183
- "modelIds": [
184
- "gpt-5.1"
185
- ],
186
- "contextWindowTokens": 400000,
187
- "maxOutputTokens": 128000,
188
- "knowledgeCutoff": "2024-09-30",
189
- "reasoning": true,
190
- "imageInput": true,
191
- "source": "openai-models",
192
- "reasoningEfforts": [
193
- "none",
194
- "low",
195
- "medium",
196
- "high"
197
- ]
198
- },
199
- {
200
- "id": "gpt-5.1-codex",
201
- "provider": "openai",
202
- "modelIds": [
203
- "gpt-5.1-codex"
204
- ],
205
- "contextWindowTokens": 400000,
206
- "maxOutputTokens": 128000,
207
- "knowledgeCutoff": "2024-09-30",
208
- "reasoning": true,
209
- "imageInput": true,
210
- "source": "openai-models",
211
- "reasoningEfforts": [
212
- "low",
213
- "medium",
214
- "high"
215
- ]
216
- },
217
- {
218
- "id": "gpt-5.1-codex-max",
219
- "provider": "openai",
220
- "modelIds": [
221
- "gpt-5.1-codex-max"
222
- ],
223
- "contextWindowTokens": 400000,
224
- "maxOutputTokens": 128000,
225
- "knowledgeCutoff": "2024-09-30",
226
- "reasoning": true,
227
- "imageInput": true,
228
- "source": "openai-models",
229
- "reasoningEfforts": [
230
- "low",
231
- "medium",
232
- "high"
233
- ]
234
- },
235
- {
236
- "id": "gpt-5.1-codex-mini",
237
- "provider": "openai",
238
- "modelIds": [
239
- "gpt-5.1-codex-mini"
240
- ],
241
- "contextWindowTokens": 400000,
242
- "maxOutputTokens": 128000,
243
- "knowledgeCutoff": "2024-09-30",
244
- "reasoning": true,
245
- "imageInput": true,
246
- "source": "openai-models",
247
- "reasoningEfforts": [
248
- "low",
249
- "medium",
250
- "high"
251
- ]
252
- },
253
- {
254
- "id": "gpt-5",
255
- "provider": "openai",
256
- "modelIds": [
257
- "gpt-5"
258
- ],
259
- "contextWindowTokens": 400000,
260
- "maxOutputTokens": 128000,
261
- "reasoning": true,
262
- "imageInput": true,
263
- "source": "openai-models",
264
- "reasoningEfforts": [
265
- "minimal",
266
- "low",
267
- "medium",
268
- "high"
269
- ]
270
- },
271
- {
272
- "id": "gpt-5-codex",
273
- "provider": "openai",
274
- "modelIds": [
275
- "gpt-5-codex"
276
- ],
277
- "contextWindowTokens": 400000,
278
- "maxOutputTokens": 128000,
279
- "reasoning": true,
280
- "imageInput": true,
281
- "source": "openai-models",
282
- "reasoningEfforts": [
283
- "minimal",
284
- "low",
285
- "medium",
286
- "high"
287
- ]
288
- },
289
- {
290
- "id": "gpt-5-mini",
291
- "provider": "openai",
292
- "modelIds": [
293
- "gpt-5-mini"
294
- ],
295
- "contextWindowTokens": 400000,
296
- "maxOutputTokens": 128000,
297
- "reasoning": true,
298
- "imageInput": true,
299
- "source": "openai-models",
300
- "reasoningEfforts": [
301
- "minimal",
302
- "low",
303
- "medium",
304
- "high"
305
- ]
306
- },
307
- {
308
- "id": "gpt-5-nano",
309
- "provider": "openai",
310
- "modelIds": [
311
- "gpt-5-nano"
312
- ],
313
- "contextWindowTokens": 400000,
314
- "maxOutputTokens": 128000,
315
- "reasoning": true,
316
- "imageInput": true,
317
- "source": "openai-models",
318
- "reasoningEfforts": [
319
- "minimal",
320
- "low",
321
- "medium",
322
- "high"
323
- ]
324
- },
325
- {
326
- "id": "gpt-5-pro",
327
- "provider": "openai",
328
- "modelIds": [
329
- "gpt-5-pro"
330
- ],
331
- "contextWindowTokens": 400000,
332
- "maxOutputTokens": 272000,
333
- "reasoning": true,
334
- "imageInput": true,
335
- "source": "openai-models",
336
- "reasoningEfforts": [
337
- "minimal",
338
- "low",
339
- "medium",
340
- "high"
341
- ]
342
- },
343
- {
344
- "id": "gpt-4.1",
345
- "provider": "openai",
346
- "modelIds": [
347
- "gpt-4.1"
348
- ],
349
- "contextWindowTokens": 1047576,
350
- "maxOutputTokens": 32768,
351
- "reasoning": false,
352
- "imageInput": true,
353
- "source": "openai-models"
354
- },
355
- {
356
- "id": "gpt-4.1-mini",
357
- "provider": "openai",
358
- "modelIds": [
359
- "gpt-4.1-mini"
360
- ],
361
- "contextWindowTokens": 1047576,
362
- "maxOutputTokens": 32768,
363
- "reasoning": false,
364
- "imageInput": true,
365
- "source": "openai-models"
366
- },
367
- {
368
- "id": "gpt-4.1-nano",
369
- "provider": "openai",
370
- "modelIds": [
371
- "gpt-4.1-nano"
372
- ],
373
- "contextWindowTokens": 1047576,
374
- "maxOutputTokens": 32768,
375
- "reasoning": false,
376
- "imageInput": true,
377
- "source": "openai-models"
378
- },
379
- {
380
- "id": "gpt-4o",
381
- "provider": "openai",
382
- "modelIds": [
383
- "gpt-4o"
384
- ],
385
- "contextWindowTokens": 128000,
386
- "maxOutputTokens": 16384,
387
- "reasoning": false,
388
- "imageInput": true,
389
- "source": "openai-models"
390
- },
391
- {
392
- "id": "gpt-4o-mini",
393
- "provider": "openai",
394
- "modelIds": [
395
- "gpt-4o-mini"
396
- ],
397
- "contextWindowTokens": 128000,
398
- "maxOutputTokens": 16384,
399
- "reasoning": false,
400
- "imageInput": true,
401
- "source": "openai-models"
402
- },
403
- {
404
- "id": "chatgpt-4o-latest",
405
- "provider": "openai",
406
- "modelIds": [
407
- "chatgpt-4o-latest"
408
- ],
409
- "contextWindowTokens": 128000,
410
- "maxOutputTokens": 16384,
411
- "reasoning": false,
412
- "imageInput": true,
413
- "source": "openai-models"
414
- },
415
- {
416
- "id": "gpt-4o-search-preview",
417
- "provider": "openai",
418
- "modelIds": [
419
- "gpt-4o-search-preview"
420
- ],
421
- "contextWindowTokens": 128000,
422
- "maxOutputTokens": 16384,
423
- "reasoning": false,
424
- "imageInput": true,
425
- "source": "openai-models"
426
- },
427
- {
428
- "id": "gpt-4o-mini-search-preview",
429
- "provider": "openai",
430
- "modelIds": [
431
- "gpt-4o-mini-search-preview"
432
- ],
433
- "contextWindowTokens": 128000,
434
- "maxOutputTokens": 16384,
435
- "reasoning": false,
436
- "imageInput": true,
437
- "source": "openai-models"
438
- },
439
- {
440
- "id": "o4-mini",
441
- "provider": "openai",
442
- "modelIds": [
443
- "o4-mini"
444
- ],
445
- "contextWindowTokens": 200000,
446
- "maxOutputTokens": 100000,
447
- "reasoning": true,
448
- "imageInput": true,
449
- "source": "openai-models",
450
- "reasoningEfforts": [
451
- "low",
452
- "medium",
453
- "high"
454
- ]
455
- },
456
- {
457
- "id": "o4-mini-deep-research",
458
- "provider": "openai",
459
- "modelIds": [
460
- "o4-mini-deep-research"
461
- ],
462
- "contextWindowTokens": 200000,
463
- "maxOutputTokens": 100000,
464
- "reasoning": true,
465
- "imageInput": true,
466
- "source": "openai-models",
467
- "reasoningEfforts": [
468
- "low",
469
- "medium",
470
- "high"
471
- ]
472
- },
473
- {
474
- "id": "gpt-4",
475
- "provider": "openai",
476
- "modelIds": [
477
- "gpt-4"
478
- ],
479
- "contextWindowTokens": 8192,
480
- "maxOutputTokens": 8192,
481
- "reasoning": false,
482
- "imageInput": false,
483
- "source": "openai-models"
484
- },
485
- {
486
- "id": "claude-opus-4-7",
487
- "provider": "anthropic",
488
- "modelIds": [
489
- "claude-opus-4-7"
490
- ],
491
- "contextWindowTokens": 1000000,
492
- "maxOutputTokens": 128000,
493
- "reasoning": true,
494
- "imageInput": true,
495
- "source": "anthropic-models"
496
- },
497
- {
498
- "id": "claude-sonnet-4-6",
499
- "provider": "anthropic",
500
- "modelIds": [
501
- "claude-sonnet-4-6"
502
- ],
503
- "contextWindowTokens": 1000000,
504
- "maxOutputTokens": 64000,
505
- "reasoning": true,
506
- "imageInput": true,
507
- "source": "anthropic-models"
508
- },
509
- {
510
- "id": "claude-haiku-4-5",
511
- "provider": "anthropic",
512
- "modelIds": [
513
- "claude-haiku-4-5",
514
- "claude-haiku-4-5-20251001"
515
- ],
516
- "contextWindowTokens": 200000,
517
- "maxOutputTokens": 64000,
518
- "reasoning": true,
519
- "imageInput": true,
520
- "source": "anthropic-models"
521
- },
522
- {
523
- "id": "gemini-3.1-pro-preview",
524
- "provider": "google",
525
- "modelIds": [
526
- "gemini-3.1-pro-preview",
527
- "gemini-3.1-pro-preview-customtools"
528
- ],
529
- "contextWindowTokens": 1048576,
530
- "maxOutputTokens": 65536,
531
- "reasoning": true,
532
- "imageInput": true,
533
- "source": "gemini-models"
534
- },
535
- {
536
- "id": "gemini-3-flash-preview",
537
- "provider": "google",
538
- "modelIds": [
539
- "gemini-3-flash-preview"
540
- ],
541
- "contextWindowTokens": 1048576,
542
- "maxOutputTokens": 65536,
543
- "reasoning": true,
544
- "imageInput": true,
545
- "source": "gemini-models"
546
- },
547
- {
548
- "id": "gemini-2.5-pro",
549
- "provider": "google",
550
- "modelIds": [
551
- "gemini-2.5-pro"
552
- ],
553
- "contextWindowTokens": 1048576,
554
- "maxOutputTokens": 65536,
555
- "reasoning": true,
556
- "imageInput": true,
557
- "source": "gemini-models"
558
- },
559
- {
560
- "id": "gemini-2.5-flash",
561
- "provider": "google",
562
- "modelIds": [
563
- "gemini-2.5-flash"
564
- ],
565
- "contextWindowTokens": 1048576,
566
- "maxOutputTokens": 65536,
567
- "reasoning": true,
568
- "imageInput": true,
569
- "source": "gemini-models"
570
- },
571
- {
572
- "id": "gemini-2.5-flash-lite",
573
- "provider": "google",
574
- "modelIds": [
575
- "gemini-2.5-flash-lite"
576
- ],
577
- "contextWindowTokens": 1048576,
578
- "maxOutputTokens": 65536,
579
- "reasoning": true,
580
- "imageInput": true,
581
- "source": "gemini-models"
582
- },
583
- {
584
- "id": "gemini-2.0-flash",
585
- "provider": "google",
586
- "modelIds": [
587
- "gemini-2.0-flash"
588
- ],
589
- "contextWindowTokens": 1048576,
590
- "maxOutputTokens": 8192,
591
- "reasoning": true,
592
- "imageInput": true,
593
- "source": "gemini-models"
594
- },
595
- {
596
- "id": "deepseek-v4-pro",
597
- "provider": "deepseek",
598
- "modelIds": [
599
- "deepseek-v4-pro"
600
- ],
601
- "contextWindowTokens": 1000000,
602
- "maxOutputTokens": 384000,
603
- "reasoning": true,
604
- "imageInput": false,
605
- "source": "deepseek-pricing",
606
- "reasoningEfforts": [
607
- "high",
608
- "max"
609
- ]
610
- },
611
- {
612
- "id": "deepseek-v4-flash",
613
- "provider": "deepseek",
614
- "modelIds": [
615
- "deepseek-v4-flash"
616
- ],
617
- "contextWindowTokens": 1000000,
618
- "maxOutputTokens": 384000,
619
- "reasoning": true,
620
- "imageInput": false,
621
- "source": "deepseek-pricing",
622
- "reasoningEfforts": [
623
- "high",
624
- "max"
625
- ]
626
- },
627
- {
628
- "id": "deepseek-chat",
629
- "provider": "deepseek",
630
- "modelIds": [
631
- "deepseek-chat"
632
- ],
633
- "contextWindowTokens": 1000000,
634
- "maxOutputTokens": 384000,
635
- "reasoning": false,
636
- "imageInput": false,
637
- "source": "deepseek-pricing",
638
- "notes": "Compatibility alias for non-thinking mode of deepseek-v4-flash."
639
- },
640
- {
641
- "id": "deepseek-reasoner",
642
- "provider": "deepseek",
643
- "modelIds": [
644
- "deepseek-reasoner"
645
- ],
646
- "contextWindowTokens": 1000000,
647
- "maxOutputTokens": 384000,
648
- "reasoning": true,
649
- "imageInput": false,
650
- "source": "deepseek-pricing",
651
- "notes": "Compatibility alias for thinking mode of deepseek-v4-flash.",
652
- "reasoningEfforts": [
653
- "high",
654
- "max"
655
- ]
656
- },
657
- {
658
- "id": "kimi-k2.6",
659
- "provider": "kimi",
660
- "modelIds": [
661
- "kimi-k2.6"
662
- ],
663
- "contextWindowTokens": 256000,
664
- "reasoning": true,
665
- "imageInput": true,
666
- "source": "kimi-chat",
667
- "notes": "Default Kimi API Chat Completions model per Kimi quickstart; OpenAI-compatible endpoint https://api.moonshot.cn/v1/chat/completions."
668
- },
669
- {
670
- "id": "kimi-k2.5",
671
- "provider": "kimi",
672
- "modelIds": [
673
- "kimi-k2.5"
674
- ],
675
- "contextWindowTokens": 256000,
676
- "reasoning": true,
677
- "imageInput": true,
678
- "source": "kimi-thinking"
679
- },
680
- {
681
- "id": "kimi-k2-thinking",
682
- "provider": "kimi",
683
- "modelIds": [
684
- "kimi-k2-thinking"
685
- ],
686
- "contextWindowTokens": 256000,
687
- "reasoning": true,
688
- "imageInput": false,
689
- "source": "kimi-thinking",
690
- "notes": "Thinking model responses may include reasoning_content, normalized to thinking events."
691
- },
692
- {
693
- "id": "kimi-k2-0905-preview",
694
- "provider": "kimi",
695
- "modelIds": [
696
- "kimi-k2-0905-preview"
697
- ],
698
- "contextWindowTokens": 256000,
699
- "reasoning": false,
700
- "imageInput": false,
701
- "source": "kimi-chat"
702
- },
703
- {
704
- "id": "mistral-large-latest",
705
- "provider": "mistral",
706
- "modelIds": [
707
- "mistral-large-latest"
708
- ],
709
- "contextWindowTokens": 131072,
710
- "reasoning": false,
711
- "imageInput": true,
712
- "source": "mistral-known-limitations"
713
- },
714
- {
715
- "id": "mistral-small-latest",
716
- "provider": "mistral",
717
- "modelIds": [
718
- "mistral-small-latest"
719
- ],
720
- "contextWindowTokens": 32768,
721
- "reasoning": false,
722
- "imageInput": true,
723
- "source": "mistral-known-limitations"
724
- }
725
- ]
726
- }
1
+ {
2
+ "updatedAt": "2026-05-08",
3
+ "notes": [
4
+ "Static model metadata used for local REPL telemetry. Values are best-effort and should be refreshed when providers update model cards.",
5
+ "MODEL_CONTEXT_WINDOW_TOKENS or OPENAI_CONTEXT_WINDOW_TOKENS overrides contextWindowTokens at runtime.",
6
+ "modelIds are exact official model IDs/aliases from provider documentation; matching is direct and does not use regex.",
7
+ "imageInput indicates whether provider documentation lists image input / vision support for the model.",
8
+ "reasoningEfforts lists the exact reasoning.effort values the /model command may set; omitted/empty means no supported effort enum is configured for that model."
9
+ ],
10
+ "sources": {
11
+ "openai-models": "https://platform.openai.com/docs/models",
12
+ "anthropic-models": "https://docs.anthropic.com/en/docs/about-claude/models/overview",
13
+ "anthropic-context-windows": "https://docs.anthropic.com/en/docs/build-with-claude/context-windows",
14
+ "gemini-models": "https://ai.google.dev/gemini-api/docs/models",
15
+ "deepseek-pricing": "https://api-docs.deepseek.com/quick_start/pricing/",
16
+ "deepseek-models": "https://api-docs.deepseek.com/quick_start/parameter_settings/",
17
+ "mistral-known-limitations": "https://docs.mistral.ai/resources/known-limitations",
18
+ "anthropic-vision": "https://docs.anthropic.com/en/docs/build-with-claude/vision",
19
+ "mistral-vision": "https://docs.mistral.ai/capabilities/vision",
20
+ "openai-reasoning": "https://developers.openai.com/api/docs/guides/reasoning",
21
+ "deepseek-thinking-mode": "https://api-docs.deepseek.com/guides/thinking_mode"
22
+ },
23
+ "models": [
24
+ {
25
+ "id": "gpt-5.5",
26
+ "provider": "openai",
27
+ "modelIds": [
28
+ "gpt-5.5"
29
+ ],
30
+ "contextWindowTokens": 1050000,
31
+ "maxOutputTokens": 128000,
32
+ "reasoning": true,
33
+ "imageInput": true,
34
+ "source": "openai-models",
35
+ "reasoningEfforts": [
36
+ "none",
37
+ "low",
38
+ "medium",
39
+ "high",
40
+ "xhigh"
41
+ ]
42
+ },
43
+ {
44
+ "id": "gpt-5.5-pro",
45
+ "provider": "openai",
46
+ "modelIds": [
47
+ "gpt-5.5-pro"
48
+ ],
49
+ "contextWindowTokens": 1050000,
50
+ "maxOutputTokens": 128000,
51
+ "reasoning": true,
52
+ "imageInput": true,
53
+ "source": "openai-models",
54
+ "reasoningEfforts": [
55
+ "none",
56
+ "low",
57
+ "medium",
58
+ "high",
59
+ "xhigh"
60
+ ]
61
+ },
62
+ {
63
+ "id": "gpt-5.4",
64
+ "provider": "openai",
65
+ "modelIds": [
66
+ "gpt-5.4"
67
+ ],
68
+ "contextWindowTokens": 1050000,
69
+ "maxOutputTokens": 128000,
70
+ "reasoning": true,
71
+ "imageInput": true,
72
+ "source": "openai-models",
73
+ "reasoningEfforts": [
74
+ "none",
75
+ "low",
76
+ "medium",
77
+ "high",
78
+ "xhigh"
79
+ ]
80
+ },
81
+ {
82
+ "id": "gpt-5.4-mini",
83
+ "provider": "openai",
84
+ "modelIds": [
85
+ "gpt-5.4-mini"
86
+ ],
87
+ "contextWindowTokens": 400000,
88
+ "maxOutputTokens": 128000,
89
+ "reasoning": true,
90
+ "imageInput": true,
91
+ "source": "openai-models",
92
+ "reasoningEfforts": [
93
+ "none",
94
+ "low",
95
+ "medium",
96
+ "high",
97
+ "xhigh"
98
+ ]
99
+ },
100
+ {
101
+ "id": "gpt-5.4-nano",
102
+ "provider": "openai",
103
+ "modelIds": [
104
+ "gpt-5.4-nano"
105
+ ],
106
+ "contextWindowTokens": 400000,
107
+ "maxOutputTokens": 128000,
108
+ "reasoning": true,
109
+ "imageInput": true,
110
+ "source": "openai-models",
111
+ "reasoningEfforts": [
112
+ "none",
113
+ "low",
114
+ "medium",
115
+ "high",
116
+ "xhigh"
117
+ ]
118
+ },
119
+ {
120
+ "id": "gpt-5.2",
121
+ "provider": "openai",
122
+ "modelIds": [
123
+ "gpt-5.2"
124
+ ],
125
+ "contextWindowTokens": 400000,
126
+ "maxOutputTokens": 128000,
127
+ "knowledgeCutoff": "2025-08-31",
128
+ "reasoning": true,
129
+ "imageInput": true,
130
+ "source": "openai-models",
131
+ "reasoningEfforts": [
132
+ "none",
133
+ "low",
134
+ "medium",
135
+ "high",
136
+ "xhigh"
137
+ ]
138
+ },
139
+ {
140
+ "id": "gpt-5.2-codex",
141
+ "provider": "openai",
142
+ "modelIds": [
143
+ "gpt-5.2-codex"
144
+ ],
145
+ "contextWindowTokens": 400000,
146
+ "maxOutputTokens": 128000,
147
+ "knowledgeCutoff": "2025-08-31",
148
+ "reasoning": true,
149
+ "imageInput": true,
150
+ "source": "openai-models",
151
+ "reasoningEfforts": [
152
+ "low",
153
+ "medium",
154
+ "high",
155
+ "xhigh"
156
+ ]
157
+ },
158
+ {
159
+ "id": "gpt-5.2-pro",
160
+ "provider": "openai",
161
+ "modelIds": [
162
+ "gpt-5.2-pro"
163
+ ],
164
+ "contextWindowTokens": 400000,
165
+ "maxOutputTokens": 128000,
166
+ "reasoning": true,
167
+ "imageInput": true,
168
+ "source": "openai-models",
169
+ "reasoningEfforts": [
170
+ "none",
171
+ "low",
172
+ "medium",
173
+ "high",
174
+ "xhigh"
175
+ ]
176
+ },
177
+ {
178
+ "id": "gpt-5.1",
179
+ "provider": "openai",
180
+ "modelIds": [
181
+ "gpt-5.1"
182
+ ],
183
+ "contextWindowTokens": 400000,
184
+ "maxOutputTokens": 128000,
185
+ "knowledgeCutoff": "2024-09-30",
186
+ "reasoning": true,
187
+ "imageInput": true,
188
+ "source": "openai-models",
189
+ "reasoningEfforts": [
190
+ "none",
191
+ "low",
192
+ "medium",
193
+ "high"
194
+ ]
195
+ },
196
+ {
197
+ "id": "gpt-5.1-codex",
198
+ "provider": "openai",
199
+ "modelIds": [
200
+ "gpt-5.1-codex"
201
+ ],
202
+ "contextWindowTokens": 400000,
203
+ "maxOutputTokens": 128000,
204
+ "knowledgeCutoff": "2024-09-30",
205
+ "reasoning": true,
206
+ "imageInput": true,
207
+ "source": "openai-models",
208
+ "reasoningEfforts": [
209
+ "low",
210
+ "medium",
211
+ "high"
212
+ ]
213
+ },
214
+ {
215
+ "id": "gpt-5.1-codex-max",
216
+ "provider": "openai",
217
+ "modelIds": [
218
+ "gpt-5.1-codex-max"
219
+ ],
220
+ "contextWindowTokens": 400000,
221
+ "maxOutputTokens": 128000,
222
+ "knowledgeCutoff": "2024-09-30",
223
+ "reasoning": true,
224
+ "imageInput": true,
225
+ "source": "openai-models",
226
+ "reasoningEfforts": [
227
+ "low",
228
+ "medium",
229
+ "high"
230
+ ]
231
+ },
232
+ {
233
+ "id": "gpt-5.1-codex-mini",
234
+ "provider": "openai",
235
+ "modelIds": [
236
+ "gpt-5.1-codex-mini"
237
+ ],
238
+ "contextWindowTokens": 400000,
239
+ "maxOutputTokens": 128000,
240
+ "knowledgeCutoff": "2024-09-30",
241
+ "reasoning": true,
242
+ "imageInput": true,
243
+ "source": "openai-models",
244
+ "reasoningEfforts": [
245
+ "low",
246
+ "medium",
247
+ "high"
248
+ ]
249
+ },
250
+ {
251
+ "id": "gpt-5",
252
+ "provider": "openai",
253
+ "modelIds": [
254
+ "gpt-5"
255
+ ],
256
+ "contextWindowTokens": 400000,
257
+ "maxOutputTokens": 128000,
258
+ "reasoning": true,
259
+ "imageInput": true,
260
+ "source": "openai-models",
261
+ "reasoningEfforts": [
262
+ "minimal",
263
+ "low",
264
+ "medium",
265
+ "high"
266
+ ]
267
+ },
268
+ {
269
+ "id": "gpt-5-codex",
270
+ "provider": "openai",
271
+ "modelIds": [
272
+ "gpt-5-codex"
273
+ ],
274
+ "contextWindowTokens": 400000,
275
+ "maxOutputTokens": 128000,
276
+ "reasoning": true,
277
+ "imageInput": true,
278
+ "source": "openai-models",
279
+ "reasoningEfforts": [
280
+ "minimal",
281
+ "low",
282
+ "medium",
283
+ "high"
284
+ ]
285
+ },
286
+ {
287
+ "id": "gpt-5-mini",
288
+ "provider": "openai",
289
+ "modelIds": [
290
+ "gpt-5-mini"
291
+ ],
292
+ "contextWindowTokens": 400000,
293
+ "maxOutputTokens": 128000,
294
+ "reasoning": true,
295
+ "imageInput": true,
296
+ "source": "openai-models",
297
+ "reasoningEfforts": [
298
+ "minimal",
299
+ "low",
300
+ "medium",
301
+ "high"
302
+ ]
303
+ },
304
+ {
305
+ "id": "gpt-5-nano",
306
+ "provider": "openai",
307
+ "modelIds": [
308
+ "gpt-5-nano"
309
+ ],
310
+ "contextWindowTokens": 400000,
311
+ "maxOutputTokens": 128000,
312
+ "reasoning": true,
313
+ "imageInput": true,
314
+ "source": "openai-models",
315
+ "reasoningEfforts": [
316
+ "minimal",
317
+ "low",
318
+ "medium",
319
+ "high"
320
+ ]
321
+ },
322
+ {
323
+ "id": "gpt-5-pro",
324
+ "provider": "openai",
325
+ "modelIds": [
326
+ "gpt-5-pro"
327
+ ],
328
+ "contextWindowTokens": 400000,
329
+ "maxOutputTokens": 272000,
330
+ "reasoning": true,
331
+ "imageInput": true,
332
+ "source": "openai-models",
333
+ "reasoningEfforts": [
334
+ "minimal",
335
+ "low",
336
+ "medium",
337
+ "high"
338
+ ]
339
+ },
340
+ {
341
+ "id": "gpt-4.1",
342
+ "provider": "openai",
343
+ "modelIds": [
344
+ "gpt-4.1"
345
+ ],
346
+ "contextWindowTokens": 1047576,
347
+ "maxOutputTokens": 32768,
348
+ "reasoning": false,
349
+ "imageInput": true,
350
+ "source": "openai-models"
351
+ },
352
+ {
353
+ "id": "gpt-4.1-mini",
354
+ "provider": "openai",
355
+ "modelIds": [
356
+ "gpt-4.1-mini"
357
+ ],
358
+ "contextWindowTokens": 1047576,
359
+ "maxOutputTokens": 32768,
360
+ "reasoning": false,
361
+ "imageInput": true,
362
+ "source": "openai-models"
363
+ },
364
+ {
365
+ "id": "gpt-4.1-nano",
366
+ "provider": "openai",
367
+ "modelIds": [
368
+ "gpt-4.1-nano"
369
+ ],
370
+ "contextWindowTokens": 1047576,
371
+ "maxOutputTokens": 32768,
372
+ "reasoning": false,
373
+ "imageInput": true,
374
+ "source": "openai-models"
375
+ },
376
+ {
377
+ "id": "gpt-4o",
378
+ "provider": "openai",
379
+ "modelIds": [
380
+ "gpt-4o"
381
+ ],
382
+ "contextWindowTokens": 128000,
383
+ "maxOutputTokens": 16384,
384
+ "reasoning": false,
385
+ "imageInput": true,
386
+ "source": "openai-models"
387
+ },
388
+ {
389
+ "id": "gpt-4o-mini",
390
+ "provider": "openai",
391
+ "modelIds": [
392
+ "gpt-4o-mini"
393
+ ],
394
+ "contextWindowTokens": 128000,
395
+ "maxOutputTokens": 16384,
396
+ "reasoning": false,
397
+ "imageInput": true,
398
+ "source": "openai-models"
399
+ },
400
+ {
401
+ "id": "chatgpt-4o-latest",
402
+ "provider": "openai",
403
+ "modelIds": [
404
+ "chatgpt-4o-latest"
405
+ ],
406
+ "contextWindowTokens": 128000,
407
+ "maxOutputTokens": 16384,
408
+ "reasoning": false,
409
+ "imageInput": true,
410
+ "source": "openai-models"
411
+ },
412
+ {
413
+ "id": "gpt-4o-search-preview",
414
+ "provider": "openai",
415
+ "modelIds": [
416
+ "gpt-4o-search-preview"
417
+ ],
418
+ "contextWindowTokens": 128000,
419
+ "maxOutputTokens": 16384,
420
+ "reasoning": false,
421
+ "imageInput": true,
422
+ "source": "openai-models"
423
+ },
424
+ {
425
+ "id": "gpt-4o-mini-search-preview",
426
+ "provider": "openai",
427
+ "modelIds": [
428
+ "gpt-4o-mini-search-preview"
429
+ ],
430
+ "contextWindowTokens": 128000,
431
+ "maxOutputTokens": 16384,
432
+ "reasoning": false,
433
+ "imageInput": true,
434
+ "source": "openai-models"
435
+ },
436
+ {
437
+ "id": "o4-mini",
438
+ "provider": "openai",
439
+ "modelIds": [
440
+ "o4-mini"
441
+ ],
442
+ "contextWindowTokens": 200000,
443
+ "maxOutputTokens": 100000,
444
+ "reasoning": true,
445
+ "imageInput": true,
446
+ "source": "openai-models",
447
+ "reasoningEfforts": [
448
+ "low",
449
+ "medium",
450
+ "high"
451
+ ]
452
+ },
453
+ {
454
+ "id": "o4-mini-deep-research",
455
+ "provider": "openai",
456
+ "modelIds": [
457
+ "o4-mini-deep-research"
458
+ ],
459
+ "contextWindowTokens": 200000,
460
+ "maxOutputTokens": 100000,
461
+ "reasoning": true,
462
+ "imageInput": true,
463
+ "source": "openai-models",
464
+ "reasoningEfforts": [
465
+ "low",
466
+ "medium",
467
+ "high"
468
+ ]
469
+ },
470
+ {
471
+ "id": "gpt-4",
472
+ "provider": "openai",
473
+ "modelIds": [
474
+ "gpt-4"
475
+ ],
476
+ "contextWindowTokens": 8192,
477
+ "maxOutputTokens": 8192,
478
+ "reasoning": false,
479
+ "imageInput": false,
480
+ "source": "openai-models"
481
+ },
482
+ {
483
+ "id": "claude-opus-4-7",
484
+ "provider": "anthropic",
485
+ "modelIds": [
486
+ "claude-opus-4-7"
487
+ ],
488
+ "contextWindowTokens": 1000000,
489
+ "maxOutputTokens": 128000,
490
+ "reasoning": true,
491
+ "imageInput": true,
492
+ "source": "anthropic-models"
493
+ },
494
+ {
495
+ "id": "claude-sonnet-4-6",
496
+ "provider": "anthropic",
497
+ "modelIds": [
498
+ "claude-sonnet-4-6"
499
+ ],
500
+ "contextWindowTokens": 1000000,
501
+ "maxOutputTokens": 64000,
502
+ "reasoning": true,
503
+ "imageInput": true,
504
+ "source": "anthropic-models"
505
+ },
506
+ {
507
+ "id": "claude-haiku-4-5",
508
+ "provider": "anthropic",
509
+ "modelIds": [
510
+ "claude-haiku-4-5",
511
+ "claude-haiku-4-5-20251001"
512
+ ],
513
+ "contextWindowTokens": 200000,
514
+ "maxOutputTokens": 64000,
515
+ "reasoning": true,
516
+ "imageInput": true,
517
+ "source": "anthropic-models"
518
+ },
519
+ {
520
+ "id": "gemini-3.1-pro-preview",
521
+ "provider": "google",
522
+ "modelIds": [
523
+ "gemini-3.1-pro-preview",
524
+ "gemini-3.1-pro-preview-customtools"
525
+ ],
526
+ "contextWindowTokens": 1048576,
527
+ "maxOutputTokens": 65536,
528
+ "reasoning": true,
529
+ "imageInput": true,
530
+ "source": "gemini-models"
531
+ },
532
+ {
533
+ "id": "gemini-3-flash-preview",
534
+ "provider": "google",
535
+ "modelIds": [
536
+ "gemini-3-flash-preview"
537
+ ],
538
+ "contextWindowTokens": 1048576,
539
+ "maxOutputTokens": 65536,
540
+ "reasoning": true,
541
+ "imageInput": true,
542
+ "source": "gemini-models"
543
+ },
544
+ {
545
+ "id": "gemini-2.5-pro",
546
+ "provider": "google",
547
+ "modelIds": [
548
+ "gemini-2.5-pro"
549
+ ],
550
+ "contextWindowTokens": 1048576,
551
+ "maxOutputTokens": 65536,
552
+ "reasoning": true,
553
+ "imageInput": true,
554
+ "source": "gemini-models"
555
+ },
556
+ {
557
+ "id": "gemini-2.5-flash",
558
+ "provider": "google",
559
+ "modelIds": [
560
+ "gemini-2.5-flash"
561
+ ],
562
+ "contextWindowTokens": 1048576,
563
+ "maxOutputTokens": 65536,
564
+ "reasoning": true,
565
+ "imageInput": true,
566
+ "source": "gemini-models"
567
+ },
568
+ {
569
+ "id": "gemini-2.5-flash-lite",
570
+ "provider": "google",
571
+ "modelIds": [
572
+ "gemini-2.5-flash-lite"
573
+ ],
574
+ "contextWindowTokens": 1048576,
575
+ "maxOutputTokens": 65536,
576
+ "reasoning": true,
577
+ "imageInput": true,
578
+ "source": "gemini-models"
579
+ },
580
+ {
581
+ "id": "gemini-2.0-flash",
582
+ "provider": "google",
583
+ "modelIds": [
584
+ "gemini-2.0-flash"
585
+ ],
586
+ "contextWindowTokens": 1048576,
587
+ "maxOutputTokens": 8192,
588
+ "reasoning": true,
589
+ "imageInput": true,
590
+ "source": "gemini-models"
591
+ },
592
+ {
593
+ "id": "deepseek-v4-pro",
594
+ "provider": "deepseek",
595
+ "modelIds": [
596
+ "deepseek-v4-pro"
597
+ ],
598
+ "contextWindowTokens": 1000000,
599
+ "maxOutputTokens": 384000,
600
+ "reasoning": true,
601
+ "imageInput": false,
602
+ "source": "deepseek-pricing",
603
+ "reasoningEfforts": [
604
+ "high",
605
+ "max"
606
+ ]
607
+ },
608
+ {
609
+ "id": "deepseek-v4-flash",
610
+ "provider": "deepseek",
611
+ "modelIds": [
612
+ "deepseek-v4-flash"
613
+ ],
614
+ "contextWindowTokens": 1000000,
615
+ "maxOutputTokens": 384000,
616
+ "reasoning": true,
617
+ "imageInput": false,
618
+ "source": "deepseek-pricing",
619
+ "reasoningEfforts": [
620
+ "high",
621
+ "max"
622
+ ]
623
+ },
624
+ {
625
+ "id": "deepseek-chat",
626
+ "provider": "deepseek",
627
+ "modelIds": [
628
+ "deepseek-chat"
629
+ ],
630
+ "contextWindowTokens": 1000000,
631
+ "maxOutputTokens": 384000,
632
+ "reasoning": false,
633
+ "imageInput": false,
634
+ "source": "deepseek-pricing",
635
+ "notes": "Compatibility alias for non-thinking mode of deepseek-v4-flash."
636
+ },
637
+ {
638
+ "id": "deepseek-reasoner",
639
+ "provider": "deepseek",
640
+ "modelIds": [
641
+ "deepseek-reasoner"
642
+ ],
643
+ "contextWindowTokens": 1000000,
644
+ "maxOutputTokens": 384000,
645
+ "reasoning": true,
646
+ "imageInput": false,
647
+ "source": "deepseek-pricing",
648
+ "notes": "Compatibility alias for thinking mode of deepseek-v4-flash.",
649
+ "reasoningEfforts": [
650
+ "high",
651
+ "max"
652
+ ]
653
+ },
654
+ {
655
+ "id": "mistral-large-latest",
656
+ "provider": "mistral",
657
+ "modelIds": [
658
+ "mistral-large-latest"
659
+ ],
660
+ "contextWindowTokens": 131072,
661
+ "reasoning": false,
662
+ "imageInput": true,
663
+ "source": "mistral-known-limitations"
664
+ },
665
+ {
666
+ "id": "mistral-small-latest",
667
+ "provider": "mistral",
668
+ "modelIds": [
669
+ "mistral-small-latest"
670
+ ],
671
+ "contextWindowTokens": 32768,
672
+ "reasoning": false,
673
+ "imageInput": true,
674
+ "source": "mistral-known-limitations"
675
+ }
676
+ ]
677
+ }