@earendil-works/pi-ai 0.80.9 → 0.81.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 (258) hide show
  1. package/README.md +4 -2
  2. package/dist/api/openai-codex-responses.d.ts.map +1 -1
  3. package/dist/api/openai-codex-responses.js +2 -7
  4. package/dist/api/openai-codex-responses.js.map +1 -1
  5. package/dist/api/openai-completions.d.ts.map +1 -1
  6. package/dist/api/openai-completions.js +14 -2
  7. package/dist/api/openai-completions.js.map +1 -1
  8. package/dist/api/pi-messages.d.ts.map +1 -1
  9. package/dist/api/pi-messages.js +2 -4
  10. package/dist/api/pi-messages.js.map +1 -1
  11. package/dist/auth/helpers.d.ts.map +1 -1
  12. package/dist/auth/helpers.js +3 -2
  13. package/dist/auth/helpers.js.map +1 -1
  14. package/dist/env-api-keys.d.ts.map +1 -1
  15. package/dist/env-api-keys.js +2 -0
  16. package/dist/env-api-keys.js.map +1 -1
  17. package/dist/image-models.generated.d.ts +60 -0
  18. package/dist/image-models.generated.d.ts.map +1 -1
  19. package/dist/image-models.generated.js +236 -176
  20. package/dist/image-models.generated.js.map +1 -1
  21. package/dist/index.d.ts +2 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +2 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/models-store.d.ts +2 -0
  26. package/dist/models-store.d.ts.map +1 -1
  27. package/dist/models-store.js.map +1 -1
  28. package/dist/models.generated.d.ts +4379 -22338
  29. package/dist/models.generated.d.ts.map +1 -1
  30. package/dist/models.generated.js +4 -0
  31. package/dist/models.generated.js.map +1 -1
  32. package/dist/providers/all.d.ts +2 -0
  33. package/dist/providers/all.d.ts.map +1 -1
  34. package/dist/providers/all.js +8 -0
  35. package/dist/providers/all.js.map +1 -1
  36. package/dist/providers/amazon-bedrock.d.ts.map +1 -1
  37. package/dist/providers/amazon-bedrock.js +3 -2
  38. package/dist/providers/amazon-bedrock.js.map +1 -1
  39. package/dist/providers/amazon-bedrock.models.d.ts +436 -1988
  40. package/dist/providers/amazon-bedrock.models.d.ts.map +1 -1
  41. package/dist/providers/amazon-bedrock.models.js +2 -1892
  42. package/dist/providers/amazon-bedrock.models.js.map +1 -1
  43. package/dist/providers/ant-ling.models.d.ts +10 -80
  44. package/dist/providers/ant-ling.models.d.ts.map +1 -1
  45. package/dist/providers/ant-ling.models.js +2 -57
  46. package/dist/providers/ant-ling.models.js.map +1 -1
  47. package/dist/providers/anthropic.models.d.ts +43 -267
  48. package/dist/providers/anthropic.models.d.ts.map +1 -1
  49. package/dist/providers/anthropic.models.js +2 -252
  50. package/dist/providers/anthropic.models.js.map +1 -1
  51. package/dist/providers/azure-openai-responses.models.d.ts +184 -883
  52. package/dist/providers/azure-openai-responses.models.d.ts.map +1 -1
  53. package/dist/providers/azure-openai-responses.models.js +2 -811
  54. package/dist/providers/azure-openai-responses.models.js.map +1 -1
  55. package/dist/providers/cerebras.models.d.ts +10 -60
  56. package/dist/providers/cerebras.models.d.ts.map +1 -1
  57. package/dist/providers/cerebras.models.js +2 -56
  58. package/dist/providers/cerebras.models.js.map +1 -1
  59. package/dist/providers/cloudflare-ai-gateway.models.d.ts +168 -884
  60. package/dist/providers/cloudflare-ai-gateway.models.d.ts.map +1 -1
  61. package/dist/providers/cloudflare-ai-gateway.models.js +2 -755
  62. package/dist/providers/cloudflare-ai-gateway.models.js.map +1 -1
  63. package/dist/providers/cloudflare-workers-ai.models.d.ts +40 -286
  64. package/dist/providers/cloudflare-workers-ai.models.d.ts.map +1 -1
  65. package/dist/providers/cloudflare-workers-ai.models.js +2 -236
  66. package/dist/providers/cloudflare-workers-ai.models.js.map +1 -1
  67. package/dist/providers/data/.manifest.json +1 -0
  68. package/dist/providers/data/amazon-bedrock.json +1 -0
  69. package/dist/providers/data/ant-ling.json +1 -0
  70. package/dist/providers/data/anthropic.json +1 -0
  71. package/dist/providers/data/azure-openai-responses.json +1 -0
  72. package/dist/providers/data/cerebras.json +1 -0
  73. package/dist/providers/data/cloudflare-ai-gateway.json +1 -0
  74. package/dist/providers/data/cloudflare-workers-ai.json +1 -0
  75. package/dist/providers/data/deepseek.json +1 -0
  76. package/dist/providers/data/fireworks.json +1 -0
  77. package/dist/providers/data/github-copilot.json +1 -0
  78. package/dist/providers/data/google-vertex.json +1 -0
  79. package/dist/providers/data/google.json +1 -0
  80. package/dist/providers/data/groq.json +1 -0
  81. package/dist/providers/data/huggingface.json +1 -0
  82. package/dist/providers/data/kimi-coding.json +1 -0
  83. package/dist/providers/data/minimax-cn.json +1 -0
  84. package/dist/providers/data/minimax.json +1 -0
  85. package/dist/providers/data/mistral.json +1 -0
  86. package/dist/providers/data/moonshotai-cn.json +1 -0
  87. package/dist/providers/data/moonshotai.json +1 -0
  88. package/dist/providers/data/nvidia.json +1 -0
  89. package/dist/providers/data/openai-codex.json +1 -0
  90. package/dist/providers/data/openai.json +1 -0
  91. package/dist/providers/data/opencode-go.json +1 -0
  92. package/dist/providers/data/opencode.json +1 -0
  93. package/dist/providers/data/openrouter.json +1 -0
  94. package/dist/providers/data/qwen-token-plan-cn.json +1 -0
  95. package/dist/providers/data/qwen-token-plan.json +1 -0
  96. package/dist/providers/data/together.json +1 -0
  97. package/dist/providers/data/vercel-ai-gateway.json +1 -0
  98. package/dist/providers/data/xai.json +1 -0
  99. package/dist/providers/data/xiaomi-token-plan-ams.json +1 -0
  100. package/dist/providers/data/xiaomi-token-plan-cn.json +1 -0
  101. package/dist/providers/data/xiaomi-token-plan-sgp.json +1 -0
  102. package/dist/providers/data/xiaomi.json +1 -0
  103. package/dist/providers/data/zai-coding-cn.json +1 -0
  104. package/dist/providers/data/zai.json +1 -0
  105. package/dist/providers/deepseek.models.d.ts +7 -58
  106. package/dist/providers/deepseek.models.d.ts.map +1 -1
  107. package/dist/providers/deepseek.models.js +2 -40
  108. package/dist/providers/deepseek.models.js.map +1 -1
  109. package/dist/providers/fireworks.models.d.ts +49 -362
  110. package/dist/providers/fireworks.models.d.ts.map +1 -1
  111. package/dist/providers/fireworks.models.js +2 -292
  112. package/dist/providers/fireworks.models.js.map +1 -1
  113. package/dist/providers/github-copilot.models.d.ts +85 -760
  114. package/dist/providers/github-copilot.models.d.ts.map +1 -1
  115. package/dist/providers/github-copilot.models.js +2 -538
  116. package/dist/providers/github-copilot.models.js.map +1 -1
  117. package/dist/providers/google-vertex.models.d.ts +31 -189
  118. package/dist/providers/google-vertex.models.d.ts.map +1 -1
  119. package/dist/providers/google-vertex.models.js +2 -179
  120. package/dist/providers/google-vertex.models.js.map +1 -1
  121. package/dist/providers/google.models.d.ts +49 -309
  122. package/dist/providers/google.models.d.ts.map +1 -1
  123. package/dist/providers/google.models.js +2 -285
  124. package/dist/providers/google.models.js.map +1 -1
  125. package/dist/providers/groq.models.d.ts +22 -118
  126. package/dist/providers/groq.models.d.ts.map +1 -1
  127. package/dist/providers/groq.models.js +2 -122
  128. package/dist/providers/groq.models.js.map +1 -1
  129. package/dist/providers/huggingface.models.d.ts +196 -979
  130. package/dist/providers/huggingface.models.d.ts.map +1 -1
  131. package/dist/providers/huggingface.models.js +2 -884
  132. package/dist/providers/huggingface.models.js.map +1 -1
  133. package/dist/providers/kimi-coding.models.d.ts +10 -97
  134. package/dist/providers/kimi-coding.models.d.ts.map +1 -1
  135. package/dist/providers/kimi-coding.models.js +2 -92
  136. package/dist/providers/kimi-coding.models.js.map +1 -1
  137. package/dist/providers/minimax-cn.models.d.ts +10 -48
  138. package/dist/providers/minimax-cn.models.d.ts.map +1 -1
  139. package/dist/providers/minimax-cn.models.js +2 -53
  140. package/dist/providers/minimax-cn.models.js.map +1 -1
  141. package/dist/providers/minimax.models.d.ts +10 -48
  142. package/dist/providers/minimax.models.d.ts.map +1 -1
  143. package/dist/providers/minimax.models.js +2 -53
  144. package/dist/providers/minimax.models.js.map +1 -1
  145. package/dist/providers/mistral.models.d.ts +91 -480
  146. package/dist/providers/mistral.models.d.ts.map +1 -1
  147. package/dist/providers/mistral.models.js +2 -512
  148. package/dist/providers/mistral.models.js.map +1 -1
  149. package/dist/providers/moonshotai-cn.models.d.ts +31 -257
  150. package/dist/providers/moonshotai-cn.models.d.ts.map +1 -1
  151. package/dist/providers/moonshotai-cn.models.js +2 -185
  152. package/dist/providers/moonshotai-cn.models.js.map +1 -1
  153. package/dist/providers/moonshotai.models.d.ts +31 -257
  154. package/dist/providers/moonshotai.models.d.ts.map +1 -1
  155. package/dist/providers/moonshotai.models.js +2 -185
  156. package/dist/providers/moonshotai.models.js.map +1 -1
  157. package/dist/providers/nvidia.models.d.ts +58 -541
  158. package/dist/providers/nvidia.models.d.ts.map +1 -1
  159. package/dist/providers/nvidia.models.js +2 -382
  160. package/dist/providers/nvidia.models.js.map +1 -1
  161. package/dist/providers/openai-codex.models.d.ts +22 -196
  162. package/dist/providers/openai-codex.models.d.ts.map +1 -1
  163. package/dist/providers/openai-codex.models.js +2 -139
  164. package/dist/providers/openai-codex.models.js.map +1 -1
  165. package/dist/providers/openai.models.d.ts +184 -954
  166. package/dist/providers/openai.models.d.ts.map +1 -1
  167. package/dist/providers/openai.models.js +2 -825
  168. package/dist/providers/openai.models.js.map +1 -1
  169. package/dist/providers/opencode-go.d.ts +1 -1
  170. package/dist/providers/opencode-go.d.ts.map +1 -1
  171. package/dist/providers/opencode-go.js +2 -0
  172. package/dist/providers/opencode-go.js.map +1 -1
  173. package/dist/providers/opencode-go.models.d.ts +48 -293
  174. package/dist/providers/opencode-go.models.d.ts.map +1 -1
  175. package/dist/providers/opencode-go.models.js +2 -237
  176. package/dist/providers/opencode-go.models.js.map +1 -1
  177. package/dist/providers/opencode.models.d.ts +160 -1185
  178. package/dist/providers/opencode.models.d.ts.map +1 -1
  179. package/dist/providers/opencode.models.js +2 -996
  180. package/dist/providers/opencode.models.js.map +1 -1
  181. package/dist/providers/openrouter.models.d.ts +1076 -5750
  182. package/dist/providers/openrouter.models.d.ts.map +1 -1
  183. package/dist/providers/openrouter.models.js +2 -4910
  184. package/dist/providers/openrouter.models.js.map +1 -1
  185. package/dist/providers/qwen-token-plan-cn.d.ts +3 -0
  186. package/dist/providers/qwen-token-plan-cn.d.ts.map +1 -0
  187. package/dist/providers/qwen-token-plan-cn.js +15 -0
  188. package/dist/providers/qwen-token-plan-cn.js.map +1 -0
  189. package/dist/providers/qwen-token-plan-cn.models.d.ts +64 -0
  190. package/dist/providers/qwen-token-plan-cn.models.d.ts.map +1 -0
  191. package/dist/providers/qwen-token-plan-cn.models.js +5 -0
  192. package/dist/providers/qwen-token-plan-cn.models.js.map +1 -0
  193. package/dist/providers/qwen-token-plan.d.ts +3 -0
  194. package/dist/providers/qwen-token-plan.d.ts.map +1 -0
  195. package/dist/providers/qwen-token-plan.js +15 -0
  196. package/dist/providers/qwen-token-plan.js.map +1 -0
  197. package/dist/providers/qwen-token-plan.models.d.ts +64 -0
  198. package/dist/providers/qwen-token-plan.models.d.ts.map +1 -0
  199. package/dist/providers/qwen-token-plan.models.js +5 -0
  200. package/dist/providers/qwen-token-plan.models.js.map +1 -0
  201. package/dist/providers/radius-config.d.ts.map +1 -1
  202. package/dist/providers/radius-config.js +18 -14
  203. package/dist/providers/radius-config.js.map +1 -1
  204. package/dist/providers/together.models.d.ts +49 -579
  205. package/dist/providers/together.models.d.ts.map +1 -1
  206. package/dist/providers/together.models.js +2 -377
  207. package/dist/providers/together.models.js.map +1 -1
  208. package/dist/providers/vercel-ai-gateway.models.d.ts +752 -3336
  209. package/dist/providers/vercel-ai-gateway.models.d.ts.map +1 -1
  210. package/dist/providers/vercel-ai-gateway.models.js +2 -3263
  211. package/dist/providers/vercel-ai-gateway.models.js.map +1 -1
  212. package/dist/providers/xai.models.d.ts +10 -175
  213. package/dist/providers/xai.models.d.ts.map +1 -1
  214. package/dist/providers/xai.models.js +2 -147
  215. package/dist/providers/xai.models.js.map +1 -1
  216. package/dist/providers/xiaomi-token-plan-ams.models.d.ts +10 -60
  217. package/dist/providers/xiaomi-token-plan-ams.models.d.ts.map +1 -1
  218. package/dist/providers/xiaomi-token-plan-ams.models.js +2 -56
  219. package/dist/providers/xiaomi-token-plan-ams.models.js.map +1 -1
  220. package/dist/providers/xiaomi-token-plan-cn.models.d.ts +10 -60
  221. package/dist/providers/xiaomi-token-plan-cn.models.d.ts.map +1 -1
  222. package/dist/providers/xiaomi-token-plan-cn.models.js +2 -56
  223. package/dist/providers/xiaomi-token-plan-cn.models.js.map +1 -1
  224. package/dist/providers/xiaomi-token-plan-sgp.models.d.ts +10 -60
  225. package/dist/providers/xiaomi-token-plan-sgp.models.d.ts.map +1 -1
  226. package/dist/providers/xiaomi-token-plan-sgp.models.js +2 -56
  227. package/dist/providers/xiaomi-token-plan-sgp.models.js.map +1 -1
  228. package/dist/providers/xiaomi.models.d.ts +19 -120
  229. package/dist/providers/xiaomi.models.d.ts.map +1 -1
  230. package/dist/providers/xiaomi.models.js +2 -110
  231. package/dist/providers/xiaomi.models.js.map +1 -1
  232. package/dist/providers/zai-coding-cn.models.d.ts +19 -144
  233. package/dist/providers/zai-coding-cn.models.d.ts.map +1 -1
  234. package/dist/providers/zai-coding-cn.models.js +2 -111
  235. package/dist/providers/zai-coding-cn.models.js.map +1 -1
  236. package/dist/providers/zai.models.d.ts +19 -144
  237. package/dist/providers/zai.models.d.ts.map +1 -1
  238. package/dist/providers/zai.models.js +2 -111
  239. package/dist/providers/zai.models.js.map +1 -1
  240. package/dist/types.d.ts +3 -1
  241. package/dist/types.d.ts.map +1 -1
  242. package/dist/types.js.map +1 -1
  243. package/dist/utils/overflow.d.ts +1 -0
  244. package/dist/utils/overflow.d.ts.map +1 -1
  245. package/dist/utils/overflow.js +3 -0
  246. package/dist/utils/overflow.js.map +1 -1
  247. package/dist/utils/retry.d.ts.map +1 -1
  248. package/dist/utils/retry.js +1 -0
  249. package/dist/utils/retry.js.map +1 -1
  250. package/dist/utils/text.d.ts +6 -0
  251. package/dist/utils/text.d.ts.map +1 -0
  252. package/dist/utils/text.js +10 -0
  253. package/dist/utils/text.js.map +1 -0
  254. package/dist/utils/uuid.d.ts +3 -0
  255. package/dist/utils/uuid.d.ts.map +1 -0
  256. package/dist/utils/uuid.js +46 -0
  257. package/dist/utils/uuid.js.map +1 -0
  258. package/package.json +8 -5
