Skip to content

Provider Catalog

This page is the provider-first reference for cliproxyapi++: what each provider block is for, how to configure it, and when to use it.

Provider Groups

GroupPrimary UseConfig Blocks
Direct APIsLowest translation overhead, direct vendor featuresclaude-api-key, gemini-api-key, codex-api-key, deepseek, groq, mistral
AggregatorsBroad model inventory under one accountopenrouter, together, fireworks, novita, siliconflow, openai-compatibility
OAuth / Session FlowsIDE-style account login and managed refreshkiro, cursor, minimax, roo, kilo, ampcode
Compatibility EndpointsOpenAI-shaped upstream endpointsopenai-compatibility, vertex-api-key

Minimal Provider Patterns

1) Direct vendor key

yaml
claude-api-key:
  - api-key: "sk-ant-..."
    prefix: "claude-prod"

2) Aggregator provider

yaml
openrouter:
  - api-key: "sk-or-v1-..."
    base-url: "https://openrouter.ai/api/v1"
    prefix: "or"

3) OpenAI-compatible provider registry

yaml
openai-compatibility:
  - name: "openrouter"
    prefix: "or"
    base-url: "https://openrouter.ai/api/v1"
    api-key-entries:
      - api-key: "sk-or-v1-..."

3b) Orchids reverse proxy (OpenAI-compatible)

yaml
openai-compatibility:
  - name: "orchids"
    prefix: "orchids"
    base-url: "https://<your-orchids-endpoint>/v1"
    api-key-entries:
      - api-key: "<orchids-api-key>"

Use this when Orchids is exposed as an OpenAI-shaped /v1 endpoint and you want prefix-isolated routing (orchids/<model>).

4) OAuth/session provider

yaml
kiro:
  - token-file: "~/.aws/sso/cache/kiro-auth-token.json"

5) Kilo free-model endpoint (OpenRouter-compatible)

yaml
kilo:
  - api-key: "anonymous"
    base-url: "https://api.kilo.ai/api/openrouter"

Prefixing and Model Scope

  • prefix isolates traffic per credential/provider (for example prod/claude-3-5-sonnet).
  • force-model-prefix: true enforces explicit provider routing.
  • models with alias gives client-stable names while preserving upstream model IDs.
  • excluded-models prevents unsafe or expensive models from appearing in /v1/models.

Provider Selection Guide

GoalRecommended Pattern
Predictable latencyPrefer direct providers (claude-api-key, gemini-api-key, codex-api-key)
Broad fallback optionsAdd one aggregator (openrouter or openai-compatibility)
Team/workload isolationUse provider prefix and force-model-prefix: true
Zero-downtime authUse OAuth/session providers with token file refresh (kiro, cursor, minimax)
Lowest ops frictionStandardize all non-direct integrations under openai-compatibility

Validation Checklist

  1. curl -sS http://localhost:8317/v1/models -H "Authorization: Bearer <api-key>" | jq '.data[].id'
  2. Ensure required prefixes are visible in returned model IDs.
  3. Issue one request per critical model path.
  4. Check metrics: curl -sS http://localhost:8317/v1/metrics/providers | jq.
  5. Confirm no sustained 429 or 401/403 on target providers.

MIT Licensed