Aufwendige Harnesses machen Coding-Agenten teurer, aber nicht besser

1 week ago 11

Jeden Tag erscheinen neue Harnesses, Anbieter werben mit höheren Erfolgsquoten, und Bestenlisten mischen Harnesses beliebig. Zwei Forschende von der Shandong University haben in einem Preprint gemessen, wie viel der Harness bei festgehaltenem Modell tatsächlich ausmacht. Der Titel nimmt das Ergebnis vorweg: "Was bringt ein Harness? Vor allem Token."

Frühere Vergleiche haben den Zufall mitgemessen

Bisherige Studien berichten Unterschiede von mehr als 20 Punkten zwischen Harnesses. Zhipu AI etwa wirbt für seinen eigenen Harness mit 2,4 Punkten Vorsprung vor Claude Code. Solche Zahlen beruhen laut den Autoren fast immer auf einem einzigen Durchlauf. Schon reine Wiederholungen derselben Konfiguration streuen auf dem Programmier-Benchmark SWE-bench Verified um bis zu sechs Punkte. Zudem seien die Harnesses oft unterschiedlich gut an den Benchmark angebunden.

Liu und Han schickten deshalb fünf Modelle durch drei Harnesses in der ausgelieferten Fassung: Claude Code, OpenCode und mini-SWE-agent. Letzterer gibt dem Modell nur ein Bash-Werkzeug und verzichtet auf Kontextmanagement. Claude Code und OpenCode bieten spezialisierte Datei- und Suchwerkzeuge, lange System-Prompts und eine automatische Komprimierung des Verlaufs.

Als Modelle dienten Qwen3.6, Qwen3.8, Deepseek-V4-Flash, GLM-5.3-Flash und HY4-Preview. Claude Opus 5 lief als Referenz nur in Claude Code. Getestet wurde auf den 45 schwersten Aufgaben von SWE-bench Verified und einem Pool von 447 weiteren. Mehrere Konfigurationen liefen doppelt, um das Rauschen zu messen.

Alle Läufe fanden offline statt. In frühen Durchläufen mit Webzugang hatten sich 71 Prozent der Versuche von Deepseek- und Qwen-Modellen den originalen Fix von GitHub geholt. Claude-Modelle taten das fast nie. Die Forscher verwarfen diese Ergebnisse, wollen damit aber keinem Anbieter unterstellen, mit Testdaten trainiert zu haben.

Harness-Wechsel und Wiederholung bewegen gleich viel

Claude Code und mini-SWE-agent, der schwerste und der leichteste Harness, liegen auf dem großen Pool bei beiden getesteten Modellen weniger als zwei Punkte auseinander. Statistisch gelten sie innerhalb von fünf Punkten als gleichwertig.

Zweiteiliges Diagramm. Links ein Streudiagramm mit Input-Tokens pro Aufgabe gegen die Erfolgsquote auf 45 schweren SWE-bench-Aufgaben für sechs Modelle in Claude Code, mini-SWE-agent und OpenCode. Rechts paarweise Differenzen der Erfolgsquote zwischen den Harnesses mit 95-Prozent-Konfidenzintervallen.Pro Modell verbrauchen die drei Harnesses zwei- bis dreimal so viele Tokens wie das sparsamste, die Erfolgsquoten liegen aber innerhalb der Messunsicherheit. Signifikant ist nur der Rückstand von OpenCode auf dem großen Aufgabenpool. | Bild: Liu & Han

Auf den schweren Aufgaben, bei denen die Forscher den größten Effekt erwartet hatten, trennen die Harnesses je Modell zwei bis fünf Aufgaben. Eine bloße Wiederholung verschiebt das Ergebnis um bis zu drei. Mal führt mini-SWE-agent, mal Claude Code.

