projects · llm-gateway
Local models for private questions, cloud frontier models for hard ones — and no reason anyone in the household should care which is which. The gateway puts one API and one chat surface over all of them, with per-client budgets so an experiment can't quietly become a bill.
The product
Models come and go monthly; the surface stays. A router named
local-smart picks the best local model for the job, cloud
models sit one dropdown away, and every client — human or agent — spends
from its own budgeted key.
Lessons
Open WebUI ships its own design; making it wear the dusk theme through a thin CSS adapter proved the tokens-and-adapters pattern works even when you don't own the DOM.
An observability sidecar in this stack once burned two CPU cores for five days while every liveness check stayed green. That incident created the fourth axis of the monitoring pattern.
Cost control designed in from the start — per-key, enforced at the gateway — is what makes saying "yes" to new clients and agents cheap.