Node-and-wire AI engine for cameras, mics, and screens
A self-hostable visual builder for real-time multimodal AI apps that can see, hear, and talk back.

What it does
Gabber is a self-hosted engine and visual editor for building real-time AI applications that ingest live media—microphone audio, camera feeds, screen capture—and process them through composable node graphs. It runs as four services (Next.js frontend, editor backend, execution engine, and a thin repository server) and connects to LiveKit for WebRTC media transport.
The interesting bit
The “pad” system is the wiring: typed ports on each node can operate in either Property mode (holding a value) or Stateless mode (streaming), which lets you mix event-driven and stateful logic in the same graph. Add a state machine on top and you get branching behavior—like an AI security guard that switches from idle to alert when motion exceeds a threshold.
Key highlights
- Visual graph editor with typed node connections (pads) and subgraph composition
- Built-in nodes for transcription, LLM inference (local via llama.cpp/vLLM or remote), emotion analysis, and media I/O
- State machines with parameter-driven transitions for multi-phase app logic
- Secrets stored outside graph definitions (
.secretfile), so graphs are shareable without credential leakage - SDKs available for TypeScript, React, and Python; Unity, mobile, and Flutter marked “Coming Soon”
- Licensed under fair-code (Sustainable Use License), same model as n8n; examples and SDKs are Apache 2.0
Caveats
- Several SDKs (Unity, iOS, Android, React Native, Flutter) are listed as “Coming Soon” with no timeline
- Local LLM setup on macOS requires building llama.cpp from source; the brew package reportedly lacks Metal GPU support
- The repository service stores all apps and subgraphs in a local
.gabberdirectory—no remote persistence or versioning mentioned
Verdict
Worth a look if you’re building voice/video AI agents and want a visual, self-hosted alternative to managed platforms. Skip it if you need mature mobile SDKs or a battle-tested deployment story beyond Docker Compose on localhost.