{"record":{"id":"d432953b5fdfc457","repo":"HKUDS/nanobot","slug":"providers-provider-name-proxy-is-only-supported","errorCode":null,"errorMessage":"providers.{provider_name}.proxy is only supported for OpenAI-compatible providers, OpenAI Codex, and xAI Grok.","messagePattern":"providers\\.(.+?)\\.proxy is only supported for OpenAI-compatible providers, OpenAI Codex, and xAI Grok\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"nanobot/providers/factory.py","lineNumber":101,"sourceCode":"    model = model or preset.model\n    provider_name = config.get_provider_name(model, preset=preset)\n    p = config.get_provider(model, preset=preset)\n    if not provider_name:\n        raise ValueError(f\"No provider is configured for model '{model}'.\")\n    spec = _provider_spec_for_config(provider_name, p)\n    if not spec and p:\n        if not p.api_base:\n            raise ValueError(f\"Provider '{provider_name}' requires api_base in config.\")\n        spec = create_dynamic_spec(\n            provider_name,\n            display_name=(p.display_name or \"\") if p else \"\",\n            thinking_style=(p.thinking_style or \"\") if p else \"\",\n        )\n    if spec and spec.is_transcription_only:\n        raise ValueError(f\"Provider '{provider_name}' only supports transcription.\")\n    backend = spec.backend if spec else \"openai_compat\"\n    if p and p.proxy and backend not in {\"openai_compat\", \"openai_codex\", \"xai_grok\"}:\n        raise ValueError(\n            f\"providers.{provider_name}.proxy is only supported for \"\n            \"OpenAI-compatible providers, OpenAI Codex, and xAI Grok.\"\n        )\n\n    if backend == \"azure_openai\":\n        if not p or not p.api_base:\n            raise ValueError(\"Azure OpenAI requires api_base in config.\")\n    elif (\n        backend == \"openai_compat\"\n        and spec\n        and spec.is_direct\n        and not spec.default_api_base\n        and not (p and p.api_base)\n    ):\n        raise ValueError(f\"Provider '{provider_name}' requires api_base in config.\")\n    elif backend in {\"anthropic\", \"openai_compat\"} and not (\n        backend == \"openai_compat\" and model.startswith(\"bedrock/\")\n    ):","sourceCodeStart":83,"sourceCodeEnd":119,"githubUrl":"https://github.com/HKUDS/nanobot/blob/42f37dc4c0e409eac7818a82d165c5f2757bc075/nanobot/providers/factory.py#L83-L119","documentation":"Error \"providers.{provider_name}.proxy is only supported for OpenAI-compatible providers, OpenAI Codex, and xAI Grok.\" thrown in HKUDS/nanobot.","triggerScenarios":"Thrown at nanobot/providers/factory.py:101 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"42f37dc4c0e409eac7818a82d165c5f2757bc075","analyzedAt":"2026-08-26T00:18:52.276Z","schemaVersion":2},"datasetVersion":"2026-08-26T04:18:47.238Z"}