{
  "channels": [
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Gemini API origin; defaults to https://generativelanguage.googleapis.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://generativelanguage.googleapis.com",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Google AI Studio",
        "id": "aistudio",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Code Assist origin; defaults to https://daily-cloudcode-pa.googleapis.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://daily-cloudcode-pa.googleapis.com",
            "required": false
          },
          {
            "description": "Google OAuth authorization endpoint for the browser step.",
            "kind": "string",
            "name": "authorize_url",
            "placeholder": "https://accounts.google.com/o/oauth2/v2/auth",
            "required": false
          },
          {
            "description": "Google OAuth token endpoint used by the code exchange and by refresh.",
            "kind": "string",
            "name": "token_url",
            "placeholder": "https://oauth2.googleapis.com/token",
            "required": false
          },
          {
            "description": "Static headers added to every Code Assist request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "Antigravity (Code Assist)",
        "id": "antigravity",
        "loginModes": [
          "authorization_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "AWS region for both Bedrock planes and for the SigV4 credential scope; defaults to us-east-1.",
            "kind": "string",
            "name": "region",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Origin replacing bedrock-runtime.{region}.amazonaws.com, for a VPC endpoint or a gateway. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://bedrock-runtime.{region}.amazonaws.com",
            "required": false
          },
          {
            "description": "Origin replacing bedrock.{region}.amazonaws.com, which serves the foundation-model directory.",
            "kind": "string",
            "name": "control_base_url",
            "placeholder": "https://bedrock.{region}.amazonaws.com",
            "required": false
          },
          {
            "description": "The anthropic_version written into every Anthropic request body; defaults to 2026-10-21.",
            "kind": "string",
            "name": "anthropic_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in an Anthropic model's body into cache_control. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Chat Completions body (non-Anthropic models) into prompt_cache_breakpoint.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Claude refusal fallback: off (default), default (recommended model), or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ordered fallback model IDs; duplicates and the primary model are skipped, at most three.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key",
          "aws_access_key"
        ],
        "displayName": "AWS Bedrock",
        "id": "aws_bedrock",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Complete origin of the Azure endpoint, for a Foundry project, a private endpoint or an API Management front door. Provider column, not config JSON. Replaces `resource`.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://{resource}.openai.azure.com",
            "required": false
          },
          {
            "description": "Azure OpenAI resource name; the origin becomes https://{resource}.openai.azure.com. Required unless the provider has a base_url.",
            "kind": "string",
            "name": "resource",
            "placeholder": null,
            "required": false
          },
          {
            "description": "api-version query value. Optional on the v1 surface; required when `deployment` is set.",
            "kind": "string",
            "name": "api_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Deployment name. Set it to address the deployment-scoped layout /openai/deployments/{deployment}/... instead of the version-less v1 surface.",
            "kind": "string",
            "name": "deployment",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Claude-dialect body into cache_control. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in an OpenAI Chat or Responses body into prompt_cache_breakpoint.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Claude refusal fallback: off (default), default (recommended model), or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ordered fallback model IDs; duplicates and the primary model are skipped, at most three.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Microsoft Azure",
        "id": "azure",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Anthropic API origin; defaults to https://api.anthropic.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.anthropic.com",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Messages or count_tokens body into cache_control. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Server-side fallback for Messages requests that name none: off (default), default, or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "The chain fallback_mode `models` installs; at most three are sent.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Origin of the organization cost report when it differs from base_url.",
            "kind": "string",
            "name": "quota_base_url",
            "placeholder": "https://api.anthropic.com",
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Claude API (Anthropic)",
        "id": "claudeapi",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": true,
          "refresh": true,
          "services": true,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Anthropic API origin; defaults to https://api.anthropic.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.anthropic.com",
            "required": false
          },
          {
            "description": "OAuth authorization endpoint for the browser step.",
            "kind": "string",
            "name": "authorize_url",
            "placeholder": "https://claude.com/cai/oauth/authorize",
            "required": false
          },
          {
            "description": "OAuth token endpoint used by the code exchange and by refresh.",
            "kind": "string",
            "name": "token_url",
            "placeholder": "https://platform.claude.com/v1/oauth/token",
            "required": false
          },
          {
            "description": "The claude.ai origin the cookie initialization talks to.",
            "kind": "string",
            "name": "claude_ai_url",
            "placeholder": "https://claude.ai",
            "required": false
          },
          {
            "description": "Static headers added to every backend request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Server-side fallback for Messages requests that name none: off (default), default, or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "The ordered chain fallback_mode models installs; at most three are sent.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Messages or count_tokens body into cache_control.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Accept lower-priority offers after a full 5h window and wait for capacity like Claude Code. Off by default; the server decides eligibility and budget.",
            "kind": "bool",
            "name": "low_priority",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Request extended usage grace for tool-result continuations unless paid extra usage is enabled. Off by default; the server decides whether grace is available.",
            "kind": "bool",
            "name": "extended_usage",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "Claude Code (Claude.ai)",
        "id": "claudecode",
        "loginModes": [
          "authorization_code"
        ]
      },
      "services": [
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/v1/mcp_servers",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/mcp-registry/v0/servers",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/directory/servers",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/hello",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/hello/{name}",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/profile",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/validate",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/claude_cli/roles",
          "transport": "http"
        },
        {
          "class": {
            "class": "refused"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/claude_cli/create_api_key",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/cri",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_cli_profile",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/auth/trusted_devices",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_cli/bootstrap",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/usage",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_code/policy_limits",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_code/settings",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_code/skills",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_code/notification/preferences",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_code/organizations/metrics_enabled",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/claude_code/metrics",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/organization/claude_code_first_token_date",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_code_penguin_mode",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/claude_code_grove",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/account/settings",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "PATCH",
          "path": "/api/oauth/account/settings",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/account/grove_notice_viewed",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/claude_cli_feedback",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/claude_code_shared_session_transcripts",
          "transport": "http"
        },
        {
          "class": {
            "access": "create",
            "class": "resource",
            "kind": "claude:file"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/file_upload",
          "transport": "http"
        },
        {
          "class": {
            "access": "item",
            "class": "resource",
            "kind": "claude:file"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/files/{file_uuid}/content",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/mcp/connectors/search",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/mcp/connectors/suggest",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/mcp/connectors/list",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "claude:plugin"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/plugins/search",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "claude:plugin"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/plugins/list-plugins",
          "transport": "http"
        },
        {
          "class": {
            "access": "item",
            "class": "resource",
            "kind": "claude:plugin"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/plugins/{plugin_id}/download",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "claude:skill"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/skills/search",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "claude:skill"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/skills/list-skills",
          "transport": "http"
        },
        {
          "class": {
            "access": "item",
            "class": "resource",
            "kind": "claude:skill"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/skills/{skill_id}/download",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/plugin_ratings",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/plugin_ratings/appearances",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/plugin_ratings/appearances/outcome",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": true,
          "method": "DELETE",
          "path": "/api/oauth/organizations/{org}/plugin_ratings",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/sync/github/auth",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/payment_method",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/prepaid/bundles",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/prepaid/credits",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/prepaid/commits/{commit_id}",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/admin_requests/eligibility",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/admin_requests/me",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/admin_requests",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/billing/tax_rate",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/claude_code/pro_trial",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/contracts/prepaid/credits",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "PUT",
          "path": "/api/oauth/organizations/{org}/contracts/auto_reload_settings",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/overage_credit_grant",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/overage_credit_grant",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "PUT",
          "path": "/api/oauth/organizations/{org}/overage_spend_limit",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/setup_overage_billing",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/oauth/organizations/{org}/referral/eligibility",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/oauth/organizations/{org}/referral/redemptions",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/organizations/{org}/reset_rate_limits",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/organizations/{org}/model_selector/{selector}",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/organizations/{org}/claude_code/onboarding",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/organizations/{org}/claude_code/onboarding",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/organizations/{org}/cowork/remote_devices",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/organizations/{org}/marketplace/plugin",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/organizations/{org}/projects/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/desktop/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/frame/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/frame/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "PUT",
          "path": "/api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "PATCH",
          "path": "/api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "DELETE",
          "path": "/api/{*path}",
          "transport": "http"
        }
      ]
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "claude.ai origin; defaults to https://claude.ai. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://claude.ai",
            "required": false
          },
          {
            "description": "Text placed before the flattened conversation in every prompt.",
            "kind": "string",
            "name": "prompt",
            "placeholder": null,
            "required": false
          },
          {
            "description": "The timezone the web request declares; defaults to UTC.",
            "kind": "string",
            "name": "timezone",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Per-step URL overrides keyed claudeweb_upload, claudeweb_completion, claudeweb_bootstrap and friends; the organization and conversation placeholders are substituted.",
            "kind": "json",
            "name": "endpoints",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static headers added to every claude.ai request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "cookie"
        ],
        "displayName": "Claude Web (claude.ai session)",
        "id": "claudeweb",
        "loginModes": []
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Cline API origin, `/api/v1` included; defaults to https://api.cline.bot/api/v1. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.cline.bot/api/v1",
            "required": false
          },
          {
            "description": "Where the device login starts; defaults to WorkOS's device authorization endpoint.",
            "kind": "string",
            "name": "device_authorization_url",
            "placeholder": "https://api.workos.com/user_management/authorize/device",
            "required": false
          },
          {
            "description": "Where the device login polls for the WorkOS token pair.",
            "kind": "string",
            "name": "token_url",
            "placeholder": "https://api.workos.com/user_management/authenticate",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key",
          "oauth"
        ],
        "displayName": "Cline",
        "id": "cline",
        "loginModes": [
          "api_key",
          "device_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Cloudflare REST API origin; the account path is appended. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.cloudflare.com",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request, such as cf-aig-* switches.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Cloudflare AI Gateway",
        "id": "cloudflare_ai_gateway",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": true,
          "refresh": true,
          "services": true,
          "websocket": true
        },
        "configKeys": [
          {
            "description": "Codex backend origin and prefix; defaults to https://chatgpt.com/backend-api/codex. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://chatgpt.com/backend-api/codex",
            "required": false
          },
          {
            "description": "OAuth issuer used for login and refresh; defaults to https://auth.openai.com.",
            "kind": "string",
            "name": "issuer",
            "placeholder": "https://auth.openai.com",
            "required": false
          },
          {
            "description": "The `originator` the backend sees; defaults to codex_cli_rs.",
            "kind": "string",
            "name": "originator",
            "placeholder": "codex_cli_rs",
            "required": false
          },
          {
            "description": "Static headers added to every backend request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Responses body into prompt_cache_breakpoint.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Give non-CLI clients the CLI's session, thread, window and turn identity headers. On by default.",
            "kind": "bool",
            "name": "synthesize_cli_identity",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "OpenAI Codex (ChatGPT)",
        "id": "codex",
        "loginModes": [
          "authorization_code",
          "device_code"
        ]
      },
      "services": [
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/v1/user-auth-credential/whoami",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/accounts/check",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/wham/accounts/send_add_credits_nudge_email",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/profiles/me",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/settings/user",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/workspace-messages",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/accounts/verified_access",
          "transport": "http"
        },
        {
          "class": {
            "class": "identity"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/accounts/{account_id}/settings",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/usage",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/backend-api/wham/usage/thread_usage/query_v2",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/usage/plan_limit_history",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/usage/daily-token-usage-breakdown",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/usage/credit-usage-events",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/usage/daily-workspace-user-token-usage-breakdown",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/usage/daily-workspace-user-credit-usage",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/analytics/daily-workspace-usage-counts",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/analytics/daily-plugin-usage-metrics",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/analytics/daily-skill-usage-metrics",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/backend-api/wham/usage/thread_usage/query",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/backend-api/wham/usage/thread-estimates/query",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/rate-limit-reset-credits",
          "transport": "http"
        },
        {
          "class": {
            "class": "usage"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/wham/rate-limit-reset-credits/consume",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/analytics/codex/turn-costs",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:task"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/tasks",
          "transport": "http"
        },
        {
          "class": {
            "access": "create",
            "class": "resource",
            "kind": "codex:task"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/wham/tasks",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:task"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/tasks/list",
          "transport": "http"
        },
        {
          "class": {
            "access": "item",
            "class": "resource",
            "kind": "codex:task"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/tasks/{task_id}",
          "transport": "http"
        },
        {
          "class": {
            "access": "item",
            "class": "resource",
            "kind": "codex:task"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/tasks/{task_id}/turns/{turn_id}/sibling_turns",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:environment"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/environments",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:environment"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/environments/by-repo/{host}/{owner}/{repo}",
          "transport": "http"
        },
        {
          "class": {
            "class": "settings"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/config/bundle",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/app/appcast",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/agent-identities/jwks",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/v1/agent/register",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/v1/agent/{agent_runtime_id}/task/register",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/remote/control/server",
          "transport": "web_socket"
        },
        {
          "class": {
            "access": "create",
            "class": "resource",
            "kind": "codex:remote_server"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/wham/remote/control/server/enroll",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/wham/remote/control/server/refresh",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/wham/remote/control/server/pair",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/remote/control/server/pair/status",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:remote_server"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/wham/remote/control/environments/{environment_id}/clients",
          "transport": "http"
        },
        {
          "class": {
            "access": "delete",
            "class": "resource",
            "kind": "codex:remote_server"
          },
          "idempotent": false,
          "method": "DELETE",
          "path": "/backend-api/wham/remote/control/environments/{environment_id}/clients/{client_id}",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/backend-api/codex/alpha/search",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/codex/models",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/codex/alpha/{namespace}/v2/{tool}",
          "transport": "http"
        },
        {
          "class": {
            "class": "telemetry"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/codex/analytics-events/events",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/codex/realtime/calls",
          "transport": "http"
        },
        {
          "class": {
            "access": "create",
            "class": "resource",
            "kind": "codex:file"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/files",
          "transport": "http"
        },
        {
          "class": {
            "access": "item",
            "class": "resource",
            "kind": "codex:file"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/files/{file_id}/uploaded",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/plugins/list",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/plugins/search",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:plugin"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/plugins/installed",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/plugins/suggested/codex",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:plugin"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/plugins/workspace/created",
          "transport": "http"
        },
        {
          "class": {
            "access": "list",
            "class": "resource",
            "kind": "codex:plugin"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/plugins/workspace/shared",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/plugins/{plugin_id}",
          "transport": "http"
        },
        {
          "class": {
            "access": "create",
            "class": "resource",
            "kind": "codex:plugin"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/ps/plugins/{plugin_id}/install",
          "transport": "http"
        },
        {
          "class": {
            "access": "delete",
            "class": "resource",
            "kind": "codex:plugin"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/ps/plugins/{plugin_id}/uninstall",
          "transport": "http"
        },
        {
          "class": {
            "access": "item",
            "class": "resource",
            "kind": "codex:plugin"
          },
          "idempotent": true,
          "method": "PUT",
          "path": "/backend-api/ps/plugins/{plugin_id}/shares",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "POST",
          "path": "/backend-api/ps/apps/batch",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/ps/mcp",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/ps/mcp",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "DELETE",
          "path": "/backend-api/ps/mcp",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/plugins/featured",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/plugins/export/curated",
          "transport": "http"
        },
        {
          "class": {
            "class": "catalog"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/connectors/directory/list",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/connectors/directory/list_workspace",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/public/plugins/workspace",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/public/plugins/workspace/upload-url",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/public/plugins/workspace/{plugin_id}",
          "transport": "http"
        },
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": false,
          "method": "DELETE",
          "path": "/backend-api/public/plugins/workspace/{plugin_id}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/backend-api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "POST",
          "path": "/backend-api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "PUT",
          "path": "/backend-api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "PATCH",
          "path": "/backend-api/{*path}",
          "transport": "http"
        },
        {
          "class": {
            "class": "prefix"
          },
          "idempotent": false,
          "method": "DELETE",
          "path": "/backend-api/{*path}",
          "transport": "http"
        }
      ]
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Command Code API origin, without /alpha or /provider.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.commandcode.ai",
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Project identity sent to the CLI API; defaults to gproxy.",
            "kind": "string",
            "name": "project_slug",
            "placeholder": null,
            "required": false
          },
          {
            "description": "CLI workspace context sent as config. Defaults to an empty object.",
            "kind": "json",
            "name": "server_config",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Send x-cmd-zdr: 1, matching CMD_ZDR=1 in the CLI.",
            "kind": "bool",
            "name": "zero_data_retention",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key",
          "oauth"
        ],
        "displayName": "Command Code",
        "id": "commandcode",
        "loginModes": [
          "api_key",
          "authorization_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Copilot inference origin; defaults to the one the seat implies. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": null,
            "required": false
          },
          {
            "description": "`individual`, `business` or `enterprise`. Decides the inference origin when base_url names none.",
            "kind": "string",
            "name": "account_type",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Where the Copilot token is minted and the seat probed; defaults to https://api.github.com.",
            "kind": "string",
            "name": "github_api_url",
            "placeholder": "https://api.github.com",
            "required": false
          },
          {
            "description": "Where the device login starts; defaults to GitHub's device code endpoint.",
            "kind": "string",
            "name": "device_authorization_url",
            "placeholder": "https://github.com/login/device/code",
            "required": false
          },
          {
            "description": "Where the device login polls for the GitHub token.",
            "kind": "string",
            "name": "token_url",
            "placeholder": "https://github.com/login/oauth/access_token",
            "required": false
          },
          {
            "description": "Scope the device login asks for; defaults to read:user.",
            "kind": "string",
            "name": "scope",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Editor release named in editor-version on GitHub calls.",
            "kind": "string",
            "name": "vscode_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static headers added to every inference request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "GitHub Copilot CLI",
        "id": "copilotcli",
        "loginModes": [
          "device_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin, optionally with a path prefix; the native request path is appended. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": null,
            "required": true
          },
          {
            "description": "Wire dialects the upstream accepts natively. Empty accepts openai, openai_chat, claude and gemini.",
            "kind": "json",
            "name": "dialects",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Header carrying the API key instead of each family's own, e.g. `api-key`.",
            "kind": "string",
            "name": "auth_header",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Prefix written before the key when auth_header is set.",
            "kind": "string",
            "name": "auth_prefix",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Claude-dialect body into cache_control. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in an OpenAI Chat or Responses body into prompt_cache_breakpoint.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Claude refusal fallback: off (default), default (recommended model), or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ordered fallback model IDs; duplicates and the primary model are skipped, at most three.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Custom (API key)",
        "id": "custom",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin; defaults to https://dashscope.aliyuncs.com. The compatibility prefixes are appended by the channel. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://dashscope.aliyuncs.com",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Alibaba DashScope",
        "id": "dashscope",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin; defaults to https://api.deepseek.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.deepseek.com",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "DeepSeek",
        "id": "deepseek",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Connect-RPC origin; defaults to https://server.codeium.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://server.codeium.com",
            "required": false
          },
          {
            "description": "Devin browser PKCE authorization endpoint.",
            "kind": "string",
            "name": "authorize_url",
            "placeholder": "https://app.devin.ai/auth/cli/continue",
            "required": false
          },
          {
            "description": "Devin authorization-code exchange endpoint.",
            "kind": "string",
            "name": "token_url",
            "placeholder": "https://api.devin.ai/auth/cli/token",
            "required": false
          },
          {
            "description": "ClientMetadata #1 and #12; defaults to the CLI's own name.",
            "kind": "string",
            "name": "client_name",
            "placeholder": null,
            "required": false
          },
          {
            "description": "ClientMetadata #2 and #7; defaults to the captured CLI build.",
            "kind": "string",
            "name": "client_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "ClientMetadata #4; defaults to en.",
            "kind": "string",
            "name": "locale",
            "placeholder": null,
            "required": false
          },
          {
            "description": "ClientMetadata #5; defaults to windows, as the capture carried.",
            "kind": "string",
            "name": "os",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Operator-defined model aliases and additional selectors. Discovery uses the live upstream catalogue; unmapped selectors pass through unchanged and are never downgraded to another model.",
            "kind": "json",
            "name": "models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "CompletionConfig #2 when the request names no cap.",
            "kind": "integer",
            "name": "max_tokens",
            "placeholder": null,
            "required": false
          },
          {
            "description": "CompletionConfig #3. The reference declares this field max_newlines and writes the context window into it; the key is named for the use, not the declaration. Also accepted as max_newlines.",
            "kind": "integer",
            "name": "context_window",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static headers added to every call.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "Devin (Windsurf, server.codeium.com)",
        "id": "devin",
        "loginModes": [
          "authorization_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Code Assist origin; defaults to https://cloudcode-pa.googleapis.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://cloudcode-pa.googleapis.com",
            "required": false
          },
          {
            "description": "Google OAuth authorization endpoint for the browser step.",
            "kind": "string",
            "name": "authorize_url",
            "placeholder": "https://accounts.google.com/o/oauth2/v2/auth",
            "required": false
          },
          {
            "description": "Google OAuth token endpoint used by the code exchange and by refresh.",
            "kind": "string",
            "name": "token_url",
            "placeholder": "https://oauth2.googleapis.com/token",
            "required": false
          },
          {
            "description": "Static headers added to every Code Assist request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "Gemini CLI (Code Assist)",
        "id": "geminicli",
        "loginModes": [
          "authorization_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin: https://open.bigmodel.cn (China) or https://api.z.ai (global).",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://open.bigmodel.cn",
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "GLM API / Z.ai",
        "id": "glm",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin: https://open.bigmodel.cn (China) or https://api.z.ai (global).",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://open.bigmodel.cn",
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "GLM Coding Plan / Z.ai",
        "id": "glmcode",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Chat proxy origin; defaults to https://cli-chat-proxy.grok.com/v1. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://cli-chat-proxy.grok.com/v1",
            "required": false
          },
          {
            "description": "Origin for xAI's own image, speech, transcription and video paths; defaults to https://api.x.ai/v1.",
            "kind": "string",
            "name": "media_base_url",
            "placeholder": "https://api.x.ai/v1",
            "required": false
          },
          {
            "description": "Origin the billing probe reads; defaults to the chat proxy, which is the only surface that answers it.",
            "kind": "string",
            "name": "usage_base_url",
            "placeholder": "{base_url}",
            "required": false
          },
          {
            "description": "Device authorization endpoint; defaults to https://auth.x.ai/oauth2/device/code.",
            "kind": "string",
            "name": "oauth_device_code_url",
            "placeholder": "https://auth.x.ai/oauth2/device/code",
            "required": false
          },
          {
            "description": "Token endpoint used by the device poll and by refresh; defaults to https://auth.x.ai/oauth2/token.",
            "kind": "string",
            "name": "oauth_token_url",
            "placeholder": "https://auth.x.ai/oauth2/token",
            "required": false
          },
          {
            "description": "Static headers added to every request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "Grok Build (xAI account)",
        "id": "grokbuild",
        "loginModes": [
          "device_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin; defaults to https://api.moonshot.cn for a key and https://api.kimi.com/coding/v1 for a subscription. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": null,
            "required": false
          },
          {
            "description": "`platform` or `code`. Says whether this provider's upstream answers Claude Messages natively; read off base_url when unstated.",
            "kind": "string",
            "name": "product",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Where the device login and refresh talk; defaults to https://auth.kimi.com.",
            "kind": "string",
            "name": "oauth_host",
            "placeholder": "https://auth.kimi.com",
            "required": false
          },
          {
            "description": "Version announced in user-agent and x-msh-version.",
            "kind": "string",
            "name": "cli_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Machine name announced in x-msh-device-name; `unknown` when unset.",
            "kind": "string",
            "name": "device_name",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Hardware announced in x-msh-device-model; the build's os and arch when unset.",
            "kind": "string",
            "name": "device_model",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Release announced in x-msh-os-version; the build's target OS when unset.",
            "kind": "string",
            "name": "os_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key",
          "oauth"
        ],
        "displayName": "Moonshot (Kimi)",
        "id": "kimi",
        "loginModes": [
          "api_key",
          "device_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Runtime origin, replacing https://runtime.{region}.kiro.dev; also serves the management plane unless management_base_url names one. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://runtime.{region}.kiro.dev",
            "required": false
          },
          {
            "description": "Region for both Kiro planes and for the AWS OIDC host an Identity Center credential refreshes against; defaults to us-east-1.",
            "kind": "string",
            "name": "region",
            "placeholder": "us-east-1",
            "required": false
          },
          {
            "description": "Origin replacing https://management.{region}.kiro.dev, which serves the model catalogue and the usage limits.",
            "kind": "string",
            "name": "management_base_url",
            "placeholder": "https://management.{region}.kiro.dev",
            "required": false
          },
          {
            "description": "The Kiro desktop auth host the device login and its refresh talk to.",
            "kind": "string",
            "name": "auth_base_url",
            "placeholder": "https://prod.us-east-1.auth.desktop.kiro.dev",
            "required": false
          },
          {
            "description": "CodeWhisperer profile ARN for credentials whose login did not report one; a credential's own wins.",
            "kind": "string",
            "name": "profile_arn",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Identity provider the device login opens: github or google.",
            "kind": "string",
            "name": "login_provider",
            "placeholder": null,
            "required": false
          },
          {
            "description": "The Identity Center portal the authorization code is issued by; defaults to the Builder ID portal.",
            "kind": "string",
            "name": "sso_start_url",
            "placeholder": "https://view.awsapps.com/start",
            "required": false
          },
          {
            "description": "Static headers added to every request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "Kiro (AWS CodeWhisperer)",
        "id": "kiro",
        "loginModes": [
          "device_code",
          "authorization_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "MiniMax API origin. Text accepts a Subscription Key or API Key; H3 video requires a pay-as-you-go API Key.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.minimax.io",
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "MiniMax",
        "id": "minimax",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin, without `/v1`. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://integrate.api.nvidia.com",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "NVIDIA NIM",
        "id": "nvidia",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": true
        },
        "configKeys": [
          {
            "description": "OpenAI API origin; defaults to https://api.openai.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.openai.com",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Chat Completions or Responses body into prompt_cache_breakpoint. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Origin of the organization cost report when it differs from base_url.",
            "kind": "string",
            "name": "quota_base_url",
            "placeholder": "https://api.openai.com",
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "OpenAI",
        "id": "openai",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin, `/v1` included. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://opencode.ai/zen/go/v1",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Claude-dialect body into cache_control. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in an OpenAI Chat or Responses body into prompt_cache_breakpoint.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "OpenCode Go",
        "id": "opencodego",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin, `/v1` included. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://opencode.ai/zen/v1",
            "required": false
          },
          {
            "description": "Where the device login and the refresh talk.",
            "kind": "string",
            "name": "console_base_url",
            "placeholder": "https://opencode.ai/console",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Claude-dialect body into cache_control. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in an OpenAI Chat or Responses body into prompt_cache_breakpoint.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key",
          "oauth"
        ],
        "displayName": "OpenCode Zen",
        "id": "opencodezen",
        "loginModes": [
          "api_key",
          "device_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin; defaults to https://openrouter.ai/api. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://openrouter.ai/api",
            "required": false
          },
          {
            "description": "HTTP-Referer sent when the client sends none; OpenRouter attributes traffic to it.",
            "kind": "string",
            "name": "referer",
            "placeholder": null,
            "required": false
          },
          {
            "description": "X-Title sent when the client sends none.",
            "kind": "string",
            "name": "title",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Default provider routing preferences (order, only, ignore, allow_fallbacks, sort, require_parameters, data_collection, quantizations, max_price), forwarded as the body's `provider`.",
            "kind": "json",
            "name": "provider",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Routing preferences per upstream model name, each replacing `provider` whole for that model.",
            "kind": "json",
            "name": "model_providers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ask for usage.include so the reply reports the price charged; on by default.",
            "kind": "bool",
            "name": "usage_accounting",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Rewrite OpenAI's service_tier `fast` into OpenRouter's `priority`; on by default.",
            "kind": "bool",
            "name": "normalize_service_tier",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in a Claude-dialect body into cache_control. The strings are stripped either way.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Turn a client's magic cache string in an OpenAI Chat or Responses body into prompt_cache_breakpoint.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Claude refusal fallback: off (default), default (recommended model), or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ordered fallback model IDs; duplicates and the primary model are skipped, at most three.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "OpenRouter",
        "id": "openrouter",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "LightAI origin, without /assistant. Defaults to the selected OrcaTerm region.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://lightai.cloud.tencent.com",
            "required": false
          },
          {
            "description": "Use OrcaTerm's international account and LightAI endpoints. Defaults to false.",
            "kind": "bool",
            "name": "international",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Override the OrcaTerm account origin used for OAuth, cookie initialization and token refresh.",
            "kind": "string",
            "name": "site_url",
            "placeholder": "https://orcaterm.com",
            "required": false
          },
          {
            "description": "OAuth login provider: wechat, txcloud, google or github. Defaults to wechat in China and google internationally.",
            "kind": "string",
            "name": "oauth_provider",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "OrcaTerm",
        "id": "orcaterm",
        "loginModes": [
          "device_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Use international Trae; defaults to mainland China. Account region selects the international service origin.",
            "kind": "bool",
            "name": "international",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Chat and model API origin override. Defaults to the selected edition and account region.",
            "kind": "string",
            "name": "base_url",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Authentication and account API origin override. Normally selected from the edition and account region.",
            "kind": "string",
            "name": "auth_base_url",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Desktop version override. Defaults to the audited edition's version.",
            "kind": "string",
            "name": "ide_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static upstream headers; account authentication and device identity remain credential-owned.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "Trae",
        "id": "trae",
        "loginModes": [
          "authorization_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Gateway origin; defaults to https://ai-gateway.vercel.sh.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://ai-gateway.vercel.sh",
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Place Claude cache breakpoints at magic cache strings.",
            "kind": "bool",
            "name": "enable_claude_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Place OpenAI cache breakpoints at magic cache strings.",
            "kind": "bool",
            "name": "enable_openai_magic_cache",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Claude refusal fallback: off (default), default (recommended model), or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ordered fallback model IDs; duplicates and the primary model are skipped, at most three.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Vercel AI Gateway",
        "id": "vercel",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Google Cloud project id. Required unless the service-account key carries its own project_id.",
            "kind": "string",
            "name": "project",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Vertex region, for example us-central1, europe-west4 or global. Decides both the origin host and the method path; credential location overrides this default; defaults to us-central1.",
            "kind": "string",
            "name": "location",
            "placeholder": "us-central1",
            "required": false
          },
          {
            "description": "Complete origin, replacing the regional https://{location}-aiplatform.googleapis.com. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://{location}-aiplatform.googleapis.com",
            "required": false
          },
          {
            "description": "Claude refusal fallback: off (default), default (recommended model), or models.",
            "kind": "string",
            "name": "fallback_mode",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ordered fallback model IDs; duplicates and the primary model are skipped, at most three.",
            "kind": "json",
            "name": "fallback_models",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "service_account"
        ],
        "displayName": "Google Vertex AI",
        "id": "vertex",
        "loginModes": []
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": false,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Vertex region, for example us-central1 or global. Credential location overrides this default; defaults to global. Only the origin changes, not the publisher-scoped path.",
            "kind": "string",
            "name": "location",
            "placeholder": "global",
            "required": false
          },
          {
            "description": "Complete origin, replacing https://aiplatform.googleapis.com. Provider column, not config JSON. Overrides the region-derived origin; Express mode requires no project.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://aiplatform.googleapis.com",
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Google Vertex AI Express",
        "id": "vertexexpress",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": true,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": true,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Ark inference origin, without /api/plan or /api/coding. Agent Plan requires its dedicated API key.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://ark.cn-beijing.volces.com",
            "required": false
          },
          {
            "description": "Plan edition: personal (default) or enterprise. Enterprise quota requires credential metadata.seat_id.",
            "kind": "string",
            "name": "edition",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ark control-plane origin. Model discovery, plan information and quota require access_key_id and secret_access_key in the credential secret.",
            "kind": "string",
            "name": "control_base_url",
            "placeholder": "https://ark.cn-beijing.volcengineapi.com",
            "required": false
          },
          {
            "description": "Agent Plan speech origin for HTTP TTS.",
            "kind": "string",
            "name": "speech_base_url",
            "placeholder": "https://openspeech.bytedance.com",
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Volcengine Agent Plan",
        "id": "volcengine_agent",
        "loginModes": [
          "api_key"
        ]
      },
      "services": [
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/volcengine/plan",
          "transport": "http"
        }
      ]
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": true,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Ark inference origin, without /api/plan or /api/coding. Agent Plan requires its dedicated API key.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://ark.cn-beijing.volces.com",
            "required": false
          },
          {
            "description": "Plan edition: personal (default) or enterprise. Enterprise quota requires credential metadata.seat_id.",
            "kind": "string",
            "name": "edition",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Ark control-plane origin. Model discovery, plan information and quota require access_key_id and secret_access_key in the credential secret.",
            "kind": "string",
            "name": "control_base_url",
            "placeholder": "https://ark.cn-beijing.volcengineapi.com",
            "required": false
          },
          {
            "description": "Agent Plan speech origin for HTTP TTS.",
            "kind": "string",
            "name": "speech_base_url",
            "placeholder": "https://openspeech.bytedance.com",
            "required": false
          },
          {
            "description": "Static upstream headers.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "Volcengine Coding Plan",
        "id": "volcengine_coding",
        "loginModes": [
          "api_key"
        ]
      },
      "services": [
        {
          "class": {
            "class": "restricted"
          },
          "idempotent": true,
          "method": "GET",
          "path": "/api/volcengine/plan",
          "transport": "http"
        }
      ]
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": true,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Use WorkBuddy AI's international service and login platform. Defaults to false (mainland).",
            "kind": "bool",
            "name": "international",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Upstream origin override; defaults to https://copilot.tencent.com, or https://www.workbuddy.ai when international is true. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Plugin version reported in x-ide-version and in the user agent.",
            "kind": "string",
            "name": "ide_version",
            "placeholder": null,
            "required": false
          },
          {
            "description": "What x-ide-name claims the plugin runs inside; the CLI says CLI.",
            "kind": "string",
            "name": "ide_name",
            "placeholder": null,
            "required": false
          },
          {
            "description": "What x-ide-type claims the plugin runs inside; the CLI says CLI.",
            "kind": "string",
            "name": "ide_type",
            "placeholder": null,
            "required": false
          },
          {
            "description": "The intent x-agent-intent asks the agent surface for; the CLI says craft.",
            "kind": "string",
            "name": "agent_intent",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Static headers added to every request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "oauth"
        ],
        "displayName": "WorkBuddy (Tencent Copilot)",
        "id": "workbuddy",
        "loginModes": [
          "device_code"
        ]
      },
      "services": []
    },
    {
      "descriptor": {
        "capabilities": {
          "paidUsage": false,
          "quotaQuery": true,
          "quotaReset": false,
          "refresh": false,
          "services": false,
          "websocket": false
        },
        "configKeys": [
          {
            "description": "Upstream origin; defaults to https://api.x.ai. Provider column, not config JSON.",
            "kind": "string",
            "name": "base_url",
            "placeholder": "https://api.x.ai",
            "required": false
          },
          {
            "description": "Static headers added to every upstream request.",
            "kind": "header_list",
            "name": "headers",
            "placeholder": null,
            "required": false
          },
          {
            "description": "An xAI management key, which is not the inference key. Without it there is no billing surface to read.",
            "kind": "string",
            "name": "quota_api_key",
            "placeholder": null,
            "required": false
          },
          {
            "description": "The team whose prepaid balance and postpaid limit the probe reads.",
            "kind": "string",
            "name": "quota_team_id",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Management origin; defaults to https://management-api.x.ai.",
            "kind": "string",
            "name": "quota_base_url",
            "placeholder": "https://management-api.x.ai",
            "required": false
          },
          {
            "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
            "kind": "bool",
            "name": "forward_thinking",
            "placeholder": null,
            "required": false
          },
          {
            "description": "How the host picks among this provider's credentials.",
            "kind": "string",
            "name": "credential_strategy",
            "placeholder": null,
            "required": false
          },
          {
            "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
            "kind": "header_list",
            "name": "allowed_headers",
            "placeholder": null,
            "required": false
          }
        ],
        "credentialKinds": [
          "api_key"
        ],
        "displayName": "xAI (Grok)",
        "id": "xai",
        "loginModes": [
          "api_key"
        ]
      },
      "services": []
    }
  ],
  "hostConfigKeys": [
    {
      "description": "Forward thinking blocks from request history. Defaults to true; disabling removes reasoning content and signatures without disabling model thinking.",
      "kind": "bool",
      "name": "forward_thinking",
      "placeholder": null,
      "required": false
    },
    {
      "description": "How the host picks among this provider's credentials.",
      "kind": "string",
      "name": "credential_strategy",
      "placeholder": null,
      "required": false
    },
    {
      "description": "Additional client headers to forward, unioned with the global allow-list and channel defaults.",
      "kind": "header_list",
      "name": "allowed_headers",
      "placeholder": null,
      "required": false
    }
  ],
  "version": "4.1.10"
}
