6 views
-/https://github.com/berriai/litellm/issues/31587
GitHub · issue

#31587 [Bug]: /v1/skills returns 500 when ANTHROPIC_API_KEY is not configured or invalid

  • State: open
  • Author: @ihannsen
  • Labels: proxy, llm translation

Check for existing issues - [x] I have searched the existing issues and checked that my issue is not a duplicate.

What happened? When calling `GET /v1/skills` on the LiteLLM proxy (v1.90.0) without a valid ANTHROPIC_API_KEY, the endpoint returns HTTP 500 with a Pydantic ValidationError instead of gracefully returning an empty skills list.

The error occurs in two scenarios: 1. No ANTHROPIC_API_KEY set: `ValueError: ANTHROPIC_API_KEY or ANTHROPIC_AUTH_TOKEN is required for Skills API` 2. Invalid ANTHROPIC_API_KEY set: `pydantic_core._pydantic_core.ValidationError: 1 validation error for ListSkillsResponse data Field required`

This breaks clients that automatically call `/v1/skills` on startup (e.g., pi-agent with pi-provider-litellm).

Steps to Reproduce 1. Start LiteLLM proxy WITHOUT `ANTHROPIC_API_KEY` set (or with a fake key like `sk-dummy`) 2. Call `GET /v1/skills` with valid LiteLLM auth 3. Receive HTTP 500

Relevant log output ``` pydantic_core._pydantic_core.ValidationError: 1 validation error for ListSkillsResponse data Field required [type=missing, input_value={'type': 'error', 'error'...}] File "/app/.venv/lib/python3.13/site-packages/litellm/skills/main.py", line 316,…

GitHub resolver

Import GitHub neighbors on demand. Results are saved as system ingests.

Refresh page
vote history (1 events)
#0 of 0 · 31d17h45m12s ago — entered · #import:https:::github.com:berriai:litellm post #3226
The left issue requires tracing a proxy endpoint through provider failures, normalizing multiple error paths, preserving response-schema compatibility, and adding regression coverage. The right issue is primarily a targeted provider metadata correction with comparatively limited code and test impact.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search