Tools/KI-Agenten

OpenCode im Test: der Open-Source-Coding-Agent für jedes Modell

OpenCode ist ein Coding-Agent fürs Terminal unter MIT-Lizenz, für jedes Modell, gehostet oder lokal. Agenten, Berechtigungen, MCP und LSP sowie die Datenschutzfragen.

Art
Coding agent
Preis
MIT · free, you pay the model provider

··8 Min. Lesezeit

  • AI coding agent
  • Terminal
  • Open source
  • Local models
  • MCP
Coverbild zum OpenCode-Test: eine Agenten-Schleife im Terminal, die sich zu einer gehosteten API, einem lokalen Modell und Zen verzweigt.

Das Wichtigste in Kürze

  • OpenCode steht unter der MIT-Lizenz und ist kostenlos installierbar. Bezahlt wird das Modell: über deinen eigenen Anbieterschlüssel, ein lokales Modell oder die optionalen Pläne Zen und Go.
  • Die Anbieterschicht erreicht über das AI SDK und Models.dev mehr als 75 Anbieter, lokale Modelle laufen über Ollama, LM Studio oder llama.cpp.
  • Die Agenten Build und Plan trennen Ausführen von Planen. Die meisten Berechtigungen stehen aber auf allow, deshalb musst du eigene Freigaberegeln schreiben, bevor der erste echte Lauf startet.
  • MCP-Server und LSP-Diagnosen erweitern den Agenten. Jeder MCP-Server belegt Kontext, den du bezahlst, also aktiviere sie nacheinander.
  • Mit eigenem Anbieter geht der Code direkt von deinem Rechner zu diesem Anbieter. Ausnahme ist /share, das einen öffentlichen Link auf opencode.ai veröffentlicht.

Diesen Artikel anhören

0:000:00

OpenCode ist ein Open-Source-Coding-Agent für das Terminal, dazu gibt es eine Desktop-App und eine IDE-Erweiterung. Das Urteil vorweg: Nimm ihn, wenn du einen Agenten willst, der jedes Modell nutzen kann, das du anbinden kannst, auch ein Modell auf deinem eigenen Rechner, und wenn du bereit bist, seine Berechtigungsregeln selbst zu schreiben. Lass die Finger davon, wenn du ein Modell eines einzelnen Anbieters im Abo willst oder sichere Standardeinstellungen erwartest.

Dieser Test stützt sich auf die offizielle OpenCode-Dokumentation, das GitHub-Repository und das Release v1.18.35, veröffentlicht am 6. Oktober 2026. Ich habe kein Benchmark gefahren. Der Vergleich deckt deshalb Funktionen, Lizenzen und Preise ab, nicht die Qualität der Ergebnisse.

Was es ist

OpenCode ist eine Terminal-Oberfläche, eine Desktop-App und eine IDE-Erweiterung. Der Quellcode liegt unter anomalyco/opencode auf GitHub, unter der MIT-Lizenz. Das Repository zeigte bei meiner Prüfung am 10. Oktober 2026 rund 212.500 Sterne. Auf der Doku-Seite läuft außerdem ein Banner zu einem Release v2. Die v2-Seite, die ich geöffnet habe, enthielt keine Details. Die konkreten Angaben unten beziehen sich deshalb auf die Linie v1.18.

  • Installation: ein Shell-Skript, npm (opencode-ai), Bun, pnpm oder Yarn, Homebrew über den Tap anomalyco sowie Pakete für AUR und Nix.
  • Modelle: mehr als 75 Anbieter über das AI SDK und Models.dev, dazu jeder OpenAI-kompatible Endpunkt, den du einträgst.
  • Clients: das Terminal-UI, die Desktop-App, IDE-Erweiterungen, eine Browser-Oberfläche über opencode web und ACP-kompatible Editoren wie Zed und JetBrains-IDEs.
  • Projektregeln: Eine Datei AGENTS.md, die der Befehl /init anlegt oder aktualisiert, landet im Kontext des Modells.

So funktioniert es

Die Doku beschreibt eine Aufteilung in Client und Server. Der Befehlopencode serve startet einen HTTP-Server ohne Oberfläche mit einem OpenAPI-Endpunkt, den jeder OpenCode-Client nutzen kann, sodass Oberfläche und Agent in getrennten Prozessen laufen können. Jeder Tool-Aufruf wird vor der Ausführung gegen die Berechtigungsregeln geprüft.

