@earendil-works/pi-ai 0.75.5 → 0.77.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 (59) hide show
  1. package/dist/models.generated.d.ts +269 -105
  2. package/dist/models.generated.d.ts.map +1 -1
  3. package/dist/models.generated.js +332 -200
  4. package/dist/models.generated.js.map +1 -1
  5. package/dist/providers/amazon-bedrock.d.ts +1 -1
  6. package/dist/providers/amazon-bedrock.d.ts.map +1 -1
  7. package/dist/providers/amazon-bedrock.js +2 -2
  8. package/dist/providers/amazon-bedrock.js.map +1 -1
  9. package/dist/providers/anthropic.d.ts.map +1 -1
  10. package/dist/providers/anthropic.js +16 -9
  11. package/dist/providers/anthropic.js.map +1 -1
  12. package/dist/providers/azure-openai-responses.d.ts.map +1 -1
  13. package/dist/providers/azure-openai-responses.js +1 -1
  14. package/dist/providers/azure-openai-responses.js.map +1 -1
  15. package/dist/providers/images/openrouter.d.ts.map +1 -1
  16. package/dist/providers/images/openrouter.js +1 -1
  17. package/dist/providers/images/openrouter.js.map +1 -1
  18. package/dist/providers/openai-codex-responses.d.ts.map +1 -1
  19. package/dist/providers/openai-codex-responses.js +148 -76
  20. package/dist/providers/openai-codex-responses.js.map +1 -1
  21. package/dist/providers/openai-completions.d.ts.map +1 -1
  22. package/dist/providers/openai-completions.js +10 -1
  23. package/dist/providers/openai-completions.js.map +1 -1
  24. package/dist/providers/openai-responses-shared.d.ts.map +1 -1
  25. package/dist/providers/openai-responses-shared.js +4 -1
  26. package/dist/providers/openai-responses-shared.js.map +1 -1
  27. package/dist/providers/openai-responses.d.ts.map +1 -1
  28. package/dist/providers/openai-responses.js +1 -1
  29. package/dist/providers/openai-responses.js.map +1 -1
  30. package/dist/providers/simple-options.d.ts.map +1 -1
  31. package/dist/providers/simple-options.js +1 -0
  32. package/dist/providers/simple-options.js.map +1 -1
  33. package/dist/types.d.ts +10 -2
  34. package/dist/types.d.ts.map +1 -1
  35. package/dist/types.js.map +1 -1
  36. package/dist/utils/abort-signals.d.ts +6 -0
  37. package/dist/utils/abort-signals.d.ts.map +1 -0
  38. package/dist/utils/abort-signals.js +34 -0
  39. package/dist/utils/abort-signals.js.map +1 -0
  40. package/dist/utils/oauth/device-code.d.ts +9 -7
  41. package/dist/utils/oauth/device-code.d.ts.map +1 -1
  42. package/dist/utils/oauth/device-code.js +8 -7
  43. package/dist/utils/oauth/device-code.js.map +1 -1
  44. package/dist/utils/oauth/github-copilot.d.ts.map +1 -1
  45. package/dist/utils/oauth/github-copilot.js +1 -1
  46. package/dist/utils/oauth/github-copilot.js.map +1 -1
  47. package/dist/utils/oauth/index.d.ts +1 -1
  48. package/dist/utils/oauth/index.d.ts.map +1 -1
  49. package/dist/utils/oauth/index.js +1 -1
  50. package/dist/utils/oauth/index.js.map +1 -1
  51. package/dist/utils/oauth/openai-codex.d.ts +10 -1
  52. package/dist/utils/oauth/openai-codex.d.ts.map +1 -1
  53. package/dist/utils/oauth/openai-codex.js +179 -79
  54. package/dist/utils/oauth/openai-codex.js.map +1 -1
  55. package/dist/utils/overflow.d.ts +2 -1
  56. package/dist/utils/overflow.d.ts.map +1 -1
  57. package/dist/utils/overflow.js +5 -2
  58. package/dist/utils/overflow.js.map +1 -1
  59. package/package.json +2 -2
@@ -157,6 +157,24 @@ export const MODELS = {
157
157
  contextWindow: 1000000,
158
158
  maxTokens: 128000,
159
159
  },
