// OpenCode Multi-Provider Config — working template
// Save to ~/.config/opencode/opencode.json
// Providers: local-gateway (llama-swap), openrouter, deepseek
// Uses @ai-sdk/openai-compatible npm package (bundled with opencode)
{
  "provider": {
    "local-gateway": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Local Gateway (llama-swap)",
      "options": {
        "baseURL": "http://127.0.0.1:9292/v1"
      },
      "models": {
        "qwen36-35b-mtp": {
          "name": "Qwen 3.6 35B MoE + MTP",
          "limit": { "context": 250000, "output": 16384 }
        },
        "qwopus-9b": {
          "name": "Qwopus 3.5 9B Coder + MTP",
          "limit": { "context": 175000, "output": 8192 }
        },
        "gemma-12b": {
          "name": "Gemma 4 12B QAT",
          "limit": { "context": 256000, "output": 16384 }
        }
      }
    },
    "openrouter": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "OpenRouter",
      "options": {
        "baseURL": "https://openrouter.ai/api/v1",
        "apiKey": "sk-or-...YOUR_KEY_HERE"
      },
      "models": {
        "qwen/qwen3-coder": {
          "name": "Qwen 3 Coder",
          "limit": { "context": 131072, "output": 16384 }
        },
        "qwen/qwen3.7-max": {
          "name": "Qwen 3.7 Max",
          "limit": { "context": 131072, "output": 32768 }
        },
        "qwen/qwen3.7-plus": {
          "name": "Qwen 3.7 Plus",
          "limit": { "context": 131072, "output": 32768 }
        },
        "minimax/minimax-m3": {
          "name": "MiniMax M3",
          "limit": { "context": 1048576, "output": 65536 }
        },
        "minimax/minimax-m2.7": {
          "name": "MiniMax M2.7",
          "limit": { "context": 1048576, "output": 65536 }
        },
        "xiaomi/mimo-v2.5": {
          "name": "Xiaomi MiMo 2.5",
          "limit": { "context": 131072, "output": 16384 }
        },
        "xiaomi/mimo-v2.5-pro": {
          "name": "Xiaomi MiMo 2.5 Pro",
          "limit": { "context": 131072, "output": 32768 }
        },
        "google/gemma-4-31b-it": {
          "name": "Gemma 4 31B IT",
          "limit": { "context": 262144, "output": 16384 }
        },
        "nvidia/nemotron-3-ultra-550b-a55b": {
          "name": "Nemotron 3 Ultra",
          "limit": { "context": 131072, "output": 16384 }
        },
        "qwen/qwen3-coder:free": {
          "name": "Qwen 3 Coder (Free)",
          "limit": { "context": 131072, "output": 8192 }
        },
        "google/gemma-4-31b-it:free": {
          "name": "Gemma 4 31B (Free)",
          "limit": { "context": 262144, "output": 8192 }
        },
        "nvidia/nemotron-3-ultra-550b-a55b:free": {
          "name": "Nemotron 3 Ultra 550B (Free)",
          "limit": { "context": 131072, "output": 8192 }
        },
        "meta-llama/llama-3.3-70b-instruct:free": {
          "name": "Llama 3.3 70B (Free)",
          "limit": { "context": 131072, "output": 8192 }
        },
        "openrouter/free": {
          "name": "OpenRouter Free (auto-router)",
          "limit": { "context": 131072, "output": 8192 }
        }
      }
    },
    "deepseek": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "DeepSeek",
      "options": {
        "baseURL": "https://api.deepseek.com/v1",
        "apiKey": "sk-...YOUR_KEY_HERE"
      },
      "models": {
        "deepseek-v4-flash": {
          "name": "DeepSeek V4 Flash",
          "limit": { "context": 1048576, "output": 16384 }
        },
        "deepseek-v4-pro": {
          "name": "DeepSeek V4 Pro",
          "limit": { "context": 65536, "output": 8192 }
        }
      }
    }
  },
  "default": {
    "provider": "local-gateway",
    "model": "qwen36-35b-mtp"
  },
  "models": {
    "local-coding": { "provider": "local-gateway", "model": "qwen36-35b-mtp" },
    "local-fast": { "provider": "local-gateway", "model": "qwopus-9b" },
    "local-data": { "provider": "local-gateway", "model": "gemma-12b" },
    "or-coding": { "provider": "openrouter", "model": "qwen/qwen3-coder" },
    "or-power": { "provider": "openrouter", "model": "qwen/qwen3.7-max" },
    "or-free": { "provider": "openrouter", "model": "openrouter/free" },
    "ds-flash": { "provider": "deepseek", "model": "deepseek-v4-flash" },
    "ds-pro": { "provider": "deepseek", "model": "deepseek-v4-pro" }
  }
}
