@draht/ai 2026.3.6 → 2026.3.14

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 (75) hide show
  1. package/README.md +14 -10
  2. package/dist/cli.js +0 -0
  3. package/dist/env-api-keys.d.ts.map +1 -1
  4. package/dist/env-api-keys.js +5 -2
  5. package/dist/env-api-keys.js.map +1 -1
  6. package/dist/index.d.ts +1 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +1 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/models.d.ts +1 -1
  11. package/dist/models.d.ts.map +1 -1
  12. package/dist/models.generated.d.ts +497 -259
  13. package/dist/models.generated.d.ts.map +1 -1
  14. package/dist/models.generated.js +683 -445
  15. package/dist/models.generated.js.map +1 -1
  16. package/dist/models.js +2 -2
  17. package/dist/models.js.map +1 -1
  18. package/dist/providers/amazon-bedrock.d.ts.map +1 -1
  19. package/dist/providers/amazon-bedrock.js +5 -2
  20. package/dist/providers/amazon-bedrock.js.map +1 -1
  21. package/dist/providers/anthropic.d.ts.map +1 -1
  22. package/dist/providers/anthropic.js +5 -2
  23. package/dist/providers/anthropic.js.map +1 -1
  24. package/dist/providers/azure-openai-responses.d.ts.map +1 -1
  25. package/dist/providers/azure-openai-responses.js +5 -2
  26. package/dist/providers/azure-openai-responses.js.map +1 -1
  27. package/dist/providers/google-gemini-cli.d.ts.map +1 -1
  28. package/dist/providers/google-gemini-cli.js +30 -17
  29. package/dist/providers/google-gemini-cli.js.map +1 -1
  30. package/dist/providers/google-shared.d.ts.map +1 -1
  31. package/dist/providers/google-shared.js +16 -22
  32. package/dist/providers/google-shared.js.map +1 -1
  33. package/dist/providers/google-vertex.d.ts.map +1 -1
  34. package/dist/providers/google-vertex.js +26 -5
  35. package/dist/providers/google-vertex.js.map +1 -1
  36. package/dist/providers/google.d.ts.map +1 -1
  37. package/dist/providers/google.js +5 -2
  38. package/dist/providers/google.js.map +1 -1
  39. package/dist/providers/mistral.d.ts +22 -0
  40. package/dist/providers/mistral.d.ts.map +1 -0
  41. package/dist/providers/mistral.js +498 -0
  42. package/dist/providers/mistral.js.map +1 -0
  43. package/dist/providers/openai-codex-responses.d.ts.map +1 -1
  44. package/dist/providers/openai-codex-responses.js +6 -3
  45. package/dist/providers/openai-codex-responses.js.map +1 -1
  46. package/dist/providers/openai-completions.d.ts.map +1 -1
  47. package/dist/providers/openai-completions.js +44 -67
  48. package/dist/providers/openai-completions.js.map +1 -1
  49. package/dist/providers/openai-responses-shared.d.ts.map +1 -1
  50. package/dist/providers/openai-responses-shared.js +36 -14
  51. package/dist/providers/openai-responses-shared.js.map +1 -1
  52. package/dist/providers/openai-responses.d.ts.map +1 -1
  53. package/dist/providers/openai-responses.js +5 -2
  54. package/dist/providers/openai-responses.js.map +1 -1
  55. package/dist/providers/register-builtins.d.ts +3 -2
  56. package/dist/providers/register-builtins.d.ts.map +1 -1
  57. package/dist/providers/register-builtins.js +6 -0
  58. package/dist/providers/register-builtins.js.map +1 -1
  59. package/dist/types.d.ts +9 -5
  60. package/dist/types.d.ts.map +1 -1
  61. package/dist/types.js.map +1 -1
  62. package/dist/utils/hash.d.ts +3 -0
  63. package/dist/utils/hash.d.ts.map +1 -0
  64. package/dist/utils/hash.js +14 -0
  65. package/dist/utils/hash.js.map +1 -0
  66. package/dist/utils/oauth/github-copilot.d.ts.map +1 -1
  67. package/dist/utils/oauth/github-copilot.js +23 -12
  68. package/dist/utils/oauth/github-copilot.js.map +1 -1
  69. package/dist/utils/overflow.d.ts +1 -1
  70. package/dist/utils/overflow.d.ts.map +1 -1
  71. package/dist/utils/overflow.js +5 -3
  72. package/dist/utils/overflow.js.map +1 -1
  73. package/package.json +6 -7
  74. package/oauth.d.ts +0 -1
  75. package/oauth.js +0 -1
@@ -87,40 +87,6 @@ export const MODELS = {
87
87
  contextWindow: 300000,
88
88
  maxTokens: 8192,
89
89
  },
