Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
606 commits
Select commit Hold shift + click to select a range
4cb11e7
docs(proxy): describe the Admin UI failed sign-in limit (#1523)
devin-ai-integration[bot] Sep 18, 2026
745ed2b
docs: fix load_test_model usage in multi-provider test tutorial (#1360)
devin-ai-integration[bot] Sep 18, 2026
459991d
docs: fix proxy start command in gemini realtime tutorial (#1380)
devin-ai-integration[bot] Sep 18, 2026
851d895
docs: fix register_prompt_template sample in TogetherAI tutorial (#1324)
devin-ai-integration[bot] Sep 18, 2026
d73df54
docs(bedrock): document eager_input_streaming for Claude tool calls (…
mateo-berri Sep 18, 2026
9480dc8
docs(proxy): add Azure Redis Entra ID authentication guide (#1556)
shivamrawat1 Sep 18, 2026
1ff5b24
docs(proxy): explain how team_member_budget updates reach existing me…
devin-ai-integration[bot] Sep 19, 2026
1d61b63
docs(proxy): document agent_id_jwt_field for binding JWTs to register…
devin-ai-integration[bot] Sep 19, 2026
a5e3bc0
docs: add TypeSafe Jev compaction blog post (#1557)
yassin-berriai Sep 19, 2026
73b811a
docs: remove nonexistent store_prompts_in_cold_storage setting from R…
devin-ai-integration[bot] Sep 19, 2026
d02ef5d
docs(mcp): document client application allowlisting (#1553)
devin-ai-integration[bot] Sep 19, 2026
ef85f9c
docs: upperbound key params reject over-limit values instead of clamp…
devin-ai-integration[bot] Sep 19, 2026
178bc4a
docs: fix ui_theme_settings curl endpoint paths in ui_edit_logo (#1313)
devin-ai-integration[bot] Sep 19, 2026
b705f04
docs: remove nonexistent USE_SHARED_HEALTH_CHECK env var from shared …
devin-ai-integration[bot] Sep 19, 2026
9e30c55
chore: consolidate CLAUDE.md into AGENTS.md (#1559)
devin-ai-integration[bot] Sep 19, 2026
8559fc6
docs: replace stale black, mypy, and isort tooling references (#1560)
devin-ai-integration[bot] Sep 19, 2026
68dd238
docs: add Vertex AI Chirp realtime transcription (#1537)
mateo-berri Sep 19, 2026
516525c
docs: add the Claude Code gateway (SSO sign-in) tutorial (#1563)
mateo-berri Sep 19, 2026
6eb873b
Update Claude Code compatibility matrix (#1564)
mateo-berri Sep 19, 2026
e845c74
docs: hosted_vllm batches run inside LiteLLM (#1567)
mateo-berri Sep 19, 2026
9b8f1e9
docs(mistral): document the Files and Batches API and per-page OCR ba…
mateo-berri Sep 19, 2026
87189c5
docs(rag): describe registered-store ingest and the S3 Vectors bucket…
mateo-berri Sep 19, 2026
d589f24
docs(deepseek): list V4.1 Flash and V4 Pro with off-peak pricing (#1568)
mateo-berri Sep 19, 2026
602e4f7
docs(pricing): document the batch and long-context batch pricing keys…
mateo-berri Sep 19, 2026
34baed2
docs: configured cache_control_injection_points apply beside client c…
mateo-berri Sep 19, 2026
31d1f64
docs(vllm): batches run inside LiteLLM enforce the completion window …
mateo-berri Sep 19, 2026
df666ba
docs: replace invalid LITELLM_LOG=None with LITELLM_LOG=ERROR in prox…
devin-ai-integration[bot] Sep 19, 2026
740efd8
docs: admin_only_routes does not support wildcard patterns (#1341)
devin-ai-integration[bot] Sep 19, 2026
50c9efb
docs(guardrails): document Model Armor observe-only mode (#1520)
yucheng-berri Sep 19, 2026
f0b5bfe
Revert "docs(guardrails): post-call scans receive the request message…
devin-ai-integration[bot] Sep 19, 2026
dc8c77a
docs: explain cache-aware auto-router savings (#1575)
tin-berri Sep 19, 2026
2cc014d
docs(otel v2): document the llm_only span scope for Langfuse destinat…
devin-ai-integration[bot] Sep 20, 2026
3cb6e02
blog: TypeSafe Jev pass-through launch post for v1.103.0-rc (#1582)
devin-ai-integration[bot] Sep 20, 2026
be0eb69
docs: split Auto Router admin and user setup (#1581)
tin-berri Sep 20, 2026
c97c452
docs: remove the dead telemetry setting and --telemetry CLI flag (#1584)
devin-ai-integration[bot] Sep 20, 2026
79f1167
blog(auto-router): add five improvements post (#1522)
tin-berri Sep 20, 2026
2e3a6fd
docs(proxy): document the master key boot check and rotating off sk-1…
ryan-crabbe-berri Sep 20, 2026
557fc7f
docs(routing): document NotFoundErrorRetries, ServiceUnavailableError…
mateo-berri Sep 20, 2026
c2f80c2
Update Claude Code compatibility matrix (#1585)
mateo-berri Sep 20, 2026
b8d0df4
docs(proxy): document USE_V2_MIGRATION_RESOLVER (#1586)
yuneng-berri Sep 20, 2026
26aa72c
docs(release_notes): promote v1.102.0 to stable (#1588)
yuneng-berri Sep 20, 2026
7d50e7d
docs: add 1.103.0rc1 release notes (#1589)
yuneng-berri Sep 20, 2026
30515fc
docs: expand JEV Auto Router guidance and publish measured classifier…
devin-ai-integration[bot] Sep 20, 2026
222ea2a
fix date (#1593)
moe-berri Sep 20, 2026
f141f55
Update Claude Code compatibility matrix (#1594)
mateo-berri Sep 21, 2026
9f1bf03
docs(blog): explain Auto-Router encrypted content handling (#1554)
tin-berri Sep 21, 2026
cdf65bb
docs(auto_router): correct heuristic v2 classifier_type value (#1254)
devin-ai-integration[bot] Sep 21, 2026
6a0664c
docs: fix adaptive router state endpoint path (#1294)
devin-ai-integration[bot] Sep 21, 2026
6f1bcd3
docs: fix context management opt-out, drop_params does not disable po…
devin-ai-integration[bot] Sep 21, 2026
023a942
docs: import completion from litellm, not litellm.utils, in document_…
devin-ai-integration[bot] Sep 21, 2026
f4884f4
docs: fix AnthropicConfig kwarg (max_tokens, not max_tokens_to_sample…
devin-ai-integration[bot] Sep 21, 2026
557dc88
docs: fix TogetherAIConfig kwarg (max_tokens, not max_tokens_to_sampl…
devin-ai-integration[bot] Sep 21, 2026
b1c4c7c
docs: fix CohereConfig -> CohereChatConfig in provider_specific_param…
devin-ai-integration[bot] Sep 21, 2026
53bac41
docs: fix PalmConfig kwarg to max_output_tokens (#1285)
devin-ai-integration[bot] Sep 21, 2026
2c38365
docs: fix async file SDK sample names (afile_list/afile_retrieve/afil…
devin-ai-integration[bot] Sep 21, 2026
e489cc4
docs: use image_generation() in Azure image generation usage example …
devin-ai-integration[bot] Sep 21, 2026
d99047d
docs: use litellm.interactions.create()/acreate() in Interactions SDK…
devin-ai-integration[bot] Sep 21, 2026
ee37618
docs: use a real MCP server URL in Cursor and FastMCP examples (#1308)
devin-ai-integration[bot] Sep 21, 2026
4d81475
docs: use LANGFUSE_SECRET_KEY in Langfuse pass-through setup (#1281)
devin-ai-integration[bot] Sep 21, 2026
34cbfe9
docs: fix MCP server update endpoint path in mcp_openapi.md (#1280)
devin-ai-integration[bot] Sep 21, 2026
ab32c32
docs: use azure_ai/ prefix for Azure Foundry Claude models in anthrop…
devin-ai-integration[bot] Sep 21, 2026
ff91e63
docs: fix Vertex AI Live websocket query param names (#1306)
devin-ai-integration[bot] Sep 21, 2026
25b4efe
docs: use azure_ai/ prefix for Foundry Claude input_examples support …
devin-ai-integration[bot] Sep 21, 2026
4ad9e3a
docs: fix Azure videos proxy curl example to use /v1/videos route (#1…
devin-ai-integration[bot] Sep 21, 2026
cd57f97
docs: azure.md points Claude on Azure Foundry to azure_ai/claude-* ro…
devin-ai-integration[bot] Sep 21, 2026
1297468
docs(azure_ocr): use page.index/page.markdown in OCR samples (#1310)
devin-ai-integration[bot] Sep 21, 2026
35fa8a4
docs: add api_key/api_base to custom LLM image_generation signatures …
devin-ai-integration[bot] Sep 21, 2026
7b415b2
docs: remove unsupported quality/response_format params from Gemini i…
devin-ai-integration[bot] Sep 21, 2026
617ec39
docs: use HUGGINGFACE_API_KEY for HuggingFace rerank SDK examples (#1…
devin-ai-integration[bot] Sep 21, 2026
45247ed
docs: remove unsupported embeddings from llamagate provider page (#1320)
devin-ai-integration[bot] Sep 21, 2026
89ee6bd
docs: assign completion() result in novita JSON mode SDK example (#1363)
devin-ai-integration[bot] Sep 21, 2026
476f8a2
docs: fix snowflake thinking param, reasoning_effort is unsupported (…
devin-ai-integration[bot] Sep 21, 2026
c73d0d2
docs: remove unsupported legacy models from OpenAI text completion ta…
devin-ai-integration[bot] Sep 21, 2026
6aff1cf
docs: fix OCRPage field names in OCR code samples (markdown/index) (#…
devin-ai-integration[bot] Sep 21, 2026
087e337
docs: fix SSO role attribute value internal_user_view_only -> interna…
devin-ai-integration[bot] Sep 21, 2026
53256df
docs: remove unsupported deployment_name, detectors, block_on_violati…
devin-ai-integration[bot] Sep 21, 2026
c647fc8
docs: only {event_message} is supported in custom email subjects (#1329)
devin-ai-integration[bot] Sep 21, 2026
d208206
docs: fix prebuilt phone pattern name to us_phone in content filter g…
devin-ai-integration[bot] Sep 21, 2026
db3d694
docs: fix Purview guardrail user ID resolution to match fail-closed b…
devin-ai-integration[bot] Sep 21, 2026
02fe336
docs: fix prompt_security during_call mode description (#1340)
devin-ai-integration[bot] Sep 21, 2026
0860cc5
docs: fix lite chat usage in management CLI docs (#1321)
devin-ai-integration[bot] Sep 21, 2026
01089c4
docs: fix GitLab prompt config keys (project instead of workspace/rep…
devin-ai-integration[bot] Sep 21, 2026
bfb315b
docs(self-serve): document user max_budget as the ceiling for UI pers…
devin-ai-integration[bot] Sep 21, 2026
8774c8c
docs(call_hooks): async_moderation_hook needs CustomGuardrail + full …
devin-ai-integration[bot] Sep 21, 2026
2f104fe
docs(realtime_guardrails): fix claim that any provider supports realt…
devin-ai-integration[bot] Sep 21, 2026
3e9a149
docs(javelin): violations reject the request with HTTP 500 (#1345)
devin-ai-integration[bot] Sep 21, 2026
e49f4a6
docs: remove nonexistent ttft_timeout/stream_idle_timeout router_sett…
devin-ai-integration[bot] Sep 21, 2026
31b7cac
blog: Claude Code server-side auto mode through LiteLLM (#1595)
devin-ai-integration[bot] Sep 21, 2026
8fa76e6
docs(edenai): add the Eden AI provider page (#1459)
hMED22 Sep 21, 2026
37e7abf
docs(blog): add day 0 post for Grok 4.7 (#1601)
misbahsy Sep 21, 2026
50211c5
docs: rename the mainland China brand to Qianwen AI Platform (#1600)
mateo-berri Sep 21, 2026
16282ba
docs(bedrock_mantle): /v1/messages on the native Anthropic Messages A…
mateo-berri Sep 21, 2026
53a5d85
docs(proxy): document default fallback policy attachments (#1590)
devin-ai-integration[bot] Sep 21, 2026
bd7c4c7
docs(bedrock): document s3_bucket_owner for cross-account batch bucke…
devin-ai-integration[bot] Sep 21, 2026
6a2a208
docs(proxy): document scheduled job shutdown timeout env vars (#1603)
devin-ai-integration[bot] Sep 21, 2026
464fd32
docs(blog): drop the OpenRouter price comparison from the Grok 4.7 po…
misbahsy Sep 21, 2026
1b91113
docs(proxy): surface Redis cluster and sentinel env vars outside tabs…
devin-ai-integration[bot] Sep 21, 2026
f8e3dbd
docs(proxy): point the quickstart compose file at the product repo (#…
yuneng-berri Sep 21, 2026
549eded
docs(proxy): document FAL_AI_QUEUE_API_BASE (#1611)
mateo-berri Sep 21, 2026
933aa5a
docs: add Rust migration hub (#1610)
yujonglee-berri Sep 22, 2026
d24887b
docs(proxy): point FAL_AI_QUEUE_API_BASE at the /fal_ai pass-through …
mateo-berri Sep 22, 2026
1101104
docs(tinyfish): add TinyFish Agent pass-through page and env var rows…
Zechereh Sep 22, 2026
f245ba1
docs: include_call_id_in_error_body general setting (#1613)
mateo-berri Sep 22, 2026
ff4323e
docs(proxy): document the zero-cost request warning and litellm_zero_…
mateo-berri Sep 22, 2026
3ed6651
docs: add Fusion SDK model guide (#1618)
Sep 22, 2026
84cf0bd
docs(websearch): document objective and search_queries on the interce…
mateo-berri Sep 22, 2026
8e005ab
docs(voyage): document voyage-context-4, the voyage-4 family, and fla…
mateo-berri Sep 22, 2026
94f6cbd
docs: document native LiteAsk model configuration (#1621)
tin-berri Sep 22, 2026
f6475e7
Update Claude Code compatibility matrix (#1622)
mateo-berri Sep 22, 2026
caeadf0
docs(agents): require GitHub release and ghcr image links in stable r…
devin-ai-integration[bot] Sep 22, 2026
06c4a37
docs(jwt): x-litellm-team-id accepts a team id or a team alias (#1632)
devin-ai-integration[bot] Sep 22, 2026
f65b821
docs(blog): add day 0 post for Claude Opus 5.5 (#1633)
misbahsy Sep 22, 2026
5998a25
docs(proxy): document REDIS_MAX_CONNECTIONS and pool/timeout tuning f…
devin-ai-integration[bot] Sep 22, 2026
d120d31
docs: update Auto Router feature history for 1.103.x and upcoming cha…
tin-berri Sep 22, 2026
38ab701
docs(proxy): document model_info.access_windows team reservation wind…
devin-ai-integration[bot] Sep 22, 2026
3fec207
docs(mcp): canonicalize configuration and fix client examples (#1030)
devin-ai-integration[bot] Sep 22, 2026
4cd3884
docs(blog): add day 0 post for Xiaomi MiMo V2.6 (#1615)
misbahsy Sep 22, 2026
ecd4c58
docs(blog): add day 0 post for GPT-6 Sol and GPT-6 Luna (#1637)
misbahsy Sep 22, 2026
0a0bddc
docs(otel): document TLS settings for OTLP HTTP exporters (#1623)
devin-ai-integration[bot] Sep 22, 2026
319f21e
docs(guardrails): document include_guardrail_response request flag (#…
devin-ai-integration[bot] Sep 22, 2026
8fb4842
docs: add gateway client setup guides and desktop MCP screenshots (#624)
yassin-berriai Sep 22, 2026
f93ced8
docs(bedrock): list the callable Kimi K3 inference profiles (#1627)
devin-ai-integration[bot] Sep 22, 2026
c276fe4
docs(proxy): document litellm_settings.key_alias_pattern (#1640)
mateo-berri Sep 22, 2026
d27f7b0
docs: add a Rust tab to the navbar (#1624)
misbahsy Sep 22, 2026
2e87d84
Update Claude Code compatibility matrix (#1643)
mateo-berri Sep 23, 2026
103ff7b
Update Claude Code compatibility matrix (#1645)
mateo-berri Sep 23, 2026
b8d0a40
docs: fix HTML nesting and replace caution admonitions (#1646)
devin-ai-integration[bot] Sep 23, 2026
990364b
fix: load WebRTC tester styles from a stylesheet (#1649)
devin-ai-integration[bot] Sep 23, 2026
a436bf8
fix(blog): align metadata and rendering behavior (#1648)
devin-ai-integration[bot] Sep 23, 2026
eaa57e0
docs: fix relative links and iframe attributes (#1647)
devin-ai-integration[bot] Sep 23, 2026
f40c7ae
build: move docs tooling to Node 24 (#1652)
devin-ai-integration[bot] Sep 23, 2026
5f8aa3d
docs: migrate content off MDX1-compat syntax (#1650)
devin-ai-integration[bot] Sep 23, 2026
485dc36
chore: remove dead docs code and dependencies (#1651)
devin-ai-integration[bot] Sep 23, 2026
c1973dd
Update Claude Code compatibility matrix (#1654)
mateo-berri Sep 23, 2026
dbc52e9
docs(data_security): defer vulnerability reporting to the repo securi…
devin-ai-integration[bot] Sep 23, 2026
70c5f0e
docs(release_notes): clarify wildcard enterprise auto-router access (…
tin-berri Sep 23, 2026
37efc78
docs(proxy): document PROXY_DB_LOOKUP_DEADLINE_SECONDS and PROXY_DB_L…
devin-ai-integration[bot] Sep 23, 2026
a307207
docs(mcp): add per-user and per-key upstream credential guide (#1659)
devin-ai-integration[bot] Sep 23, 2026
03f7ffc
docs(blog): add day 0 post for Gemini 3.8 Flash TTS and Flash-Lite TT…
misbahsy Sep 23, 2026
4a6cacb
docs(batches): refactor managed batches guide, split Mistral Batch AP…
mubashir1osmani Sep 23, 2026
1d68ee8
feat: Rust migration progress tracker (#1616)
yujonglee-berri Sep 23, 2026
61443e8
docs(vertex_batch): document GCS_BATCH_BUCKET_NAME and legacy bucket_…
devin-ai-integration[bot] Sep 23, 2026
9ae55ae
docs(proxy): document model_info.discoverable (#1669)
mateo-berri Sep 24, 2026
3d82ed1
feat: restructure Rust migration breakdown (#1671)
yujonglee-berri Sep 24, 2026
9ff0cd1
docs: add guide for migrating from kube manifests to the microservice…
devin-ai-integration[bot] Sep 24, 2026
e926821
docs(fireworks_ai): add FireRouter auto router section (#1668)
devin-ai-integration[bot] Sep 24, 2026
7f9d173
improve codeblocks styling (#1676)
mubashir1osmani Sep 24, 2026
d67b17d
Add a draggable Ferris mascot to docs pages (#1677)
mubashir1osmani Sep 24, 2026
0148c48
docs: make the docs sidebar hideable (#1678)
mubashir1osmani Sep 24, 2026
7b3e7e2
feat: Rust migration FAQ and version impact page (#1675)
yujonglee-berri Sep 24, 2026
52bc199
Revert "Add a draggable Ferris mascot to docs pages (#1677)" (#1680)
mubashir1osmani Sep 24, 2026
170bf60
Keep a single sidebar collapse button (#1681)
mubashir1osmani Sep 24, 2026
6ab787a
Reorganize the Enterprise page (#1683)
mubashir1osmani Sep 24, 2026
54aba45
docs(s3_v2): document s3_max_concurrent_uploads and s3_batch_file_upl…
devin-ai-integration[bot] Sep 24, 2026
66538f7
docs: host the proxy OpenAPI reference on docs.litellm.ai and repoint…
devin-ai-integration[bot] Sep 24, 2026
eafc9ff
docs: refresh the OpenAPI snapshot to litellm (#1689)
github-actions[bot] Sep 24, 2026
97b80cb
ci: read the installed litellm version from package metadata (#1690)
devin-ai-integration[bot] Sep 24, 2026
9538af5
docs: correct prompt cache minimum token counts and add Claude 5 seri…
devin-ai-integration[bot] Sep 24, 2026
8deac28
docs: make the v1.103.0rc1 docker run command deployable (#1687)
devin-ai-integration[bot] Sep 24, 2026
7ecb611
docs(vertex): document native batch JSONL passthrough uploads (#1666)
mateo-berri Sep 24, 2026
21dc5e6
docs(proxy): spend capture rate check against the OpenAI bill (#1692)
mateo-berri Sep 24, 2026
716bb12
docs(vertex): note the Gemini Enterprise Agent Platform rename and th…
mateo-berri Sep 24, 2026
b39846b
docs(vertex): output_file_id is null until a Vertex batch completes (…
mateo-berri Sep 24, 2026
44a5dcd
docs(proxy): every worker runs the capture-rate check, the lock only …
mateo-berri Sep 24, 2026
903f6f5
docs(bedrock): document the native Responses API route for OpenAI mod…
mateo-berri Sep 24, 2026
cfd831c
Update Claude Code compatibility matrix (#1693)
mateo-berri Sep 24, 2026
b2e24a2
docs(proxy): list the capture-rate gauge in the Prometheus metrics pa…
mateo-berri Sep 24, 2026
509546f
docs(proxy): document the async_filter_listed_models listing hook (#1…
mateo-berri Sep 24, 2026
2a8a367
docs(a2a): document the per-agent kill switch webhook, Danger Zone an…
devin-ai-integration[bot] Sep 24, 2026
3ff799f
docs: document the encrypted_content_affinity degraded turn and its r…
mateo-berri Sep 25, 2026
83c6d28
docs(codex): add the Codex CLI granular cost tracking page (#1705)
mateo-berri Sep 25, 2026
01231e9
docs(mcp): add the Microsoft 365 (Graph) MCP server guide (#1710)
mateo-berri Sep 25, 2026
73be4a0
docs(vector_stores): show chunk mode and extractive content for Verte…
mateo-berri Sep 25, 2026
ec1f96d
docs: document tpm_limit and rpm_limit on tags (#1706)
devin-ai-integration[bot] Sep 25, 2026
f0ee3d1
docs(proxy): document provider-prefixed fallback keys for bare model …
mateo-berri Sep 25, 2026
a81493f
docs(proxy): say disable_fallbacks also covers mid-stream fallback (#…
mateo-berri Sep 25, 2026
0521053
docs: introduce LiteAdmin MCP and its Slack admin agent (#1672)
tin-berri Sep 25, 2026
b0aa326
docs: add Nadir provider page (#861)
doramirdor Sep 25, 2026
37a0906
docs(rust-migration): add release tooltips and type the rollout data …
yujonglee-berri Sep 25, 2026
9d30927
docs(anthropic): document preserved thinking prefix stability (#1644)
mateo-berri Sep 25, 2026
2ab86ce
docs: refresh the OpenAPI snapshot to litellm 1.102.1 (#1719)
github-actions[bot] Sep 25, 2026
f70ad5b
Update Claude Code compatibility matrix (#1720)
mateo-berri Sep 25, 2026
91272fc
docs(langfuse): update for Python SDK v4 migration (#1103)
yucheng-berri Sep 25, 2026
81a047a
docs(blog): add September 2026 townhall recap (#1713)
misbahsy Sep 25, 2026
64c1911
docs: add LiteAdmin MCP and Slack app setup guides (#1717)
tin-berri Sep 25, 2026
8a94874
docs(sso): document ENABLE_SSO_DEBUG for the SSO debug routes (#1721)
ojensen-berri Sep 25, 2026
479a3ca
docs(proxy): request_timeout now bounds native passthrough routes and…
mateo-berri Sep 25, 2026
dd3a782
docs: add provider logos to integration index cards (#1732)
mubashir1osmani Sep 25, 2026
efe3beb
docs: point community page at Slack and Discord (#1733)
mubashir1osmani Sep 25, 2026
c2ccb00
docs(observability): document Sentry PII scrubbing and the SENTRY_SEN…
mateo-berri Sep 25, 2026
0b5b24d
docs(blog): update Auto Router design partner booking links (#1730)
tin-berri Sep 25, 2026
577f8dd
docs(observability): add end-to-end Databricks Zerobus quickstart (#1…
devin-ai-integration[bot] Sep 25, 2026
7241e01
docs(providers): add xAI batches and files (#1734)
mateo-berri Sep 25, 2026
d49a7de
docs: introduce liteagents SDK (#1742)
moe-berri Sep 26, 2026
cd31be9
Refine the liteagents launch visual and explain its public API (#1743)
moe-berri Sep 26, 2026
0ba4fb6
Simplify the liteagents gateway example (#1744)
moe-berri Sep 26, 2026
ecda515
docs(proxy): document team member budget alert thresholds and recipie…
devin-ai-integration[bot] Sep 26, 2026
a0b8549
docs: capitalize LiteAgents launch branding (#1747)
moe-berri Sep 26, 2026
ffe3f6d
docs(vector_stores): retrieved context goes through the request's pre…
mateo-berri Sep 26, 2026
e0aa19c
docs: add Parseable observability guide (#1562)
praveen5959 Sep 26, 2026
7538a67
chore(analytics): add PostHog to the docs site via posthog-docusaurus…
devin-ai-integration[bot] Sep 26, 2026
2b283ca
docs: refresh the OpenAPI snapshot to litellm 1.102.1 (#1751)
github-actions[bot] Sep 26, 2026
c6065ff
Update Claude Code compatibility matrix (#1752)
mateo-berri Sep 26, 2026
4b16aeb
docs(proxy): document fail_closed_rate_limit_enforcement for rate lim…
mateo-berri Sep 26, 2026
3c43fe0
docs(guardrails): document custom code guardrail blocked destinations…
mateo-berri Sep 26, 2026
3344a94
docs(proxy): map the OWASP LLM Top 10 (2026) to gateway controls and …
mateo-berri Sep 26, 2026
680829e
docs(completion_http_handler_config): assign the custom aiohttp handl…
devin-ai-integration[bot] Sep 26, 2026
770f451
docs(completion_reliable_completion): fix fallbacks snippet and descr…
devin-ai-integration[bot] Sep 26, 2026
9aa23db
docs(learn_enterprise_quickstart): declare mcp_servers as a mapping k…
devin-ai-integration[bot] Sep 26, 2026
8b64b92
docs(mcp_cost): nest the custom hook callbacks key under litellm_sett…
devin-ai-integration[bot] Sep 26, 2026
d6f3800
docs(mcp_oauth_passthrough): legacy delegate_auth_to_upstream still r…
devin-ai-integration[bot] Sep 26, 2026
ac9dce4
docs(pass_through_vertex_ai_live_we): fix websocket path, default_ver…
devin-ai-integration[bot] Sep 26, 2026
2367778
docs(pass_through_vllm): use VLLM_API_BASE for the virtual key passth…
devin-ai-integration[bot] Sep 26, 2026
905b1fe
docs(providers_azure_azure_anthropi): use AZURE_AI_API_KEY and AZURE_…
devin-ai-integration[bot] Sep 26, 2026
bcf4e77
docs(providers_azure_videos): use AZURE_API_BASE for the Azure base U…
devin-ai-integration[bot] Sep 26, 2026
99990e9
docs(providers_datarobot): use DATAROBOT_API_TOKEN and DATAROBOT_ENDP…
devin-ai-integration[bot] Sep 26, 2026
04b9bb1
docs(providers_snowflake): fix env vars, api_base and supported param…
devin-ai-integration[bot] Sep 26, 2026
4cd5e47
docs(proxy_call_hooks): start the proxy with --config in the four sni…
devin-ai-integration[bot] Sep 26, 2026
8f81e06
docs(proxy_config_settings): remove env vars the proxy never reads (#…
devin-ai-integration[bot] Sep 26, 2026
bffd28f
docs(proxy_cost_tracking): remove nonexistent legacy unscoped spend l…
devin-ai-integration[bot] Sep 26, 2026
2be6264
docs(proxy_credential_routing): use POST for /team/update and /projec…
devin-ai-integration[bot] Sep 26, 2026
6a7103d
docs(proxy_custom_pricing): fix proxy start command and cache read ab…
devin-ai-integration[bot] Sep 26, 2026
493c3e5
docs(proxy_guardrails_crowdstrike_a): mode must list pre_call and pos…
devin-ai-integration[bot] Sep 26, 2026
0a86f15
docs(proxy_guardrails_custom_code_g): move Default On example to top-…
devin-ai-integration[bot] Sep 26, 2026
8ad5196
docs(proxy_guardrails_custom_guardr): fix the request shape for dynam…
devin-ai-integration[bot] Sep 26, 2026
a3a47a5
docs(proxy_guardrails_javelin): only pre_call is supported, default_o…
devin-ai-integration[bot] Sep 26, 2026
5309773
docs(proxy_jwt_auth_arch): use model_name in model_list entries (#1767)
devin-ai-integration[bot] Sep 26, 2026
296f602
docs(proxy_metrics): replace removed /daily_metrics endpoint with /us…
devin-ai-integration[bot] Sep 26, 2026
a3b45fe
docs(proxy_reliability): fix invalid JSON in fallback curl snippets (…
devin-ai-integration[bot] Sep 26, 2026
e59d518
docs(proxy_users): fix 7d budget reset day, broken model_tpm_limit sn…
devin-ai-integration[bot] Sep 26, 2026
47c6762
docs(proxy_virtual_keys): fix alias test endpoint and temp_budget_exp…
devin-ai-integration[bot] Sep 26, 2026
f972bef
docs(proxy_server): remove nonexistent --logs, --api_key and --add_ke…
devin-ai-integration[bot] Sep 26, 2026
fce50fe
docs(routing): use enable_pre_call_checks and os.environ/ in routing …
devin-ai-integration[bot] Sep 26, 2026
3c78c23
docs(tutorials_fallbacks): describe the current single-pass fallback …
devin-ai-integration[bot] Sep 26, 2026
4ba2812
docs(vertex_batch_passthrough): use the /vertex_ai passthrough prefix…
devin-ai-integration[bot] Sep 26, 2026
91a5678
docs(mcp_deployment): fix mcp_servers config shape and available_on_p…
devin-ai-integration[bot] Sep 26, 2026
8be6e21
docs(mcp_obo_auth): OBO requests without a caller token are rejected …
devin-ai-integration[bot] Sep 26, 2026
4894907
docs(providers_google_ai_studio_fil): pass custom_llm_provider to cre…
devin-ai-integration[bot] Sep 26, 2026
f0f1d9f
docs(proxy_public_routes): allowed_routes is exact match and does not…
devin-ai-integration[bot] Sep 26, 2026
e557b83
docs(mcp): scan tool descriptions on discovery and pin a server's too…
mateo-berri Sep 26, 2026
5d91b68
docs(proxy): document maximum_daily_tag_spend_retention_period (#1794)
devin-ai-integration[bot] Sep 26, 2026
4dda8ab
docs(langtrace): direct delivery via the langtrace callback and LANGT…
devin-ai-integration[bot] Sep 26, 2026
ba4a172
docs(s3_v2): document terminal drops, retry age budget and adaptive c…
devin-ai-integration[bot] Sep 26, 2026
bfb32a7
docs(guardrails): prompt injection detection covers every unified end…
mateo-berri Sep 26, 2026
160fb76
docs(analytics): fix double pageviews, enable pageleave and dead clic…
misbahsy Sep 27, 2026
482af5c
blog: introduce the LiteLLM ROI Calculator (#1798)
moe-berri Sep 27, 2026
1164009
docs: refresh the OpenAPI snapshot to litellm 1.102.1 (#1800)
github-actions[bot] Sep 27, 2026
f1367b1
Update Claude Code compatibility matrix (#1801)
mateo-berri Sep 27, 2026
03f2fdf
Merge remote-tracking branch 'upstream/main' into add-reco-guardrail-…
RecoLabs-YaronBratspiess Sep 27, 2026
7fcb457
docs(guardrails): document Reco fail-closed default
MickeyShnaiderman-RecoLabs Oct 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
25 changes: 25 additions & 0 deletions .github/workflows/docs-checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Docs checks

on:
pull_request:
push:
branches: [main]

jobs:
writing-style:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 24
- run: node scripts/check-writing-style.js docs blog release_notes
structure:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.13"
- run: pip install pyyaml
- run: python3 scripts/check-docs.py docs
53 changes: 53 additions & 0 deletions .github/workflows/update-openapi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Update OpenAPI snapshot

on:
schedule:
- cron: "0 6 * * *"
workflow_dispatch:

jobs:
update-openapi:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.13"
- run: pip install "litellm[proxy]"
- name: Write minimal proxy config
run: |
cat > /tmp/config.yaml <<'EOF'
model_list:
- model_name: gpt-4o-mini
litellm_params:
model: openai/gpt-4o-mini
api_key: fake
EOF
- name: Start proxy and snapshot the spec
run: |
LITELLM_DANGEROUSLY_PERMIT_WEAK_OR_UNSET_MASTER_KEY=true litellm --config /tmp/config.yaml --port 4000 &
for i in $(seq 1 120); do
if curl -sf http://localhost:4000/openapi.json -o /dev/null; then
break
fi
sleep 1
done
bash scripts/update-openapi.sh http://localhost:4000
- name: Resolve installed litellm version
id: version
run: echo "litellm_version=$(python -c "from importlib.metadata import version; print(version('litellm'))")" >> "$GITHUB_OUTPUT"
- uses: peter-evans/create-pull-request@v7
id: pr
with:
branch: litellm_openapi_snapshot
commit-message: "docs: refresh the OpenAPI snapshot to litellm ${{ steps.version.outputs.litellm_version }}"
title: "docs: refresh the OpenAPI snapshot to litellm ${{ steps.version.outputs.litellm_version }}"
body: "Regenerated the OpenAPI snapshot behind https://docs.litellm.ai/api-reference/ from litellm ${{ steps.version.outputs.litellm_version }} on PyPI."
- name: Squash-merge once Vercel checks pass
if: steps.pr.outputs.pull-request-operation == 'created'
run: gh pr merge --squash --auto "${{ steps.pr.outputs.pull-request-number }}"
env:
GH_TOKEN: ${{ github.token }}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,6 @@ yarn-debug.log*
yarn-error.log*
yarn.lock
pnpm-lock.yaml

# Python bytecode from scripts/
__pycache__/
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
24
45 changes: 45 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
When making public-facing docs, PR descriptions, comments, issues, commit messages, etc., always follow these guidelines to sound less AI-y:

- prefer not to use emojis
- don't use "—". Instead, reach for ";", ".", etc.
- don't use the pattern "It's not X, it's Y", "You're not X, you're Y", etc.
- don't use bulleted or numbered lists unless it would be nonsensical not to. Instead, prefer prose
- be information dense, concise, and clear

## Release notes: breaking changes

Every breaking change in a release note must be surfaced in a dedicated red `:::danger Breaking Changes` admonition placed immediately after the "Deploy this version" block and before "Key Highlights"; do not leave it as a regular Key Highlights bullet. A breaking change is anything that alters existing default behavior, removes or renames a field, tightens who may do something, or otherwise requires action to preserve prior behavior; opt-in additions and pure bug fixes are not breaking. Lead each entry with a bolded one-sentence summary of what changed, then state the upgrade impact and link the PR. Group multiple breaking changes in the same release inside one admonition. Use the following shape:

```md
</Tabs>

:::danger Breaking Changes

**One-sentence summary of the change.** What breaks for someone upgrading and how to restore the prior behavior if applicable. See [PR #12345](https://github.com/BerriAI/litellm/pull/12345).

:::

## Key Highlights
```
## Release notes: GitHub release and ghcr image links

Every new stable release note must link the GitHub releases page, https://github.com/BerriAI/litellm/releases, and the specific release entry at `https://github.com/BerriAI/litellm/releases/tag/vX.Y.Z`. Fetch that release entry before writing the note: its "Verify Docker Image Signature" block names the exact ghcr image for the version (for example `ghcr.io/berriai/litellm:v1.101.0`), so take the image reference from there rather than guessing the tag format. The note must then link that version's ghcr image, pointing at the package page `https://github.com/BerriAI/litellm/pkgs/container/litellm` with the image reference as the link text. Put these links in the "Deploy this version" section, directly after the `</Tabs>` closer and before any breaking changes admonition, in this shape:

```md
</Tabs>

This release is published as [`ghcr.io/berriai/litellm:vX.Y.Z`](https://github.com/BerriAI/litellm/pkgs/container/litellm). See the [GitHub release](https://github.com/BerriAI/litellm/releases/tag/vX.Y.Z) and the full [releases page](https://github.com/BerriAI/litellm/releases).
```

## Release notes: runnable docker command

The Docker tab under "Deploy this version" must be a command that actually boots the proxy. `STORE_MODEL_IN_DB=True` alone does nothing without a database, so always pair it with `LITELLM_MASTER_KEY` and `DATABASE_URL`:

```bash
docker run \
-e LITELLM_MASTER_KEY=sk-<paste-a-long-random-key> \
-e DATABASE_URL=postgresql://<user>:<password>@<host>:5432/<dbname> \
-e STORE_MODEL_IN_DB=True \
-p 4000:4000 \
docker.litellm.ai/berriai/litellm:X.Y.Z
```
23 changes: 0 additions & 23 deletions CLAUDE.md

This file was deleted.

21 changes: 21 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ Custom standalone pages live in `src/pages/`.

If you add, remove, or move docs pages, check whether `sidebars.js` needs to be updated.

To mark a page or section as Enterprise-gated, put `<EnterpriseFeature />` on its own line with a blank line before and after it, instead of writing the admonition by hand. It is registered globally in `src/theme/MDXComponents.js`, so no import is needed. Pass `feature="SSO"` to name the feature in the first sentence, use `<EnterpriseFeature free />` for features that ship in `litellm[proxy]` without a license, and put a one-line note between `<EnterpriseFeature>` and `</EnterpriseFeature>` when the page needs an extra sentence, such as a user limit. The component lives in `src/components/EnterpriseFeature/`.

## 5. Verify your changes

Before opening a PR, run:
Expand All @@ -45,6 +47,25 @@ npm run build

This catches broken links, invalid MDX, and other Docusaurus build issues.

Also run the writing style check, which CI enforces on every PR:

```bash
npm run lint:writing
```

It covers `docs/`, `blog/`, and `release_notes/`. It fails on em dashes used as prose punctuation (see AGENTS.md) and, with `--warnings`, lists inflated wording such as "utilize", "leverage", or "seamless".

Also run the structural check, which CI enforces on every PR:

```bash
pip install pyyaml # once
npm run lint:docs
```

It parses every fenced `yaml`, `json`, and `python` block in `docs/`, and fails on blocks that do not parse, unclosed fences, code written on the ``` line, comments after a `\` line continuation in shell blocks, relative links and heading anchors that do not resolve, missing images, GitHub-style `> [!NOTE]` alerts, and pages with more than one H1. The rule names in its output are explained at the top of `scripts/check-docs.py`. Comments, `...` placeholders, and object fragments (a `"key": value` list without the enclosing braces) inside JSON blocks are tolerated. If a block is deliberately a fragment that cannot be made valid, add `nolint` to the fence line (```yaml nolint); use that sparingly.

Model ids in examples are placeholders. `docs-models.json` at the repo root maps a role (`openai_small`, `openai_large`, `anthropic`, `anthropic_large`, `gemini_pro`, `gemini_flash`) to the id examples use today, and pages write `{{openai_small}}` (or `azure/{{openai_large}}`, `bedrock/us.anthropic.{{anthropic}}`) inside code blocks and inline code; `src/remark/docs-models.js` fills in the real id when the site builds, including for the copy-as-markdown button. Moving the docs to a new model is one edit to `docs-models.json` with no page changes. `npm run lint:docs` applies the same substitution before it parses a block and fails with `model-literal` when a code block hardcodes one of those ids instead of using its placeholder. When the exact id is the point of a block, such as a price map key, a cache key, or a printed log, add `keep-model-ids` to the fence line (```yaml keep-model-ids). Ids that are facts about a provider rather than an example default, such as a supported-model table, stay literal. Other `{{name}}` tokens in pages are prompt-template placeholders and pass through untouched. A placeholder that starts like a role but is not one (`{{openai_smal}}`, or `{{gemini_flash}}` once that role is removed from the file) fails with `model-role-unknown`, since the build would print it as written.

## 6. Submit a PR

Create a branch:
Expand Down
Loading
Loading