BLOG
Introducing Eparch
Eparch is an open-source, self-hostable control plane for building, deploying, and governing AI agents on open-weight models — on infrastructure you own. Today we’re making the project public.
The gap
If you want to run AI agents inside a bank, a hospital network, a defense contractor, or any organization with real data-governance obligations, you have two options today, and both are bad.
The first is agent SaaS. The products are polished, but they terminate TLS somewhere you don’t control, ship your prompts and retrieved documents to models you don’t operate, and produce audit trails you have to take on faith. For a lot of teams that’s a fine trade. For regulated and air-gapped environments it’s disqualifying — not a pricing conversation, a compliance one.
The second is building it yourself. Every serious agent deployment needs the same plumbing: a gateway in front of the models, retrieval, a tool registry, identity, authorization, rate limits, budgets, evaluation, and an audit trail. None of it is exotic. All of it takes quarters to build well, and none of it is the product your team was hired to ship.
Eparch is the third option: the platform layer as open source, running entirely on your hardware.
What ships in v1
Eparch is ten Go services behind an API gateway, backed by PostgreSQL with pgvector, Redis, MinIO or any S3 store, and Open Policy Agent. Concretely:
- An LLM gateway — an OpenAI-compatible chat, embeddings, and rerank proxy with rule-based model routing and fallback, a semantic response cache, per-tenant daily and monthly budgets, and Redis-backed rate limiting.
- Hybrid RAG — pgvector similarity search plus object-store document storage, with embeddings and reranking flowing through the gateway.
- A tool registry — tools and MCP servers, with an AES-256 encrypted secret store.
- Agent config with canary deploys — versioned agent definitions where promotion is gated by eval runs, enforced server-side.
- Hard multi-tenancy — every data-plane service connects to Postgres as a non-superuser role with row-level security applied to every query.
- Policy, audit, and events — OPA authorization on every service, immutable per-tenant audit logs with cost accounting, and a Postgres transactional-outbox event bus.
Agents are first-class objects: triggered by events, run on a schedule, or driven interactively. No-code agents are defined in the platform UI; code agents use the Go or TypeScript SDK.
Why open weights
Open-weight models changed the calculus. Llama, Qwen, Mistral, and their successors are good enough for a large share of agent workloads, and they run on GPUs you can rack. What’s been missing is the governance layer that makes them deployable in serious environments: the thing that authenticates every request, checks it against policy, meters it against a budget, and writes it to an audit log before a single token is generated.
That’s the layer Eparch provides. The gateway speaks the OpenAI-compatible API, so you point it at vLLM, Ollama, or any compatible endpoint and bring whatever model your hardware can carry. There is no Eparch-hosted inference and never will be — the entire point is that nothing leaves your network.
Who it’s for
Teams deploying agents into environments where “just use the API” was never an option: regulated industries, sovereign and government clouds, air-gapped networks, and any organization that treats its data pipeline as a hard boundary. It’s also for teams that could use SaaS but would rather own their stack than rent it.
Try it
The quickstart needs only Docker and openssl — no model server, no accounts:
git clone https://github.com/eparchai/eparch && cd eparch && make quickstart
Open http://localhost:8080, register the first account (it becomes the admin), and click
around. When you’re ready to wire up a real model backend or enterprise SSO, the
self-host walkthrough covers it.
Eparch is Apache-2.0. The code, the issues, and the roadmap live on GitHub — we’d love your stars, your bug reports, and your hardest deployment questions.