Wie eine OpenCode-Anfrage fließtClients wie das Terminal-UI, die Desktop-App oder eine IDE senden Anfragen über HTTP an einen lokalen opencode-Server. Die Agenten-Schleife läuft im Modus Build oder Plan. Vor jedem Tool-Aufruf erlaubt, fragt oder sperrt das Berechtigungs-Gate die Aktion. Werkzeuge bearbeiten Dateien, führen Shell-Befehle aus, nutzen Sprachserver und rufen MCP-Server auf. Der Modellaufruf geht an den Anbieter, den du konfigurierst, also an eine gehostete API oder ein lokales Modell.Client und Server getrenntein Agent, jedes ModellClientsTUI, Desktop, IDEopencode serveHTTP und OpenAPIAgenten-SchleifeBuild oder PlanModellAnbieter oder lokalBerechtigungallow, ask oder denyWerkzeugeDateien, Shell, MCPBerechtigungsregeln gelten vor jedem Tool-Aufruf; Sperren gelten auch unter --auto.Lokale Modelle behalten Prompts bei dir; Web-Tools und MCP-Server senden nach außen.
Clients sprechen mit einem lokalen Server. Das Berechtigungs-Gate prüft jeden Tool-Aufruf, das Modell ist der Anbieter, den du konfigurierst.

Werkzeuge erledigen die eigentliche Arbeit. Eingebaute Werkzeuge lesen, schreiben und patchen Dateien, führen Shell-Befehle aus und rufen Webseiten ab, und jedes hat einen eigenen Berechtigungsschlüssel. Die Sprachserver-Schicht gibt Diagnosen aus den Sprachservern des Projekts an den Agenten zurück, die die Doku als Rückmeldung für den Agenten beschreibt.

MCP und LSP

MCP-Server stehen unter dem Schlüssel mcp. Ein lokaler Server ist ein Befehl, den OpenCode startet. Ein entfernter Server ist eine URL, mit optionalen Headern, einem OAuth-Block und einem Timeout, das zum Abrufen seiner Werkzeugliste standardmäßig 5 Sekunden beträgt. Die Doku warnt, dass jeder MCP-Server den Kontext vergrößert, für den du bezahlst, und dass einzelne Server wie der GitHub-MCP-Server das Kontextlimit schon allein sprengen können. LSP funktioniert anders. OpenCode bringt Konfigurationen für mehr als 30 Sprachserver mit, von TypeScript, Rust und Python (pyright) bis Go (gopls) und Terraform. Mit lsp auf true werden alle aktiviert. Manche installieren sich selbst, bei anderen muss die Toolchain im Pfad liegen.

Erste Schritte

Installiere mit dem Shell-Skript oder mit npm install -g opencode-ai und starte danach opencode im Projektordner. Im TUI fügt /connect die Schlüssel der Anbieter hinzu, und /init schreibt die Datei AGENTS.md. Die folgende Konfiguration verweist auf ein Modell, das LM Studio auf demselben Rechner bereitstellt, setzt die Standardberechtigung auf ask und schaltet das Teilen aus. Lege sie als opencode.json im Projektwurzelverzeichnis ab oder unter ~/.config/opencode/opencode.json für alle Projekte.

{
  "$schema": "https://opencode.ai/config.json",
  "model": "lmstudio/google/gemma-3n-e4b",
  "provider": {
    "lmstudio": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "LM Studio (local)",
      "options": { "baseURL": "http://127.0.0.1:1234/v1" },
      "models": { "google/gemma-3n-e4b": { "name": "Gemma 3n-e4b (local)" } }
    }
  },
  "permission": { "*": "ask", "bash": "ask" },
  "share": "disabled"
}

Ein lokales Modell hält Prompts auf deinem Rechner, aber die Qualität des Ergebnisses hängt am Modell und nicht am Agenten. Lass die ersten Aufgaben auf einem Testbranch laufen und lies jeden Diff, bevor du ihn übernimmst.

Agenten und Berechtigungen

Zwei Primär-Agenten erledigen die Hauptarbeit. Build ist der Standard mit allen aktivierten Werkzeugen und passt zur Entwicklung. Plan ist auf Analyse und Review beschränkt, und laut Doku ändert er keinen Code. Mit Tab wechselst du zwischen beiden. Außerdem gibt es drei eingebaute Subagenten. Explore ist ein schneller, nur lesender Agent zum Finden von Dateien und zum Beantworten von Fragen zum Code, Scout ist ebenfalls nur lesend und recherchiert externe Dokumentation und den Quellcode von Abhängigkeiten, und General ist der dritte. Jeden Subagenten kannst du per @-Erwähnung aufrufen.

