opencode-zen.json

  1{
  2  "name": "OpenCode Zen",
  3  "id": "opencode-zen",
  4  "api_key": "$OPENCODE_API_KEY",
  5  "api_endpoint": "https://opencode.ai/zen/v1",
  6  "type": "openai-compat",
  7  "default_large_model_id": "minimax-m2.5-free",
  8  "default_small_model_id": "minimax-m2.5-free",
  9  "models": [
 10    {
 11      "id": "big-pickle",
 12      "name": "Big Pickle",
 13      "cost_per_1m_in": 0,
 14      "cost_per_1m_out": 0,
 15      "cost_per_1m_in_cached": 0,
 16      "cost_per_1m_out_cached": 0,
 17      "context_window": 200000,
 18      "default_max_tokens": 128000,
 19      "can_reason": true,
 20      "reasoning_levels": [
 21        "low",
 22        "medium",
 23        "high"
 24      ],
 25      "default_reasoning_effort": "medium",
 26      "supports_attachments": false
 27    },
 28    {
 29      "id": "claude-haiku-4-5",
 30      "name": "Claude Haiku 4.5",
 31      "cost_per_1m_in": 1,
 32      "cost_per_1m_out": 5,
 33      "cost_per_1m_in_cached": 0.1,
 34      "cost_per_1m_out_cached": 1.25,
 35      "context_window": 200000,
 36      "default_max_tokens": 64000,
 37      "can_reason": true,
 38      "reasoning_levels": [
 39        "low",
 40        "medium",
 41        "high"
 42      ],
 43      "default_reasoning_effort": "medium",
 44      "supports_attachments": true
 45    },
 46    {
 47      "id": "claude-opus-4-1",
 48      "name": "Claude Opus 4.1",
 49      "cost_per_1m_in": 15,
 50      "cost_per_1m_out": 75,
 51      "cost_per_1m_in_cached": 1.5,
 52      "cost_per_1m_out_cached": 18.75,
 53      "context_window": 200000,
 54      "default_max_tokens": 32000,
 55      "can_reason": true,
 56      "reasoning_levels": [
 57        "low",
 58        "medium",
 59        "high"
 60      ],
 61      "default_reasoning_effort": "medium",
 62      "supports_attachments": true
 63    },
 64    {
 65      "id": "claude-opus-4-5",
 66      "name": "Claude Opus 4.5",
 67      "cost_per_1m_in": 5,
 68      "cost_per_1m_out": 25,
 69      "cost_per_1m_in_cached": 0.5,
 70      "cost_per_1m_out_cached": 6.25,
 71      "context_window": 200000,
 72      "default_max_tokens": 64000,
 73      "can_reason": true,
 74      "reasoning_levels": [
 75        "low",
 76        "medium",
 77        "high"
 78      ],
 79      "default_reasoning_effort": "medium",
 80      "supports_attachments": true
 81    },
 82    {
 83      "id": "claude-opus-4-6",
 84      "name": "Claude Opus 4.6",
 85      "cost_per_1m_in": 5,
 86      "cost_per_1m_out": 25,
 87      "cost_per_1m_in_cached": 0.5,
 88      "cost_per_1m_out_cached": 6.25,
 89      "context_window": 1000000,
 90      "default_max_tokens": 128000,
 91      "can_reason": true,
 92      "reasoning_levels": [
 93        "low",
 94        "medium",
 95        "high"
 96      ],
 97      "default_reasoning_effort": "medium",
 98      "supports_attachments": true
 99    },
100    {
101      "id": "claude-opus-4-7",
102      "name": "Claude Opus 4.7",
103      "cost_per_1m_in": 5,
104      "cost_per_1m_out": 25,
105      "cost_per_1m_in_cached": 0.5,
106      "cost_per_1m_out_cached": 6.25,
107      "context_window": 1000000,
108      "default_max_tokens": 128000,
109      "can_reason": true,
110      "reasoning_levels": [
111        "low",
112        "medium",
113        "high"
114      ],
115      "default_reasoning_effort": "medium",
116      "supports_attachments": true
117    },
118    {
119      "id": "claude-sonnet-4",
120      "name": "Claude Sonnet 4",
121      "cost_per_1m_in": 3,
122      "cost_per_1m_out": 15,
123      "cost_per_1m_in_cached": 0.3,
124      "cost_per_1m_out_cached": 3.75,
125      "context_window": 1000000,
126      "default_max_tokens": 64000,
127      "can_reason": true,
128      "reasoning_levels": [
129        "low",
130        "medium",
131        "high"
132      ],
133      "default_reasoning_effort": "medium",
134      "supports_attachments": true
135    },
136    {
137      "id": "claude-sonnet-4-5",
138      "name": "Claude Sonnet 4.5",
139      "cost_per_1m_in": 3,
140      "cost_per_1m_out": 15,
141      "cost_per_1m_in_cached": 0.3,
142      "cost_per_1m_out_cached": 3.75,
143      "context_window": 1000000,
144      "default_max_tokens": 64000,
145      "can_reason": true,
146      "reasoning_levels": [
147        "low",
148        "medium",
149        "high"
150      ],
151      "default_reasoning_effort": "medium",
152      "supports_attachments": true
153    },
154    {
155      "id": "claude-sonnet-4-6",
156      "name": "Claude Sonnet 4.6",
157      "cost_per_1m_in": 3,
158      "cost_per_1m_out": 15,
159      "cost_per_1m_in_cached": 0.3,
160      "cost_per_1m_out_cached": 3.75,
161      "context_window": 1000000,
162      "default_max_tokens": 64000,
163      "can_reason": true,
164      "reasoning_levels": [
165        "low",
166        "medium",
167        "high"
168      ],
169      "default_reasoning_effort": "medium",
170      "supports_attachments": true
171    },
172    {
173      "id": "deepseek-v4-flash-free",
174      "name": "DeepSeek V4 Flash Free",
175      "cost_per_1m_in": 0,
176      "cost_per_1m_out": 0,
177      "cost_per_1m_in_cached": 0,
178      "cost_per_1m_out_cached": 0,
179      "context_window": 1000000,
180      "default_max_tokens": 384000,
181      "can_reason": true,
182      "reasoning_levels": [
183        "low",
184        "medium",
185        "high"
186      ],
187      "default_reasoning_effort": "medium",
188      "supports_attachments": false
189    },
190    {
191      "id": "glm-5",
192      "name": "GLM-5",
193      "cost_per_1m_in": 1,
194      "cost_per_1m_out": 3.2,
195      "cost_per_1m_in_cached": 0.2,
196      "cost_per_1m_out_cached": 0,
197      "context_window": 204800,
198      "default_max_tokens": 131072,
199      "can_reason": true,
200      "reasoning_levels": [
201        "low",
202        "medium",
203        "high"
204      ],
205      "default_reasoning_effort": "medium",
206      "supports_attachments": false
207    },
208    {
209      "id": "glm-5.1",
210      "name": "GLM-5.1",
211      "cost_per_1m_in": 1.4,
212      "cost_per_1m_out": 4.4,
213      "cost_per_1m_in_cached": 0.26,
214      "cost_per_1m_out_cached": 0,
215      "context_window": 204800,
216      "default_max_tokens": 131072,
217      "can_reason": true,
218      "reasoning_levels": [
219        "low",
220        "medium",
221        "high"
222      ],
223      "default_reasoning_effort": "medium",
224      "supports_attachments": false
225    },
226    {
227      "id": "gpt-5",
228      "name": "GPT-5",
229      "cost_per_1m_in": 1.07,
230      "cost_per_1m_out": 8.5,
231      "cost_per_1m_in_cached": 0.11,
232      "cost_per_1m_out_cached": 0,
233      "context_window": 400000,
234      "default_max_tokens": 128000,
235      "can_reason": true,
236      "reasoning_levels": [
237        "low",
238        "medium",
239        "high"
240      ],
241      "default_reasoning_effort": "medium",
242      "supports_attachments": true
243    },
244    {
245      "id": "gpt-5-codex",
246      "name": "GPT-5 Codex",
247      "cost_per_1m_in": 1.07,
248      "cost_per_1m_out": 8.5,
249      "cost_per_1m_in_cached": 0.11,
250      "cost_per_1m_out_cached": 0,
251      "context_window": 400000,
252      "default_max_tokens": 128000,
253      "can_reason": true,
254      "reasoning_levels": [
255        "low",
256        "medium",
257        "high"
258      ],
259      "default_reasoning_effort": "medium",
260      "supports_attachments": true
261    },
262    {
263      "id": "gpt-5-nano",
264      "name": "GPT-5 Nano",
265      "cost_per_1m_in": 0.05,
266      "cost_per_1m_out": 0.4,
267      "cost_per_1m_in_cached": 0.01,
268      "cost_per_1m_out_cached": 0,
269      "context_window": 400000,
270      "default_max_tokens": 128000,
271      "can_reason": true,
272      "reasoning_levels": [
273        "low",
274        "medium",
275        "high"
276      ],
277      "default_reasoning_effort": "medium",
278      "supports_attachments": true
279    },
280    {
281      "id": "gpt-5.1",
282      "name": "GPT-5.1",
283      "cost_per_1m_in": 1.07,
284      "cost_per_1m_out": 8.5,
285      "cost_per_1m_in_cached": 0.11,
286      "cost_per_1m_out_cached": 0,
287      "context_window": 400000,
288      "default_max_tokens": 128000,
289      "can_reason": true,
290      "reasoning_levels": [
291        "low",
292        "medium",
293        "high"
294      ],
295      "default_reasoning_effort": "medium",
296      "supports_attachments": true
297    },
298    {
299      "id": "gpt-5.1-codex",
300      "name": "GPT-5.1 Codex",
301      "cost_per_1m_in": 1.07,
302      "cost_per_1m_out": 8.5,
303      "cost_per_1m_in_cached": 0.11,
304      "cost_per_1m_out_cached": 0,
305      "context_window": 400000,
306      "default_max_tokens": 128000,
307      "can_reason": true,
308      "reasoning_levels": [
309        "low",
310        "medium",
311        "high"
312      ],
313      "default_reasoning_effort": "medium",
314      "supports_attachments": true
315    },
316    {
317      "id": "gpt-5.1-codex-max",
318      "name": "GPT-5.1 Codex Max",
319      "cost_per_1m_in": 1.25,
320      "cost_per_1m_out": 10,
321      "cost_per_1m_in_cached": 0.13,
322      "cost_per_1m_out_cached": 0,
323      "context_window": 400000,
324      "default_max_tokens": 128000,
325      "can_reason": true,
326      "reasoning_levels": [
327        "low",
328        "medium",
329        "high"
330      ],
331      "default_reasoning_effort": "medium",
332      "supports_attachments": true
333    },
334    {
335      "id": "gpt-5.1-codex-mini",
336      "name": "GPT-5.1 Codex Mini",
337      "cost_per_1m_in": 0.25,
338      "cost_per_1m_out": 2,
339      "cost_per_1m_in_cached": 0.03,
340      "cost_per_1m_out_cached": 0,
341      "context_window": 400000,
342      "default_max_tokens": 128000,
343      "can_reason": true,
344      "reasoning_levels": [
345        "low",
346        "medium",
347        "high"
348      ],
349      "default_reasoning_effort": "medium",
350      "supports_attachments": true
351    },
352    {
353      "id": "gpt-5.2",
354      "name": "GPT-5.2",
355      "cost_per_1m_in": 1.75,
356      "cost_per_1m_out": 14,
357      "cost_per_1m_in_cached": 0.18,
358      "cost_per_1m_out_cached": 0,
359      "context_window": 400000,
360      "default_max_tokens": 128000,
361      "can_reason": true,
362      "reasoning_levels": [
363        "low",
364        "medium",
365        "high"
366      ],
367      "default_reasoning_effort": "medium",
368      "supports_attachments": true
369    },
370    {
371      "id": "gpt-5.2-codex",
372      "name": "GPT-5.2 Codex",
373      "cost_per_1m_in": 1.75,
374      "cost_per_1m_out": 14,
375      "cost_per_1m_in_cached": 0.18,
376      "cost_per_1m_out_cached": 0,
377      "context_window": 400000,
378      "default_max_tokens": 128000,
379      "can_reason": true,
380      "reasoning_levels": [
381        "low",
382        "medium",
383        "high"
384      ],
385      "default_reasoning_effort": "medium",
386      "supports_attachments": true
387    },
388    {
389      "id": "gpt-5.3-codex",
390      "name": "GPT-5.3 Codex",
391      "cost_per_1m_in": 1.75,
392      "cost_per_1m_out": 14,
393      "cost_per_1m_in_cached": 0.18,
394      "cost_per_1m_out_cached": 0,
395      "context_window": 400000,
396      "default_max_tokens": 128000,
397      "can_reason": true,
398      "reasoning_levels": [
399        "low",
400        "medium",
401        "high"
402      ],
403      "default_reasoning_effort": "medium",
404      "supports_attachments": true
405    },
406    {
407      "id": "gpt-5.3-codex-spark",
408      "name": "GPT-5.3 Codex Spark",
409      "cost_per_1m_in": 1.75,
410      "cost_per_1m_out": 14,
411      "cost_per_1m_in_cached": 0.18,
412      "cost_per_1m_out_cached": 0,
413      "context_window": 128000,
414      "default_max_tokens": 128000,
415      "can_reason": true,
416      "reasoning_levels": [
417        "low",
418        "medium",
419        "high"
420      ],
421      "default_reasoning_effort": "medium",
422      "supports_attachments": false
423    },
424    {
425      "id": "gpt-5.4",
426      "name": "GPT-5.4",
427      "cost_per_1m_in": 2.5,
428      "cost_per_1m_out": 15,
429      "cost_per_1m_in_cached": 0.25,
430      "cost_per_1m_out_cached": 0,
431      "context_window": 1050000,
432      "default_max_tokens": 128000,
433      "can_reason": true,
434      "reasoning_levels": [
435        "low",
436        "medium",
437        "high"
438      ],
439      "default_reasoning_effort": "medium",
440      "supports_attachments": true
441    },
442    {
443      "id": "gpt-5.4-mini",
444      "name": "GPT-5.4 Mini",
445      "cost_per_1m_in": 0.75,
446      "cost_per_1m_out": 4.5,
447      "cost_per_1m_in_cached": 0.08,
448      "cost_per_1m_out_cached": 0,
449      "context_window": 400000,
450      "default_max_tokens": 128000,
451      "can_reason": true,
452      "reasoning_levels": [
453        "low",
454        "medium",
455        "high"
456      ],
457      "default_reasoning_effort": "medium",
458      "supports_attachments": true
459    },
460    {
461      "id": "gpt-5.4-nano",
462      "name": "GPT-5.4 Nano",
463      "cost_per_1m_in": 0.2,
464      "cost_per_1m_out": 1.25,
465      "cost_per_1m_in_cached": 0.02,
466      "cost_per_1m_out_cached": 0,
467      "context_window": 400000,
468      "default_max_tokens": 128000,
469      "can_reason": true,
470      "reasoning_levels": [
471        "low",
472        "medium",
473        "high"
474      ],
475      "default_reasoning_effort": "medium",
476      "supports_attachments": true
477    },
478    {
479      "id": "gpt-5.4-pro",
480      "name": "GPT-5.4 Pro",
481      "cost_per_1m_in": 30,
482      "cost_per_1m_out": 180,
483      "cost_per_1m_in_cached": 30,
484      "cost_per_1m_out_cached": 0,
485      "context_window": 1050000,
486      "default_max_tokens": 128000,
487      "can_reason": true,
488      "reasoning_levels": [
489        "low",
490        "medium",
491        "high"
492      ],
493      "default_reasoning_effort": "medium",
494      "supports_attachments": true
495    },
496    {
497      "id": "gpt-5.5",
498      "name": "GPT-5.5",
499      "cost_per_1m_in": 5,
500      "cost_per_1m_out": 30,
501      "cost_per_1m_in_cached": 0.5,
502      "cost_per_1m_out_cached": 0,
503      "context_window": 1050000,
504      "default_max_tokens": 128000,
505      "can_reason": true,
506      "reasoning_levels": [
507        "low",
508        "medium",
509        "high"
510      ],
511      "default_reasoning_effort": "medium",
512      "supports_attachments": true
513    },
514    {
515      "id": "gpt-5.5-pro",
516      "name": "GPT-5.5 Pro",
517      "cost_per_1m_in": 30,
518      "cost_per_1m_out": 180,
519      "cost_per_1m_in_cached": 30,
520      "cost_per_1m_out_cached": 0,
521      "context_window": 1050000,
522      "default_max_tokens": 128000,
523      "can_reason": true,
524      "reasoning_levels": [
525        "low",
526        "medium",
527        "high"
528      ],
529      "default_reasoning_effort": "medium",
530      "supports_attachments": true
531    },
532    {
533      "id": "gemini-3-flash",
534      "name": "Gemini 3 Flash",
535      "cost_per_1m_in": 0.5,
536      "cost_per_1m_out": 3,
537      "cost_per_1m_in_cached": 0.05,
538      "cost_per_1m_out_cached": 0,
539      "context_window": 1048576,
540      "default_max_tokens": 65536,
541      "can_reason": true,
542      "reasoning_levels": [
543        "low",
544        "medium",
545        "high"
546      ],
547      "default_reasoning_effort": "medium",
548      "supports_attachments": true
549    },
550    {
551      "id": "gemini-3.1-pro",
552      "name": "Gemini 3.1 Pro Preview",
553      "cost_per_1m_in": 2,
554      "cost_per_1m_out": 12,
555      "cost_per_1m_in_cached": 0.2,
556      "cost_per_1m_out_cached": 0,
557      "context_window": 1048576,
558      "default_max_tokens": 65536,
559      "can_reason": true,
560      "reasoning_levels": [
561        "low",
562        "medium",
563        "high"
564      ],
565      "default_reasoning_effort": "medium",
566      "supports_attachments": true
567    },
568    {
569      "id": "kimi-k2.5",
570      "name": "Kimi K2.5",
571      "cost_per_1m_in": 0.6,
572      "cost_per_1m_out": 3,
573      "cost_per_1m_in_cached": 0.08,
574      "cost_per_1m_out_cached": 0,
575      "context_window": 262144,
576      "default_max_tokens": 65536,
577      "can_reason": true,
578      "reasoning_levels": [
579        "low",
580        "medium",
581        "high"
582      ],
583      "default_reasoning_effort": "medium",
584      "supports_attachments": true
585    },
586    {
587      "id": "kimi-k2.6",
588      "name": "Kimi K2.6",
589      "cost_per_1m_in": 0.95,
590      "cost_per_1m_out": 4,
591      "cost_per_1m_in_cached": 0.16,
592      "cost_per_1m_out_cached": 0,
593      "context_window": 262144,
594      "default_max_tokens": 65536,
595      "can_reason": true,
596      "reasoning_levels": [
597        "low",
598        "medium",
599        "high"
600      ],
601      "default_reasoning_effort": "medium",
602      "supports_attachments": true
603    },
604    {
605      "id": "minimax-m2.5",
606      "name": "MiniMax M2.5",
607      "cost_per_1m_in": 0.3,
608      "cost_per_1m_out": 1.2,
609      "cost_per_1m_in_cached": 0.06,
610      "cost_per_1m_out_cached": 0,
611      "context_window": 204800,
612      "default_max_tokens": 131072,
613      "can_reason": true,
614      "reasoning_levels": [
615        "low",
616        "medium",
617        "high"
618      ],
619      "default_reasoning_effort": "medium",
620      "supports_attachments": false
621    },
622    {
623      "id": "minimax-m2.5-free",
624      "name": "MiniMax M2.5 Free",
625      "cost_per_1m_in": 0,
626      "cost_per_1m_out": 0,
627      "cost_per_1m_in_cached": 0,
628      "cost_per_1m_out_cached": 0,
629      "context_window": 204800,
630      "default_max_tokens": 131072,
631      "can_reason": true,
632      "reasoning_levels": [
633        "low",
634        "medium",
635        "high"
636      ],
637      "default_reasoning_effort": "medium",
638      "supports_attachments": false
639    },
640    {
641      "id": "minimax-m2.7",
642      "name": "MiniMax M2.7",
643      "cost_per_1m_in": 0.3,
644      "cost_per_1m_out": 1.2,
645      "cost_per_1m_in_cached": 0.06,
646      "cost_per_1m_out_cached": 0,
647      "context_window": 204800,
648      "default_max_tokens": 131072,
649      "can_reason": true,
650      "reasoning_levels": [
651        "low",
652        "medium",
653        "high"
654      ],
655      "default_reasoning_effort": "medium",
656      "supports_attachments": false
657    },
658    {
659      "id": "nemotron-3-super-free",
660      "name": "Nemotron 3 Super Free",
661      "cost_per_1m_in": 0,
662      "cost_per_1m_out": 0,
663      "cost_per_1m_in_cached": 0,
664      "cost_per_1m_out_cached": 0,
665      "context_window": 204800,
666      "default_max_tokens": 128000,
667      "can_reason": true,
668      "reasoning_levels": [
669        "low",
670        "medium",
671        "high"
672      ],
673      "default_reasoning_effort": "medium",
674      "supports_attachments": false
675    },
676    {
677      "id": "qwen3.5-plus",
678      "name": "Qwen3.5 Plus",
679      "cost_per_1m_in": 0.2,
680      "cost_per_1m_out": 1.2,
681      "cost_per_1m_in_cached": 0.02,
682      "cost_per_1m_out_cached": 0.25,
683      "context_window": 262144,
684      "default_max_tokens": 65536,
685      "can_reason": true,
686      "reasoning_levels": [
687        "low",
688        "medium",
689        "high"
690      ],
691      "default_reasoning_effort": "medium",
692      "supports_attachments": true
693    },
694    {
695      "id": "qwen3.6-plus",
696      "name": "Qwen3.6 Plus",
697      "cost_per_1m_in": 0.5,
698      "cost_per_1m_out": 3,
699      "cost_per_1m_in_cached": 0.05,
700      "cost_per_1m_out_cached": 0.63,
701      "context_window": 262144,
702      "default_max_tokens": 65536,
703      "can_reason": true,
704      "reasoning_levels": [
705        "low",
706        "medium",
707        "high"
708      ],
709      "default_reasoning_effort": "medium",
710      "supports_attachments": true
711    },
712    {
713      "id": "ring-2.6-1t-free",
714      "name": "Ring 2.6 1T Free",
715      "cost_per_1m_in": 0,
716      "cost_per_1m_out": 0,
717      "cost_per_1m_in_cached": 0,
718      "cost_per_1m_out_cached": 0,
719      "context_window": 262000,
720      "default_max_tokens": 66000,
721      "can_reason": true,
722      "reasoning_levels": [
723        "low",
724        "medium",
725        "high"
726      ],
727      "default_reasoning_effort": "medium",
728      "supports_attachments": false
729    },
730    {
731      "id": "trinity-large-preview-free",
732      "name": "Trinity Large Preview",
733      "cost_per_1m_in": 0,
734      "cost_per_1m_out": 0,
735      "cost_per_1m_in_cached": 0,
736      "cost_per_1m_out_cached": 0,
737      "context_window": 131072,
738      "default_max_tokens": 131072,
739      "can_reason": false,
740      "supports_attachments": false
741    }
742  ]
743}