<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>All configurations on Praxis</title><link>https://praxis.fast/ai/dev/examples/configs/</link><description>Recent content in All configurations on Praxis</description><generator>Hugo</generator><language>en</language><atom:link href="https://praxis.fast/ai/dev/examples/configs/index.xml" rel="self" type="application/rss+xml"/><item><title>A2A Agent Card Routing</title><link>https://praxis.fast/ai/dev/examples/configs/a2a-agent-card-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/a2a-agent-card-routing.yaml/</guid><description>Routes agent card discovery requests to dedicated backends</description></item><item><title>A2A Classifier Routing</title><link>https://praxis.fast/ai/dev/examples/configs/a2a-classifier-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/a2a-classifier-routing.yaml/</guid><description>Routes A2A requests by body-derived method, family, context ID, task ID, and streaming detection</description></item><item><title>A2A Task Routing</title><link>https://praxis.fast/ai/dev/examples/configs/a2a-task-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/a2a-task-routing.yaml/</guid><description>Captures task and context ownership from SendMessage JSON responses and SendStreamingMessage / SubscribeToTask SSE responses, then routes follow-up requests back to the backend cluster that created the task or owns the context</description></item><item><title>Ai Inference Body Based Routing</title><link>https://praxis.fast/ai/dev/examples/configs/ai-inference-body-based-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/ai-inference-body-based-routing.yaml/</guid><description>Routes LLM API requests to different backends based on the model field in the JSON request body</description></item><item><title>Aws Sigv4</title><link>https://praxis.fast/ai/dev/examples/configs/aws-sigv4.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/aws-sigv4.yaml/</guid><description>Signs outbound requests to an AWS service (Bedrock, in this example) using Signature Version 4. Credentials are static, sourced from environment variables — see the module docs on Sigv4SignFilter for the planned OIDC/default-credential-chain follow-up</description></item><item><title>Azure Ad</title><link>https://praxis.fast/ai/dev/examples/configs/azure-ad.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/azure-ad.yaml/</guid><description>Acquires an Entra ID bearer token via the client-credentials grant and injects &amp;ldquo;Authorization: Bearer &amp;quot; on every proxied request to Azure OpenAI</description></item><item><title>Credential Injection</title><link>https://praxis.fast/ai/dev/examples/configs/credential-injection.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/credential-injection.yaml/</guid><description>Injects per-cluster API credentials into upstream requests and strips client-provided credentials to prevent forwarding</description></item><item><title>External Metering</title><link>https://praxis.fast/ai/dev/examples/configs/external-metering.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/external-metering.yaml/</guid><description>Pre-request balance check and post-response token usage reporting against an external metering service</description></item><item><title>External Metering File Key</title><link>https://praxis.fast/ai/dev/examples/configs/external-metering-file-key.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/external-metering-file-key.yaml/</guid><description>Same pre-request balance check and post-response usage reporting as external-metering.yaml, but the internal bearer credential used to authenticate the metering callouts is read from a file rather than embedded in the config or image</description></item><item><title>File Descriptor Limits</title><link>https://praxis.fast/ai/dev/examples/configs/file-descriptor-limits.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/file-descriptor-limits.yaml/</guid><description>Size and protect the descriptor budget of a metered gateway: pin the process limit, shed requests with 503 before descriptors run out, cap concurrent requests and metering callouts, and close idle keep-alive clients and pooled upstream connections so they cannot pin descriptors</description></item><item><title>Gcp Adc</title><link>https://praxis.fast/ai/dev/examples/configs/gcp-adc.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/gcp-adc.yaml/</guid><description>Acquires an OAuth2 access token from the GCE/GKE metadata server or a service-account key file and injects &amp;ldquo;Authorization: Bearer &amp;quot; on every proxied request to Vertex AI</description></item><item><title>Identity Header Guard</title><link>https://praxis.fast/ai/dev/examples/configs/identity-header-guard.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/identity-header-guard.yaml/</guid><description>Captures identity headers matching a prefix into filter metadata and strips them before forwarding upstream</description></item><item><title>Inflight Tracking</title><link>https://praxis.fast/ai/dev/examples/configs/inflight-tracking.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/inflight-tracking.yaml/</guid><description>Tracks live request counts and summed token reservations per model in an in-memory InFlightRegistry</description></item><item><title>Intelligent Route All Capabilities</title><link>https://praxis.fast/ai/dev/examples/configs/intelligent-route-all-capabilities.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/intelligent-route-all-capabilities.yaml/</guid><description>Demonstrates every candidate capability and selection input handled by intelligent_route today</description></item><item><title>Intelligent Route Inference</title><link>https://praxis.fast/ai/dev/examples/configs/intelligent-route-inference.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/intelligent-route-inference.yaml/</guid><description>Use model identity to select the matching inference backend.</description></item><item><title>Intelligent Route Management Skip</title><link>https://praxis.fast/ai/dev/examples/configs/intelligent-route-management-skip.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/intelligent-route-management-skip.yaml/</guid><description>Demonstrates the intelligent_route management-path skip list: management and discovery endpoints (model listing, subscriptions, API-key management, health) bypass model resolution entirely, while inference paths are still resolved by model and fail closed on an unknown model</description></item><item><title>Intelligent Route Mcp</title><link>https://praxis.fast/ai/dev/examples/configs/intelligent-route-mcp.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/intelligent-route-mcp.yaml/</guid><description>Routes MCP tools/call requests to the cluster that owns the requested tool, using the mcp.name metadata set by the mcp filter</description></item><item><title>Intelligent Route Overlay</title><link>https://praxis.fast/ai/dev/examples/configs/intelligent-route-overlay.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/intelligent-route-overlay.yaml/</guid><description>Routes requests using a routing overlay file (routing-overlay.json) instead of inline YAML candidates. The overlay is rendered by the operator into a Kubernetes ConfigMap and projected as a volume mount</description></item><item><title>Intelligent Route Projected Credentials</title><link>https://praxis.fast/ai/dev/examples/configs/intelligent-route-projected-credentials.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/intelligent-route-projected-credentials.yaml/</guid><description>Starts with an empty credential table and injects a provider credential that is resolved on demand from a projected Kubernetes Secret mount</description></item><item><title>Json Rpc Routing</title><link>https://praxis.fast/ai/dev/examples/configs/json-rpc-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/json-rpc-routing.yaml/</guid><description>Routes JSON-RPC 2.0 requests to different backends based on the &amp;ldquo;method&amp;rdquo; field in the JSON request body</description></item><item><title>Lakera Guard</title><link>https://praxis.fast/ai/dev/examples/configs/lakera-guard.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/lakera-guard.yaml/</guid><description>Screens every request body through Lakera Guard for content moderation before forwarding to the upstream</description></item><item><title>Llmd Ext Proc Routing</title><link>https://praxis.fast/ai/dev/examples/configs/llmd-ext-proc-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/llmd-ext-proc-routing.yaml/</guid><description>A real llm-d EPP or test processor returns the trusted x-gateway-destination-endpoint header</description></item><item><title>Llmisvc Model Provider Resolver</title><link>https://praxis.fast/ai/dev/examples/configs/llmisvc-model-provider-resolver.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/llmisvc-model-provider-resolver.yaml/</guid><description>Rewrites publisher-ID body model values to the short model name for LLMISvc / KServe routing; the routing header (default X-Model) is left unchanged so routing can still use the publisher ID</description></item><item><title>Mcp Classifier Routing</title><link>https://praxis.fast/ai/dev/examples/configs/mcp-classifier-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/mcp-classifier-routing.yaml/</guid><description>Routes MCP requests by body-derived method and tool name</description></item><item><title>Mcp Stateless Broker</title><link>https://praxis.fast/ai/dev/examples/configs/mcp-stateless-broker.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/mcp-stateless-broker.yaml/</guid><description>Configurable stateless MCP broker using the final MCP 2026-07-28 stateless profile</description></item><item><title>Model To Header Routing</title><link>https://praxis.fast/ai/dev/examples/configs/model-to-header-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/model-to-header-routing.yaml/</guid><description>Routes LLM API requests to different backends based on the &amp;ldquo;model&amp;rdquo; field in the JSON request body</description></item><item><title>Model To Header Trust Existing</title><link>https://praxis.fast/ai/dev/examples/configs/model-to-header-trust-existing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/model-to-header-trust-existing.yaml/</guid><description>Routes on a model header that a trusted hop in front of Praxis has already set, skipping the filter entirely when the header is present</description></item><item><title>Model To Provider</title><link>https://praxis.fast/ai/dev/examples/configs/model-to-provider.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/model-to-provider.yaml/</guid><description>Map a stable public model ID to an existing upstream cluster and target model</description></item><item><title>Nemo Guardrails</title><link>https://praxis.fast/ai/dev/examples/configs/nemo-guardrails.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/nemo-guardrails.yaml/</guid><description>Evaluates incoming requests against a NeMo Guardrails service</description></item><item><title>Nemo Guardrails Response</title><link>https://praxis.fast/ai/dev/examples/configs/nemo-guardrails-response.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/nemo-guardrails-response.yaml/</guid><description>Evaluates upstream responses against a NeMo Guardrails service</description></item><item><title>Openai Selected Provider Legacy Fixture</title><link>https://praxis.fast/ai/dev/examples/configs/openai-selected-provider-legacy-fixture.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai-selected-provider-legacy-fixture.yaml/</guid><description>Controlled inference-fixture replay for OpenAI Chat Completions to an Anthropic Messages provider</description></item><item><title>Openai Selected Provider Legacy Translation</title><link>https://praxis.fast/ai/dev/examples/configs/openai-selected-provider-legacy-translation.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai-selected-provider-legacy-translation.yaml/</guid><description>OpenAI Chat Completions clients reach the overlay-selected Anthropic Messages or OpenAI-compatible provider and receive translated Anthropic JSON/SSE or unchanged OpenAI-compatible responses. intelligent_route binds the trusted provider profile to each request before response and SSE processing</description></item><item><title>Project State Owner Headers</title><link>https://praxis.fast/ai/dev/examples/configs/project-state-owner-headers.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/project-state-owner-headers.yaml/</guid><description>Demonstrates the production boundary used when an external authenticator injects separate tenant and subject headers. state_owner consumes those assertions into an immutable internal owner and strips the inbound copies. project_state_owner_headers then recreates destination-specific headers from that normalized context</description></item><item><title>Prompt Enrichment</title><link>https://praxis.fast/ai/dev/examples/configs/prompt-enrichment.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/prompt-enrichment.yaml/</guid><description>Injects system messages into OpenAI-compatible chat completion requests before forwarding to the upstream provider</description></item><item><title>Provider Route</title><link>https://praxis.fast/ai/dev/examples/configs/provider-route.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/provider-route.yaml/</guid><description>This listener requires downstream mTLS. peer_identity_trust authenticates and authorizes the edge gateway before AI-owned x-ai-routing- fields can influence provider-local routing</description></item><item><title>Stream Usage Inject</title><link>https://praxis.fast/ai/dev/examples/configs/stream-usage-inject.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/stream-usage-inject.yaml/</guid><description>Ensures every streaming OpenAI Chat Completions request carries stream_options.include_usage = true so the upstream response includes token usage in the final SSE event</description></item><item><title>Time To First Token</title><link>https://praxis.fast/ai/dev/examples/configs/time-to-first-token.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/time-to-first-token.yaml/</guid><description>Measures the elapsed time from request receipt to the first non-empty SSE body chunk and records a praxis_ai_ttft_seconds Prometheus histogram labeled by model</description></item><item><title>Token Ceiling</title><link>https://praxis.fast/ai/dev/examples/configs/token-ceiling.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-ceiling.yaml/</guid><description>Place token_ceiling after any request translation or prompt enrichment so it evaluates the final provider-bound JSON body</description></item><item><title>Token Counting</title><link>https://praxis.fast/ai/dev/examples/configs/token-counting.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-counting.yaml/</guid><description>Extracts token usage from AI inference responses (streaming and non-streaming) and makes counts available to downstream filters via filter metadata as token.input, token.output, and token.total</description></item><item><title>Token Rate Limit</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit.yaml/</guid><description>Apply token-aware rate limiting to inference requests and reconcile reported usage.</description></item><item><title>Token Rate Limit Header Keys</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-header-keys.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-header-keys.yaml/</guid><description>Extends token-rate-limit.yaml with M5 header dimensions (ai#123 / ai#129): each distinct x-tenant-id value gets its own token budget under the same catch-all rule</description></item><item><title>Token Rate Limit Hierarchy</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-hierarchy.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-hierarchy.yaml/</guid><description>Optional org, then team, then user budgets on one token_rate_limit admission (ai#125)</description></item><item><title>Token Rate Limit Ip Keys</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-ip-keys.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-ip-keys.yaml/</guid><description>Honor X-Forwarded-For for the IP budget only when a trusted proxy sanitizes it and direct access is blocked; otherwise omit header to key on the TCP peer</description></item><item><title>Token Rate Limit Mixed Algorithms</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-mixed-algorithms.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-mixed-algorithms.yaml/</guid><description>Extends token-rate-limit.yaml with per-rule algorithm choice (ai#789 / praxis#551): each rule in rules: independently picks sliding_window or token_bucket, matched by a static header value. team-alpha gets an exact trailing-window budget; team-beta gets a continuously-refilling bucket</description></item><item><title>Token Rate Limit Model Keys</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-model-keys.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-model-keys.yaml/</guid><description>Extends token-rate-limit.yaml with M5 model dimensions (ai#123): each distinct model identity gets its own token budget under the same catch-all rule</description></item><item><title>Token Rate Limit Soft Enforcement</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-soft-enforcement.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-soft-enforcement.yaml/</guid><description>Per-rule enforcement chooses what happens when the algorithm denies a reservation because the token budget is exhausted</description></item><item><title>Token Rate Limit Soft Tiers</title><link>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-soft-tiers.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-rate-limit-soft-tiers.yaml/</guid><description>Extends token-rate-limit.yaml with graduated enforcement tiers (proposal S1, ai#881)</description></item><item><title>Token Usage Headers</title><link>https://praxis.fast/ai/dev/examples/configs/token-usage-headers.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/token-usage-headers.yaml/</guid><description>Inject Praxis-Token-Input, Praxis-Token-Output, and Praxis-Token-Total headers into downstream responses when token counts are available in filter metadata</description></item></channel></rss>