Dev

Claude Haiku 5.5 als Subagent in Claude Code: Effort, die 100K-Grenze und die Kosten pro Aufgabe

Wie du einen Claude-Code-Subagent gezielt auf Haiku 5.5 legst, auf welches Effort-Level du ihn festsetzt, wie du ihn mit /autocompact unter dem Tarif für lange Prompts hältst und was du laut System Card prüfen solltest, bevor du ihm eine Tool-Schleife anvertraust.

Vorhin habe ich die Preislisten von Claude Haiku 5.5 und GPT-6 Luna verglichen: Bis 100.000 Tokens sind sie identisch, 0,10 $ pro Million Input, 0,50 $ Output. Seitdem kommen die ersten echten Workloads herein, und es geht dabei um die Rechnung, nicht um die Preisliste. Artificial Analysis zählt für Haiku 5.5 auf max etwa 162.000 Output-Tokens pro Aufgabe, ungefähr dreimal so viel wie bei Luna. Bei Vals kostet ein Durchlauf des Index 2,99 $ pro Test, bei Luna 0,43 $, beide auf max.

Gleicher Preis pro Token also, aber nicht gleicher Preis pro Aufgabe. Für den Einsatz, den Anthropic bewirbt, einen günstigen Subagent unter Opus 5.5 oder Sonnet 5.5, entscheiden drei Einstellungen, auf welcher Seite dieser Lücke du landest: das Effort-Level, wie schnell der Kontext des Subagents wächst und wann er kompaktiert. Keine davon steht auf der Preisliste, und die zweite verhält sich standardmäßig anders als bei Haiku 4.5.

Welche Aufrufe in Claude Code laufen wirklich auf Claude Haiku 5.5?

Weniger, als die Demos nach dem Muster „Opus plant, Haiku führt aus" vermuten lassen. Wie schon im letzten Beitrag erwähnt, bedeutet haiku nur auf der Anthropic API Haiku 5.5. Auf Amazon Bedrock, Google Cloud, Microsoft Foundry und Claude Platform on AWS zeigt der Alias laut Doku zur Modellkonfiguration weiterhin auf Haiku 4.5.

Der eingebaute Explore-Agent nutzt Haiku nicht mehr standardmäßig. Seit v2.1.198 steht im Changelog, Explore „erbt jetzt das Modell der Hauptsession (höchstens opus), statt auf haiku zu laufen". Unter einer Opus-Session ist also jede Codebase-Suche ein Opus-Aufruf. Der eingebaute Agent claude-code-guide und einige Hintergrundjobs wie automatische Titel nutzen weiterhin den Alias haiku. Alles andere läuft nur dort auf Haiku, wo du es hinlegst:

  • ein eigener Subagent mit model: haiku im Frontmatter;
  • CLAUDE_CODE_SUBAGENT_MODEL=haiku als Standard für Subagents, oder zusammen mit CLAUDE_CODE_SUBAGENT_MODEL_FORCE=1, um zu überschreiben, was jeder Agent anfordert (ab v2.1.257);
  • ein Projekt- oder User-Agent namens Explore mit model: haiku, den die Subagent-Doku vorschlägt, um die Exploration auf einem günstigeren Modell laufen zu lassen.

Zur Kontrolle zeigt /tasks in jeder Subagent-Zeile das Modell an, dazu das Effort-Level, wenn die Definition eines setzt. Subagent-Transkripte liegen unter ~/.claude/projects/<project>/<session-id>/subagents/, und jede Assistant-Zeile protokolliert ihr model. Zwei weitere Details aus der Doku: Eine auf Haiku 4.5 gespeicherte Session, die du mit haiku fortsetzt, kommt auf 5.5 zurück. Und in Claude Code lässt sich Thinking auf Haiku 5.5 nicht abschalten. Ein gespeichertes alwaysThinkingEnabled: false oder MAX_THINKING_TOKENS=0 „hat dort keine Wirkung".

Wie stark verändert das Effort-Level Claude Haiku 5.5?

Stark. Haiku 5.5 steht auf der API und in Claude Code standardmäßig auf medium, und jede Zahl in Anthropics Launch-Tabelle gilt für max. Die System Card sagt das auch: „Alle Ergebnisse für Haiku 5.5 verwenden die folgende Standardkonfiguration: Adaptive Thinking mit Effort max." Für zwei der Benchmarks nennt sie zusätzlich Werte auf medium. GDPval-AA fällt von 1620 auf 1277, „bei etwa einem Zehntel der Output-Tokens". AA-Briefcase fällt von 1578 auf 1372.

Artificial Analysis hat jedes Level gegen Luna laufen lassen:

