Engineering · Produkt

Ein Register, zwei Oberflächen: wie App und Agent im Gleichschritt bleiben

Jede LVLZ-Funktion wird einmal definiert und wird zu einem Werkzeug des Agenten, einem API-Endpunkt und einer Zeile auf unserer Website. Warum diese Parität zählt und wie wir sie durchsetzen.

Das LVLZ-Team · · 2 Min. Lesezeit

LVLZ hat zwei Zugänge. Du kannst deinem Agenten schreiben oder den Workspace in der Web-App öffnen. Wir haben früh eine Regel aufgestellt: Alles, was in dem einen geht, geht auch im anderen. Dieser Beitrag erklärt, wie wir dieses Versprechen halten, ohne uns auf Gedächtnis und gute Absichten zu verlassen.

Warum Parität zählt

Wenn die App ein Projekt archivieren kann, der Agent aber nicht, lernst du, den Agenten nicht zu fragen. Wenn der Agent eine Routine einrichten kann, die App sie aber nicht anzeigt, hörst du auf, der App zu vertrauen. Jede Lücke bringt dir bei, das Produkt zu umgehen. Parität heißt, dass du dich nie fragen musst, welche Seite was kann.

Eine Definition pro Funktion

Jede Operation, etwa eine Aufgabe anlegen, eine E-Mail senden oder eine Browser-Aufgabe starten, wird einmal in einem gemeinsamen Register definiert. Eine Definition enthält:

  • einen stabilen Schlüssel, etwa task.create,
  • ein typisiertes Schema für ihre Eingabe,
  • wie sie abgesichert ist (ob sie deine Freigabe braucht),
  • welche Oberflächen sie anbieten,
  • ein Beispiel dafür, wie du sie in einfachen Worten anfragen würdest.

Aus dieser einen Definition erzeugen wir das Werkzeug, das der Agent aufruft, den HTTP-Endpunkt, den die App aufruft, und den Eintrag in einem Manifest. Derselbe Handler bedient Agent und App, das Verhalten ist also schon durch die Konstruktion identisch.

Eine Prüfung, die den Build scheitern lässt

Definitionen allein garantieren noch keine Parität, denn jemand muss jede Seite noch umsetzen. Deshalb führt unser Build eine Paritätsprüfung aus. Ist eine Funktion als live markiert, aber eine Seite hat eine ihrer Operationen nicht umgesetzt, scheitert der Build. Ist eine Operation überall umgesetzt, aber noch als „bald“ markiert, scheitert der Build ebenfalls, damit der öffentliche Status der Realität nicht hinterherhinkt.

Die Website liest dieselbe Liste

Das Manifest speist auch diese Website. Die Funktionsseite und jede Seite darunter listen jede Funktion mit ihrem Status, Live, Bald oder Später, und wo sie läuft: in der App oder auf WhatsApp. Wenn wir etwas ausliefern, aktualisiert sich die Seite beim nächsten Deployment. Wenn wir schreiben, dass etwas kommt, dann weil das Register es sagt.

Was das für dich bedeutet

Du lernst LVLZ einmal. Was du in der App findest, kannst du per Nachricht anfragen, und was der Agent tut, findest du in der App. Und wenn du unsere Funktionsliste liest, liest du den Code.

Weiterlesen

Dein Agent, nur eine Nachricht entfernt

Ein Abo für deinen Agenten und alle Systeme, mit denen er arbeitet. Schick eine WhatsApp-Nachricht, und er richtet deinen Workspace ein, während ihr schreibt.

Frag eine KI nach LVLZ