EN · DE

← Max Riechelmann

Privates Projekt

Persönliche KI-Agenten-Infrastruktur

Ein Assistent, den ich selbst betreibe — eigene Hardware, eigene Werkzeuge, eigene Regeln. Angefangen im August 2026 als Wake-Word-Experiment, inzwischen das, was ich tatsächlich benutze: Sprache am Schreibtisch, eine Uhr am Handgelenk, ein Root-Server, auf dem die Werkzeuge liegen. Alles auf dieser Seite ist im täglichen Betrieb, keine Folie.

Gebaut wie im Beruf: in Betrieb nehmen, aufschreiben warum, und die Fehlerbilder dort hinterlassen, wo der Nächste sie liest. Was folgt, schließt die Entscheidungen ein, die sich als falsch herausgestellt haben.

Zwei Maschinen, ein Assistent

   Nyx — Desktop, Heimnetz         Button — Root-Server, immer an
 +-------------------------------+   +-------------------------------+
 | Wake Word + VAD (auf Geraet)  |   | HTTPS-Gateway (Uhr, Handy)    |
 | Sprache rein/raus, HUD        |   | Agenten-Sitzungen headless    |
 | Lautsprecher, Scanner, Doks   |<=>| 21 MCP-Server                 |
 | 4 MCP-Server                  |ssh| Dashboard-Collector, Dienste  |
 +-------------------------------+   +-------------------------------+

Die Trennung ist keine Symmetrie, sondern Erreichbarkeit. Werkzeuge, die das Heimnetz brauchen — Lautsprecher, Scanner, alles mit lokaler Adresse — funktionieren nur vom Desktop aus. Alles andere liegt auf dem Server, weil der immer läuft. Ein Hook sagt jeder Agenten-Sitzung beim Start, auf welcher der beiden Maschinen sie aufgewacht ist — die Antwort ändert, was sie darf.

Geroutet wird zwischen beiden per Stichwortabgleich, nicht per Modellaufruf. Ein Modell zu fragen, wo die Anfrage laufen soll, hätte pro Runde einen zusätzlichen Durchlauf gekostet — und damit genau die Ersparnis aufgefressen, für die der Wechsel auf die lokale CLI gemacht wurde.

Wege hinein

Die Werkzeugschicht

Alles, was der Assistent tatsächlich tun kann, hängt hinter dem Model Context Protocol: 21 Server auf dem Root-Server, 4 auf dem Desktop. Nachrichten, Aufgaben und Notizen, Medien und Hausgeräte, Gesundheits- und Trainingsdaten, Dokumente, ein Browser, eine Literatursuche.

Fünf davon habe ich selbst geschrieben, weil es keinen brauchbaren Server gab — darunter die Lautsprecher, eine Chat-Plattform und zwei Geräteanbindungen, für die es gar keine öffentliche API gibt. Drei weitere sind fremde Projekte mit lokalen Patches. Beides liegt in einem eigenen Repository, getrennt vom Betriebsort: die laufenden Installationen enthalten Token und Sitzungsdaten und werden bewusst nicht gesynct — womit sie die einzige Kopie von Arbeit waren, die sich nicht nachinstallieren lässt.

Dieselbe Sammlung ist auch der Grund, warum das persönliche Dashboard über dieselben MCP-Server einsammelt, statt ein Dutzend Hersteller-APIs selbst anzusprechen. Anmeldung, Token-Refresh und die lokalen Reparaturen gibt es schon einmal. Zweimal bauen heißt zweimal kaputtgehen.

Eine Kette, durchgehend

 Uhr --> Handy (Health Connect) --> selbst gebaute Android-App
     --> Gateway --> SQLite --> MCP-Server --> Agent / Dashboard

Das deutlichste Beispiel dafür, wie weit es reicht. Der Hersteller bietet keine Consumer-Cloud-API, also wurde das fehlende Glied gebaut: eine Android-App, die den Gesundheitsspeicher des Handys liest und alle 30 Minuten an den Server schickt. Ab da ist es eine normale MCP-Quelle — der Assistent kann daraus antworten und das Dashboard stellt es dar, ohne dass einer von beiden wissen muss, woher es kommt.

Gedächtnis und Konfiguration

Was ich falsch gemacht habe

Was darauf läuft

Nichts davon ist eine Produktbewertung. Es ist dieselbe Gewohnheit, die ich in die Technik trage: bauen, in Betrieb nehmen, messen und aufschreiben warum — einschließlich der Teile, die nicht funktioniert haben.