Artificial Analysis, 7. Okt.Haiku 5.5 maxHaiku 5.5 highHaiku 5.5 medium (Standard)Luna maxLuna medium
Intelligence Index4338343830
Zeit bis zum ersten Antwort-Token323 s26 s12,6 s109 snicht angegeben

Bei gleichem Score schließt sich die Token-Lücke größtenteils. Laut Artificial Analysis erreicht Haiku 5.5 auf high „38 mit ~55k Tokens pro Aufgabe gegenüber 38 mit ~50k für Luna (max)", und der Schritt von xhigh auf max „bringt 2 Punkte für ~1,8x die Tokens". Die Zeit bis zum ersten Token enthält dort das Thinking. Deshalb braucht das Modell, das Anthropic sein schnellstes nennt, auf max etwa fünf Minuten, bis es zu antworten beginnt.

Auf den Aufgaben, die Anthropic berichtet, reagiert Haiku 5.5 außerdem empfindlicher auf Effort als seine größeren Geschwister. Bei PhysicianBench kommt es auf low auf 17,8 %, auf medium auf 25,2 % und auf max auf 43,0 %, und die Zeit pro Aufgabe steigt „von 48 Sekunden auf low … auf etwa 11 Minuten auf max". Bei HealthBench Professional, wo es von 57,9 % auf low auf 64,8 % auf max steigt, merkt die Card an, dass Sonnet, Opus und Fable „über die fünf Level jeweils um weniger als 2 Punkte schwankten". Bei diesem Modell entscheidet das Effort-Level, wie viel Fähigkeit du bezahlst.

Der Prompting-Guide listet auf, was am günstigen Ende schiefgeht. Auf low „überspringt das Modell eher eine Suche, hört früh auf oder lässt eine Prüfung aus". Auf low und medium „meldet es eine Codeänderung manchmal als erledigt, ohne eine Prüfung laufen zu lassen", und Anthropic liefert einen Absatz Anweisungen dagegen mit. Die Anweisung, direkt zu antworten, „hat es nicht vom Denken abgehalten". Und wer den Effort-Wert auf oberster Ebene zwischen Requests ändert, invalidiert den Cache für die Nachrichten der Konversation, einer der unauffälligeren Wege, einen Prompt-Cache zu brechen. Eine Beta für Effort pro Nachricht vermeidet das.

In Claude Code setzt du es pro Subagent mit effort: im Frontmatter fest. Das überschreibt das Level der Session, aber nicht CLAUDE_CODE_EFFORT_LEVEL, das alles schlägt außer einer Obergrenze per maxEffortLevel. Ohne diese Angabe läuft der Subagent auf dem Level, das die Session gerade nutzt.

Warum überschreitet ein Subagent mit Claude Haiku 5.5 so schnell 100K Tokens?

Vor allem, weil er jetzt bei jedem Schritt denkt. Der Migrationsleitfaden sagt es klar: „Adaptive Thinking ist standardmäßig an", und er rät zu einem niedrigeren Effort-Level „dort, wo Claude Haiku 4.5 ohne Thinking lief". In einer Tool-Schleife gehen die Thinking-Blöcke mit jedem Tool-Ergebnis zurück. Ein Subagent, der vor jedem Aufruf nachdenkt, hängt dieses Nachdenken also bei jedem Schritt an seinen Kontext. In Claude Code kannst du das nicht abschalten, nur herunterdrehen.

Über mehrere Turns hinweg behält Haiku 5.5 außerdem, was Haiku 4.5 verworfen hat. Die Doku zu Extended Thinking ordnet Haiku 5.5 der Gruppe „Alle vorherigen Turns behalten" zu und Haiku 4.5 der Gruppe „Nur den letzten Turn behalten", und sie sagt: „Behaltene Thinking-Blöcke zählen wie jeder andere Gesprächsverlauf als Input." Das betrifft einen Subagent, der in einer Session mehrere Anweisungen bekommt, oder eine Konversation, die du fortsetzt. Bei den meisten Modellen ist das ein fairer Tausch gegen Cache-Treffer. Bei dem einen Modell, das nach Prompt-Länge abgerechnet wird, kommt es obendrauf. Auf der API kann die Context-Editing-Strategie clear_thinking_20251015 das ändern, aber nur mit einer expliziten keep-Einstellung, weil ihr Standard dem Modell folgt.

Den Rest liefert der Tokenizer. Anthropic beziffert die Änderung gegenüber Haiku 4.5 auf etwa 30 % mehr Tokens für denselben Text, und Simon Willison hat bei einem langen Prompt etwa 1,25x gemessen. Ein Kommentator auf Hacker News setzt das Verhältnis zu Luna bei 1,5x an. Das ist eine Behauptung, keine veröffentlichte Messung.

