Repository navigation
docs(guardrails): add the Reco guardrail page - #2
Open
RecoLabs-YaronBratspiess wants to merge 605 commits into
Open
RecoLabs-YaronBratspiess wants to merge 605 commits into
RecoLabs-YaronBratspiess wants to merge 605 commits into
Conversation
MickeyShnaiderman-RecoLabs
approved these changes
Aug 19, 2026
…peech short audio (BerriAI#1552) Co-authored-by: yassin <yassin@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* docs(proxy): describe the Admin UI failed sign-in limit Documents the hard block on repeated failed Admin UI sign-ins from BerriAI/litellm#40982: the per source and per source and username limits with their defaults, the 429 and Retry-After response, why the correct password and the env credentials are refused while blocked, the master key over the API as the recovery path, Redis sharing and the per-worker fallback, and what trusted_proxy_ranges unset, [] and a list of ranges each mean for source attribution. Replaces the stale config_settings entries that still described the earlier 50, 250 and 900 second design Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(proxy): add trusted_proxy_ranges to the production checklist Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(proxy): derive the per-username sign-in allowance from the address limit Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(proxy): per-username allowance rounds down and an override of 0 exempts an address Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(proxy): state the tie-break between equivalent login limit override keys Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(proxy): tighten the Admin UI sign-in limit pages Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: yucheng <yucheng@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…iAI#1360) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…riAI#1324) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…erriAI#1550) * docs(bedrock): document eager_input_streaming for Claude tool calls * docs(bedrock): cover /v1/responses for eager_input_streaming
) * docs(proxy): add Azure Redis Entra ID authentication guide * docs(proxy): register azure_redis_ad in caching sidebar * docs(proxy): document azure_redis_ad_token cache params * docs(proxy): cross-link Azure Entra ID guide from ElastiCache IAM * docs(proxy): cross-link Azure Entra ID guide from Memorystore IAM
…mbers (BerriAI#1491) Co-authored-by: ryan <ryan@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ed agents (BerriAI#1444) * docs(proxy): document agent_id_jwt_field for binding JWTs to registered agents Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(proxy): note that Entra delegated tokens also carry azp Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: yassin <yassin@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* docs: add TypeSafe Jev compaction blog post * docs: simplify Jev example and use team compaction with OIDC * docs: trim extra team setup explanations
…esponses API session docs (BerriAI#1304) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* docs(mcp): add how-to guide for allowlisting MCP client applications by JWT claim or header Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(mcp): describe allowed clients as alias and value pairs, add Okta claim setup, refresh screenshots Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(mcp): refresh allowed clients screenshots and show the listed header response Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(mcp): note that dashboard session tokens skip the MCP client allowlist Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(mcp): describe allowed clients as cards edited in a dialog and refresh screenshots Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(mcp): simplify client allowlisting guide for enterprise users --------- Co-authored-by: yassin <yassin@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ing (BerriAI#1317) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…iAI#1313) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…health check page (BerriAI#1302) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Yujong Lee <yujong@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…I#1560) Co-authored-by: Yujong Lee <yujong@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* docs: add Vertex AI Chirp realtime transcription * docs(vertex): stream switches wait for a pause in speech and keep the turn
litellm_version: v1.101.0 claude_code_version: 2.1.228 generated_at: 2026-09-19T06:14:29Z Co-authored-by: litellm-compat-matrix-bot <litellm-bot@berri.ai>
…:index id (BerriAI#1569) /rag/ingest now takes the provider, credentials, and destination from a registered store and keeps only the request's per-upload options, and an S3 Vectors ingest can name an existing index as bucket:index instead of requiring vector_bucket_name (BerriAI/litellm#41940).
…ache_control marks (BerriAI#1572)
…y quick start (BerriAI#1300) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ist flags (BerriAI#1761) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…t/update examples (BerriAI#1785) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ove_200k key (BerriAI#1765) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…t_call, an empty list disables the guardrail (BerriAI#1759) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…level guardrails (BerriAI#1756) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ic guardrail extra_body (BerriAI#1780) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…n defaults to False, guard key is guard_name (BerriAI#1776) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…iAI#1767) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…er/daily/activity (BerriAI#1784) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…erriAI#1770) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ippet, admin rate limit claim (BerriAI#1773) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…iry format (BerriAI#1760) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…y CLI flags (BerriAI#1775) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…strategy examples (BerriAI#1769) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…behavior and fix the snippet (BerriAI#1763) * docs(tutorials_fallbacks): describe the current single-pass fallback behavior and fix the snippet Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(tutorials_fallbacks): make the excerpt compile Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
… in curl examples (BerriAI#1782) Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ublic_internet default (BerriAI#1781) * docs(mcp_deployment): fix mcp_servers config shape and available_on_public_internet default Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(mcp_deployment): rename mcp_servers keys to underscores and note hyphen rejection Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…with 401 (BerriAI#1758) * docs(mcp_obo_auth): OBO requests without a caller token are rejected with 401 Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(mcp_obo_auth): correct WWW-Authenticate header and require oauth2_flow for oauth2 servers Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…ate_file in the Gemini SDK snippet (BerriAI#1771) * docs(providers_google_ai_studio_fil): pass custom_llm_provider to create_file in the Gemini SDK snippet Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(providers_google_ai_studio_files): upload wav with filename and use audio/x-wav in SDK snippet Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
… expand LiteLLMRoutes.public_routes (BerriAI#1768) * docs(proxy_public_routes): allowed_routes is exact match and does not expand LiteLLMRoutes.public_routes Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(proxy_public_routes): clarify health routes are unauthenticated and unaffected by allowed_routes Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: jesus <jesus@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…l list (BerriAI#1750) * docs(mcp): scan tool descriptions on discovery and pin a server's tool list * docs(mcp): pins carry input schemas and the discovery scan runs before the pin * docs(mcp): the pin is applied before the discovery scan and description overrides are scanned
…AI#1794) Co-authored-by: yucheng <yucheng@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…RACE_API_HOST (BerriAI#1754) Co-authored-by: yucheng <yucheng@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…oncurrency (BerriAI#1793) * docs(s3_v2): document terminal drops, retry age budget and adaptive concurrency settings Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> * docs(s3_v2): clarify the two drop rules are independent of each other and of the queue cap Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --------- Co-authored-by: yucheng <yucheng@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…point, text attachments, and fail-closed settings (BerriAI#1789) * docs(guardrails): prompt injection detection covers every unified endpoint, text attachments, and fail-closed settings * docs(guardrails): prompt injection detection also covers /v1/moderations and tool outputs
…ks in PostHog (BerriAI#1797) The posthog-docusaurus client module captures $pageview from onRouteUpdate on first render as well as on every route change, so with the SDK's own capture_pageview on, every landing page was logged twice. Turn the SDK pageview off and let the plugin own it. Enable $pageleave explicitly, since its SDK default follows capture_pageview, and turn on dead-click capture for docs UX analysis. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: mateo-berri <277851410+mateo-berri@users.noreply.github.com>
litellm_version: v1.102.1 claude_code_version: 2.1.281 generated_at: 2026-09-27T06:10:46Z Co-authored-by: litellm-compat-matrix-bot <litellm-bot@berri.ai>
…docs # Conflicts: # sidebars.js
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Internal review PR before this goes out as a PR to BerriAI/litellm-docs. Not to be merged upstream from here; this is RecoLabs' own fork.
Summary
Adds the docs page for the native Reco guardrail provider being added in RecoLabs/litellm#1: quick start config, supported params, response contract, and the pre_call-only v1 scope, plus a sidebar entry alongside the other guardrail vendors.
Linear
PLA-3828
Verification
npm run buildpasses; the new page renders at/docs/proxy/guardrails/reco.