Zwischen zwei Wiederholungen kippt im Median das Ergebnis bei 13 Prozent der Aufgaben, zwischen zwei Harnesses ebenfalls bei 13 Prozent. Ein Modellwechsel kommt auf 22 Prozent. Welche Aufgaben ein Harness gewinnt, ändert sich zudem von Lauf zu Lauf. Die Verteilung entspricht einem Münzwurf. Die Harness-Lücke verhalte sich "wie ein neuer Zufallswert aus demselben Rauschen", schreiben die Autoren.

 Wiederholung mit demselben Harness, Wechsel des Harness und Wechsel des Modells. Die Mediane liegen bei 13, 13 und 22 Prozent.Ein Harness-Wechsel verändert die Ergebnisse auf Aufgabenebene so stark wie eine bloße Wiederholung des Durchlaufs, ein Modellwechsel deutlich stärker. | Bild: Liu & Han

Mit 45 Aufgaben entdeckt ein solcher Vergleich selbst eine Lücke von rund 13 Punkten nur in der Hälfte der Fälle. Mit 447 Aufgaben lassen sich etwa fünf Punkte zuverlässig auflösen. Zhipus 2,4 Punkte liegen unter beiden Schwellen, ebenso viele andere beworbene Verbesserungen.

Alle Harnesses liegen gleichauf, nur OpenCode fällt zurück

Der einzige messbare Harness-Effekt ist ein konstanter Rückstand von OpenCode. Auf dem großen Aufgabenpool liegt es bis zu neun Punkte hinter den beiden anderen Harnesses. Etwa die Hälfte davon geht auf ein Ausgabelimit zurück: Überschreitet das Modell beim Reasoning mitten in einem Schritt dieses Limit, fordert Claude Code es zum Weitermachen auf. OpenCode lässt den Schritt an dieser Stelle enden, und der Versuch bleibt meist ergebnislos.

Ein Fortsetzungs-Prompt nach dem Vorbild von Claude Code brachte in OpenCode keinen messbaren Gewinn, weil das ausufernde Reasoning bei Wiederholungen derselben Aufgabe nur selten erneut auftritt. Für den Rest der Lücke haben die Autoren keine Erklärung, nur eine Beobachtung: Unter OpenCode hört das Modell deutlich früher auf zu arbeiten. Auf den lokal betriebenen Modellen hatte OpenCode außerdem ein wesentlich knapperes Zeitlimit als Claude Code, was die Autoren als unkontrollierten Faktor ausweisen.

mini-SWE-agent läuft mangels Kontextmanagement ins Kontextfenster, vorwiegend bei Aufgaben, an denen auch die anderen Harnesses scheitern. OpenCodes Suchwerkzeuge laden beim ersten Aufruf eine Binärdatei herunter und versagen offline.

Gestapeltes Balkendiagramm zeigt für jedes Modell und jedes Harness den Anteil bestandener Aufgaben, regulärer Fehlschläge, Output-Token-Abbrüche, Kontextüberläufe, Schritt- oder Zeitlimits und Infrastrukturausfälle, getrennt nach hard45 und pool447.Bei OpenCode mit Qwen3.8 endet ein Teil der Durchläufe am Output-Limit, mini-SWE-agent ohne Kontextverwaltung läuft dagegen häufiger ins Kontextfenster. | Bild: Liu & Han

Die Präambel bestimmt die Rechnung

Bei gleichem Modell, gleichen Aufgaben und gleicher Preisliste kostet eine Aufgabe je nach Harness bis zu dreimal so viel. Die Werkzeugausgaben erklären das kaum, pro Aufruf liefern alle drei Harnesses ähnlich viel Text zurück.

Den Unterschied machen der System-Prompt und die Tool-Beschreibungen. Sie werden bei jedem Schritt erneut mitgeschickt und umfassen rund 16.600 Token bei Claude Code, etwa 7.000 bei OpenCode und unter 1.000 bei mini-SWE-agent. Zudem behält Claude Code nach der Rekonstruktion der Forscher das Reasoning des Modells im Verlauf.

