Ein Endpoint. Jede Oberfläche.
Eine Definition pro Feature. Webformular, CLI-Befehl, MCP-Tool, nativer Screen, Cron-Job - alles gleichzeitig. Keine Duplikation.
Jede Funktion brauchte ein Webformular, einen CLI-Befehl, ein MCP-Tool für KI-Agenten, manchmal einen mobilen Screen. Selbe Zod-Validierung, selbe i18n, selbe Fehlerbehandlung - nur anders verpackt. Also hab ich next-vibe gebaut: ein Framework, bei dem du eine definition.ts pro Funktion schreibst und es gleichzeitig als alles rendert.
Es betreibt auch unbottled.ai - 119 KI-Modelle, nutzergesteuerte Zensur. Dieselbe Codebase läuft als Next.js Web-App, TanStack/Vite Dev-Server, React Native Mobile-App, CLI, MCP-Server, Cron-System und WebSocket-Event-Bus. Eine Endpoint-Definition. Keine Duplikation.
Typen müssen stimmen. Keine Ausnahmen.
Das sind keine Stilpräferenzen. Das sind Architekturregeln, die ins Framework eingebaut sind.
Die Regel ist streng: Typen müssen vollständig stimmen. Wenn deine Typen falsch sind, ist deine Architektur falsch. Wir haben vibe check zur Durchsetzung gebaut - Oxlint + ESLint + TypeScript parallel, mit eigenen Plugins für projektspezifische Regeln.
Ersetze es durch eine echte typisierte Schnittstelle. Wenn du nach any greifst, hat deine Architektur ein Loch.
Selbe Regel. unknown ist nur any mit Extraschritten. Definier den Typ.
Nacktes object ist bedeutungslos. Schreib die Form, die du tatsächlich erwartest.
Typbehauptungen sind Lügen an den Compiler. Fix stattdessen die Architektur.
Nutze ResponseType<T> mit success(data) oder fail({message, errorType}). Fehler sind Daten, keine Exceptions.
Der Checker erkennt nicht übersetzte Literal-Strings. Jeder String braucht einen Übersetzungsschlüssel.
Die versehentliche Graph-Engine
Ein Trading-Bot, der nicht traden kann
Vibe Sense hat als Trading-Bot angefangen. Er hat nie Orders ausgeführt - er hat nur Preise beobachtet und Signale ausgelöst. Als ich ihn aufgab, überlebte die Pipeline-Architektur: Datenquellen verbinden sich mit Indikatoren, Indikatoren speisen Evaluatoren, Evaluatoren senden Signale, Signale lösen Aktionen aus. Jeder Knoten ist ein HTTP-Endpoint.
"Jeder Knoten im Graph ist einfach ein HTTP-Endpoint - du kannst jeden Schritt der Pipeline curlen, ihn isoliert testen oder von einem KI-Agenten aufrufen. Die Graph-Engine ist ein Scheduler, keine DSL."
Weil jeder Knoten ein Standard-Endpoint ist, sind sie einzeln über die CLI testbar, für KI-Agenten per MCP zugänglich und mit derselben Infra wie alles andere cachbar. Die Graph-Engine erfindet keine eigene Sprache. Sie schedulet Endpoints.
Chatten, erschaffen, verbinden - Text, Bilder, Videos und Musik
Datenschutzorientierte KI mit 119 Modellen - Chat, Bilder, Videos & Musik
Plattform
Rechtliches
© 2026 unbottled.ai. Alle Rechte vorbehalten.