@askdkc/dsh-cli 0.12.3 → 0.13.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 (162) hide show
  1. package/cordis.patch.yml +12 -131
  2. package/lib/types/adapter/channel/session-projection.d.ts.map +1 -1
  3. package/lib/types/adapter/channel/session-projection.js +0 -7
  4. package/lib/types/adapter/ports/channel-view.d.ts +1 -1
  5. package/lib/types/adapter/ports/channel-view.d.ts.map +1 -1
  6. package/lib/types/dsh-adapter/bundled-presets.d.ts +3 -8
  7. package/lib/types/dsh-adapter/bundled-presets.d.ts.map +1 -1
  8. package/lib/types/dsh-adapter/bundled-presets.js +5 -20
  9. package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -1
  10. package/lib/types/dsh-adapter/channel/binding-events.js +2 -9
  11. package/lib/types/dsh-adapter/channel/external-commands.d.ts.map +1 -1
  12. package/lib/types/dsh-adapter/channel/external-commands.js +9 -33
  13. package/lib/types/dsh-adapter/channel/local-actions.d.ts +2 -1
  14. package/lib/types/dsh-adapter/channel/local-actions.d.ts.map +1 -1
  15. package/lib/types/dsh-adapter/channel/local-actions.js +6 -2
  16. package/lib/types/dsh-adapter/channel/model-actions.js +3 -3
  17. package/lib/types/dsh-adapter/channel/model-switch.d.ts.map +1 -1
  18. package/lib/types/dsh-adapter/channel/model-switch.js +0 -1
  19. package/lib/types/dsh-adapter/channel/permissions.d.ts +1 -6
  20. package/lib/types/dsh-adapter/channel/permissions.d.ts.map +1 -1
  21. package/lib/types/dsh-adapter/channel/permissions.js +2 -54
  22. package/lib/types/dsh-adapter/channel/projection.d.ts.map +1 -1
  23. package/lib/types/dsh-adapter/channel/projection.js +15 -70
  24. package/lib/types/dsh-adapter/channel/session-fork.d.ts.map +1 -1
  25. package/lib/types/dsh-adapter/channel/session-fork.js +0 -1
  26. package/lib/types/dsh-adapter/channel/session-metadata.d.ts.map +1 -1
  27. package/lib/types/dsh-adapter/channel/session-metadata.js +1 -4
  28. package/lib/types/dsh-adapter/channel/session-resume.js +2 -2
  29. package/lib/types/dsh-adapter/channel/session-rewind.d.ts.map +1 -1
  30. package/lib/types/dsh-adapter/channel/session-rewind.js +0 -1
  31. package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts.map +1 -1
  32. package/lib/types/dsh-adapter/channel/session-tree-actions.js +1 -2
  33. package/lib/types/dsh-adapter/channel/session-tree.d.ts.map +1 -1
  34. package/lib/types/dsh-adapter/channel/session-tree.js +9 -62
  35. package/lib/types/dsh-adapter/channel/skill-catalog.js +1 -1
  36. package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -1
  37. package/lib/types/dsh-adapter/channel/subagent-projection.js +2 -8
  38. package/lib/types/dsh-adapter/channel/transcript.d.ts +0 -16
  39. package/lib/types/dsh-adapter/channel/transcript.d.ts.map +1 -1
  40. package/lib/types/dsh-adapter/channel/transcript.js +0 -43
  41. package/lib/types/dsh-adapter/channel.js +2 -2
  42. package/lib/types/dsh-adapter/compat/index.d.ts +5 -25
  43. package/lib/types/dsh-adapter/compat/index.d.ts.map +1 -1
  44. package/lib/types/dsh-adapter/compat/index.js +5 -25
  45. package/lib/types/dsh-adapter/compat/liveSession.d.ts +12 -23
  46. package/lib/types/dsh-adapter/compat/liveSession.d.ts.map +1 -1
  47. package/lib/types/dsh-adapter/compat/liveSession.js +15 -68
  48. package/lib/types/dsh-adapter/compat/messages.d.ts +1 -3
  49. package/lib/types/dsh-adapter/compat/messages.d.ts.map +1 -1
  50. package/lib/types/dsh-adapter/compat/messages.js +2 -10
  51. package/lib/types/dsh-adapter/compat/persistence.d.ts +2 -3
  52. package/lib/types/dsh-adapter/compat/persistence.d.ts.map +1 -1
  53. package/lib/types/dsh-adapter/compat/persistence.js +9 -14
  54. package/lib/types/dsh-adapter/compat/sessionLog.d.ts +10 -144
  55. package/lib/types/dsh-adapter/compat/sessionLog.d.ts.map +1 -1
  56. package/lib/types/dsh-adapter/compat/sessionLog.js +45 -275
  57. package/lib/types/dsh-adapter/compat/settings.d.ts +4 -10
  58. package/lib/types/dsh-adapter/compat/settings.d.ts.map +1 -1
  59. package/lib/types/dsh-adapter/compat/settings.js +6 -23
  60. package/lib/types/dsh-adapter/compat/shell.d.ts +2 -3
  61. package/lib/types/dsh-adapter/compat/shell.d.ts.map +1 -1
  62. package/lib/types/dsh-adapter/compat/shell.js +2 -7
  63. package/lib/types/dsh-adapter/contract.d.ts +4 -34
  64. package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
  65. package/lib/types/dsh-adapter/contract.js +8 -83
  66. package/lib/types/dsh-adapter/packaged-presets.d.ts +0 -19
  67. package/lib/types/dsh-adapter/packaged-presets.d.ts.map +1 -1
  68. package/lib/types/dsh-adapter/packaged-presets.js +1 -83
  69. package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
  70. package/lib/types/dsh-adapter/plugin.js +25 -168
  71. package/lib/types/dsh-adapter/preset-resolution.d.ts +1 -22
  72. package/lib/types/dsh-adapter/preset-resolution.d.ts.map +1 -1
  73. package/lib/types/dsh-adapter/preset-resolution.js +0 -34
  74. package/lib/types/dsh-adapter/presets.d.ts +1 -4
  75. package/lib/types/dsh-adapter/presets.d.ts.map +1 -1
  76. package/lib/types/dsh-adapter/presets.js +3 -6
  77. package/lib/types/dsh-adapter/questions-answerer.d.ts +5 -43
  78. package/lib/types/dsh-adapter/questions-answerer.d.ts.map +1 -1
  79. package/lib/types/dsh-adapter/questions-answerer.js +7 -63
  80. package/lib/types/dsh-adapter/sessionTree.d.ts +0 -19
  81. package/lib/types/dsh-adapter/sessionTree.d.ts.map +1 -1
  82. package/lib/types/dsh-adapter/sessionTree.js +2 -112
  83. package/lib/types/dsh-adapter/sessions/header.d.ts +2 -2
  84. package/lib/types/dsh-adapter/sessions/header.d.ts.map +1 -1
  85. package/lib/types/dsh-adapter/sessions/header.js +2 -8
  86. package/lib/types/dsh-adapter/sessions/list.d.ts +7 -28
  87. package/lib/types/dsh-adapter/sessions/list.d.ts.map +1 -1
  88. package/lib/types/dsh-adapter/sessions/list.js +48 -103
  89. package/lib/types/dsh-adapter/sessions/store.d.ts +1 -2
  90. package/lib/types/dsh-adapter/sessions/store.d.ts.map +1 -1
  91. package/lib/types/dsh-adapter/sessions/store.js +7 -10
  92. package/lib/types/dsh-adapter/sharp.d.ts.map +1 -1
  93. package/lib/types/dsh-adapter/sharp.js +0 -1
  94. package/lib/types/dsh-adapter/subagents.d.ts +1 -2
  95. package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
  96. package/lib/types/dsh-adapter/subagents.js +1 -12
  97. package/lib/types/dsh-adapter/trajectory/aggregate.d.ts +1 -1
  98. package/lib/types/dsh-adapter/trajectory/aggregate.js +1 -1
  99. package/lib/types/dsh-adapter/trajectory/guards.d.ts +5 -22
  100. package/lib/types/dsh-adapter/trajectory/guards.d.ts.map +1 -1
  101. package/lib/types/dsh-adapter/trajectory/guards.js +5 -23
  102. package/lib/types/dsh-adapter/trajectory/projection.d.ts +5 -21
  103. package/lib/types/dsh-adapter/trajectory/projection.d.ts.map +1 -1
  104. package/lib/types/dsh-adapter/trajectory/projection.js +4 -38
  105. package/lib/types/dsh-adapter/trajectory/types.d.ts +1 -1
  106. package/lib/types/dsh-adapter/trajectory/types.d.ts.map +1 -1
  107. package/lib/types/i18n.d.ts +2 -22
  108. package/lib/types/i18n.d.ts.map +1 -1
  109. package/lib/types/i18n.js +2 -10
  110. package/lib/types/presetPrefs.d.ts +1 -3
  111. package/lib/types/presetPrefs.d.ts.map +1 -1
  112. package/lib/types/presetPrefs.js +2 -4
  113. package/node_modules/@askdkc/dsh-auth/README.ja.md +28 -9
  114. package/node_modules/@askdkc/dsh-auth/README.md +19 -8
  115. package/node_modules/@askdkc/dsh-auth/dsh-plugin.json +3 -3
  116. package/node_modules/@askdkc/dsh-auth/lib/THIRD_PARTY_NOTICES.txt +168 -0
  117. package/node_modules/@askdkc/dsh-auth/lib/abortable.d.ts +2 -0
  118. package/node_modules/@askdkc/dsh-auth/lib/abortable.js +9 -0
  119. package/node_modules/@askdkc/dsh-auth/lib/auth-contract.d.ts +66 -0
  120. package/node_modules/@askdkc/dsh-auth/lib/auth-contract.js +1 -0
  121. package/node_modules/@askdkc/dsh-auth/lib/command.js +15 -1
  122. package/node_modules/@askdkc/dsh-auth/lib/credentials.d.ts +8 -14
  123. package/node_modules/@askdkc/dsh-auth/lib/credentials.js +1 -1
  124. package/node_modules/@askdkc/dsh-auth/lib/index.d.ts +8 -28
  125. package/node_modules/@askdkc/dsh-auth/lib/index.js +67 -65
  126. package/node_modules/@askdkc/dsh-auth/lib/interaction.d.ts +5 -5
  127. package/node_modules/@askdkc/dsh-auth/lib/opencode-adapter.d.ts +37 -0
  128. package/node_modules/@askdkc/dsh-auth/lib/opencode-adapter.js +197 -0
  129. package/node_modules/@askdkc/dsh-auth/lib/opencode-catalog.d.ts +72 -0
  130. package/node_modules/@askdkc/dsh-auth/lib/opencode-catalog.js +252 -0
  131. package/node_modules/@askdkc/dsh-auth/lib/opencode-codec.d.ts +6 -0
  132. package/node_modules/@askdkc/dsh-auth/lib/opencode-codec.js +93 -0
  133. package/node_modules/@askdkc/dsh-auth/lib/opencode-owned.generated.d.ts +113 -0
  134. package/node_modules/@askdkc/dsh-auth/lib/opencode-owned.generated.js +2866 -0
  135. package/node_modules/@askdkc/dsh-auth/lib/opencode-replay.d.ts +15 -0
  136. package/node_modules/@askdkc/dsh-auth/lib/opencode-replay.js +141 -0
  137. package/node_modules/@askdkc/dsh-auth/lib/opencode-sdk.d.ts +5 -0
  138. package/node_modules/@askdkc/dsh-auth/lib/opencode-sdk.js +43465 -0
  139. package/node_modules/@askdkc/dsh-auth/lib/opencode-sdk.js.map +7 -0
  140. package/node_modules/@askdkc/dsh-auth/lib/opencode-transport.d.ts +5 -0
  141. package/node_modules/@askdkc/dsh-auth/lib/opencode-transport.js +69 -0
  142. package/node_modules/@askdkc/dsh-auth/lib/pi-routes.d.ts +32 -0
  143. package/node_modules/@askdkc/dsh-auth/lib/pi-routes.js +45 -0
  144. package/node_modules/@askdkc/dsh-auth/lib/profiles.d.ts +2 -20
  145. package/node_modules/@askdkc/dsh-auth/lib/profiles.js +6 -41
  146. package/node_modules/@askdkc/dsh-auth/lib/routes.d.ts +20 -0
  147. package/node_modules/@askdkc/dsh-auth/lib/routes.js +13 -0
  148. package/node_modules/@askdkc/dsh-auth/lib/service.d.ts +11 -2
  149. package/node_modules/@askdkc/dsh-auth/lib/service.js +26 -16
  150. package/node_modules/@askdkc/dsh-auth/package.json +26 -15
  151. package/package.json +100 -96
  152. package/lib/types/dsh-adapter/providerGuard.d.ts +0 -75
  153. package/lib/types/dsh-adapter/providerGuard.d.ts.map +0 -1
  154. package/lib/types/dsh-adapter/providerGuard.js +0 -104
  155. package/lib/types/migrationPrefs.d.ts +0 -60
  156. package/lib/types/migrationPrefs.d.ts.map +0 -1
  157. package/lib/types/migrationPrefs.js +0 -97
  158. package/node_modules/@askdkc/dsh-auth/lib/fresh-models.d.ts +0 -59
  159. package/node_modules/@askdkc/dsh-auth/lib/fresh-models.js +0 -246
  160. package/node_modules/@askdkc/dsh-auth/lib/opencode-snapshot.generated.d.ts +0 -321
  161. package/node_modules/@askdkc/dsh-auth/lib/opencode-snapshot.generated.js +0 -528
  162. package/presets/liangshen/.dsh-tui-managed.json +0 -5
