{
  "id": "openai",
  "activation": {
    "onStartup": false
  },
  "enabledByDefault": true,
  "providers": [
    "openai"
  ],
  "modelSupport": {
    "modelPrefixes": [
      "gpt-",
      "o1",
      "o3",
      "o4"
    ]
  },
  "providerEndpoints": [
    {
      "endpointClass": "openai-public",
      "hosts": [
        "api.openai.com"
      ]
    },
    {
      "endpointClass": "openai",
      "hosts": [
        "chatgpt.com"
      ]
    },
    {
      "endpointClass": "azure-openai",
      "hostSuffixes": [
        ".openai.azure.com"
      ]
    }
  ],
  "providerRequest": {
    "providers": {
      "openai": {
        "family": "openai-family"
      }
    }
  },
  "modelCatalog": {
    "providers": {
      "openai": {
        "baseUrl": "https://api.openai.com/v1",
        "api": "openai-responses",
        "models": [
          {
            "id": "gpt-5.3-chat-latest",
            "name": "GPT-5.3 Chat (latest)",
            "reasoning": false,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 128000,
            "maxTokens": 16384,
            "cost": {
              "input": 1.75,
              "output": 14,
              "cacheRead": 0.175,
              "cacheWrite": 0
            }
          },
          {
            "id": "gpt-5.3-codex",
            "name": "GPT-5.3 Codex",
            "api": "openai-chatgpt-responses",
            "baseUrl": "https://chatgpt.com/backend-api",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 400000,
            "maxTokens": 128000,
            "cost": {
              "input": 1.75,
              "output": 14,
              "cacheRead": 0.175,
              "cacheWrite": 0
            }
          },
          {
            "id": "gpt-5.4",
            "name": "GPT-5.4",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2048,
                "preferredSidePx": 2048,
                "tokenMode": "detail"
              }
            },
            "contextWindow": 272000,
            "maxTokens": 128000,
            "cost": {
              "input": 2.5,
              "output": 15,
              "cacheRead": 0.25,
              "cacheWrite": 0
            }
          },
          {
            "id": "gpt-5.4-mini",
            "name": "GPT-5.4 mini",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2048,
                "preferredSidePx": 2048,
                "tokenMode": "detail"
              }
            },
            "contextWindow": 400000,
            "maxTokens": 128000,
            "cost": {
              "input": 0.75,
              "output": 4.5,
              "cacheRead": 0.075,
              "cacheWrite": 0
            }
          },
          {
            "id": "gpt-5.4-nano",
            "name": "GPT-5.4 nano",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2048,
                "preferredSidePx": 2048,
                "tokenMode": "detail"
              }
            },
            "contextWindow": 400000,
            "maxTokens": 128000,
            "cost": {
              "input": 0.2,
              "output": 1.25,
              "cacheRead": 0.02,
              "cacheWrite": 0
            }
          },
          {
            "id": "gpt-5.4-pro",
            "name": "GPT-5.4 Pro",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2048,
                "preferredSidePx": 2048,
                "tokenMode": "detail"
              }
            },
            "contextWindow": 1050000,
            "maxTokens": 128000,
            "cost": {
              "input": 30,
              "output": 180,
              "cacheRead": 0,
              "cacheWrite": 0
            }
          },
          {
            "id": "gpt-5.5",
            "name": "GPT-5.5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 6000,
                "preferredSidePx": 2048,
                "tokenMode": "detail"
              }
            },
            "contextWindow": 1000000,
            "contextTokens": 272000,
            "maxTokens": 128000,
            "cost": {
              "input": 5,
              "output": 30,
              "cacheRead": 0.5,
              "cacheWrite": 0
            }
          },
          {
            "id": "o1",
            "name": "o1",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 15,
              "output": 60,
              "cacheRead": 7.5,
              "cacheWrite": 0
            }
          },
          {
            "id": "o1-pro",
            "name": "o1-pro",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 150,
              "output": 600,
              "cacheRead": 0,
              "cacheWrite": 0
            }
          },
          {
            "id": "o3",
            "name": "o3",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 2,
              "output": 8,
              "cacheRead": 0.5,
              "cacheWrite": 0
            }
          },
          {
            "id": "o3-deep-research",
            "name": "o3-deep-research",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 10,
              "output": 40,
              "cacheRead": 2.5,
              "cacheWrite": 0
            }
          },
          {
            "id": "o3-mini",
            "name": "o3-mini",
            "reasoning": true,
            "input": [
              "text"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 1.1,
              "output": 4.4,
              "cacheRead": 0.55,
              "cacheWrite": 0
            }
          },
          {
            "id": "o3-pro",
            "name": "o3-pro",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 20,
              "output": 80,
              "cacheRead": 0,
              "cacheWrite": 0
            }
          },
          {
            "id": "o4-mini",
            "name": "o4-mini",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 1.1,
              "output": 4.4,
              "cacheRead": 0.28,
              "cacheWrite": 0
            }
          },
          {
            "id": "o4-mini-deep-research",
            "name": "o4-mini-deep-research",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "contextWindow": 200000,
            "maxTokens": 100000,
            "cost": {
              "input": 2,
              "output": 8,
              "cacheRead": 0.5,
              "cacheWrite": 0
            }
          },
          {
            "id": "gpt-5.5-pro",
            "name": "gpt-5.5-pro",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 6000,
                "preferredSidePx": 2048,
                "tokenMode": "detail"
              }
            },
            "contextWindow": 1000000,
            "maxTokens": 128000,
            "cost": {
              "input": 30,
              "output": 180,
              "cacheRead": 0,
              "cacheWrite": 0
            }
          }
        ]
      }
    },
    "aliases": {
      "azure-openai-responses": {
        "provider": "openai",
        "api": "azure-openai-responses"
      }
    },
    "discovery": {
      "openai": "runtime"
    },
    "suppressions": [
      {
        "provider": "openai",
        "model": "gpt-5.3-codex-spark",
        "reason": "gpt-5.3-codex-spark is not exposed by the OpenAI API catalog. Use openai/gpt-5.5."
      },
      {
        "provider": "azure-openai-responses",
        "model": "gpt-5.3-codex-spark",
        "reason": "gpt-5.3-codex-spark is not exposed by the OpenAI API catalog. Use openai/gpt-5.5."
      }
    ]
  },
  "setup": {
    "providers": [
      {
        "id": "openai",
        "envVars": [
          "OPENAI_API_KEY"
        ]
      }
    ]
  },
  "providerAuthChoices": [
    {
      "provider": "openai",
      "method": "oauth",
      "choiceId": "openai",
      "choiceLabel": "ChatGPT Login",
      "choiceHint": "Sign in with your ChatGPT or Codex subscription",
      "assistantPriority": -40,
      "groupId": "openai",
      "groupLabel": "OpenAI",
      "groupHint": "ChatGPT/Codex sign-in or API key",
      "onboardingFeatured": true
    },
    {
      "provider": "openai",
      "method": "device-code",
      "choiceId": "openai-device-code",
      "choiceLabel": "ChatGPT Device Pairing",
      "choiceHint": "Pair your ChatGPT account in browser with a device code",
      "assistantPriority": -10,
      "assistantVisibility": "manual-only",
      "groupId": "openai",
      "groupLabel": "OpenAI",
      "groupHint": "ChatGPT/Codex sign-in or API key"
    },
    {
      "provider": "openai",
      "method": "api-key",
      "choiceId": "openai-api-key",
      "choiceLabel": "OpenAI API Key",
      "choiceHint": "Use your OpenAI API key directly",
      "assistantPriority": 5,
      "groupId": "openai",
      "groupLabel": "OpenAI",
      "groupHint": "ChatGPT/Codex sign-in or API key",
      "onboardingFeatured": true,
      "optionKey": "openaiApiKey",
      "cliFlag": "--openai-api-key",
      "cliOption": "--openai-api-key <key>",
      "cliDescription": "OpenAI API Key"
    }
  ],
  "contracts": {
    "speechProviders": [
      "openai"
    ],
    "realtimeTranscriptionProviders": [
      "openai"
    ],
    "realtimeVoiceProviders": [
      "openai"
    ],
    "memoryEmbeddingProviders": [
      "openai"
    ],
    "mediaUnderstandingProviders": [
      "openai"
    ],
    "imageGenerationProviders": [
      "openai"
    ],
    "videoGenerationProviders": [
      "openai"
    ]
  },
  "imageGenerationProviderMetadata": {
    "openai": {
      "authSignals": [
        {
          "provider": "openai"
        }
      ]
    }
  },
  "videoGenerationProviderMetadata": {
    "openai": {
      "authSignals": [
        {
          "provider": "openai"
        }
      ]
    }
  },
  "mediaUnderstandingProviderMetadata": {
    "openai": {
      "capabilities": [
        "image",
        "audio"
      ],
      "defaultModels": {
        "image": "gpt-5.5",
        "audio": "gpt-4o-transcribe"
      },
      "autoPriority": {
        "image": 20,
        "audio": 20
      }
    }
  },
  "configSchema": {
    "type": "object",
    "additionalProperties": false,
    "properties": {
      "personality": {
        "type": "string",
        "enum": [
          "friendly",
          "on",
          "off"
        ],
        "default": "friendly",
        "description": "Legacy compatibility fallback for the shared GPT-5 friendly interaction-style overlay. Prefer agents.defaults.promptOverlays.gpt5.personality. `friendly` and `on` enable the style overlay; `off` disables only that style layer."
      }
    }
  }
}