Die Berechtigungen sind der Teil, in den du deine erste Stunde investieren solltest. Jeder Schlüssel akzeptiert allow, ask oder deny, und die Objektform kann auf die Eingabe des Werkzeugs passen. Am wichtigsten sind edit (das write, edit und apply_patch umfasst), bash, webfetch, external_directory und doom_loop. Ein Schlüssel * setzt den Standard für alles andere, und explizite deny-Regeln gelten auch unter --auto.

Anbieter und lokale Modelle

Das ist der wichtigste Grund, OpenCode zu wählen. Es nutzt das AI SDK und den Katalog von Models.dev, um mehr als 75 Anbieter abzudecken. /connect speichert die Schlüssel, die du hinzufügst, und die Option baseURL richtet jeden Anbieter auf einen Proxy oder einen privaten Endpunkt. Das Anbieterverzeichnis listet lokale Optionen wie Ollama, LM Studio und llama.cpp auf, und jeder andere OpenAI-kompatible Server lässt sich mit dem Paket @ai-sdk/openai-compatible einbinden.

Anbieterunabhängig heißt nicht gleich gut. Der Agent ist nur so verlässlich wie das Modell dahinter, besonders bei Tool-Aufrufen in einem großen Repository. Hinterlege ein zweites Modell, damit du wechseln kannst, wenn eines hakt, und vergleiche die Diffs beider Modelle bei derselben Aufgabe, bevor du dich festlegst.

Kosten und Betrieb

Die Software kostet nichts. Bezahlt wird das Modell, und der Preis hängt davon ab, wo es läuft. Stand Oktober 2026 gibt es diese veröffentlichten Optionen:

OptionPreisWas enthalten ist
OpenCodekostenlos, MITInstallieren und laufen lassen; den Modellanbieter bezahlst du direkt
Zennach Verbrauch, pro 1 Mio. TokensGetestete Modelle, gehostet in den USA und der EU; Zero Retention außer bei einigen kostenlosen Modellen
Go10 $ im MonatOffene Coding-Modelle mit monatlichen Dollar-Limits
Go Plus40 $ im MonatHöhere monatliche Limits zu denselben Token-Preisen wie Go
Enterprisepro Platz, auf AnfrageZentrale Konfiguration, SSO und dein eigenes LLM-Gateway ohne Token-Abrechnung

Selbst hosten heißt hier, das Modell auf deiner Seite zu betreiben, denn der Agent läuft ohnehin auf deinem Rechner. Die Datenschutzfrage lautet, wer deinen Code verarbeitet. Die Enterprise-Seite von OpenCode sagt, dass OpenCode keinen Code und keine Kontextdaten speichert und dass die gesamte Verarbeitung lokal oder über direkte API-Aufrufe an deinen KI-Anbieter erfolgt. Den Vertrag brauchst du also mit dem Anbieter.

Nach Artikel 28 Absatz 3 DSGVO muss die Verarbeitung durch einen Auftragsverarbeiter durch einen Vertrag geregelt sein, der den Auftragsverarbeiter bindet. Wenn deine Repositories oder Testdaten personenbezogene Daten enthalten, hol dir diesen Vertrag, den Verarbeitungsort und die Aufbewahrungsfristen schriftlich von dem Anbieter, den du anbindest. Zens veröffentlichte Richtlinie ist ein brauchbarer Maßstab: Die Modelle werden in den USA und der EU gehostet, die Anbieter halten Zero Retention ein und trainieren nicht mit deinen Daten, mit benannten Ausnahmen für kostenlose Modelle während ihrer kostenlosen Phase. Die weitere Checkliste zur Datenresidenz steht im Artikel zu DSGVO und Datenresidenz bei LLM-APIs.

Wo es schwächelt

