BrighTO Router
Self-hosted Rust LLM gateway that puts OpenAI, Anthropic and Jev-style /v1/systemone backends behind one endpoint with load balancing.
Overview
BrighTO-Router is an open-source, self-hosted LLM gateway, model load balancer and System One decision router written in Rust and installed with Docker. It gives a team one stable endpoint for OpenAI-compatible, Anthropic-compatible, cloud and local backends, keeps provider keys private, records usage in PostgreSQL and offers NGINX-style model groups with round-robin or weighted load balancing, fallback routing and token budgets. It positions itself as a narrower alternative to LiteLLM or Bifrost.
For decision models, it exposes /v1/systemone and /v1/decisions routes for TypeSafe/Jev-compatible models such as Ollaya/Laya or hosted Jev-style endpoints, with an Ollaya System One provider preset in its portal. It also ships a single-file Python SDK and docs for agent clients.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Other | Forwards Jev-style decision requests to configured backends; decisions are the caller's(inferred) | — |
How it works
- Configure providers and model groups in the portal
- Clients call one endpoint (chat or /v1/systemone)
- Gateway load-balances and falls back across backends
- Usage is recorded in PostgreSQL
Strengths
- One endpoint for chat and decision models
- Keys stay on the server
- Weighted load balancing and budgets
Caveats
- Self-hosting and Postgres required
- Decision quality depends on the backend
Getting started
Follow the Docker quick start in the README.At a glance
- Type
- Service
- Status
- beta
- Language
- Rust
- Runtime
- self-hosted gateway (Docker + PostgreSQL)
- Has code
- yes
Use cases and integrations
How curated lists describe it
BrighTO LLM Router: free open-source, ultra-fast Rust LLM gateway with a…
wh000wh000/awesome-jev-liveSelf-hosted Rust gateway that fronts OpenAI-, Anthropic- and `/v1/systemone`-shaped backends behind one endpoint, with weighted model groups and usage recorded in PostgreSQL.
MrJev/awesome-jev
Frequently asked questions
Does it support Jev-style APIs?
Yes, /v1/systemone and /v1/decisions routes.
Can I use local decision models?
Yes, for example Ollaya/Laya.
Where is usage stored?
In PostgreSQL.
Related projects
Claude Code plugin where a local Decider model on your Mac picks the model and effort level for each subagent task.
PluginbetaPythonLocal-first routing engine for long-running agent tasks that uses a Jev decider to pick a model group per turn.
PluginproductionRust, TypeScriptOpen-source AI gateway for 100+ LLMs that can use Jev to classify requests for complexity routing and to compact tool results.
ProxyproductionPythonOpen-source workspace for running and reviewing AI coding agents across devices, with an optional Jev-based automatic model router.
ProjectproductionTypeScript- jev-router★ 593
Per-turn model routing for Claude Code and Codex: wraps the real CLI and lets Jev send simple turns to fast models and hard ones to strong.
ProxybetaJavaScript - jev-codex-router★ 274
Per-call router for Codex where Jev picks the model and thinking effort for every model call, including tool continuations.
ProjectbetaPython