@@ -0,0 +1,2866 @@
1
+ /** Generated from official rosters and exact-route models.dev metadata. */
2
+ export const OPEN_CODE_SNAPSHOTS = {
3
+ "opencode": {
4
+ "version": 1,
5
+ "provider": "opencode",
6
+ "fetchedAt": 1790827880774,
7
+ "roster": [
8
+ "big-pickle",
9
+ "claude-fable-5",
10
+ "claude-fable-5-1",
11
+ "claude-haiku-4-5",
12
+ "claude-opus-4-5",
13
+ "claude-opus-4-6",
14
+ "claude-opus-4-7",
15
+ "claude-opus-4-8",
16
+ "claude-opus-5",
17
+ "claude-opus-5-5",
18
+ "claude-sonnet-4",
19
+ "claude-sonnet-4-5",
20
+ "claude-sonnet-4-6",
21
+ "claude-sonnet-5",
22
+ "claude-sonnet-5-5",
23
+ "deepseek-v4-flash",
24
+ "deepseek-v4-flash-free",
25
+ "deepseek-v4-flash-vision-exp",
26
+ "deepseek-v4-pro",
27
+ "deepseek-v4.1-flash",
28
+ "gemini-3-flash",
29
+ "gemini-3.1-pro",
30
+ "gemini-3.5-flash",
31
+ "gemini-3.5-flash-lite",
32
+ "gemini-3.6-flash",
33
+ "gemini-3.7-flash",
34
+ "gemini-3.8-flash",
35
+ "glm-5",
36
+ "glm-5.1",
37
+ "glm-5.2",
38
+ "glm-5.3",
39
+ "glm-5.3-flash",
40
+ "gpt-5",
41
+ "gpt-5-codex",
42
+ "gpt-5-nano",
43
+ "gpt-5.1",
44
+ "gpt-5.1-codex",
45
+ "gpt-5.1-codex-max",
46
+ "gpt-5.1-codex-mini",
47
+ "gpt-5.2",
48
+ "gpt-5.2-codex",
49
+ "gpt-5.3-codex",
50
+ "gpt-5.3-codex-spark",
51
+ "gpt-5.4",
52
+ "gpt-5.4-mini",
53
+ "gpt-5.4-nano",
54
+ "gpt-5.4-pro",
55
+ "gpt-5.5",
56
+ "gpt-5.5-pro",
57
+ "gpt-5.6-luna",
58
+ "gpt-5.6-sol",
59
+ "gpt-5.6-terra",
60
+ "gpt-6-astra",
61
+ "gpt-6-luna",
62
+ "gpt-6-sol",
63
+ "gpt-6.1-sol",
64
+ "grok-4.5",
65
+ "grok-4.6",
66
+ "grok-4.7",
67
+ "grok-build-0.1",
68
+ "jev-1.13",
69
+ "jev-1.13-free",
70
+ "kimi-k2.5",
71
+ "kimi-k2.6",
72
+ "kimi-k2.7-code",
73
+ "kimi-k3",
74
+ "ling-3.0-flash-fin-free",
75
+ "longcat-2.5-preview-free",
76
+ "mimo-v2.5-free",
77
+ "mimo-v2.6-flash-free",
78
+ "minimax-m2.5",
79
+ "minimax-m2.7",
80
+ "minimax-m3",
81
+ "muse-spark-1.2",
82
+ "muse-spark-1.2-contributor-free",
83
+ "muse-spark-1.3",
84
+ "muse-spark-1.3-contributor-free",
85
+ "nemotron-3-ultra-free",
86
+ "nemotron-3.5-lightning-free",
87
+ "qwen3.5-plus",
88
+ "qwen3.6-plus",
89
+ "qwen3.8-flash",
90
+ "qwen3.8-max",
91
+ "space-bunny-free"
92
+ ],
93
+ "models": [
94
+ {
95
+ "id": "big-pickle",
96
+ "name": "Big Pickle",
97
+ "protocol": "chat",
98
+ "contextWindow": 200000,
99
+ "maxTokens": 32000,
100
+ "inputModalities": [
101
+ "text"
102
+ ],
103
+ "toolCall": true,
104
+ "reasoning": true,
105
+ "temperature": true,
106
+ "efforts": [],
107
+ "cost": {
108
+ "input": 0,
109
+ "output": 0,
110
+ "cache_read": 0,
111
+ "cache_write": 0
112
+ }
113
+ },
114
+ {
115
+ "id": "claude-fable-5",
116
+ "name": "Claude Fable 5",
117
+ "protocol": "messages",
118
+ "contextWindow": 1000000,
119
+ "maxTokens": 128000,
120
+ "inputModalities": [
121
+ "text",
122
+ "image"
123
+ ],
124
+ "toolCall": true,
125
+ "reasoning": true,
126
+ "temperature": false,
127
+ "efforts": [
128
+ "low",
129
+ "medium",
130
+ "high",
131
+ "xhigh",
132
+ "max"
133
+ ],
134
+ "cost": {
135
+ "input": 10,
136
+ "output": 50,
137
+ "cache_read": 1,
138
+ "cache_write": 12.5
139
+ }
140
+ },
141
+ {
142
+ "id": "claude-fable-5-1",
143
+ "name": "Claude Fable 5.1",
144
+ "protocol": "messages",
145
+ "contextWindow": 1000000,
146
+ "maxTokens": 128000,
147
+ "inputModalities": [
148
+ "text",
149
+ "image"
150
+ ],
151
+ "toolCall": true,
152
+ "reasoning": true,
153
+ "temperature": false,
154
+ "efforts": [
155
+ "low",
156
+ "medium",
157
+ "high",
158
+ "xhigh",
159
+ "max"
160
+ ],
161
+ "cost": {
162
+ "input": 10,
163
+ "output": 50,
164
+ "cache_read": 0.25,
165
+ "cache_write": 12.5
166
+ }
167
+ },
168
+ {
169
+ "id": "claude-haiku-4-5",
170
+ "name": "Claude Haiku 4.5",
171
+ "protocol": "messages",
172
+ "contextWindow": 200000,
173
+ "maxTokens": 64000,
174
+ "inputModalities": [
175
+ "text",
176
+ "image"
177
+ ],
178
+ "toolCall": true,
179
+ "reasoning": true,
180
+ "temperature": true,
181
+ "efforts": [],
182
+ "cost": {
183
+ "input": 1,
184
+ "output": 5,
185
+ "cache_read": 0.1,
186
+ "cache_write": 1.25
187
+ }
188
+ },
189
+ {
190
+ "id": "claude-opus-4-5",
191
+ "name": "Claude Opus 4.5",
192
+ "protocol": "messages",
193
+ "contextWindow": 200000,
194
+ "maxTokens": 64000,
195
+ "inputModalities": [
196
+ "text",
197
+ "image"
198
+ ],
199
+ "toolCall": true,
200
+ "reasoning": true,
201
+ "temperature": true,
202
+ "efforts": [
203
+ "low",
204
+ "medium",
205
+ "high"
206
+ ],
207
+ "cost": {
208
+ "input": 5,
209
+ "output": 25,
210
+ "cache_read": 0.5,
211
+ "cache_write": 6.25
212
+ }
213
+ },
214
+ {
215
+ "id": "claude-opus-4-6",
216
+ "name": "Claude Opus 4.6",
217
+ "protocol": "messages",
218
+ "contextWindow": 1000000,
219
+ "maxTokens": 128000,
220
+ "inputModalities": [
221
+ "text",
222
+ "image"
223
+ ],
224
+ "toolCall": true,
225
+ "reasoning": true,
226
+ "temperature": true,
227
+ "efforts": [
228
+ "low",
229
+ "medium",
230
+ "high",
231
+ "max"
232
+ ],
233
+ "cost": {
234
+ "input": 5,
235
+ "output": 25,
236
+ "cache_read": 0.5,
237
+ "cache_write": 6.25
238
+ }
239
+ },
240
+ {
241
+ "id": "claude-opus-4-7",
242
+ "name": "Claude Opus 4.7",
243
+ "protocol": "messages",
244
+ "contextWindow": 1000000,
245
+ "maxTokens": 128000,
246
+ "inputModalities": [
247
+ "text",
248
+ "image"
249
+ ],
250
+ "toolCall": true,
251
+ "reasoning": true,
252
+ "temperature": false,
253
+ "efforts": [
254
+ "low",
255
+ "medium",
256
+ "high",
257
+ "xhigh",
258
+ "max"
259
+ ],
260
+ "cost": {
261
+ "input": 5,
262
+ "output": 25,
263
+ "cache_read": 0.5,
264
+ "cache_write": 6.25
265
+ }
266
+ },
267
+ {
268
+ "id": "claude-opus-4-8",
269
+ "name": "Claude Opus 4.8",
270
+ "protocol": "messages",
271
+ "contextWindow": 1000000,
272
+ "maxTokens": 128000,
273
+ "inputModalities": [
274
+ "text",
275
+ "image"
276
+ ],
277
+ "toolCall": true,
278
+ "reasoning": true,
279
+ "temperature": false,
280
+ "efforts": [
281
+ "low",
282
+ "medium",
283
+ "high",
284
+ "xhigh",
285
+ "max"
286
+ ],
287
+ "cost": {
288
+ "input": 5,
289
+ "output": 25,
290
+ "cache_read": 0.5,
291
+ "cache_write": 6.25
292
+ }
293
+ },
294
+ {
295
+ "id": "claude-opus-5",
296
+ "name": "Claude Opus 5",
297
+ "protocol": "messages",
298
+ "contextWindow": 1000000,
299
+ "maxTokens": 128000,
300
+ "inputModalities": [
301
+ "text",
302
+ "image"
303
+ ],
304
+ "toolCall": true,
305
+ "reasoning": true,
306
+ "temperature": false,
307
+ "efforts": [
308
+ "low",
309
+ "medium",
310
+ "high",
311
+ "xhigh",
312
+ "max"
313
+ ],
314
+ "cost": {
315
+ "input": 5,
316
+ "output": 25,
317
+ "cache_read": 0.5,
318
+ "cache_write": 6.25
319
+ }
320
+ },
321
+ {
322
+ "id": "claude-opus-5-5",
323
+ "name": "Claude Opus 5.5",
324
+ "protocol": "messages",
325
+ "contextWindow": 1000000,
326
+ "maxTokens": 128000,
327
+ "inputModalities": [
328
+ "text",
329
+ "image"
330
+ ],
331
+ "toolCall": true,
332
+ "reasoning": true,
333
+ "temperature": false,
334
+ "efforts": [
335
+ "low",
336
+ "medium",
337
+ "high",
338
+ "xhigh",
339
+ "max"
340
+ ],
341
+ "cost": {
342
+ "input": 4,
343
+ "output": 20,
344
+ "cache_read": 0.2,
345
+ "cache_write": 5
346
+ }
347
+ },
348
+ {
349
+ "id": "claude-sonnet-4",
350
+ "name": "Claude Sonnet 4",
351
+ "protocol": "messages",
352
+ "contextWindow": 1000000,
353
+ "maxTokens": 64000,
354
+ "inputModalities": [
355
+ "text",
356
+ "image"
357
+ ],
358
+ "toolCall": true,
359
+ "reasoning": true,
360
+ "temperature": true,
361
+ "efforts": [],
362
+ "cost": {
363
+ "input": 3,
364
+ "output": 15,
365
+ "cache_read": 0.3,
366
+ "cache_write": 3.75
367
+ }
368
+ },
369
+ {
370
+ "id": "claude-sonnet-4-5",
371
+ "name": "Claude Sonnet 4.5",
372
+ "protocol": "messages",
373
+ "contextWindow": 1000000,
374
+ "maxTokens": 64000,
375
+ "inputModalities": [
376
+ "text",
377
+ "image"
378
+ ],
379
+ "toolCall": true,
380
+ "reasoning": true,
381
+ "temperature": true,
382
+ "efforts": [],
383
+ "cost": {
384
+ "input": 3,
385
+ "output": 15,
386
+ "cache_read": 0.3,
387
+ "cache_write": 3.75
388
+ }
389
+ },
390
+ {
391
+ "id": "claude-sonnet-4-6",
392
+ "name": "Claude Sonnet 4.6",
393
+ "protocol": "messages",
394
+ "contextWindow": 1000000,
395
+ "maxTokens": 64000,
396
+ "inputModalities": [
397
+ "text",
398
+ "image"
399
+ ],
400
+ "toolCall": true,
401
+ "reasoning": true,
402
+ "temperature": true,
403
+ "efforts": [
404
+ "low",
405
+ "medium",
406
+ "high",
407
+ "max"
408
+ ],
409
+ "cost": {
410
+ "input": 3,
411
+ "output": 15,
412
+ "cache_read": 0.3,
413
+ "cache_write": 3.75
414
+ }
415
+ },
416
+ {
417
+ "id": "claude-sonnet-5",
418
+ "name": "Claude Sonnet 5",
419
+ "protocol": "messages",
420
+ "contextWindow": 1000000,
421
+ "maxTokens": 128000,
422
+ "inputModalities": [
423
+ "text",
424
+ "image"
425
+ ],
426
+ "toolCall": true,
427
+ "reasoning": true,
428
+ "temperature": false,
429
+ "efforts": [
430
+ "low",
431
+ "medium",
432
+ "high",
433
+ "xhigh",
434
+ "max"
435
+ ],
436
+ "cost": {
437
+ "input": 2,
438
+ "output": 10,
439
+ "cache_read": 0.2,
440
+ "cache_write": 2.5
441
+ }
442
+ },
443
+ {
444
+ "id": "claude-sonnet-5-5",
445
+ "name": "Claude Sonnet 5.5",
446
+ "protocol": "messages",
447
+ "contextWindow": 1000000,
448
+ "maxTokens": 128000,
449
+ "inputModalities": [
450
+ "text",
451
+ "image"
452
+ ],
453
+ "toolCall": true,
454
+ "reasoning": true,
455
+ "temperature": false,
456
+ "efforts": [
457
+ "low",
458
+ "medium",
459
+ "high",
460
+ "xhigh",
461
+ "max"
462
+ ],
463
+ "cost": {
464
+ "input": 2,
465
+ "output": 10,
466
+ "cache_read": 0.2,
467
+ "cache_write": 2.5
468
+ }
469
+ },
470
+ {
471
+ "id": "deepseek-v4-flash",
472
+ "name": "DeepSeek V4 Flash",
473
+ "protocol": "chat",
474
+ "contextWindow": 1000000,
475
+ "maxTokens": 384000,
476
+ "inputModalities": [
477
+ "text"
478
+ ],
479
+ "toolCall": true,
480
+ "reasoning": true,
481
+ "temperature": true,
482
+ "efforts": [
483
+ "low",
484
+ "high",
485
+ "max"
486
+ ],
487
+ "cost": {
488
+ "input": 0.14,
489
+ "output": 0.28,
490
+ "cache_read": 0.028
491
+ }
492
+ },
493
+ {
494
+ "id": "deepseek-v4-flash-free",
495
+ "name": "DeepSeek V4 Flash Free",
496
+ "protocol": "chat",
497
+ "contextWindow": 200000,
498
+ "maxTokens": 128000,
499
+ "inputModalities": [
500
+ "text"
501
+ ],
502
+ "toolCall": true,
503
+ "reasoning": true,
504
+ "temperature": true,
505
+ "efforts": [
506
+ "low",
507
+ "high",
508
+ "max"
509
+ ],
510
+ "cost": {
511
+ "input": 0,
512
+ "output": 0,
513
+ "cache_read": 0
514
+ }
515
+ },
516
+ {
517
+ "id": "deepseek-v4-flash-vision-exp",
518
+ "name": "DeepSeek V4 Flash Vision Exp",
519
+ "protocol": "chat",
520
+ "contextWindow": 1000000,
521
+ "maxTokens": 384000,
522
+ "inputModalities": [
523
+ "text",
524
+ "image"
525
+ ],
526
+ "toolCall": true,
527
+ "reasoning": true,
528
+ "temperature": true,
529
+ "efforts": [
530
+ "low",
531
+ "high",
532
+ "max"
533
+ ],
534
+ "cost": {
535
+ "input": 0.14,
536
+ "output": 0.28,
537
+ "cache_read": 0.028
538
+ }
539
+ },
540
+ {
541
+ "id": "deepseek-v4-pro",
542
+ "name": "DeepSeek V4 Pro",
543
+ "protocol": "chat",
544
+ "contextWindow": 1000000,
545
+ "maxTokens": 384000,
546
+ "inputModalities": [
547
+ "text"
548
+ ],
549
+ "toolCall": true,
550
+ "reasoning": true,
551
+ "temperature": true,
552
+ "efforts": [
553
+ "high",
554
+ "max"
555
+ ],
556
+ "cost": {
557
+ "input": 1.74,
558
+ "output": 3.84,
559
+ "cache_read": 0.145
560
+ }
561
+ },
562
+ {
563
+ "id": "deepseek-v4.1-flash",
564
+ "name": "DeepSeek V4.1 Flash",
565
+ "protocol": "chat",
566
+ "contextWindow": 1000000,
567
+ "maxTokens": 384000,
568
+ "inputModalities": [
569
+ "text",
570
+ "image"
571
+ ],
572
+ "toolCall": true,
573
+ "reasoning": true,
574
+ "temperature": true,
575
+ "efforts": [
576
+ "low",
577
+ "high",
578
+ "max"
579
+ ],
580
+ "cost": {
581
+ "input": 0.3,
582
+ "output": 1.2,
583
+ "cache_read": 0.006
584
+ }
585
+ },
586
+ {
587
+ "id": "gemini-3-flash",
588
+ "name": "Gemini 3 Flash",
589
+ "protocol": "google",
590
+ "contextWindow": 1048576,
591
+ "maxTokens": 65536,
592
+ "inputModalities": [
593
+ "text",
594
+ "image"
595
+ ],
596
+ "toolCall": true,
597
+ "reasoning": true,
598
+ "temperature": true,
599
+ "efforts": [
600
+ "minimal",
601
+ "low",
602
+ "medium",
603
+ "high"
604
+ ],
605
+ "cost": {
606
+ "input": 0.5,
607
+ "output": 3,
608
+ "cache_read": 0.05
609
+ }
610
+ },
611
+ {
612
+ "id": "gemini-3.1-pro",
613
+ "name": "Gemini 3.1 Pro Preview",
614
+ "protocol": "google",
615
+ "contextWindow": 1048576,
616
+ "maxTokens": 65536,
617
+ "inputModalities": [
618
+ "text",
619
+ "image"
620
+ ],
621
+ "toolCall": true,
622
+ "reasoning": true,
623
+ "temperature": true,
624
+ "efforts": [
625
+ "low",
626
+ "medium",
627
+ "high"
628
+ ],
629
+ "cost": {
630
+ "input": 2,
631
+ "output": 12,
632
+ "cache_read": 0.2
633
+ }
634
+ },
635
+ {
636
+ "id": "gemini-3.5-flash",
637
+ "name": "Gemini 3.5 Flash",
638
+ "protocol": "google",
639
+ "contextWindow": 1048576,
640
+ "maxTokens": 65536,
641
+ "inputModalities": [
642
+ "text",
643
+ "image"
644
+ ],
645
+ "toolCall": true,
646
+ "reasoning": true,
647
+ "temperature": true,
648
+ "efforts": [
649
+ "minimal",
650
+ "low",
651
+ "medium",
652
+ "high"
653
+ ],
654
+ "cost": {
655
+ "input": 1.5,
656
+ "output": 9,
657
+ "cache_read": 0.15,
658
+ "input_audio": 1.5
659
+ }
660
+ },
661
+ {
662
+ "id": "gemini-3.5-flash-lite",
663
+ "name": "Gemini 3.5 Flash Lite",
664
+ "protocol": "google",
665
+ "contextWindow": 1048576,
666
+ "maxTokens": 65536,
667
+ "inputModalities": [
668
+ "text",
669
+ "image"
670
+ ],
671
+ "toolCall": true,
672
+ "reasoning": true,
673
+ "temperature": true,
674
+ "efforts": [
675
+ "minimal",
676
+ "low",
677
+ "medium",
678
+ "high"
679
+ ],
680
+ "cost": {
681
+ "input": 0.3,
682
+ "output": 2.5,
683
+ "cache_read": 0.03
684
+ }
685
+ },
686
+ {
687
+ "id": "gemini-3.6-flash",
688
+ "name": "Gemini 3.6 Flash",
689
+ "protocol": "google",
690
+ "contextWindow": 1048576,
691
+ "maxTokens": 65536,
692
+ "inputModalities": [
693
+ "text",
694
+ "image"
695
+ ],
696
+ "toolCall": true,
697
+ "reasoning": true,
698
+ "temperature": true,
699
+ "efforts": [
700
+ "minimal",
701
+ "low",
702
+ "medium",
703
+ "high"
704
+ ],
705
+ "cost": {
706
+ "input": 1.5,
707
+ "output": 7.5,
708
+ "cache_read": 0.15,
709
+ "input_audio": 1.5
710
+ }
711
+ },
712
+ {
713
+ "id": "gemini-3.7-flash",
714
+ "name": "Gemini 3.7 Flash",
715
+ "protocol": "google",
716
+ "contextWindow": 1048576,
717
+ "maxTokens": 65536,
718
+ "inputModalities": [
719
+ "text",
720
+ "image"
721
+ ],
722
+ "toolCall": true,
723
+ "reasoning": true,
724
+ "temperature": true,
725
+ "efforts": [
726
+ "low",
727
+ "medium",
728
+ "high"
729
+ ],
730
+ "cost": {
731
+ "input": 1.5,
732
+ "output": 7.5,
733
+ "cache_read": 0.15,
734
+ "input_audio": 1.5
735
+ }
736
+ },
737
+ {
738
+ "id": "gemini-3.8-flash",
739
+ "name": "Gemini 3.8 Flash",
740
+ "protocol": "google",
741
+ "contextWindow": 1048576,
742
+ "maxTokens": 65536,
743
+ "inputModalities": [
744
+ "text",
745
+ "image"
746
+ ],
747
+ "toolCall": true,
748
+ "reasoning": true,
749
+ "temperature": true,
750
+ "efforts": [
751
+ "low",
752
+ "medium",
753
+ "high"
754
+ ],
755
+ "cost": {
756
+ "input": 1.5,
757
+ "output": 7.5,
758
+ "cache_read": 0.15,
759
+ "input_audio": 1.5
760
+ }
761
+ },
762
+ {
763
+ "id": "glm-5",
764
+ "name": "GLM-5",
765
+ "protocol": "chat",
766
+ "contextWindow": 204800,
767
+ "maxTokens": 131072,
768
+ "inputModalities": [
769
+ "text"
770
+ ],
771
+ "toolCall": true,
772
+ "reasoning": true,
773
+ "temperature": true,
774
+ "efforts": [],
775
+ "cost": {
776
+ "input": 1,
777
+ "output": 3.2,
778
+ "cache_read": 0.2
779
+ }
780
+ },
781
+ {
782
+ "id": "glm-5.1",
783
+ "name": "GLM-5.1",
784
+ "protocol": "chat",
785
+ "contextWindow": 204800,
786
+ "maxTokens": 131072,
787
+ "inputModalities": [
788
+ "text"
789
+ ],
790
+ "toolCall": true,
791
+ "reasoning": true,
792
+ "temperature": true,
793
+ "efforts": [],
794
+ "cost": {
795
+ "input": 1.4,
796
+ "output": 4.4,
797
+ "cache_read": 0.26
798
+ }
799
+ },
800
+ {
801
+ "id": "glm-5.2",
802
+ "name": "GLM-5.2",
803
+ "protocol": "chat",
804
+ "contextWindow": 1000000,
805
+ "maxTokens": 131072,
806
+ "inputModalities": [
807
+ "text"
808
+ ],
809
+ "toolCall": true,
810
+ "reasoning": true,
811
+ "temperature": true,
812
+ "efforts": [
813
+ "high",
814
+ "max"
815
+ ],
816
+ "cost": {
817
+ "input": 1.4,
818
+ "output": 4.4,
819
+ "cache_read": 0.26
820
+ }
821
+ },
822
+ {
823
+ "id": "glm-5.3",
824
+ "name": "GLM-5.3",
825
+ "protocol": "chat",
826
+ "contextWindow": 1000000,
827
+ "maxTokens": 131072,
828
+ "inputModalities": [
829
+ "text"
830
+ ],
831
+ "toolCall": true,
832
+ "reasoning": true,
833
+ "temperature": true,
834
+ "efforts": [
835
+ "low",
836
+ "high",
837
+ "max"
838
+ ],
839
+ "cost": {
840
+ "input": 1.4,
841
+ "output": 4.4,
842
+ "cache_read": 0.26
843
+ }
844
+ },
845
+ {
846
+ "id": "glm-5.3-flash",
847
+ "name": "GLM-5.3-Flash",
848
+ "protocol": "chat",
849
+ "contextWindow": 1000000,
850
+ "maxTokens": 131072,
851
+ "inputModalities": [
852
+ "text",
853
+ "image"
854
+ ],
855
+ "toolCall": true,
856
+ "reasoning": true,
857
+ "temperature": true,
858
+ "efforts": [
859
+ "low",
860
+ "high",
861
+ "max"
862
+ ],
863
+ "cost": {
864
+ "input": 0.15,
865
+ "output": 0.5,
866
+ "cache_read": 0.03
867
+ }
868
+ },
869
+ {
870
+ "id": "gpt-5",
871
+ "name": "GPT-5",
872
+ "protocol": "responses",
873
+ "contextWindow": 400000,
874
+ "maxTokens": 128000,
875
+ "inputModalities": [
876
+ "text",
877
+ "image"
878
+ ],
879
+ "toolCall": true,
880
+ "reasoning": true,
881
+ "temperature": false,
882
+ "efforts": [
883
+ "minimal",
884
+ "low",
885
+ "medium",
886
+ "high"
887
+ ],
888
+ "cost": {
889
+ "input": 1.07,
890
+ "output": 8.5,
891
+ "cache_read": 0.107
892
+ }
893
+ },
894
+ {
895
+ "id": "gpt-5-codex",
896
+ "name": "GPT-5 Codex",
897
+ "protocol": "responses",
898
+ "contextWindow": 400000,
899
+ "maxTokens": 128000,
900
+ "inputModalities": [
901
+ "text",
902
+ "image"
903
+ ],
904
+ "toolCall": true,
905
+ "reasoning": true,
906
+ "temperature": false,
907
+ "efforts": [
908
+ "low",
909
+ "medium",
910
+ "high"
911
+ ],
912
+ "cost": {
913
+ "input": 1.07,
914
+ "output": 8.5,
915
+ "cache_read": 0.107
916
+ }
917
+ },
918
+ {
919
+ "id": "gpt-5-nano",
920
+ "name": "GPT-5 Nano",
921
+ "protocol": "responses",
922
+ "contextWindow": 400000,
923
+ "maxTokens": 128000,
924
+ "inputModalities": [
925
+ "text",
926
+ "image"
927
+ ],
928
+ "toolCall": true,
929
+ "reasoning": true,
930
+ "temperature": false,
931
+ "efforts": [
932
+ "minimal",
933
+ "low",
934
+ "medium",
935
+ "high"
936
+ ],
937
+ "cost": {
938
+ "input": 0.05,
939
+ "output": 0.4,
940
+ "cache_read": 0.005
941
+ }
942
+ },
943
+ {
944
+ "id": "gpt-5.1",
945
+ "name": "GPT-5.1",
946
+ "protocol": "responses",
947
+ "contextWindow": 400000,
948
+ "maxTokens": 128000,
949
+ "inputModalities": [
950
+ "text",
951
+ "image"
952
+ ],
953
+ "toolCall": true,
954
+ "reasoning": true,
955
+ "temperature": false,
956
+ "efforts": [
957
+ "none",
958
+ "low",
959
+ "medium",
960
+ "high"
961
+ ],
962
+ "cost": {
963
+ "input": 1.07,
964
+ "output": 8.5,
965
+ "cache_read": 0.107
966
+ }
967
+ },
968
+ {
969
+ "id": "gpt-5.1-codex",
970
+ "name": "GPT-5.1 Codex",
971
+ "protocol": "responses",
972
+ "contextWindow": 400000,
973
+ "maxTokens": 128000,
974
+ "inputModalities": [
975
+ "text",
976
+ "image"
977
+ ],
978
+ "toolCall": true,
979
+ "reasoning": true,
980
+ "temperature": false,
981
+ "efforts": [
982
+ "low",
983
+ "medium",
984
+ "high"
985
+ ],
986
+ "cost": {
987
+ "input": 1.07,
988
+ "output": 8.5,
989
+ "cache_read": 0.107
990
+ }
991
+ },
992
+ {
993
+ "id": "gpt-5.1-codex-max",
994
+ "name": "GPT-5.1 Codex Max",
995
+ "protocol": "responses",
996
+ "contextWindow": 400000,
997
+ "maxTokens": 128000,
998
+ "inputModalities": [
999
+ "text",
1000
+ "image"
1001
+ ],
1002
+ "toolCall": true,
1003
+ "reasoning": true,
1004
+ "temperature": false,
1005
+ "efforts": [
1006
+ "low",
1007
+ "medium",
1008
+ "high",
1009
+ "xhigh"
1010
+ ],
1011
+ "cost": {
1012
+ "input": 1.25,
1013
+ "output": 10,
1014
+ "cache_read": 0.125
1015
+ }
1016
+ },
1017
+ {
1018
+ "id": "gpt-5.1-codex-mini",
1019
+ "name": "GPT-5.1 Codex Mini",
1020
+ "protocol": "responses",
1021
+ "contextWindow": 400000,
1022
+ "maxTokens": 128000,
1023
+ "inputModalities": [
1024
+ "text",
1025
+ "image"
1026
+ ],
1027
+ "toolCall": true,
1028
+ "reasoning": true,
1029
+ "temperature": false,
1030
+ "efforts": [
1031
+ "low",
1032
+ "medium",
1033
+ "high"
1034
+ ],
1035
+ "cost": {
1036
+ "input": 0.25,
1037
+ "output": 2,
1038
+ "cache_read": 0.025
1039
+ }
1040
+ },
1041
+ {
1042
+ "id": "gpt-5.2",
1043
+ "name": "GPT-5.2",
1044
+ "protocol": "responses",
1045
+ "contextWindow": 400000,
1046
+ "maxTokens": 128000,
1047
+ "inputModalities": [
1048
+ "text",
1049
+ "image"
1050
+ ],
1051
+ "toolCall": true,
1052
+ "reasoning": true,
1053
+ "temperature": false,
1054
+ "efforts": [
1055
+ "none",
1056
+ "low",
1057
+ "medium",
1058
+ "high",
1059
+ "xhigh"
1060
+ ],
1061
+ "cost": {
1062
+ "input": 1.75,
1063
+ "output": 14,
1064
+ "cache_read": 0.175
1065
+ }
1066
+ },
1067
+ {
1068
+ "id": "gpt-5.2-codex",
1069
+ "name": "GPT-5.2 Codex",
1070
+ "protocol": "responses",
1071
+ "contextWindow": 400000,
1072
+ "maxTokens": 128000,
1073
+ "inputModalities": [
1074
+ "text",
1075
+ "image"
1076
+ ],
1077
+ "toolCall": true,
1078
+ "reasoning": true,
1079
+ "temperature": false,
1080
+ "efforts": [
1081
+ "low",
1082
+ "medium",
1083
+ "high",
1084
+ "xhigh"
1085
+ ],
1086
+ "cost": {
1087
+ "input": 1.75,
1088
+ "output": 14,
1089
+ "cache_read": 0.175
1090
+ }
1091
+ },
1092
+ {
1093
+ "id": "gpt-5.3-codex",
1094
+ "name": "GPT-5.3 Codex",
1095
+ "protocol": "responses",
1096
+ "contextWindow": 400000,
1097
+ "maxTokens": 128000,
1098
+ "inputModalities": [
1099
+ "text",
1100
+ "image"
1101
+ ],
1102
+ "toolCall": true,
1103
+ "reasoning": true,
1104
+ "temperature": false,
1105
+ "efforts": [
1106
+ "none",
1107
+ "low",
1108
+ "medium",
1109
+ "high",
1110
+ "xhigh"
1111
+ ],
1112
+ "cost": {
1113
+ "input": 1.75,
1114
+ "output": 14,
1115
+ "cache_read": 0.175
1116
+ }
1117
+ },
1118
+ {
1119
+ "id": "gpt-5.3-codex-spark",
1120
+ "name": "GPT-5.3 Codex Spark",
1121
+ "protocol": "responses",
1122
+ "contextWindow": 128000,
1123
+ "maxTokens": 128000,
1124
+ "inputModalities": [
1125
+ "text"
1126
+ ],
1127
+ "toolCall": true,
1128
+ "reasoning": true,
1129
+ "temperature": false,
1130
+ "efforts": [
1131
+ "low",
1132
+ "medium",
1133
+ "high",
1134
+ "xhigh"
1135
+ ],
1136
+ "cost": {
1137
+ "input": 1.75,
1138
+ "output": 14,
1139
+ "cache_read": 0.175
1140
+ }
1141
+ },
1142
+ {
1143
+ "id": "gpt-5.4",
1144
+ "name": "GPT-5.4",
1145
+ "protocol": "responses",
1146
+ "contextWindow": 1050000,
1147
+ "maxTokens": 128000,
1148
+ "inputModalities": [
1149
+ "text",
1150
+ "image"
1151
+ ],
1152
+ "toolCall": true,
1153
+ "reasoning": true,
1154
+ "temperature": true,
1155
+ "efforts": [
1156
+ "none",
1157
+ "low",
1158
+ "medium",
1159
+ "high",
1160
+ "xhigh"
1161
+ ],
1162
+ "cost": {
1163
+ "input": 2.5,
1164
+ "output": 15,
1165
+ "cache_read": 0.25
1166
+ }
1167
+ },
1168
+ {
1169
+ "id": "gpt-5.4-mini",
1170
+ "name": "GPT-5.4 Mini",
1171
+ "protocol": "responses",
1172
+ "contextWindow": 400000,
1173
+ "maxTokens": 128000,
1174
+ "inputModalities": [
1175
+ "text",
1176
+ "image"
1177
+ ],
1178
+ "toolCall": true,
1179
+ "reasoning": true,
1180
+ "temperature": false,
1181
+ "efforts": [
1182
+ "none",
1183
+ "low",
1184
+ "medium",
1185
+ "high",
1186
+ "xhigh"
1187
+ ],
1188
+ "cost": {
1189
+ "input": 0.75,
1190
+ "output": 4.5,
1191
+ "cache_read": 0.075
1192
+ }
1193
+ },
1194
+ {
1195
+ "id": "gpt-5.4-nano",
1196
+ "name": "GPT-5.4 Nano",
1197
+ "protocol": "responses",
1198
+ "contextWindow": 400000,
1199
+ "maxTokens": 128000,
1200
+ "inputModalities": [
1201
+ "text",
1202
+ "image"
1203
+ ],
1204
+ "toolCall": true,
1205
+ "reasoning": true,
1206
+ "temperature": false,
1207
+ "efforts": [
1208
+ "none",
1209
+ "low",
1210
+ "medium",
1211
+ "high",
1212
+ "xhigh"
1213
+ ],
1214
+ "cost": {
1215
+ "input": 0.2,
1216
+ "output": 1.25,
1217
+ "cache_read": 0.02
1218
+ }
1219
+ },
1220
+ {
1221
+ "id": "gpt-5.4-pro",
1222
+ "name": "GPT-5.4 Pro",
1223
+ "protocol": "responses",
1224
+ "contextWindow": 1050000,
1225
+ "maxTokens": 128000,
1226
+ "inputModalities": [
1227
+ "text",
1228
+ "image"
1229
+ ],
1230
+ "toolCall": true,
1231
+ "reasoning": true,
1232
+ "temperature": false,
1233
+ "efforts": [
1234
+ "medium",
1235
+ "high",
1236
+ "xhigh"
1237
+ ],
1238
+ "cost": {
1239
+ "input": 30,
1240
+ "output": 180,
1241
+ "cache_read": 30
1242
+ }
1243
+ },
1244
+ {
1245
+ "id": "gpt-5.5",
1246
+ "name": "GPT-5.5",
1247
+ "protocol": "responses",
1248
+ "contextWindow": 1050000,
1249
+ "maxTokens": 128000,
1250
+ "inputModalities": [
1251
+ "text",
1252
+ "image"
1253
+ ],
1254
+ "toolCall": true,
1255
+ "reasoning": true,
1256
+ "temperature": false,
1257
+ "efforts": [
1258
+ "none",
1259
+ "low",
1260
+ "medium",
1261
+ "high",
1262
+ "xhigh"
1263
+ ],
1264
+ "cost": {
1265
+ "input": 5,
1266
+ "output": 30,
1267
+ "cache_read": 0.5
1268
+ }
1269
+ },
1270
+ {
1271
+ "id": "gpt-5.5-pro",
1272
+ "name": "GPT-5.5 Pro",
1273
+ "protocol": "responses",
1274
+ "contextWindow": 1050000,
1275
+ "maxTokens": 128000,
1276
+ "inputModalities": [
1277
+ "text",
1278
+ "image"
1279
+ ],
1280
+ "toolCall": true,
1281
+ "reasoning": true,
1282
+ "temperature": false,
1283
+ "efforts": [
1284
+ "medium",
1285
+ "high",
1286
+ "xhigh"
1287
+ ],
1288
+ "cost": {
1289
+ "input": 30,
1290
+ "output": 180,
1291
+ "cache_read": 30
1292
+ }
1293
+ },
1294
+ {
1295
+ "id": "gpt-5.6-luna",
1296
+ "name": "GPT-5.6 Luna",
1297
+ "protocol": "responses",
1298
+ "contextWindow": 1050000,
1299
+ "maxTokens": 128000,
1300
+ "inputModalities": [
1301
+ "text",
1302
+ "image"
1303
+ ],
1304
+ "toolCall": true,
1305
+ "reasoning": true,
1306
+ "temperature": false,
1307
+ "efforts": [
1308
+ "none",
1309
+ "low",
1310
+ "medium",
1311
+ "high",
1312
+ "xhigh",
1313
+ "max"
1314
+ ],
1315
+ "cost": {
1316
+ "input": 0.2,
1317
+ "output": 1.2,
1318
+ "cache_read": 0.02,
1319
+ "cache_write": 0.25
1320
+ }
1321
+ },
1322
+ {
1323
+ "id": "gpt-5.6-sol",
1324
+ "name": "GPT-5.6 Sol",
1325
+ "protocol": "responses",
1326
+ "contextWindow": 1050000,
1327
+ "maxTokens": 128000,
1328
+ "inputModalities": [
1329
+ "text",
1330
+ "image"
1331
+ ],
1332
+ "toolCall": true,
1333
+ "reasoning": true,
1334
+ "temperature": false,
1335
+ "efforts": [
1336
+ "none",
1337
+ "low",
1338
+ "medium",
1339
+ "high",
1340
+ "xhigh",
1341
+ "max"
1342
+ ],
1343
+ "cost": {
1344
+ "input": 4,
1345
+ "output": 20,
1346
+ "cache_read": 0.4,
1347
+ "cache_write": 5
1348
+ }
1349
+ },
1350
+ {
1351
+ "id": "gpt-5.6-terra",
1352
+ "name": "GPT-5.6 Terra",
1353
+ "protocol": "responses",
1354
+ "contextWindow": 1050000,
1355
+ "maxTokens": 128000,
1356
+ "inputModalities": [
1357
+ "text",
1358
+ "image"
1359
+ ],
1360
+ "toolCall": true,
1361
+ "reasoning": true,
1362
+ "temperature": false,
1363
+ "efforts": [
1364
+ "none",
1365
+ "low",
1366
+ "medium",
1367
+ "high",
1368
+ "xhigh",
1369
+ "max"
1370
+ ],
1371
+ "cost": {
1372
+ "input": 2.5,
1373
+ "output": 15,
1374
+ "cache_read": 0.25,
1375
+ "cache_write": 3.125
1376
+ }
1377
+ },
1378
+ {
1379
+ "id": "gpt-6-astra",
1380
+ "name": "GPT-6 Astra",
1381
+ "protocol": "responses",
1382
+ "contextWindow": 1050000,
1383
+ "maxTokens": 128000,
1384
+ "inputModalities": [
1385
+ "text",
1386
+ "image"
1387
+ ],
1388
+ "toolCall": true,
1389
+ "reasoning": true,
1390
+ "temperature": false,
1391
+ "efforts": [
1392
+ "low",
1393
+ "medium",
1394
+ "high",
1395
+ "xhigh",
1396
+ "max"
1397
+ ],
1398
+ "cost": {
1399
+ "input": 10,
1400
+ "output": 50,
1401
+ "cache_read": 1,
1402
+ "cache_write": 12.5
1403
+ }
1404
+ },
1405
+ {
1406
+ "id": "gpt-6-luna",
1407
+ "name": "GPT-6 Luna",
1408
+ "protocol": "responses",
1409
+ "contextWindow": 1050000,
1410
+ "maxTokens": 128000,
1411
+ "inputModalities": [
1412
+ "text",
1413
+ "image"
1414
+ ],
1415
+ "toolCall": true,
1416
+ "reasoning": true,
1417
+ "temperature": false,
1418
+ "efforts": [
1419
+ "none",
1420
+ "low",
1421
+ "medium",
1422
+ "high",
1423
+ "xhigh",
1424
+ "max"
1425
+ ],
1426
+ "cost": {
1427
+ "input": 0.1,
1428
+ "output": 0.5,
1429
+ "cache_read": 0.01,
1430
+ "cache_write": 0.125
1431
+ }
1432
+ },
1433
+ {
1434
+ "id": "gpt-6-sol",
1435
+ "name": "GPT-6 Sol",
1436
+ "protocol": "responses",
1437
+ "contextWindow": 1050000,
1438
+ "maxTokens": 128000,
1439
+ "inputModalities": [
1440
+ "text",
1441
+ "image"
1442
+ ],
1443
+ "toolCall": true,
1444
+ "reasoning": true,
1445
+ "temperature": false,
1446
+ "efforts": [
1447
+ "none",
1448
+ "low",
1449
+ "medium",
1450
+ "high",
1451
+ "xhigh",
1452
+ "max"
1453
+ ],
1454
+ "cost": {
1455
+ "input": 2,
1456
+ "output": 10,
1457
+ "cache_read": 0.2,
1458
+ "cache_write": 2.5
1459
+ }
1460
+ },
1461
+ {
1462
+ "id": "gpt-6.1-sol",
1463
+ "name": "GPT-6.1 Sol",
1464
+ "protocol": "responses",
1465
+ "contextWindow": 1050000,
1466
+ "maxTokens": 128000,
1467
+ "inputModalities": [
1468
+ "text",
1469
+ "image"
1470
+ ],
1471
+ "toolCall": true,
1472
+ "reasoning": true,
1473
+ "temperature": false,
1474
+ "efforts": [
1475
+ "low",
1476
+ "medium",
1477
+ "high",
1478
+ "xhigh",
1479
+ "max"
1480
+ ],
1481
+ "cost": {
1482
+ "input": 2,
1483
+ "output": 10,
1484
+ "cache_read": 0.1,
1485
+ "cache_write": 2.5
1486
+ }
1487
+ },
1488
+ {
1489
+ "id": "grok-4.5",
1490
+ "name": "Grok 4.5",
1491
+ "protocol": "responses",
1492
+ "contextWindow": 500000,
1493
+ "maxTokens": 500000,
1494
+ "inputModalities": [
1495
+ "text",
1496
+ "image"
1497
+ ],
1498
+ "toolCall": true,
1499
+ "reasoning": true,
1500
+ "temperature": true,
1501
+ "efforts": [
1502
+ "low",
1503
+ "medium",
1504
+ "high"
1505
+ ],
1506
+ "cost": {
1507
+ "input": 2,
1508
+ "output": 6,
1509
+ "cache_read": 0.3
1510
+ }
1511
+ },
1512
+ {
1513
+ "id": "grok-4.6",
1514
+ "name": "Grok 4.6",
1515
+ "protocol": "responses",
1516
+ "contextWindow": 500000,
1517
+ "maxTokens": 500000,
1518
+ "inputModalities": [
1519
+ "text",
1520
+ "image"
1521
+ ],
1522
+ "toolCall": true,
1523
+ "reasoning": true,
1524
+ "temperature": true,
1525
+ "efforts": [
1526
+ "low",
1527
+ "medium",
1528
+ "high",
1529
+ "xhigh"
1530
+ ],
1531
+ "cost": {
1532
+ "input": 2,
1533
+ "output": 6,
1534
+ "cache_read": 0.5
1535
+ }
1536
+ },
1537
+ {
1538
+ "id": "grok-4.7",
1539
+ "name": "Grok 4.7",
1540
+ "protocol": "responses",
1541
+ "contextWindow": 500000,
1542
+ "maxTokens": 500000,
1543
+ "inputModalities": [
1544
+ "text",
1545
+ "image"
1546
+ ],
1547
+ "toolCall": true,
1548
+ "reasoning": true,
1549
+ "temperature": true,
1550
+ "efforts": [
1551
+ "low",
1552
+ "medium",
1553
+ "high",
1554
+ "xhigh"
1555
+ ],
1556
+ "cost": {
1557
+ "input": 2,
1558
+ "output": 6,
1559
+ "cache_read": 0.5
1560
+ }
1561
+ },
1562
+ {
1563
+ "id": "grok-build-0.1",
1564
+ "name": "Grok Build 0.1",
1565
+ "protocol": "responses",
1566
+ "contextWindow": 256000,
1567
+ "maxTokens": 256000,
1568
+ "inputModalities": [
1569
+ "text",
1570
+ "image"
1571
+ ],
1572
+ "toolCall": true,
1573
+ "reasoning": true,
1574
+ "temperature": true,
1575
+ "efforts": [],
1576
+ "cost": {
1577
+ "input": 1,
1578
+ "output": 2,
1579
+ "cache_read": 0.2
1580
+ }
1581
+ },
1582
+ {
1583
+ "id": "kimi-k2.5",
1584
+ "name": "Kimi K2.5",
1585
+ "protocol": "chat",
1586
+ "contextWindow": 262144,
1587
+ "maxTokens": 65536,
1588
+ "inputModalities": [
1589
+ "text",
1590
+ "image"
1591
+ ],
1592
+ "toolCall": true,
1593
+ "reasoning": true,
1594
+ "temperature": true,
1595
+ "efforts": [],
1596
+ "cost": {
1597
+ "input": 0.6,
1598
+ "output": 3,
1599
+ "cache_read": 0.08
1600
+ }
1601
+ },
1602
+ {
1603
+ "id": "kimi-k2.6",
1604
+ "name": "Kimi K2.6",
1605
+ "protocol": "chat",
1606
+ "contextWindow": 262144,
1607
+ "maxTokens": 65536,
1608
+ "inputModalities": [
1609
+ "text",
1610
+ "image"
1611
+ ],
1612
+ "toolCall": true,
1613
+ "reasoning": true,
1614
+ "temperature": true,
1615
+ "efforts": [],
1616
+ "cost": {
1617
+ "input": 0.95,
1618
+ "output": 4,
1619
+ "cache_read": 0.16
1620
+ }
1621
+ },
1622
+ {
1623
+ "id": "kimi-k2.7-code",
1624
+ "name": "Kimi K2.7 Code",
1625
+ "protocol": "chat",
1626
+ "contextWindow": 262144,
1627
+ "maxTokens": 262144,
1628
+ "inputModalities": [
1629
+ "text",
1630
+ "image"
1631
+ ],
1632
+ "toolCall": true,
1633
+ "reasoning": true,
1634
+ "temperature": false,
1635
+ "efforts": [],
1636
+ "cost": {
1637
+ "input": 0.95,
1638
+ "output": 4,
1639
+ "cache_read": 0.19
1640
+ }
1641
+ },
1642
+ {
1643
+ "id": "kimi-k3",
1644
+ "name": "Kimi K3",
1645
+ "protocol": "chat",
1646
+ "contextWindow": 1048576,
1647
+ "maxTokens": 131072,
1648
+ "inputModalities": [
1649
+ "text",
1650
+ "image"
1651
+ ],
1652
+ "toolCall": true,
1653
+ "reasoning": true,
1654
+ "temperature": false,
1655
+ "efforts": [
1656
+ "max"
1657
+ ],
1658
+ "cost": {
1659
+ "input": 3,
1660
+ "output": 15,
1661
+ "cache_read": 0.3
1662
+ }
1663
+ },
1664
+ {
1665
+ "id": "ling-3.0-flash-fin-free",
1666
+ "name": "Ling 3.0 Flash Fin Free",
1667
+ "protocol": "chat",
1668
+ "contextWindow": 262144,
1669
+ "maxTokens": 32768,
1670
+ "inputModalities": [
1671
+ "text"
1672
+ ],
1673
+ "toolCall": true,
1674
+ "reasoning": true,
1675
+ "temperature": true,
1676
+ "efforts": [],
1677
+ "cost": {
1678
+ "input": 0,
1679
+ "output": 0,
1680
+ "cache_read": 0
1681
+ }
1682
+ },
1683
+ {
1684
+ "id": "longcat-2.5-preview-free",
1685
+ "name": "LongCat 2.5 Preview Free",
1686
+ "protocol": "chat",
1687
+ "contextWindow": 1000000,
1688
+ "maxTokens": 131072,
1689
+ "inputModalities": [
1690
+ "text",
1691
+ "image"
1692
+ ],
1693
+ "toolCall": true,
1694
+ "reasoning": true,
1695
+ "temperature": true,
1696
+ "efforts": [],
1697
+ "cost": {
1698
+ "input": 0,
1699
+ "output": 0,
1700
+ "cache_read": 0
1701
+ }
1702
+ },
1703
+ {
1704
+ "id": "mimo-v2.5-free",
1705
+ "name": "MiMo V2.5 Free",
1706
+ "protocol": "chat",
1707
+ "contextWindow": 200000,
1708
+ "maxTokens": 32000,
1709
+ "inputModalities": [
1710
+ "text",
1711
+ "image"
1712
+ ],
1713
+ "toolCall": true,
1714
+ "reasoning": true,
1715
+ "temperature": true,
1716
+ "efforts": [],
1717
+ "cost": {
1718
+ "input": 0,
1719
+ "output": 0,
1720
+ "cache_read": 0
1721
+ }
1722
+ },
1723
+ {
1724
+ "id": "mimo-v2.6-flash-free",
1725
+ "name": "MiMo-V2.6-Flash Free",
1726
+ "protocol": "chat",
1727
+ "contextWindow": 200000,
1728
+ "maxTokens": 32000,
1729
+ "inputModalities": [
1730
+ "text",
1731
+ "image"
1732
+ ],
1733
+ "toolCall": true,
1734
+ "reasoning": true,
1735
+ "temperature": true,
1736
+ "efforts": [],
1737
+ "cost": {
1738
+ "input": 0,
1739
+ "output": 0,
1740
+ "cache_read": 0
1741
+ }
1742
+ },
1743
+ {
1744
+ "id": "minimax-m2.5",
1745
+ "name": "MiniMax-M2.5",
1746
+ "protocol": "chat",
1747
+ "contextWindow": 204800,
1748
+ "maxTokens": 131072,
1749
+ "inputModalities": [
1750
+ "text"
1751
+ ],
1752
+ "toolCall": true,
1753
+ "reasoning": true,
1754
+ "temperature": true,
1755
+ "efforts": [],
1756
+ "cost": {
1757
+ "input": 0.3,
1758
+ "output": 1.2,
1759
+ "cache_read": 0.06
1760
+ }
1761
+ },
1762
+ {
1763
+ "id": "minimax-m2.7",
1764
+ "name": "MiniMax-M2.7",
1765
+ "protocol": "chat",
1766
+ "contextWindow": 204800,
1767
+ "maxTokens": 131072,
1768
+ "inputModalities": [
1769
+ "text"
1770
+ ],
1771
+ "toolCall": true,
1772
+ "reasoning": true,
1773
+ "temperature": true,
1774
+ "efforts": [],
1775
+ "cost": {
1776
+ "input": 0.3,
1777
+ "output": 1.2,
1778
+ "cache_read": 0.06
1779
+ }
1780
+ },
1781
+ {
1782
+ "id": "minimax-m3",
1783
+ "name": "MiniMax-M3",
1784
+ "protocol": "chat",
1785
+ "contextWindow": 512000,
1786
+ "maxTokens": 128000,
1787
+ "inputModalities": [
1788
+ "text",
1789
+ "image"
1790
+ ],
1791
+ "toolCall": true,
1792
+ "reasoning": true,
1793
+ "temperature": true,
1794
+ "efforts": [],
1795
+ "cost": {
1796
+ "input": 0.3,
1797
+ "output": 1.2,
1798
+ "cache_read": 0.06
1799
+ }
1800
+ },
1801
+ {
1802
+ "id": "muse-spark-1.2",
1803
+ "name": "Muse Spark 1.2",
1804
+ "protocol": "responses",
1805
+ "contextWindow": 1048576,
1806
+ "maxTokens": 131072,
1807
+ "inputModalities": [
1808
+ "text",
1809
+ "image"
1810
+ ],
1811
+ "toolCall": true,
1812
+ "reasoning": true,
1813
+ "temperature": true,
1814
+ "efforts": [
1815
+ "minimal",
1816
+ "low",
1817
+ "medium",
1818
+ "high",
1819
+ "xhigh"
1820
+ ],
1821
+ "cost": {
1822
+ "input": 1.25,
1823
+ "output": 4.25,
1824
+ "cache_read": 0.15
1825
+ }
1826
+ },
1827
+ {
1828
+ "id": "muse-spark-1.2-contributor-free",
1829
+ "name": "Muse Spark 1.2 Free",
1830
+ "protocol": "responses",
1831
+ "contextWindow": 1048576,
1832
+ "maxTokens": 131072,
1833
+ "inputModalities": [
1834
+ "text",
1835
+ "image"
1836
+ ],
1837
+ "toolCall": true,
1838
+ "reasoning": true,
1839
+ "temperature": true,
1840
+ "efforts": [
1841
+ "minimal",
1842
+ "low",
1843
+ "medium",
1844
+ "high",
1845
+ "xhigh"
1846
+ ],
1847
+ "cost": {
1848
+ "input": 0,
1849
+ "output": 0,
1850
+ "cache_read": 0
1851
+ }
1852
+ },
1853
+ {
1854
+ "id": "muse-spark-1.3",
1855
+ "name": "Muse Spark 1.3",
1856
+ "protocol": "responses",
1857
+ "contextWindow": 1048576,
1858
+ "maxTokens": 131072,
1859
+ "inputModalities": [
1860
+ "text",
1861
+ "image"
1862
+ ],
1863
+ "toolCall": true,
1864
+ "reasoning": true,
1865
+ "temperature": true,
1866
+ "efforts": [
1867
+ "minimal",
1868
+ "low",
1869
+ "medium",
1870
+ "high",
1871
+ "xhigh"
1872
+ ],
1873
+ "cost": {
1874
+ "input": 1.25,
1875
+ "output": 4.25,
1876
+ "cache_read": 0.15
1877
+ }
1878
+ },
1879
+ {
1880
+ "id": "muse-spark-1.3-contributor-free",
1881
+ "name": "Muse Spark 1.3 Free",
1882
+ "protocol": "responses",
1883
+ "contextWindow": 1048576,
1884
+ "maxTokens": 131072,
1885
+ "inputModalities": [
1886
+ "text",
1887
+ "image"
1888
+ ],
1889
+ "toolCall": true,
1890
+ "reasoning": true,
1891
+ "temperature": true,
1892
+ "efforts": [
1893
+ "minimal",
1894
+ "low",
1895
+ "medium",
1896
+ "high",
1897
+ "xhigh"
1898
+ ],
1899
+ "cost": {
1900
+ "input": 0,
1901
+ "output": 0,
1902
+ "cache_read": 0
1903
+ }
1904
+ },
1905
+ {
1906
+ "id": "nemotron-3-ultra-free",
1907
+ "name": "Nemotron 3 Ultra Free",
1908
+ "protocol": "chat",
1909
+ "contextWindow": 1000000,
1910
+ "maxTokens": 128000,
1911
+ "inputModalities": [
1912
+ "text"
1913
+ ],
1914
+ "toolCall": true,
1915
+ "reasoning": true,
1916
+ "temperature": true,
1917
+ "efforts": [],
1918
+ "cost": {
1919
+ "input": 0,
1920
+ "output": 0,
1921
+ "cache_read": 0
1922
+ }
1923
+ },
1924
+ {
1925
+ "id": "nemotron-3.5-lightning-free",
1926
+ "name": "Nemotron 3.5 Lightning Free",
1927
+ "protocol": "chat",
1928
+ "contextWindow": 262144,
1929
+ "maxTokens": 262144,
1930
+ "inputModalities": [
1931
+ "text"
1932
+ ],
1933
+ "toolCall": true,
1934
+ "reasoning": true,
1935
+ "temperature": true,
1936
+ "efforts": [],
1937
+ "cost": {
1938
+ "input": 0,
1939
+ "output": 0,
1940
+ "cache_read": 0
1941
+ }
1942
+ },
1943
+ {
1944
+ "id": "qwen3.5-plus",
1945
+ "name": "Qwen3.5 Plus",
1946
+ "protocol": "messages",
1947
+ "contextWindow": 262144,
1948
+ "maxTokens": 65536,
1949
+ "inputModalities": [
1950
+ "text",
1951
+ "image"
1952
+ ],
1953
+ "toolCall": true,
1954
+ "reasoning": true,
1955
+ "temperature": true,
1956
+ "efforts": [],
1957
+ "cost": {
1958
+ "input": 0.2,
1959
+ "output": 1.2,
1960
+ "cache_read": 0.02,
1961
+ "cache_write": 0.25
1962
+ }
1963
+ },
1964
+ {
1965
+ "id": "qwen3.6-plus",
1966
+ "name": "Qwen3.6 Plus",
1967
+ "protocol": "messages",
1968
+ "contextWindow": 262144,
1969
+ "maxTokens": 65536,
1970
+ "inputModalities": [
1971
+ "text",
1972
+ "image"
1973
+ ],
1974
+ "toolCall": true,
1975
+ "reasoning": true,
1976
+ "temperature": true,
1977
+ "efforts": [],
1978
+ "cost": {
1979
+ "input": 0.5,
1980
+ "output": 3,
1981
+ "cache_read": 0.05,
1982
+ "cache_write": 0.625
1983
+ }
1984
+ },
1985
+ {
1986
+ "id": "qwen3.8-flash",
1987
+ "name": "Qwen3.8 Flash",
1988
+ "protocol": "messages",
1989
+ "contextWindow": 1000000,
1990
+ "maxTokens": 131072,
1991
+ "inputModalities": [
1992
+ "text",
1993
+ "image"
1994
+ ],
1995
+ "toolCall": true,
1996
+ "reasoning": true,
1997
+ "temperature": true,
1998
+ "efforts": [
1999
+ "low",
2000
+ "medium",
2001
+ "xhigh"
2002
+ ],
2003
+ "cost": {
2004
+ "input": 0.15,
2005
+ "output": 0.47,
2006
+ "cache_read": 0.016,
2007
+ "cache_write": 0.2
2008
+ }
2009
+ },
2010
+ {
2011
+ "id": "qwen3.8-max",
2012
+ "name": "Qwen3.8 Max",
2013
+ "protocol": "chat",
2014
+ "contextWindow": 262144,
2015
+ "maxTokens": 131072,
2016
+ "inputModalities": [
2017
+ "text",
2018
+ "image"
2019
+ ],
2020
+ "toolCall": true,
2021
+ "reasoning": true,
2022
+ "temperature": true,
2023
+ "efforts": [],
2024
+ "cost": {
2025
+ "input": 2,
2026
+ "output": 6,
2027
+ "cache_read": 0.25,
2028
+ "cache_write": 2.5
2029
+ }
2030
+ }
2031
+ ],
2032
+ "excluded": [
2033
+ {
2034
+ "id": "jev-1.13",
2035
+ "reason": "metadata unavailable for this route and id"
2036
+ },
2037
+ {
2038
+ "id": "jev-1.13-free",
2039
+ "reason": "metadata unavailable for this route and id"
2040
+ },
2041
+ {
2042
+ "id": "space-bunny-free",
2043
+ "reason": "model capabilities unavailable"
2044
+ }
2045
+ ]
2046
+ },
2047
+ "opencode-go": {
2048
+ "version": 1,
2049
+ "provider": "opencode-go",
2050
+ "fetchedAt": 1790827880959,
2051
+ "roster": [
2052
+ "deepseek-flash",
2053
+ "deepseek-v4-flash",
2054
+ "deepseek-v4-flash-vision-exp",
2055
+ "deepseek-v4-pro",
2056
+ "deepseek-v4.1-flash",
2057
+ "glm-5",
2058
+ "glm-5.1",
2059
+ "glm-5.2",
2060
+ "glm-5.3",
2061
+ "glm-5.3-flash",
2062
+ "gpt-5.6-luna",
2063
+ "gpt-6-luna",
2064
+ "grok-4.5",
2065
+ "grok-4.6",
2066
+ "grok-4.7",
2067
+ "hy3",
2068
+ "hy3-preview",
2069
+ "hy4-preview",
2070
+ "kimi-k2.5",
2071
+ "kimi-k2.6",
2072
+ "kimi-k2.7-code",
2073
+ "kimi-k3",
2074
+ "longcat-2.0",
2075
+ "longcat-2.5-preview-free",
2076
+ "mimo-v2-omni",
2077
+ "mimo-v2-pro",
2078
+ "mimo-v2.5",
2079
+ "mimo-v2.5-pro",
2080
+ "mimo-v2.6-flash",
2081
+ "mimo-v2.6-pro",
2082
+ "minimax-m2.5",
2083
+ "minimax-m2.7",
2084
+ "minimax-m3",
2085
+ "muse-spark-1.2-contributor",
2086
+ "muse-spark-1.3-contributor",
2087
+ "omen-alpha",
2088
+ "qwen3.5-plus",
2089
+ "qwen3.6-plus",
2090
+ "qwen3.7-max",
2091
+ "qwen3.7-plus",
2092
+ "qwen3.8-flash",
2093
+ "qwen3.8-max",
2094
+ "space-bunny-free"
2095
+ ],
2096
+ "models": [
2097
+ {
2098
+ "id": "deepseek-v4-flash",
2099
+ "name": "DeepSeek V4 Flash",
2100
+ "protocol": "chat",
2101
+ "contextWindow": 1000000,
2102
+ "maxTokens": 384000,
2103
+ "inputModalities": [
2104
+ "text"
2105
+ ],
2106
+ "toolCall": true,
2107
+ "reasoning": true,
2108
+ "temperature": true,
2109
+ "efforts": [
2110
+ "low",
2111
+ "high",
2112
+ "max"
2113
+ ],
2114
+ "cost": {
2115
+ "input": 0.15,
2116
+ "output": 0.6,
2117
+ "cache_read": 0.003
2118
+ }
2119
+ },
2120
+ {
2121
+ "id": "deepseek-v4-flash-vision-exp",
2122
+ "name": "DeepSeek V4 Flash Vision Exp",
2123
+ "protocol": "chat",
2124
+ "contextWindow": 1000000,
2125
+ "maxTokens": 384000,
2126
+ "inputModalities": [
2127
+ "text",
2128
+ "image"
2129
+ ],
2130
+ "toolCall": true,
2131
+ "reasoning": true,
2132
+ "temperature": true,
2133
+ "efforts": [
2134
+ "low",
2135
+ "high",
2136
+ "max"
2137
+ ],
2138
+ "cost": {
2139
+ "input": 0.15,
2140
+ "output": 0.6,
2141
+ "cache_read": 0.003
2142
+ }
2143
+ },
2144
+ {
2145
+ "id": "deepseek-v4-pro",
2146
+ "name": "DeepSeek V4 Pro (New)",
2147
+ "protocol": "chat",
2148
+ "contextWindow": 1000000,
2149
+ "maxTokens": 384000,
2150
+ "inputModalities": [
2151
+ "text"
2152
+ ],
2153
+ "toolCall": true,
2154
+ "reasoning": true,
2155
+ "temperature": true,
2156
+ "efforts": [
2157
+ "high",
2158
+ "max"
2159
+ ],
2160
+ "cost": {
2161
+ "input": 0.66,
2162
+ "output": 1.98,
2163
+ "cache_read": 0.022
2164
+ }
2165
+ },
2166
+ {
2167
+ "id": "deepseek-v4.1-flash",
2168
+ "name": "DeepSeek V4.1 Flash",
2169
+ "protocol": "chat",
2170
+ "contextWindow": 1000000,
2171
+ "maxTokens": 384000,
2172
+ "inputModalities": [
2173
+ "text",
2174
+ "image"
2175
+ ],
2176
+ "toolCall": true,
2177
+ "reasoning": true,
2178
+ "temperature": true,
2179
+ "efforts": [
2180
+ "low",
2181
+ "high",
2182
+ "max"
2183
+ ],
2184
+ "cost": {
2185
+ "input": 0.15,
2186
+ "output": 0.6,
2187
+ "cache_read": 0.003
2188
+ }
2189
+ },
2190
+ {
2191
+ "id": "glm-5.2",
2192
+ "name": "GLM-5.2",
2193
+ "protocol": "chat",
2194
+ "contextWindow": 1000000,
2195
+ "maxTokens": 131072,
2196
+ "inputModalities": [
2197
+ "text"
2198
+ ],
2199
+ "toolCall": true,
2200
+ "reasoning": true,
2201
+ "temperature": true,
2202
+ "efforts": [
2203
+ "high",
2204
+ "max"
2205
+ ],
2206
+ "cost": {
2207
+ "input": 1.4,
2208
+ "output": 4.4,
2209
+ "cache_read": 0.26
2210
+ }
2211
+ },
2212
+ {
2213
+ "id": "glm-5.3",
2214
+ "name": "GLM-5.3",
2215
+ "protocol": "chat",
2216
+ "contextWindow": 1000000,
2217
+ "maxTokens": 131072,
2218
+ "inputModalities": [
2219
+ "text"
2220
+ ],
2221
+ "toolCall": true,
2222
+ "reasoning": true,
2223
+ "temperature": true,
2224
+ "efforts": [
2225
+ "low",
2226
+ "high",
2227
+ "max"
2228
+ ],
2229
+ "cost": {
2230
+ "input": 1.4,
2231
+ "output": 4.4,
2232
+ "cache_read": 0.26
2233
+ }
2234
+ },
2235
+ {
2236
+ "id": "glm-5.3-flash",
2237
+ "name": "GLM-5.3-Flash",
2238
+ "protocol": "chat",
2239
+ "contextWindow": 1000000,
2240
+ "maxTokens": 131072,
2241
+ "inputModalities": [
2242
+ "text",
2243
+ "image"
2244
+ ],
2245
+ "toolCall": true,
2246
+ "reasoning": true,
2247
+ "temperature": true,
2248
+ "efforts": [
2249
+ "low",
2250
+ "high",
2251
+ "max"
2252
+ ],
2253
+ "cost": {
2254
+ "input": 0.15,
2255
+ "output": 0.5,
2256
+ "cache_read": 0.03
2257
+ }
2258
+ },
2259
+ {
2260
+ "id": "gpt-5.6-luna",
2261
+ "name": "GPT-5.6 Luna",
2262
+ "protocol": "responses",
2263
+ "contextWindow": 1050000,
2264
+ "maxTokens": 128000,
2265
+ "inputModalities": [
2266
+ "text",
2267
+ "image"
2268
+ ],
2269
+ "toolCall": true,
2270
+ "reasoning": true,
2271
+ "temperature": false,
2272
+ "efforts": [
2273
+ "none",
2274
+ "low",
2275
+ "medium",
2276
+ "high",
2277
+ "xhigh",
2278
+ "max"
2279
+ ],
2280
+ "cost": {
2281
+ "input": 0.2,
2282
+ "output": 1.2,
2283
+ "cache_read": 0.02,
2284
+ "cache_write": 0.25
2285
+ }
2286
+ },
2287
+ {
2288
+ "id": "gpt-6-luna",
2289
+ "name": "GPT-6 Luna",
2290
+ "protocol": "responses",
2291
+ "contextWindow": 1050000,
2292
+ "maxTokens": 128000,
2293
+ "inputModalities": [
2294
+ "text",
2295
+ "image"
2296
+ ],
2297
+ "toolCall": true,
2298
+ "reasoning": true,
2299
+ "temperature": false,
2300
+ "efforts": [
2301
+ "none",
2302
+ "low",
2303
+ "medium",
2304
+ "high",
2305
+ "xhigh",
2306
+ "max"
2307
+ ],
2308
+ "cost": {
2309
+ "input": 0.1,
2310
+ "output": 0.5,
2311
+ "cache_read": 0.01,
2312
+ "cache_write": 0.125
2313
+ }
2314
+ },
2315
+ {
2316
+ "id": "grok-4.5",
2317
+ "name": "Grok 4.5",
2318
+ "protocol": "responses",
2319
+ "contextWindow": 500000,
2320
+ "maxTokens": 500000,
2321
+ "inputModalities": [
2322
+ "text",
2323
+ "image"
2324
+ ],
2325
+ "toolCall": true,
2326
+ "reasoning": true,
2327
+ "temperature": true,
2328
+ "efforts": [
2329
+ "low",
2330
+ "medium",
2331
+ "high"
2332
+ ],
2333
+ "cost": {
2334
+ "input": 2,
2335
+ "output": 6,
2336
+ "cache_read": 0.3
2337
+ }
2338
+ },
2339
+ {
2340
+ "id": "grok-4.6",
2341
+ "name": "Grok 4.6",
2342
+ "protocol": "responses",
2343
+ "contextWindow": 500000,
2344
+ "maxTokens": 500000,
2345
+ "inputModalities": [
2346
+ "text",
2347
+ "image"
2348
+ ],
2349
+ "toolCall": true,
2350
+ "reasoning": true,
2351
+ "temperature": true,
2352
+ "efforts": [
2353
+ "low",
2354
+ "medium",
2355
+ "high",
2356
+ "xhigh"
2357
+ ],
2358
+ "cost": {
2359
+ "input": 2,
2360
+ "output": 6,
2361
+ "cache_read": 0.5
2362
+ }
2363
+ },
2364
+ {
2365
+ "id": "grok-4.7",
2366
+ "name": "Grok 4.7",
2367
+ "protocol": "responses",
2368
+ "contextWindow": 500000,
2369
+ "maxTokens": 500000,
2370
+ "inputModalities": [
2371
+ "text",
2372
+ "image"
2373
+ ],
2374
+ "toolCall": true,
2375
+ "reasoning": true,
2376
+ "temperature": true,
2377
+ "efforts": [
2378
+ "low",
2379
+ "medium",
2380
+ "high",
2381
+ "xhigh"
2382
+ ],
2383
+ "cost": {
2384
+ "input": 2,
2385
+ "output": 6,
2386
+ "cache_read": 0.5
2387
+ }
2388
+ },
2389
+ {
2390
+ "id": "hy3",
2391
+ "name": "Hy3",
2392
+ "protocol": "chat",
2393
+ "contextWindow": 256000,
2394
+ "maxTokens": 128000,
2395
+ "inputModalities": [
2396
+ "text"
2397
+ ],
2398
+ "toolCall": true,
2399
+ "reasoning": true,
2400
+ "temperature": true,
2401
+ "efforts": [
2402
+ "none",
2403
+ "low",
2404
+ "high"
2405
+ ],
2406
+ "cost": {
2407
+ "input": 0.14,
2408
+ "output": 0.58,
2409
+ "cache_read": 0.035
2410
+ }
2411
+ },
2412
+ {
2413
+ "id": "hy4-preview",
2414
+ "name": "Hy4 preview",
2415
+ "protocol": "chat",
2416
+ "contextWindow": 1024000,
2417
+ "maxTokens": 64000,
2418
+ "inputModalities": [
2419
+ "text"
2420
+ ],
2421
+ "toolCall": true,
2422
+ "reasoning": true,
2423
+ "temperature": true,
2424
+ "efforts": [
2425
+ "none",
2426
+ "high"
2427
+ ],
2428
+ "cost": {
2429
+ "input": 0.834,
2430
+ "output": 2.501,
2431
+ "cache_read": 0.042
2432
+ }
2433
+ },
2434
+ {
2435
+ "id": "kimi-k2.6",
2436
+ "name": "Kimi K2.6",
2437
+ "protocol": "chat",
2438
+ "contextWindow": 262144,
2439
+ "maxTokens": 65536,
2440
+ "inputModalities": [
2441
+ "text",
2442
+ "image"
2443
+ ],
2444
+ "toolCall": true,
2445
+ "reasoning": true,
2446
+ "temperature": true,
2447
+ "efforts": [],
2448
+ "cost": {
2449
+ "input": 0.95,
2450
+ "output": 4,
2451
+ "cache_read": 0.16
2452
+ }
2453
+ },
2454
+ {
2455
+ "id": "kimi-k2.7-code",
2456
+ "name": "Kimi K2.7 Code",
2457
+ "protocol": "chat",
2458
+ "contextWindow": 262144,
2459
+ "maxTokens": 262144,
2460
+ "inputModalities": [
2461
+ "text",
2462
+ "image"
2463
+ ],
2464
+ "toolCall": true,
2465
+ "reasoning": true,
2466
+ "temperature": false,
2467
+ "efforts": [],
2468
+ "cost": {
2469
+ "input": 0.95,
2470
+ "output": 4,
2471
+ "cache_read": 0.19
2472
+ }
2473
+ },
2474
+ {
2475
+ "id": "kimi-k3",
2476
+ "name": "Kimi K3",
2477
+ "protocol": "chat",
2478
+ "contextWindow": 1048576,
2479
+ "maxTokens": 131072,
2480
+ "inputModalities": [
2481
+ "text",
2482
+ "image"
2483
+ ],
2484
+ "toolCall": true,
2485
+ "reasoning": true,
2486
+ "temperature": false,
2487
+ "efforts": [
2488
+ "max"
2489
+ ],
2490
+ "cost": {
2491
+ "input": 3,
2492
+ "output": 15,
2493
+ "cache_read": 0.3
2494
+ }
2495
+ },
2496
+ {
2497
+ "id": "longcat-2.0",
2498
+ "name": "LongCat-2.0",
2499
+ "protocol": "chat",
2500
+ "contextWindow": 1000000,
2501
+ "maxTokens": 131072,
2502
+ "inputModalities": [
2503
+ "text"
2504
+ ],
2505
+ "toolCall": true,
2506
+ "reasoning": true,
2507
+ "temperature": true,
2508
+ "efforts": [],
2509
+ "cost": {
2510
+ "input": 0.3,
2511
+ "output": 1.2,
2512
+ "cache_read": 0.006
2513
+ }
2514
+ },
2515
+ {
2516
+ "id": "longcat-2.5-preview-free",
2517
+ "name": "LongCat 2.5 Preview Free",
2518
+ "protocol": "chat",
2519
+ "contextWindow": 1000000,
2520
+ "maxTokens": 131072,
2521
+ "inputModalities": [
2522
+ "text",
2523
+ "image"
2524
+ ],
2525
+ "toolCall": true,
2526
+ "reasoning": true,
2527
+ "temperature": true,
2528
+ "efforts": [],
2529
+ "cost": {
2530
+ "input": 0,
2531
+ "output": 0,
2532
+ "cache_read": 0
2533
+ }
2534
+ },
2535
+ {
2536
+ "id": "mimo-v2.5",
2537
+ "name": "MiMo V2.5",
2538
+ "protocol": "chat",
2539
+ "contextWindow": 1000000,
2540
+ "maxTokens": 128000,
2541
+ "inputModalities": [
2542
+ "text",
2543
+ "image"
2544
+ ],
2545
+ "toolCall": true,
2546
+ "reasoning": true,
2547
+ "temperature": true,
2548
+ "efforts": [],
2549
+ "cost": {
2550
+ "input": 0.14,
2551
+ "output": 0.28,
2552
+ "cache_read": 0.0028
2553
+ }
2554
+ },
2555
+ {
2556
+ "id": "mimo-v2.5-pro",
2557
+ "name": "MiMo V2.5 Pro",
2558
+ "protocol": "chat",
2559
+ "contextWindow": 1048576,
2560
+ "maxTokens": 128000,
2561
+ "inputModalities": [
2562
+ "text"
2563
+ ],
2564
+ "toolCall": true,
2565
+ "reasoning": true,
2566
+ "temperature": true,
2567
+ "efforts": [],
2568
+ "cost": {
2569
+ "input": 0.435,
2570
+ "output": 0.87,
2571
+ "cache_read": 0.003625
2572
+ }
2573
+ },
2574
+ {
2575
+ "id": "mimo-v2.6-flash",
2576
+ "name": "MiMo-V2.6-Flash",
2577
+ "protocol": "chat",
2578
+ "contextWindow": 1048576,
2579
+ "maxTokens": 131072,
2580
+ "inputModalities": [
2581
+ "text",
2582
+ "image"
2583
+ ],
2584
+ "toolCall": true,
2585
+ "reasoning": true,
2586
+ "temperature": true,
2587
+ "efforts": [],
2588
+ "cost": {
2589
+ "input": 0.14,
2590
+ "output": 0.28,
2591
+ "cache_read": 0.0028
2592
+ }
2593
+ },
2594
+ {
2595
+ "id": "mimo-v2.6-pro",
2596
+ "name": "MiMo-V2.6-Pro",
2597
+ "protocol": "chat",
2598
+ "contextWindow": 1048576,
2599
+ "maxTokens": 131072,
2600
+ "inputModalities": [
2601
+ "text",
2602
+ "image"
2603
+ ],
2604
+ "toolCall": true,
2605
+ "reasoning": true,
2606
+ "temperature": true,
2607
+ "efforts": [],
2608
+ "cost": {
2609
+ "input": 0.435,
2610
+ "output": 0.87,
2611
+ "cache_read": 0.003625
2612
+ }
2613
+ },
2614
+ {
2615
+ "id": "minimax-m2.7",
2616
+ "name": "MiniMax-M2.7",
2617
+ "protocol": "messages",
2618
+ "contextWindow": 204800,
2619
+ "maxTokens": 131072,
2620
+ "inputModalities": [
2621
+ "text"
2622
+ ],
2623
+ "toolCall": true,
2624
+ "reasoning": true,
2625
+ "temperature": true,
2626
+ "efforts": [],
2627
+ "cost": {
2628
+ "input": 0.3,
2629
+ "output": 1.2,
2630
+ "cache_read": 0.06,
2631
+ "cache_write": 0.375
2632
+ }
2633
+ },
2634
+ {
2635
+ "id": "minimax-m3",
2636
+ "name": "MiniMax-M3",
2637
+ "protocol": "messages",
2638
+ "contextWindow": 1000000,
2639
+ "maxTokens": 131072,
2640
+ "inputModalities": [
2641
+ "text",
2642
+ "image"
2643
+ ],
2644
+ "toolCall": true,
2645
+ "reasoning": true,
2646
+ "temperature": true,
2647
+ "efforts": [],
2648
+ "cost": {
2649
+ "input": 0.3,
2650
+ "output": 1.2,
2651
+ "cache_read": 0.06
2652
+ }
2653
+ },
2654
+ {
2655
+ "id": "muse-spark-1.2-contributor",
2656
+ "name": "Muse Spark 1.2 Contributor",
2657
+ "protocol": "responses",
2658
+ "contextWindow": 1048576,
2659
+ "maxTokens": 131072,
2660
+ "inputModalities": [
2661
+ "text",
2662
+ "image"
2663
+ ],
2664
+ "toolCall": true,
2665
+ "reasoning": true,
2666
+ "temperature": true,
2667
+ "efforts": [
2668
+ "minimal",
2669
+ "low",
2670
+ "medium",
2671
+ "high",
2672
+ "xhigh"
2673
+ ],
2674
+ "cost": {
2675
+ "input": 0.1,
2676
+ "output": 0.2,
2677
+ "cache_read": 0.002
2678
+ }
2679
+ },
2680
+ {
2681
+ "id": "muse-spark-1.3-contributor",
2682
+ "name": "Muse Spark 1.3 Contributor",
2683
+ "protocol": "responses",
2684
+ "contextWindow": 1048576,
2685
+ "maxTokens": 131072,
2686
+ "inputModalities": [
2687
+ "text",
2688
+ "image"
2689
+ ],
2690
+ "toolCall": true,
2691
+ "reasoning": true,
2692
+ "temperature": true,
2693
+ "efforts": [
2694
+ "minimal",
2695
+ "low",
2696
+ "medium",
2697
+ "high",
2698
+ "xhigh"
2699
+ ],
2700
+ "cost": {
2701
+ "input": 0.1,
2702
+ "output": 0.2,
2703
+ "cache_read": 0.002
2704
+ }
2705
+ },
2706
+ {
2707
+ "id": "qwen3.6-plus",
2708
+ "name": "Qwen3.6 Plus",
2709
+ "protocol": "chat",
2710
+ "contextWindow": 1000000,
2711
+ "maxTokens": 65536,
2712
+ "inputModalities": [
2713
+ "text",
2714
+ "image"
2715
+ ],
2716
+ "toolCall": true,
2717
+ "reasoning": true,
2718
+ "temperature": true,
2719
+ "efforts": [],
2720
+ "cost": {
2721
+ "input": 0.5,
2722
+ "output": 3,
2723
+ "cache_read": 0.05,
2724
+ "cache_write": 0.625
2725
+ }
2726
+ },
2727
+ {
2728
+ "id": "qwen3.7-max",
2729
+ "name": "Qwen3.7 Max",
2730
+ "protocol": "chat",
2731
+ "contextWindow": 1000000,
2732
+ "maxTokens": 65536,
2733
+ "inputModalities": [
2734
+ "text"
2735
+ ],
2736
+ "toolCall": true,
2737
+ "reasoning": true,
2738
+ "temperature": true,
2739
+ "efforts": [],
2740
+ "cost": {
2741
+ "input": 2.5,
2742
+ "output": 7.5,
2743
+ "cache_read": 0.5,
2744
+ "cache_write": 3.125
2745
+ }
2746
+ },
2747
+ {
2748
+ "id": "qwen3.7-plus",
2749
+ "name": "Qwen3.7 Plus",
2750
+ "protocol": "chat",
2751
+ "contextWindow": 1000000,
2752
+ "maxTokens": 65536,
2753
+ "inputModalities": [
2754
+ "text",
2755
+ "image"
2756
+ ],
2757
+ "toolCall": true,
2758
+ "reasoning": true,
2759
+ "temperature": true,
2760
+ "efforts": [],
2761
+ "cost": {
2762
+ "input": 0.4,
2763
+ "output": 1.6,
2764
+ "cache_read": 0.04,
2765
+ "cache_write": 0.5
2766
+ }
2767
+ },
2768
+ {
2769
+ "id": "qwen3.8-flash",
2770
+ "name": "Qwen3.8 Flash",
2771
+ "protocol": "messages",
2772
+ "contextWindow": 1000000,
2773
+ "maxTokens": 131072,
2774
+ "inputModalities": [
2775
+ "text",
2776
+ "image"
2777
+ ],
2778
+ "toolCall": true,
2779
+ "reasoning": true,
2780
+ "temperature": true,
2781
+ "efforts": [
2782
+ "low",
2783
+ "medium",
2784
+ "xhigh"
2785
+ ],
2786
+ "cost": {
2787
+ "input": 0.15,
2788
+ "output": 0.47,
2789
+ "cache_read": 0.016,
2790
+ "cache_write": 0.2
2791
+ }
2792
+ },
2793
+ {
2794
+ "id": "qwen3.8-max",
2795
+ "name": "Qwen3.8 Max",
2796
+ "protocol": "chat",
2797
+ "contextWindow": 1000000,
2798
+ "maxTokens": 131072,
2799
+ "inputModalities": [
2800
+ "text",
2801
+ "image"
2802
+ ],
2803
+ "toolCall": true,
2804
+ "reasoning": true,
2805
+ "temperature": true,
2806
+ "efforts": [
2807
+ "low",
2808
+ "medium",
2809
+ "xhigh"
2810
+ ],
2811
+ "cost": {
2812
+ "input": 2,
2813
+ "output": 6,
2814
+ "cache_read": 0.25,
2815
+ "cache_write": 2.5
2816
+ }
2817
+ }
2818
+ ],
2819
+ "excluded": [
2820
+ {
2821
+ "id": "deepseek-flash",
2822
+ "reason": "metadata unavailable for this route and id"
2823
+ },
2824
+ {
2825
+ "id": "glm-5",
2826
+ "reason": "metadata unavailable for this route and id"
2827
+ },
2828
+ {
2829
+ "id": "glm-5.1",
2830
+ "reason": "metadata unavailable for this route and id"
2831
+ },
2832
+ {
2833
+ "id": "hy3-preview",
2834
+ "reason": "metadata unavailable for this route and id"
2835
+ },
2836
+ {
2837
+ "id": "kimi-k2.5",
2838
+ "reason": "metadata unavailable for this route and id"
2839
+ },
2840
+ {
2841
+ "id": "mimo-v2-omni",
2842
+ "reason": "metadata unavailable for this route and id"
2843
+ },
2844
+ {
2845
+ "id": "mimo-v2-pro",
2846
+ "reason": "metadata unavailable for this route and id"
2847
+ },
2848
+ {
2849
+ "id": "minimax-m2.5",
2850
+ "reason": "metadata unavailable for this route and id"
2851
+ },
2852
+ {
2853
+ "id": "omen-alpha",
2854
+ "reason": "metadata unavailable for this route and id"
2855
+ },
2856
+ {
2857
+ "id": "qwen3.5-plus",
2858
+ "reason": "metadata unavailable for this route and id"
2859
+ },
2860
+ {
2861
+ "id": "space-bunny-free",
2862
+ "reason": "model capabilities unavailable"
2863
+ }
2864
+ ]
2865
+ }
2866
+ };