systemprompt-models 0.14.0

Foundation data models for systemprompt.io AI governance infrastructure. Shared DTOs, config, and domain types consumed by every layer of the MCP governance pipeline.
Documentation
# Canonical default provider catalog.
#
# Single source of truth for the out-of-the-box model knowledge (ids, aliases,
# per-million pricing, capabilities, limits) seeded into a fresh profile. The
# setup wizard, cloud-init scaffolding, and the catalog-parity tests all read
# this one file via `ProviderRegistry::default_seed()`. Operators extend or
# override it by editing `profile.providers` directly — nothing here is
# compiled into model behaviour.
#
# Pricing is per *million* tokens (the registry `ModelPricing` unit). The first
# model under each provider is its agent-side default model.
#
# Model sets are reconciled against each vendor's live `/models` endpoint and
# their published rate cards (as of 2026-06-01):
#   - Anthropic: https://platform.claude.com/docs/en/about-claude/pricing
#   - OpenAI:    https://openai.com/api/pricing/
#   - Google:    https://ai.google.dev/gemini-api/docs/pricing
# Every id below is a real model at its provider; retired ids (Claude 3.x,
# o1-mini/o1-preview, dall-e-2/3, Gemini 1.5) have been dropped.

providers:
  - name: anthropic
    protocol: anthropic
    endpoint: https://api.anthropic.com/v1
    api_key_secret: anthropic
    models:
      - id: claude-sonnet-4-6
        pricing: { input_per_million: 3.0, output_per_million: 15.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-opus-4-8
        pricing: { input_per_million: 5.0, output_per_million: 25.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-opus-4-7
        pricing: { input_per_million: 5.0, output_per_million: 25.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-opus-4-6
        pricing: { input_per_million: 5.0, output_per_million: 25.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-opus-4-5-20251101
        pricing: { input_per_million: 5.0, output_per_million: 25.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-sonnet-4-5-20250929
        pricing: { input_per_million: 3.0, output_per_million: 15.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-haiku-4-5-20251001
        pricing: { input_per_million: 1.0, output_per_million: 5.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-opus-4-1-20250805
        pricing: { input_per_million: 15.0, output_per_million: 75.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 32000 }
      - id: claude-sonnet-4-20250514
        pricing: { input_per_million: 3.0, output_per_million: 15.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 64000 }
      - id: claude-opus-4-20250514
        pricing: { input_per_million: 15.0, output_per_million: 75.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 32000 }

  - name: openai
    protocol: openai-chat
    endpoint: https://api.openai.com/v1
    api_key_secret: openai
    models:
      - id: gpt-4.1
        pricing: { input_per_million: 2.0, output_per_million: 8.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 32768 }
      - id: gpt-4.1-mini
        pricing: { input_per_million: 0.4, output_per_million: 1.6 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 32768 }
      - id: gpt-4.1-nano
        pricing: { input_per_million: 0.1, output_per_million: 0.4 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 32768 }
      - id: gpt-5
        pricing: { input_per_million: 1.25, output_per_million: 10.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 400000, max_output_tokens: 128000 }
      - id: gpt-5.1
        pricing: { input_per_million: 1.25, output_per_million: 10.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 400000, max_output_tokens: 128000 }
      - id: gpt-5-mini
        pricing: { input_per_million: 0.25, output_per_million: 2.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 400000, max_output_tokens: 128000 }
      - id: gpt-5-nano
        pricing: { input_per_million: 0.05, output_per_million: 0.4 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 400000, max_output_tokens: 128000 }
      - id: o4-mini
        pricing: { input_per_million: 1.1, output_per_million: 4.4 }
        capabilities: { streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 100000 }
      - id: o3
        pricing: { input_per_million: 10.0, output_per_million: 40.0 }
        capabilities: { streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 100000 }
      - id: o3-mini
        pricing: { input_per_million: 1.1, output_per_million: 4.4 }
        capabilities: { streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 100000 }
      - id: gpt-4o
        pricing: { input_per_million: 2.5, output_per_million: 10.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 128000, max_output_tokens: 16384 }
      - id: gpt-4o-mini
        pricing: { input_per_million: 0.15, output_per_million: 0.6 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 128000, max_output_tokens: 16384 }
      - id: gpt-4-turbo
        pricing: { input_per_million: 10.0, output_per_million: 30.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 128000, max_output_tokens: 4096 }
      - id: gpt-4
        pricing: { input_per_million: 10.0, output_per_million: 30.0 }
        capabilities: { streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 8192, max_output_tokens: 4096 }
      - id: gpt-3.5-turbo
        pricing: { input_per_million: 0.5, output_per_million: 1.5 }
        capabilities: { streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 16385, max_output_tokens: 4096 }
      - id: o1
        pricing: { input_per_million: 15.0, output_per_million: 60.0 }
        capabilities: { streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 200000, max_output_tokens: 100000 }
      - id: gpt-image-1
        pricing: { input_per_million: 0.0, output_per_million: 0.0, per_image_cents: 4.0 }
        capabilities: { image_generation: true }
      - id: gpt-image-1-mini
        pricing: { input_per_million: 0.0, output_per_million: 0.0, per_image_cents: 4.0 }
        capabilities: { image_generation: true }

  - name: gemini
    protocol: gemini
    endpoint: https://generativelanguage.googleapis.com/v1beta
    api_key_secret: gemini
    models:
      - id: gemini-3.1-flash-lite-preview
        pricing: { input_per_million: 0.25, output_per_million: 1.5 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-3.1-pro-preview
        pricing: { input_per_million: 2.0, output_per_million: 12.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-3.5-flash
        pricing: { input_per_million: 1.5, output_per_million: 9.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-3.1-flash-image-preview
        pricing: { input_per_million: 0.5, output_per_million: 3.0, per_image_cents: 4.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true, image_generation: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-3-flash-preview
        pricing: { input_per_million: 0.5, output_per_million: 3.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-3-pro-image-preview
        pricing: { input_per_million: 2.0, output_per_million: 12.0, per_image_cents: 4.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true, image_generation: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      # Rotating aliases — the vendor repoints these at the current pro/flash
      # release; priced to the model each currently resolves to.
      - id: gemini-pro-latest
        pricing: { input_per_million: 2.0, output_per_million: 12.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-flash-latest
        pricing: { input_per_million: 1.5, output_per_million: 9.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-2.5-flash-lite
        pricing: { input_per_million: 0.1, output_per_million: 0.4 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-2.5-flash
        pricing: { input_per_million: 0.3, output_per_million: 2.5 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-2.5-pro
        pricing: { input_per_million: 1.25, output_per_million: 10.0 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 65536 }
      - id: gemini-2.0-flash
        pricing: { input_per_million: 0.1, output_per_million: 0.4 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 8192 }
      - id: gemini-2.0-flash-lite
        pricing: { input_per_million: 0.1, output_per_million: 0.4 }
        capabilities: { vision: true, streaming: true, tools: true, structured_output: true, system_prompts: true }
        limits: { context_window: 1000000, max_output_tokens: 8192 }
      - id: gemini-2.5-flash-image
        pricing: { input_per_million: 0.0, output_per_million: 0.0, per_image_cents: 4.0 }
        capabilities: { image_generation: true }