BerriAI/litellm · error · ValueError

LIST skills is not supported for {custom_llm_provider}

Error message

LIST skills is not supported for {custom_llm_provider}

What it means

Provider-support check in list_skills: the routing resolved a provider config for custom_llm_provider, but no LIST-skills implementation exists for it (only litellm_proxy and Anthropic-style providers are routed). The provider name is the invalid input; use a supported provider.

Source

Thrown at litellm/skills/main.py:380

        # Route to LiteLLM DB if custom_llm_provider="litellm_proxy"
        if custom_llm_provider == LlmProviders.LITELLM_PROXY.value:
            return _get_litellm_skills_handler().list_skills_handler(
                limit=limit or 20,
                offset=0,
                user_api_key_dict=_get_user_api_key_auth_from_kwargs(kwargs),
                _is_async=_is_async,
                logging_obj=litellm_logging_obj,
                litellm_call_id=litellm_call_id,
            )

        # Get provider config for external providers (Anthropic, etc.)
        skills_api_provider_config: BaseSkillsAPIConfig | None = ProviderConfigManager.get_provider_skills_api_config(
            provider=litellm.LlmProviders(custom_llm_provider),
        )

        if skills_api_provider_config is None:
            raise ValueError(f"LIST skills is not supported for {custom_llm_provider}")

        # Build list parameters
        list_params: Final[ListSkillsParams] = {}
        if limit is not None:
            list_params["limit"] = limit
        if page is not None:
            list_params["page"] = page
        if source is not None:
            list_params["source"] = source

        # Merge extra_query if provided
        if extra_query:
            list_params.update(extra_query)

        # Validate environment and get headers
        headers = extra_headers or {}
        headers = skills_api_provider_config.validate_environment(headers=headers, litellm_params=litellm_params)

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Use a provider that supports listing skills, or implement list skills in a custom provider wrapper for {custom_llm_provider}.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at litellm/skills/main.py:380 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18). Data as JSON: /api/errors/b1c338b299c617c4. Report an issue: GitHub.