@@ -1,999 +1,5 @@
1
1
  // This file is auto-generated by scripts/generate-models.ts
2
2
  // Do not edit manually - run 'npm run generate-models' to update
3
- export const OPENCODE_MODELS = {
4
- "big-pickle": {
5
- id: "big-pickle",
6
- name: "Big Pickle",
7
- api: "openai-completions",
8
- provider: "opencode",
9
- baseUrl: "https://opencode.ai/zen/v1",
10
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
11
- reasoning: true,
12
- input: ["text"],
13
- cost: {
14
- input: 0,
15
- output: 0,
16
- cacheRead: 0,
17
- cacheWrite: 0,
18
- },
19
- contextWindow: 200000,
20
- maxTokens: 32000,
21
- },
22
- "claude-fable-5": {
23
- id: "claude-fable-5",
24
- name: "Claude Fable 5",
25
- api: "anthropic-messages",
26
- provider: "opencode",
27
- baseUrl: "https://opencode.ai/zen",
28
- compat: { "forceAdaptiveThinking": true },
29
- reasoning: true,
30
- thinkingLevelMap: { "off": null, "xhigh": "xhigh", "max": "max" },
31
- input: ["text", "image"],
32
- cost: {
33
- input: 10,
34
- output: 50,
35
- cacheRead: 1,
36
- cacheWrite: 12.5,
37
- },
38
- contextWindow: 1000000,
39
- maxTokens: 128000,
40
- },
41
- "claude-haiku-4-5": {
42
- id: "claude-haiku-4-5",
43
- name: "Claude Haiku 4.5",
44
- api: "anthropic-messages",
45
- provider: "opencode",
46
- baseUrl: "https://opencode.ai/zen",
47
- reasoning: true,
48
- input: ["text", "image"],
49
- cost: {
50
- input: 1,
51
- output: 5,
52
- cacheRead: 0.1,
53
- cacheWrite: 1.25,
54
- },
55
- contextWindow: 200000,
56
- maxTokens: 64000,
57
- },
58
- "claude-opus-4-1": {
59
- id: "claude-opus-4-1",
60
- name: "Claude Opus 4.1",
61
- api: "anthropic-messages",
62
- provider: "opencode",
63
- baseUrl: "https://opencode.ai/zen",
64
- reasoning: true,
65
- input: ["text", "image"],
66
- cost: {
67
- input: 15,
68
- output: 75,
69
- cacheRead: 1.5,
70
- cacheWrite: 18.75,
71
- },
72
- contextWindow: 200000,
73
- maxTokens: 32000,
74
- },
75
- "claude-opus-4-5": {
76
- id: "claude-opus-4-5",
77
- name: "Claude Opus 4.5",
78
- api: "anthropic-messages",
79
- provider: "opencode",
80
- baseUrl: "https://opencode.ai/zen",
81
- reasoning: true,
82
- input: ["text", "image"],
83
- cost: {
84
- input: 5,
85
- output: 25,
86
- cacheRead: 0.5,
87
- cacheWrite: 6.25,
88
- },
89
- contextWindow: 200000,
90
- maxTokens: 64000,
91
- },
92
- "claude-opus-4-6": {
93
- id: "claude-opus-4-6",
94
- name: "Claude Opus 4.6",
95
- api: "anthropic-messages",
96
- provider: "opencode",
97
- baseUrl: "https://opencode.ai/zen",
98
- compat: { "forceAdaptiveThinking": true },
99
- reasoning: true,
100
- thinkingLevelMap: { "max": "max" },
101
- input: ["text", "image"],
102
- cost: {
103
- input: 5,
104
- output: 25,
105
- cacheRead: 0.5,
106
- cacheWrite: 6.25,
107
- },
108
- contextWindow: 1000000,
109
- maxTokens: 128000,
110
- },
111
- "claude-opus-4-7": {
112
- id: "claude-opus-4-7",
113
- name: "Claude Opus 4.7",
114
- api: "anthropic-messages",
115
- provider: "opencode",
116
- baseUrl: "https://opencode.ai/zen",
117
- compat: { "forceAdaptiveThinking": true, "supportsTemperature": false },
118
- reasoning: true,
119
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
120
- input: ["text", "image"],
121
- cost: {
122
- input: 5,
123
- output: 25,
124
- cacheRead: 0.5,
125
- cacheWrite: 6.25,
126
- },
127
- contextWindow: 1000000,
128
- maxTokens: 128000,
129
- },
130
- "claude-opus-4-8": {
131
- id: "claude-opus-4-8",
132
- name: "Claude Opus 4.8",
133
- api: "anthropic-messages",
134
- provider: "opencode",
135
- baseUrl: "https://opencode.ai/zen",
136
- compat: { "forceAdaptiveThinking": true, "supportsTemperature": false },
137
- reasoning: true,
138
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
139
- input: ["text", "image"],
140
- cost: {
141
- input: 5,
142
- output: 25,
143
- cacheRead: 0.5,
144
- cacheWrite: 6.25,
145
- },
146
- contextWindow: 1000000,
147
- maxTokens: 128000,
148
- },
149
- "claude-sonnet-4": {
150
- id: "claude-sonnet-4",
151
- name: "Claude Sonnet 4",
152
- api: "anthropic-messages",
153
- provider: "opencode",
154
- baseUrl: "https://opencode.ai/zen",
155
- reasoning: true,
156
- input: ["text", "image"],
157
- cost: {
158
- input: 3,
159
- output: 15,
160
- cacheRead: 0.3,
161
- cacheWrite: 3.75,
162
- },
163
- contextWindow: 200000,
164
- maxTokens: 64000,
165
- },
166
- "claude-sonnet-4-5": {
167
- id: "claude-sonnet-4-5",
168
- name: "Claude Sonnet 4.5",
169
- api: "anthropic-messages",
170
- provider: "opencode",
171
- baseUrl: "https://opencode.ai/zen",
172
- reasoning: true,
173
- input: ["text", "image"],
174
- cost: {
175
- input: 3,
176
- output: 15,
177
- cacheRead: 0.3,
178
- cacheWrite: 3.75,
179
- },
180
- contextWindow: 200000,
181
- maxTokens: 64000,
182
- },
183
- "claude-sonnet-4-6": {
184
- id: "claude-sonnet-4-6",
185
- name: "Claude Sonnet 4.6",
186
- api: "anthropic-messages",
187
- provider: "opencode",
188
- baseUrl: "https://opencode.ai/zen",
189
- compat: { "forceAdaptiveThinking": true },
190
- reasoning: true,
191
- thinkingLevelMap: { "max": "max" },
192
- input: ["text", "image"],
193
- cost: {
194
- input: 3,
195
- output: 15,
196
- cacheRead: 0.3,
197
- cacheWrite: 3.75,
198
- },
199
- contextWindow: 1000000,
200
- maxTokens: 64000,
201
- },
202
- "claude-sonnet-5": {
203
- id: "claude-sonnet-5",
204
- name: "Claude Sonnet 5",
205
- api: "anthropic-messages",
206
- provider: "opencode",
207
- baseUrl: "https://opencode.ai/zen",
208
- compat: { "forceAdaptiveThinking": true },
209
- reasoning: true,
210
- thinkingLevelMap: { "xhigh": "xhigh", "max": "max" },
211
- input: ["text", "image"],
212
- cost: {
213
- input: 2,
214
- output: 10,
215
- cacheRead: 0.2,
216
- cacheWrite: 2.5,
217
- },
218
- contextWindow: 1000000,
219
- maxTokens: 128000,
220
- },
221
- "deepseek-v4-flash": {
222
- id: "deepseek-v4-flash",
223
- name: "DeepSeek V4 Flash",
224
- api: "openai-completions",
225
- provider: "opencode",
226
- baseUrl: "https://opencode.ai/zen/v1",
227
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens", "supportsLongCacheRetention": false, "requiresReasoningContentOnAssistantMessages": true },
228
- reasoning: true,
229
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "max": "max" },
230
- input: ["text"],
231
- cost: {
232
- input: 0.14,
233
- output: 0.28,
234
- cacheRead: 0.028,
235
- cacheWrite: 0,
236
- },
237
- contextWindow: 1000000,
238
- maxTokens: 384000,
239
- },
240
- "deepseek-v4-flash-free": {
241
- id: "deepseek-v4-flash-free",
242
- name: "DeepSeek V4 Flash Free",
243
- api: "openai-completions",
244
- provider: "opencode",
245
- baseUrl: "https://opencode.ai/zen/v1",
246
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens", "requiresReasoningContentOnAssistantMessages": true },
247
- reasoning: true,
248
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "max": "max" },
249
- input: ["text"],
250
- cost: {
251
- input: 0,
252
- output: 0,
253
- cacheRead: 0,
254
- cacheWrite: 0,
255
- },
256
- contextWindow: 200000,
257
- maxTokens: 128000,
258
- },
259
- "deepseek-v4-pro": {
260
- id: "deepseek-v4-pro",
261
- name: "DeepSeek V4 Pro",
262
- api: "openai-completions",
263
- provider: "opencode",
264
- baseUrl: "https://opencode.ai/zen/v1",
265
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens", "supportsLongCacheRetention": false, "requiresReasoningContentOnAssistantMessages": true },
266
- reasoning: true,
267
- thinkingLevelMap: { "minimal": null, "low": null, "medium": null, "high": "high", "max": "max" },
268
- input: ["text"],
269
- cost: {
270
- input: 1.74,
271
- output: 3.84,
272
- cacheRead: 0.145,
273
- cacheWrite: 0,
274
- },
275
- contextWindow: 1000000,
276
- maxTokens: 384000,
277
- },
278
- "gemini-3-flash": {
279
- id: "gemini-3-flash",
280
- name: "Gemini 3 Flash",
281
- api: "google-generative-ai",
282
- provider: "opencode",
283
- baseUrl: "https://opencode.ai/zen/v1",
284
- reasoning: true,
285
- thinkingLevelMap: { "off": null },
286
- input: ["text", "image"],
287
- cost: {
288
- input: 0.5,
289
- output: 3,
290
- cacheRead: 0.05,
291
- cacheWrite: 0,
292
- },
293
- contextWindow: 1048576,
294
- maxTokens: 65536,
295
- },
296
- "gemini-3.1-pro": {
297
- id: "gemini-3.1-pro",
298
- name: "Gemini 3.1 Pro Preview",
299
- api: "google-generative-ai",
300
- provider: "opencode",
301
- baseUrl: "https://opencode.ai/zen/v1",
302
- reasoning: true,
303
- thinkingLevelMap: { "off": null, "minimal": null, "low": "LOW", "medium": null, "high": "HIGH" },
304
- input: ["text", "image"],
305
- cost: {
306
- input: 2,
307
- output: 12,
308
- cacheRead: 0.2,
309
- cacheWrite: 0,
310
- },
311
- contextWindow: 1048576,
312
- maxTokens: 65536,
313
- },
314
- "gemini-3.5-flash": {
315
- id: "gemini-3.5-flash",
316
- name: "Gemini 3.5 Flash",
317
- api: "google-generative-ai",
318
- provider: "opencode",
319
- baseUrl: "https://opencode.ai/zen/v1",
320
- reasoning: true,
321
- thinkingLevelMap: { "off": null },
322
- input: ["text", "image"],
323
- cost: {
324
- input: 1.5,
325
- output: 9,
326
- cacheRead: 0.15,
327
- cacheWrite: 0,
328
- },
329
- contextWindow: 1048576,
330
- maxTokens: 65536,
331
- },
332
- "glm-5": {
333
- id: "glm-5",
334
- name: "GLM-5",
335
- api: "openai-completions",
336
- provider: "opencode",
337
- baseUrl: "https://opencode.ai/zen/v1",
338
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
339
- reasoning: true,
340
- input: ["text"],
341
- cost: {
342
- input: 1,
343
- output: 3.2,
344
- cacheRead: 0.2,
345
- cacheWrite: 0,
346
- },
347
- contextWindow: 204800,
348
- maxTokens: 131072,
349
- },
350
- "glm-5.1": {
351
- id: "glm-5.1",
352
- name: "GLM-5.1",
353
- api: "openai-completions",
354
- provider: "opencode",
355
- baseUrl: "https://opencode.ai/zen/v1",
356
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
357
- reasoning: true,
358
- input: ["text"],
359
- cost: {
360
- input: 1.4,
361
- output: 4.4,
362
- cacheRead: 0.26,
363
- cacheWrite: 0,
364
- },
365
- contextWindow: 204800,
366
- maxTokens: 131072,
367
- },
368
- "glm-5.2": {
369
- id: "glm-5.2",
370
- name: "GLM-5.2",
371
- api: "openai-completions",
372
- provider: "opencode",
373
- baseUrl: "https://opencode.ai/zen/v1",
374
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
375
- reasoning: true,
376
- input: ["text"],
377
- cost: {
378
- input: 1.4,
379
- output: 4.4,
380
- cacheRead: 0.26,
381
- cacheWrite: 0,
382
- },
383
- contextWindow: 1000000,
384
- maxTokens: 131072,
385
- },
386
- "gpt-5": {
387
- id: "gpt-5",
388
- name: "GPT-5",
389
- api: "openai-responses",
390
- provider: "opencode",
391
- baseUrl: "https://opencode.ai/zen/v1",
392
- compat: { "sessionAffinityFormat": "openai-nosession" },
393
- reasoning: true,
394
- thinkingLevelMap: { "off": null },
395
- input: ["text", "image"],
396
- cost: {
397
- input: 1.07,
398
- output: 8.5,
399
- cacheRead: 0.107,
400
- cacheWrite: 0,
401
- },
402
- contextWindow: 400000,
403
- maxTokens: 128000,
404
- },
405
- "gpt-5-codex": {
406
- id: "gpt-5-codex",
407
- name: "GPT-5 Codex",
408
- api: "openai-responses",
409
- provider: "opencode",
410
- baseUrl: "https://opencode.ai/zen/v1",
411
- compat: { "sessionAffinityFormat": "openai-nosession" },
412
- reasoning: true,
413
- thinkingLevelMap: { "off": null },
414
- input: ["text", "image"],
415
- cost: {
416
- input: 1.07,
417
- output: 8.5,
418
- cacheRead: 0.107,
419
- cacheWrite: 0,
420
- },
421
- contextWindow: 400000,
422
- maxTokens: 128000,
423
- },
424
- "gpt-5-nano": {
425
- id: "gpt-5-nano",
426
- name: "GPT-5 Nano",
427
- api: "openai-responses",
428
- provider: "opencode",
429
- baseUrl: "https://opencode.ai/zen/v1",
430
- compat: { "sessionAffinityFormat": "openai-nosession" },
431
- reasoning: true,
432
- thinkingLevelMap: { "off": null },
433
- input: ["text", "image"],
434
- cost: {
435
- input: 0.05,
436
- output: 0.4,
437
- cacheRead: 0.005,
438
- cacheWrite: 0,
439
- },
440
- contextWindow: 400000,
441
- maxTokens: 128000,
442
- },
443
- "gpt-5.1": {
444
- id: "gpt-5.1",
445
- name: "GPT-5.1",
446
- api: "openai-responses",
447
- provider: "opencode",
448
- baseUrl: "https://opencode.ai/zen/v1",
449
- compat: { "sessionAffinityFormat": "openai-nosession" },
450
- reasoning: true,
451
- thinkingLevelMap: { "off": null },
452
- input: ["text", "image"],
453
- cost: {
454
- input: 1.07,
455
- output: 8.5,
456
- cacheRead: 0.107,
457
- cacheWrite: 0,
458
- },
459
- contextWindow: 400000,
460
- maxTokens: 128000,
461
- },
462
- "gpt-5.1-codex": {
463
- id: "gpt-5.1-codex",
464
- name: "GPT-5.1 Codex",
465
- api: "openai-responses",
466
- provider: "opencode",
467
- baseUrl: "https://opencode.ai/zen/v1",
468
- compat: { "sessionAffinityFormat": "openai-nosession" },
469
- reasoning: true,
470
- thinkingLevelMap: { "off": null },
471
- input: ["text", "image"],
472
- cost: {
473
- input: 1.07,
474
- output: 8.5,
475
- cacheRead: 0.107,
476
- cacheWrite: 0,
477
- },
478
- contextWindow: 400000,
479
- maxTokens: 128000,
480
- },
481
- "gpt-5.1-codex-max": {
482
- id: "gpt-5.1-codex-max",
483
- name: "GPT-5.1 Codex Max",
484
- api: "openai-responses",
485
- provider: "opencode",
486
- baseUrl: "https://opencode.ai/zen/v1",
487
- compat: { "sessionAffinityFormat": "openai-nosession" },
488
- reasoning: true,
489
- thinkingLevelMap: { "off": null },
490
- input: ["text", "image"],
491
- cost: {
492
- input: 1.25,
493
- output: 10,
494
- cacheRead: 0.125,
495
- cacheWrite: 0,
496
- },
497
- contextWindow: 400000,
498
- maxTokens: 128000,
499
- },
500
- "gpt-5.1-codex-mini": {
501
- id: "gpt-5.1-codex-mini",
502
- name: "GPT-5.1 Codex Mini",
503
- api: "openai-responses",
504
- provider: "opencode",
505
- baseUrl: "https://opencode.ai/zen/v1",
506
- compat: { "sessionAffinityFormat": "openai-nosession" },
507
- reasoning: true,
508
- thinkingLevelMap: { "off": null },
509
- input: ["text", "image"],
510
- cost: {
511
- input: 0.25,
512
- output: 2,
513
- cacheRead: 0.025,
514
- cacheWrite: 0,
515
- },
516
- contextWindow: 400000,
517
- maxTokens: 128000,
518
- },
519
- "gpt-5.2": {
520
- id: "gpt-5.2",
521
- name: "GPT-5.2",
522
- api: "openai-responses",
523
- provider: "opencode",
524
- baseUrl: "https://opencode.ai/zen/v1",
525
- compat: { "sessionAffinityFormat": "openai-nosession" },
526
- reasoning: true,
527
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
528
- input: ["text", "image"],
529
- cost: {
530
- input: 1.75,
531
- output: 14,
532
- cacheRead: 0.175,
533
- cacheWrite: 0,
534
- },
535
- contextWindow: 400000,
536
- maxTokens: 128000,
537
- },
538
- "gpt-5.2-codex": {
539
- id: "gpt-5.2-codex",
540
- name: "GPT-5.2 Codex",
541
- api: "openai-responses",
542
- provider: "opencode",
543
- baseUrl: "https://opencode.ai/zen/v1",
544
- compat: { "sessionAffinityFormat": "openai-nosession" },
545
- reasoning: true,
546
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
547
- input: ["text", "image"],
548
- cost: {
549
- input: 1.75,
550
- output: 14,
551
- cacheRead: 0.175,
552
- cacheWrite: 0,
553
- },
554
- contextWindow: 400000,
555
- maxTokens: 128000,
556
- },
557
- "gpt-5.3-codex": {
558
- id: "gpt-5.3-codex",
559
- name: "GPT-5.3 Codex",
560
- api: "openai-responses",
561
- provider: "opencode",
562
- baseUrl: "https://opencode.ai/zen/v1",
563
- compat: { "sessionAffinityFormat": "openai-nosession" },
564
- reasoning: true,
565
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
566
- input: ["text", "image"],
567
- cost: {
568
- input: 1.75,
569
- output: 14,
570
- cacheRead: 0.175,
571
- cacheWrite: 0,
572
- },
573
- contextWindow: 400000,
574
- maxTokens: 128000,
575
- },
576
- "gpt-5.4": {
577
- id: "gpt-5.4",
578
- name: "GPT-5.4",
579
- api: "openai-responses",
580
- provider: "opencode",
581
- baseUrl: "https://opencode.ai/zen/v1",
582
- compat: { "sessionAffinityFormat": "openai-nosession" },
583
- reasoning: true,
584
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
585
- input: ["text", "image"],
586
- cost: {
587
- input: 2.5,
588
- output: 15,
589
- cacheRead: 0.25,
590
- cacheWrite: 0,
591
- },
592
- contextWindow: 272000,
593
- maxTokens: 128000,
594
- },
595
- "gpt-5.4-mini": {
596
- id: "gpt-5.4-mini",
597
- name: "GPT-5.4 Mini",
598
- api: "openai-responses",
599
- provider: "opencode",
600
- baseUrl: "https://opencode.ai/zen/v1",
601
- compat: { "sessionAffinityFormat": "openai-nosession" },
602
- reasoning: true,
603
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
604
- input: ["text", "image"],
605
- cost: {
606
- input: 0.75,
607
- output: 4.5,
608
- cacheRead: 0.075,
609
- cacheWrite: 0,
610
- },
611
- contextWindow: 400000,
612
- maxTokens: 128000,
613
- },
614
- "gpt-5.4-nano": {
615
- id: "gpt-5.4-nano",
616
- name: "GPT-5.4 Nano",
617
- api: "openai-responses",
618
- provider: "opencode",
619
- baseUrl: "https://opencode.ai/zen/v1",
620
- compat: { "sessionAffinityFormat": "openai-nosession" },
621
- reasoning: true,
622
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
623
- input: ["text", "image"],
624
- cost: {
625
- input: 0.2,
626
- output: 1.25,
627
- cacheRead: 0.02,
628
- cacheWrite: 0,
629
- },
630
- contextWindow: 400000,
631
- maxTokens: 128000,
632
- },
633
- "gpt-5.4-pro": {
634
- id: "gpt-5.4-pro",
635
- name: "GPT-5.4 Pro",
636
- api: "openai-responses",
637
- provider: "opencode",
638
- baseUrl: "https://opencode.ai/zen/v1",
639
- compat: { "sessionAffinityFormat": "openai-nosession" },
640
- reasoning: true,
641
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
642
- input: ["text", "image"],
643
- cost: {
644
- input: 30,
645
- output: 180,
646
- cacheRead: 30,
647
- cacheWrite: 0,
648
- },
649
- contextWindow: 1050000,
650
- maxTokens: 128000,
651
- },
652
- "gpt-5.5": {
653
- id: "gpt-5.5",
654
- name: "GPT-5.5",
655
- api: "openai-responses",
656
- provider: "opencode",
657
- baseUrl: "https://opencode.ai/zen/v1",
658
- compat: { "sessionAffinityFormat": "openai-nosession" },
659
- reasoning: true,
660
- thinkingLevelMap: { "off": null, "xhigh": "xhigh" },
661
- input: ["text", "image"],
662
- cost: {
663
- input: 5,
664
- output: 30,
665
- cacheRead: 0.5,
666
- cacheWrite: 0,
667
- },
668
- contextWindow: 1050000,
669
- maxTokens: 128000,
670
- },
671
- "gpt-5.5-pro": {
672
- id: "gpt-5.5-pro",
673
- name: "GPT-5.5 Pro",
674
- api: "openai-responses",
675
- provider: "opencode",
676
- baseUrl: "https://opencode.ai/zen/v1",
677
- compat: { "sessionAffinityFormat": "openai-nosession" },
678
- reasoning: true,
679
- thinkingLevelMap: { "off": null, "xhigh": "xhigh", "minimal": null, "low": null },
680
- input: ["text", "image"],
681
- cost: {
682
- input: 30,
683
- output: 180,
684
- cacheRead: 30,
685
- cacheWrite: 0,
686
- },
687
- contextWindow: 1050000,
688
- maxTokens: 128000,
689
- },
690
- "gpt-5.6-luna": {
691
- id: "gpt-5.6-luna",
692
- name: "GPT-5.6 Luna",
693
- api: "openai-responses",
694
- provider: "opencode",
695
- baseUrl: "https://opencode.ai/zen/v1",
696
- compat: { "sessionAffinityFormat": "openai-nosession" },
697
- reasoning: true,
698
- thinkingLevelMap: { "off": null, "xhigh": "xhigh", "max": "max" },
699
- input: ["text", "image"],
700
- cost: {
701
- input: 1,
702
- output: 6,
703
- cacheRead: 0.1,
704
- cacheWrite: 1.25,
705
- },
706
- contextWindow: 1050000,
707
- maxTokens: 128000,
708
- },
709
- "gpt-5.6-sol": {
710
- id: "gpt-5.6-sol",
711
- name: "GPT-5.6 Sol",
712
- api: "openai-responses",
713
- provider: "opencode",
714
- baseUrl: "https://opencode.ai/zen/v1",
715
- compat: { "sessionAffinityFormat": "openai-nosession" },
716
- reasoning: true,
717
- thinkingLevelMap: { "off": null, "xhigh": "xhigh", "max": "max" },
718
- input: ["text", "image"],
719
- cost: {
720
- input: 5,
721
- output: 30,
722
- cacheRead: 0.5,
723
- cacheWrite: 6.25,
724
- },
725
- contextWindow: 1050000,
726
- maxTokens: 128000,
727
- },
728
- "gpt-5.6-terra": {
729
- id: "gpt-5.6-terra",
730
- name: "GPT-5.6 Terra",
731
- api: "openai-responses",
732
- provider: "opencode",
733
- baseUrl: "https://opencode.ai/zen/v1",
734
- compat: { "sessionAffinityFormat": "openai-nosession" },
735
- reasoning: true,
736
- thinkingLevelMap: { "off": null, "xhigh": "xhigh", "max": "max" },
737
- input: ["text", "image"],
738
- cost: {
739
- input: 2.5,
740
- output: 15,
741
- cacheRead: 0.25,
742
- cacheWrite: 3.125,
743
- },
744
- contextWindow: 1050000,
745
- maxTokens: 128000,
746
- },
747
- "grok-4.5": {
748
- id: "grok-4.5",
749
- name: "Grok 4.5",
750
- api: "openai-completions",
751
- provider: "opencode",
752
- baseUrl: "https://opencode.ai/zen/v1",
753
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
754
- reasoning: true,
755
- input: ["text", "image"],
756
- cost: {
757
- input: 2,
758
- output: 6,
759
- cacheRead: 0.5,
760
- cacheWrite: 0,
761
- },
762
- contextWindow: 500000,
763
- maxTokens: 500000,
764
- },
765
- "grok-build-0.1": {
766
- id: "grok-build-0.1",
767
- name: "Grok Build 0.1",
768
- api: "openai-completions",
769
- provider: "opencode",
770
- baseUrl: "https://opencode.ai/zen/v1",
771
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "supportsReasoningEffort": false, "maxTokensField": "max_tokens" },
772
- reasoning: true,
773
- thinkingLevelMap: { "off": null, "minimal": null, "low": null, "medium": null },
774
- input: ["text", "image"],
775
- cost: {
776
- input: 1,
777
- output: 2,
778
- cacheRead: 0.2,
779
- cacheWrite: 0,
780
- },
781
- contextWindow: 256000,
782
- maxTokens: 256000,
783
- },
784
- "hy3-free": {
785
- id: "hy3-free",
786
- name: "Hy3 Free",
787
- api: "openai-completions",
788
- provider: "opencode",
789
- baseUrl: "https://opencode.ai/zen/v1",
790
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
791
- reasoning: true,
792
- input: ["text"],
793
- cost: {
794
- input: 0,
795
- output: 0,
796
- cacheRead: 0,
797
- cacheWrite: 0,
798
- },
799
- contextWindow: 190000,
800
- maxTokens: 64000,
801
- },
802
- "kimi-k2.5": {
803
- id: "kimi-k2.5",
804
- name: "Kimi K2.5",
805
- api: "openai-completions",
806
- provider: "opencode",
807
- baseUrl: "https://opencode.ai/zen/v1",
808
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens", "supportsLongCacheRetention": false },
809
- reasoning: true,
810
- input: ["text", "image"],
811
- cost: {
812
- input: 0.6,
813
- output: 3,
814
- cacheRead: 0.08,
815
- cacheWrite: 0,
816
- },
817
- contextWindow: 262144,
818
- maxTokens: 65536,
819
- },
820
- "kimi-k2.6": {
821
- id: "kimi-k2.6",
822
- name: "Kimi K2.6",
823
- api: "openai-completions",
824
- provider: "opencode",
825
- baseUrl: "https://opencode.ai/zen/v1",
826
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "thinkingFormat": "deepseek", "supportsReasoningEffort": false, "maxTokensField": "max_tokens", "supportsLongCacheRetention": false },
827
- reasoning: true,
828
- input: ["text", "image"],
829
- cost: {
830
- input: 0.95,
831
- output: 4,
832
- cacheRead: 0.16,
833
- cacheWrite: 0,
834
- },
835
- contextWindow: 262144,
836
- maxTokens: 65536,
837
- },
838
- "kimi-k2.7-code": {
839
- id: "kimi-k2.7-code",
840
- name: "Kimi K2.7 Code",
841
- api: "openai-completions",
842
- provider: "opencode",
843
- baseUrl: "https://opencode.ai/zen/v1",
844
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
845
- reasoning: true,
846
- input: ["text", "image"],
847
- cost: {
848
- input: 0.95,
849
- output: 4,
850
- cacheRead: 0.19,
851
- cacheWrite: 0,
852
- },
853
- contextWindow: 262144,
854
- maxTokens: 262144,
855
- },
856
- "mimo-v2.5-free": {
857
- id: "mimo-v2.5-free",
858
- name: "MiMo V2.5 Free",
859
- api: "openai-completions",
860
- provider: "opencode",
861
- baseUrl: "https://opencode.ai/zen/v1",
862
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
863
- reasoning: true,
864
- input: ["text", "image"],
865
- cost: {
866
- input: 0,
867
- output: 0,
868
- cacheRead: 0,
869
- cacheWrite: 0,
870
- },
871
- contextWindow: 200000,
872
- maxTokens: 32000,
873
- },
874
- "minimax-m2.5": {
875
- id: "minimax-m2.5",
876
- name: "MiniMax-M2.5",
877
- api: "openai-completions",
878
- provider: "opencode",
879
- baseUrl: "https://opencode.ai/zen/v1",
880
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
881
- reasoning: true,
882
- input: ["text"],
883
- cost: {
884
- input: 0.3,
885
- output: 1.2,
886
- cacheRead: 0.06,
887
- cacheWrite: 0,
888
- },
889
- contextWindow: 204800,
890
- maxTokens: 131072,
891
- },
892
- "minimax-m2.7": {
893
- id: "minimax-m2.7",
894
- name: "MiniMax-M2.7",
895
- api: "openai-completions",
896
- provider: "opencode",
897
- baseUrl: "https://opencode.ai/zen/v1",
898
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens", "supportsLongCacheRetention": false },
899
- reasoning: true,
900
- input: ["text"],
901
- cost: {
902
- input: 0.3,
903
- output: 1.2,
904
- cacheRead: 0.06,
905
- cacheWrite: 0,
906
- },
907
- contextWindow: 204800,
908
- maxTokens: 131072,
909
- },
910
- "minimax-m3": {
911
- id: "minimax-m3",
912
- name: "MiniMax-M3",
913
- api: "openai-completions",
914
- provider: "opencode",
915
- baseUrl: "https://opencode.ai/zen/v1",
916
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
917
- reasoning: true,
918
- input: ["text", "image"],
919
- cost: {
920
- input: 0.3,
921
- output: 1.2,
922
- cacheRead: 0.06,
923
- cacheWrite: 0,
924
- },
925
- contextWindow: 512000,
926
- maxTokens: 128000,
927
- },
928
- "nemotron-3-ultra-free": {
929
- id: "nemotron-3-ultra-free",
930
- name: "Nemotron 3 Ultra Free",
931
- api: "openai-completions",
932
- provider: "opencode",
933
- baseUrl: "https://opencode.ai/zen/v1",
934
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
935
- reasoning: true,
936
- input: ["text"],
937
- cost: {
938
- input: 0,
939
- output: 0,
940
- cacheRead: 0,
941
- cacheWrite: 0,
942
- },
943
- contextWindow: 1000000,
944
- maxTokens: 128000,
945
- },
946
- "north-mini-code-free": {
947
- id: "north-mini-code-free",
948
- name: "North Mini Code Free",
949
- api: "openai-completions",
950
- provider: "opencode",
951
- baseUrl: "https://opencode.ai/zen/v1",
952
- compat: { "supportsStore": false, "supportsDeveloperRole": false, "maxTokensField": "max_tokens" },
953
- reasoning: true,
954
- input: ["text"],
955
- cost: {
956
- input: 0,
957
- output: 0,
958
- cacheRead: 0,
959
- cacheWrite: 0,
960
- },
961
- contextWindow: 256000,
962
- maxTokens: 64000,
963
- },
964
- "qwen3.5-plus": {
965
- id: "qwen3.5-plus",
966
- name: "Qwen3.5 Plus",
967
- api: "anthropic-messages",
968
- provider: "opencode",
969
- baseUrl: "https://opencode.ai/zen",
970
- reasoning: true,
971
- input: ["text", "image"],
972
- cost: {
973
- input: 0.2,
974
- output: 1.2,
975
- cacheRead: 0.02,
976
- cacheWrite: 0.25,
977
- },
978
- contextWindow: 262144,
979
- maxTokens: 65536,
980
- },
981
- "qwen3.6-plus": {
982
- id: "qwen3.6-plus",
983
- name: "Qwen3.6 Plus",
984
- api: "anthropic-messages",
985
- provider: "opencode",
986
- baseUrl: "https://opencode.ai/zen",
987
- reasoning: true,
988
- input: ["text", "image"],
989
- cost: {
990
- input: 0.5,
991
- output: 3,
992
- cacheRead: 0.05,
993
- cacheWrite: 0.625,
994
- },
995
- contextWindow: 262144,
996
- maxTokens: 65536,
997
- },
998
- };
3
+ import values from "./data/opencode.json" with { type: "json" };
4
+ export const OPENCODE_MODELS = values;
999
5
  //# sourceMappingURL=opencode.models.js.map