90
- "amazon.titan-text-express-v1": {
91
- id: "amazon.titan-text-express-v1",
92
- name: "Titan Text G1 - Express",
93
- api: "bedrock-converse-stream",
94
- provider: "amazon-bedrock",
95
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
96
- reasoning: false,
97
- input: ["text"],
98
- cost: {
99
- input: 0.2,
100
- output: 0.6,
101
- cacheRead: 0,
102
- cacheWrite: 0,
103
- },
104
- contextWindow: 128000,
105
- maxTokens: 4096,
106
- },
107
- "amazon.titan-text-express-v1:0:8k": {
108
- id: "amazon.titan-text-express-v1:0:8k",
109
- name: "Titan Text G1 - Express",
110
- api: "bedrock-converse-stream",
111
- provider: "amazon-bedrock",
112
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
113
- reasoning: false,
114
- input: ["text"],
115
- cost: {
116
- input: 0.2,
117
- output: 0.6,
118
- cacheRead: 0,
119
- cacheWrite: 0,
120
- },
121
- contextWindow: 128000,
122
- maxTokens: 4096,
123
- },
124
90
  "anthropic.claude-3-5-haiku-20241022-v1:0": {
125
91
  id: "anthropic.claude-3-5-haiku-20241022-v1:0",
126
92
  name: "Claude Haiku 3.5",
@@ -206,40 +172,6 @@ export const MODELS = {
206
172
  contextWindow: 200000,
207
173
  maxTokens: 4096,
208
174
  },
209
- "anthropic.claude-3-opus-20240229-v1:0": {
210
- id: "anthropic.claude-3-opus-20240229-v1:0",
211
- name: "Claude Opus 3",
212
- api: "bedrock-converse-stream",
213
- provider: "amazon-bedrock",
214
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
215
- reasoning: false,
216
- input: ["text", "image"],
217
- cost: {
218
- input: 15,
219
- output: 75,
220
- cacheRead: 0,
221
- cacheWrite: 0,
222
- },
223
- contextWindow: 200000,
224
- maxTokens: 4096,
225
- },
226
- "anthropic.claude-3-sonnet-20240229-v1:0": {
227
- id: "anthropic.claude-3-sonnet-20240229-v1:0",
228
- name: "Claude Sonnet 3",
229
- api: "bedrock-converse-stream",
230
- provider: "amazon-bedrock",
231
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
232
- reasoning: false,
233
- input: ["text", "image"],
234
- cost: {
235
- input: 3,
236
- output: 15,
237
- cacheRead: 0,
238
- cacheWrite: 0,
239
- },
240
- contextWindow: 200000,
241
- maxTokens: 4096,
242
- },
243
175
  "anthropic.claude-haiku-4-5-20251001-v1:0": {
244
176
  id: "anthropic.claude-haiku-4-5-20251001-v1:0",
245
177
  name: "Claude Haiku 4.5",
@@ -376,40 +308,6 @@ export const MODELS = {
376
308
  contextWindow: 200000,
377
309
  maxTokens: 64000,
378
310
  },
379
- "cohere.command-r-plus-v1:0": {
380
- id: "cohere.command-r-plus-v1:0",
381
- name: "Command R+",
382
- api: "bedrock-converse-stream",
383
- provider: "amazon-bedrock",
384
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
385
- reasoning: false,
386
- input: ["text"],
387
- cost: {
388
- input: 3,
389
- output: 15,
390
- cacheRead: 0,
391
- cacheWrite: 0,
392
- },
393
- contextWindow: 128000,
394
- maxTokens: 4096,
395
- },
396
- "cohere.command-r-v1:0": {
397
- id: "cohere.command-r-v1:0",
398
- name: "Command R",
399
- api: "bedrock-converse-stream",
400
- provider: "amazon-bedrock",
401
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
402
- reasoning: false,
403
- input: ["text"],
404
- cost: {
405
- input: 0.5,
406
- output: 1.5,
407
- cacheRead: 0,
408
- cacheWrite: 0,
409
- },
410
- contextWindow: 128000,
411
- maxTokens: 4096,
412
- },
413
311
  "deepseek.r1-v1:0": {
414
312
  id: "deepseek.r1-v1:0",
415
313
  name: "DeepSeek-R1",
@@ -444,8 +342,8 @@ export const MODELS = {
444
342
  contextWindow: 163840,
445
343
  maxTokens: 81920,
446
344
  },
447
- "deepseek.v3.2-v1:0": {
448
- id: "deepseek.v3.2-v1:0",
345
+ "deepseek.v3.2": {
346
+ id: "deepseek.v3.2",
449
347
  name: "DeepSeek-V3.2",
450
348
  api: "bedrock-converse-stream",
451
349
  provider: "amazon-bedrock",
@@ -699,6 +597,23 @@ export const MODELS = {
699
597
  contextWindow: 128000,
700
598
  maxTokens: 4096,
701
599
  },
600
+ "meta.llama3-1-405b-instruct-v1:0": {
601
+ id: "meta.llama3-1-405b-instruct-v1:0",
602
+ name: "Llama 3.1 405B Instruct",
603
+ api: "bedrock-converse-stream",
604
+ provider: "amazon-bedrock",
605
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
606
+ reasoning: false,
607
+ input: ["text"],
608
+ cost: {
609
+ input: 2.4,
610
+ output: 2.4,
611
+ cacheRead: 0,
612
+ cacheWrite: 0,
613
+ },
614
+ contextWindow: 128000,
615
+ maxTokens: 4096,
616
+ },
702
617
  "meta.llama3-1-70b-instruct-v1:0": {
703
618
  id: "meta.llama3-1-70b-instruct-v1:0",
704
619
  name: "Llama 3.1 70B Instruct",
@@ -886,6 +801,40 @@ export const MODELS = {
886
801
  contextWindow: 204800,
887
802
  maxTokens: 131072,
888
803
  },
804
+ "mistral.devstral-2-123b": {
805
+ id: "mistral.devstral-2-123b",
806
+ name: "Devstral 2 123B",
807
+ api: "bedrock-converse-stream",
808
+ provider: "amazon-bedrock",
809
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
810
+ reasoning: false,
811
+ input: ["text"],
812
+ cost: {
813
+ input: 0.4,
814
+ output: 2,
815
+ cacheRead: 0,
816
+ cacheWrite: 0,
817
+ },
818
+ contextWindow: 256000,
819
+ maxTokens: 8192,
820
+ },
821
+ "mistral.magistral-small-2509": {
822
+ id: "mistral.magistral-small-2509",
823
+ name: "Magistral Small 1.2",
824
+ api: "bedrock-converse-stream",
825
+ provider: "amazon-bedrock",
826
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
827
+ reasoning: true,
828
+ input: ["text", "image"],
829
+ cost: {
830
+ input: 0.5,
831
+ output: 1.5,
832
+ cacheRead: 0,
833
+ cacheWrite: 0,
834
+ },
835
+ contextWindow: 128000,
836
+ maxTokens: 40000,
837
+ },
889
838
  "mistral.ministral-3-14b-instruct": {
890
839
  id: "mistral.ministral-3-14b-instruct",
891
840
  name: "Ministral 14B 3.0",
@@ -903,6 +852,23 @@ export const MODELS = {
903
852
  contextWindow: 128000,
904
853
  maxTokens: 4096,
905
854
  },
855
+ "mistral.ministral-3-3b-instruct": {
856
+ id: "mistral.ministral-3-3b-instruct",
857
+ name: "Ministral 3 3B",
858
+ api: "bedrock-converse-stream",
859
+ provider: "amazon-bedrock",
860
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
861
+ reasoning: false,
862
+ input: ["text", "image"],
863
+ cost: {
864
+ input: 0.1,
865
+ output: 0.1,
866
+ cacheRead: 0,
867
+ cacheWrite: 0,
868
+ },
869
+ contextWindow: 256000,
870
+ maxTokens: 8192,
871
+ },
906
872
  "mistral.ministral-3-8b-instruct": {
907
873
  id: "mistral.ministral-3-8b-instruct",
908
874
  name: "Ministral 3 8B",
@@ -920,22 +886,39 @@ export const MODELS = {
920
886
  contextWindow: 128000,
921
887
  maxTokens: 4096,
922
888
  },
923
- "mistral.mistral-large-2402-v1:0": {
924
- id: "mistral.mistral-large-2402-v1:0",
925
- name: "Mistral Large (24.02)",
889
+ "mistral.mistral-large-3-675b-instruct": {
890
+ id: "mistral.mistral-large-3-675b-instruct",
891
+ name: "Mistral Large 3",
926
892
  api: "bedrock-converse-stream",
927
893
  provider: "amazon-bedrock",
928
894
  baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
929
895
  reasoning: false,
930
- input: ["text"],
896
+ input: ["text", "image"],
931
897
  cost: {
932
898
  input: 0.5,
933
899
  output: 1.5,
934
900
  cacheRead: 0,
935
901
  cacheWrite: 0,
936
902
  },
903
+ contextWindow: 256000,
904
+ maxTokens: 8192,
905
+ },
906
+ "mistral.pixtral-large-2502-v1:0": {
907
+ id: "mistral.pixtral-large-2502-v1:0",
908
+ name: "Pixtral Large (25.02)",
909
+ api: "bedrock-converse-stream",
910
+ provider: "amazon-bedrock",
911
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
912
+ reasoning: false,
913
+ input: ["text", "image"],
914
+ cost: {
915
+ input: 2,
916
+ output: 6,
917
+ cacheRead: 0,
918
+ cacheWrite: 0,
919
+ },
937
920
  contextWindow: 128000,
938
- maxTokens: 4096,
921
+ maxTokens: 8192,
939
922
  },
940
923
  "mistral.voxtral-mini-3b-2507": {
941
924
  id: "mistral.voxtral-mini-3b-2507",
@@ -1022,6 +1005,23 @@ export const MODELS = {
1022
1005
  contextWindow: 128000,
1023
1006
  maxTokens: 4096,
1024
1007
  },
1008
+ "nvidia.nemotron-nano-3-30b": {
1009
+ id: "nvidia.nemotron-nano-3-30b",
1010
+ name: "NVIDIA Nemotron Nano 3 30B",
1011
+ api: "bedrock-converse-stream",
1012
+ provider: "amazon-bedrock",
1013
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
1014
+ reasoning: true,
1015
+ input: ["text"],
1016
+ cost: {
1017
+ input: 0.06,
1018
+ output: 0.24,
1019
+ cacheRead: 0,
1020
+ cacheWrite: 0,
1021
+ },
1022
+ contextWindow: 128000,
1023
+ maxTokens: 4096,
1024
+ },
1025
1025
  "nvidia.nemotron-nano-9b-v2": {
1026
1026
  id: "nvidia.nemotron-nano-9b-v2",
1027
1027
  name: "NVIDIA Nemotron Nano 9B v2",
@@ -1803,7 +1803,7 @@ export const MODELS = {
1803
1803
  cacheRead: 0.3,
1804
1804
  cacheWrite: 3.75,
1805
1805
  },
1806
- contextWindow: 200000,
1806
+ contextWindow: 1000000,
1807
1807
  maxTokens: 64000,
1808
1808
  },
1809
1809
  },
@@ -2298,7 +2298,7 @@ export const MODELS = {
2298
2298
  cacheRead: 0.25,
2299
2299
  cacheWrite: 0,
2300
2300
  },
2301
- contextWindow: 1050000,
2301
+ contextWindow: 272000,
2302
2302
  maxTokens: 128000,
2303
2303
  },
2304
2304
  "gpt-5.4-pro": {
@@ -2871,7 +2871,7 @@ export const MODELS = {
2871
2871
  cacheRead: 0,
2872
2872
  cacheWrite: 0,
2873
2873
  },
2874
- contextWindow: 128000,
2874
+ contextWindow: 264000,
2875
2875
  maxTokens: 64000,
2876
2876
  },
2877
2877
  "gpt-5.2-codex": {
@@ -2889,7 +2889,7 @@ export const MODELS = {
2889
2889
  cacheRead: 0,
2890
2890
  cacheWrite: 0,
2891
2891
  },
2892
- contextWindow: 272000,
2892
+ contextWindow: 400000,
2893
2893
  maxTokens: 128000,
2894
2894
  },
2895
2895
  "gpt-5.3-codex": {
@@ -3247,10 +3247,10 @@ export const MODELS = {
3247
3247
  reasoning: true,
3248
3248
  input: ["text", "image"],
3249
3249
  cost: {
3250
- input: 0,
3251
- output: 0,
3252
- cacheRead: 0,
3253
- cacheWrite: 0,
3250
+ input: 0.25,
3251
+ output: 1.5,
3252
+ cacheRead: 0.025,
3253
+ cacheWrite: 1,
3254
3254
  },
3255
3255
  contextWindow: 1048576,
3256
3256
  maxTokens: 65536,
@@ -3427,6 +3427,23 @@ export const MODELS = {
3427
3427
  contextWindow: 200000,
3428
3428
  maxTokens: 64000,
3429
3429
  },
3430
+ "claude-sonnet-4-6": {
3431
+ id: "claude-sonnet-4-6",
3432
+ name: "Claude Sonnet 4.6 (Antigravity)",
3433
+ api: "google-gemini-cli",
3434
+ provider: "google-antigravity",
3435
+ baseUrl: "https://daily-cloudcode-pa.sandbox.googleapis.com",
3436
+ reasoning: true,
3437
+ input: ["text", "image"],
3438
+ cost: {
3439
+ input: 3,
3440
+ output: 15,
3441
+ cacheRead: 0.3,
3442
+ cacheWrite: 3.75,
3443
+ },
3444
+ contextWindow: 200000,
3445
+ maxTokens: 64000,
3446
+ },
3430
3447
  "gemini-3-flash": {
3431
3448
  id: "gemini-3-flash",
3432
3449
  name: "Gemini 3 Flash (Antigravity)",
@@ -4568,10 +4585,10 @@ export const MODELS = {
4568
4585
  "mistral": {
4569
4586
  "codestral-latest": {
4570
4587
  id: "codestral-latest",
4571
- name: "Codestral",
4572
- api: "openai-completions",
4588
+ name: "Codestral (latest)",
4589
+ api: "mistral-conversations",
4573
4590
  provider: "mistral",
4574
- baseUrl: "https://api.mistral.ai/v1",
4591
+ baseUrl: "https://api.mistral.ai",
4575
4592
  reasoning: false,
4576
4593
  input: ["text"],
4577
4594
  cost: {
@@ -4586,9 +4603,9 @@ export const MODELS = {
4586
4603
  "devstral-2512": {
4587
4604
  id: "devstral-2512",
4588
4605
  name: "Devstral 2",
4589
- api: "openai-completions",
4606
+ api: "mistral-conversations",
4590
4607
  provider: "mistral",
4591
- baseUrl: "https://api.mistral.ai/v1",
4608
+ baseUrl: "https://api.mistral.ai",
4592
4609
  reasoning: false,
4593
4610
  input: ["text"],
4594
4611
  cost: {
@@ -4603,9 +4620,9 @@ export const MODELS = {
4603
4620
  "devstral-medium-2507": {
4604
4621
  id: "devstral-medium-2507",
4605
4622
  name: "Devstral Medium",
4606
- api: "openai-completions",
4623
+ api: "mistral-conversations",
4607
4624
  provider: "mistral",
4608
- baseUrl: "https://api.mistral.ai/v1",
4625
+ baseUrl: "https://api.mistral.ai",
4609
4626
  reasoning: false,
4610
4627
  input: ["text"],
4611
4628
  cost: {
@@ -4619,10 +4636,10 @@ export const MODELS = {
4619
4636
  },
4620
4637
  "devstral-medium-latest": {
4621
4638
  id: "devstral-medium-latest",
4622
- name: "Devstral 2",
4623
- api: "openai-completions",
4639
+ name: "Devstral 2 (latest)",
4640
+ api: "mistral-conversations",
4624
4641
  provider: "mistral",
4625
- baseUrl: "https://api.mistral.ai/v1",
4642
+ baseUrl: "https://api.mistral.ai",
4626
4643
  reasoning: false,
4627
4644
  input: ["text"],
4628
4645
  cost: {
@@ -4637,9 +4654,9 @@ export const MODELS = {
4637
4654
  "devstral-small-2505": {
4638
4655
  id: "devstral-small-2505",
4639
4656
  name: "Devstral Small 2505",
4640
- api: "openai-completions",
4657
+ api: "mistral-conversations",
4641
4658
  provider: "mistral",
4642
- baseUrl: "https://api.mistral.ai/v1",
4659
+ baseUrl: "https://api.mistral.ai",
4643
4660
  reasoning: false,
4644
4661
  input: ["text"],
4645
4662
  cost: {
@@ -4654,9 +4671,9 @@ export const MODELS = {
4654
4671
  "devstral-small-2507": {
4655
4672
  id: "devstral-small-2507",
4656
4673
  name: "Devstral Small",
4657
- api: "openai-completions",
4674
+ api: "mistral-conversations",
4658
4675
  provider: "mistral",
4659
- baseUrl: "https://api.mistral.ai/v1",
4676
+ baseUrl: "https://api.mistral.ai",
4660
4677
  reasoning: false,
4661
4678
  input: ["text"],
4662
4679
  cost: {
@@ -4671,9 +4688,9 @@ export const MODELS = {
4671
4688
  "labs-devstral-small-2512": {
4672
4689
  id: "labs-devstral-small-2512",
4673
4690
  name: "Devstral Small 2",
4674
- api: "openai-completions",
4691
+ api: "mistral-conversations",
4675
4692
  provider: "mistral",
4676
- baseUrl: "https://api.mistral.ai/v1",
4693
+ baseUrl: "https://api.mistral.ai",
4677
4694
  reasoning: false,
4678
4695
  input: ["text", "image"],
4679
4696
  cost: {
@@ -4687,10 +4704,10 @@ export const MODELS = {
4687
4704
  },
4688
4705
  "magistral-medium-latest": {
4689
4706
  id: "magistral-medium-latest",
4690
- name: "Magistral Medium",
4691
- api: "openai-completions",
4707
+ name: "Magistral Medium (latest)",
4708
+ api: "mistral-conversations",
4692
4709
  provider: "mistral",
4693
- baseUrl: "https://api.mistral.ai/v1",
4710
+ baseUrl: "https://api.mistral.ai",
4694
4711
  reasoning: true,
4695
4712
  input: ["text"],
4696
4713
  cost: {
@@ -4705,9 +4722,9 @@ export const MODELS = {
4705
4722
  "magistral-small": {
4706
4723
  id: "magistral-small",
4707
4724
  name: "Magistral Small",
4708
- api: "openai-completions",
4725
+ api: "mistral-conversations",
4709
4726
  provider: "mistral",
4710
- baseUrl: "https://api.mistral.ai/v1",
4727
+ baseUrl: "https://api.mistral.ai",
4711
4728
  reasoning: true,
4712
4729
  input: ["text"],
4713
4730
  cost: {
@@ -4721,10 +4738,10 @@ export const MODELS = {
4721
4738
  },
4722
4739
  "ministral-3b-latest": {
4723
4740
  id: "ministral-3b-latest",
4724
- name: "Ministral 3B",
4725
- api: "openai-completions",
4741
+ name: "Ministral 3B (latest)",
4742
+ api: "mistral-conversations",
4726
4743
  provider: "mistral",
4727
- baseUrl: "https://api.mistral.ai/v1",
4744
+ baseUrl: "https://api.mistral.ai",
4728
4745
  reasoning: false,
4729
4746
  input: ["text"],
4730
4747
  cost: {
@@ -4738,10 +4755,10 @@ export const MODELS = {
4738
4755
  },
4739
4756
  "ministral-8b-latest": {
4740
4757
  id: "ministral-8b-latest",
4741
- name: "Ministral 8B",
4742
- api: "openai-completions",
4758
+ name: "Ministral 8B (latest)",
4759
+ api: "mistral-conversations",
4743
4760
  provider: "mistral",
4744
- baseUrl: "https://api.mistral.ai/v1",
4761
+ baseUrl: "https://api.mistral.ai",
4745
4762
  reasoning: false,
4746
4763
  input: ["text"],
4747
4764
  cost: {
@@ -4756,9 +4773,9 @@ export const MODELS = {
4756
4773
  "mistral-large-2411": {
4757
4774
  id: "mistral-large-2411",
4758
4775
  name: "Mistral Large 2.1",
4759
- api: "openai-completions",
4776
+ api: "mistral-conversations",
4760
4777
  provider: "mistral",
4761
- baseUrl: "https://api.mistral.ai/v1",
4778
+ baseUrl: "https://api.mistral.ai",
4762
4779
  reasoning: false,
4763
4780
  input: ["text"],
4764
4781
  cost: {
@@ -4773,9 +4790,9 @@ export const MODELS = {
4773
4790
  "mistral-large-2512": {
4774
4791
  id: "mistral-large-2512",
4775
4792
  name: "Mistral Large 3",
4776
- api: "openai-completions",
4793
+ api: "mistral-conversations",
4777
4794
  provider: "mistral",
4778
- baseUrl: "https://api.mistral.ai/v1",
4795
+ baseUrl: "https://api.mistral.ai",
4779
4796
  reasoning: false,
4780
4797
  input: ["text", "image"],
4781
4798
  cost: {
@@ -4789,10 +4806,10 @@ export const MODELS = {
4789
4806
  },
4790
4807
  "mistral-large-latest": {
4791
4808
  id: "mistral-large-latest",
4792
- name: "Mistral Large",
4793
- api: "openai-completions",
4809
+ name: "Mistral Large (latest)",
4810
+ api: "mistral-conversations",
4794
4811
  provider: "mistral",
4795
- baseUrl: "https://api.mistral.ai/v1",
4812
+ baseUrl: "https://api.mistral.ai",
4796
4813
  reasoning: false,
4797
4814
  input: ["text", "image"],
4798
4815
  cost: {
@@ -4807,9 +4824,9 @@ export const MODELS = {
4807
4824
  "mistral-medium-2505": {
4808
4825
  id: "mistral-medium-2505",
4809
4826
  name: "Mistral Medium 3",
4810
- api: "openai-completions",
4827
+ api: "mistral-conversations",
4811
4828
  provider: "mistral",
4812
- baseUrl: "https://api.mistral.ai/v1",
4829
+ baseUrl: "https://api.mistral.ai",
4813
4830
  reasoning: false,
4814
4831
  input: ["text", "image"],
4815
4832
  cost: {
@@ -4824,9 +4841,9 @@ export const MODELS = {
4824
4841
  "mistral-medium-2508": {
4825
4842
  id: "mistral-medium-2508",
4826
4843
  name: "Mistral Medium 3.1",
4827
- api: "openai-completions",
4844
+ api: "mistral-conversations",
4828
4845
  provider: "mistral",
4829
- baseUrl: "https://api.mistral.ai/v1",
4846
+ baseUrl: "https://api.mistral.ai",
4830
4847
  reasoning: false,
4831
4848
  input: ["text", "image"],
4832
4849
  cost: {
@@ -4840,10 +4857,10 @@ export const MODELS = {
4840
4857
  },
4841
4858
  "mistral-medium-latest": {
4842
4859
  id: "mistral-medium-latest",
4843
- name: "Mistral Medium",
4844
- api: "openai-completions",
4860
+ name: "Mistral Medium (latest)",
4861
+ api: "mistral-conversations",
4845
4862
  provider: "mistral",
4846
- baseUrl: "https://api.mistral.ai/v1",
4863
+ baseUrl: "https://api.mistral.ai",
4847
4864
  reasoning: false,
4848
4865
  input: ["text", "image"],
4849
4866
  cost: {
@@ -4858,9 +4875,9 @@ export const MODELS = {
4858
4875
  "mistral-nemo": {
4859
4876
  id: "mistral-nemo",
4860
4877
  name: "Mistral Nemo",
4861
- api: "openai-completions",
4878
+ api: "mistral-conversations",
4862
4879
  provider: "mistral",
4863
- baseUrl: "https://api.mistral.ai/v1",
4880
+ baseUrl: "https://api.mistral.ai",
4864
4881
  reasoning: false,
4865
4882
  input: ["text"],
4866
4883
  cost: {
@@ -4875,9 +4892,9 @@ export const MODELS = {
4875
4892
  "mistral-small-2506": {
4876
4893
  id: "mistral-small-2506",
4877
4894
  name: "Mistral Small 3.2",
4878
- api: "openai-completions",
4895
+ api: "mistral-conversations",
4879
4896
  provider: "mistral",
4880
- baseUrl: "https://api.mistral.ai/v1",
4897
+ baseUrl: "https://api.mistral.ai",
4881
4898
  reasoning: false,
4882
4899
  input: ["text", "image"],
4883
4900
  cost: {
@@ -4891,10 +4908,10 @@ export const MODELS = {
4891
4908
  },
4892
4909
  "mistral-small-latest": {
4893
4910
  id: "mistral-small-latest",
4894
- name: "Mistral Small",
4895
- api: "openai-completions",
4911
+ name: "Mistral Small (latest)",
4912
+ api: "mistral-conversations",
4896
4913
  provider: "mistral",
4897
- baseUrl: "https://api.mistral.ai/v1",
4914
+ baseUrl: "https://api.mistral.ai",
4898
4915
  reasoning: false,
4899
4916
  input: ["text", "image"],
4900
4917
  cost: {
@@ -4909,9 +4926,9 @@ export const MODELS = {
4909
4926
  "open-mistral-7b": {
4910
4927
  id: "open-mistral-7b",
4911
4928
  name: "Mistral 7B",
4912
- api: "openai-completions",
4929
+ api: "mistral-conversations",
4913
4930
  provider: "mistral",
4914
- baseUrl: "https://api.mistral.ai/v1",
4931
+ baseUrl: "https://api.mistral.ai",
4915
4932
  reasoning: false,
4916
4933
  input: ["text"],
4917
4934
  cost: {
@@ -4926,9 +4943,9 @@ export const MODELS = {
4926
4943
  "open-mixtral-8x22b": {
4927
4944
  id: "open-mixtral-8x22b",
4928
4945
  name: "Mixtral 8x22B",
4929
- api: "openai-completions",
4946
+ api: "mistral-conversations",
4930
4947
  provider: "mistral",
4931
- baseUrl: "https://api.mistral.ai/v1",
4948
+ baseUrl: "https://api.mistral.ai",
4932
4949
  reasoning: false,
4933
4950
  input: ["text"],
4934
4951
  cost: {
@@ -4943,9 +4960,9 @@ export const MODELS = {
4943
4960
  "open-mixtral-8x7b": {
4944
4961
  id: "open-mixtral-8x7b",
4945
4962
  name: "Mixtral 8x7B",
4946
- api: "openai-completions",
4963
+ api: "mistral-conversations",
4947
4964
  provider: "mistral",
4948
- baseUrl: "https://api.mistral.ai/v1",
4965
+ baseUrl: "https://api.mistral.ai",
4949
4966
  reasoning: false,
4950
4967
  input: ["text"],
4951
4968
  cost: {
@@ -4960,9 +4977,9 @@ export const MODELS = {
4960
4977
  "pixtral-12b": {
4961
4978
  id: "pixtral-12b",
4962
4979
  name: "Pixtral 12B",
4963
- api: "openai-completions",
4980
+ api: "mistral-conversations",
4964
4981
  provider: "mistral",
4965
- baseUrl: "https://api.mistral.ai/v1",
4982
+ baseUrl: "https://api.mistral.ai",
4966
4983
  reasoning: false,
4967
4984
  input: ["text", "image"],
4968
4985
  cost: {
@@ -4976,10 +4993,10 @@ export const MODELS = {
4976
4993
  },
4977
4994
  "pixtral-large-latest": {
4978
4995
  id: "pixtral-large-latest",
4979
- name: "Pixtral Large",
4980
- api: "openai-completions",
4996
+ name: "Pixtral Large (latest)",
4997
+ api: "mistral-conversations",
4981
4998
  provider: "mistral",
4982
- baseUrl: "https://api.mistral.ai/v1",
4999
+ baseUrl: "https://api.mistral.ai",
4983
5000
  reasoning: false,
4984
5001
  input: ["text", "image"],
4985
5002
  cost: {
@@ -5483,7 +5500,7 @@ export const MODELS = {
5483
5500
  cacheRead: 0.25,
5484
5501
  cacheWrite: 0,
5485
5502
  },
5486
- contextWindow: 1050000,
5503
+ contextWindow: 272000,
5487
5504
  maxTokens: 128000,
5488
5505
  },
5489
5506
  "gpt-5.4-pro": {
@@ -5760,6 +5777,23 @@ export const MODELS = {
5760
5777
  contextWindow: 128000,
5761
5778
  maxTokens: 128000,
5762
5779
  },
5780
+ "gpt-5.4": {
5781
+ id: "gpt-5.4",
5782
+ name: "GPT-5.4",
5783
+ api: "openai-codex-responses",
5784
+ provider: "openai-codex",
5785
+ baseUrl: "https://chatgpt.com/backend-api",
5786
+ reasoning: true,
5787
+ input: ["text", "image"],
5788
+ cost: {
5789
+ input: 2.5,
5790
+ output: 15,
5791
+ cacheRead: 0.25,
5792
+ cacheWrite: 0,
5793
+ },
5794
+ contextWindow: 272000,
5795
+ maxTokens: 128000,
5796
+ },
5763
5797
  },
5764
5798
  "opencode": {
5765
5799
  "big-pickle": {
@@ -6187,23 +6221,6 @@ export const MODELS = {
6187
6221
  contextWindow: 400000,
6188
6222
  maxTokens: 128000,
6189
6223
  },
6190
- "gpt-5.3-codex-spark": {
6191
- id: "gpt-5.3-codex-spark",
6192
- name: "GPT-5.3 Codex Spark",
6193
- api: "openai-responses",
6194
- provider: "opencode",
6195
- baseUrl: "https://opencode.ai/zen/v1",
6196
- reasoning: true,
6197
- input: ["text"],
6198
- cost: {
6199
- input: 1.75,
6200
- output: 14,
6201
- cacheRead: 0.175,
6202
- cacheWrite: 0,
6203
- },
6204
- contextWindow: 128000,
6205
- maxTokens: 128000,
6206
- },
6207
6224
  "gpt-5.4": {
6208
6225
  id: "gpt-5.4",
6209
6226
  name: "GPT-5.4",
@@ -6218,7 +6235,7 @@ export const MODELS = {
6218
6235
  cacheRead: 0.25,
6219
6236
  cacheWrite: 0,
6220
6237
  },
6221
- contextWindow: 1050000,
6238
+ contextWindow: 272000,
6222
6239
  maxTokens: 128000,
6223
6240
  },
6224
6241
  "gpt-5.4-pro": {
@@ -6255,6 +6272,23 @@ export const MODELS = {
6255
6272
  contextWindow: 262144,
6256
6273
  maxTokens: 65536,
6257
6274
  },
6275
+ "mimo-v2-flash-free": {
6276
+ id: "mimo-v2-flash-free",
6277
+ name: "MiMo V2 Flash Free",
6278
+ api: "openai-completions",
6279
+ provider: "opencode",
6280
+ baseUrl: "https://opencode.ai/zen/v1",
6281
+ reasoning: true,
6282
+ input: ["text"],
6283
+ cost: {
6284
+ input: 0,
6285
+ output: 0,
6286
+ cacheRead: 0,
6287
+ cacheWrite: 0,
6288
+ },
6289
+ contextWindow: 262144,
6290
+ maxTokens: 65536,
6291
+ },
6258
6292
  "minimax-m2.1": {
6259
6293
  id: "minimax-m2.1",
6260
6294
  name: "MiniMax M2.1",
@@ -6306,6 +6340,23 @@ export const MODELS = {
6306
6340
  contextWindow: 204800,
6307
6341
  maxTokens: 131072,
6308
6342
  },
6343
+ "nemotron-3-super-free": {
6344
+ id: "nemotron-3-super-free",
6345
+ name: "Nemotron 3 Super Free",
6346
+ api: "openai-completions",
6347
+ provider: "opencode",
6348
+ baseUrl: "https://opencode.ai/zen/v1",
6349
+ reasoning: true,
6350
+ input: ["text"],
6351
+ cost: {
6352
+ input: 0,
6353
+ output: 0,
6354
+ cacheRead: 0,
6355
+ cacheWrite: 0,
6356
+ },
6357
+ contextWindow: 1000000,
6358
+ maxTokens: 128000,
6359
+ },
6309
6360
  },
6310
6361
  "opencode-go": {
6311
6362
  "glm-5": {
@@ -6871,6 +6922,23 @@ export const MODELS = {
6871
6922
  contextWindow: 262144,
6872
6923
  maxTokens: 32768,
6873
6924
  },
6925
+ "bytedance-seed/seed-2.0-lite": {
6926
+ id: "bytedance-seed/seed-2.0-lite",
6927
+ name: "ByteDance Seed: Seed-2.0-Lite",
6928
+ api: "openai-completions",
6929
+ provider: "openrouter",
6930
+ baseUrl: "https://openrouter.ai/api/v1",
6931
+ reasoning: true,
6932
+ input: ["text", "image"],
6933
+ cost: {
6934
+ input: 0.25,
6935
+ output: 2,
6936
+ cacheRead: 0,
6937
+ cacheWrite: 0,
6938
+ },
6939
+ contextWindow: 262144,
6940
+ maxTokens: 131072,
6941
+ },
6874
6942
  "bytedance-seed/seed-2.0-mini": {
6875
6943
  id: "bytedance-seed/seed-2.0-mini",
6876
6944
  name: "ByteDance Seed: Seed-2.0-Mini",
@@ -6950,11 +7018,11 @@ export const MODELS = {
6950
7018
  cost: {
6951
7019
  input: 0.19999999999999998,
6952
7020
  output: 0.77,
6953
- cacheRead: 0.13,
7021
+ cacheRead: 0.135,
6954
7022
  cacheWrite: 0,
6955
7023
  },
6956
7024
  contextWindow: 163840,
6957
- maxTokens: 163840,
7025
+ maxTokens: 4096,
6958
7026
  },
6959
7027
  "deepseek/deepseek-chat-v3.1": {
6960
7028
  id: "deepseek/deepseek-chat-v3.1",
@@ -7024,23 +7092,6 @@ export const MODELS = {
7024
7092
  contextWindow: 163840,
7025
7093
  maxTokens: 4096,
7026
7094
  },
7027
- "deepseek/deepseek-v3.1-terminus:exacto": {
7028
- id: "deepseek/deepseek-v3.1-terminus:exacto",
7029
- name: "DeepSeek: DeepSeek V3.1 Terminus (exacto)",
7030
- api: "openai-completions",
7031
- provider: "openrouter",
7032
- baseUrl: "https://openrouter.ai/api/v1",
7033
- reasoning: true,
7034
- input: ["text"],
7035
- cost: {
7036
- input: 0.21,
7037
- output: 0.7899999999999999,
7038
- cacheRead: 0.16799999999999998,
7039
- cacheWrite: 0,
7040
- },
7041
- contextWindow: 163840,
7042
- maxTokens: 4096,
7043
- },
7044
7095
  "deepseek/deepseek-v3.2": {
7045
7096
  id: "deepseek/deepseek-v3.2",
7046
7097
  name: "DeepSeek: DeepSeek V3.2",
@@ -7050,13 +7101,13 @@ export const MODELS = {
7050
7101
  reasoning: true,
7051
7102
  input: ["text"],
7052
7103
  cost: {
7053
- input: 0.25,
7054
- output: 0.39999999999999997,
7055
- cacheRead: 0,
7104
+ input: 0.26,
7105
+ output: 0.38,
7106
+ cacheRead: 0.13,
7056
7107
  cacheWrite: 0,
7057
7108
  },
7058
7109
  contextWindow: 163840,
7059
- maxTokens: 65536,
7110
+ maxTokens: 4096,
7060
7111
  },
7061
7112
  "deepseek/deepseek-v3.2-exp": {
7062
7113
  id: "deepseek/deepseek-v3.2-exp",
@@ -7322,9 +7373,9 @@ export const MODELS = {
7322
7373
  reasoning: false,
7323
7374
  input: ["text", "image"],
7324
7375
  cost: {
7325
- input: 0.04,
7326
- output: 0.15,
7327
- cacheRead: 0.02,
7376
+ input: 0.03,
7377
+ output: 0.11,
7378
+ cacheRead: 0.015,
7328
7379
  cacheWrite: 0,
7329
7380
  },
7330
7381
  contextWindow: 128000,
@@ -7449,23 +7500,6 @@ export const MODELS = {
7449
7500
  contextWindow: 8192,
7450
7501
  maxTokens: 16384,
7451
7502
  },
7452
- "meta-llama/llama-3.1-405b-instruct": {
7453
- id: "meta-llama/llama-3.1-405b-instruct",
7454
- name: "Meta: Llama 3.1 405B Instruct",
7455
- api: "openai-completions",
7456
- provider: "openrouter",
7457
- baseUrl: "https://openrouter.ai/api/v1",
7458
- reasoning: false,
7459
- input: ["text"],
7460
- cost: {
7461
- input: 4,
7462
- output: 4,
7463
- cacheRead: 0,
7464
- cacheWrite: 0,
7465
- },
7466
- contextWindow: 131000,
7467
- maxTokens: 4096,
7468
- },
7469
7503
  "meta-llama/llama-3.1-70b-instruct": {
7470
7504
  id: "meta-llama/llama-3.1-70b-instruct",
7471
7505
  name: "Meta: Llama 3.1 70B Instruct",
@@ -7628,13 +7662,13 @@ export const MODELS = {
7628
7662
  reasoning: true,
7629
7663
  input: ["text"],
7630
7664
  cost: {
7631
- input: 0.295,
7632
- output: 1.2,
7633
- cacheRead: 0.03,
7665
+ input: 0.27,
7666
+ output: 0.95,
7667
+ cacheRead: 0.0299999997,
7634
7668
  cacheWrite: 0,
7635
7669
  },
7636
7670
  contextWindow: 196608,
7637
- maxTokens: 196608,
7671
+ maxTokens: 4096,
7638
7672
  },
7639
7673
  "mistralai/codestral-2508": {
7640
7674
  id: "mistralai/codestral-2508",
@@ -8061,23 +8095,6 @@ export const MODELS = {
8061
8095
  contextWindow: 131072,
8062
8096
  maxTokens: 4096,
8063
8097
  },
8064
- "moonshotai/kimi-k2-0905:exacto": {
8065
- id: "moonshotai/kimi-k2-0905:exacto",
8066
- name: "MoonshotAI: Kimi K2 0905 (exacto)",
8067
- api: "openai-completions",
8068
- provider: "openrouter",
8069
- baseUrl: "https://openrouter.ai/api/v1",
8070
- reasoning: false,
8071
- input: ["text"],
8072
- cost: {
8073
- input: 0.6,
8074
- output: 2.5,
8075
- cacheRead: 0,
8076
- cacheWrite: 0,
8077
- },
8078
- contextWindow: 262144,
8079
- maxTokens: 4096,
8080
- },
8081
8098
  "moonshotai/kimi-k2-thinking": {
8082
8099
  id: "moonshotai/kimi-k2-thinking",
8083
8100
  name: "MoonshotAI: Kimi K2 Thinking",
@@ -8104,13 +8121,13 @@ export const MODELS = {
8104
8121
  reasoning: true,
8105
8122
  input: ["text", "image"],
8106
8123
  cost: {
8107
- input: 0.44999999999999996,
8108
- output: 2.2,
8109
- cacheRead: 0.22499999999999998,
8124
+ input: 0.41,
8125
+ output: 2.06,
8126
+ cacheRead: 0.07,
8110
8127
  cacheWrite: 0,
8111
8128
  },
8112
8129
  contextWindow: 262144,
8113
- maxTokens: 65535,
8130
+ maxTokens: 4096,
8114
8131
  },
8115
8132
  "nex-agi/deepseek-v3.1-nex-n1": {
8116
8133
  id: "nex-agi/deepseek-v3.1-nex-n1",
@@ -8197,6 +8214,23 @@ export const MODELS = {
8197
8214
  contextWindow: 256000,
8198
8215
  maxTokens: 4096,
8199
8216
  },
8217
+ "nvidia/nemotron-3-super-120b-a12b:free": {
8218
+ id: "nvidia/nemotron-3-super-120b-a12b:free",
8219
+ name: "NVIDIA: Nemotron 3 Super (free)",
8220
+ api: "openai-completions",
8221
+ provider: "openrouter",
8222
+ baseUrl: "https://openrouter.ai/api/v1",
8223
+ reasoning: true,
8224
+ input: ["text"],
8225
+ cost: {
8226
+ input: 0,
8227
+ output: 0,
8228
+ cacheRead: 0,
8229
+ cacheWrite: 0,
8230
+ },
8231
+ contextWindow: 262144,
8232
+ maxTokens: 262144,
8233
+ },
8200
8234
  "nvidia/nemotron-nano-12b-v2-vl:free": {
8201
8235
  id: "nvidia/nemotron-nano-12b-v2-vl:free",
8202
8236
  name: "NVIDIA: Nemotron Nano 12B 2 VL (free)",
@@ -8928,23 +8962,6 @@ export const MODELS = {
8928
8962
  contextWindow: 131072,
8929
8963
  maxTokens: 4096,
8930
8964
  },
8931
- "openai/gpt-oss-120b:exacto": {
8932
- id: "openai/gpt-oss-120b:exacto",
8933
- name: "OpenAI: gpt-oss-120b (exacto)",
8934
- api: "openai-completions",
8935
- provider: "openrouter",
8936
- baseUrl: "https://openrouter.ai/api/v1",
8937
- reasoning: true,
8938
- input: ["text"],
8939
- cost: {
8940
- input: 0.039,
8941
- output: 0.19,
8942
- cacheRead: 0,
8943
- cacheWrite: 0,
8944
- },
8945
- contextWindow: 131072,
8946
- maxTokens: 4096,
8947
- },
8948
8965
  "openai/gpt-oss-120b:free": {
8949
8966
  id: "openai/gpt-oss-120b:free",
8950
8967
  name: "OpenAI: gpt-oss-120b (free)",
@@ -9200,6 +9217,40 @@ export const MODELS = {
9200
9217
  contextWindow: 200000,
9201
9218
  maxTokens: 4096,
9202
9219
  },
9220
+ "openrouter/healer-alpha": {
9221
+ id: "openrouter/healer-alpha",
9222
+ name: "Healer Alpha",
9223
+ api: "openai-completions",
9224
+ provider: "openrouter",
9225
+ baseUrl: "https://openrouter.ai/api/v1",
9226
+ reasoning: true,
9227
+ input: ["text", "image"],
9228
+ cost: {
9229
+ input: 0,
9230
+ output: 0,
9231
+ cacheRead: 0,
9232
+ cacheWrite: 0,
9233
+ },
9234
+ contextWindow: 262144,
9235
+ maxTokens: 32000,
9236
+ },
9237
+ "openrouter/hunter-alpha": {
9238
+ id: "openrouter/hunter-alpha",
9239
+ name: "Hunter Alpha",
9240
+ api: "openai-completions",
9241
+ provider: "openrouter",
9242
+ baseUrl: "https://openrouter.ai/api/v1",
9243
+ reasoning: true,
9244
+ input: ["text"],
9245
+ cost: {
9246
+ input: 0,
9247
+ output: 0,
9248
+ cacheRead: 0,
9249
+ cacheWrite: 0,
9250
+ },
9251
+ contextWindow: 1048576,
9252
+ maxTokens: 32000,
9253
+ },
9203
9254
  "prime-intellect/intellect-3": {
9204
9255
  id: "prime-intellect/intellect-3",
9205
9256
  name: "Prime Intellect: INTELLECT-3",
@@ -9608,23 +9659,6 @@ export const MODELS = {
9608
9659
  contextWindow: 1000000,
9609
9660
  maxTokens: 65536,
9610
9661
  },
9611
- "qwen/qwen3-coder:exacto": {
9612
- id: "qwen/qwen3-coder:exacto",
9613
- name: "Qwen: Qwen3 Coder 480B A35B (exacto)",
9614
- api: "openai-completions",
9615
- provider: "openrouter",
9616
- baseUrl: "https://openrouter.ai/api/v1",
9617
- reasoning: false,
9618
- input: ["text"],
9619
- cost: {
9620
- input: 0.22,
9621
- output: 1.7999999999999998,
9622
- cacheRead: 0.022,
9623
- cacheWrite: 0,
9624
- },
9625
- contextWindow: 262144,
9626
- maxTokens: 65536,
9627
- },
9628
9662
  "qwen/qwen3-coder:free": {
9629
9663
  id: "qwen/qwen3-coder:free",
9630
9664
  name: "Qwen: Qwen3 Coder 480B A35B (free)",
@@ -9690,7 +9724,7 @@ export const MODELS = {
9690
9724
  cacheRead: 0,
9691
9725
  cacheWrite: 0,
9692
9726
  },
9693
- contextWindow: 262144,
9727
+ contextWindow: 131072,
9694
9728
  maxTokens: 4096,
9695
9729
  },
9696
9730
  "qwen/qwen3-next-80b-a3b-instruct:free": {
@@ -9719,13 +9753,13 @@ export const MODELS = {
9719
9753
  reasoning: true,
9720
9754
  input: ["text"],
9721
9755
  cost: {
9722
- input: 0.15,
9723
- output: 1.2,
9756
+ input: 0.0975,
9757
+ output: 0.78,
9724
9758
  cacheRead: 0,
9725
9759
  cacheWrite: 0,
9726
9760
  },
9727
- contextWindow: 128000,
9728
- maxTokens: 4096,
9761
+ contextWindow: 131072,
9762
+ maxTokens: 32768,
9729
9763
  },
9730
9764
  "qwen/qwen3-vl-235b-a22b-instruct": {
9731
9765
  id: "qwen/qwen3-vl-235b-a22b-instruct",
@@ -9753,8 +9787,8 @@ export const MODELS = {
9753
9787
  reasoning: true,
9754
9788
  input: ["text", "image"],
9755
9789
  cost: {
9756
- input: 0,
9757
- output: 0,
9790
+ input: 0.26,
9791
+ output: 2.6,
9758
9792
  cacheRead: 0,
9759
9793
  cacheWrite: 0,
9760
9794
  },
@@ -9787,8 +9821,8 @@ export const MODELS = {
9787
9821
  reasoning: true,
9788
9822
  input: ["text", "image"],
9789
9823
  cost: {
9790
- input: 0,
9791
- output: 0,
9824
+ input: 0.13,
9825
+ output: 1.56,
9792
9826
  cacheRead: 0,
9793
9827
  cacheWrite: 0,
9794
9828
  },
@@ -9914,6 +9948,23 @@ export const MODELS = {
9914
9948
  contextWindow: 262144,
9915
9949
  maxTokens: 65536,
9916
9950
  },
9951
+ "qwen/qwen3.5-9b": {
9952
+ id: "qwen/qwen3.5-9b",
9953
+ name: "Qwen: Qwen3.5-9B",
9954
+ api: "openai-completions",
9955
+ provider: "openrouter",
9956
+ baseUrl: "https://openrouter.ai/api/v1",
9957
+ reasoning: true,
9958
+ input: ["text", "image"],
9959
+ cost: {
9960
+ input: 0.049999999999999996,
9961
+ output: 0.15,
9962
+ cacheRead: 0,
9963
+ cacheWrite: 0,
9964
+ },
9965
+ contextWindow: 256000,
9966
+ maxTokens: 4096,
9967
+ },
9917
9968
  "qwen/qwen3.5-flash-02-23": {
9918
9969
  id: "qwen/qwen3.5-flash-02-23",
9919
9970
  name: "Qwen: Qwen3.5-Flash",
@@ -10008,13 +10059,13 @@ export const MODELS = {
10008
10059
  reasoning: false,
10009
10060
  input: ["text"],
10010
10061
  cost: {
10011
- input: 0.65,
10012
- output: 0.75,
10062
+ input: 0.85,
10063
+ output: 0.85,
10013
10064
  cacheRead: 0,
10014
10065
  cacheWrite: 0,
10015
10066
  },
10016
- contextWindow: 32768,
10017
- maxTokens: 32768,
10067
+ contextWindow: 131072,
10068
+ maxTokens: 16384,
10018
10069
  },
10019
10070
  "stepfun/step-3.5-flash": {
10020
10071
  id: "stepfun/step-3.5-flash",
@@ -10237,6 +10288,23 @@ export const MODELS = {
10237
10288
  contextWindow: 2000000,
10238
10289
  maxTokens: 30000,
10239
10290
  },
10291
+ "x-ai/grok-4.20-beta": {
10292
+ id: "x-ai/grok-4.20-beta",
10293
+ name: "xAI: Grok 4.20 Beta",
10294
+ api: "openai-completions",
10295
+ provider: "openrouter",
10296
+ baseUrl: "https://openrouter.ai/api/v1",
10297
+ reasoning: true,
10298
+ input: ["text", "image"],
10299
+ cost: {
10300
+ input: 2,
10301
+ output: 6,
10302
+ cacheRead: 0.19999999999999998,
10303
+ cacheWrite: 0,
10304
+ },
10305
+ contextWindow: 2000000,
10306
+ maxTokens: 4096,
10307
+ },
10240
10308
  "x-ai/grok-code-fast-1": {
10241
10309
  id: "x-ai/grok-code-fast-1",
10242
10310
  name: "xAI: Grok Code Fast 1",
@@ -10373,31 +10441,14 @@ export const MODELS = {
10373
10441
  contextWindow: 204800,
10374
10442
  maxTokens: 204800,
10375
10443
  },
10376
- "z-ai/glm-4.6:exacto": {
10377
- id: "z-ai/glm-4.6:exacto",
10378
- name: "Z.ai: GLM 4.6 (exacto)",
10444
+ "z-ai/glm-4.6v": {
10445
+ id: "z-ai/glm-4.6v",
10446
+ name: "Z.ai: GLM 4.6V",
10379
10447
  api: "openai-completions",
10380
10448
  provider: "openrouter",
10381
10449
  baseUrl: "https://openrouter.ai/api/v1",
10382
10450
  reasoning: true,
10383
- input: ["text"],
10384
- cost: {
10385
- input: 0.44,
10386
- output: 1.76,
10387
- cacheRead: 0.11,
10388
- cacheWrite: 0,
10389
- },
10390
- contextWindow: 204800,
10391
- maxTokens: 131072,
10392
- },
10393
- "z-ai/glm-4.6v": {
10394
- id: "z-ai/glm-4.6v",
10395
- name: "Z.ai: GLM 4.6V",
10396
- api: "openai-completions",
10397
- provider: "openrouter",
10398
- baseUrl: "https://openrouter.ai/api/v1",
10399
- reasoning: true,
10400
- input: ["text", "image"],
10451
+ input: ["text", "image"],
10401
10452
  cost: {
10402
10453
  input: 0.3,
10403
10454
  output: 0.8999999999999999,
@@ -10450,13 +10501,13 @@ export const MODELS = {
10450
10501
  reasoning: true,
10451
10502
  input: ["text"],
10452
10503
  cost: {
10453
- input: 0.7999999999999999,
10454
- output: 2.56,
10455
- cacheRead: 0.16,
10504
+ input: 0.6,
10505
+ output: 1.9,
10506
+ cacheRead: 0.119,
10456
10507
  cacheWrite: 0,
10457
10508
  },
10458
10509
  contextWindow: 202752,
10459
- maxTokens: 4096,
10510
+ maxTokens: 131072,
10460
10511
  },
10461
10512
  },
10462
10513
  "vercel-ai-gateway": {
@@ -10520,13 +10571,13 @@ export const MODELS = {
10520
10571
  reasoning: true,
10521
10572
  input: ["text"],
10522
10573
  cost: {
10523
- input: 0.09999999999999999,
10524
- output: 0.3,
10574
+ input: 0.29,
10575
+ output: 0.59,
10525
10576
  cacheRead: 0,
10526
10577
  cacheWrite: 0,
10527
10578
  },
10528
- contextWindow: 40960,
10529
- maxTokens: 16384,
10579
+ contextWindow: 131072,
10580
+ maxTokens: 40960,
10530
10581
  },
10531
10582
  "alibaba/qwen3-235b-a22b-thinking": {
10532
10583
  id: "alibaba/qwen3-235b-a22b-thinking",
@@ -10571,13 +10622,13 @@ export const MODELS = {
10571
10622
  reasoning: true,
10572
10623
  input: ["text"],
10573
10624
  cost: {
10574
- input: 0.07,
10575
- output: 0.27,
10625
+ input: 0.15,
10626
+ output: 0.6,
10576
10627
  cacheRead: 0,
10577
10628
  cacheWrite: 0,
10578
10629
  },
10579
- contextWindow: 160000,
10580
- maxTokens: 32768,
10630
+ contextWindow: 262144,
10631
+ maxTokens: 8192,
10581
10632
  },
10582
10633
  "alibaba/qwen3-coder-next": {
10583
10634
  id: "alibaba/qwen3-coder-next",
@@ -10585,7 +10636,7 @@ export const MODELS = {
10585
10636
  api: "anthropic-messages",
10586
10637
  provider: "vercel-ai-gateway",
10587
10638
  baseUrl: "https://ai-gateway.vercel.sh",
10588
- reasoning: true,
10639
+ reasoning: false,
10589
10640
  input: ["text"],
10590
10641
  cost: {
10591
10642
  input: 0.5,
@@ -10613,6 +10664,23 @@ export const MODELS = {
10613
10664
  contextWindow: 1000000,
10614
10665
  maxTokens: 65536,
10615
10666
  },
10667
+ "alibaba/qwen3-max": {
10668
+ id: "alibaba/qwen3-max",
10669
+ name: "Qwen3 Max",
10670
+ api: "anthropic-messages",
10671
+ provider: "vercel-ai-gateway",
10672
+ baseUrl: "https://ai-gateway.vercel.sh",
10673
+ reasoning: false,
10674
+ input: ["text"],
10675
+ cost: {
10676
+ input: 1.2,
10677
+ output: 6,
10678
+ cacheRead: 0.24,
10679
+ cacheWrite: 0,
10680
+ },
10681
+ contextWindow: 262144,
10682
+ maxTokens: 32768,
10683
+ },
10616
10684
  "alibaba/qwen3-max-preview": {
10617
10685
  id: "alibaba/qwen3-max-preview",
10618
10686
  name: "Qwen3 Max Preview",
@@ -10760,8 +10828,8 @@ export const MODELS = {
10760
10828
  cost: {
10761
10829
  input: 3,
10762
10830
  output: 15,
10763
- cacheRead: 0,
10764
- cacheWrite: 0,
10831
+ cacheRead: 0.3,
10832
+ cacheWrite: 3.75,
10765
10833
  },
10766
10834
  contextWindow: 200000,
10767
10835
  maxTokens: 8192,
@@ -10970,6 +11038,23 @@ export const MODELS = {
10970
11038
  contextWindow: 256000,
10971
11039
  maxTokens: 8000,
10972
11040
  },
11041
+ "deepseek/deepseek-r1": {
11042
+ id: "deepseek/deepseek-r1",
11043
+ name: "DeepSeek-R1",
11044
+ api: "anthropic-messages",
11045
+ provider: "vercel-ai-gateway",
11046
+ baseUrl: "https://ai-gateway.vercel.sh",
11047
+ reasoning: true,
11048
+ input: ["text"],
11049
+ cost: {
11050
+ input: 1.35,
11051
+ output: 5.4,
11052
+ cacheRead: 0,
11053
+ cacheWrite: 0,
11054
+ },
11055
+ contextWindow: 128000,
11056
+ maxTokens: 8192,
11057
+ },
10973
11058
  "deepseek/deepseek-v3": {
10974
11059
  id: "deepseek/deepseek-v3",
10975
11060
  name: "DeepSeek V3 0324",
@@ -10996,13 +11081,13 @@ export const MODELS = {
10996
11081
  reasoning: true,
10997
11082
  input: ["text"],
10998
11083
  cost: {
10999
- input: 0.21,
11000
- output: 0.7899999999999999,
11084
+ input: 0.5,
11085
+ output: 1.5,
11001
11086
  cacheRead: 0,
11002
11087
  cacheWrite: 0,
11003
11088
  },
11004
11089
  contextWindow: 163840,
11005
- maxTokens: 128000,
11090
+ maxTokens: 16384,
11006
11091
  },
11007
11092
  "deepseek/deepseek-v3.1-terminus": {
11008
11093
  id: "deepseek/deepseek-v3.1-terminus",
@@ -11055,6 +11140,40 @@ export const MODELS = {
11055
11140
  contextWindow: 128000,
11056
11141
  maxTokens: 64000,
11057
11142
  },
11143
+ "google/gemini-2.0-flash": {
11144
+ id: "google/gemini-2.0-flash",
11145
+ name: "Gemini 2.0 Flash",
11146
+ api: "anthropic-messages",
11147
+ provider: "vercel-ai-gateway",
11148
+ baseUrl: "https://ai-gateway.vercel.sh",
11149
+ reasoning: false,
11150
+ input: ["text", "image"],
11151
+ cost: {
11152
+ input: 0.15,
11153
+ output: 0.6,
11154
+ cacheRead: 0,
11155
+ cacheWrite: 0,
11156
+ },
11157
+ contextWindow: 1048576,
11158
+ maxTokens: 8192,
11159
+ },
11160
+ "google/gemini-2.0-flash-lite": {
11161
+ id: "google/gemini-2.0-flash-lite",
11162
+ name: "Gemini 2.0 Flash Lite",
11163
+ api: "anthropic-messages",
11164
+ provider: "vercel-ai-gateway",
11165
+ baseUrl: "https://ai-gateway.vercel.sh",
11166
+ reasoning: false,
11167
+ input: ["text", "image"],
11168
+ cost: {
11169
+ input: 0.075,
11170
+ output: 0.3,
11171
+ cacheRead: 0,
11172
+ cacheWrite: 0,
11173
+ },
11174
+ contextWindow: 1048576,
11175
+ maxTokens: 8192,
11176
+ },
11058
11177
  "google/gemini-2.5-flash": {
11059
11178
  id: "google/gemini-2.5-flash",
11060
11179
  name: "Gemini 2.5 Flash",
@@ -11062,11 +11181,11 @@ export const MODELS = {
11062
11181
  provider: "vercel-ai-gateway",
11063
11182
  baseUrl: "https://ai-gateway.vercel.sh",
11064
11183
  reasoning: true,
11065
- input: ["text"],
11184
+ input: ["text", "image"],
11066
11185
  cost: {
11067
11186
  input: 0.3,
11068
11187
  output: 2.5,
11069
- cacheRead: 0,
11188
+ cacheRead: 0.03,
11070
11189
  cacheWrite: 0,
11071
11190
  },
11072
11191
  contextWindow: 1000000,
@@ -11130,11 +11249,11 @@ export const MODELS = {
11130
11249
  provider: "vercel-ai-gateway",
11131
11250
  baseUrl: "https://ai-gateway.vercel.sh",
11132
11251
  reasoning: true,
11133
- input: ["text"],
11252
+ input: ["text", "image"],
11134
11253
  cost: {
11135
11254
  input: 1.25,
11136
11255
  output: 10,
11137
- cacheRead: 0,
11256
+ cacheRead: 0.125,
11138
11257
  cacheWrite: 0,
11139
11258
  },
11140
11259
  contextWindow: 1048576,
@@ -11155,7 +11274,7 @@ export const MODELS = {
11155
11274
  cacheWrite: 0,
11156
11275
  },
11157
11276
  contextWindow: 1000000,
11158
- maxTokens: 64000,
11277
+ maxTokens: 65000,
11159
11278
  },
11160
11279
  "google/gemini-3-pro-preview": {
11161
11280
  id: "google/gemini-3-pro-preview",
@@ -11257,7 +11376,7 @@ export const MODELS = {
11257
11376
  cacheWrite: 0,
11258
11377
  },
11259
11378
  contextWindow: 128000,
11260
- maxTokens: 8192,
11379
+ maxTokens: 100000,
11261
11380
  },
11262
11381
  "meituan/longcat-flash-thinking": {
11263
11382
  id: "meituan/longcat-flash-thinking",
@@ -11285,13 +11404,13 @@ export const MODELS = {
11285
11404
  reasoning: false,
11286
11405
  input: ["text"],
11287
11406
  cost: {
11288
- input: 0.39999999999999997,
11289
- output: 0.39999999999999997,
11407
+ input: 0.72,
11408
+ output: 0.72,
11290
11409
  cacheRead: 0,
11291
11410
  cacheWrite: 0,
11292
11411
  },
11293
- contextWindow: 131072,
11294
- maxTokens: 16384,
11412
+ contextWindow: 128000,
11413
+ maxTokens: 8192,
11295
11414
  },
11296
11415
  "meta/llama-3.1-8b": {
11297
11416
  id: "meta/llama-3.1-8b",
@@ -11302,12 +11421,12 @@ export const MODELS = {
11302
11421
  reasoning: false,
11303
11422
  input: ["text"],
11304
11423
  cost: {
11305
- input: 0.03,
11306
- output: 0.049999999999999996,
11424
+ input: 0.09999999999999999,
11425
+ output: 0.09999999999999999,
11307
11426
  cacheRead: 0,
11308
11427
  cacheWrite: 0,
11309
11428
  },
11310
- contextWindow: 131072,
11429
+ contextWindow: 128000,
11311
11430
  maxTokens: 16384,
11312
11431
  },
11313
11432
  "meta/llama-3.2-11b": {
@@ -11370,12 +11489,12 @@ export const MODELS = {
11370
11489
  reasoning: false,
11371
11490
  input: ["text", "image"],
11372
11491
  cost: {
11373
- input: 0.15,
11374
- output: 0.6,
11492
+ input: 0.24,
11493
+ output: 0.9700000000000001,
11375
11494
  cacheRead: 0,
11376
11495
  cacheWrite: 0,
11377
11496
  },
11378
- contextWindow: 131072,
11497
+ contextWindow: 128000,
11379
11498
  maxTokens: 8192,
11380
11499
  },
11381
11500
  "meta/llama-4-scout": {
@@ -11387,12 +11506,12 @@ export const MODELS = {
11387
11506
  reasoning: false,
11388
11507
  input: ["text", "image"],
11389
11508
  cost: {
11390
- input: 0.08,
11391
- output: 0.3,
11509
+ input: 0.16999999999999998,
11510
+ output: 0.66,
11392
11511
  cacheRead: 0,
11393
11512
  cacheWrite: 0,
11394
11513
  },
11395
- contextWindow: 131072,
11514
+ contextWindow: 128000,
11396
11515
  maxTokens: 8192,
11397
11516
  },
11398
11517
  "minimax/minimax-m2": {
@@ -11423,8 +11542,8 @@ export const MODELS = {
11423
11542
  cost: {
11424
11543
  input: 0.3,
11425
11544
  output: 1.2,
11426
- cacheRead: 0.15,
11427
- cacheWrite: 0,
11545
+ cacheRead: 0.03,
11546
+ cacheWrite: 0.375,
11428
11547
  },
11429
11548
  contextWindow: 204800,
11430
11549
  maxTokens: 131072,
@@ -11463,6 +11582,23 @@ export const MODELS = {
11463
11582
  contextWindow: 204800,
11464
11583
  maxTokens: 131000,
11465
11584
  },
11585
+ "minimax/minimax-m2.5-highspeed": {
11586
+ id: "minimax/minimax-m2.5-highspeed",
11587
+ name: "MiniMax M2.5 High Speed",
11588
+ api: "anthropic-messages",
11589
+ provider: "vercel-ai-gateway",
11590
+ baseUrl: "https://ai-gateway.vercel.sh",
11591
+ reasoning: true,
11592
+ input: ["text"],
11593
+ cost: {
11594
+ input: 0.6,
11595
+ output: 2.4,
11596
+ cacheRead: 0.03,
11597
+ cacheWrite: 0.375,
11598
+ },
11599
+ contextWindow: 4096,
11600
+ maxTokens: 4096,
11601
+ },
11466
11602
  "mistral/codestral": {
11467
11603
  id: "mistral/codestral",
11468
11604
  name: "Mistral Codestral",
@@ -11642,14 +11778,31 @@ export const MODELS = {
11642
11778
  reasoning: false,
11643
11779
  input: ["text"],
11644
11780
  cost: {
11645
- input: 0.5,
11646
- output: 2,
11781
+ input: 0.6,
11782
+ output: 2.5,
11647
11783
  cacheRead: 0,
11648
11784
  cacheWrite: 0,
11649
11785
  },
11650
11786
  contextWindow: 131072,
11651
11787
  maxTokens: 16384,
11652
11788
  },
11789
+ "moonshotai/kimi-k2-0905": {
11790
+ id: "moonshotai/kimi-k2-0905",
11791
+ name: "Kimi K2 0905",
11792
+ api: "anthropic-messages",
11793
+ provider: "vercel-ai-gateway",
11794
+ baseUrl: "https://ai-gateway.vercel.sh",
11795
+ reasoning: false,
11796
+ input: ["text"],
11797
+ cost: {
11798
+ input: 0.6,
11799
+ output: 2.5,
11800
+ cacheRead: 0,
11801
+ cacheWrite: 0,
11802
+ },
11803
+ contextWindow: 256000,
11804
+ maxTokens: 16384,
11805
+ },
11653
11806
  "moonshotai/kimi-k2-thinking": {
11654
11807
  id: "moonshotai/kimi-k2-thinking",
11655
11808
  name: "Kimi K2 Thinking",
@@ -11659,13 +11812,13 @@ export const MODELS = {
11659
11812
  reasoning: true,
11660
11813
  input: ["text"],
11661
11814
  cost: {
11662
- input: 0.47,
11663
- output: 2,
11664
- cacheRead: 0.14100000000000001,
11815
+ input: 0.6,
11816
+ output: 2.5,
11817
+ cacheRead: 0.15,
11665
11818
  cacheWrite: 0,
11666
11819
  },
11667
- contextWindow: 216144,
11668
- maxTokens: 216144,
11820
+ contextWindow: 262114,
11821
+ maxTokens: 262114,
11669
11822
  },
11670
11823
  "moonshotai/kimi-k2-thinking-turbo": {
11671
11824
  id: "moonshotai/kimi-k2-thinking-turbo",
@@ -11710,13 +11863,13 @@ export const MODELS = {
11710
11863
  reasoning: true,
11711
11864
  input: ["text", "image"],
11712
11865
  cost: {
11713
- input: 0.5,
11714
- output: 2.8,
11715
- cacheRead: 0,
11866
+ input: 0.6,
11867
+ output: 3,
11868
+ cacheRead: 0.09999999999999999,
11716
11869
  cacheWrite: 0,
11717
11870
  },
11718
- contextWindow: 256000,
11719
- maxTokens: 256000,
11871
+ contextWindow: 262114,
11872
+ maxTokens: 262114,
11720
11873
  },
11721
11874
  "nvidia/nemotron-nano-12b-v2-vl": {
11722
11875
  id: "nvidia/nemotron-nano-12b-v2-vl",
@@ -11744,31 +11897,14 @@ export const MODELS = {
11744
11897
  reasoning: true,
11745
11898
  input: ["text"],
11746
11899
  cost: {
11747
- input: 0.04,
11748
- output: 0.16,
11900
+ input: 0.06,
11901
+ output: 0.22999999999999998,
11749
11902
  cacheRead: 0,
11750
11903
  cacheWrite: 0,
11751
11904
  },
11752
11905
  contextWindow: 131072,
11753
11906
  maxTokens: 131072,
11754
11907
  },
11755
- "openai/codex-mini": {
11756
- id: "openai/codex-mini",
11757
- name: "Codex Mini",
11758
- api: "anthropic-messages",
11759
- provider: "vercel-ai-gateway",
11760
- baseUrl: "https://ai-gateway.vercel.sh",
11761
- reasoning: true,
11762
- input: ["text", "image"],
11763
- cost: {
11764
- input: 1.5,
11765
- output: 6,
11766
- cacheRead: 0.375,
11767
- cacheWrite: 0,
11768
- },
11769
- contextWindow: 200000,
11770
- maxTokens: 100000,
11771
- },
11772
11908
  "openai/gpt-4-turbo": {
11773
11909
  id: "openai/gpt-4-turbo",
11774
11910
  name: "GPT-4 Turbo",
@@ -11831,7 +11967,7 @@ export const MODELS = {
11831
11967
  cost: {
11832
11968
  input: 0.09999999999999999,
11833
11969
  output: 0.39999999999999997,
11834
- cacheRead: 0.03,
11970
+ cacheRead: 0.024999999999999998,
11835
11971
  cacheWrite: 0,
11836
11972
  },
11837
11973
  contextWindow: 1047576,
@@ -11882,7 +12018,7 @@ export const MODELS = {
11882
12018
  cost: {
11883
12019
  input: 1.25,
11884
12020
  output: 10,
11885
- cacheRead: 0.13,
12021
+ cacheRead: 0.125,
11886
12022
  cacheWrite: 0,
11887
12023
  },
11888
12024
  contextWindow: 400000,
@@ -11912,11 +12048,11 @@ export const MODELS = {
11912
12048
  provider: "vercel-ai-gateway",
11913
12049
  baseUrl: "https://ai-gateway.vercel.sh",
11914
12050
  reasoning: true,
11915
- input: ["text", "image"],
12051
+ input: ["text"],
11916
12052
  cost: {
11917
12053
  input: 1.25,
11918
12054
  output: 10,
11919
- cacheRead: 0.13,
12055
+ cacheRead: 0.125,
11920
12056
  cacheWrite: 0,
11921
12057
  },
11922
12058
  contextWindow: 400000,
@@ -11933,7 +12069,7 @@ export const MODELS = {
11933
12069
  cost: {
11934
12070
  input: 0.25,
11935
12071
  output: 2,
11936
- cacheRead: 0.03,
12072
+ cacheRead: 0.024999999999999998,
11937
12073
  cacheWrite: 0,
11938
12074
  },
11939
12075
  contextWindow: 400000,
@@ -11950,7 +12086,7 @@ export const MODELS = {
11950
12086
  cost: {
11951
12087
  input: 0.049999999999999996,
11952
12088
  output: 0.39999999999999997,
11953
- cacheRead: 0.01,
12089
+ cacheRead: 0.005,
11954
12090
  cacheWrite: 0,
11955
12091
  },
11956
12092
  contextWindow: 400000,
@@ -11984,7 +12120,7 @@ export const MODELS = {
11984
12120
  cost: {
11985
12121
  input: 1.25,
11986
12122
  output: 10,
11987
- cacheRead: 0.13,
12123
+ cacheRead: 0.125,
11988
12124
  cacheWrite: 0,
11989
12125
  },
11990
12126
  contextWindow: 400000,
@@ -12035,7 +12171,7 @@ export const MODELS = {
12035
12171
  cost: {
12036
12172
  input: 1.25,
12037
12173
  output: 10,
12038
- cacheRead: 0.13,
12174
+ cacheRead: 0.125,
12039
12175
  cacheWrite: 0,
12040
12176
  },
12041
12177
  contextWindow: 128000,
@@ -12052,7 +12188,7 @@ export const MODELS = {
12052
12188
  cost: {
12053
12189
  input: 1.25,
12054
12190
  output: 10,
12055
- cacheRead: 0.13,
12191
+ cacheRead: 0.125,
12056
12192
  cacheWrite: 0,
12057
12193
  },
12058
12194
  contextWindow: 400000,
@@ -12069,7 +12205,7 @@ export const MODELS = {
12069
12205
  cost: {
12070
12206
  input: 1.75,
12071
12207
  output: 14,
12072
- cacheRead: 0.18,
12208
+ cacheRead: 0.175,
12073
12209
  cacheWrite: 0,
12074
12210
  },
12075
12211
  contextWindow: 400000,
@@ -12194,23 +12330,6 @@ export const MODELS = {
12194
12330
  contextWindow: 1050000,
12195
12331
  maxTokens: 128000,
12196
12332
  },
12197
- "openai/gpt-oss-120b": {
12198
- id: "openai/gpt-oss-120b",
12199
- name: "gpt-oss-120b",
12200
- api: "anthropic-messages",
12201
- provider: "vercel-ai-gateway",
12202
- baseUrl: "https://ai-gateway.vercel.sh",
12203
- reasoning: true,
12204
- input: ["text"],
12205
- cost: {
12206
- input: 0.09999999999999999,
12207
- output: 0.5,
12208
- cacheRead: 0,
12209
- cacheWrite: 0,
12210
- },
12211
- contextWindow: 131072,
12212
- maxTokens: 131072,
12213
- },
12214
12333
  "openai/gpt-oss-20b": {
12215
12334
  id: "openai/gpt-oss-20b",
12216
12335
  name: "gpt-oss-20b",
@@ -12528,7 +12647,7 @@ export const MODELS = {
12528
12647
  cost: {
12529
12648
  input: 3,
12530
12649
  output: 15,
12531
- cacheRead: 0,
12650
+ cacheRead: 0.75,
12532
12651
  cacheWrite: 0,
12533
12652
  },
12534
12653
  contextWindow: 256000,
@@ -12602,6 +12721,57 @@ export const MODELS = {
12602
12721
  contextWindow: 2000000,
12603
12722
  maxTokens: 30000,
12604
12723
  },
12724
+ "xai/grok-4.20-multi-agent-beta": {
12725
+ id: "xai/grok-4.20-multi-agent-beta",
12726
+ name: "Grok 4.20 Multi Agent Beta",
12727
+ api: "anthropic-messages",
12728
+ provider: "vercel-ai-gateway",
12729
+ baseUrl: "https://ai-gateway.vercel.sh",
12730
+ reasoning: true,
12731
+ input: ["text"],
12732
+ cost: {
12733
+ input: 2,
12734
+ output: 6,
12735
+ cacheRead: 0.19999999999999998,
12736
+ cacheWrite: 0,
12737
+ },
12738
+ contextWindow: 2000000,
12739
+ maxTokens: 2000000,
12740
+ },
12741
+ "xai/grok-4.20-non-reasoning-beta": {
12742
+ id: "xai/grok-4.20-non-reasoning-beta",
12743
+ name: "Grok 4.20 Beta Non-Reasoning",
12744
+ api: "anthropic-messages",
12745
+ provider: "vercel-ai-gateway",
12746
+ baseUrl: "https://ai-gateway.vercel.sh",
12747
+ reasoning: false,
12748
+ input: ["text", "image"],
12749
+ cost: {
12750
+ input: 2,
12751
+ output: 6,
12752
+ cacheRead: 0.19999999999999998,
12753
+ cacheWrite: 0,
12754
+ },
12755
+ contextWindow: 2000000,
12756
+ maxTokens: 2000000,
12757
+ },
12758
+ "xai/grok-4.20-reasoning-beta": {
12759
+ id: "xai/grok-4.20-reasoning-beta",
12760
+ name: "Grok 4.20 Beta Reasoning",
12761
+ api: "anthropic-messages",
12762
+ provider: "vercel-ai-gateway",
12763
+ baseUrl: "https://ai-gateway.vercel.sh",
12764
+ reasoning: true,
12765
+ input: ["text", "image"],
12766
+ cost: {
12767
+ input: 2,
12768
+ output: 6,
12769
+ cacheRead: 0.19999999999999998,
12770
+ cacheWrite: 0,
12771
+ },
12772
+ contextWindow: 2000000,
12773
+ maxTokens: 2000000,
12774
+ },
12605
12775
  "xai/grok-code-fast-1": {
12606
12776
  id: "xai/grok-code-fast-1",
12607
12777
  name: "Grok Code Fast 1",
@@ -12628,9 +12798,9 @@ export const MODELS = {
12628
12798
  reasoning: true,
12629
12799
  input: ["text"],
12630
12800
  cost: {
12631
- input: 0.09,
12632
- output: 0.29,
12633
- cacheRead: 0,
12801
+ input: 0.09999999999999999,
12802
+ output: 0.3,
12803
+ cacheRead: 0.02,
12634
12804
  cacheWrite: 0,
12635
12805
  },
12636
12806
  contextWindow: 262144,
@@ -12647,11 +12817,11 @@ export const MODELS = {
12647
12817
  cost: {
12648
12818
  input: 0.6,
12649
12819
  output: 2.2,
12650
- cacheRead: 0,
12820
+ cacheRead: 0.11,
12651
12821
  cacheWrite: 0,
12652
12822
  },
12653
- contextWindow: 131072,
12654
- maxTokens: 131072,
12823
+ contextWindow: 128000,
12824
+ maxTokens: 96000,
12655
12825
  },
12656
12826
  "zai/glm-4.5-air": {
12657
12827
  id: "zai/glm-4.5-air",
@@ -12676,16 +12846,16 @@ export const MODELS = {
12676
12846
  api: "anthropic-messages",
12677
12847
  provider: "vercel-ai-gateway",
12678
12848
  baseUrl: "https://ai-gateway.vercel.sh",
12679
- reasoning: true,
12849
+ reasoning: false,
12680
12850
  input: ["text", "image"],
12681
12851
  cost: {
12682
12852
  input: 0.6,
12683
12853
  output: 1.7999999999999998,
12684
- cacheRead: 0,
12854
+ cacheRead: 0.11,
12685
12855
  cacheWrite: 0,
12686
12856
  },
12687
- contextWindow: 65536,
12688
- maxTokens: 16384,
12857
+ contextWindow: 66000,
12858
+ maxTokens: 16000,
12689
12859
  },
12690
12860
  "zai/glm-4.6": {
12691
12861
  id: "zai/glm-4.6",
@@ -12747,14 +12917,31 @@ export const MODELS = {
12747
12917
  reasoning: true,
12748
12918
  input: ["text"],
12749
12919
  cost: {
12750
- input: 0.43,
12751
- output: 1.75,
12752
- cacheRead: 0.08,
12920
+ input: 0.6,
12921
+ output: 2.2,
12922
+ cacheRead: 0,
12753
12923
  cacheWrite: 0,
12754
12924
  },
12755
- contextWindow: 202752,
12925
+ contextWindow: 200000,
12756
12926
  maxTokens: 120000,
12757
12927
  },
12928
+ "zai/glm-4.7-flash": {
12929
+ id: "zai/glm-4.7-flash",
12930
+ name: "GLM 4.7 Flash",
12931
+ api: "anthropic-messages",
12932
+ provider: "vercel-ai-gateway",
12933
+ baseUrl: "https://ai-gateway.vercel.sh",
12934
+ reasoning: true,
12935
+ input: ["text"],
12936
+ cost: {
12937
+ input: 0.07,
12938
+ output: 0.39999999999999997,
12939
+ cacheRead: 0,
12940
+ cacheWrite: 0,
12941
+ },
12942
+ contextWindow: 200000,
12943
+ maxTokens: 131000,
12944
+ },
12758
12945
  "zai/glm-4.7-flashx": {
12759
12946
  id: "zai/glm-4.7-flashx",
12760
12947
  name: "GLM 4.7 FlashX",
@@ -12774,7 +12961,7 @@ export const MODELS = {
12774
12961
  },
12775
12962
  "zai/glm-5": {
12776
12963
  id: "zai/glm-5",
12777
- name: "GLM-5",
12964
+ name: "GLM 5",
12778
12965
  api: "anthropic-messages",
12779
12966
  provider: "vercel-ai-gateway",
12780
12967
  baseUrl: "https://ai-gateway.vercel.sh",
@@ -12787,7 +12974,7 @@ export const MODELS = {
12787
12974
  cacheWrite: 0,
12788
12975
  },
12789
12976
  contextWindow: 202800,
12790
- maxTokens: 131072,
12977
+ maxTokens: 131100,
12791
12978
  },
12792
12979
  },
12793
12980
  "xai": {
@@ -13114,6 +13301,57 @@ export const MODELS = {
13114
13301
  contextWindow: 2000000,
13115
13302
  maxTokens: 30000,
13116
13303
  },
13304
+ "grok-4.20-beta-latest-non-reasoning": {
13305
+ id: "grok-4.20-beta-latest-non-reasoning",
13306
+ name: "Grok 4.20 Beta (Non-Reasoning)",
13307
+ api: "openai-completions",
13308
+ provider: "xai",
13309
+ baseUrl: "https://api.x.ai/v1",
13310
+ reasoning: false,
13311
+ input: ["text", "image"],
13312
+ cost: {
13313
+ input: 2,
13314
+ output: 6,
13315
+ cacheRead: 0.2,
13316
+ cacheWrite: 0,
13317
+ },
13318
+ contextWindow: 2000000,
13319
+ maxTokens: 30000,
13320
+ },
13321
+ "grok-4.20-beta-latest-reasoning": {
13322
+ id: "grok-4.20-beta-latest-reasoning",
13323
+ name: "Grok 4.20 Beta (Reasoning)",
13324
+ api: "openai-completions",
13325
+ provider: "xai",
13326
+ baseUrl: "https://api.x.ai/v1",
13327
+ reasoning: true,
13328
+ input: ["text", "image"],
13329
+ cost: {
13330
+ input: 2,
13331
+ output: 6,
13332
+ cacheRead: 0.2,
13333
+ cacheWrite: 0,
13334
+ },
13335
+ contextWindow: 2000000,
13336
+ maxTokens: 30000,
13337
+ },
13338
+ "grok-4.20-multi-agent-beta-latest": {
13339
+ id: "grok-4.20-multi-agent-beta-latest",
13340
+ name: "Grok 4.20 Multi-Agent Beta",
13341
+ api: "openai-completions",
13342
+ provider: "xai",
13343
+ baseUrl: "https://api.x.ai/v1",
13344
+ reasoning: true,
13345
+ input: ["text", "image"],
13346
+ cost: {
13347
+ input: 2,
13348
+ output: 6,
13349
+ cacheRead: 0.2,
13350
+ cacheWrite: 0,
13351
+ },
13352
+ contextWindow: 2000000,
13353
+ maxTokens: 30000,
13354
+ },
13117
13355
  "grok-beta": {
13118
13356
  id: "grok-beta",
13119
13357
  name: "Grok Beta",