Commit Graph

323 Commits

Author SHA1 Message Date
Sameer Kankute
159c477c18 feat(proxy): client-side provider API key precedence for Anthropic /v1/messages
- Add forward_llm_provider_auth_headers support from litellm_settings
- When enabled, client x-api-key takes precedence over deployment keys
- Forward x-api-key when x-litellm-api-key or Authorization used for auth
- Fix duplicate patch lines in test_byok_oauth_endpoints.py
- Add Claude Code BYOK documentation with /login and ANTHROPIC_CUSTOM_HEADERS
- Add unit tests for clean_headers x-api-key forwarding logic
- Sync model_prices backup (pre-commit hook)

Made-with: Cursor
2026-03-06 18:20:46 +05:30
Ishaan Jaff
9897df5089
feat(mcp): allow admins to override tool name and description per MCP server (#22828)
* feat(mcp): add tool_name_to_display_name and tool_name_to_description overrides for MCP servers

* docs(mcp): add mcp_openapi.md with OpenAPI→MCP guide and tool override section

* docs(mcp): add sequential UI screenshots to mcp_openapi.md

* fix(mcp): apply tool overrides after permission filtering; reverse-map display names in tools/call
2026-03-04 17:58:05 -08:00
Krish Dholakia
67f90254ed
feat(guardrails): team-based guardrail registration and approval workflow (#22459)
* feat(guardrails): team-based guardrail registration and approval workflow

Add team-based guardrail submission system where teams can register
Generic Guardrail API guardrails for admin review. Includes:

- POST /guardrails/register endpoint for team-scoped submissions
- Admin review endpoints (list/get/approve/reject submissions)
- Team Guardrails tab in the UI dashboard
- extra_headers support for forwarding client headers to guardrail APIs
- Prisma schema migration for status, submitted_at, reviewed_at fields
- Documentation for team-based guardrails and static/dynamic headers

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(guardrails): address review feedback - SSRF, silent failure, redundant query

- Validate api_base URL scheme (http/https only) and hostname in
  register_guardrail to prevent SSRF via team submissions
- Return warning field in approve response when in-memory initialization
  fails so admins know the guardrail won't work until next sync cycle
- Eliminate redundant DB query in list_guardrail_submissions by fetching
  all team guardrails once and deriving both filtered list and summary
  counts from the single result set

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix(guardrails): add pending_review status guard to reject endpoint

Prevent rejecting already-active or already-rejected guardrails, which
would create a DB/memory inconsistency (active in memory but rejected
in DB). Now mirrors the approve endpoint's status check.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 22:06:49 -08:00
Ishaan Jaff
e3756252a8
Development environment setup (#22432)
* feat: add Cursor Cloud Agents as a native pass-through provider

- Add CURSOR to LlmProviders enum
- Add /cursor/{endpoint:path} pass-through route with Basic Auth
- Add /cursor to mapped_pass_through_routes for proper routing
- Create CursorPassthroughLoggingHandler for Logs page visibility
  - Classifies operations (agent:create, agent:list, models:list, etc.)
  - Logs model as cursor/cursor:<operation> for clean Logs display
  - Tracks cost as $0 (subscription-based, no per-request pricing)
- Add Cursor to UI: provider enum, logo, credential fields
- Add provider_create_fields.json entry for LLM Credentials UI
- Add 18 unit tests covering route, auth, logging, and classification

Co-authored-by: Ishaan Jaff <ishaan-jaff@users.noreply.github.com>

* fix: use correct Cursor logo from lobehub, add documentation page

- Replace placeholder Cursor logo with official hexagonal logo from lobehub
- Add docs/pass_through/cursor.md with full tutorial matching a2a_cost_tracking style
  - Quick Start: add creds on UI, start proxy, launch agent, view logs
  - Examples: all Cursor Cloud Agents API endpoints
  - Advanced: virtual key usage
  - Screenshots: credential form, logs page, log detail view
- Add Cursor to sidebars.js under Pass-through Endpoints
- Add screenshots to docs/my-website/img/

Co-authored-by: Ishaan Jaff <ishaan-jaff@users.noreply.github.com>

* docs: simplify Cursor doc - UI-only flow, no config.yaml needed

Co-authored-by: Ishaan Jaff <ishaan-jaff@users.noreply.github.com>

* fix: cursor pass-through reads credentials from UI (litellm.credential_list)

The pass-through route now checks litellm.credential_list as a fallback
when CURSOR_API_KEY env var is not set. This means adding credentials
via the UI (Models + Endpoints → LLM Credentials) works without any
config.yaml or environment variable setup.

Credential lookup order:
1. passthrough_endpoint_router (config.yaml with use_in_pass_through)
2. litellm.credential_list (credentials added via UI)
3. CURSOR_API_KEY environment variable

Also respects api_base from UI credentials if set.

Co-authored-by: Ishaan Jaff <ishaan-jaff@users.noreply.github.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Ishaan Jaff <ishaan-jaff@users.noreply.github.com>
2026-02-28 14:50:06 -08:00
ryan-crabbe
0ca9869b99
Merge pull request #21950 from ryan-crabbe/docs/v1-81-14-perf-section
docs: add performance & reliability section to v1.81.14 release notes
2026-02-23 13:13:21 -08:00
Arindam Majumder
71b4bd12a7
Add OpenAI Agents SDK tutorial with LiteLLM Proxy to docs (#21221)
* Add OpenAI Agents SDK tutorial to docs

* Update OpenAI Agents SDK tutorial to use LiteLLM environment variables

* Enhance OpenAI Agents SDK tutorial with built-in LiteLLM extension details and updated configuration steps. Adjust section headings for clarity and improve the flow of information regarding model setup and usage.
2026-02-23 12:10:01 -08:00
Ryan Crabbe
67ceade162 docs: add performance & reliability section to v1.81.14 release notes 2026-02-23 11:23:29 -08:00
yuneng-jiang
ea37f59de4 Merge remote-tracking branch 'origin' into litellm_yj_docs_feb21_release 2026-02-21 18:05:11 -08:00
yuneng-jiang
5e26891da2 release note docs 2026-02-21 17:58:36 -08:00
Ishaan Jaffer
efebd37183 docs fix 2026-02-21 17:28:04 -08:00
Sameer Kankute
f2393fc9cb Merge main into litellm_passthrough_endpoint_method
Resolved conflicts in pass_through_endpoints.py by:
- Accepting main's formatting and mypy fixes
- Preserving branch's method support feature
- Preserving branch's default_query_params feature

Combined changes include:
- Method filtering for passthrough endpoints
- Default query parameters support
- Updated route key format to include methods
- Code formatting improvements from main
- Fixed type annotations

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-19 19:22:41 +05:30
Sameer Kankute
4a50c55d84 Add allow defining default query params for a pass through 2026-02-19 12:48:03 +05:30
Sameer Kankute
5bd7bf1b3e Add documentation for adding method 2026-02-19 11:59:09 +05:30
Harshit Jain
66ce7513f6
Merge branch 'main' into litellm_project_management_apis 2026-02-19 08:40:12 +05:30
yuneng-jiang
227b3551a6 access groups docs 2026-02-14 18:00:22 -08:00
Ishaan Jaffer
8a341ebd5d docs fix 2026-02-14 17:09:13 -08:00
Harshit Jain
f77fbefc22
fix: resolve conflicts with verification e2e 2026-02-13 06:11:03 +05:30
Ishaan Jaff
3407006120
[Docs] Add docs guide for using policies (#20914)
* init schema with TAGS

* ui: add policy test

* resolvePoliciesCall

* add_policy_sources_to_metadata + headers

* types Policy

* preview Impact

* def _describe_match_reason(

* match based on TAGs

* TestTagBasedAttachments

* test fixes

* add policy_resolve_router

* add_guardrails_from_policy_engine

* TestMatchAttribution

* refactor

* fix

* fix: address Greptile review feedback on policy resolve endpoints

- Track unnamed keys/teams as separate counts instead of inflating
  affected_keys_count with duplicate "(unnamed key)" placeholders.
  Added unnamed_keys_count and unnamed_teams_count to response.
- Push alias pattern matching to DB via _build_alias_where() which
  converts exact patterns to Prisma "in" and suffix wildcards to
  "startsWith" filters.
- Gate sync_policies_from_db/sync_attachments_from_db behind
  force_sync query param (default false) to avoid 2 DB round-trips
  on every /policies/resolve request.
- Remove worktree-only conftest.py that cleared sys.modules at import
  time — no longer needed since code moved to main repo.
- Rename MAX_ESTIMATE_IMPACT_ROWS → MAX_POLICY_ESTIMATE_IMPACT_ROWS.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: eliminate duplicate DB queries and fix header delimiter ambiguity

- Fetch teams table once in estimate_attachment_impact and reuse for
  both tag-based and alias-based lookups (was querying teams twice when
  both tag_patterns and team_patterns were provided).
- Convert tag/team filter functions from async DB queries to sync
  filters that operate on pre-fetched data (_filter_keys_by_tags,
  _filter_teams_by_tags).
- Fix comma ambiguity in x-litellm-policy-sources header: use '; '
  as entry delimiter since matched_via values can contain commas.
- Use '+' as the within-value separator in matched_via reason strings
  (e.g. "tag:healthcare+team:health-team") to avoid conflict with
  header delimiters.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* docs v1 guide with UI imgs

* docs fix

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 18:52:31 -08:00
yuneng-jiang
ca24f56b39 Merge remote-tracking branch 'origin' into docs_yj_feb7 2026-02-07 14:40:21 -08:00
yuneng-jiang
f7fbcefd26 UI team soft budget docs 2026-02-07 14:27:53 -08:00
Ishaan Jaff
caf51a4ca9
Litellm docs rc fixes (#20667)
* docs

* review 1

* docs fix

* docs

* docs fix

* docs
2026-02-07 13:32:15 -08:00
michelligabriele
8e1201ca3d
docs: improve Okta SSO setup guide with step-by-step instructions (#20353)
* docs: improve Okta SSO setup guide with step-by-step instructions

- Add clear steps for creating OIDC app in Okta Admin Console
- Document critical Authorization Server Access Policy configuration
- Add troubleshooting table for common errors
- Link to official Okta documentation for detailed UI instructions
- Fix incorrect OAuth endpoint examples (was using Auth0 URLs)

* docs: add Okta console screenshots for SSO setup guide

- Add screenshot showing Sign-in redirect URI configuration
- Add screenshot showing Client Credentials location
- Add screenshot showing Authorization Server Access Policy setup

* docs: replace Okta screenshots with annotated Scribe versions

- Replace screenshots with Scribe-annotated versions highlighting key areas
- Add step-by-step screenshots for Authorization Server Access Policy setup
- Remove old unannotated screenshots
2026-02-04 18:39:51 -08:00
Ishaan Jaffer
5aa8725c63 docs Tracing Tools 2026-02-02 19:48:00 -08:00
yuneng-jiang
af015fe4f0 UI spend logs setting docs 2026-01-31 15:16:59 -08:00
Sameer Kankute
adf6d7e1db
Merge pull request #19692 from BerriAI/litellm_oss_staging_01_24_2026
Litellm oss staging 01 24 2026
2026-01-27 16:59:28 +05:30
yuneng-jiang
937ccf1977 UI Keys Teams Router Settings docs 2026-01-24 16:23:46 -08:00
houdataali
7ffc1a718a
a2a agent Header-Based Context Propagation (#19504)
* a2a agent Header-Based Context Propagation

* docs: add guide for A2A context header forwarding
2026-01-23 19:56:04 -08:00
Ishaan Jaff
a02c43d300
Litellm cc docs max (#19466)
* docs claude code max

* docs fix

* docs

* docs fix

* docs fix
2026-01-20 20:08:36 -08:00
Ishaan Jaffer
f865f92bec docs plugin marketplaces 2026-01-19 19:42:15 -08:00
YutaSaito
4dc9726db4
Merge pull request #19292 from BerriAI/litellm_docs_cursor-mcp
[docs] add cursor with mcp
2026-01-18 14:59:08 +09:00
Ishaan Jaffer
4f2bdd33f4 docs claude code 2026-01-17 18:05:16 -08:00
Ishaan Jaffer
fcb5cfe9d9 add img to doc 2026-01-17 18:05:16 -08:00
Yuta Saito
18839a3600 docs: add cursor with mcp 2026-01-18 06:51:09 +09:00
yuneng-jiang
19a69a89f0 deleted keys and teams docs 2026-01-17 13:19:48 -08:00
Ishaan Jaffer
e9e323bf32 png fixes 2026-01-17 10:28:41 -08:00
Yuta Saito
0b04145c11 doc: add MCP troubleshooting guide 2026-01-15 08:01:59 +09:00
yuneng-jiang
5c46053307 Adding image 2026-01-10 13:15:23 -08:00
Yuta Saito
375f3ed439 fix: missing mcp_allow_all_ui.png 2026-01-06 11:23:22 +09:00
Yuta Saito
fee9553c51 feat: add allow_all_keys doc 2026-01-05 16:56:19 +09:00
amangupta-20
399579f8ea
feat: Add Levo AI integration (#18529) 2026-01-05 08:49:21 +05:30
yuneng-jiang
7e0f360272 docs 2025-12-20 12:36:32 -08:00
Yuta Saito
854d5a8d66 doc: improve secret manager settings 2025-12-19 07:06:26 +09:00
YutaSaito
c694d96da0
Merge pull request #18149 from BerriAI/litellm_feat_add_secret_manager_settings
feat: add secret manager settings controls to team management UI
2025-12-18 06:57:12 +09:00
Yuta Saito
b24d6cd47f feat: add secret manager settings controls to team management UI 2025-12-18 06:09:27 +09:00
Ishaan Jaff
539f629eff
[Feat] New Logging Integration - Azure Sentinel Logger (#18146)
* add AzureSentinelLogger

* logging: AzureSentinelLogger

* test_azure_sentinel_signature_and_send_batch

* docs azure sentinel

* fix AzureSentinelLogger

* test fix

* docs fix

* fix: AzureSentinelLogger

* docs sentintel

* feat: add example SLP

* docs sentinel

* docs fix

* docs fix

* docs fix

* fix code qa

* QA fix

* fix test

* TestInitializeInteractionsEndpoints
2025-12-18 02:04:49 +05:30
Ishaan Jaffer
338dbaa6bc docs a2a gateway 2025-12-14 11:51:35 -08:00
yuneng-jiang
2d75875ea6
Merge pull request #17931 from BerriAI/litellm_agent_usage_md
[Docs] Agent Usage Doc
2025-12-13 12:49:06 -08:00
yuneng-jiang
39b8acae55 Agent Usage Doc 2025-12-13 12:46:56 -08:00
yuneng-jiang
e8bbb561b9 Adding image 2025-12-13 12:03:24 -08:00
Ishaan Jaff
42f5770cfa
[docs] add docs for containers files api + code interpreter on LiteLLM (#17749)
* add new container api on OpenAI

* add related

* docs fix

* docs code interpreter

* code interp

* docs code interptert

* docs code int

* docs code interp

* docs code interp
2025-12-09 18:11:28 -08:00