OpenCode-Schnellstart: Terminal-KI-Coding-Agent installieren, konfigurieren und nutzen
Installation, Konfiguration und Verwendung von OpenCode
OpenCode ist ein Open-Source-KI-Coding-Agent, den Sie im Terminal (TUI + CLI) ausführen können, mit optionalen Oberflächen für Desktop und IDE. Dies ist der OpenCode-Quickstart: Installation, Verifizierung, Verbindung eines Modells/Anbieters und Ausführung echter Workflows (CLI + API).
Versionshinweis: OpenCode wird schnell aktualisiert. Die „neuesten" Befehle hier sind stabil, aber Ausgabe und Standardwerte können sich ändern – überprüfen Sie immer die offiziellen CLI-Dokumentationen und das Änderungsprotokoll (siehe unten).
Dieser Artikel ist Teil von KI-Entwickler-Tools: Der komplette Leitfaden für KI-gestützte Entwicklung.
Was OpenCode ist (und wo es einzuordnen ist)
OpenCode ist für terminal-first, agentenbasiertes Coding konzipiert und bleibt dabei flexibel hinsichtlich Anbieter und Modell. In der Praxis ist es eine Workflow-Schicht, die Folgendes tun kann:
- eine Terminal-Oberfläche startet, wenn Sie
opencodeausführen - nicht-interaktive „one-shot"-Prompts über
opencode runausführt (Skripte/Automatisierung) - einen headless HTTP-Server über
opencode serve(und eine Weboberfläche überopencode web) bereitstellt - programmgesteuert über das offizielle JS/TS SDK
@opencode-ai/sdkkontrolliert werden kann
Wenn Sie es mit einem anderen Open-Source-Agenten vergleichen möchten, der Mehrschritt-Pläne in einer sandboxed Umgebung ausführen kann, siehe OpenHands Coding Assistant QuickStart.
Für Anthropics terminal-first-Agent mit der gleichen Geschichte „lokales Modell über HTTP" (Ollama oder llama.cpp, Berechtigungen, Preisgestaltung), siehe Claude Code-Installation und -Konfiguration für Ollama, llama.cpp, Preisgestaltung.