160
+ "anthropic.claude-opus-4-8": {
161
+ id: "anthropic.claude-opus-4-8",
162
+ name: "Claude Opus 4.8",
163
+ api: "bedrock-converse-stream",
164
+ provider: "amazon-bedrock",
165
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
166
+ reasoning: true,
167
+ thinkingLevelMap: { "xhigh": "xhigh" },
168
+ input: ["text", "image"],
169
+ cost: {
170
+ input: 5,
171
+ output: 25,
172
+ cacheRead: 0.5,
173
+ cacheWrite: 6.25,
174
+ },
175
+ contextWindow: 1000000,
176
+ maxTokens: 128000,
177
+ },
160
178
  "anthropic.claude-sonnet-4-5-20250929-v1:0": {
161
179
  id: "anthropic.claude-sonnet-4-5-20250929-v1:0",
162
180
  name: "Claude Sonnet 4.5",
@@ -226,6 +244,24 @@ export const MODELS = {
226
244
  contextWindow: 1000000,
227
245
  maxTokens: 128000,
228
246
  },
247
+ "au.anthropic.claude-opus-4-8": {
248
+ id: "au.anthropic.claude-opus-4-8",
249
+ name: "Claude Opus 4.8 (AU)",
250
+ api: "bedrock-converse-stream",
251
+ provider: "amazon-bedrock",
252
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
253
+ reasoning: true,
254
+ thinkingLevelMap: { "xhigh": "xhigh" },
255
+ input: ["text", "image"],
256
+ cost: {
257
+ input: 5,
258
+ output: 25,
259
+ cacheRead: 0.5,
260
+ cacheWrite: 6.25,
261
+ },
262
+ contextWindow: 1000000,
263
+ maxTokens: 128000,
264
+ },
229
265
  "au.anthropic.claude-sonnet-4-5-20250929-v1:0": {
230
266
  id: "au.anthropic.claude-sonnet-4-5-20250929-v1:0",
231
267
  name: "Claude Sonnet 4.5 (AU)",
@@ -381,6 +417,24 @@ export const MODELS = {
381
417
  contextWindow: 1000000,
382
418
  maxTokens: 128000,
383
419
  },
420
+ "eu.anthropic.claude-opus-4-8": {
421
+ id: "eu.anthropic.claude-opus-4-8",
422
+ name: "Claude Opus 4.8 (EU)",
423
+ api: "bedrock-converse-stream",
424
+ provider: "amazon-bedrock",
425
+ baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
426
+ reasoning: true,
427
+ thinkingLevelMap: { "xhigh": "xhigh" },
428
+ input: ["text", "image"],
429
+ cost: {
430
+ input: 5,
431
+ output: 25,
432
+ cacheRead: 0.5,
433
+ cacheWrite: 6.25,
434
+ },
435
+ contextWindow: 1000000,
436
+ maxTokens: 128000,
437
+ },
384
438
  "eu.anthropic.claude-sonnet-4-5-20250929-v1:0": {
385
439
  id: "eu.anthropic.claude-sonnet-4-5-20250929-v1:0",
386
440
  name: "Claude Sonnet 4.5 (EU)",
@@ -485,6 +539,24 @@ export const MODELS = {
485
539
  contextWindow: 1000000,
486
540
  maxTokens: 128000,
487
541
  },
542
+ "global.anthropic.claude-opus-4-8": {
543
+ id: "global.anthropic.claude-opus-4-8",
544
+ name: "Claude Opus 4.8 (Global)",
545
+ api: "bedrock-converse-stream",
546
+ provider: "amazon-bedrock",
547
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
548
+ reasoning: true,
549
+ thinkingLevelMap: { "xhigh": "xhigh" },
550
+ input: ["text", "image"],
551
+ cost: {
552
+ input: 5,
553
+ output: 25,
554
+ cacheRead: 0.5,
555
+ cacheWrite: 6.25,
556
+ },
557
+ contextWindow: 1000000,
558
+ maxTokens: 128000,
559
+ },
488
560
  "global.anthropic.claude-sonnet-4-5-20250929-v1:0": {
489
561
  id: "global.anthropic.claude-sonnet-4-5-20250929-v1:0",
490
562
  name: "Claude Sonnet 4.5 (Global)",
@@ -571,6 +643,24 @@ export const MODELS = {
571
643
  contextWindow: 1000000,
572
644
  maxTokens: 128000,
573
645
  },
646
+ "jp.anthropic.claude-opus-4-8": {
647
+ id: "jp.anthropic.claude-opus-4-8",
648
+ name: "Claude Opus 4.8 (JP)",
649
+ api: "bedrock-converse-stream",
650
+ provider: "amazon-bedrock",
651
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
652
+ reasoning: true,
653
+ thinkingLevelMap: { "xhigh": "xhigh" },
654
+ input: ["text", "image"],
655
+ cost: {
656
+ input: 5,
657
+ output: 25,
658
+ cacheRead: 0.5,
659
+ cacheWrite: 6.25,
660
+ },
661
+ contextWindow: 1000000,
662
+ maxTokens: 128000,
663
+ },
574
664
  "jp.anthropic.claude-sonnet-4-5-20250929-v1:0": {
575
665
  id: "jp.anthropic.claude-sonnet-4-5-20250929-v1:0",
576
666
  name: "Claude Sonnet 4.5 (JP)",
@@ -1270,6 +1360,24 @@ export const MODELS = {
1270
1360
  contextWindow: 1000000,
1271
1361
  maxTokens: 128000,
1272
1362
  },
1363
+ "us.anthropic.claude-opus-4-8": {
1364
+ id: "us.anthropic.claude-opus-4-8",
1365
+ name: "Claude Opus 4.8 (US)",
1366
+ api: "bedrock-converse-stream",
1367
+ provider: "amazon-bedrock",
1368
+ baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
1369
+ reasoning: true,
1370
+ thinkingLevelMap: { "xhigh": "xhigh" },
1371
+ input: ["text", "image"],
1372
+ cost: {
1373
+ input: 5,
1374
+ output: 25,
1375
+ cacheRead: 0.5,
1376
+ cacheWrite: 6.25,
1377
+ },
1378
+ contextWindow: 1000000,
1379
+ maxTokens: 128000,
1380
+ },
1273
1381
  "us.anthropic.claude-sonnet-4-5-20250929-v1:0": {
1274
1382
  id: "us.anthropic.claude-sonnet-4-5-20250929-v1:0",
1275
1383
  name: "Claude Sonnet 4.5 (US)",
@@ -1752,6 +1860,25 @@ export const MODELS = {
1752
1860
  contextWindow: 1000000,
1753
1861
  maxTokens: 128000,
1754
1862
  },
1863
+ "claude-opus-4-8": {
1864
+ id: "claude-opus-4-8",
1865
+ name: "Claude Opus 4.8",
1866
+ api: "anthropic-messages",
1867
+ provider: "anthropic",
1868
+ baseUrl: "https://api.anthropic.com",
1869
+ compat: { "forceAdaptiveThinking": true },
1870
+ reasoning: true,
1871
+ thinkingLevelMap: { "xhigh": "xhigh" },
1872
+ input: ["text", "image"],
1873
+ cost: {
1874
+ input: 5,
1875
+ output: 25,
1876
+ cacheRead: 0.5,
1877
+ cacheWrite: 6.25,
1878
+ },
1879
+ contextWindow: 1000000,
1880
+ maxTokens: 128000,
1881
+ },
1755
1882
  "claude-sonnet-4-0": {
1756
1883
  id: "claude-sonnet-4-0",
1757
1884
  name: "Claude Sonnet 4 (latest)",
@@ -1919,7 +2046,7 @@ export const MODELS = {
1919
2046
  cost: {
1920
2047
  input: 0.1,
1921
2048
  output: 0.4,
1922
- cacheRead: 0.03,
2049
+ cacheRead: 0.025,
1923
2050
  cacheWrite: 0,
1924
2051
  },
1925
2052
  contextWindow: 1047576,
@@ -2004,7 +2131,7 @@ export const MODELS = {
2004
2131
  cost: {
2005
2132
  input: 0.15,
2006
2133
  output: 0.6,
2007
- cacheRead: 0.08,
2134
+ cacheRead: 0.075,
2008
2135
  cacheWrite: 0,
2009
2136
  },
2010
2137
  contextWindow: 128000,
@@ -2130,7 +2257,7 @@ export const MODELS = {
2130
2257
  cost: {
2131
2258
  input: 1.25,
2132
2259
  output: 10,
2133
- cacheRead: 0.13,
2260
+ cacheRead: 0.125,
2134
2261
  cacheWrite: 0,
2135
2262
  },
2136
2263
  contextWindow: 400000,
@@ -2431,7 +2558,7 @@ export const MODELS = {
2431
2558
  provider: "azure-openai-responses",
2432
2559
  baseUrl: "",
2433
2560
  reasoning: true,
2434
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
2561
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh", "minimal": null, "low": null },
2435
2562
  input: ["text", "image"],
2436
2563
  cost: {
2437
2564
  input: 30,
@@ -2555,7 +2682,7 @@ export const MODELS = {
2555
2682
  cost: {
2556
2683
  input: 1.1,
2557
2684
  output: 4.4,
2558
- cacheRead: 0.28,
2685
+ cacheRead: 0.275,
2559
2686
  cacheWrite: 0,
2560
2687
  },
2561
2688
  contextWindow: 200000,
@@ -2614,23 +2741,6 @@ export const MODELS = {
2614
2741
  contextWindow: 32000,
2615
2742
  maxTokens: 8000,
2616
2743
  },
2617
- "qwen-3-235b-a22b-instruct-2507": {
2618
- id: "qwen-3-235b-a22b-instruct-2507",
2619
- name: "Qwen 3 235B Instruct",
2620
- api: "openai-completions",
2621
- provider: "cerebras",
2622
- baseUrl: "https://api.cerebras.ai/v1",
2623
- reasoning: false,
2624
- input: ["text"],
2625
- cost: {
2626
- input: 0.6,
2627
- output: 1.2,
2628
- cacheRead: 0,
2629
- cacheWrite: 0,
2630
- },
2631
- contextWindow: 131000,
2632
- maxTokens: 32000,
2633
- },
2634
2744
  "zai-glm-4.7": {
2635
2745
  id: "zai-glm-4.7",
2636
2746
  name: "Z.AI GLM-4.7",
@@ -4847,7 +4957,7 @@ export const MODELS = {
4847
4957
  cost: {
4848
4958
  input: 1,
4849
4959
  output: 3,
4850
- cacheRead: 0,
4960
+ cacheRead: 0.5,
4851
4961
  cacheWrite: 0,
4852
4962
  },
4853
4963
  contextWindow: 262144,
@@ -4864,7 +4974,7 @@ export const MODELS = {
4864
4974
  cost: {
4865
4975
  input: 0.15,
4866
4976
  output: 0.6,
4867
- cacheRead: 0,
4977
+ cacheRead: 0.075,
4868
4978
  cacheWrite: 0,
4869
4979
  },
4870
4980
  contextWindow: 131072,
@@ -4881,7 +4991,7 @@ export const MODELS = {
4881
4991
  cost: {
4882
4992
  input: 0.075,
4883
4993
  output: 0.3,
4884
- cacheRead: 0,
4994
+ cacheRead: 0.0375,
4885
4995
  cacheWrite: 0,
4886
4996
  },
4887
4997
  contextWindow: 131072,
@@ -5167,9 +5277,9 @@ export const MODELS = {
5167
5277
  reasoning: true,
5168
5278
  input: ["text"],
5169
5279
  cost: {
5170
- input: 1.74,
5171
- output: 3.48,
5172
- cacheRead: 0.145,
5280
+ input: 0.435,
5281
+ output: 0.87,
5282
+ cacheRead: 0.003625,
5173
5283
  cacheWrite: 0,
5174
5284
  },
5175
5285
  contextWindow: 1048576,
@@ -6262,7 +6372,7 @@ export const MODELS = {
6262
6372
  cost: {
6263
6373
  input: 0.1,
6264
6374
  output: 0.4,
6265
- cacheRead: 0.03,
6375
+ cacheRead: 0.025,
6266
6376
  cacheWrite: 0,
6267
6377
  },
6268
6378
  contextWindow: 1047576,
@@ -6347,7 +6457,7 @@ export const MODELS = {
6347
6457
  cost: {
6348
6458
  input: 0.15,
6349
6459
  output: 0.6,
6350
- cacheRead: 0.08,
6460
+ cacheRead: 0.075,
6351
6461
  cacheWrite: 0,
6352
6462
  },
6353
6463
  contextWindow: 128000,
@@ -6473,7 +6583,7 @@ export const MODELS = {
6473
6583
  cost: {
6474
6584
  input: 1.25,
6475
6585
  output: 10,
6476
- cacheRead: 0.13,
6586
+ cacheRead: 0.125,
6477
6587
  cacheWrite: 0,
6478
6588
  },
6479
6589
  contextWindow: 400000,
@@ -6774,7 +6884,7 @@ export const MODELS = {
6774
6884
  provider: "openai",
6775
6885
  baseUrl: "https://api.openai.com/v1",
6776
6886
  reasoning: true,
6777
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
6887
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh", "minimal": null, "low": null },
6778
6888
  input: ["text", "image"],
6779
6889
  cost: {
6780
6890
  input: 30,
@@ -6898,7 +7008,7 @@ export const MODELS = {
6898
7008
  cost: {
6899
7009
  input: 1.1,
6900
7010
  output: 4.4,
6901
- cacheRead: 0.28,
7011
+ cacheRead: 0.275,
6902
7012
  cacheWrite: 0,
6903
7013
  },
6904
7014
  contextWindow: 200000,
@@ -6974,7 +7084,7 @@ export const MODELS = {
6974
7084
  cacheRead: 0.175,
6975
7085
  cacheWrite: 0,
6976
7086
  },
6977
- contextWindow: 272000,
7087
+ contextWindow: 128000,
6978
7088
  maxTokens: 128000,
6979
7089
  },
6980
7090
  "gpt-5.4": {
@@ -7048,7 +7158,7 @@ export const MODELS = {
7048
7158
  cacheWrite: 0,
7049
7159
  },
7050
7160
  contextWindow: 200000,
7051
- maxTokens: 128000,
7161
+ maxTokens: 32000,
7052
7162
  },
7053
7163
  "claude-haiku-4-5": {
7054
7164
  id: "claude-haiku-4-5",
@@ -7139,6 +7249,25 @@ export const MODELS = {
7139
7249
  contextWindow: 1000000,
7140
7250
  maxTokens: 128000,
7141
7251
  },
7252
+ "claude-opus-4-8": {
7253
+ id: "claude-opus-4-8",
7254
+ name: "Claude Opus 4.8",
7255
+ api: "anthropic-messages",
7256
+ provider: "opencode",
7257
+ baseUrl: "https://opencode.ai/zen",
7258
+ compat: { "forceAdaptiveThinking": true },
7259
+ reasoning: true,
7260
+ thinkingLevelMap: { "xhigh": "xhigh" },
7261
+ input: ["text", "image"],
7262
+ cost: {
7263
+ input: 5,
7264
+ output: 25,
7265
+ cacheRead: 0.5,
7266
+ cacheWrite: 6.25,
7267
+ },
7268
+ contextWindow: 1000000,
7269
+ maxTokens: 128000,
7270
+ },
7142
7271
  "claude-sonnet-4": {
7143
7272
  id: "claude-sonnet-4",
7144
7273
  name: "Claude Sonnet 4",
@@ -7575,7 +7704,7 @@ export const MODELS = {
7575
7704
  provider: "opencode",
7576
7705
  baseUrl: "https://opencode.ai/zen/v1",
7577
7706
  reasoning: true,
7578
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
7707
+ thinkingLevelMap: { "off": null, "xhigh": "xhigh", "minimal": null, "low": null },
7579
7708
  input: ["text", "image"],
7580
7709
  cost: {
7581
7710
  input: 30,
@@ -7637,6 +7766,23 @@ export const MODELS = {
7637
7766
  contextWindow: 262144,
7638
7767
  maxTokens: 65536,
7639
7768
  },
7769
+ "mimo-v2.5-free": {
7770
+ id: "mimo-v2.5-free",
7771
+ name: "MiMo V2.5 Free",
7772
+ api: "openai-completions",
7773
+ provider: "opencode",
7774
+ baseUrl: "https://opencode.ai/zen/v1",
7775
+ reasoning: true,
7776
+ input: ["text", "image"],
7777
+ cost: {
7778
+ input: 0,
7779
+ output: 0,
7780
+ cacheRead: 0,
7781
+ cacheWrite: 0,
7782
+ },
7783
+ contextWindow: 1000000,
7784
+ maxTokens: 128000,
7785
+ },
7640
7786
  "minimax-m2.5": {
7641
7787
  id: "minimax-m2.5",
7642
7788
  name: "MiniMax M2.5",
@@ -7819,7 +7965,9 @@ export const MODELS = {
7819
7965
  api: "openai-completions",
7820
7966
  provider: "opencode-go",
7821
7967
  baseUrl: "https://opencode.ai/zen/go/v1",
7968
+ compat: { "thinkingFormat": "string-thinking" },
7822
7969
  reasoning: true,
7970
+ thinkingLevelMap: { "off": "none" },
7823
7971
  input: ["text", "image"],
7824
7972
  cost: {
7825
7973
  input: 0.95,
@@ -7839,9 +7987,9 @@ export const MODELS = {
7839
7987
  reasoning: true,
7840
7988
  input: ["text", "image"],
7841
7989
  cost: {
7842
- input: 0.4,
7843
- output: 2,
7844
- cacheRead: 0.08,
7990
+ input: 0.14,
7991
+ output: 0.28,
7992
+ cacheRead: 0.0028,
7845
7993
  cacheWrite: 0,
7846
7994
  },
7847
7995
  contextWindow: 1000000,
@@ -7856,9 +8004,9 @@ export const MODELS = {
7856
8004
  reasoning: true,
7857
8005
  input: ["text"],
7858
8006
  cost: {
7859
- input: 1,
7860
- output: 3,
7861
- cacheRead: 0.2,
8007
+ input: 1.74,
8008
+ output: 3.48,
8009
+ cacheRead: 0.0145,
7862
8010
  cacheWrite: 0,
7863
8011
  },
7864
8012
  contextWindow: 1048576,
@@ -7934,6 +8082,23 @@ export const MODELS = {
7934
8082
  contextWindow: 262144,
7935
8083
  maxTokens: 65536,
7936
8084
  },
8085
+ "qwen3.7-max": {
8086
+ id: "qwen3.7-max",
8087
+ name: "Qwen3.7 Max",
8088
+ api: "anthropic-messages",
8089
+ provider: "opencode-go",
8090
+ baseUrl: "https://opencode.ai/zen/go",
8091
+ reasoning: true,
8092
+ input: ["text"],
8093
+ cost: {
8094
+ input: 2.5,
8095
+ output: 7.5,
8096
+ cacheRead: 0.5,
8097
+ cacheWrite: 3.125,
8098
+ },
8099
+ contextWindow: 1000000,
8100
+ maxTokens: 65536,
8101
+ },
7937
8102
  },
7938
8103
  "openrouter": {
7939
8104
  "ai21/jamba-large-1.7": {
@@ -7953,23 +8118,6 @@ export const MODELS = {
7953
8118
  contextWindow: 256000,
7954
8119
  maxTokens: 4096,
7955
8120
  },
7956
- "alibaba/tongyi-deepresearch-30b-a3b": {
7957
- id: "alibaba/tongyi-deepresearch-30b-a3b",
7958
- name: "Tongyi DeepResearch 30B A3B",
7959
- api: "openai-completions",
7960
- provider: "openrouter",
7961
- baseUrl: "https://openrouter.ai/api/v1",
7962
- reasoning: true,
7963
- input: ["text"],
7964
- cost: {
7965
- input: 0.09,
7966
- output: 0.44999999999999996,
7967
- cacheRead: 0.09,
7968
- cacheWrite: 0,
7969
- },
7970
- contextWindow: 131072,
7971
- maxTokens: 131072,
7972
- },
7973
8121
  "amazon/nova-2-lite-v1": {
7974
8122
  id: "amazon/nova-2-lite-v1",
7975
8123
  name: "Amazon: Nova 2 Lite",
@@ -8229,6 +8377,42 @@ export const MODELS = {
8229
8377
  contextWindow: 1000000,
8230
8378
  maxTokens: 128000,
8231
8379
  },
8380
+ "anthropic/claude-opus-4.8": {
8381
+ id: "anthropic/claude-opus-4.8",
8382
+ name: "Anthropic: Claude Opus 4.8",
8383
+ api: "openai-completions",
8384
+ provider: "openrouter",
8385
+ baseUrl: "https://openrouter.ai/api/v1",
8386
+ reasoning: true,
8387
+ thinkingLevelMap: { "xhigh": "xhigh" },
8388
+ input: ["text", "image"],
8389
+ cost: {
8390
+ input: 5,
8391
+ output: 25,
8392
+ cacheRead: 0.5,
8393
+ cacheWrite: 6.25,
8394
+ },
8395
+ contextWindow: 1000000,
8396
+ maxTokens: 128000,
8397
+ },
8398
+ "anthropic/claude-opus-4.8-fast": {
8399
+ id: "anthropic/claude-opus-4.8-fast",
8400
+ name: "Anthropic: Claude Opus 4.8 (Fast)",
8401
+ api: "openai-completions",
8402
+ provider: "openrouter",
8403
+ baseUrl: "https://openrouter.ai/api/v1",
8404
+ reasoning: true,
8405
+ thinkingLevelMap: { "xhigh": "xhigh" },
8406
+ input: ["text", "image"],
8407
+ cost: {
8408
+ input: 10,
8409
+ output: 50,
8410
+ cacheRead: 1,
8411
+ cacheWrite: 12.5,
8412
+ },
8413
+ contextWindow: 1000000,
8414
+ maxTokens: 128000,
8415
+ },
8232
8416
  "anthropic/claude-sonnet-4": {
8233
8417
  id: "anthropic/claude-sonnet-4",
8234
8418
  name: "Anthropic: Claude Sonnet 4",
@@ -8297,23 +8481,6 @@ export const MODELS = {
8297
8481
  contextWindow: 262144,
8298
8482
  maxTokens: 262144,
8299
8483
  },
8300
- "arcee-ai/trinity-large-thinking:free": {
8301
- id: "arcee-ai/trinity-large-thinking:free",
8302
- name: "Arcee AI: Trinity Large Thinking (free)",
8303
- api: "openai-completions",
8304
- provider: "openrouter",
8305
- baseUrl: "https://openrouter.ai/api/v1",
8306
- reasoning: true,
8307
- input: ["text"],
8308
- cost: {
8309
- input: 0,
8310
- output: 0,
8311
- cacheRead: 0,
8312
- cacheWrite: 0,
8313
- },
8314
- contextWindow: 262144,
8315
- maxTokens: 80000,
8316
- },
8317
8484
  "arcee-ai/trinity-mini": {
8318
8485
  id: "arcee-ai/trinity-mini",
8319
8486
  name: "Arcee AI: Trinity Mini",
@@ -8365,23 +8532,6 @@ export const MODELS = {
8365
8532
  contextWindow: 2000000,
8366
8533
  maxTokens: 30000,
8367
8534
  },
8368
- "baidu/cobuddy:free": {
8369
- id: "baidu/cobuddy:free",
8370
- name: "Baidu Qianfan: CoBuddy (free)",
8371
- api: "openai-completions",
8372
- provider: "openrouter",
8373
- baseUrl: "https://openrouter.ai/api/v1",
8374
- reasoning: true,
8375
- input: ["text"],
8376
- cost: {
8377
- input: 0,
8378
- output: 0,
8379
- cacheRead: 0,
8380
- cacheWrite: 0,
8381
- },
8382
- contextWindow: 131072,
8383
- maxTokens: 65536,
8384
- },
8385
8535
  "baidu/ernie-4.5-21b-a3b": {
8386
8536
  id: "baidu/ernie-4.5-21b-a3b",
8387
8537
  name: "Baidu: ERNIE 4.5 21B A3B",
@@ -8527,13 +8677,13 @@ export const MODELS = {
8527
8677
  reasoning: false,
8528
8678
  input: ["text"],
8529
8679
  cost: {
8530
- input: 0.32,
8531
- output: 0.8899999999999999,
8680
+ input: 0.2288,
8681
+ output: 0.9144,
8532
8682
  cacheRead: 0,
8533
8683
  cacheWrite: 0,
8534
8684
  },
8535
- contextWindow: 163840,
8536
- maxTokens: 16384,
8685
+ contextWindow: 131072,
8686
+ maxTokens: 16000,
8537
8687
  },
8538
8688
  "deepseek/deepseek-chat-v3-0324": {
8539
8689
  id: "deepseek/deepseek-chat-v3-0324",
@@ -8660,9 +8810,9 @@ export const MODELS = {
8660
8810
  api: "openai-completions",
8661
8811
  provider: "openrouter",
8662
8812
  baseUrl: "https://openrouter.ai/api/v1",
8663
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8813
+ compat: { "requiresReasoningContentOnAssistantMessages": true },
8664
8814
  reasoning: true,
8665
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "max" },
8815
+ thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "xhigh" },
8666
8816
  input: ["text"],
8667
8817
  cost: {
8668
8818
  input: 0.09999999999999999,
@@ -8679,9 +8829,9 @@ export const MODELS = {
8679
8829
  api: "openai-completions",
8680
8830
  provider: "openrouter",
8681
8831
  baseUrl: "https://openrouter.ai/api/v1",
8682
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8832
+ compat: { "requiresReasoningContentOnAssistantMessages": true },
8683
8833
  reasoning: true,
8684
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "max" },
8834
+ thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "xhigh" },
8685
8835
  input: ["text"],
8686
8836
  cost: {
8687
8837
  input: 0,
@@ -8698,9 +8848,9 @@ export const MODELS = {
8698
8848
  api: "openai-completions",
8699
8849
  provider: "openrouter",
8700
8850
  baseUrl: "https://openrouter.ai/api/v1",
8701
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
8851
+ compat: { "requiresReasoningContentOnAssistantMessages": true },
8702
8852
  reasoning: true,
8703
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "max" },
8853
+ thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "xhigh": "xhigh" },
8704
8854
  input: ["text"],
8705
8855
  cost: {
8706
8856
  input: 0.435,
@@ -9800,6 +9950,23 @@ export const MODELS = {
9800
9950
  contextWindow: 262144,
9801
9951
  maxTokens: 262142,
9802
9952
  },
9953
+ "moonshotai/kimi-k2.6:free": {
9954
+ id: "moonshotai/kimi-k2.6:free",
9955
+ name: "MoonshotAI: Kimi K2.6 (free)",
9956
+ api: "openai-completions",
9957
+ provider: "openrouter",
9958
+ baseUrl: "https://openrouter.ai/api/v1",
9959
+ reasoning: true,
9960
+ input: ["text", "image"],
9961
+ cost: {
9962
+ input: 0,
9963
+ output: 0,
9964
+ cacheRead: 0,
9965
+ cacheWrite: 0,
9966
+ },
9967
+ contextWindow: 262144,
9968
+ maxTokens: 4096,
9969
+ },
9803
9970
  "nex-agi/deepseek-v3.1-nex-n1": {
9804
9971
  id: "nex-agi/deepseek-v3.1-nex-n1",
9805
9972
  name: "Nex AGI: DeepSeek V3.1 Nex N1",
@@ -10389,11 +10556,11 @@ export const MODELS = {
10389
10556
  cost: {
10390
10557
  input: 1.25,
10391
10558
  output: 10,
10392
- cacheRead: 0.125,
10559
+ cacheRead: 0.13,
10393
10560
  cacheWrite: 0,
10394
10561
  },
10395
10562
  contextWindow: 128000,
10396
- maxTokens: 16384,
10563
+ maxTokens: 32000,
10397
10564
  },
10398
10565
  "openai/gpt-5.1-codex": {
10399
10566
  id: "openai/gpt-5.1-codex",
@@ -10406,7 +10573,7 @@ export const MODELS = {
10406
10573
  cost: {
10407
10574
  input: 1.25,
10408
10575
  output: 10,
10409
- cacheRead: 0.125,
10576
+ cacheRead: 0.13,
10410
10577
  cacheWrite: 0,
10411
10578
  },
10412
10579
  contextWindow: 400000,
@@ -10440,11 +10607,11 @@ export const MODELS = {
10440
10607
  cost: {
10441
10608
  input: 0.25,
10442
10609
  output: 2,
10443
- cacheRead: 0.03,
10610
+ cacheRead: 0.024999999999999998,
10444
10611
  cacheWrite: 0,
10445
10612
  },
10446
10613
  contextWindow: 400000,
10447
- maxTokens: 128000,
10614
+ maxTokens: 100000,
10448
10615
  },
10449
10616
  "openai/gpt-5.2": {
10450
10617
  id: "openai/gpt-5.2",
@@ -10480,7 +10647,7 @@ export const MODELS = {
10480
10647
  cacheWrite: 0,
10481
10648
  },
10482
10649
  contextWindow: 128000,
10483
- maxTokens: 32000,
10650
+ maxTokens: 16384,
10484
10651
  },
10485
10652
  "openai/gpt-5.2-codex": {
10486
10653
  id: "openai/gpt-5.2-codex",
@@ -10651,7 +10818,7 @@ export const MODELS = {
10651
10818
  provider: "openrouter",
10652
10819
  baseUrl: "https://openrouter.ai/api/v1",
10653
10820
  reasoning: true,
10654
- thinkingLevelMap: { "xhigh": "xhigh" },
10821
+ thinkingLevelMap: { "xhigh": "xhigh", "off": null, "minimal": null, "low": null },
10655
10822
  input: ["text", "image"],
10656
10823
  cost: {
10657
10824
  input: 30,
@@ -11016,8 +11183,8 @@ export const MODELS = {
11016
11183
  cacheRead: 0,
11017
11184
  cacheWrite: 0,
11018
11185
  },
11019
- contextWindow: 131072,
11020
- maxTokens: 8192,
11186
+ contextWindow: 262144,
11187
+ maxTokens: 32768,
11021
11188
  },
11022
11189
  "poolside/laguna-xs.2:free": {
11023
11190
  id: "poolside/laguna-xs.2:free",
@@ -11033,8 +11200,8 @@ export const MODELS = {
11033
11200
  cacheRead: 0,
11034
11201
  cacheWrite: 0,
11035
11202
  },
11036
- contextWindow: 131072,
11037
- maxTokens: 8192,
11203
+ contextWindow: 262144,
11204
+ maxTokens: 32768,
11038
11205
  },
11039
11206
  "prime-intellect/intellect-3": {
11040
11207
  id: "prime-intellect/intellect-3",
@@ -11116,7 +11283,7 @@ export const MODELS = {
11116
11283
  input: 0.26,
11117
11284
  output: 0.78,
11118
11285
  cacheRead: 0,
11119
- cacheWrite: 0.325,
11286
+ cacheWrite: 0,
11120
11287
  },
11121
11288
  contextWindow: 1000000,
11122
11289
  maxTokens: 32768,
@@ -11694,7 +11861,7 @@ export const MODELS = {
11694
11861
  input: 0.065,
11695
11862
  output: 0.26,
11696
11863
  cacheRead: 0,
11697
- cacheWrite: 0.08125,
11864
+ cacheWrite: 0,
11698
11865
  },
11699
11866
  contextWindow: 1000000,
11700
11867
  maxTokens: 65536,
@@ -11711,7 +11878,7 @@ export const MODELS = {
11711
11878
  input: 0.26,
11712
11879
  output: 1.56,
11713
11880
  cacheRead: 0,
11714
- cacheWrite: 0.325,
11881
+ cacheWrite: 0,
11715
11882
  },
11716
11883
  contextWindow: 1000000,
11717
11884
  maxTokens: 65536,
@@ -11728,7 +11895,7 @@ export const MODELS = {
11728
11895
  input: 0.3,
11729
11896
  output: 1.7999999999999998,
11730
11897
  cacheRead: 0,
11731
- cacheWrite: 0,
11898
+ cacheWrite: 0.375,
11732
11899
  },
11733
11900
  contextWindow: 1000000,
11734
11901
  maxTokens: 65536,
@@ -11742,13 +11909,13 @@ export const MODELS = {
11742
11909
  reasoning: true,
11743
11910
  input: ["text", "image"],
11744
11911
  cost: {
11745
- input: 0.3,
11912
+ input: 0.29,
11746
11913
  output: 3.1999999999999997,
11747
11914
  cacheRead: 0,
11748
11915
  cacheWrite: 0,
11749
11916
  },
11750
11917
  contextWindow: 262144,
11751
- maxTokens: 262144,
11918
+ maxTokens: 262140,
11752
11919
  },
11753
11920
  "qwen/qwen3.6-35b-a3b": {
11754
11921
  id: "qwen/qwen3.6-35b-a3b",
@@ -11759,7 +11926,7 @@ export const MODELS = {
11759
11926
  reasoning: true,
11760
11927
  input: ["text", "image"],
11761
11928
  cost: {
11762
- input: 0.15,
11929
+ input: 0.14,
11763
11930
  output: 1,
11764
11931
  cacheRead: 0,
11765
11932
  cacheWrite: 0,
@@ -11827,10 +11994,10 @@ export const MODELS = {
11827
11994
  reasoning: true,
11828
11995
  input: ["text"],
11829
11996
  cost: {
11830
- input: 2.5,
11831
- output: 7.5,
11832
- cacheRead: 0,
11833
- cacheWrite: 3.125,
11997
+ input: 1.25,
11998
+ output: 3.75,
11999
+ cacheRead: 0.25,
12000
+ cacheWrite: 1.5625,
11834
12001
  },
11835
12002
  contextWindow: 1000000,
11836
12003
  maxTokens: 65536,
@@ -11929,13 +12096,13 @@ export const MODELS = {
11929
12096
  reasoning: true,
11930
12097
  input: ["text"],
11931
12098
  cost: {
11932
- input: 0.06599999999999999,
11933
- output: 0.26,
11934
- cacheRead: 0.029,
12099
+ input: 0.063,
12100
+ output: 0.21,
12101
+ cacheRead: 0.020999999999999998,
11935
12102
  cacheWrite: 0,
11936
12103
  },
11937
12104
  contextWindow: 262144,
11938
- maxTokens: 262144,
12105
+ maxTokens: 4096,
11939
12106
  },
11940
12107
  "thedrummer/rocinante-12b": {
11941
12108
  id: "thedrummer/rocinante-12b",
@@ -12099,9 +12266,9 @@ export const MODELS = {
12099
12266
  reasoning: true,
12100
12267
  input: ["text", "image"],
12101
12268
  cost: {
12102
- input: 0.39999999999999997,
12103
- output: 2,
12104
- cacheRead: 0.08,
12269
+ input: 0.14,
12270
+ output: 0.28,
12271
+ cacheRead: 0.0028,
12105
12272
  cacheWrite: 0,
12106
12273
  },
12107
12274
  contextWindow: 1048576,
@@ -12116,13 +12283,13 @@ export const MODELS = {
12116
12283
  reasoning: true,
12117
12284
  input: ["text"],
12118
12285
  cost: {
12119
- input: 1,
12120
- output: 3,
12121
- cacheRead: 0.19999999999999998,
12286
+ input: 0.435,
12287
+ output: 0.87,
12288
+ cacheRead: 0.0036,
12122
12289
  cacheWrite: 0,
12123
12290
  },
12124
12291
  contextWindow: 1048576,
12125
- maxTokens: 16384,
12292
+ maxTokens: 131072,
12126
12293
  },
12127
12294
  "z-ai/glm-4-32b": {
12128
12295
  id: "z-ai/glm-4-32b",
@@ -12167,13 +12334,13 @@ export const MODELS = {
12167
12334
  reasoning: true,
12168
12335
  input: ["text"],
12169
12336
  cost: {
12170
- input: 0.13,
12337
+ input: 0.125,
12171
12338
  output: 0.85,
12172
- cacheRead: 0.024999999999999998,
12339
+ cacheRead: 0.06,
12173
12340
  cacheWrite: 0,
12174
12341
  },
12175
12342
  contextWindow: 131072,
12176
- maxTokens: 98304,
12343
+ maxTokens: 131070,
12177
12344
  },
12178
12345
  "z-ai/glm-4.5-air:free": {
12179
12346
  id: "z-ai/glm-4.5-air:free",
@@ -13287,6 +13454,25 @@ export const MODELS = {
13287
13454
  contextWindow: 1000000,
13288
13455
  maxTokens: 128000,
13289
13456
  },
13457
+ "anthropic/claude-opus-4.8": {
13458
+ id: "anthropic/claude-opus-4.8",
13459
+ name: "Claude Opus 4.8",
13460
+ api: "anthropic-messages",
13461
+ provider: "vercel-ai-gateway",
13462
+ baseUrl: "https://ai-gateway.vercel.sh",
13463
+ compat: { "forceAdaptiveThinking": true },
13464
+ reasoning: true,
13465
+ thinkingLevelMap: { "xhigh": "xhigh" },
13466
+ input: ["text", "image"],
13467
+ cost: {
13468
+ input: 5,
13469
+ output: 25,
13470
+ cacheRead: 0.5,
13471
+ cacheWrite: 6.25,
13472
+ },
13473
+ contextWindow: 1000000,
13474
+ maxTokens: 128000,
13475
+ },
13290
13476
  "anthropic/claude-sonnet-4": {
13291
13477
  id: "anthropic/claude-sonnet-4",
13292
13478
  name: "Claude Sonnet 4",
@@ -14887,7 +15073,7 @@ export const MODELS = {
14887
15073
  provider: "vercel-ai-gateway",
14888
15074
  baseUrl: "https://ai-gateway.vercel.sh",
14889
15075
  reasoning: true,
14890
- thinkingLevelMap: { "xhigh": "xhigh" },
15076
+ thinkingLevelMap: { "xhigh": "xhigh", "off": null, "minimal": null, "low": null },
14891
15077
  input: ["text", "image"],
14892
15078
  cost: {
14893
15079
  input: 30,
@@ -15281,9 +15467,9 @@ export const MODELS = {
15281
15467
  reasoning: true,
15282
15468
  input: ["text", "image"],
15283
15469
  cost: {
15284
- input: 0.39999999999999997,
15285
- output: 2,
15286
- cacheRead: 0.08,
15470
+ input: 0.14,
15471
+ output: 0.28,
15472
+ cacheRead: 0.0028,
15287
15473
  cacheWrite: 0,
15288
15474
  },
15289
15475
  contextWindow: 1050000,
@@ -15298,9 +15484,9 @@ export const MODELS = {
15298
15484
  reasoning: true,
15299
15485
  input: ["text", "image"],
15300
15486
  cost: {
15301
- input: 1,
15302
- output: 3,
15303
- cacheRead: 0.19999999999999998,
15487
+ input: 0.435,
15488
+ output: 0.87,
15489
+ cacheRead: 0.0036,
15304
15490
  cacheWrite: 0,
15305
15491
  },
15306
15492
  contextWindow: 1050000,
@@ -15742,24 +15928,6 @@ export const MODELS = {
15742
15928
  },
15743
15929
  },
15744
15930
  "xiaomi-token-plan-ams": {
15745
- "mimo-v2-flash": {
15746
- id: "mimo-v2-flash",
15747
- name: "MiMo-V2-Flash",
15748
- api: "openai-completions",
15749
- provider: "xiaomi-token-plan-ams",
15750
- baseUrl: "https://token-plan-ams.xiaomimimo.com/v1",
15751
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
15752
- reasoning: true,
15753
- input: ["text"],
15754
- cost: {
15755
- input: 0.1,
15756
- output: 0.3,
15757
- cacheRead: 0.01,
15758
- cacheWrite: 0,
15759
- },
15760
- contextWindow: 262144,
15761
- maxTokens: 65536,
15762
- },
15763
15931
  "mimo-v2-omni": {
15764
15932
  id: "mimo-v2-omni",
15765
15933
  name: "MiMo-V2-Omni",
@@ -15834,24 +16002,6 @@ export const MODELS = {
15834
16002
  },
15835
16003
  },
15836
16004
  "xiaomi-token-plan-cn": {
15837
- "mimo-v2-flash": {
15838
- id: "mimo-v2-flash",
15839
- name: "MiMo-V2-Flash",
15840
- api: "openai-completions",
15841
- provider: "xiaomi-token-plan-cn",
15842
- baseUrl: "https://token-plan-cn.xiaomimimo.com/v1",
15843
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
15844
- reasoning: true,
15845
- input: ["text"],
15846
- cost: {
15847
- input: 0.1,
15848
- output: 0.3,
15849
- cacheRead: 0.01,
15850
- cacheWrite: 0,
15851
- },
15852
- contextWindow: 262144,
15853
- maxTokens: 65536,
15854
- },
15855
16005
  "mimo-v2-omni": {
15856
16006
  id: "mimo-v2-omni",
15857
16007
  name: "MiMo-V2-Omni",
@@ -15926,24 +16076,6 @@ export const MODELS = {
15926
16076
  },
15927
16077
  },
15928
16078
  "xiaomi-token-plan-sgp": {
15929
- "mimo-v2-flash": {
15930
- id: "mimo-v2-flash",
15931
- name: "MiMo-V2-Flash",
15932
- api: "openai-completions",
15933
- provider: "xiaomi-token-plan-sgp",
15934
- baseUrl: "https://token-plan-sgp.xiaomimimo.com/v1",
15935
- compat: { "requiresReasoningContentOnAssistantMessages": true, "thinkingFormat": "deepseek" },
15936
- reasoning: true,
15937
- input: ["text"],
15938
- cost: {
15939
- input: 0.1,
15940
- output: 0.3,
15941
- cacheRead: 0.01,
15942
- cacheWrite: 0,
15943
- },
15944
- contextWindow: 262144,
15945
- maxTokens: 65536,
15946
- },
15947
16079
  "mimo-v2-omni": {
15948
16080
  id: "mimo-v2-omni",
15949
16081
  name: "MiMo-V2-Omni",