In diesem Beitrag vom 7. Juni 2026 erzählt Mark Dembo (Head of Solutions – Developer Platform & AI bei Cloudflare) von einem sonntäglichen Bastelprojekt: dem Bau eines DIY-KI-Agenten aus einem kleinen, für ~30 € gekauften M5Stack Stick 3-Gerät, inspiriert von Steve Ruiz und motiviert durch die Veröffentlichung von Opus 4.8. Das Motto: „There is no goal. Pure exploration and curiosity. And that feels just great.“

Erste Iteration (45 Minuten). Er wirft die Dokumentation des Geräts Claude Code vor, das rund 200 Zeilen Python-Skripte erzeugt. Da diese „zero blast radius“ haben, erlaubt er sich, sich überhaupt nicht um den Code zu kümmern. Der Ablauf bleibt human-in-the-loop (nach seinem Geschmack wenig „2026“): Opus generiert, er kopiert und fügt in die Weboberfläche UIFlow ein, führt aus und meldet das Ergebnis zurück. Seine Rolle schrumpft auf drei Funktionen — Ideengeber, Ausführender und Richter. Ein Cloudflare-Workers-+-Workers-AI-Backend ergänzt rasch Sprachausgabe (Text-to-Speech), Push-to-Talk (Spracherkennung) und ein zentrales kleines LLM: Das Objekt hört zu, antwortet und erzählt schlechte Witze.

Zweite Iteration. Mit dem Ziel eines echten Agenten verweist er Opus auf das Cloudflare Agents SDK, wechselt von REST zu WebSocket-Transport und aktiviert Dynamic Worker execution — was sein Lieblingsmuster freischaltet, „Code Mode“: Der Agent schreibt und führt Code aus, um seine Aufgabe zu erledigen. Mit Internetzugang berechnet der Agent 11! mit einer Zeile Code, findet den Champions-League-Sieger via fetch() auf Wikipedia und liefert das Wetter für beliebige Städte. Seine Grenze: kein Zugriff auf private Daten.

Dritte Iteration. Er verbindet Todoist über einen MCP-OAuth-Flow (von Claude in wenigen Minuten hinzugefügt) — und erbt dabei 50 Tools auf einmal, woraus zwei Probleme entstehen: Context Bloat und ein echter Blast Radius (ein Fehlaufruf könnte eine wichtige Aufgabe löschen). Seine Gegenmaßnahme, inspiriert vom MCP Server Portal von Cloudflare und den Claude-Connectors: jedes Tool auf Always allow / Ask for approval / Disable setzen — deaktivierte Tools gelangen nie in den Kontext, ein LLM-Klassifikator akzeptiert nur explizite Freigaben, und Standard = deny.

Was er nicht getan hat: keine Latenzoptimierung, keine Evals, keine optimistischen Aufrufe — „Ich habe nicht ein einziges Mal in den Code geschaut. Und wissen Sie was? Das ist ja gerade das Schöne daran.“ Das abschließende Staunen bezieht sich weniger auf die Fähigkeit als auf ihre Zugänglichkeit: 30 € und ein paar Cent Inferenzkosten für ein Objekt, das in natürlicher Sprache gesteuert wird.