Was ist ein Agent-Harness?
Ein Agent-Harness ist die Runtime-Schicht um ein Sprachmodell, die aus einem Textgenerator etwas macht, das arbeiten kann. Sie dreht die Schleife, reicht dem Modell Tools, entscheidet, was in den Kontext kommt, hält Sessions an einem dauerhaften Ort und setzt durch, was der Agent anfassen darf. Das Modell liefert Urteilsvermögen; alles andere liefert der Harness.
Was der Harness tatsächlich tut
Zieht man einem Agent alles ab, bleiben fünf Aufgaben — keine davon kann das Modell allein bewältigen.
Die Schleife. Ein Modellaufruf kehrt einmal zurück und hört auf. Ein Agent macht weiter: Modell aufrufen, das angeforderte Tool ausführen, das Ergebnis anhängen, erneut aufrufen — bis die Aufgabe erledigt ist oder ein Limit greift. Dieser Zyklus ist die Kernarbeit des Harness, und das meiste, was einen Harness vom anderen unterscheidet — wie er wiederholt, wann er aufgibt, ob er Schritte parallel fahren kann — ist eine Entscheidung über die Schleife.
Tools. Eine Datei lesen, einen Befehl ausführen, das Web durchsuchen. Der Harness gibt bekannt, was verfügbar ist, validiert die vom Modell erzeugten Argumente, führt den Aufruf aus und formatiert das Ergebnis zurück in etwas, das das Modell lesen kann.
Kontext. Jedes Modell hat ein endliches Fenster, und eine echte Aufgabe sprengt es. Zu entscheiden, was bleibt, was zusammengefasst wird und was bei Bedarf erneut geholt wird, ist Sache des Harness — und das ist der Punkt, den Nutzer am unmittelbarsten spüren, wenn ein Agent vergisst, was er gerade tat.
Sessions. Arbeit, die sich über Stunden oder Neustarts zieht, muss irgendwo leben: Transkripte, Zwischenzustände, die Möglichkeit fortzusetzen. Ohne Persistenz haben Sie ein Chatfenster, keinen Agent.
Berechtigungen. Ein Agent, der Shell-Befehle ausführen kann, ist eine Angriffsfläche. Bestätigungsdialoge, Allowlists, Sandboxes und Dateisystemgrenzen liegen alle im Harness, weil dem Modell nicht zuzutrauen ist, sich selbst zu kontrollieren — und weil es dafür nie entworfen wurde.
Was ein Harness nicht ist
Er ist nicht das Modell. Das Modell zu tauschen ändert, wie gut der Agent schlussfolgert; es ändert nicht, ob Sessions fortsetzbar sind oder ob ein Befehl eine Freigabe braucht. Das sind Eigenschaften des Harness — deshalb kann dasselbe Modell im einen Werkzeug fähig und im anderen hilflos wirken.
Er ist auch kein IDE-Plugin, auch wenn beides leicht zu verwechseln ist, weil man dem Harness oft durch einen Editor begegnet. Eine Editor-Erweiterung ist eine Fläche: Sie nimmt Ihre Anfrage auf und zeigt die Ausgabe. Der Harness ist das, was Schleife, Tool-Ausführung und Zustand besitzt. Ein gut gebauter Harness kann mehrere Flächen — CLI, Weboberfläche, Editor — über dieselbe Session bedienen; ein guter Test dafür, ob Sie einen Harness oder ein Frontend vor sich haben.
Wie DeepSeek Harness das umsetzt
DeepSeek Harness — dsh — wurde von DeepSeek AI am 13. August 2026 unter der MIT-Lizenz veröffentlicht und nimmt zu alldem eine ungewöhnlich wörtliche Haltung ein: Alles ist ein Plugin. Modelle, Tools, Skills, Sessions, Sandboxes, Dateisysteme, die Schleife selbst, die Orchestrierung und die Benutzeroberfläche sind allesamt Plugins, geladen in eine gemeinsame Runtime.
Diese Runtime ist Cordis, ein Meta-Framework, dessen Aufgabe das Laden und Verdrahten von Plugins ist; @deepseek-ai/cordis ist eine Peer-Dependency jedes Harness-Pakets. Die Komposition passiert in einer cordis.yml-Loader-Konfiguration, die die zu startenden Plugins und ihre Optionen auflistet, und ein --profile-Schalter wählt zwischen Bündeln für verschiedene Situationen — zu den mitgelieferten Profilen gehört headless.
Die Folge: In dsh gibt es keine sinnvolle Linie zwischen der Anwendung und ihren Erweiterungen. Die Sandbox zu ersetzen ist strukturell dieselbe Handlung wie ein Tool hinzuzufügen. Deshalb zählt ein Plugin-Verzeichnis hier mehr als bei den meisten Agent-Werkzeugen: Die Fähigkeiten stecken in den Paketen, nicht im Kern. Wir erfassen derzeit 7900 Repositories mit dsh-Topics, davon zeigen 3942 eine echte Plugin-Verdrahtung — Sie können sie durchsehen oder sich nach Kategorie durcharbeiten. Ein Vorbehalt, den man wiederholen sollte: dsh ist eine Developer Preview, und die README warnt vor kompatibilitätsbrechenden Änderungen — das hier beschriebene Loader-Format ist eine Momentaufnahme, kein Vertrag.
Harnesses gegenüber Agent-Frameworks
Ein Agent-Framework ist eine Bibliothek, mit der Sie eine Anwendung bauen. Es reicht Ihnen Schleifen-Primitive, Tool-Abstraktionen und Gedächtnis-Helfer und überlässt die Produktentscheidungen Ihnen — Sie schreiben das Programm, und was Sie ausliefern, gehört Ihnen.
Ein Harness hat diese Entscheidungen bereits getroffen. Sie installieren ihn, und er läuft: eine voreingestellte Schleife, ein voreingestellter Satz Tools, ein voreingestelltes Berechtigungsmodell, ein Weg, die gestrige Session fortzusetzen. Der Handel ist der übliche zwischen Bibliothek und Produkt — weniger Kontrolle, weit weniger zu bauen.
dsh sitzt auf dieser Linie an einer interessanten Stelle. Es ist ein Harness, den Sie sofort betreiben können, aber weil jeder Teil davon ein Plugin über einem Allzweck-Framework ist, kann ein hinreichend hartnäckiger Nutzer die Teile ersetzen, die die meisten Harnesses als fest behandeln. Die Unterscheidung hält weiterhin — Sie können dsh nutzen, ohne Code zu schreiben — aber die Grenze ist weicher als sonst.
Harnesses gegenüber MCP
MCP, das Model Context Protocol, wird oft im selben Atemzug mit Harnesses genannt, doch beide lösen verschiedene Probleme. MCP ist ein Protokoll: Es standardisiert, wie ein Tool oder eine Datenquelle sich selbst beschreibt und auf Aufrufe antwortet, sodass ein einmal geschriebener Server von jedem Client genutzt werden kann, der es spricht. Es beantwortet „wie erreicht der Agent dieses Ding“.
Ein Harness beantwortet „wer dreht die Schleife, und wann wird dieses Tool überhaupt aufgerufen“. Er verwaltet Kontext, Berechtigungen und Sessions — zu all dem hat MCP keine Meinung. Ein Harness kann ein MCP-Client sein; dann werden MCP-Server zu einer weiteren Tool-Quelle neben allem anderen, was er bietet. Wenn Sie die konkrete Ausprägung im dsh-Ökosystem sehen wollen: Die Kategorie MCP & Tools dieses Verzeichnisses sammelt die Plugins, die an dieser Grenze sitzen.
Häufige Fragen
- Ist der Harness dasselbe wie das Modell?
- Nein. Das Modell macht aus Text mehr Text und hat keine Erinnerung an gestern, keinen Dateizugriff und keine Möglichkeit, irgendetwas auszuführen. Der Harness ist das Programm darum herum, das entscheidet, was das Modell sieht, die angeforderten Tools ausführt, die Ergebnisse zurückspeist und die Schleife beendet, wenn die Arbeit getan ist.
- Ist ein Agent-Harness nur ein Wrapper um einen API-Aufruf?
- Ein einzelner Aufruf ist kein Harness. Das definierende Merkmal ist die Schleife: Der Harness ruft das Modell, führt das angeforderte Tool aus, fügt das Ergebnis dem Gespräch hinzu und ruft erneut — so lange, bis eine Abbruchbedingung erfüllt ist. Alles Schwierige an Harnesses — Kontextverwaltung, Berechtigungen, Session-Persistenz, Fehlerbehandlung — existiert wegen dieser Schleife.
- Wie unterscheidet sich ein Harness von einem Agent-Framework?
- Ein Framework ist eine Bibliothek, mit der Sie eine Anwendung bauen; ein Harness ist ein lauffähiges Programm, das Sie benutzen. Frameworks geben Ihnen die Teile und überlassen Ihnen die Entscheidungen, während ein Harness diese Entscheidungen bereits getroffen und als Voreinstellungen ausgeliefert hat. Die Linie verschwimmt, wenn ein Harness ungewöhnlich konfigurierbar ist — und genau das ist DeepSeek Harness.
- Ersetzt ein Agent-Harness MCP?
- Nein, sie beantworten verschiedene Fragen. MCP ist ein Protokoll, das beschreibt, wie ein Tool oder eine Datenquelle sich einem Agent gegenüber zeigt, während ein Harness das Programm ist, das die Schleife dreht und entscheidet, ob ein Tool überhaupt aufgerufen wird. Ein Harness kann als MCP-Client auftreten, was beide zu Ergänzungen statt zu Konkurrenten macht.
- Was macht DeepSeek Harness unter den Harnesses ungewöhnlich?
- Sein Alles-ist-ein-Plugin-Entwurf. Modelle, Tools, Skills, Sessions, Sandboxes, Dateisysteme, die Schleife, die Orchestrierung und die Oberfläche sind allesamt Plugins, geladen in eine gemeinsame Cordis-Runtime und zusammengesetzt über eine cordis.yml — die Teile, die die meisten Werkzeuge als feste Interna behandeln, sind hier austauschbare Pakete.
Weiterlesen
Um die obigen Ideen als laufende Software zu sehen, installieren Sie dsh — ein npx-Befehl liefert Ihnen eine Web-UI auf http://127.0.0.1:3080. Um zu sehen, wie sich ein Alles-ist-ein-Plugin-Harness gegen ein etabliertes proprietäres Produkt schlägt, lesen Sie unseren frühen Vergleich von dsh und Claude Code.