@earendil-works/pi-ai 0.80.2 → 0.80.5

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 (176) hide show
  1. package/README.md +1 -1
  2. package/dist/api/anthropic-messages.d.ts.map +1 -1
  3. package/dist/api/anthropic-messages.js +13 -4
  4. package/dist/api/anthropic-messages.js.map +1 -1
  5. package/dist/api/azure-openai-responses.d.ts.map +1 -1
  6. package/dist/api/azure-openai-responses.js +14 -18
  7. package/dist/api/azure-openai-responses.js.map +1 -1
  8. package/dist/api/bedrock-converse-stream.d.ts.map +1 -1
  9. package/dist/api/bedrock-converse-stream.js +21 -9
  10. package/dist/api/bedrock-converse-stream.js.map +1 -1
  11. package/dist/api/google-generative-ai.d.ts.map +1 -1
  12. package/dist/api/google-generative-ai.js +4 -2
  13. package/dist/api/google-generative-ai.js.map +1 -1
  14. package/dist/api/google-vertex.d.ts.map +1 -1
  15. package/dist/api/google-vertex.js +4 -2
  16. package/dist/api/google-vertex.js.map +1 -1
  17. package/dist/api/mistral-conversations.d.ts.map +1 -1
  18. package/dist/api/mistral-conversations.js +1 -1
  19. package/dist/api/mistral-conversations.js.map +1 -1
  20. package/dist/api/openai-codex-responses.d.ts.map +1 -1
  21. package/dist/api/openai-codex-responses.js +62 -42
  22. package/dist/api/openai-codex-responses.js.map +1 -1
  23. package/dist/api/openai-completions.d.ts.map +1 -1
  24. package/dist/api/openai-completions.js +12 -5
  25. package/dist/api/openai-completions.js.map +1 -1
  26. package/dist/api/openai-responses-shared.d.ts.map +1 -1
  27. package/dist/api/openai-responses-shared.js +153 -176
  28. package/dist/api/openai-responses-shared.js.map +1 -1
  29. package/dist/api/openai-responses.d.ts.map +1 -1
  30. package/dist/api/openai-responses.js +6 -16
  31. package/dist/api/openai-responses.js.map +1 -1
  32. package/dist/api/openrouter-images.d.ts.map +1 -1
  33. package/dist/api/openrouter-images.js +2 -1
  34. package/dist/api/openrouter-images.js.map +1 -1
  35. package/dist/api/simple-options.d.ts +3 -2
  36. package/dist/api/simple-options.d.ts.map +1 -1
  37. package/dist/api/simple-options.js +11 -2
  38. package/dist/api/simple-options.js.map +1 -1
  39. package/dist/api/transform-messages.d.ts.map +1 -1
  40. package/dist/api/transform-messages.js +4 -1
  41. package/dist/api/transform-messages.js.map +1 -1
  42. package/dist/image-models.generated.d.ts +34 -19
  43. package/dist/image-models.generated.d.ts.map +1 -1
  44. package/dist/image-models.generated.js +60 -45
  45. package/dist/image-models.generated.js.map +1 -1
  46. package/dist/index.d.ts +1 -0
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +1 -0
  49. package/dist/index.js.map +1 -1
  50. package/dist/models.generated.d.ts +1754 -498
  51. package/dist/models.generated.d.ts.map +1 -1
  52. package/dist/providers/amazon-bedrock.models.d.ts +157 -0
  53. package/dist/providers/amazon-bedrock.models.d.ts.map +1 -1
  54. package/dist/providers/amazon-bedrock.models.js +166 -12
  55. package/dist/providers/amazon-bedrock.models.js.map +1 -1
  56. package/dist/providers/anthropic.models.d.ts +6 -190
  57. package/dist/providers/anthropic.models.d.ts.map +1 -1
  58. package/dist/providers/anthropic.models.js +21 -207
  59. package/dist/providers/anthropic.models.js.map +1 -1
  60. package/dist/providers/azure-openai-responses.models.d.ts +84 -0
  61. package/dist/providers/azure-openai-responses.models.d.ts.map +1 -1
  62. package/dist/providers/azure-openai-responses.models.js +72 -0
  63. package/dist/providers/azure-openai-responses.models.js.map +1 -1
  64. package/dist/providers/cerebras.models.d.ts +21 -0
  65. package/dist/providers/cerebras.models.d.ts.map +1 -1
  66. package/dist/providers/cerebras.models.js +18 -0
  67. package/dist/providers/cerebras.models.js.map +1 -1
  68. package/dist/providers/cloudflare-ai-gateway.models.d.ts +21 -0
  69. package/dist/providers/cloudflare-ai-gateway.models.d.ts.map +1 -1
  70. package/dist/providers/cloudflare-ai-gateway.models.js +18 -0
  71. package/dist/providers/cloudflare-ai-gateway.models.js.map +1 -1
  72. package/dist/providers/fireworks.models.d.ts +28 -0
  73. package/dist/providers/fireworks.models.d.ts.map +1 -1
  74. package/dist/providers/fireworks.models.js +21 -2
  75. package/dist/providers/fireworks.models.js.map +1 -1
  76. package/dist/providers/github-copilot.models.d.ts +82 -0
  77. package/dist/providers/github-copilot.models.d.ts.map +1 -1
  78. package/dist/providers/github-copilot.models.js +62 -5
  79. package/dist/providers/github-copilot.models.js.map +1 -1
  80. package/dist/providers/groq.models.d.ts.map +1 -1
  81. package/dist/providers/groq.models.js +1 -1
  82. package/dist/providers/groq.models.js.map +1 -1
  83. package/dist/providers/huggingface.models.d.ts +100 -0
  84. package/dist/providers/huggingface.models.d.ts.map +1 -1
  85. package/dist/providers/huggingface.models.js +90 -0
  86. package/dist/providers/huggingface.models.js.map +1 -1
  87. package/dist/providers/minimax-cn.models.d.ts.map +1 -1
  88. package/dist/providers/minimax-cn.models.js +4 -4
  89. package/dist/providers/minimax-cn.models.js.map +1 -1
  90. package/dist/providers/minimax.models.d.ts.map +1 -1
  91. package/dist/providers/minimax.models.js +4 -4
  92. package/dist/providers/minimax.models.js.map +1 -1
  93. package/dist/providers/mistral.models.d.ts +1 -1
  94. package/dist/providers/mistral.models.d.ts.map +1 -1
  95. package/dist/providers/mistral.models.js +4 -4
  96. package/dist/providers/mistral.models.js.map +1 -1
  97. package/dist/providers/nvidia.models.d.ts +29 -1
  98. package/dist/providers/nvidia.models.d.ts.map +1 -1
  99. package/dist/providers/nvidia.models.js +23 -4
  100. package/dist/providers/nvidia.models.js.map +1 -1
  101. package/dist/providers/openai-codex.models.d.ts +63 -0
  102. package/dist/providers/openai-codex.models.d.ts.map +1 -1
  103. package/dist/providers/openai-codex.models.js +54 -0
  104. package/dist/providers/openai-codex.models.js.map +1 -1
  105. package/dist/providers/openai.models.d.ts +84 -0
  106. package/dist/providers/openai.models.d.ts.map +1 -1
  107. package/dist/providers/openai.models.js +72 -0
  108. package/dist/providers/openai.models.js.map +1 -1
  109. package/dist/providers/opencode-go.models.d.ts.map +1 -1
  110. package/dist/providers/opencode-go.models.js +6 -6
  111. package/dist/providers/opencode-go.models.js.map +1 -1
  112. package/dist/providers/opencode.models.d.ts +132 -0
  113. package/dist/providers/opencode.models.d.ts.map +1 -1
  114. package/dist/providers/opencode.models.js +111 -2
  115. package/dist/providers/opencode.models.js.map +1 -1
  116. package/dist/providers/openrouter.models.d.ts +358 -55
  117. package/dist/providers/openrouter.models.d.ts.map +1 -1
  118. package/dist/providers/openrouter.models.js +395 -138
  119. package/dist/providers/openrouter.models.js.map +1 -1
  120. package/dist/providers/together.models.d.ts +31 -0
  121. package/dist/providers/together.models.d.ts.map +1 -1
  122. package/dist/providers/together.models.js +21 -2
  123. package/dist/providers/together.models.js.map +1 -1
  124. package/dist/providers/vercel-ai-gateway.models.d.ts +446 -36
  125. package/dist/providers/vercel-ai-gateway.models.d.ts.map +1 -1
  126. package/dist/providers/vercel-ai-gateway.models.js +477 -80
  127. package/dist/providers/vercel-ai-gateway.models.js.map +1 -1
  128. package/dist/providers/xai.models.d.ts +22 -0
  129. package/dist/providers/xai.models.d.ts.map +1 -1
  130. package/dist/providers/xai.models.js +18 -0
  131. package/dist/providers/xai.models.js.map +1 -1
  132. package/dist/providers/xiaomi-token-plan-ams.models.d.ts +0 -42
  133. package/dist/providers/xiaomi-token-plan-ams.models.d.ts.map +1 -1
  134. package/dist/providers/xiaomi-token-plan-ams.models.js +9 -45
  135. package/dist/providers/xiaomi-token-plan-ams.models.js.map +1 -1
  136. package/dist/providers/xiaomi-token-plan-cn.models.d.ts +0 -42
  137. package/dist/providers/xiaomi-token-plan-cn.models.d.ts.map +1 -1
  138. package/dist/providers/xiaomi-token-plan-cn.models.js +9 -45
  139. package/dist/providers/xiaomi-token-plan-cn.models.js.map +1 -1
  140. package/dist/providers/xiaomi-token-plan-sgp.models.d.ts +0 -42
  141. package/dist/providers/xiaomi-token-plan-sgp.models.d.ts.map +1 -1
  142. package/dist/providers/xiaomi-token-plan-sgp.models.js +9 -45
  143. package/dist/providers/xiaomi-token-plan-sgp.models.js.map +1 -1
  144. package/dist/providers/xiaomi.models.d.ts.map +1 -1
  145. package/dist/providers/xiaomi.models.js +15 -15
  146. package/dist/providers/xiaomi.models.js.map +1 -1
  147. package/dist/types.d.ts +6 -0
  148. package/dist/types.d.ts.map +1 -1
  149. package/dist/types.js.map +1 -1
  150. package/dist/utils/error-body.d.ts +25 -0
  151. package/dist/utils/error-body.d.ts.map +1 -0
  152. package/dist/utils/error-body.js +109 -0
  153. package/dist/utils/error-body.js.map +1 -0
  154. package/dist/utils/estimate.d.ts +17 -0
  155. package/dist/utils/estimate.d.ts.map +1 -0
  156. package/dist/utils/estimate.js +95 -0
  157. package/dist/utils/estimate.js.map +1 -0
  158. package/dist/utils/oauth/device-code.d.ts +2 -0
  159. package/dist/utils/oauth/device-code.d.ts.map +1 -1
  160. package/dist/utils/oauth/device-code.js +15 -2
  161. package/dist/utils/oauth/device-code.js.map +1 -1
  162. package/dist/utils/oauth/github-copilot.d.ts.map +1 -1
  163. package/dist/utils/oauth/github-copilot.js +3 -2
  164. package/dist/utils/oauth/github-copilot.js.map +1 -1
  165. package/dist/utils/overflow.d.ts +1 -0
  166. package/dist/utils/overflow.d.ts.map +1 -1
  167. package/dist/utils/overflow.js +3 -0
  168. package/dist/utils/overflow.js.map +1 -1
  169. package/dist/utils/retry.d.ts +12 -0
  170. package/dist/utils/retry.d.ts.map +1 -0
  171. package/dist/utils/retry.js +90 -0
  172. package/dist/utils/retry.js.map +1 -0
  173. package/dist/utils/validation.d.ts.map +1 -1
  174. package/dist/utils/validation.js +9 -21
  175. package/dist/utils/validation.js.map +1 -1
  176. package/package.json +1 -1
