Praxis AI Documentation

Praxis AI provides AI inference filters, agentic protocol support, and provider API integrations on top of Praxis.
On this page

Praxis AI provides AI inference filters, agentic protocol support, and provider API integrations on top of Praxis.

Start here

Architecture

Provider guides

Development

Operations and releases


Adding a Built-in AI Filter

Add a built-in Praxis AI filter by following the filter contract and registering it with the product.

Agentic Protocols

JSON-RPC 2.0 envelope parsing and protocol-specific metadata extraction for MCP and A2A agent traffic.

AI Inference

Body-aware classification, routing, and enrichment for AI inference traffic, built on the filter pipeline and StreamBuffer body access pattern.

Anthropic Messages API

Praxis supports the Anthropic Messages API (/v1/messages) through five composable filters. Operators can route, validate JSON envelopes, and transform Anthropic requests to reach any backend.

Anthropic Messages Replay Test Plan

Defines the Anthropic Messages API request and response shapes Praxis AI should cover across replay, passthrough, and translation tests.

Capacity Planning: File Descriptors

Praxis AI runs on the Praxis proxy core and inherits its file descriptor handling.

Cryptographic operations inventory

A human-readable inventory of where the Praxis AI proxy performs cryptography in production, which provider executes each operation, and its FIPS disposition (#1220).

Examples

Browse 120 tracked YAML configurations for Praxis AI, organized by task and setup needs.

Features

Praxis AI extends the Praxis proxy framework with AI-specific filters and provider integrations.

Filters

Browse Praxis AI filters and open their generated configuration reference.

FIPS 140-3

Praxis AI performs all of its cryptography in the system OpenSSL library.

FIPS Tooling

Local, reproducible checks that a praxis-ai build is on the path to FIPS 140-3 compliance on Red Hat Enterprise Linux.

Flow visualizers

A flow visualizer is a single, self-contained HTML file that explains one Praxis config as an interactive diagram: the filter pipeline, the clusters and external services it talks to, the…

Getting Started

compliance check and Red Hat’s scanner need podman on Linux)

llm-d Integration Testing

Praxis AI includes an AI-owned ext_proc compatibility layer for llm-d integration.

Migrating to 0.2.0

Version 0.2.0 moves token usage parsing from praxis-ai-apis into the private token usage subsystem in praxis-ai-filters.

Nightly GPU test suite

This page is the single entry point for understanding what our GPU-backed nightly CI runs, what hardware it uses, and where the deeper documentation lives.

OpenAI Conformance

This directory tracks Praxis AI conformance against selected OpenAI API surfaces. The current scope is Conversations only.

OpenAI Responses retained-payload budget

The Responses agentic loop can hold several representations of one request at once: the raw JSON body, parsed input, restored history, rewritten model input, tool results, streaming events, and a…

OpenTelemetry Routing Semantics

Add Praxis AI routing decisions to the OpenTelemetry request traces exported by Praxis core.

Outbound callout security

Praxis AI treats an outbound target, its resolved socket addresses, and the credentials attached to the request as one trust decision.

PostgreSQL Cryptographic Boundary

The openai_responses_store and openai_conversations filters can persist state to PostgreSQL.

Project Management

All repositories in the praxis-proxy organization use a consistent workflow for planning, prioritizing, and tracking work.

Quickstart

Build Praxis AI from source for local development, then route a Responses API request to an AI backend.

Release Process

Praxis AI uses Semantic Versioning. The workspace version is the single source of truth, defined in workspace.package.version in the root Cargo.toml. All workspace crates inherit this version.

Repair duplicate conversation item positions in a legacy database

Before #570, concurrent item appends could assign the same position to two items in one (tenant_id, conversation_id) scope. The unique index added by

Response Store

Durable persistence for OpenAI Responses API responses, enabling retrieval (GET), deletion (DELETE), and input-item pagination across proxy restarts.

Responses Store Schema Upgrade

Replace the disposable v3 response store with a fresh v4 database before starting current releases; startup creates the required schema.

Routing Facts

The request facts that routing filters may read, where each one comes from, and the rules that keep them trustworthy.

Run Codex, Claude Code, or OpenCode through Praxis and vLLM

Connect Codex or Claude Code through a local Praxis AI gateway to inference served by vLLM.

Type Design

Make invalid states unrepresentable. The type system and serde should enforce constraints at parse time, not at runtime.

vLLM Responses gateway qualification evidence

The existing vLLM Integration workflow runs the complete Responses SDK suite on a real GPU for scheduled runs, run_live_vllm=true dispatches, and the vllm-full-suite PR label.