Dann der Harness. Ein Reddit-Nutzer hat gezählt, dass eine frische Claude-Code-Hauptsession auf Haiku vor jeder Arbeit bei etwa 66.000 Tokens steht, das meiste davon Tool- und MCP-Definitionen. Ein Subagent bekommt eigene, kürzere Basisanweisungen, aber die Tool-Definitionen, die er lädt, kommen mit. Ein anderer Nutzer hat einen Haiku-Subagent unter Opus verfolgt: Er überschritt 100K etwa beim zwanzigsten Aufruf, und 145 seiner 164 Aufrufe liefen oberhalb der Grenze. Das sind Berichte, und sie passen zum Mechanismus. Laut Anthropic lagen „rund 90 %" des Traffics des vorherigen Haiku unter 100K. Einige Kommentatoren auf Hacker News meinen, das liege daran, dass kaum jemand Haiku 4.5 überhaupt als Agent betrieben hat.

Offen geblieben war im letzten Beitrag, ob gecachte Tokens zu den 100K zählen. Die Preisseite führt einen eigenen Cache-Read-Preis für „Prompts über 100.000 Tokens", 0,05 $ pro Million gegenüber 0,01 $, und die Berichte oben lesen sich so, als zähle gecachter Kontext mit. Wie die Prompt-Länge definiert ist, sagt die Doku weiterhin nicht. Und standardmäßig kompaktiert Claude Code eine Haiku-5.5-Session erst bei etwa 967K Tokens. Ohne Änderung läuft der größte Teil einer langen Session also zum höheren Tarif.

Wie hältst du einen Subagent mit Claude Haiku 5.5 unter der 100K-Grenze?

Lydia Hallie von Anthropic hat die Lösung am Launch-Tag gepostet:

text
If you're on API billing, you can set Haiku 5.5's autocompact window to 100K
so you stay in the cheaper token pricing tier! It's saved per model so this
only applies to Haiku (incl. subagents)
 
> /model haiku
> /autocompact 100k

/model haiku stellt auch deine Hauptsession um, also wechsle danach zurück auf dein übliches Modell. Das Fenster wird unter Haiku in modelSettings gespeichert, Opus und Sonnet behalten ihre eigenen Werte. CLAUDE_CODE_AUTO_COMPACT_WINDOW überschreibt es, falls gesetzt, für jedes Modell. Das solltest du in CI prüfen.

Der Befehl akzeptiert Fenster „von 100K bis 1M Tokens", die niedrigste Einstellung liegt also genau auf der Preisgrenze. Ob die Kompaktierung genau am Fenster auslöst oder etwas darunter, ist nicht dokumentiert. Für mehr Luft löst CLAUDE_AUTOCOMPACT_PCT_OVERRIDE die Kompaktierung bei einem niedrigeren Prozentsatz des Fensters aus und gilt laut Doku „sowohl für Hauptkonversationen als auch für Subagents". Ein kleines Fenster lässt außerdem wenig Platz, wenn die Tool-Definitionen ihren Teil genommen haben. Claude Code bricht mit einem Fehler ab, wenn sich der Kontext nach drei Kompaktierungen in Folge sofort wieder füllt. Ein Subagent mit großer Tool-Liste kann also daran scheitern, statt fertig zu werden.

Über die Kompaktierung hinaus:

  • Effort nach Aufgabe wählen. Für Klassifikation, Routing und Extraktion ist low genau das, wofür die Preisliste gemacht ist. Ein Nutzer berichtete von 0,00005 $ pro Routing-Aufruf auf low und, bei einer anderen Aufgabe (Zusammenfassungen), von 64 % des Outputs, die bei Standard-Effort ins Thinking gingen. Für Agent-Schleifen startet der Prompting-Guide bei medium. Wenn du bei xhigh oder max landest, schlägt der Guide vor, dieselben Evals auf Sonnet 5.5 laufen zu lassen und die Kosten zu vergleichen.
  • Kürzen, was der Subagent lädt. Geladene Tool-Definitionen sind Input bei jedem Aufruf. Claude Code lädt MCP-Tool-Schemas standardmäßig verzögert, erst bei Bedarf. Eine Subagent-Definition mit kurzer Tool-Liste startet trotzdem weiter weg von der Grenze.
  • Auf der API über Thinking entscheiden. Außerhalb von Claude Code akzeptiert Haiku 5.5 thinking: {"type": "disabled"} auf low, medium und high. Der Prompting-Guide warnt, dass es ohne Thinking „einen nötigen Tool-Aufruf überspringen könnte", wenn du zusätzlich strukturierte JSON-Ausgabe anforderst.

Was sagt die System Card zu Claude Haiku 5.5 als Subagent?

Die System Card enthält einiges, das du wissen solltest, bevor du Haiku 5.5 eine Tool-Schleife gibst.

