
Sechzig Container auf einem Server
Eine Bare-Metal-Box führt Dutzende bis Hunderte von Hoody-Containern aus. KSM und BTRFS-Dedup machen die Marginalkosten nahezu null.
Dein Produkt fährt hunderte Agent-Sessions am Tag. Jede schreibt ihr Transkript an eine SQLite-URL. Um 6 Uhr POSTet ein Cron-Eintrag an einen Supervisor-Agenten mit einem Prompt: lies die Transkripte von gestern, bewerte sie, markiere die schlechtesten drei. Wenn du dich an den Schreibtisch setzt, ist das Zeugnis schon offen.
der Cron-Job ist der Supervisor · der Supervisor ist auch ein Agent
Ein einzelner 5-Feld-Cron-Eintrag POSTet an den Agent-Service mit einem Prompt. Der Supervisor-Container wacht auf, liest die SQLite-Traces von gestern, schreibt seine Bewertungen in dieselbe Datenbank zurück und beendet sich. Es gibt keinen Orchestrator, keinen Rubric-Service, keine Eval-Pipeline.
# POST /api/v1/cron/users/me/entries { "schedule": "0 6 * * *", "command": "curl -X POST $AGENT/api/v1/agent/tasks \ -d @grade.json", "comment": "nightly-supervisor" }
# grade.json — the supervisor's instructions { "description": "Lies die Transkripte von gestern aus /sqlite/sessions WHERE day = '2026-05-03'. Sample 50. Bewerte jedes nach Faktentreue, Tool-Korrektheit, Tone-Drift. Schreibe Findings in die Report-Tabelle. Markiere die schlechtesten drei für menschliche Prüfung.", "mode": "code" }
Die Cron-Zeile entscheidet WANN. Der Prompt entscheidet WAS. Der Supervisor-Container erledigt die Arbeit über Nacht in etwa 20 Minuten und verschwindet dann. Das benotete Sample liegt auf der Platte, bevor irgendwer am Schreibtisch ist.
AgentOps-Bildschirme zeigen dir Logs. LangSmith-Rubriken geben dir Scores. Ein benoteter Supervisor schließt die Schleife — er liest die Transkripte, entscheidet was schlecht ist und schreibt das Verdikt.
Nicht nur Metriken. Der Supervisor öffnet jede Session, liest Tool-Calls, prüft die Ground Truth, wägt den Ton ab. Eine Tabellen-Rubrik zählt; ein Agent-Supervisor urteilt.
Von 400 Runs sind 397 in Ordnung. Der Job des Supervisors ist es, die drei zu finden, die es nicht sind — namentlich, mit einer einzeiligen Notiz. Du scrollst kein Dashboard, du liest vier Zeilen.
Jede Note und jede Notiz landet in derselben SQLite-URL, die die Agenten benutzen. Der Supervisor von morgen vergleicht. Drift wird zu einer Query, nicht zu einem Bauchgefühl.
Drei Dinge passieren zwischen 6:00 und 6:21 Uhr. Keines davon braucht dich.
Der Supervisor-Agent fragt dieselbe SQLite-URL ab, in die die Worker geschrieben haben. SELECT * FROM sessions WHERE day = yesterday. Sample 50 zufällig.
Pro Session: Faktentreue, Tool-Call-Korrektheit, Tone-Drift, Halluzinations-Anzahl. Buchstabennote + einzeiliger Grund. Kosten: ein einzelner Agent-Task.
INSERT in die Report-Tabelle. Markiere die schlechtesten drei für menschliche Prüfung. Die Seite unter /grades/[date] ist nur ein SELECT auf diese Tabelle.
Um 6:21 Uhr liegt ein benotetes Sample auf der Platte und drei markierte Transkripte stehen in der Queue. Der Bewerter schaut den Agenten nicht zu — er läuft im Takt und urteilt über sie, wie eine Lehrerin, die Hausaufgaben über Nacht durchliest.
Zahlen verankert in den Cron-, Agent- und SQLite-Oberflächen. Keine erfundenen Benchmarks.
Fünf Felder entscheiden, wann der Supervisor aufwacht. Ändere den Schedule, ändere den Takt — stündlich, täglich, on-demand. Die Zeile ist der gesamte Scheduler.
Ein Supervisor-Task, der 50 Sessions sampelt, jede liest und Verdikte schreibt, wird typischerweise in unter 20 Minuten fertig. Der Container beendet sich, wenn der Task fertig ist.
Kein Airflow, kein Eval-Service, kein DAG-Scheduler. Der Cron-Eintrag ist eine Zeile in /etc/crontab. Das Verdikt ist eine Zeile in SQLite. Es gibt kein drittes Ding.
Standard-5-Feld-Cron-Ausdrücke gemäß Hoody Cron API. Die Länge der Supervisor-Session hängt von Sample-Größe und Rubrik-Komplexität ab. SQLite ist dieselbe hoody-sqlite-URL, in die die Worker-Agenten ohnehin schon schreiben — kein zweiter Store.
Der Cron-Job ist der Supervisor; der Supervisor ist auch ein Agent.
Der Standard-Stack für Agent-Qualität: schreibgeschützte Dashboards, manuelle Log-Reviews und Rubric-Tools, die scoren, aber nie handeln. Der Supervisor-Cron erledigt alle drei in zwanzig Minuten.
Hör auf, um 23 Uhr Logs zu lesen. Plan einen Agenten ein, der das über Nacht macht, und lies sein Zeugnis beim Kaffee.