Die meisten Schwächen liegen in den Standardwerten und im laufenden Unterhalt, nicht in fehlenden Funktionen.

  • Großzügige Standardwerte. Die meisten Berechtigungen starten auf allow, und --auto entfernt die Rückfragen ganz. Das sichere Setup ist deshalb eines, das du selbst schreibst und testest.
  • Kontextkosten durch MCP. Jeder aktivierte Server vergrößert den Kontext. Aktiviere jeweils einen Server und miss, was er kostet, bevor du den nächsten dazunimmst.
  • Die Konfiguration verschiebt sich. Das alte Feld tools wurde in v1.1.1 in permission zusammengeführt, und der alte Schlüssel funktioniert weiterhin. Prüfe Beispiele gegen die Version, die du einsetzt.
  • Geteilte Unterhaltungen sind öffentlich. Jeder mit dem Link kann eine geteilte Unterhaltung lesen, bis jemand sie wieder zurückzieht.
  • Team-Steuerung gibt es nur auf Anfrage. Zentrale Konfiguration, SSO und erzwungene Gateways sind Enterprise-Funktionen mit Preis pro Platz.
  • Eine Versionsfrage. Die Doku verweist auf ein Release v2. Fixiere die Version, die dein Team testet, und teste nach jedem Upgrade neu.

Fazit

OpenCode ist die offene Option für Teams, die die Modellwahl offen halten müssen. Nimm es, wenn du einen Agenten unter MIT-Lizenz willst, wenn Code nur an einen Anbieter gehen soll, mit dem du einen Vertrag hast, oder wenn lokale Modelle Teil des Plans sind. Lass es, wenn du sicheres Verhalten ohne eigene Regeln willst oder wenn ein einzelnes Anbieter-Modell Pflicht ist.

WerkzeugLizenzModellePreis, Stand Oktober 2026
OpenCodeMIT75+ Anbieter und lokale ModelleSoftware kostenlos; den Anbieter bezahlst du, oder Zen und Go
Claude Codekommerzielle Bedingungen von AnthropicClaude-Modelle; keine Nicht-Claude-Modelle über GatewaysPro 17 $ im Monat bei Jahresabo, 20 $ monatlich; Max ab 100 $
Codex CLIApache-2.0OpenAI-Modelle, plus eigene Anbieter in config.tomlIn ChatGPT-Tarifen enthalten, von Free bis Enterprise
AiderApache-2.0Fast jedes LLM, auch lokale ModelleSoftware kostenlos; den Anbieter bezahlst du
  1. Claude Code wenn du schon mit Claude-Modellen arbeitest und dafür die kommerzielle Lizenz für den Agenten von Anthropic akzeptierst. Der Test steht unter Claude-Code-Test.
  2. Codex CLI wenn dein Team bereits ChatGPT-Tarife hat und einen Agenten unter Apache-2.0 will. Der Test steht unter Codex-CLI-Test.
  3. Aider wenn du ein kleineres, git-orientiertes Werkzeug willst, das jede Änderung mit einer sinnvollen Commit-Nachricht festhält und fast jedes Modell erreicht. Der Test steht unter Aider-Test.

Quellen

Häufige Fragen

Ist OpenCode kostenlos?

Die Software ist unter der MIT-Lizenz kostenlos. Für Tokens zahlst du deinen Modellanbieter, oder du nutzt Zen nach Verbrauch, oder du abonnierst Go für 10 $ im Monat beziehungsweise Go Plus für 40 $ im Monat. Preise Stand Oktober 2026.

Kann OpenCode ohne Cloud-Anbieter laufen?

Ja. Das Anbieterverzeichnis enthält lokale Optionen wie Ollama, LM Studio und llama.cpp. Prompts und Code bleiben auf deinem Rechner, aber Web-Tools und entfernte MCP-Server senden weiterhin Anfragen nach außen, und die Qualität hängt vom Modell ab, das du betreibst.

Speichert OpenCode meinen Code?

Laut der Enterprise-Seite speichert OpenCode keinen Code und keine Kontextdaten. Die Verarbeitung findet lokal oder über direkte API-Aufrufe an deinen KI-Anbieter statt. Die Ausnahme ist /share, denn dabei wird die Unterhaltung über opencode.ai veröffentlicht.

Wie vergleicht sich OpenCode mit Claude Code?

OpenCode ist Open Source und anbieterunabhängig. Claude Code unterliegt den kommerziellen Bedingungen von Anthropic, und Anthropic sagt, dass Claude Code über kein Gateway an Nicht-Claude-Modelle geleitet werden kann.

Klingt nach dem, was du suchst?

Erzähl mir von deinem Projekt oder deiner Stelle – ich freue mich, von dir zu hören.