Zwei Liniendiagramme zeigen die Input-Tokens pro Modellaufruf über die Agentenschritte für GLM-5.3-Flash und DeepSeek-V4-Flash, mit Medianlinien für Claude Code, mini-SWE-agent und OpenCode.Claude Code startet wegen seines rund 16.600 Token langen System-Prompts samt Tool-Definitionen deutlich höher, danach wachsen die Kontexte aller drei Harnesses ähnlich schnell. | Bild: Liu & Han

Danach wächst der Kontext in allen Harnesses ähnlich schnell. Der erste Aufruf legt die Rechnung fest, die Zahl der Schritte multipliziert sie. Welcher Faktor überwiegt, hängt vom Modell ab: Bei GLM-5.3-Flash kostet Claude Code fast doppelt so viel wie mini-SWE-agent. Bei Deepseek-V4-Flash braucht mini-SWE-agent so viele zusätzliche Schritte, dass beide gleichauf liegen. Niedrige Preise für gecachte Token dämpfen die Unterschiede, an der Reihenfolge ändern sie aber wenig.

Vier Balkendiagramme zeigen Tokens und Kosten pro Durchlauf in Yuan für Claude Code, mini-SWE-agent und OpenCode auf DeepSeek-V4-Flash und GLM-5.3-Flash,Mit GLM-5.3-Flash kostet ein Durchlauf in Claude Code 1,81 Yuan, in OpenCode 0,56 Yuan, bei DeepSeek-V4-Flash liegen Claude Code und mini-SWE-agent dagegen gleichauf. | Bild: Liu & Han

Kein Heimvorteil, offene Fragen beim Thinking

Deepseeks eigener Harness schneidet mit dem eigenen Modell genauso ab wie die Konkurrenz, kostet aber am meisten. Claude Opus 5 lieferte identische Ergebnisse, auch nachdem die Forscher Werkzeuge aus Claude Code entfernt hatten. Eine ein Jahr alte Version löst ähnlich viele Aufgaben für weniger als die Hälfte der Kosten, weil Extended Thinking dort noch nicht standardmäßig aktiv war.

Beim Thinking fanden die Forscher die einzige Wechselwirkung. Ohne Thinking verliert mini-SWE-agent mit Qwen3.6 elf Punkte, Claude Code und OpenCode bewegen sich nur im Rahmen des Rauschens. HY4-Preview büßt in Claude Code ohne Thinking ebenfalls elf Punkte ein. Wie stark ein Agent vom Reasoning abhängt, scheint also an der Kombination aus Modell und Harness zu liegen. Für eine Erklärung sei das Versuchsraster zu klein, räumen die Autoren ein.

Die Studie stützt sich im Kern auf einen Benchmark. Eine kleine Gegenprobe auf Terminal-Bench 2.1 zeigt dasselbe Bild. Das geschlossene Spitzenmodell lief nur in Claude Code. Ein Harness kaufe "weniger Wege, eine Aufgabe zu verlieren, und eine Rechnung, keine Erfolgsquote", bilanzieren die Autoren. Sie empfehlen, bei jedem Harness-Vergleich auch einen Wiederholungslauf derselben Konfiguration zu veröffentlichen. Nur so lasse sich erkennen, wie viel des gemessenen Unterschieds bloßes Rauschen ist. Daten und Analyse-Skripte sind auf GitHub verfügbar.

Mehr Aufwand im Harness zahlt sich auch in anderen Studien selten aus. Dort schlug eine einfache Markdown-Datei ein komplexes Skill-System. Dass die Wahl des Frameworks den Preis bei gleichem Modell fast verdreifachen kann, zeigte bereits eine frühere Untersuchung. Entsprechend viel Aufmerksamkeit bekommt die Harness-Entwicklung. Nvidia sparte zuletzt durch eine bessere Steuerung von Coding-Agenten fast die Hälfte der Token-Kosten.

Read Entire Article