<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Responses on Praxis</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/</link><description>Recent content in Responses on Praxis</description><generator>Hugo</generator><language>en</language><atom:link href="https://praxis.fast/ai/dev/examples/configs/openai/responses/index.xml" rel="self" type="application/rss+xml"/><item><title>Agentic Loop</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop.yaml/</guid><description>Demonstrates the openai_agentic_loop filter with iterative_request_router for step-based model-tool-model looping in the Responses API</description></item><item><title>Agentic Loop Deferred Mcp Fixture</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop-deferred-mcp-fixture.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop-deferred-mcp-fixture.yaml/</guid><description>Minimal agentic-loop pipeline that sanitizes deferred MCP connectors on the first inference round. defer_loading: true skips tools/list, so replay never opens an independent MCP callout</description></item><item><title>Agentic Loop Fixture</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop-fixture.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop-fixture.yaml/</guid><description>Minimal agentic loop pipeline for inference fixture replay</description></item><item><title>Agentic Loop Guardrails</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop-guardrails.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/agentic-loop-guardrails.yaml/</guid><description>Screens each newly produced local tool result before it can enter the next inference request</description></item><item><title>Body Size Limits</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/body-size-limits.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/body-size-limits.yaml/</guid><description>Demonstrates how raw request body size is enforced across a chain of OpenAI Responses filters that each buffer the request body</description></item><item><title>Budget Overflow Streaming</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/budget-overflow-streaming.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/budget-overflow-streaming.yaml/</guid><description>Demonstrates the terminal-failure contract when an upstream Responses SSE stream overflows the request-wide retained-payload budget AFTER the client stream is already committed</description></item><item><title>Client Tool Compat</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/client-tool-compat.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/client-tool-compat.yaml/</guid><description>Lets a rich Codex-style Responses client talk to a function-only Responses backend (for example vLLM at POST /v1/responses) without routing through /v1/chat/completions and without executing client-owned tools in Praxis</description></item><item><title>Client Tool Compat Chat Completions</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/client-tool-compat-chat-completions.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/client-tool-compat-chat-completions.yaml/</guid><description>Lets a rich Codex-style Responses client (POST /v1/responses with custom, namespace, local shell, and client-executed tool_search tools) reach a function-only Chat Completions backend (POST /v1/chat/completions) by composing openai_client_tool_compat with openai_responses_to_chat_completions in one iterative-router step (GitHub issue #1206)</description></item><item><title>Codex Http Chat Translation</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/codex-http-chat-translation.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/codex-http-chat-translation.yaml/</guid><description>Release-acceptance configuration for GitHub issue #870. A Codex client speaks the OpenAI Responses API over HTTP while Praxis selects a Chat Completions-only provider, translates both request and streaming response, rewrites the provider path, and replaces the client credential</description></item><item><title>Compact</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/compact.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/compact.yaml/</guid><description>Demonstrates compaction after rehydrate, file resolve, and document extract so rewritten current-turn content survives history replacement</description></item><item><title>Doc Extract</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/doc-extract.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/doc-extract.yaml/</guid><description>Converts input_file content parts to input_text for inference backends that do not natively support input_file (e.g. vLLM, llm-d)</description></item><item><title>File Resolve</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-resolve.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-resolve.yaml/</guid><description>Resolves file_id and file_url references in Responses API input by fetching file metadata and content, then inlining base64 content as file_data or image_url before forwarding</description></item><item><title>File Search Chat Completions</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-chat-completions.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-chat-completions.yaml/</guid><description>Accepts finite OpenAI Responses requests with hosted file search while targeting a backend that only implements /v1/chat/completions</description></item><item><title>File Search Chat Completions Fixture</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-chat-completions-fixture.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-chat-completions-fixture.yaml/</guid><description>Single-upstream fixture configuration for recording the private Chat Completions function representation of a Responses file_search tool</description></item><item><title>File Search Dispatch</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-dispatch.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-dispatch.yaml/</guid><description>Demonstrates hosted file_search execution under the unified agentic loop (#1046). openai_agentic_loop is the sole loop owner: it parses each model response, records the file_search_call items it sees as assignments, and publishes the single continuation signal (action=loop|done). openai_file_search_dispatch is a pure request-phase dispatcher: at request- body EOS on each IRR re-entry it executes the assigned calls against the vector store and reconciles each item in place, then the owner prepares the next inference request</description></item><item><title>File Search Streaming</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-streaming.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/file-search-streaming.yaml/</guid><description>Demonstrates streaming hosted file_search through the iterative_request_router</description></item><item><title>Format Routing</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/format-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/format-routing.yaml/</guid><description>Routes AI API traffic by request-head operation identity and body format</description></item><item><title>Full Flow Agentic</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/full-flow-agentic.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/full-flow-agentic.yaml/</guid><description>Runs the complete Responses API pipeline through an agentic iterative_request_router that executes hosted file_search, web_search, and MCP tool calls in a model-tool-model loop, persisting both buffered and streaming (stream: true) responses</description></item><item><title>Full Flow Agentic.Visualizer</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/full-flow-agentic.visualizer.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/full-flow-agentic.visualizer.yaml/</guid><description>Full Flow Agentic.Visualizer configuration for openai/responses.</description></item><item><title>Http Passthrough</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/http-passthrough.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/http-passthrough.yaml/</guid><description>The strict-HTTP acceptance test for pinned Codex CLI for GitHub issue #870 drives the proxy over POST /v1/responses and any other Responses API paths the client may probe</description></item><item><title>Irr Terminal Streaming</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/irr-terminal-streaming.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/irr-terminal-streaming.yaml/</guid><description>Demonstrates a single-step iterative_request_router pipeline that exposes a native OpenAI Responses SSE body incrementally. openai_responses_proxy always advertises the streaming capability and selects Praxis&amp;rsquo;s typed streaming transport automatically for an effective &amp;ldquo;stream&amp;rdquo;: true request; there is no operator opt-in</description></item><item><title>Mcp Approval Floor</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-approval-floor.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-approval-floor.yaml/</guid><description>Demonstrates the openai_mcp_dispatch operator approval floor on a complete persisted agentic Responses pipeline</description></item><item><title>Mcp Dispatch</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-dispatch.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-dispatch.yaml/</guid><description>Demonstrates the openai_mcp_dispatch filter configuration</description></item><item><title>Mcp Outbound Chain</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-outbound-chain.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-outbound-chain.yaml/</guid><description>Demonstrates binding an operator outbound_chain onto the outbound MCP callout made by openai_mcp_tool_resolve (the tools/list discovery request)</description></item><item><title>Mcp Streaming</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-streaming.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-streaming.yaml/</guid><description>Demonstrates MCP tool calls over the filtered-subrequest transport with SSE streaming support</description></item><item><title>Mcp Tool Admission</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-tool-admission.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-tool-admission.yaml/</guid><description>Demonstrates operator-owned metadata admission and read-only enforcement for the openai_mcp_tool_resolve filter (issue #1724)</description></item><item><title>Mcp Tool Resolve</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-tool-resolve.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/mcp-tool-resolve.yaml/</guid><description>Demonstrates the openai_mcp_tool_resolve filter, which resolves MCP tool entries in the Responses API tools array into concrete tool definitions by calling tools/list on each upstream MCP server</description></item><item><title>Model Rewrite</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/model-rewrite.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/model-rewrite.yaml/</guid><description>Rewrites or injects the top-level model field in Responses API and Chat Completions request bodies before forwarding to the inference backend</description></item><item><title>Rehydrate</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/rehydrate.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/rehydrate.yaml/</guid><description>Validates previous_response_id by fetching the stored response, confirming its status is completed, and promoting the ID to filter metadata</description></item><item><title>Rehydrate Fixture</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/rehydrate-fixture.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/rehydrate-fixture.yaml/</guid><description>Minimal native OpenAI Responses pipeline that stores a first turn, rehydrates a stored previous_response_id into the outbound input history, and proxies to a native /v1/responses backend</description></item><item><title>Request Validate</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/request-validate.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/request-validate.yaml/</guid><description>Validates Responses API JSON and enriches request metadata</description></item><item><title>Response Store</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/response-store.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/response-store.yaml/</guid><description>Persists streaming and non-streaming Responses API responses to a database, serves stored data via GET endpoints, and handles DELETE /v1/responses/{id} locally</description></item><item><title>Response Store Postgres Mtls</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/response-store-postgres-mtls.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/response-store-postgres-mtls.yaml/</guid><description>Persists non-streaming Responses API responses to PostgreSQL over a TLS-verified connection that authenticates with a client certificate instead of a password</description></item><item><title>Responses Proxy</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-proxy.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-proxy.yaml/</guid><description>Forward Responses API traffic through a Praxis AI listener to a compatible backend.</description></item><item><title>Responses Routing</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-routing.yaml/</guid><description>Routes Responses API traffic by detected mode</description></item><item><title>Responses To Chat Completions</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-to-chat-completions.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-to-chat-completions.yaml/</guid><description>Translate the Responses API shape for an OpenAI-compatible Chat Completions backend.</description></item><item><title>Responses To Chat Completions Reasoning</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-to-chat-completions-reasoning.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-to-chat-completions-reasoning.yaml/</guid><description>Translates finite and streaming vLLM reasoning into Responses reasoning output items, including storage and replay on continuation</description></item><item><title>Responses To Chat Completions Reasoning Agentic</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-to-chat-completions-reasoning-agentic.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/responses-to-chat-completions-reasoning-agentic.yaml/</guid><description>Exercises stored reasoning and previous_response_id replay through the agentic loop, where the output collector records each round into the stored history</description></item><item><title>State Ownership</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/state-ownership.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/state-ownership.yaml/</guid><description>Provider-neutral owner isolation for persisted OpenAI Responses and Conversations</description></item><item><title>Stream Events</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/stream-events.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/stream-events.yaml/</guid><description>Demonstrates the openai_stream_events filter, which composes the current iterative-request-router (IRR) execution into one logical Responses SSE stream: it parses each backend SSE chunk, accumulates state (response object, output items, tool calls, usage) into ResponsesState, normalizes the per-round lifecycle, and preserves parser state through stream completion</description></item><item><title>Tool Routing</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/tool-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/tool-routing.yaml/</guid><description>Demonstrates using openai_tool_parse to route Responses API requests by their tool composition</description></item><item><title>Vector Stores Routing</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/vector-stores-routing.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/vector-stores-routing.yaml/</guid><description>Routes /v1/vector_stores traffic and all its subresources to a dedicated backend (any server compatible with the OpenAI Files / Vector Stores API), while sending everything else to a default backend</description></item><item><title>Vllm Agentic Api</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/vllm-agentic-api.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/vllm-agentic-api.yaml/</guid><description>vLLM Agentic API: &lt;a href="https://github.com/vllm-project/agentic-api"&gt;https://github.com/vllm-project/agentic-api&lt;/a&gt;</description></item><item><title>Web Search</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search.yaml/</guid><description>Demonstrates the openai_web_search_dispatch filter configuration</description></item><item><title>Web Search Chat Completions</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-chat-completions.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-chat-completions.yaml/</guid><description>Accepts OpenAI Responses requests with hosted web search while targeting a backend that only implements /v1/chat/completions</description></item><item><title>Web Search Chat Completions Fixture</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-chat-completions-fixture.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-chat-completions-fixture.yaml/</guid><description>Single-upstream fixture configuration for recording the private Chat Completions function representation of a Responses web_search tool</description></item><item><title>Web Search File Key</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-file-key.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-file-key.yaml/</guid><description>A variant of web-search-chat-completions.yaml that sources the shared Brave provider key from a projected FILE instead of an environment variable</description></item><item><title>Web Search Scoped Credentials</title><link>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-scoped-credentials.yaml/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://praxis.fast/ai/dev/examples/configs/openai/responses/web-search-scoped-credentials.yaml/</guid><description>A scoped-credentials variant of web-search-chat-completions.yaml</description></item></channel></rss>