@@ -19,6 +19,60 @@ export const OPENROUTER_MODELS = {
19
19
  contextWindow: 256000,
20
20
  maxTokens: 4096,
21
21
  },
22
+ "aion-labs/aion-2.0": {
23
+ id: "aion-labs/aion-2.0",
24
+ name: "AionLabs: Aion-2.0",
25
+ api: "openai-completions",
26
+ provider: "openrouter",
27
+ baseUrl: "https://openrouter.ai/api/v1",
28
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
29
+ reasoning: true,
30
+ input: ["text"],
31
+ cost: {
32
+ input: 0.8,
33
+ output: 1.6,
34
+ cacheRead: 0.2,
35
+ cacheWrite: 0,
36
+ },
37
+ contextWindow: 131072,
38
+ maxTokens: 32768,
39
+ },
40
+ "aion-labs/aion-3.0": {
41
+ id: "aion-labs/aion-3.0",
42
+ name: "AionLabs: Aion-3.0",
43
+ api: "openai-completions",
44
+ provider: "openrouter",
45
+ baseUrl: "https://openrouter.ai/api/v1",
46
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
47
+ reasoning: true,
48
+ input: ["text"],
49
+ cost: {
50
+ input: 3,
51
+ output: 6,
52
+ cacheRead: 0.75,
53
+ cacheWrite: 0,
54
+ },
55
+ contextWindow: 131072,
56
+ maxTokens: 32768,
57
+ },
58
+ "aion-labs/aion-3.0-mini": {
59
+ id: "aion-labs/aion-3.0-mini",
60
+ name: "AionLabs: Aion-3.0-Mini",
61
+ api: "openai-completions",
62
+ provider: "openrouter",
63
+ baseUrl: "https://openrouter.ai/api/v1",
64
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
65
+ reasoning: true,
66
+ input: ["text"],
67
+ cost: {
68
+ input: 0.7,
69
+ output: 1.4,
70
+ cacheRead: 0.18,
71
+ cacheWrite: 0,
72
+ },
73
+ contextWindow: 131072,
74
+ maxTokens: 32768,
75
+ },
22
76
  "amazon/nova-2-lite-v1": {
23
77
  id: "amazon/nova-2-lite-v1",
24
78
  name: "Amazon: Nova 2 Lite",
@@ -236,25 +290,6 @@ export const OPENROUTER_MODELS = {
236
290
  contextWindow: 1000000,
237
291
  maxTokens: 128000,
238
292
  },
239
- "anthropic/claude-opus-4.6-fast": {
240
- id: "anthropic/claude-opus-4.6-fast",
241
- name: "Anthropic: Claude Opus 4.6 (Fast)",
242
- api: "openai-completions",
243
- provider: "openrouter",
244
- baseUrl: "https://openrouter.ai/api/v1",
245
- compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
246
- reasoning: true,
247
- thinkingLevelMap: { "xhigh": "max" },
248
- input: ["text", "image"],
249
- cost: {
250
- input: 30,
251
- output: 150,
252
- cacheRead: 3,
253
- cacheWrite: 37.5,
254
- },
255
- contextWindow: 1000000,
256
- maxTokens: 128000,
257
- },
258
293
  "anthropic/claude-opus-4.7": {
259
294
  id: "anthropic/claude-opus-4.7",
260
295
  name: "Anthropic: Claude Opus 4.7",
@@ -385,6 +420,24 @@ export const OPENROUTER_MODELS = {
385
420
  contextWindow: 1000000,
386
421
  maxTokens: 128000,
387
422
  },
423
+ "anthropic/claude-sonnet-5": {
424
+ id: "anthropic/claude-sonnet-5",
425
+ name: "Anthropic: Claude Sonnet 5",
426
+ api: "openai-completions",
427
+ provider: "openrouter",
428
+ baseUrl: "https://openrouter.ai/api/v1",
429
+ compat: { "thinkingFormat": "openrouter", "cacheControlFormat": "anthropic" },
430
+ reasoning: true,
431
+ input: ["text", "image"],
432
+ cost: {
433
+ input: 2,
434
+ output: 10,
435
+ cacheRead: 0.2,
436
+ cacheWrite: 2.5,
437
+ },
438
+ contextWindow: 1000000,
439
+ maxTokens: 128000,
440
+ },
388
441
  "arcee-ai/trinity-large-thinking": {
389
442
  id: "arcee-ai/trinity-large-thinking",
390
443
  name: "Arcee AI: Trinity Large Thinking",
@@ -611,8 +664,8 @@ export const OPENROUTER_MODELS = {
611
664
  reasoning: false,
612
665
  input: ["text"],
613
666
  cost: {
614
- input: 0.2,
615
- output: 0.77,
667
+ input: 0.24,
668
+ output: 0.9,
616
669
  cacheRead: 0.135,
617
670
  cacheWrite: 0,
618
671
  },
@@ -703,7 +756,7 @@ export const OPENROUTER_MODELS = {
703
756
  cost: {
704
757
  input: 0.2288,
705
758
  output: 0.3432,
706
- cacheRead: 0,
759
+ cacheRead: 0.02288,
707
760
  cacheWrite: 0,
708
761
  },
709
762
  contextWindow: 131072,
@@ -740,7 +793,7 @@ export const OPENROUTER_MODELS = {
740
793
  cost: {
741
794
  input: 0.09,
742
795
  output: 0.18,
743
- cacheRead: 0.02,
796
+ cacheRead: 0.018,
744
797
  cacheWrite: 0,
745
798
  },
746
799
  contextWindow: 1048576,
@@ -801,24 +854,6 @@ export const OPENROUTER_MODELS = {
801
854
  contextWindow: 1048576,
802
855
  maxTokens: 65535,
803
856
  },
804
- "google/gemini-2.5-flash-lite-preview-09-2025": {
805
- id: "google/gemini-2.5-flash-lite-preview-09-2025",
806
- name: "Google: Gemini 2.5 Flash Lite Preview 09-2025",
807
- api: "openai-completions",
808
- provider: "openrouter",
809
- baseUrl: "https://openrouter.ai/api/v1",
810
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
811
- reasoning: true,
812
- input: ["text", "image"],
813
- cost: {
814
- input: 0.1,
815
- output: 0.4,
816
- cacheRead: 0.01,
817
- cacheWrite: 0.083333,
818
- },
819
- contextWindow: 1048576,
820
- maxTokens: 65535,
821
- },
822
857
  "google/gemini-2.5-pro": {
823
858
  id: "google/gemini-2.5-pro",
824
859
  name: "Google: Gemini 2.5 Pro",
@@ -906,7 +941,7 @@ export const OPENROUTER_MODELS = {
906
941
  cacheRead: 0.2,
907
942
  cacheWrite: 0.375,
908
943
  },
909
- contextWindow: 131072,
944
+ contextWindow: 65536,
910
945
  maxTokens: 32768,
911
946
  },
912
947
  "google/gemini-3.1-flash-lite": {
@@ -1105,7 +1140,7 @@ export const OPENROUTER_MODELS = {
1105
1140
  cacheWrite: 0,
1106
1141
  },
1107
1142
  contextWindow: 262144,
1108
- maxTokens: 32768,
1143
+ maxTokens: 8192,
1109
1144
  },
1110
1145
  "ibm-granite/granite-4.1-8b": {
1111
1146
  id: "ibm-granite/granite-4.1-8b",
@@ -1213,8 +1248,8 @@ export const OPENROUTER_MODELS = {
1213
1248
  cacheRead: 0.06,
1214
1249
  cacheWrite: 0,
1215
1250
  },
1216
- contextWindow: 262144,
1217
- maxTokens: 144000,
1251
+ contextWindow: 256000,
1252
+ maxTokens: 80000,
1218
1253
  },
1219
1254
  "liquid/lfm-2.5-1.2b-thinking:free": {
1220
1255
  id: "liquid/lfm-2.5-1.2b-thinking:free",
@@ -1371,12 +1406,12 @@ export const OPENROUTER_MODELS = {
1371
1406
  input: ["text"],
1372
1407
  cost: {
1373
1408
  input: 0.255,
1374
- output: 1,
1375
- cacheRead: 0.03,
1409
+ output: 1.02,
1410
+ cacheRead: 0,
1376
1411
  cacheWrite: 0,
1377
1412
  },
1378
1413
  contextWindow: 204800,
1379
- maxTokens: 196608,
1414
+ maxTokens: 131072,
1380
1415
  },
1381
1416
  "minimax/minimax-m2.1": {
1382
1417
  id: "minimax/minimax-m2.1",
@@ -1388,13 +1423,13 @@ export const OPENROUTER_MODELS = {
1388
1423
  reasoning: true,
1389
1424
  input: ["text"],
1390
1425
  cost: {
1391
- input: 0.29,
1392
- output: 0.95,
1426
+ input: 0.3,
1427
+ output: 1.2,
1393
1428
  cacheRead: 0.03,
1394
1429
  cacheWrite: 0,
1395
1430
  },
1396
1431
  contextWindow: 204800,
1397
- maxTokens: 196608,
1432
+ maxTokens: 131072,
1398
1433
  },
1399
1434
  "minimax/minimax-m2.5": {
1400
1435
  id: "minimax/minimax-m2.5",
@@ -1448,7 +1483,7 @@ export const OPENROUTER_MODELS = {
1448
1483
  cacheWrite: 0,
1449
1484
  },
1450
1485
  contextWindow: 1048576,
1451
- maxTokens: 4096,
1486
+ maxTokens: 512000,
1452
1487
  },
1453
1488
  "mistralai/codestral-2508": {
1454
1489
  id: "mistralai/codestral-2508",
@@ -1772,7 +1807,7 @@ export const OPENROUTER_MODELS = {
1772
1807
  cacheWrite: 0,
1773
1808
  },
1774
1809
  contextWindow: 131072,
1775
- maxTokens: 32768,
1810
+ maxTokens: 100352,
1776
1811
  },
1777
1812
  "moonshotai/kimi-k2-0905": {
1778
1813
  id: "moonshotai/kimi-k2-0905",
@@ -1790,7 +1825,7 @@ export const OPENROUTER_MODELS = {
1790
1825
  cacheWrite: 0,
1791
1826
  },
1792
1827
  contextWindow: 262144,
1793
- maxTokens: 262144,
1828
+ maxTokens: 100352,
1794
1829
  },
1795
1830
  "moonshotai/kimi-k2-thinking": {
1796
1831
  id: "moonshotai/kimi-k2-thinking",
@@ -1804,11 +1839,11 @@ export const OPENROUTER_MODELS = {
1804
1839
  cost: {
1805
1840
  input: 0.6,
1806
1841
  output: 2.5,
1807
- cacheRead: 0.6,
1842
+ cacheRead: 0.15,
1808
1843
  cacheWrite: 0,
1809
1844
  },
1810
1845
  contextWindow: 262144,
1811
- maxTokens: 262144,
1846
+ maxTokens: 100352,
1812
1847
  },
1813
1848
  "moonshotai/kimi-k2.5": {
1814
1849
  id: "moonshotai/kimi-k2.5",
@@ -1838,9 +1873,9 @@ export const OPENROUTER_MODELS = {
1838
1873
  reasoning: true,
1839
1874
  input: ["text", "image"],
1840
1875
  cost: {
1841
- input: 0.66,
1876
+ input: 0.65,
1842
1877
  output: 3.41,
1843
- cacheRead: 0.144,
1878
+ cacheRead: 0.14,
1844
1879
  cacheWrite: 0,
1845
1880
  },
1846
1881
  contextWindow: 262144,
@@ -1856,13 +1891,49 @@ export const OPENROUTER_MODELS = {
1856
1891
  reasoning: true,
1857
1892
  input: ["text", "image"],
1858
1893
  cost: {
1859
- input: 0.74,
1860
- output: 3.5,
1861
- cacheRead: 0.15,
1894
+ input: 0.72,
1895
+ output: 3.49,
1896
+ cacheRead: 0.159,
1862
1897
  cacheWrite: 0,
1863
1898
  },
1864
1899
  contextWindow: 262144,
1865
- maxTokens: 16384,
1900
+ maxTokens: 262144,
1901
+ },
1902
+ "nex-agi/nex-n2-mini": {
1903
+ id: "nex-agi/nex-n2-mini",
1904
+ name: "Nex AGI: Nex-N2-Mini",
1905
+ api: "openai-completions",
1906
+ provider: "openrouter",
1907
+ baseUrl: "https://openrouter.ai/api/v1",
1908
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1909
+ reasoning: true,
1910
+ input: ["text", "image"],
1911
+ cost: {
1912
+ input: 0.025,
1913
+ output: 0.1,
1914
+ cacheRead: 0.0025,
1915
+ cacheWrite: 0,
1916
+ },
1917
+ contextWindow: 262144,
1918
+ maxTokens: 262144,
1919
+ },
1920
+ "nex-agi/nex-n2-pro": {
1921
+ id: "nex-agi/nex-n2-pro",
1922
+ name: "Nex AGI: Nex-N2-Pro",
1923
+ api: "openai-completions",
1924
+ provider: "openrouter",
1925
+ baseUrl: "https://openrouter.ai/api/v1",
1926
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
1927
+ reasoning: true,
1928
+ input: ["text", "image"],
1929
+ cost: {
1930
+ input: 0.25,
1931
+ output: 1,
1932
+ cacheRead: 0.025,
1933
+ cacheWrite: 0,
1934
+ },
1935
+ contextWindow: 262144,
1936
+ maxTokens: 262144,
1866
1937
  },
1867
1938
  "nvidia/llama-3.3-nemotron-super-49b-v1.5": {
1868
1939
  id: "nvidia/llama-3.3-nemotron-super-49b-v1.5",
@@ -1946,7 +2017,7 @@ export const OPENROUTER_MODELS = {
1946
2017
  reasoning: true,
1947
2018
  input: ["text"],
1948
2019
  cost: {
1949
- input: 0.09,
2020
+ input: 0.08,
1950
2021
  output: 0.45,
1951
2022
  cacheRead: 0,
1952
2023
  cacheWrite: 0,
@@ -2186,7 +2257,7 @@ export const OPENROUTER_MODELS = {
2186
2257
  cacheWrite: 0,
2187
2258
  },
2188
2259
  contextWindow: 1047576,
2189
- maxTokens: 4096,
2260
+ maxTokens: 32768,
2190
2261
  },
2191
2262
  "openai/gpt-4.1-nano": {
2192
2263
  id: "openai/gpt-4.1-nano",
@@ -2218,7 +2289,7 @@ export const OPENROUTER_MODELS = {
2218
2289
  cost: {
2219
2290
  input: 2.5,
2220
2291
  output: 10,
2221
- cacheRead: 1.25,
2292
+ cacheRead: 0,
2222
2293
  cacheWrite: 0,
2223
2294
  },
2224
2295
  contextWindow: 128000,
@@ -2362,11 +2433,11 @@ export const OPENROUTER_MODELS = {
2362
2433
  cost: {
2363
2434
  input: 0.25,
2364
2435
  output: 2,
2365
- cacheRead: 0.03,
2436
+ cacheRead: 0.025,
2366
2437
  cacheWrite: 0,
2367
2438
  },
2368
2439
  contextWindow: 400000,
2369
- maxTokens: 4096,
2440
+ maxTokens: 128000,
2370
2441
  },
2371
2442
  "openai/gpt-5-nano": {
2372
2443
  id: "openai/gpt-5-nano",
@@ -2434,11 +2505,11 @@ export const OPENROUTER_MODELS = {
2434
2505
  cost: {
2435
2506
  input: 1.25,
2436
2507
  output: 10,
2437
- cacheRead: 0.125,
2508
+ cacheRead: 0.13,
2438
2509
  cacheWrite: 0,
2439
2510
  },
2440
2511
  contextWindow: 128000,
2441
- maxTokens: 16384,
2512
+ maxTokens: 32000,
2442
2513
  },
2443
2514
  "openai/gpt-5.1-codex": {
2444
2515
  id: "openai/gpt-5.1-codex",
@@ -2530,7 +2601,7 @@ export const OPENROUTER_MODELS = {
2530
2601
  cacheWrite: 0,
2531
2602
  },
2532
2603
  contextWindow: 128000,
2533
- maxTokens: 32000,
2604
+ maxTokens: 16384,
2534
2605
  },
2535
2606
  "openai/gpt-5.2-codex": {
2536
2607
  id: "openai/gpt-5.2-codex",
@@ -2722,6 +2793,120 @@ export const OPENROUTER_MODELS = {
2722
2793
  contextWindow: 1050000,
2723
2794
  maxTokens: 128000,
2724
2795
  },
2796
+ "openai/gpt-5.6-luna": {
2797
+ id: "openai/gpt-5.6-luna",
2798
+ name: "OpenAI: GPT-5.6 Luna",
2799
+ api: "openai-completions",
2800
+ provider: "openrouter",
2801
+ baseUrl: "https://openrouter.ai/api/v1",
2802
+ compat: { "thinkingFormat": "openrouter" },
2803
+ reasoning: true,
2804
+ thinkingLevelMap: { "xhigh": "xhigh" },
2805
+ input: ["text", "image"],
2806
+ cost: {
2807
+ input: 1,
2808
+ output: 6,
2809
+ cacheRead: 0.1,
2810
+ cacheWrite: 1.25,
2811
+ },
2812
+ contextWindow: 1050000,
2813
+ maxTokens: 128000,
2814
+ },
2815
+ "openai/gpt-5.6-luna-pro": {
2816
+ id: "openai/gpt-5.6-luna-pro",
2817
+ name: "OpenAI: GPT-5.6 Luna Pro",
2818
+ api: "openai-completions",
2819
+ provider: "openrouter",
2820
+ baseUrl: "https://openrouter.ai/api/v1",
2821
+ compat: { "thinkingFormat": "openrouter" },
2822
+ reasoning: true,
2823
+ thinkingLevelMap: { "xhigh": "xhigh" },
2824
+ input: ["text", "image"],
2825
+ cost: {
2826
+ input: 1,
2827
+ output: 6,
2828
+ cacheRead: 0.1,
2829
+ cacheWrite: 1.25,
2830
+ },
2831
+ contextWindow: 1050000,
2832
+ maxTokens: 128000,
2833
+ },
2834
+ "openai/gpt-5.6-sol": {
2835
+ id: "openai/gpt-5.6-sol",
2836
+ name: "OpenAI: GPT-5.6 Sol",
2837
+ api: "openai-completions",
2838
+ provider: "openrouter",
2839
+ baseUrl: "https://openrouter.ai/api/v1",
2840
+ compat: { "thinkingFormat": "openrouter" },
2841
+ reasoning: true,
2842
+ thinkingLevelMap: { "xhigh": "xhigh" },
2843
+ input: ["text", "image"],
2844
+ cost: {
2845
+ input: 5,
2846
+ output: 30,
2847
+ cacheRead: 0.5,
2848
+ cacheWrite: 6.25,
2849
+ },
2850
+ contextWindow: 1050000,
2851
+ maxTokens: 128000,
2852
+ },
2853
+ "openai/gpt-5.6-sol-pro": {
2854
+ id: "openai/gpt-5.6-sol-pro",
2855
+ name: "OpenAI: GPT-5.6 Sol Pro",
2856
+ api: "openai-completions",
2857
+ provider: "openrouter",
2858
+ baseUrl: "https://openrouter.ai/api/v1",
2859
+ compat: { "thinkingFormat": "openrouter" },
2860
+ reasoning: true,
2861
+ thinkingLevelMap: { "xhigh": "xhigh" },
2862
+ input: ["text", "image"],
2863
+ cost: {
2864
+ input: 5,
2865
+ output: 30,
2866
+ cacheRead: 0.5,
2867
+ cacheWrite: 6.25,
2868
+ },
2869
+ contextWindow: 1050000,
2870
+ maxTokens: 128000,
2871
+ },
2872
+ "openai/gpt-5.6-terra": {
2873
+ id: "openai/gpt-5.6-terra",
2874
+ name: "OpenAI: GPT-5.6 Terra",
2875
+ api: "openai-completions",
2876
+ provider: "openrouter",
2877
+ baseUrl: "https://openrouter.ai/api/v1",
2878
+ compat: { "thinkingFormat": "openrouter" },
2879
+ reasoning: true,
2880
+ thinkingLevelMap: { "xhigh": "xhigh" },
2881
+ input: ["text", "image"],
2882
+ cost: {
2883
+ input: 2.5,
2884
+ output: 15,
2885
+ cacheRead: 0.25,
2886
+ cacheWrite: 3.125,
2887
+ },
2888
+ contextWindow: 1050000,
2889
+ maxTokens: 128000,
2890
+ },
2891
+ "openai/gpt-5.6-terra-pro": {
2892
+ id: "openai/gpt-5.6-terra-pro",
2893
+ name: "OpenAI: GPT-5.6 Terra Pro",
2894
+ api: "openai-completions",
2895
+ provider: "openrouter",
2896
+ baseUrl: "https://openrouter.ai/api/v1",
2897
+ compat: { "thinkingFormat": "openrouter" },
2898
+ reasoning: true,
2899
+ thinkingLevelMap: { "xhigh": "xhigh" },
2900
+ input: ["text", "image"],
2901
+ cost: {
2902
+ input: 2.5,
2903
+ output: 15,
2904
+ cacheRead: 0.25,
2905
+ cacheWrite: 3.125,
2906
+ },
2907
+ contextWindow: 1050000,
2908
+ maxTokens: 128000,
2909
+ },
2725
2910
  "openai/gpt-audio": {
2726
2911
  id: "openai/gpt-audio",
2727
2912
  name: "OpenAI: GPT Audio",
@@ -2786,7 +2971,7 @@ export const OPENROUTER_MODELS = {
2786
2971
  reasoning: true,
2787
2972
  input: ["text"],
2788
2973
  cost: {
2789
- input: 0.039,
2974
+ input: 0.036,
2790
2975
  output: 0.18,
2791
2976
  cacheRead: 0,
2792
2977
  cacheWrite: 0,
@@ -3082,24 +3267,6 @@ export const OPENROUTER_MODELS = {
3082
3267
  contextWindow: 1000000,
3083
3268
  maxTokens: 30000,
3084
3269
  },
3085
- "openrouter/owl-alpha": {
3086
- id: "openrouter/owl-alpha",
3087
- name: "Owl Alpha",
3088
- api: "openai-completions",
3089
- provider: "openrouter",
3090
- baseUrl: "https://openrouter.ai/api/v1",
3091
- compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
3092
- reasoning: false,
3093
- input: ["text"],
3094
- cost: {
3095
- input: 0,
3096
- output: 0,
3097
- cacheRead: 0,
3098
- cacheWrite: 0,
3099
- },
3100
- contextWindow: 1048756,
3101
- maxTokens: 262144,
3102
- },
3103
3270
  "poolside/laguna-m.1": {
3104
3271
  id: "poolside/laguna-m.1",
3105
3272
  name: "Poolside: Laguna M.1",
@@ -3136,9 +3303,9 @@ export const OPENROUTER_MODELS = {
3136
3303
  contextWindow: 262144,
3137
3304
  maxTokens: 32768,
3138
3305
  },
3139
- "poolside/laguna-xs.2": {
3140
- id: "poolside/laguna-xs.2",
3141
- name: "Poolside: Laguna XS.2",
3306
+ "poolside/laguna-xs-2.1": {
3307
+ id: "poolside/laguna-xs-2.1",
3308
+ name: "Poolside: Laguna XS 2.1",
3142
3309
  api: "openai-completions",
3143
3310
  provider: "openrouter",
3144
3311
  baseUrl: "https://openrouter.ai/api/v1",
@@ -3146,17 +3313,17 @@ export const OPENROUTER_MODELS = {
3146
3313
  reasoning: true,
3147
3314
  input: ["text"],
3148
3315
  cost: {
3149
- input: 0.1,
3150
- output: 0.2,
3151
- cacheRead: 0.05,
3316
+ input: 0.06,
3317
+ output: 0.12,
3318
+ cacheRead: 0.03,
3152
3319
  cacheWrite: 0,
3153
3320
  },
3154
3321
  contextWindow: 262144,
3155
3322
  maxTokens: 32768,
3156
3323
  },
3157
- "poolside/laguna-xs.2:free": {
3158
- id: "poolside/laguna-xs.2:free",
3159
- name: "Poolside: Laguna XS.2 (free)",
3324
+ "poolside/laguna-xs-2.1:free": {
3325
+ id: "poolside/laguna-xs-2.1:free",
3326
+ name: "Poolside: Laguna XS 2.1 (free)",
3160
3327
  api: "openai-completions",
3161
3328
  provider: "openrouter",
3162
3329
  baseUrl: "https://openrouter.ai/api/v1",
@@ -3326,13 +3493,13 @@ export const OPENROUTER_MODELS = {
3326
3493
  reasoning: true,
3327
3494
  input: ["text"],
3328
3495
  cost: {
3329
- input: 0.1,
3330
- output: 0.1,
3331
- cacheRead: 0.1,
3496
+ input: 0.1495,
3497
+ output: 1.495,
3498
+ cacheRead: 0,
3332
3499
  cacheWrite: 0,
3333
3500
  },
3334
3501
  contextWindow: 262144,
3335
- maxTokens: 262144,
3502
+ maxTokens: 4096,
3336
3503
  },
3337
3504
  "qwen/qwen3-30b-a3b": {
3338
3505
  id: "qwen/qwen3-30b-a3b",
@@ -3380,13 +3547,13 @@ export const OPENROUTER_MODELS = {
3380
3547
  reasoning: true,
3381
3548
  input: ["text"],
3382
3549
  cost: {
3383
- input: 0.08,
3384
- output: 0.4,
3385
- cacheRead: 0.08,
3550
+ input: 0.13,
3551
+ output: 1.56,
3552
+ cacheRead: 0,
3386
3553
  cacheWrite: 0,
3387
3554
  },
3388
3555
  contextWindow: 131072,
3389
- maxTokens: 131072,
3556
+ maxTokens: 32768,
3390
3557
  },
3391
3558
  "qwen/qwen3-32b": {
3392
3559
  id: "qwen/qwen3-32b",
@@ -3416,9 +3583,9 @@ export const OPENROUTER_MODELS = {
3416
3583
  reasoning: true,
3417
3584
  input: ["text"],
3418
3585
  cost: {
3419
- input: 0.05,
3420
- output: 0.4,
3421
- cacheRead: 0.05,
3586
+ input: 0.117,
3587
+ output: 0.455,
3588
+ cacheRead: 0,
3422
3589
  cacheWrite: 0,
3423
3590
  },
3424
3591
  contextWindow: 131072,
@@ -3722,8 +3889,8 @@ export const OPENROUTER_MODELS = {
3722
3889
  reasoning: false,
3723
3890
  input: ["text", "image"],
3724
3891
  cost: {
3725
- input: 0.08,
3726
- output: 0.5,
3892
+ input: 0.117,
3893
+ output: 0.455,
3727
3894
  cacheRead: 0,
3728
3895
  cacheWrite: 0,
3729
3896
  },
@@ -3814,7 +3981,7 @@ export const OPENROUTER_MODELS = {
3814
3981
  cost: {
3815
3982
  input: 0.385,
3816
3983
  output: 2.45,
3817
- cacheRead: 0,
3984
+ cacheRead: 0.111,
3818
3985
  cacheWrite: 0,
3819
3986
  },
3820
3987
  contextWindow: 256000,
@@ -3835,8 +4002,8 @@ export const OPENROUTER_MODELS = {
3835
4002
  cacheRead: 0,
3836
4003
  cacheWrite: 0,
3837
4004
  },
3838
- contextWindow: 256000,
3839
- maxTokens: 32768,
4005
+ contextWindow: 262144,
4006
+ maxTokens: 262144,
3840
4007
  },
3841
4008
  "qwen/qwen3.5-flash-02-23": {
3842
4009
  id: "qwen/qwen3.5-flash-02-23",
@@ -3902,9 +4069,9 @@ export const OPENROUTER_MODELS = {
3902
4069
  reasoning: true,
3903
4070
  input: ["text", "image"],
3904
4071
  cost: {
3905
- input: 0.2885,
3906
- output: 3.17,
3907
- cacheRead: 0,
4072
+ input: 0.285,
4073
+ output: 2.4,
4074
+ cacheRead: 0.15,
3908
4075
  cacheWrite: 0,
3909
4076
  },
3910
4077
  contextWindow: 262144,
@@ -4054,6 +4221,24 @@ export const OPENROUTER_MODELS = {
4054
4221
  contextWindow: 256000,
4055
4222
  maxTokens: 128000,
4056
4223
  },
4224
+ "sakana/fugu-ultra": {
4225
+ id: "sakana/fugu-ultra",
4226
+ name: "Sakana: Fugu Ultra",
4227
+ api: "openai-completions",
4228
+ provider: "openrouter",
4229
+ baseUrl: "https://openrouter.ai/api/v1",
4230
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4231
+ reasoning: true,
4232
+ input: ["text", "image"],
4233
+ cost: {
4234
+ input: 5,
4235
+ output: 30,
4236
+ cacheRead: 0.5,
4237
+ cacheWrite: 0,
4238
+ },
4239
+ contextWindow: 1000000,
4240
+ maxTokens: 128000,
4241
+ },
4057
4242
  "sao10k/l3.1-euryale-70b": {
4058
4243
  id: "sao10k/l3.1-euryale-70b",
4059
4244
  name: "Sao10K: Llama 3.1 Euryale 70B v2.2",
@@ -4082,13 +4267,13 @@ export const OPENROUTER_MODELS = {
4082
4267
  reasoning: true,
4083
4268
  input: ["text"],
4084
4269
  cost: {
4085
- input: 0.09,
4270
+ input: 0.1,
4086
4271
  output: 0.3,
4087
- cacheRead: 0.02,
4272
+ cacheRead: 0,
4088
4273
  cacheWrite: 0,
4089
4274
  },
4090
4275
  contextWindow: 262144,
4091
- maxTokens: 16384,
4276
+ maxTokens: 65536,
4092
4277
  },
4093
4278
  "stepfun/step-3.7-flash": {
4094
4279
  id: "stepfun/step-3.7-flash",
@@ -4108,6 +4293,24 @@ export const OPENROUTER_MODELS = {
4108
4293
  contextWindow: 256000,
4109
4294
  maxTokens: 256000,
4110
4295
  },
4296
+ "tencent/hy3": {
4297
+ id: "tencent/hy3",
4298
+ name: "Tencent: Hy3",
4299
+ api: "openai-completions",
4300
+ provider: "openrouter",
4301
+ baseUrl: "https://openrouter.ai/api/v1",
4302
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4303
+ reasoning: true,
4304
+ input: ["text"],
4305
+ cost: {
4306
+ input: 0.14,
4307
+ output: 0.58,
4308
+ cacheRead: 0.035,
4309
+ cacheWrite: 0,
4310
+ },
4311
+ contextWindow: 262144,
4312
+ maxTokens: 4096,
4313
+ },
4111
4314
  "tencent/hy3-preview": {
4112
4315
  id: "tencent/hy3-preview",
4113
4316
  name: "Tencent: Hy3 preview",
@@ -4126,6 +4329,24 @@ export const OPENROUTER_MODELS = {
4126
4329
  contextWindow: 262144,
4127
4330
  maxTokens: 4096,
4128
4331
  },
4332
+ "tencent/hy3:free": {
4333
+ id: "tencent/hy3:free",
4334
+ name: "Tencent: Hy3 (free)",
4335
+ api: "openai-completions",
4336
+ provider: "openrouter",
4337
+ baseUrl: "https://openrouter.ai/api/v1",
4338
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4339
+ reasoning: true,
4340
+ input: ["text"],
4341
+ cost: {
4342
+ input: 0,
4343
+ output: 0,
4344
+ cacheRead: 0,
4345
+ cacheWrite: 0,
4346
+ },
4347
+ contextWindow: 262144,
4348
+ maxTokens: 262144,
4349
+ },
4129
4350
  "thedrummer/unslopnemo-12b": {
4130
4351
  id: "thedrummer/unslopnemo-12b",
4131
4352
  name: "TheDrummer: UnslopNemo 12B",
@@ -4198,6 +4419,24 @@ export const OPENROUTER_MODELS = {
4198
4419
  contextWindow: 1000000,
4199
4420
  maxTokens: 4096,
4200
4421
  },
4422
+ "x-ai/grok-4.5": {
4423
+ id: "x-ai/grok-4.5",
4424
+ name: "xAI: Grok 4.5",
4425
+ api: "openai-completions",
4426
+ provider: "openrouter",
4427
+ baseUrl: "https://openrouter.ai/api/v1",
4428
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4429
+ reasoning: true,
4430
+ input: ["text", "image"],
4431
+ cost: {
4432
+ input: 2,
4433
+ output: 6,
4434
+ cacheRead: 0.5,
4435
+ cacheWrite: 0,
4436
+ },
4437
+ contextWindow: 500000,
4438
+ maxTokens: 4096,
4439
+ },
4201
4440
  "x-ai/grok-build-0.1": {
4202
4441
  id: "x-ai/grok-build-0.1",
4203
4442
  name: "xAI: Grok Build 0.1",
@@ -4226,13 +4465,13 @@ export const OPENROUTER_MODELS = {
4226
4465
  reasoning: true,
4227
4466
  input: ["text", "image"],
4228
4467
  cost: {
4229
- input: 0.14,
4468
+ input: 0.105,
4230
4469
  output: 0.28,
4231
- cacheRead: 0.0028,
4470
+ cacheRead: 0.028,
4232
4471
  cacheWrite: 0,
4233
4472
  },
4234
4473
  contextWindow: 1048576,
4235
- maxTokens: 131072,
4474
+ maxTokens: 4096,
4236
4475
  },
4237
4476
  "xiaomi/mimo-v2.5-pro": {
4238
4477
  id: "xiaomi/mimo-v2.5-pro",
@@ -4424,13 +4663,13 @@ export const OPENROUTER_MODELS = {
4424
4663
  reasoning: true,
4425
4664
  input: ["text"],
4426
4665
  cost: {
4427
- input: 0.98,
4428
- output: 3.08,
4429
- cacheRead: 0.182,
4666
+ input: 0.966,
4667
+ output: 3.036,
4668
+ cacheRead: 0.1794,
4430
4669
  cacheWrite: 0,
4431
4670
  },
4432
4671
  contextWindow: 202752,
4433
- maxTokens: 4096,
4672
+ maxTokens: 128000,
4434
4673
  },
4435
4674
  "z-ai/glm-5.2": {
4436
4675
  id: "z-ai/glm-5.2",
@@ -4443,13 +4682,13 @@ export const OPENROUTER_MODELS = {
4443
4682
  thinkingLevelMap: { "xhigh": "xhigh" },
4444
4683
  input: ["text"],
4445
4684
  cost: {
4446
- input: 0.95,
4447
- output: 3,
4448
- cacheRead: 0.18,
4685
+ input: 0.54,
4686
+ output: 1.76,
4687
+ cacheRead: 0.1,
4449
4688
  cacheWrite: 0,
4450
4689
  },
4451
4690
  contextWindow: 1048576,
4452
- maxTokens: 32768,
4691
+ maxTokens: 101376,
4453
4692
  },
4454
4693
  "z-ai/glm-5v-turbo": {
4455
4694
  id: "z-ai/glm-5v-turbo",
@@ -4533,10 +4772,10 @@ export const OPENROUTER_MODELS = {
4533
4772
  reasoning: true,
4534
4773
  input: ["text", "image"],
4535
4774
  cost: {
4536
- input: 3,
4537
- output: 15,
4538
- cacheRead: 0.3,
4539
- cacheWrite: 3.75,
4775
+ input: 2,
4776
+ output: 10,
4777
+ cacheRead: 0.2,
4778
+ cacheWrite: 2.5,
4540
4779
  },
4541
4780
  contextWindow: 1000000,
4542
4781
  maxTokens: 128000,
@@ -4587,9 +4826,9 @@ export const OPENROUTER_MODELS = {
4587
4826
  reasoning: true,
4588
4827
  input: ["text", "image"],
4589
4828
  cost: {
4590
- input: 0.66,
4829
+ input: 0.65,
4591
4830
  output: 3.41,
4592
- cacheRead: 0.144,
4831
+ cacheRead: 0.14,
4593
4832
  cacheWrite: 0,
4594
4833
  },
4595
4834
  contextWindow: 262144,
@@ -4608,7 +4847,7 @@ export const OPENROUTER_MODELS = {
4608
4847
  input: 5,
4609
4848
  output: 30,
4610
4849
  cacheRead: 0.5,
4611
- cacheWrite: 0,
4850
+ cacheWrite: 6.25,
4612
4851
  },
4613
4852
  contextWindow: 1050000,
4614
4853
  maxTokens: 128000,
@@ -4631,5 +4870,23 @@ export const OPENROUTER_MODELS = {
4631
4870
  contextWindow: 400000,
4632
4871
  maxTokens: 128000,
4633
4872
  },
4873
+ "~x-ai/grok-latest": {
4874
+ id: "~x-ai/grok-latest",
4875
+ name: "xAI: Grok Latest",
4876
+ api: "openai-completions",
4877
+ provider: "openrouter",
4878
+ baseUrl: "https://openrouter.ai/api/v1",
4879
+ compat: { "supportsDeveloperRole": false, "thinkingFormat": "openrouter" },
4880
+ reasoning: true,
4881
+ input: ["text", "image"],
4882
+ cost: {
4883
+ input: 2,
4884
+ output: 6,
4885
+ cacheRead: 0.5,
4886
+ cacheWrite: 0,
4887
+ },
4888
+ contextWindow: 500000,
4889
+ maxTokens: 4096,
4890
+ },
4634
4891
  };
4635
4892
  //# sourceMappingURL=openrouter.models.js.map