Voraussetzungen
Sie benötigen:
- Einen modernen Terminal-Emulator (wichtig für das TUI-Erlebnis).
- Zugriff auf mindestens ein Modell/einen Anbieter (API-Schlüssel oder Abonnementauthentifizierung, je nach Anbieter). Lokale Optionen wie Ollama oder llama.cpp funktionieren ohne API-Schlüssel, wenn Sie lokal einen kompatiblen Server betreiben.
OpenCode installieren (Copy-Paste)
Offizielles Installationsskript (Linux/macOS/WSL):
curl -fsSL https://opencode.ai/install | bash
Paketmanager-Optionen (offizielle Beispiele):
# Node.js globale Installation
npm install -g opencode-ai
# Homebrew (von OpenCode für die meisten aktuellen Releases empfohlen)
brew install anomalyco/tap/opencode
# Arch Linux (stabil)
sudo pacman -S opencode
# Arch Linux (neueste Version aus AUR)
paru -S opencode-bin
Hinweise für Windows (offizielle Anleitung empfiehlt häufig WSL für beste Kompatibilität). Alternativen sind Scoop/Chocolatey oder npm.
# chocoloatey (Windows)
choco install opencode
# scoop (Windows)
scoop install opencode
Docker (nützlich für einen schnellen Test):
docker run -it --rm ghcr.io/anomalyco/opencode
Installation überprüfen
opencode --version
opencode --help
Erwartete Ausgabeform (variiert je nach Version):
# Beispiel:
# <druckt eine Versionsnummer, z. B. vX.Y.Z>
# <druckt Hilfe mit verfügbaren Befehlen/Unterbefehlen>
Einen Anbieter verbinden (zwei praktische Wege)
Weg A: TUI /connect (interaktiv)
Starten Sie OpenCode:
opencode
Führen Sie dann aus:
/connect
Folgen Sie den Schritten in der Benutzeroberfläche, um einen Anbieter auszuwählen und sich zu authentifizieren (einige Abläufe öffnen einen Browser/Geräteeinlog).
Weg B: CLI opencode auth login (Anbieterschlüssel)
OpenCode unterstützt die Konfiguration von Anbietern über:
opencode auth login
Hinweise:
- Anmeldeinformationen werden in
~/.local/share/opencode/auth.jsongespeichert. - OpenCode kann Schlüssel auch aus Umgebungsvariablen oder einer
.env-Datei in Ihrem Projekt laden.
Lokale LLM-Hosting (Ollama, llama.cpp)
OpenCode funktioniert mit jeder OpenAI-kompatiblen API. Für die lokale Entwicklung betreiben viele Benutzer Ollama und richten OpenCode darauf aus. Ich hatte kürzlich sehr gute Erfahrungen mit der Konfiguration und dem Betrieb von OpenCode mit llama.cpp – llama-server stellt OpenAI-kompatible Endpunkte bereit, sodass Sie GGUF-Modelle mit demselben Workflow verwenden können. Wenn Sie eine feinere Kontrolle über Speicher und Laufzeit bevorzugen oder einen leichteren Stack ohne Python wünschen (Übrigens ist Ollama in Go implementiert), ist llama.cpp einen Versuch wert. Ich habe die Gelegenheit genossen, ausgelagerte Schichten zu konfigurieren, die Benutzerfreundlichkeit der Modelle im GGUF-Format zu nutzen und eine deutlich bessere/schnellere Implementierung der Kompatibilität mit neuen Modellen wie Qwen3.5 festzustellen. Wenn Sie wissen möchten, welche Modelle innerhalb von OpenCode tatsächlich gut abschneiden – bei Codieraufgaben und strukturierten Ausgabe-Genauigkeiten – siehe mein hands-on LLM-Vergleich für OpenCode.
Ein Projekt korrekt starten (empfohlener erster Lauf)
Von Ihrem Repository aus:
cd /path/to/your/repo
opencode
Dann initialisieren:
/init
Dies analysiert Ihr Projekt und erstellt eine AGENTS.md-Datei im Projektstammverzeichnis. Es lohnt sich in der Regel, diese Datei zu committen, damit OpenCode (und Teammitglieder) einen konsistenten Projektkontext haben.
Kern-CLI-Workflows (Copy-Paste-Beispiele)
OpenCode unterstützt nicht-interaktive Ausführungen:
opencode run "Erklären Sie, wie Closures in JavaScript funktionieren"
Workflow: Code generieren (CLI)
Ziel: Eine kleine, testbare Funktion mit minimalem Kontext generieren.
opencode run "Schreiben Sie eine Go-Funktion ParsePort(envVar string, defaultPort int) (int, error). Sie sollte die Umgebungsvariable lesen, eine Ganzzahl parsen, 1-65535 validieren und defaultPort zurückgeben, wenn leer. Fügen Sie 3 table-driven-Tests hinzu."
Erwartete Ausgabe:
- Eine Erklärung plus Code-Blöcke (Funktion + Tests). Der genaue Code variiert je nach Modell/Anbieter und Prompt.
Workflow: Eine Datei sicher refaktorieren (CLI + Plan-Agent)
Ziel: Refaktorierung ohne versehentliche Änderungen durch Verwendung eines restriktiveren Agents.
opencode run --agent plan --file ./src/auth.ts \
"Refaktorieren Sie diese Datei, um die Komplexität zu reduzieren. Ausgabe: (1) ein kurzer Plan, (2) ein unified diff patch, (3) Risiken/Edge-Cases zum Testen. Führen Sie keine Befehle aus."
Erwartete Ausgabe:
- Ein Planschnitt + ein
diff --git ...-Patch-Block + eine Test-Checkliste. - Der Inhalt variiert. Wenn kein Diff erzeugt wird, neu prompten: „Geben Sie nur ein unified diff zurück" oder „Verwenden Sie das Format
diff --git."
Workflow: Repository-Fragen stellen (CLI)
Ziel: Implementierungsdetails schnell finden.
opencode run --agent explore \
"Wo wird in diesem Repository die Authentifizierung für API-Anfragen validiert? Listen Sie wahrscheinlich Dateien auf und erklären Sie den Ablauf. Wenn Sie unsicher sind, sagen Sie, was Sie überprüft haben."
Erwartete Ausgabe:
- Eine kurze Karte der Dateipfade + Ablaufbeschreibung.
- Die Ausgabe hängt von der Repository-Größe und den Kontext-Tools des Modells/Anbieters ab.
Workflow: Wiederholte CLI-Ausführungen mit einem persistenten Server beschleunigen
Wenn Sie Skripte schreiben oder mehrere opencode run-Aufrufe ausführen, können Sie einen headless-Server einmal starten:
Terminal 1:
opencode serve --port 4096 --hostname 127.0.0.1
Terminal 2:
opencode run --attach http://localhost:4096 "Fassen Sie die Repository-Struktur und Haupteintrittspunkte zusammen."
opencode run --attach http://localhost:4096 "Schlagen Sie nun 3 hochwirksame Refaktorierungen vor und begründen Sie sie."
Erwartete Ausgabe:
- Wie bei
opencode run, aber in der Regel mit weniger wiederholtem Start-Overhead.
Programmatische Nutzung (offizielles JS/TS SDK)
OpenCode stellt einen HTTP-Server (OpenAPI) zur Verfügung und bietet einen typensicheren JS/TS-Client.
Installieren:
npm install @opencode-ai/sdk
Beispiel: Server + Client starten, dann prompten
Erstellen Sie scripts/opencode-sdk-demo.mjs:
import { createOpencode } from "@opencode-ai/sdk";
const opencode = await createOpencode({
hostname: "127.0.0.1",
port: 4096,
config: {
// Modellstrings haben das Format provider/model (nur ein Beispiel)
// model: "anthropic/claude-3-5-sonnet-20241022",
},
});
console.log(`Server läuft unter: ${opencode.server.url}`);
// Grundlegender Gesundheits-/Versionscheck
const health = await opencode.client.global.health();
console.log("Gesund:", health.data.healthy, "Version:", health.data.version);
// Eine Sitzung erstellen und prompten
const session = await opencode.client.session.create({ body: { title: "SDK-Quickstart-Demo" } });
const result = await opencode.client.session.prompt({
path: { id: session.data.id },
body: {
parts: [{ type: "text", text: "Generieren Sie einen kleinen README-Abschnitt, der dieses Repository beschreibt." }],
},
});
console.log(result.data);
// Server beim Abschluss schließen
opencode.server.close();
Ausführen:
node scripts/opencode-sdk-demo.mjs
Erwartete Ausgabeform:
- „Server läuft unter …"
- Eine Gesundheitsantwort mit einer Versionszeichenkette
- Ein Sitzungs-Prompt-Antwortobjekt (genaue Struktur hängt von
responseStyleund SDK-Version ab)
Minimale OpenCode-Konfiguration zum Kopieren
OpenCode unterstützt JSON- und JSONC-Konfiguration. Dies ist ein vernünftiger Ausgangspunkt für eine projektspezifische Konfiguration.
Erstellen Sie opencode.jsonc im Repository-Stammverzeichnis:
{
"$schema": "https://opencode.ai/config.json",
// Wählen Sie ein Standardmodell (Anbieter/Modell). Halten Sie dies mit dem, was `opencode models` zeigt, abgestimmt.
"model": "provider/model",
// Optional: ein günstigeres „kleines Modell" für leichte Aufgaben (Titel usw.)
"small_model": "provider/small-model",
// Optional: OpenCode-Server-Standardwerte (verwendet von serve/web)
"server": {
"port": 4096,
"hostname": "127.0.0.1"
},
// Optionale Sicherheit: Bestätigung vor Änderungen/Befehlen erfordern
"permission": {
"edit": "ask",
"bash": "ask"
}
}
Kurzer Cheat (Schnellreferenz)
Befehle, die Sie täglich verwenden werden
opencode # TUI starten
opencode run "..." # nicht-interaktive Ausführung (Automatisierung)
opencode run --file path "..." # Dateien an Prompt anhängen
opencode models --refresh # Modellliste aktualisieren
opencode auth login # Anbieter-Anmeldeinformationen konfigurieren
opencode serve # headless HTTP-Server (OpenAPI)
opencode web # headless Server + Weboberfläche
opencode session list # Sitzungen auflisten
opencode stats # Token/Kostenstatistiken
TUI-Befehle zum Auswendiglernen
/connect # einen Anbieter verbinden
/init # Repository analysieren, AGENTS.md generieren
/share # eine Sitzung teilen (falls aktiviert)
/undo # eine Änderung rückgängig machen
/redo # eine Änderung wiederherstellen
/help # Hilfe/Verknüpfungen
Standardkonzept der „Leader-Taste" (TUI)
OpenCode verwendet eine konfigurierbare „Leader"-Taste (häufig ctrl+x), um Terminal-Konflikte zu vermeiden. Viele Verknüpfungen sind „Leader + Taste".
Einseitige, druckbare OpenCode-Cheat-Tabelle
Diese Version ist bewusst dicht und „druckfreundlich". (Sie können sie später in eine dedizierte /ai-devtools/opencode/cheatsheet/-Seite kopieren.)
| Aufgabe | Befehl / Verknüpfung | Hinweise |
|---|---|---|
| TUI starten | opencode |
Standardverhalten ist das Starten der Terminal-Oberfläche |
| One-shot-Prompt ausführen | opencode run "..." |
Nicht-interaktiver Modus für Skripting/Automatisierung |
| Datei(en) an Prompt anhängen | opencode run --file path/to/file "..." |
Verwenden Sie mehrere --file-Flags für mehrere Dateien |
| Modell für eine Ausführung wählen | opencode run --model provider/model "..." |
Modellstrings sind provider/model |
| Agent wählen | opencode run --agent plan "..." |
Plan ist für sicherere „keine Änderungen"-Arbeit konzipiert (berechtigungseingeschränkt) |
| Modelle auflisten | opencode models [provider] |
Verwenden Sie --refresh, um die zwischengespeicherte Liste zu aktualisieren |
| Anbieter-Anmeldeinformationen konfigurieren | opencode auth login |
Speichert Anmeldeinformationen in ~/.local/share/opencode/auth.json |
| Authentifizierte Anbieter auflisten | opencode auth list / opencode auth ls |
Bestätigt, was OpenCode sieht |
| Headless-Server starten | opencode serve --port 4096 --hostname 127.0.0.1 |
OpenAPI-Spezifikation unter http://host:port/doc |
| Ausführungen an Server anhängen | opencode run --attach http://localhost:4096 "..." |
Hilfreich, um wiederholte kalte Starts zu vermeiden |
| Basisauthentifizierung aktivieren | OPENCODE_SERVER_PASSWORD=... opencode serve |
Benutzername standardmäßig opencode, es sei denn, überschrieben |
| Weboberflächenmodus | opencode web |
Startet Server und öffnet Browser |
| Eine Sitzung exportieren | opencode export [sessionID] |
Nützlich zum Archivieren oder Teilen von Kontext |
| Eine Sitzung importieren | opencode import session.json |
Kann auch von einer Share-URL importiert werden |
| Globale CLI-Flags anzeigen | opencode --help / opencode --version |
--print-logs + --log-level zum Debuggen |
| TUI-Leader-Taste-Konzept | Standard-Leader-Taste oft ctrl+x |
In tui.json anpassbar |
Oh My Opencode — OpenCode mit Multi-Agenten-Orchestrierung weiterbringen
Sobald OpenCode läuft, ist der nächste natürliche Schritt Oh My Opencode — ein Community-Plugin, das OpenCode in eine Multi-Agenten-Harness einhüllt. Die Hauptidee: Geben Sie ultrawork (oder ulw) in einer Sitzung ein, und ein Orchestrator (Sisyphus) übernimmt, delegiert Unteraufgaben an spezialisierte Agenten, die parallel laufen, jeweils auf der Modellfamilie, für die ihre Prompts optimiert sind.
Drei Artikel behandeln dies ausführlich:
-
Oh My Opencode Quickstart
Installieren Sie überbunx oh-my-opencode install, konfigurieren Sie Anbieter und führen Sie Ihre erste Ultrawork-Aufgabe in weniger als zehn Minuten durch. -
Deep Dive in spezialisierte Agenten
Alle 11 Agenten erklärt — Sisyphus, Hephaestus, Oracle, Prometheus, Bibliothekar und mehr — mit Modell-Routing, Fallback-Ketten und praktischen Hinweisen für selbst gehostete Modelle. -
Oh My Opencode-Erfahrung: Ehrliche Ergebnisse und Abrechnungsrisiken
Echte Benchmarks, ein $350 Gemini-Endlosschleifen-Zwischenfall und ein klares Urteil, wann OMO seine Overhead-Gebühren verdient.
Quellen (zuerst offiziell)
Offiziell:
- OpenCode-Docs (Einführung, CLI, Konfiguration, Server, SDK): https://opencode.ai/docs/
- OpenCode-Changelog: https://opencode.ai/changelog
- Offizielles GitHub-Repository: https://github.com/anomalyco/opencode
- Releases: https://github.com/anomalyco/opencode/releases
Autoritative Integrationsreferenz:
- GitHub-Changelog (Copilot unterstützt OpenCode): https://github.blog/changelog/2026-01-16-github-copilot-now-supports-opencode/
Respektierte Vergleiche/Tutorials:
- DataCamp: OpenCode vs. Claude Code (2026): https://www.datacamp.com/blog/opencode-vs-claude-code
- Builder.io: OpenCode vs. Claude Code (2026): https://www.builder.io/blog/opencode-vs-claude-code
- freeCodeCamp: KI in Ihr Terminal integrieren mit OpenCode: https://www.freecodecamp.org/news/integrate-ai-into-your-terminal-using-opencode/