{
  "auth": {
    "localTokenField": "prismd"
  },
  "models": {
    "free-auto": {
      "candidates": [
        {
          "contextWindow": 262144,
          "limits": {
            "dailyRequests": 50,
            "maxConcurrent": 2,
            "rpm": 20
          },
          "maxOutputTokens": 32768,
          "provider": "openrouter",
          "providerModelId": "poolside/laguna-s-2.1:free",
          "supportsReasoning": true,
          "supportsTools": true,
          "tags": [
            "free",
            "long-context"
          ]
        },
        {
          "contextWindow": 256000,
          "limits": {
            "dailyRequests": 50,
            "maxConcurrent": 2,
            "rpm": 20
          },
          "maxOutputTokens": 64000,
          "provider": "openrouter",
          "providerModelId": "cohere/north-mini-code:free",
          "supportsReasoning": true,
          "supportsTools": true,
          "tags": [
            "free",
            "long-context",
            "code"
          ]
        },
        {
          "contextWindow": 131072,
          "limits": {
            "dailyRequests": 14400,
            "maxConcurrent": 2,
            "rpm": 30
          },
          "maxOutputTokens": 8192,
          "provider": "cerebras",
          "providerModelId": "llama-3.3-70b",
          "supportsReasoning": false,
          "supportsTools": true,
          "tags": [
            "fast",
            "chat"
          ]
        }
      ],
      "description": "Auto-select a free coding model, with fallback candidates"
    }
  },
  "policies": {
    "connectTimeoutMs": 10000,
    "cooldownMs": 60000,
    "failThreshold": 3,
    "failoverOn": [
      "400",
      "401",
      "403",
      "404",
      "410",
      "413",
      "429",
      "500",
      "502",
      "503",
      "504"
    ],
    "maxCandidatesPerRequest": 2,
    "quotaSoftLimitRatio": 0.8,
    "respectRetryAfter": true,
    "retryAfterStream": false,
    "retryBeforeStream": true,
    "streamIdleTimeoutMs": 300000
  },
  "providers": {
    "cerebras": {
      "apiKeyField": "cerebras",
      "auth": {
        "type": "api_key"
      },
      "baseUrl": "https://api.cerebras.ai/v1",
      "type": "chat"
    },
    "groq": {
      "apiKeyField": "groq",
      "auth": {
        "type": "api_key"
      },
      "baseUrl": "https://api.groq.com/openai/v1",
      "type": "responses"
    },
    "openrouter": {
      "apiKeyField": "openrouter",
      "auth": {
        "type": "api_key"
      },
      "baseUrl": "https://openrouter.ai/api/v1",
      "extraHeaders": {
        "HTTP-Referer": "https://localhost/prismd",
        "X-Title": "prismd"
      },
      "type": "responses"
    }
  },
  "server": {
    "host": "127.0.0.1",
    "port": 8787
  },
  "version": 1
}
