{
  "id": "anthropic",
  "doctorContract": {},
  "sessionRouteStateOwners": [
    {
      "id": "anthropic",
      "label": "Anthropic",
      "providerIds": [
        "anthropic",
        "claude-cli"
      ],
      "runtimeIds": [
        "claude-cli"
      ],
      "cliSessionKeys": [
        "claude-cli"
      ],
      "authProfilePrefixes": [
        "anthropic:",
        "claude-cli:"
      ]
    }
  ],
  "name": "Anthropic",
  "description": "Anthropic models, Claude CLI, and native Claude session catalog.",
  "activation": {
    "onStartup": true
  },
  "enabledByDefault": true,
  "providers": [
    "anthropic"
  ],
  "providerUsageAuthEnvVars": {
    "anthropic": [
      "ANTHROPIC_ADMIN_KEY",
      "ANTHROPIC_ADMIN_API_KEY"
    ]
  },
  "providerCatalogEntry": "./provider-discovery.js",
  "modelCatalog": {
    "modelsDev": {
      "anthropic": "anthropic"
    },
    "providers": {
      "claude-cli": {
        "models": [
          {
            "id": "claude-opus-5",
            "name": "Claude Opus 5 (Claude CLI)",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000
          },
          {
            "id": "claude-sonnet-5",
            "name": "Claude Sonnet 5 (Claude CLI)",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000
          },
          {
            "id": "claude-fable-5-1",
            "name": "Claude Fable 5.1 (Claude CLI)",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000
          },
          {
            "id": "claude-fable-5",
            "name": "Claude Fable 5 (Claude CLI)",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000
          },
          {
            "id": "claude-opus-4-8",
            "name": "Claude Opus 4.8 (Claude CLI)",
            "status": "deprecated",
            "replacedBy": "claude-opus-5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 200000,
            "maxTokens": 128000
          },
          {
            "id": "claude-opus-4-7",
            "name": "Claude Opus 4.7 (Claude CLI)",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 200000,
            "maxTokens": 128000
          },
          {
            "id": "claude-sonnet-4-6",
            "name": "Claude Sonnet 4.6 (Claude CLI)",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 1568,
                "preferredSidePx": 1568,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 200000,
            "maxTokens": 128000
          },
          {
            "id": "claude-opus-4-6",
            "name": "Claude Opus 4.6 (Claude CLI)",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 1568,
                "preferredSidePx": 1568,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 200000,
            "maxTokens": 128000
          }
        ]
      },
      "anthropic": {
        "baseUrl": "https://api.anthropic.com",
        "api": "anthropic-messages",
        "defaultUtilityModel": "claude-haiku-4-5",
        "models": [
          {
            "id": "claude-fable-5-1",
            "name": "Claude Fable 5.1",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "cost": {
              "input": 10,
              "output": 50,
              "cacheRead": 0.25,
              "cacheWrite": 12.5
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000,
            "thinkingLevelMap": {
              "minimal": "low",
              "xhigh": "xhigh",
              "max": "max"
            },
            "compat": {
              "codeMode": "preferred"
            }
          },
          {
            "id": "claude-fable-5",
            "name": "Claude Fable 5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "cost": {
              "input": 10,
              "output": 50,
              "cacheRead": 1,
              "cacheWrite": 12.5
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000,
            "thinkingLevelMap": {
              "minimal": "low",
              "xhigh": "xhigh",
              "max": "max"
            },
            "compat": {
              "codeMode": "preferred"
            }
          },
          {
            "id": "claude-opus-5",
            "name": "Claude Opus 5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "cost": {
              "input": 5,
              "output": 25,
              "cacheRead": 0.5,
              "cacheWrite": 6.25
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000,
            "thinkingLevelMap": {
              "xhigh": "xhigh",
              "max": "max"
            },
            "compat": {
              "codeMode": "preferred"
            }
          },
          {
            "id": "claude-sonnet-5",
            "name": "Claude Sonnet 5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "cost": {
              "input": 2,
              "output": 10,
              "cacheRead": 0.2,
              "cacheWrite": 2.5
            },
            "contextWindow": 1000000,
            "contextWindows": [
              {
                "id": "200k",
                "label": "200K",
                "contextWindow": 200000
              },
              {
                "id": "1m",
                "label": "1M",
                "contextWindow": 1000000
              }
            ],
            "contextWindowDefault": "1m",
            "maxTokens": 128000,
            "thinkingLevelMap": {
              "xhigh": "xhigh",
              "max": "max"
            },
            "compat": {
              "codeMode": "preferred"
            }
          },
          {
            "id": "claude-mythos-5",
            "name": "Claude Mythos 5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "cost": {
              "input": 10,
              "output": 50,
              "cacheRead": 1,
              "cacheWrite": 12.5
            },
            "contextWindow": 1000000,
            "maxTokens": 128000,
            "thinkingLevelMap": {
              "minimal": "low",
              "xhigh": "xhigh",
              "max": "max"
            },
            "compat": {
              "codeMode": "preferred"
            }
          },
          {
            "id": "claude-opus-4-8",
            "name": "Claude Opus 4.8",
            "status": "deprecated",
            "replacedBy": "claude-opus-5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 2576,
                "preferredSidePx": 2576,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 1000000,
            "maxTokens": 128000,
            "compat": {
              "codeMode": "preferred"
            }
          },
          {
            "id": "claude-haiku-4-5",
            "name": "Claude Haiku 4.5",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "mediaInput": {
              "image": {
                "maxSidePx": 1568,
                "preferredSidePx": 1568,
                "tokenMode": "provider"
              }
            },
            "contextWindow": 200000,
            "maxTokens": 64000,
            "compat": {
              "codeMode": "preferred"
            }
          }
        ]
      }
    },
    "discovery": {
      "claude-cli": "static",
      "anthropic": "refreshable"
    }
  },
  "modelSupport": {
    "modelPrefixes": [
      "claude-"
    ]
  },
  "modelIdNormalization": {
    "providers": {
      "anthropic": {
        "aliases": {
          "fable": "claude-fable-5-1",
          "fable-5": "claude-fable-5",
          "fable-5.1": "claude-fable-5-1",
          "fable-5-1": "claude-fable-5-1",
          "haiku": "claude-haiku-4-5",
          "opus-5": "claude-opus-5",
          "opus": "claude-opus-5",
          "opus-4.8": "claude-opus-4-8",
          "opus-4.7": "claude-opus-4-7",
          "opus-4.6": "claude-opus-4-6",
          "mythos-5": "claude-mythos-5",
          "sonnet-5": "claude-sonnet-5",
          "sonnet": "claude-sonnet-5",
          "sonnet-4.6": "claude-sonnet-4-6"
        }
      }
    }
  },
  "modelPricing": {
    "providers": {
      "anthropic": {
        "openRouter": {
          "modelIdTransforms": [
            "version-dots"
          ]
        }
      }
    }
  },
  "providerEndpoints": [
    {
      "endpointClass": "anthropic-public",
      "hosts": [
        "api.anthropic.com"
      ]
    }
  ],
  "providerRequest": {
    "providers": {
      "anthropic": {
        "family": "anthropic"
      }
    }
  },
  "cliBackends": [
    "claude-cli"
  ],
  "syntheticAuthRefs": [
    "claude-cli"
  ],
  "nonSecretAuthMarkers": [
    "openclaw:claude-cli-native-auth"
  ],
  "setup": {
    "providers": [
      {
        "id": "anthropic",
        "envVars": [
          "ANTHROPIC_OAUTH_TOKEN",
          "ANTHROPIC_API_KEY"
        ]
      }
    ]
  },
  "providerAuthChoices": [
    {
      "provider": "anthropic",
      "method": "cli",
      "choiceId": "anthropic-cli",
      "deprecatedChoiceIds": [
        "claude-cli"
      ],
      "choiceLabel": "Anthropic Claude CLI",
      "choiceHint": "Keep using an existing Claude Code CLI login on this host",
      "assistantPriority": -20,
      "groupId": "anthropic",
      "groupLabel": "Anthropic",
      "groupHint": "Claude CLI + API key",
      "onboardingFeatured": true
    },
    {
      "provider": "anthropic",
      "method": "setup-token",
      "choiceId": "setup-token",
      "appGuidedSecret": true,
      "choiceLabel": "Anthropic setup-token",
      "choiceHint": "Token created by running 'claude setup-token' in your terminal",
      "assistantPriority": 40,
      "groupId": "anthropic",
      "groupLabel": "Anthropic",
      "groupHint": "Claude CLI + API key + token",
      "onboardingFeatured": true
    },
    {
      "provider": "anthropic",
      "method": "api-key",
      "personalAccount": true,
      "choiceId": "apiKey",
      "appGuidedSecret": true,
      "choiceLabel": "Anthropic API key",
      "groupId": "anthropic",
      "groupLabel": "Anthropic",
      "groupHint": "Claude CLI + API key",
      "onboardingFeatured": true,
      "optionKey": "anthropicApiKey",
      "cliFlag": "--anthropic-api-key",
      "cliOption": "--anthropic-api-key <key>",
      "cliDescription": "Anthropic API key"
    }
  ],
  "contracts": {
    "mediaUnderstandingProviders": [
      "anthropic"
    ],
    "usageProviders": [
      "anthropic"
    ]
  },
  "mediaUnderstandingProviderMetadata": {
    "anthropic": {
      "capabilities": [
        "image"
      ],
      "defaultModels": {
        "image": "claude-opus-5"
      },
      "autoPriority": {
        "image": 20
      },
      "nativeDocumentInputs": [
        "pdf"
      ]
    }
  },
  "configSchema": {
    "type": "object",
    "additionalProperties": false,
    "properties": {
      "sessionCatalog": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "enabled": {
            "type": "boolean",
            "default": true
          }
        }
      }
    }
  },
  "uiHints": {
    "sessionCatalog": {
      "label": "Native Session Discovery",
      "help": "Controls whether Claude Code sessions from this Gateway and paired nodes appear in the sidebar. Disabling also removes this host's paired-node catalog commands without disabling Anthropic models or the Claude CLI backend. Node-list failures usually indicate a Gateway pairing-store or node-registry problem; verify Settings > Devices or run openclaw nodes list. Changes require a Gateway restart."
    },
    "sessionCatalog.enabled": {
      "label": "Discover Claude Code Sessions",
      "help": "List native Claude Code sessions in the sidebar from this Gateway and eligible paired nodes."
    }
  }
}
