Zum Inhalt springen
use-cases / tail-your-agent-on-the-train / hero
PIPE · TAIL · NOTIFY

Im Zug deinen Agent tailen, gepingt werden, wenn er ankommt

Du hast einen vierzigminütigen Agent gestartet, bevor du das Büro verlassen hast. Jetzt sitzt du im Zug. Der Agent streamt seinen Trace an einen Pipe-Pfad; du curlst dieselbe URL vom Handy aus und schaust State-Messages vorbeiziehen. Wenn die Schleife endet, buzzt dich hoody-notifications. Zwei URLs und ein Buzz — kein SDK, kein Dashboard, kein Polling.

Pipe-API lesen
use-cases / tail-your-agent-on-the-train / surfaces

Ein Handy, zwei Oberflächen

Live-Tail oben, Push-Benachrichtigung unten — gleiches Handy, gleicher Agent. Der Trace ist der laufende Monolog, auf den du kurz schaust; die Benachrichtigung ist der Punkt am Ende. Du musst dich nicht entscheiden, was du verkabeln willst: beides kommt vom Agent, beides landet auf dem Gerät, das schon in deiner Tasche ist.

01 · LIVE-TAIL

Der Trace, Zeichen für Zeichen

Die Schleife deines Agents pipet jedes Event mit PUT in einen Pfad. Vom Zug aus machst du GET auf denselben Pfad in einer Terminal-App. Zeilen landen, sobald sie passieren — kein 5-Sekunden-Refresh, kein "zuletzt aktualisiert"-Stempel. Du schaust kurz auf den Bildschirm, siehst, dass der Agent lebt, und steckst das Handy weg.

[think] Plan: dump → diff → write[tool_use] sql.exec("SELECT …")[result] 412 Zeilen · 88 ms
02 · PUSH

Der Buzz, auf dem Weg zu deiner Haltestelle

Wenn die äußere Schleife endet, ruft der letzte Call des Agents hoody-notifications mit einer einzeiligen Zusammenfassung auf. Dein Handy vibriert. Du entsperrst nicht — du liest den Banner und weißt, dass der Run abgeschlossen ist, bevor du in der nächsten Station einläufst.

AGENT · billing-reconcile-7Abgleich abgeschlossen · 412 Zeilen · 0 Fehlerabgeschlossen in 41:08 · 08:55

Hoody Pipe trägt den Live-Tail; hoody-notifications trägt den Buzz. Der Agent behandelt sie wie jeden anderen HTTP-Call — ein PUT und ein POST, kein SDK dazwischen.

use-cases / tail-your-agent-on-the-train / wire

Drei Calls vom Agent. Keiner von deinem Laptop.

Der Agent läuft auf einem Server, den du vor dem Losfahren aufgesetzt hast. Während du unterwegs bist, ist dein Handy der einzige Client in der Schleife. Der Agent macht die ganze Arbeit; das Handy macht das ganze Zuschauen.

agent.loop · pipe + notify
01 · AGENTPUT jeden Schritt in einen Pipe-Pfad

In der Schleife wird jedes Event — think, tool_use, result — auf einen einzigen Pfad gepipet. Die Pipe streamt an wen auch immer liest; wenn noch niemand liest, hält der Pfad bis zu fünf Minuten offen.

PUT https://agent-pipe.…hoody.com/api/v1/pipe/agent-trace
02 · HANDYGET denselben Pfad aus dem Zug

Öffne ein Terminal auf dem Handy. curl -N auf den Pfad. Der Trace wird ausgegeben, sobald er landet — keine SSE-Verkabelung, kein Broker, keine App zu installieren. Schließ den Tab, wenn du nicht mehr hinschauen willst.

$ curl -N https://agent-pipe.…hoody.com/api/v1/pipe/agent-trace
03 · NOTIFYDer letzte Schritt des Agents ist ein POST an /notify

Wenn die äußere Schleife zurückkehrt, postet der Agent eine einzeilige Zusammenfassung an hoody-notifications. Dein Handy bekommt von dort den System-Push — gleicher Buzz wie eine Kalender-Erinnerung, keine App nötig.

POST /notify ["summary":"billing-reconcile-7","body":"completed in 41:08"]

Zwei HTTP-Pfade und ein dritter für den Buzz. Der Agent weiß nicht, dass dein Handy existiert; er spricht einfach HTTP. Das Handy weiß nichts vom Container des Agents; es öffnet einfach eine URL.

use-cases / tail-your-agent-on-the-train / anatomy

Anatomie eines Blicks

Du liest nicht jedes Wort. Du scannst drei Tokens: einen Gedanken, einen Call, ein Result. Wenn sie sich bewegen, lebt der Agent. Wenn sie stoppen, schaust du auf die Zeit beim nächsten Push.

01 · BLAU

[think] — was das Modell plant

Warum der Agent dieses Tool gewählt hat, was er zurückerwartet, wo es verzweigen könnte. Diese im Zug zu lesen heißt, die Gedanken des Agents in Echtzeit zu lesen — eine Zeile pro Reasoning-Schritt.

[think] Rechnungen für Juli abgleichen
02 · NEUTRAL

[tool_use] — der Call, den er gerade abgefeuert hat

Die exakte Funktion und die Argumente, die der Agent aufrufen wollte. Eine Zeile pro Call, in der Reihenfolge, in der sie abgefeuert wurden. Keine SDK-Abstraktion, keine opake ID — nur der Wire-Level-Request.

[tool_use] sql.exec("SELECT …")
03 · GRÜN

[result] — was zurückkam, und der Buzz

Zeilen-Zähler, Dauern, Statuscodes — die Dinge, über die die nächste [think]-Zeile nachdenken wird. Wenn die äußere Schleife endet, landet das letzte Result auf der Leitung und hoody-notifications buzzt das Handy in deiner Tasche.

[result] 412 Zeilen · 88 ms
use-cases / tail-your-agent-on-the-train / punchline

Dein Handy ist die Statusleiste des Agents.

Kein Dashboard. Keine App. Kein SDK auf dem Gerät. Der Agent läuft auf einem Server, der Status lebt auf deinem Handy, und das Einzige dazwischen ist HTTP. Du kannst Züge wechseln, den Provider wechseln, zwei Stationen lang Empfang verlieren — wenn du wieder verbindest, druckt die nächste [result]-Zeile weiter.

  • kein Dashboard
  • keine App
  • kein Polling
  • nur HTTP
Pipe-API lesen
use-cases / tail-your-agent-on-the-train / replaces

Was das ersetzt

Einen lang laufenden Agent zu beobachten hieß historisch: ein SaaS, ein Dashboard-Tab oder ein eigener Webhook + Bot. Nichts davon überlebt die Frage "was, wenn ich es einfach vom Handy aus curle?".

  • AgentOps / LangSmith DashboardsEine SaaS-Schicht, um deine eigenen Logs zu lesen
  • Datadog APM für AgentsFür Services gebaut, unhandlich für Schleifen
  • Eigene Agent-WebhooksGlue, die du einmal schreibst, ewig debuggst
  • Pushover-AlertsNoch ein Account, noch ein API-Key
  • Telegram-Status-BotsEin Bot pro Projekt · Token-Verfall
  • /status alle 5 Sekunden pollenLatenz, die du erfunden hast · Akku, den du verbrennst
use-cases / tail-your-agent-on-the-train / cta

Pipe den Trace, poste den Buzz. Dein Handy ist die Statusleiste des Agents — keine App nötig.

Pipe-API lesen
use-cases / tail-your-agent-on-the-train / related

Lies die anderen