Skip to content

Repository files navigation

PRISMUX

A self-hosted, multi-provider AI gateway and operational control plane.

Quickstart · Guide · Production deployment · Contributing · Changelog


PRISMUX puts one OpenAI-compatible API in front of as many upstream providers as you run — OpenAI, Anthropic, NVIDIA NIM, Ollama, OpenRouter, Groq, Together AI, Mistral, xAI, LM Studio, or any OpenAI-compatible host — and gives you the operational layer none of them provide on their own:

  • One API, many providers — OpenAI-compatible endpoints, provider-specific or routed through aliases
  • Fallback routing — ordered targets per alias, with automatic failover on transient errors
  • Capacity controls — RPM, TPM, burst, concurrency, and timeout, independently per provider
  • Streaming — real SSE streaming with tool calls, reasoning deltas, and usage on both OpenAI- and Anthropic-shaped APIs
  • Cost accounting — per-model pricing, computed cost on every request, exports, and dashboard totals
  • Operational dashboard — live feed, history, health, capacity, and cost, all in one React app
  • RBAC and audit — Viewer/Operator/Admin roles, revocable machine API keys, full audit log
  • SSRF-hardened outbound — every provider call passes through a centralized policy: DNS pinning, no redirects, permanent cloud-metadata blocking

Backed by PostgreSQL through a self-hosted Supabase stack (Auth, Storage, Studio) — your data and credentials stay on infrastructure you control.

Quickstart

cp .env.example .env
docker compose up --build

Open http://localhost:8100, sign in with the bootstrap admin account from .env, and follow the in-app Guide page to add a provider and issue your first machine key.

See docs/GUIDE.md for the full walkthrough, and docs/PRODUCTION_DEPLOYMENT.md before running this anywhere beyond localhost.

Screenshots

PRISMUX integration guide

Operational overview
Overview
Test console
Test Console
Live request feed
Live Feed
Providers settings
Providers
Model routing settings
Model Routing
Access control
Access

More views (History, Pricing, Storage, Alerts) are in docs/screenshots/.

Tech stack

  • Backend — Python, FastAPI, SQLAlchemy (async) + asyncpg, Alembic, PyJWT, cryptography (Fernet)
  • Frontend — Vite, React 19, TypeScript, Tailwind CSS v4, TanStack Query/Table, React Hook Form + Zod, Recharts
  • Infrastructure — Docker Compose, PostgreSQL, self-hosted Supabase (Auth, Storage, Studio, PostgREST, postgres-meta)

Contributing

Issues and pull requests are welcome — see CONTRIBUTING.md for how to set up a dev environment and what to expect from review.

Support this project

PRISMUX is an independent, self-hosted project maintained in the open. If it's useful to you, consider sponsoring its development:

Sponsor on GitHub

Sponsorships fund ongoing development, provider-adapter coverage, and production-hardening work (backups, secrets rotation tooling, broader test coverage). Every bit helps, and every sponsor is genuinely appreciated.

License

MIT

About

The control plane for your AI providers.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages