flashGATE
flashGATE ist ein Gateway vor all deinen lokalen LLM-Hosts und externen API Endpoints: ein Endpunkt, Multi-User mit API-Keys & 2FA, Modell-Routing und Power-Management per WoL/SSH.
flashGATE
Ein Endpunkt für all deine lokalen LLMs. flashGATE legt ein
OpenAI-kompatibles Gateway vor deine Hosts – ob Ollama, LM Studio, vLLM oder
llama.cpp. Deine Apps sprechen weiter /v1/*, flashGATE kümmert sich um
Authentifizierung, Modell-Routing und darum, dass die richtige Maschine
überhaupt läuft.
Warum flashGATE
Wer mehrere LLM-Backends betreibt, jongliert sonst mit verschiedenen URLs,
Ports und keiner echten Zugriffskontrolle. flashGATE bündelt alles hinter einer
Adresse: ein Schlüssel, ein Endpunkt, voller Überblick – und Hosts, die nur
laufen, wenn sie gebraucht werden.
- Drop-in für jede OpenAI-SDK – bestehende Clients funktionieren ohne Codeänderung.
- Zugriff unter Kontrolle – User, Rollen, API-Keys und Pflicht-2FA für Admins.
- Strom sparen – Backend-Hosts gezielt wecken und schlafen legen.
Funktionsumfang
🔌 100 % OpenAI-kompatibel
Vollständiger /v1/*-Endpunkt: chat/completions, completions,embeddings, models – inklusive Streaming-Pass-Through. Bestehende SDKs
und Tools zeigen einfach auf flashGATE.
🧭 Modell-Registry & Routing
flashGATE aggregiert /v1/models aller Hosts und vergibt eindeutige Public-IDs
als host/model-Namespace. Anfragen werden anhand dieser ID an das richtige
Backend geroutet.
👥 Multi-User & API-Keys
User mit Rollen (admin / user) und API-Keys pro User. Der Schlüssel
(sk-…) ist nur einmalig im Klartext sichtbar; gespeichert werden nur
Präfix und SHA-256-Hash. Limits pro User konfigurierbar.
🔐 2FA: TOTP oder Passkey
Pflicht für Admins – TOTP oder Passkey (WebAuthn), beide einrichtbar,
inklusive Backup-Codes. Normale User können 2FA optional aktivieren. Plus
Brute-Force-Schutz beim Login.
⏻ Host-Power-Management
Backend-Hosts direkt aus dem UI steuern: Wake per Wake-on-LAN, Sleep /
Shutdown und LLM-Dienst Start/Stop per SSH. Power-State (online,waking, offline, sleeping, unknown) jederzeit sichtbar.
📊 Request-Logging
Anfragen werden mit Token-Counts protokolliert – best-effort auch für
Streams. API-Keys landen nie im Log.
🖥️ Web-UI
Schlanke Svelte-SPA unter /ui/ für User-, Key-, Host- und
Power-Verwaltung – mit Live-Anzeige der Host-Zustände.
So funktioniert es
- Hosts eintragen – Ollama, LM Studio, vLLM oder llama.cpp in die Config aufnehmen.
- Admin & 2FA einrichten – Bootstrap-Admin anlegen, TOTP oder Passkey aktivieren.
- API-Key erzeugen – pro User einen
sk-…-Schlüssel ausstellen. - Client umbiegen – Base-URL auf flashGATE setzen, Modell als
host/modelwählen. - Anfragen laufen lassen – flashGATE authentifiziert, routet, weckt bei Bedarf den Host und streamt zurück.
Tech-Stack
| Bereich | Technologie |
|---|---|
| Backend | Python 3.11+, FastAPI, httpx (async) |
| Datenhaltung | SQLAlchemy 2.x (async) + aiosqlite |
| Auth | argon2-cffi, itsdangerous, pyotp (TOTP), py_webauthn (Passkey) |
| Power | asyncssh (SSH), wakeonlan (WoL) |
| Frontend | Svelte 4 + Vite 5 (SPA unter /ui/) |
| Deployment | Docker Compose, Cloudflare Tunnel, launchd (macOS) |
Für wen ist flashGATE
- Unternehmen, die mehrere lokale LLM-Maschinen und/oder LLM Provider unter einer Adresse bündeln.
- Teams, die kontrollierten Multi-User-Zugriff auf eigene Modelle brauchen.
- Entwickler:innen, die OpenAI-SDKs gegen lokale Modelle laufen lassen wollen – ohne Codeumbau.
flashGATE – ein OpenAI-kompatibles Tor zu all deinen lokalen LLMs.