Es gibt kein Fallback-Modell. Wenn die Sicherheitsklassifikatoren einen Request blockieren, liefert die API stop_reason: "refusal", und laut Prompting-Guide gilt: „Denselben Request erneut an Claude Haiku 5.5 zu senden, liefert meist eine weitere Verweigerung." Derselbe Guide sagt, dass diese Verweigerungen für alle neu sind, die von Haiku 4.5 umsteigen. Die Card ergänzt, Haiku 5.5 habe „in unserem automatisierten Verhaltensaudit häufiger übermäßig verweigert als jedes andere getestete Modell". Artificial Analysis hat unabhängig dasselbe gesehen: Ein Verweigerungsproblem vor dem Release hat seinen AutomationBench-Score gedrückt, ein neuer Durchlauf ist geplant. Ein Orchestrator sollte eine Verweigerung des Subagents als Routing-Entscheidung behandeln, nicht als Grund für einen Retry.

Zwei Schwächen stehen in Anthropics eigener Zusammenfassung. Die eine ist eine Regression: „Haiku 5.5 hat in 17 % der Fälle eine geleakte Antwort genutzt, ohne es dem Nutzer zu sagen, eine Regression gegenüber Claude Haiku 4.5 mit 2 %." Die andere ist nicht neu: Es „halluzinierte mehr als andere aktuelle Modelle und etwa so viel wie Claude Haiku 4.5". Zusammen mit dem Hinweis im Prompting-Guide, dass es Arbeit ohne Prüfung als erledigt meldet, spricht beides dafür, dass der Parent alles nachprüft, was Haiku als fertig meldet.

Die Resistenz gegen Prompt Injection hat sich in die andere Richtung bewegt, und zwar deutlich. Im Gray-Swan-Benchmark mit 15 Versuchen fiel die Erfolgsquote von Angriffen von 83,2 % bei Haiku 4.5 auf 7,1 %. Die Schwachstelle ist GUI-Computer-Use mit 24,4 %. Für Orchestratoren hat das einen Nebeneffekt: Der Prompting-Guide warnt, dass eine User-Nachricht, die in einem tool_result-Block weitergereicht wird, „als nicht vertrauenswürdiger Text" behandelt und ignoriert werden kann. Wenn dein Parent-Agent User-Anweisungen über Tool-Ergebnisse weiterleitet, schick sie stattdessen als User-Turns.

Wann ist Claude Haiku 5.5 der richtige Subagent?

Bisher teilt sich die Evidenz nach Art der Aufgabe. Für kurze Single-Turn-Arbeit in großer Menge (Klassifikation, Routing, Extraktion, eine Zusammenfassung, die in einen Aufruf passt) liefert Haiku 5.5, was die Preisliste verspricht, und das Effort-Level ist das Wichtigste, was du richtig setzen musst. Bei langen Tool-Schleifen tauschst du Qualität gegen Kosten. Auf Bug Hunt Bench hat Haiku 5.5 auf max im Schnitt 21,5 von 105 eingebauten Bugs behoben, geschätzt für 5,83 $, gegenüber 18,3 für 0,52 $ bei Luna und 36 für 35 $ bei Opus 5.5 auf xhigh. Das sind Schätzungen nach Listenpreis aus unterschiedlichen Harnesses, und Lunas Zahl lässt den eigenen Long-Context-Aufschlag weg. Lies den Kostenabstand also als Größenordnung, nicht als gemessenes Verhältnis.

Bevor du einen Subagent auf Haiku 5.5 umstellst, setz sein Effort-Level fest, stell /autocompact 100k ein und rechne eine echte Aufgabe von Anfang bis Ende durch. Wenn die Rechnung zur Preisliste passt, gut. Wenn nicht, zeigt das Transkript, welche der drei Einstellungen das verursacht hat.

Diskussion

Hier gibt es keine Kommentarspalte. Diskussionen laufen auf X.

Max Nardit

Max Nardit

@mnardit

Weitere Artikel

Claude Haiku 5.5 und GPT-6 Luna kosten gleich viel, bis der Prompt lang wird

Identische Preislisten, zwei verschiedene Kanten. Bei langen Prompts trennen sich die Modelle: Das eine rechnet über 100.000 Tokens den ganzen Request zum höheren Tarif ab, das andere erst über 272.000. Für einen Subagent, der Dateien liest, entscheidet diese Grenze die Rechnung stärker als der Tarif.

Claude-Code-Permission-Regeln: zehn Umgehungen, geschlossen in drei Releases

Die Hälfte der zehn Fixes betrifft Garantien, die die Dokumentation gibt, nicht die Grenzen, die sie ohnehin einräumt. Zwei weitere sind Komponenten, die offen versagt haben, und für ein PreToolUse-Hook-Skript, das abstürzt oder hängt, ist offenes Versagen weiterhin das dokumentierte Verhalten.