Das Werkzeug hinter offers.nerdag.ch hat als Angebotsrechner für einen IT-Dienstleister angefangen. Inzwischen ist es der Ort, an dem Kunden ihre Domains, Postfächer und Websites verwalten – und an dem ihre KI-Agenten direkt deployen dürfen. Das Projekt zeigt, wie weit man mit einem Agenten in kurzer Zeit kommt, wenn die Regeln stimmen.
Ausgangslage
Managed Services werden aus Bausteinen zusammengestellt: Webhosting, Backup, Microsoft-365-Betreuung, Domains, Leasing. Jede Offerte wurde in Word gebaut, jede Preisänderung von Hand nachgezogen, und aus einem angenommenen Angebot wurde nie automatisch ein Abo. Gewünscht war ein Werkzeug ohne großen Abhängigkeitsbaum, das sich in einem kleinen Container betreiben lässt und mitwächst.
Lösung
Der erste Stand kam ohne ein einziges npm-Paket aus: Node 22 mit den eingebauten Modulen für HTTP, SQLite und Kryptografie. 16 Bausteine in acht Rubriken, Kalkulation mit drei Töpfen (monatlich, jährlich, einmalig), Druckansicht als A4-PDF. Server und Browser rechnen mit demselben Modul, damit auf dem Papier steht, was in der Datenbank liegt.
Darauf aufbauend entstanden Abonnements aus angenommenen Offerten, ein täglicher Rechnungslauf mit Schweizer QR-Zahlteil, ein Kundenportal mit eigener Anmeldung, Ticketsystem, Domainverwaltung über die DNS-API des Hosters und ein zweistufiges Hosting: Jeder Kunde bekommt einen eigenen Linux-Container, darauf laufen seine Applikationen als Docker-Compose-Projekte mit eigener Subdomain und eigenem Port.
Der interessanteste Teil ist der KI-Zugang je Applikation. Jede App hat ein Token; gespeichert wird nur der Hash. Wer das Token hat – der Kunde, sein Claude Code, sein Codex – darf genau diese eine Applikation bauen: Paket hochladen, Stand ansehen, Logs lesen, zurückrollen, Suchmaschinen freigeben. Ein MCP-Server ohne Abhängigkeiten bringt diese sechs Werkzeuge in jeden gängigen Agenten. Die Regeln liest die KI live vom Server: welcher Port, wie viel Speicher, was in der Compose-Datei erlaubt ist. Der Host prüft jedes Paket vor dem Start – höchstens sechs Dienste, keine privilegierten Container, keine Host-Pfade – und rollt automatisch zurück, wenn die Seite nach 60 Sekunden nicht antwortet.
Ergebnis
- Offerte, Abo, Rechnung und Betrieb in einem Werkzeug, ohne Medienbruch
- WordPress mit einem Klick, inklusive Datenbank, Admin-Zugang und Versandpostfach mit SPF, DKIM und DMARC
- Kunden legen Websites im Portal selbst an und geben ihrer KI das Token – der Dienstleister sieht nur noch das Ergebnis
- Diese Website hier ist über genau diesen Weg entstanden
Was wir daraus gelernt haben
Ein Agent, der ein Werkzeug in Tagen statt Monaten baut, produziert auch in Tagen die Fehler, die sonst Monate brauchen. Zwei Beispiele aus dem Projekt: Zwei parallele Bereitstellungen haben sich einmal dieselbe Container-ID ausgesucht – seitdem laufen sie strikt nacheinander, auf dem Host zusätzlich mit einer Sperre. Und ein Deployment des Werkzeugs selbst hat einen laufenden Hintergrundjob abgebrochen. Beides waren keine KI-Fehler, sondern Betriebsfragen, die jemand stellen musste. Genau dafür sitzt ein Mensch daneben.