OpenCode Zen
Zen is OpenCode's optional pay-as-you-go model service. Connect it as a provider, or keep using another provider. The free OpenCode client does not make hosted inference free.
Connect and select a model
- Sign in to the official console (opens in a new tab), review billing settings and copy an API key.
- In the TUI, run
/connect, selectOpenCode Zenand enter the key. Do not commit credentials. - Run
/models, select an available model and test a small non-sensitive request. Check the console usage record.
Zen model identifiers use opencode/<model-id>. Use the ID from the live model catalog (opens in a new tab), not a guessed vendor name. For persistent selection, set the verified identifier in model in your configuration.
After connecting Zen, this project configuration selects GPT 5.5. Choose another available ID from the table if needed.
{
"$schema": "https://opencode.ai/config.json",
"model": "opencode/gpt-5.5"
}Protocols and direct APIs
Zen's API base is https://opencode.ai/zen/v1/. Models use different protocols: responses with the OpenAI adapter, messages with the Anthropic adapter, or chat/completions with the OpenAI-compatible adapter; Google models have their own model endpoints. Follow the model endpoint table below. The built-in Zen connection handles these mappings; do not send every model to one Chat Completions endpoint.
Jev returns structured decisions rather than generated text through https://opencode.ai/zen/v1/systemone. Its question types include noul, choice and score. Follow the Jev example below for the current model ID and response format.
Model list and endpoints
The tables below list Zen model IDs, endpoints and token prices. Use the live catalog to check availability: some models retained in the reference tables have already been retired. The OpenCode prefix opencode/ belongs in client configuration; direct API requests use the model ID without this prefix.
| Model | Model ID | Endpoint | AI SDK package |
|---|---|---|---|
| GPT 6 Astra | gpt-6-astra | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.6 Sol | gpt-5.6-sol | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.6 Terra | gpt-5.6-terra | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.6 Luna | gpt-5.6-luna | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.5 | gpt-5.5 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.5 Pro | gpt-5.5-pro | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.4 | gpt-5.4 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.4 Pro | gpt-5.4-pro | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.4 Mini | gpt-5.4-mini | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.4 Nano | gpt-5.4-nano | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.3 Codex | gpt-5.3-codex | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.3 Codex Spark | gpt-5.3-codex-spark | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.2 | gpt-5.2 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.2 Codex | gpt-5.2-codex | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.1 | gpt-5.1 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.1 Codex | gpt-5.1-codex | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.1 Codex Max | gpt-5.1-codex-max | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5.1 Codex Mini | gpt-5.1-codex-mini | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5 | gpt-5 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5 Codex | gpt-5-codex | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| GPT 5 Nano | gpt-5-nano | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| Claude Fable 5.1 | claude-fable-5-1 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Fable 5 | claude-fable-5 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Opus 5 | claude-opus-5 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Opus 4.8 | claude-opus-4-8 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Opus 4.7 | claude-opus-4-7 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Opus 4.6 | claude-opus-4-6 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Opus 4.5 | claude-opus-4-5 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Sonnet 5 | claude-sonnet-5 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Sonnet 4.6 | claude-sonnet-4-6 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Sonnet 4.5 | claude-sonnet-4-5 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Claude Haiku 4.5 | claude-haiku-4-5 | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Gemini 3.8 Flash | gemini-3.8-flash | https://opencode.ai/zen/v1/models/gemini-3.8-flash | @ai-sdk/google |
| Gemini 3.7 Flash | gemini-3.7-flash | https://opencode.ai/zen/v1/models/gemini-3.7-flash | @ai-sdk/google |
| Gemini 3.6 Flash | gemini-3.6-flash | https://opencode.ai/zen/v1/models/gemini-3.6-flash | @ai-sdk/google |
| Gemini 3.5 Flash | gemini-3.5-flash | https://opencode.ai/zen/v1/models/gemini-3.5-flash | @ai-sdk/google |
| Gemini 3.5 Flash Lite | gemini-3.5-flash-lite | https://opencode.ai/zen/v1/models/gemini-3.5-flash-lite | @ai-sdk/google |
| Gemini 3.1 Pro | gemini-3.1-pro | https://opencode.ai/zen/v1/models/gemini-3.1-pro | @ai-sdk/google |
| Gemini 3 Flash | gemini-3-flash | https://opencode.ai/zen/v1/models/gemini-3-flash | @ai-sdk/google |
| Grok 4.6 | grok-4.6 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| Grok 4.5 | grok-4.5 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| Grok Build 0.1 | grok-build-0.1 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| Muse Spark 1.3 | muse-spark-1.3 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| Muse Spark 1.2 | muse-spark-1.2 | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
| Qwen3.8 Flash | qwen3.8-flash | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Qwen3.7 Max | qwen3.7-max | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Qwen3.7 Plus | qwen3.7-plus | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Qwen3.6 Plus | qwen3.6-plus | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| Qwen3.5 Plus | qwen3.5-plus | https://opencode.ai/zen/v1/messages | @ai-sdk/anthropic |
| DeepSeek V4.1 Flash | deepseek-v4.1-flash | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| DeepSeek V4 Pro | deepseek-v4-pro | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| DeepSeek V4 Flash | deepseek-v4-flash | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| DeepSeek V4 Flash Vision Exp | deepseek-v4-flash-vision-exp | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| MiniMax M3 | minimax-m3 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| MiniMax M2.7 | minimax-m2.7 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| MiniMax M2.5 | minimax-m2.5 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| GLM 5.3 Flash | glm-5.3-flash | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| GLM 5.3 | glm-5.3 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| GLM 5.2 | glm-5.2 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| GLM 5.1 | glm-5.1 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| GLM 5 | glm-5 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Kimi K2.5 | kimi-k2.5 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Kimi K2.6 | kimi-k2.6 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Kimi K2.7 Code | kimi-k2.7-code | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Kimi K3 | kimi-k3 | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Jev 1.13 | jev-1.13 | https://opencode.ai/zen/v1/systemone | - |
| Jev 1.13 Free | jev-1.13-free | https://opencode.ai/zen/v1/systemone | - |
| Big Pickle | big-pickle | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| MiMo-V2.5 Free | mimo-v2.5-free | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Ling 3.0 Flash Fin Free | ling-3.0-flash-fin-free | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Nemotron 3 Ultra Free | nemotron-3-ultra-free | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Nemotron 3.5 Lightning Free | nemotron-3.5-lightning-free | https://opencode.ai/zen/v1/chat/completions | @ai-sdk/openai-compatible |
| Muse Spark 1.3 Contributor Free | muse-spark-1.3-contributor-free | https://opencode.ai/zen/v1/responses | @ai-sdk/openai |
Jev
Set OPENCODE_API_KEY in your shell to your Zen key. This example asks Jev for an urgency decision; noul is a yes/no question. Use choice for named options and score for a rubric. The example makes a billable request with the paid model.
curl https://opencode.ai/zen/v1/systemone \
-H "Authorization: Bearer $OPENCODE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "jev-1.13",
"state": "My payments have failed for three days and I am losing sales. Please help now.",
"questions": {
"is_urgent": {
"type": "noul",
"instructions": "Does this request require urgent attention?"
}
}
}'Prices and spending controls
Use the token price table below and your console for current input, output, cache, long-context and payment-processing costs. Free-model offers can expire and may have different data terms. Retired models should be checked against the current catalog rather than an old example. Session-title generation can also appear as usage of a smaller model.
Auto-reload can charge your payment method when the balance falls below its threshold. The amount can be changed and auto-reload can be disabled. Check your actual setting before running an unattended agent.
A monthly usage limit controls consumption for a workspace or member. It is not the same as a cap on payment transactions: automatic top-ups may charge more than that consumption limit. Review the balance, auto-reload and usage limits together.
Token prices
Prices are in USD per one million tokens. Input, output, cache reads and cache writes are billed separately; context tiers apply where shown. A dash does not mean free. Image inputs can consume billable tokens, including with DeepSeek V4 Flash Vision Exp.
| Model | Input | Output | Cache read | Cache write |
|---|---|---|---|---|
| Big Pickle | Free | Free | Free | - |
| MiMo-V2.5 Free | Free | Free | Free | - |
| Ling 3.0 Flash Fin Free | Free | Free | Free | - |
| Nemotron 3 Ultra Free | Free | Free | Free | - |
| Nemotron 3.5 Lightning Free | Free | Free | Free | - |
| Muse Spark 1.3 Contributor Free | Free | Free | Free | - |
| Jev 1.13 Free | Free | Free | - | - |
| Jev 1.13 | $0.042 | Free | - | - |
| MiniMax M3 | $0.30 | $1.20 | $0.06 | - |
| MiniMax M2.7 | $0.30 | $1.20 | $0.06 | - |
| MiniMax M2.5 | $0.30 | $1.20 | $0.06 | - |
| GLM 5.3 Flash | $0.15 | $0.50 | $0.03 | - |
| GLM 5.3 | $1.40 | $4.40 | $0.26 | - |
| GLM 5.2 | $1.40 | $4.40 | $0.26 | - |
| GLM 5.1 | $1.40 | $4.40 | $0.26 | - |
| GLM 5 | $1.00 | $3.20 | $0.20 | - |
| Kimi K2.7 Code | $0.95 | $4.00 | $0.19 | - |
| Kimi K3 | $3.00 | $15.00 | $0.30 | - |
| Kimi K2.6 | $0.95 | $4.00 | $0.16 | - |
| Kimi K2.5 | $0.60 | $3.00 | $0.10 | - |
| Qwen3.8 Flash | $0.15 | $0.47 | $0.016 | $0.20 |
| Qwen3.7 Max | $2.50 | $7.50 | $0.50 | $3.125 |
| Qwen3.7 Plus | $0.40 | $1.60 | $0.04 | $0.50 |
| Qwen3.6 Plus | $0.50 | $3.00 | $0.05 | $0.625 |
| Qwen3.5 Plus | $0.20 | $1.20 | $0.02 | $0.25 |
| DeepSeek V4.1 Flash | $0.30 | $1.20 | $0.006 | - |
| DeepSeek V4 Pro | $1.74 | $3.48 | $0.145 | - |
| DeepSeek V4 Flash | $0.14 | $0.28 | $0.028 | - |
| DeepSeek V4 Flash Vision Exp | $0.14 | $0.28 | $0.028 | - |
| Claude Fable 5.1 | $10.00 | $50.00 | $0.25 | $12.50 |
| Claude Fable 5 | $10.00 | $50.00 | $1.00 | $12.50 |
| Claude Opus 5 | $5.00 | $25.00 | $0.50 | $6.25 |
| Claude Opus 4.8 | $5.00 | $25.00 | $0.50 | $6.25 |
| Claude Opus 4.7 | $5.00 | $25.00 | $0.50 | $6.25 |
| Claude Opus 4.6 | $5.00 | $25.00 | $0.50 | $6.25 |
| Claude Opus 4.5 | $5.00 | $25.00 | $0.50 | $6.25 |
| Claude Sonnet 5 | $2.00 | $10.00 | $0.20 | $2.50 |
| Claude Sonnet 4.6 | $3.00 | $15.00 | $0.30 | $3.75 |
| Claude Sonnet 4.5 (≤ 200K tokens) | $3.00 | $15.00 | $0.30 | $3.75 |
| Claude Sonnet 4.5 (> 200K tokens) | $6.00 | $22.50 | $0.60 | $7.50 |
| Claude Haiku 4.5 | $1.00 | $5.00 | $0.10 | $1.25 |
| Gemini 3.8 Flash | $1.50 | $7.50 | $0.15 | - |
| Gemini 3.7 Flash | $1.50 | $7.50 | $0.15 | - |
| Gemini 3.6 Flash | $1.50 | $7.50 | $0.15 | - |
| Gemini 3.5 Flash | $1.50 | $9.00 | $0.15 | - |
| Gemini 3.5 Flash Lite | $0.30 | $2.50 | $0.03 | - |
| Gemini 3.1 Pro (≤ 200K tokens) | $2.00 | $12.00 | $0.20 | - |
| Gemini 3.1 Pro (> 200K tokens) | $4.00 | $18.00 | $0.40 | - |
| Gemini 3 Flash | $0.50 | $3.00 | $0.05 | - |
| Grok 4.6 (≤ 200K tokens) | $2.00 | $6.00 | $0.50 | - |
| Grok 4.6 (> 200K tokens) | $4.00 | $12.00 | $1.00 | - |
| Grok 4.5 (≤ 200K tokens) | $2.00 | $6.00 | $0.30 | - |
| Grok 4.5 (> 200K tokens) | $4.00 | $12.00 | $0.60 | - |
| Grok Build 0.1 | $1.00 | $2.00 | $0.20 | - |
| Muse Spark 1.3 | $1.25 | $4.25 | $0.15 | - |
| Muse Spark 1.2 | $1.25 | $4.25 | $0.15 | - |
| GPT 6 Astra (≤ 272K tokens) | $10.00 | $50.00 | $1.00 | $12.50 |
| GPT 6 Astra (> 272K tokens) | $20.00 | $75.00 | $2.00 | $25.00 |
| GPT 5.6 Sol (≤ 272K tokens) | $4.00 | $20.00 | $0.40 | $5.00 |
| GPT 5.6 Sol (> 272K tokens) | $8.00 | $30.00 | $0.80 | $10.00 |
| GPT 5.6 Terra (≤ 272K tokens) | $2.00 | $12.00 | $0.20 | $2.50 |
| GPT 5.6 Terra (> 272K tokens) | $4.00 | $18.00 | $0.40 | $5.00 |
| GPT 5.6 Luna (≤ 272K tokens) | $0.20 | $1.20 | $0.02 | $0.25 |
| GPT 5.6 Luna (> 272K tokens) | $0.40 | $1.80 | $0.04 | $0.50 |
| GPT 5.5 (≤ 272K tokens) | $5.00 | $30.00 | $0.50 | - |
| GPT 5.5 (> 272K tokens) | $10.00 | $45.00 | $1.00 | - |
| GPT 5.5 Pro | $30.00 | $180.00 | $30.00 | - |
| GPT 5.4 (≤ 272K tokens) | $2.50 | $15.00 | $0.25 | - |
| GPT 5.4 (> 272K tokens) | $5.00 | $22.50 | $0.50 | - |
| GPT 5.4 Pro | $30.00 | $180.00 | $30.00 | - |
| GPT 5.4 Mini | $0.75 | $4.50 | $0.075 | - |
| GPT 5.4 Nano | $0.20 | $1.25 | $0.02 | - |
| GPT 5.3 Codex Spark | $1.75 | $14.00 | $0.175 | - |
| GPT 5.3 Codex | $1.75 | $14.00 | $0.175 | - |
| GPT 5.2 | $1.75 | $14.00 | $0.175 | - |
| GPT 5.2 Codex | $1.75 | $14.00 | $0.175 | - |
| GPT 5.1 | $1.07 | $8.50 | $0.107 | - |
| GPT 5.1 Codex | $1.07 | $8.50 | $0.107 | - |
| GPT 5.1 Codex Max | $1.25 | $10.00 | $0.125 | - |
| GPT 5.1 Codex Mini | $0.25 | $2.00 | $0.025 | - |
| GPT 5 | $1.07 | $8.50 | $0.107 | - |
| GPT 5 Codex | $1.07 | $8.50 | $0.107 | - |
| GPT 5 Nano | $0.05 | $0.40 | $0.005 | - |
Free models
The models below have a free offer in the catalog. Availability and data terms can differ; the offer is not a promise of unlimited or permanent free inference. Jev returns structured decisions, so it is not a replacement for a text-generating coding model.
- Big Pickle
- MiMo-V2.5 Free
- Ling 3.0 Flash Fin Free
- Nemotron 3 Ultra Free
- Nemotron 3.5 Lightning Free
- Muse Spark 1.3 Contributor Free
- Jev 1.13 Free
Cost example
For MiniMax M3, 100,000 uncached input tokens and 20,000 output tokens cost 0.1 × $0.30 + 0.02 × $1.20 = $0.054, before other charges. Retries and repeated context add usage. Payment processing is listed as 4.4% + $0.30 per transaction; confirm the charge in the console.
Auto-reload
If your balance goes below $5, Zen will automatically reload $20.
You can change the auto-reload amount. You can also disable auto-reload entirely.
Monthly limits
You can also set a monthly usage limit for the entire workspace and for each member of your team.
For example, let's say you set a monthly usage limit to $20, Zen will not use more than $20 in a month. But if you have auto-reload enabled, Zen might end up charging you more than $20 if your balance goes below $5.
Retired models
| Model | Retirement date |
|---|---|
| GPT 5.2 Codex | 2026-07-23 |
| GPT 5.1 Codex | 2026-07-23 |
| GPT 5.1 Codex Max | 2026-07-23 |
| GPT 5.1 Codex Mini | 2026-07-23 |
| GPT 5 Codex | 2026-07-23 |
| Claude Opus 4.1 | 2026-08-05 |
| Claude Sonnet 4 | 2026-06-15 |
| Claude Haiku 3.5 | 2026-02-16 |
| Gemini 3 Pro | 2026-03-09 |
| MiniMax M2.5 | 2026-08-05 |
| MiniMax M2.1 | 2026-03-15 |
| GLM 5 | 2026-05-14 |
| GLM 4.7 | 2026-03-15 |
| GLM 4.6 | 2026-03-15 |
| Kimi K2.5 | 2026-08-05 |
| Kimi K2 Thinking | 2026-03-06 |
| Kimi K2 | 2026-03-06 |
| Qwen3 Coder 480B | 2026-02-06 |
Privacy
Read the current privacy section (opens in a new tab) for the selected model. The upstream service describes US hosting and retention policies with exceptions; this is not a universal zero-retention promise.
Model-specific terms include retention for OpenAI and Anthropic APIs, possible improvement use of data from some free models, trial logging for NVIDIA free endpoints, and training use for Muse Spark Contributor. The NVIDIA trial warning says not to submit personal or confidential data. Check model-specific terms and time-limited agreements before sending private code.
Teams and your own keys
Admin can manage models, members, keys and billing; Member manages their own keys. Admins can set member spending limits and disable models. A request to a disabled model returns an error, which should not be mistaken for a broken API key. Do not assume a temporary free workspace offer is permanent.
Zen supports bringing your own OpenAI or Anthropic key. Under that option, the provider bills those tokens directly rather than Zen. Check which billing account applies before comparing usage or changing limits.
Roles
You can invite teammates to your workspace and assign roles:
- Admin : Manage models, members, API keys, and billing
- Member : Manage only their own API keys
Admins can also set monthly spending limits for each member to keep costs under control.
Model access
Admins can enable or disable specific models for the workspace. Requests made to a disabled model will return an error.
This is useful for cases where you want to disable the use of a model that collects data.
Bring your own key
You can use your own OpenAI or Anthropic API keys while still accessing other models in Zen.
When you use your own keys, tokens are billed directly by the provider, not by Zen.
For example, your organization might already have a key for OpenAI or Anthropic and you want to use that instead of the one that Zen provides.
Troubleshooting
For 401/403, check key, workspace and model access; for unavailable models, check the exact ID and retirement status; for limit errors, check balance and spending controls. For connection issues, see network settings and troubleshooting.