OpenHands: ein Entwickleragent auf Modellbasis lokal
Ja, OpenHands (ehemals OpenDevin) läuft mit einem lokalen Modell über jeden OpenAI-kompatiblen Endpunkt, aber es handelt sich um die anspruchsvollste agentische Arbeitslast überhaupt: Unterhalb der Größenklasse von 27 bis 32 Milliarden Parametern mit langem Kontext (mindestens 22.000 Tokens, 32.768 empfohlen) gerät der Agent in Schleifen, interpretiert die Ausgabe von Befehlen falsch und verändert die falsche Datei.
OpenHands stellt einem Agenten ein Terminal, einen Browser und Ihr Repository zur Verfügung und lässt ihn dann arbeiten: Er plant, ändert Dateien, führt Befehle in einer Sandbox aus, liest die Ausgabe und wiederholt den Vorgang, bis die Aufgabe erfolgreich abgeschlossen ist oder er aufgibt. Der Betrieb mit einem lokalen Modell ist möglich, erfordert aber ein deutlich größeres Modell, als die meisten Menschen zur Verfügung haben. Hier erfahren Sie, wo die Grenze tatsächlich liegt, einschließlich der vom Projekt selbst empfohlenen Einstellungen.
#Was es konkret tut
Sie beschreiben eine Aufgabe auf Französisch. Er untersucht das Repository, erstellt einen Plan und arbeitet dann in einer Schleife: einen Befehl ausführen, das Ergebnis lesen, eine Datei ändern, die Tests erneut ausführen, den Fehlschlag lesen, korrigieren. Diese Schleife ist das Produkt. Das kommt einem Praktikanten mit einem Terminal näher als einer automatischen Vervollständigung.
Daraus ergeben sich die Konsequenzen. Jede Iteration ist eine vollständige Generierung auf Basis eines wachsenden Kontexts: Eine Aufgabe mit zehn Schritten kostet zehn lange Prompts. Und weil der Agent handelt, statt Vorschläge zu machen, umfasst sein Aktionsradius alles, worauf er zugreifen kann – das erklärt, warum die Sandbox Teil des Entwurfs ist und nicht bloß eine Einstellung.
#Das Projekt 2026: Agent Canvas
Dieser Guide führt Sie zum Modell. Das Kit führt Sie zum Copiloten, der in Ihrem Editor Code schreibt.
- Lebenslanger Online-Zugang
- PDF + Dateien
- Erstattung binnen 30 Tagen
OpenHands hieß bei seiner Einführung OpenDevin, bevor es seinen heutigen Namen erhielt. Das von All Hands AI gepflegte Repository steht unter der MIT-Lizenz und hat im Sommer 2026 mehr als 89.000 Sterne auf GitHub. Auch der Umfang des Projekts hat sich erweitert: Es präsentiert sich nicht mehr nur als einzelner autonomer Agent, sondern als „die selbst gehostete Steuerzentrale für Coding-Agenten und Automatisierungen“, mit der sich sowohl OpenHands als auch Claude Code, Codex oder Gemini über eine einzige Benutzeroberfläche steuern lassen.
Konkret gliedert sich das Angebot in mehrere Bausteine: Agent Canvas (die Steuerungsoberfläche), ein Software Agent SDK zum Erstellen eigener Agenten, ein Agent Server und ein Automatisierungsserver für geplante Aufgaben. Die frühere eigenständige lokale Oberfläche wurde zugunsten dieser modularen Architektur als veraltet eingestuft; das Prinzip bleibt für die hier beschriebene lokale Nutzung dasselbe – ein Agent, der in einer containerisierten Sandbox agiert. Die Komponentennamen und der Startbefehl können jedoch je nach älterer Dokumentation abweichen, auch in Dokumentationen, die Sie gelegentlich noch unter dem Namen OpenDevin im Suchindex finden.
#Die Anforderung an das Modell, klar benannt
| Modellklasse | Realistisches Ergebnis |
|---|---|
| 7 bis 8 Milliarden | Scheitert. Fehlerhaft formulierte Befehle, falsch interpretierte Ausgaben, Schleifen bei der Bearbeitung derselben Datei. |
| 14 Milliarden | Bewältigt manchmal triviale Aufgaben in einer einzigen Datei. Wenig zuverlässig. |
| 27 bis 32 Milliarden | Die praktikable Untergrenze. Eng umrissene und klar spezifizierte Aufgaben werden oft genug erfolgreich abgeschlossen, um nützlich zu sein. |
| 70 Milliarden und mehr | Deutlich besseres Urteilsvermögen, aber so langsam, dass man die Aufgabe startet und sich dann etwas anderem widmet. |
Zwei Fähigkeiten zählen mehr als Benchmark-Werte: Tool-Aufrufe im exakt erwarteten Format und Stabilität bei langen Kontexten, da der Agent bei jedem Schritt einen wachsenden Verlauf erneut liest. Ein Modell, das hervorragend darin ist, anhand eines Prompts eine Funktion zu schreiben, kann im Schleifenbetrieb unbrauchbar sein. Auf Code spezialisierte Modelle schneiden bei dieser Aufgabe im Allgemeinen besser ab als gleich große Chatmodelle.
Die offizielle Dokumentation des Projekts hat ihre Empfehlung im Laufe des Jahres 2026 geändert: Sie empfiehlt nun Qwen3.6-35B-A3B als erstes lokales Modell zum Ausprobieren, ein MoE-Modell (Mixture of Experts), das für agentisches Programmieren ausgelegt ist, ein großes Kontextfenster bietet und über LM Studio, Ollama, vLLM und SGLang verfügbar ist. Der Vorteil eines MoE liegt hier auf der Hand: Trotz insgesamt 35 Milliarden Gewichten werden pro Token nur 3 Milliarden Parameter aktiviert. Dadurch ist die Generierung deutlich schneller als bei einem dichten Modell vergleichbarer Größe, während der VRAM-Bedarf eher dem eines 14B-Modells als dem eines dichten 35B-Modells entspricht.
#Im lokalen Umfeld ausführen
- 01Ein Modell bereitstellenÜber einen OpenAI-kompatiblen Endpunkt, wobei die Variable OLLAMA_CONTEXT_LENGTH bei Verwendung von Ollama auf mindestens 22.000 erhöht werden muss (32.768 empfohlen). Wird dieser Schritt übersprungen, entstehen Agenten, die ihren eigenen Plan vergessen.
- 02Die Anwendung in ihrer containerisierten Konfiguration startenSie benötigt eine Container-Engine (Docker Desktop oder Docker Engine): Die Shell des Agenten läuft dort, nicht auf Ihrem Host.
- 03Auf Ihren lokalen Endpunkt ausrichtenMit einem Dummy-API-Schlüssel (zum Beispiel local-llm) und einer vom Container aus erreichbaren Basis-URL — unter Docker Desktop http://host.docker.internal:PORT/v1 statt localhost, das den Container selbst bezeichnen würde. Geben Sie die Unterstützung von Tool-Aufrufen nur dann an, wenn das Modell tatsächlich dazu in der Lage ist.
- 04Ein einziges Repository einbindenIdealerweise ein Klon zum anschließenden Verwerfen auf einem Branch, den Sie bedenkenlos löschen können.
- 05Mit einer kleinen und überprüfbaren Aufgabe beginnenBehebe diesen fehlgeschlagenen Test, füge diesen Parameter hinzu, aktualisiere diese Konfiguration. Prüfen Sie anschließend den Diff.
- Ein Modell mit langem Kontext bereitstellen
- Code durch ein lokales Modell überprüfen
- Cline: der integrierte Code-Agent im Editor
- Das QuelLLM-Kit zum Aufbau eines lokalen Agents
- Offizielle Dokumentation: lokale Modelle mit OpenHands
- Offizielles OpenHands-Repository auf GitHub
- Unabhängige Bewertung von OpenHands (2026)
#Die tatsächlichen Kosten einer Aufgabe
Eine agentische Aufgabe erfordert nicht einen einzigen Modellaufruf, sondern eine Folge von Aufrufen, jeweils mit einem längeren Kontext als beim vorherigen, weil sich der Verlauf ansammelt. Wenn eine Aufgabe zehn Iterationen benötigt und jeder Schritt dem Verlauf durchschnittlich 800 Tokens hinzufügt, liest der zehnte Aufruf bereits mehrere Tausend Tokens Kontext erneut, bevor er überhaupt seine Antwort erzeugt. Bei lokaler Berechnung kommt in jeder Runde die Zeit zum Einlesen des Prompts (das „Prefill“) zur Generierungszeit hinzu. Deshalb dauert eine Aufgabe mit einem lokalen Agenten auf einem Modell mit 32 Milliarden Parametern Minuten und nicht Sekunden wie eine klassische Completion.
Das ist der Preis dafür, keine API-Rechnung zu bezahlen: Die Kosten verschwinden nicht, sondern verlagern sich auf Ihre Grafikkarte und Ihre Wartezeit. Bei einer schlecht spezifizierten Aufgabe, die zwanzig Iterationen auslöst, weil sich der Agent im Kreis dreht, wird diese Kostenverlagerung in Form von Strom und Zeit schnell teurer als ein gleichwertiger API-Aufruf.
#Ein konkretes Beispiel zur Veranschaulichung
Nehmen wir eine realistische Aufgabe: „Der Test test_export_csv schlägt seit dem letzten Commit fehl, behebe ihn.“ Bei einem Modell mit rund 32 Milliarden Parametern umfasst der typische Ablauf fünf bis acht Iterationen: Test und Fehlermeldung lesen, die betroffene Quelldatei öffnen, eine Hypothese zur Ursache aufstellen, Änderungen vornehmen, den Test erneut ausführen, das neue Ergebnis lesen und bei Bedarf nachbessern. Bei jeder Iteration wird der vollständige Verlauf aller vorherigen Iterationen erneut gelesen. Dadurch wird das Kontextfenster entscheidend: Mit nur 8.000 Tokens verliert der Agent nach drei oder vier Schritten den Faden und greift bereits verworfene Hypothesen wieder auf.
Bei einem Modell mit 7 bis 8 Milliarden Parametern scheitert dieselbe Aufgabe meist auf andere Weise: Der Test wird korrekt identifiziert, aber der Befehl zum erneuten Ausführen ist fehlerhaft aufgebaut, oder das Modell bearbeitet eine benachbarte Datei mit einem ähnlichen Namen. Das sind keine Fehler bei den Einstellungen – hier zeigt sich die Leistungsgrenze des Modells bei dem strikten Format, das die Schleife aus Werkzeugaufruf, Ergebnis und Entscheidung verlangt, unabhängig von der Qualität des Systemprompts. Auch deshalb sagen die veröffentlichten Ergebnisse von Benchmarks zur Codevervollständigung hier wenig voraus: Ein Modell, das bei der Generierung einer einzelnen Funktion hohe Bewertungen erzielt, kann dennoch unfähig sein, zehn schlüssige Werkzeugaufrufe aneinanderzureihen, ohne vom Kurs abzukommen, weil diese beiden Fähigkeiten je nach Art des Modelltrainings unterschiedlich miteinander korrelieren.
#Sicherheit ist nicht optional
- Keine Geheimnisse in der Umgebung
- Der Agent liest seine eigene Umgebung und kann sie anzeigen.
- Ein Wegwerf-Branch und ein Arbeitsklon
- Niemals Ihre Arbeitskopie mit noch nicht committeten Änderungen.
- Beschränkter Netzwerkzugriff
- Ein Agent, der beliebige Netzwerkziele erreichen kann, kann sämtliche Daten, die er gelesen hat, nach außen schleusen.
- Alle abgerufenen Inhalte sind standardmäßig feindlich
- Die Beschreibung eines Tickets oder eine README-Datei können Anweisungen enthalten, die an den Agenten gerichtet sind: Der Mechanismus wird in unserem Leitfaden zur Prompt-Injektion ausführlich erklärt.
- Jeden Diff durchsehen
- „Die Tests laufen erfolgreich durch“ bedeutet, dass die Tests erfolgreich durchlaufen, nicht, dass die Änderung korrekt ist.
#Wenn ein Assistent besser ist als ein Agent
| Aufgabe | Bestes Tool |
|---|---|
| Vervollständigung während der Eingabe | Eine Editor-Erweiterung |
| Eine Änderung, die man Datei für Datei beschreiben kann | Ein dialogorientierter Assistent mit der geöffneten Datei |
| Eine Aufgabe in mehreren Schritten mit einem klaren Erfolgstest | OpenHands, wenn das Modell groß genug ist |
| Code, den Sie nicht überprüfen können | Keiner der beiden: Sie können das Ergebnis nicht überprüfen. |
Zusammenfassend ist lokal ausgeführtes OpenHands weder ein Spielzeug noch ein universeller Ersatz: Es ist ein Werkzeug, das Maschinen vorbehalten bleiben sollte, die tatsächlich ein Modell mit mindestens 27 Milliarden Parametern und einem Kontext von 32.000 Tokens aufnehmen können, sowie Aufgaben, die so eng umrissen sind, dass ein automatisierter Test oder eine schnelle Durchsicht zur Beurteilung des Ergebnisses ausreicht. Unterhalb dieser Hardware-Schwelle bleibt ein klassischer Chat-Assistent mit geöffneter Datei schneller und zuverlässiger als ein Agent, der in einer Schleife festhängt, ohne jemals zu einer Lösung zu gelangen.
#FAQ
Kann OpenHands mit einem lokalen Modell laufen?+
Welches Modell ist mindestens erforderlich?+
Welche Kontextlänge sollte man in Ollama konfigurieren?+
Ist es ratsam, es auf meinem Rechner auszuführen?+
Wie viel VRAM benötigt man?+
Warum wiederholt der Agent denselben Schritt?+
Ist OpenHands immer noch das gleiche Projekt wie OpenDevin?+
Haben Sie Feedback, einen Fehler entdeckt oder möchten Sie etwas präzisieren? Geben Sie uns Bescheid – so wird der Guide für alle besser.