Handbücher · Agent-Harnesses
Build: Wann du umsteigst
Lernziele
- Du benennst die vier Lücken zwischen deinem Harness im Kleinformat und dem Claude Agent SDK.
- Du ordnest jeder Lücke die Funktion zu, die sie fertig schließt.
- Du entscheidest für eine konkrete Aufgabe, ob du selbst baust oder einen Harness übernimmst.
Du besitzt jetzt rund 190 Zeilen, die tun, was jeder HarnessAlles, was festlegt, was der Agent erreichen darf: Tools, Berechtigungen, Sandbox, Zeitlimits und die Prüfung, bevor eine Aktion wirkt. Englisch für Geschirr oder Gestell.Im Glossar tut: Loop, Ausführung, Gate, Budget, Stopp. Der Bau war die eigentliche Lektion. Diese Seite zieht Bilanz: Was den Zeilen fehlt, was jede Lücke fertig schließt und nach welcher Regel du wählst.
Der Vergleich nutzt das Claude Agent SDK. Es ist die Maschinerie von Claude Code als Bibliothek und der naheliegende nächste Schritt nach diesem Build. Die Alternativen stehen in der Landschaft.
| Lücke | Dein Code | Claude Agent SDK |
|---|---|---|
| Kompaktierung | eine Zeile pro entfernter Nachricht | automatische Zusammenfassung, steuerbar über CLAUDE.md und Hooks |
| Parallele Tools | alles nacheinander | lesende Tools gleichzeitig, Subagents mit eigenem Kontext |
| Sandbox | Präfixvergleich und input() |
Regeln, Modi, Hooks, Bash in einer Sandbox des Betriebssystems |
| Fortsetzen | Verlauf in einer Python-Liste | Sessions zum Fortsetzen und Abzweigen, Memory aus .claude/ |
Lücke eins: Qualität der Kompaktierung
Dein Budget entfernt alte Runden und hinterlässt eine Zeile pro Nachricht. Dabei gehen Entscheidungen, Dateipfade und halb fertige Gedanken verloren, also genau das, was sich zu behalten lohnt. In Teil zwei brauchte der Agent bei engem Budget 20 statt sieben Aufrufe, weil er schon gelesene Dateien erneut las.
Das Agent SDK erbt die automatische Kompaktierung · engl. compactionDas Verkleinern des Gesprächsverlaufs während einer Session, etwa durch Abschneiden alter Runden oder durch eine laufende Zusammenfassung.Im Glossar von Claude Code. Nähert sich der Kontext seiner Grenze, fasst das SDK ältere Runden zusammen und behält laut Doku die jüngsten Runden und die wichtigsten Entscheidungen. Was die Zusammenfassung behalten soll, schreibst du in einen Abschnitt der CLAUDE.md. Ein PreCompact-HookEin Befehl, den der Harness bei einem festen Ereignis automatisch ausführt, etwa vor oder nach jedem Tool-Aufruf. Ein Hook vor dem Aufruf kann ihn blockieren und dem Modell den Grund melden.Im Glossar kann vorher das volle Transkript sichern. Warum eine gute Zusammenfassung so viel ausmacht, erklärt Context Engineering: Mit ihr setzt der Agent die Arbeit fort, mit einer dünnen Kurzfassung wiederholt er sie.
Bleibst du bei der Messages-API, schreibt die API die Zusammenfassung auf Wunsch selbst. Die Kompaktierung auf Anfrage und die Kompaktierung ab einer Token-Schwelle sind beide in Beta (Stand: Nov. 2026). Das ist der zweite Weg aus Teil zwei: Die Doku empfiehlt ihn für Verläufe, die alte Runden ersetzen und Thinking-Blöcke behalten sollen.
Lücke zwei: Tools parallel ausführen
Aktuelle Modelle schicken oft mehrere tool_use-Blöcke in einer Runde. Dein Loop arbeitet sie nacheinander ab. Das ist korrekt und bei langsamen Tools teuer: Drei Lesezugriffe mit je zehn Sekunden kosten zusammen dreißig.
Das SDK führt laut Doku lesende Tools wie Read, Glob und Grep gleichzeitig aus, dazu MCP-Tools, die als nur lesend markiert sind. Tools, die etwas verändern, wie Edit, Write und Bash, laufen der Reihe nach, damit sie sich nicht in die Quere kommen. Auf deinen Build übertragen hieße das: Mehrere read_file-Aufrufe dürften parallel laufen, run_command bliebe sequenziell.
Die größere Form derselben Idee sind Subagent · engl. subagentEin Agent, den ein anderer Agent für eine Teilaufgabe startet. Er arbeitet in einem eigenen Kontextfenster und gibt nur sein Ergebnis zurück.Im Glossar. Ein Subagent erledigt delegierte Arbeit in einem frischen Kontextfenster und gibt nur seinen Abschlussbericht an den Agenten zurück, der ihn gestartet hat.
Lücke drei: Sandbox
Teil zwei hat gezeigt, dass dein Gate undicht ist. Der Präfixvergleich lässt Ketten mit && und Umleitungen durch, und input() funktioniert nur, solange du zusiehst. Das SDK bringt das Berechtigungssystem mit, das Claude Code als Harness beschreibt:
- Regeln zum Erlauben, Nachfragen und Verbieten in den Einstellungen. Eine passende Verbotsregel greift laut Doku auch im Modus
bypassPermissionsund auch dann, wenn ein Hook den Aufruf erlaubt hat. - Modi von der Rückfrage bei jedem Schritt bis zur vollen Freigabe, dazu ein Callback für alles, was keine Regel abdeckt.
PreToolUse-Hooks, die per Code blockieren und jedes Mal gleich entscheiden.- Bash in einer Sandbox des Betriebssystems, die auch Programme einschränkt, die der Agent startet.
Die Regeln setzt Code durch. Ob du gerade am Terminal sitzt, spielt dafür keine Rolle.
Lücke vier: Fortsetzen
Brichst du deinen Agenten mitten in der Arbeit ab, ist alles weg, denn der Verlauf lag in einer Python-Liste. Das SDK speichert Sessions. Du setzt die letzte Session · engl. sessionEin einzelnes Gespräch mit einem Agenten: der Verlauf aller Nachrichten und Tool-Ergebnisse plus der Arbeitszustand. Endet das Gespräch, endet die Session.Im Glossar im selben Ordner fort, nimmst über ihre ID eine bestimmte wieder auf oder zweigst eine Session ab, um einen anderen Weg zu probieren, ohne das Original zu verlieren. Zusammen mit Memory-Dateien und Skills, die das SDK aus .claude/ lädt, kennt der Agent das Projekt schon zu Beginn jeder Session.
Die Entscheidungsregel
Baue selbst, wenn mindestens eins davon zutrifft:
- Du lernst. Das ist der Grund, aus dem dieses Handbuch existiert.
- Der Loop selbst ist dein Produkt, und du musst jede Zeile besitzen.
- Die Aufgabe ist eng: zwei oder drei Tools, kurze Sessions, ein Mensch sitzt dabei. Dann decken 190 Zeilen sie wirklich ab. Viele nützliche interne Werkzeuge leben gut in dieser Größe.
Übernimm einen Harness, sobald eins davon zutrifft:
- Der Agent läuft unbeaufsichtigt.
- Er liest fremde Inhalte: Webseiten, E-Mails, Code anderer Leute. Dann wird Prompt-Injection · engl. prompt injectionText, der sich als Anweisung an das Modell ausgibt und über eine Eingabe oder ein Tool-Ergebnis in den Kontext gelangt, etwa eine Webseite mit „Ignoriere deine Anweisungen“. Ein Agent mit echten Rechten, der solchen Text liest, ist angreifbar.Im Glossar zum Alltag.
- Sessions laufen so lange, dass die Qualität der Kompaktierung über den Erfolg entscheidet.
- Du merkst, dass du ernsthaft ein Berechtigungssystem baust.
Hinter jedem dieser Punkte stecken Monate unspektakulärer Arbeit, die Anthropic und andere schon erledigt und gegen Fehler getestet haben, die du noch nicht kennst. Nach unserer Einschätzung kostet ein Nachbau vor allem Geld und Zeit.
Selbst bauen oder übernehmen?
Ordne jedes Vorhaben der Entscheidungsregel zu.
Noch offen (6)
- Ein Skript, das du startest und beobachtest: Es liest Logs und schlägt eine Ursache vor.
- Ein Agent, der jede Nacht Pull Requests anderer Teams prüft und kommentiert.
- Ein Agent, der eingehende Kunden-E-Mails liest und Antworten entwirft.
- Du willst verstehen, wie ein Framework unter der Haube arbeitet.
- Ein Coding-Agent, der stundenlang an einer Migration arbeitet.
- Dein Startup verkauft einen eigenen Agenten-Loop mit besonderer Steuerung.
Selbst bauen reicht (0)
Harness übernehmen (0)
Mit den 190 Zeilen im Kopf liest du die Doku eines Frameworks als Liste von Entscheidungen. Du weißt, wie der Loop ohne alles aussieht, und erkennst, welche Schicht darum wirklich etwas leistet. Wähle aus der Landschaft, verbinde den Harness mit einer echten Aufgabe und lies weiter die Transkripte.
Merksätze
- Dein Harness hat vier Lücken: grobe Kompaktierung, keine parallelen Tools, keine Sandbox, kein Fortsetzen.
- Das Agent SDK fasst ältere Runden automatisch zusammen und lässt sich dabei über CLAUDE.md und Hooks steuern. Die Messages-API kann die Zusammenfassung in Beta selbst schreiben.
- Das SDK führt nur lesende Tools gleichzeitig aus.
Bash,EditundWritelaufen der Reihe nach. - Selbst bauen lohnt sich zum Lernen, wenn der Loop dein Produkt ist oder die Aufgabe eng ist und ein Mensch dabeisitzt.
- Unbeaufsichtigter Betrieb, fremde Inhalte, lange Sessions oder ein ernsthaftes Berechtigungssystem sind Gründe, einen Harness zu übernehmen.
Prüf dich selbst
Denkfrage
Warum entscheidet bei langen Sessions die Qualität der Kompaktierung über den Erfolg?
Nach einer Kompaktierung kennt der Agent nur noch die Zusammenfassung und die jüngsten Runden. Fehlen darin Entscheidungen und Dateipfade, beginnt er Arbeit von vorn, die schon erledigt war. Unser Build hat das gemessen: 20 statt sieben Aufrufe bei engem Budget.
Denkfrage
Ein Kollege will dein Gate mit einer besseren Allowlist retten. Was hältst du dagegen?
Eine Liste von Präfixen kann Ketten, Umleitungen und Optionen wie -delete nicht sicher erkennen. Dafür muss der Befehl zerlegt und am besten in einer Sandbox ausgeführt werden. Wer das ernsthaft baut, baut ein Berechtigungssystem, und genau dann ist es Zeit, einen fertigen Harness zu übernehmen.
Prüf dich selbst
Quellen
- Agent SDK overview
Was das SDK mitbringt, darunter Subagents, Skills und Memory aus .claude/.
- How the agent loop works
Automatische Kompaktierung und parallele Ausführung lesender Tools.
- Configure permissions
Regeln, Modi, Callback und Vorrang der Verbotsregeln.
- Work with sessions
Fortsetzen, Wiederaufnehmen über die ID und Abzweigen.
- Compaction overview
Kompaktierung auf dem Server für die Messages-API, auf Anfrage oder ab einer Schwelle.