OpenCode Quickstart: Installieren, Konfigurieren und Verwenden des Terminal AI-Coding-Agenten
Wie Sie OpenCode installieren, konfigurieren und verwenden können
OpenCode ist ein quelloffenes KI-Code-Agent, den Sie im Terminal (TUI + CLI) ausführen können, mit optionalen Desktop- und IDE-Oberflächen. Dies ist der OpenCode Quickstart: installieren, überprüfen, einen Modell/Anbieter verbinden und echte Workflows ausführen (CLI + API).
Versionshinweis: OpenCode wird schnell weiterentwickelt. Die hier genannten „latest“-Befehle sind stabil, aber Ausgaben und Standardwerte können sich ändern – prüfen Sie immer die offiziellen CLI-Dokumentationen und den Changelog (siehe unten).
Dieser Artikel ist Teil von AI Developer Tools: The Complete Guide to AI-Powered Development.
Was OpenCode ist (und wo es passt)
OpenCode ist für terminalerste, agentenbasierte Codierung konzipiert, während es flexibel zwischen Anbietern/Modellen bleibt. In der Praxis ist es eine Workflow-Schicht, die folgendes ermöglichen kann:
- ein Terminal-UI starten, wenn Sie
opencodeausführen - nicht-interaktive „One-Shot“-Prompts über
opencode runausführen (Skripte/Automatisierung) - einen headless HTTP-Server über
opencode serveausführen (und eine Web-Oberfläche überopencode web) - programmatisch über das offizielle JS/TS SDK
@opencode-ai/sdkgesteuert werden

Wenn Sie ein /ai-devtools/-Cluster erstellen, ist OpenCode ein starker Kandidat für einen Untercluster, da es natürlicherweise in folgende Bereiche expandiert:
- CLI-Deep-Dive
- Modell/Anbieter-Verhalten und Kosten (LLM-Vergleich innerhalb von OpenCode)
- Konfiguration & Agenten
- Integrationen (GitHub/GitLab/Copilot)
- Cheatsheet
Voraussetzungen
Sie benötigen:
- einen modernen Terminal-Emulator (wichtig für die TUI-Erfahrung).
- Zugriff auf mindestens ein Modell/Anbieter (API-Schlüssel oder Abonnements, je nach Anbieter).
OpenCode installieren (Kopieren und Einfügen)
Offizieller Installations-Skript (Linux/macOS/WSL):
curl -fsSL https://opencode.ai/install | bash
Optionen für Paket-Manager (offizielle Beispiele):
# Global install via Node.js
npm install -g opencode-ai
# Homebrew (empfohlen von OpenCode für die aktuellsten Releases)
brew install anomalyco/tap/opencode
# Arch Linux (stabile Version)
sudo pacman -S opencode
# Arch Linux (neueste Version aus AUR)
paru -S opencode-bin
Windows-Hinweise (offizielle Empfehlung ist in der Regel WSL für die beste Kompatibilität). Alternativen sind Scoop/Chocolatey oder npm.
# Chocolatey (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 Ausgabe (variiert je nach Version):
# Beispiel:
# <gibt eine Versionsnummer aus, z. B. vX.Y.Z>
# <gibt Hilfe mit verfügbaren Befehlen/Unterbefehlen aus>
Anbieter verbinden (zwei praktische Wege)
Weg A: TUI /connect (interaktiv)
Starten Sie OpenCode:
opencode
Dann führen Sie aus:
/connect
Folgen Sie den Schritten im UI, um einen Anbieter auszuwählen und sich anzumelden (einige Flows öffnen einen Browser/Device-Login).
Weg B: CLI opencode auth login (Anbieter-Schlüssel)
OpenCode unterstützt die Konfiguration von Anbietern über:
opencode auth login
Hinweise:
- Die Anmeldeinformationen werden unter
~/.local/share/opencode/auth.jsongespeichert. - OpenCode kann auch Schlüssel aus Umgebungsvariablen oder einer
.env-Datei in Ihrem Projekt laden.
Projekt korrekt starten (empfohlener erster Lauf)
Von Ihrem Repository aus:
cd /path/to/your/repo
opencode
Dann initialisieren Sie:
/init
Dies analysiert Ihr Projekt und erstellt eine AGENTS.md-Datei in der Projektwurzel. Es ist in der Regel sinnvoll, diese Datei zu committen, damit OpenCode (und Teamkollegen) konsistenten Projektkontext teilen.
Kern-CLI-Workflows (Beispiele zum Kopieren und Einfügen)
OpenCode unterstützt nicht-interaktive Ausführungen:
opencode run "Erklären Sie, wie Closures in JavaScript funktionieren"
Workflow: Code generieren (CLI)
Ziel: Erstellen Sie eine kleine, testbare Funktion mit minimaler Kontext.
opencode run "Schreiben Sie eine Go-Funktion ParsePort(envVar string, defaultPort int) (int, error). Sie sollte die Umgebungsvariable lesen, eine ganze Zahl parsen, 1-65535 validieren und defaultPort zurückgeben, wenn leer. Fügen Sie 3 tabellengetriebene Tests hinzu."
Erwartete Ausgabe:
- Eine Erklärung plus Codeblöcke (Funktion + Tests). Der genaue Code variiert je nach Modell/Anbieter und Prompt.
Workflow: Datei sicher umschreiben (CLI + Plan-Agent)
Ziel: Umschreiben ohne versehentliche Änderungen durch die Verwendung eines eingeschränkten Agenten.
opencode run --agent plan --file ./src/auth.ts \
"Umschreiben Sie diese Datei, um die Komplexität zu reduzieren. Ausgabe: (1) ein kurzer Plan, (2) ein vereinigter Diff-Patch, (3) Risiken/Edge-Cases, die getestet werden sollten. Führen Sie keine Befehle aus."
Erwartete Ausgabe:
- Ein Planabschnitt + ein
diff --git ...-Patchblock + eine Test-Checkliste. - Inhalt variiert. Wenn kein Diff erzeugt wird, erneut prompten: „Geben Sie nur einen vereinigten Diff“ oder „Verwenden Sie
diff --git-Format.“
Workflow: Fragen zu einem Repository stellen (CLI)
Ziel: Schnell Implementierungsdetails lokalisieren.
opencode run --agent explore \
"In diesem Repository, wo wird die Authentifizierung für API-Anfragen validiert? Listen Sie wahrscheinliche Dateien auf und erklären Sie den Ablauf. Wenn Sie sich unsicher sind, sagen Sie, was Sie geprüft haben."
Erwartete Ausgabe:
- Ein kurzer Kartenplan von Dateipfaden + Beschreibung des Ablaufs.
- Die Ausgabe hängt von der Repositorygröße und den Kontext-Tools des Modells/Anbieters ab.
Workflow: Wiederholte CLI-Aufrufe beschleunigen mit einem persistenten Server
Wenn Sie Skripte oder mehrere opencode run-Aufrufe durchführen, können Sie einen headless Server einmalig starten:
Terminal 1:
opencode serve --port 4096 --hostname 127.0.0.1
Terminal 2:
opencode run --attach http://localhost:4096 "Zusammenfassen Sie die Repositorystruktur und die Haupteintrittspunkte."
opencode run --attach http://localhost:4096 "Stellen Sie nun 3 hochimpactige Refaktorisierungen vor und erklären Sie, warum."
Erwartete Ausgabe:
- Dieselbe wie bei
opencode run, aber in der Regel mit weniger Wiederholungsaufwand beim Start.
Programmatische Verwendung (offizielles JS/TS SDK)
OpenCode stellt einen HTTP-Server (OpenAPI) bereit und bietet einen typsicheren JS/TS-Client.
Installieren Sie:
npm install @opencode-ai/sdk
Beispiel: Server + Client starten und 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: {
// Modell-String-Format ist Anbieter/Modell (Beispiel nur)
// model: "anthropic/claude-3-5-sonnet-20241022",
},
});
console.log(`Server läuft unter: ${opencode.server.url}`);
// Grundlegende Gesundheits-/Versionsprüfung
const health = await opencode.client.global.health();
console.log("Gesund:", health.data.healthy, "Version:", health.data.version);
// 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 schließen, wenn fertig
opencode.server.close();
Ausführen:
node scripts/opencode-sdk-demo.mjs
Erwartete Ausgabeform:
- „Server läuft unter …“
- Eine Gesundheitsantwort, die eine Versionszeichenfolge enthält
- Ein Sitzungs-Prompt-Antwortobjekt (genaue Struktur hängt von
responseStyleund SDK-Version ab)
Minimaler OpenCode-Config, den Sie kopieren können
OpenCode unterstützt JSON und JSONC-Konfiguration. Dies ist ein vernünftiger Ausgangspunkt für eine projektlokale Konfiguration.
Erstellen Sie opencode.jsonc in der Wurzel Ihres Repositorys:
{
"$schema": "https://opencode.ai/config.json",
// Wählen Sie ein Standardmodell (Anbieter/Modell). Halten Sie dies mit dem, was `opencode models` anzeigt, synchron.
"model": "provider/model",
// Optional: ein günstigerer „kleiner Modell“ für leichte Aufgaben (Titel usw.)
"small_model": "provider/small-model",
// Optional: OpenCode-Server-Standardwerte (werden von serve/web verwendet)
"server": {
"port": 4096,
"hostname": "127.0.0.1"
},
// Optionaler Sicherheit: Bestätigung vor Änderungen/Befehlen erforderlich
"permission": {
"edit": "ask",
"bash": "ask"
}
}
Kurzes Cheatsheet (schneller Referenz)
Befehle, die Sie täglich verwenden werden
opencode # TUI starten
opencode run "..." # nicht-interaktive Ausführung (Automatisierung)
opencode run --file path "..." # Dateien zum Prompt anhängen
opencode models --refresh # Modellliste aktualisieren
opencode auth login # Anbieter-Anmeldeinformationen konfigurieren
opencode serve # headless HTTP-Server (OpenAPI)
opencode web # headless Server + Web-Oberfläche
opencode session list # Sitzungen auflisten
opencode stats # Token/Kosten-Statistiken
TUI-Befehle, die Sie sich merken sollten
/connect # Anbieter verbinden
/init # Repository analysieren, AGENTS.md generieren
/share # Sitzung teilen (wenn aktiviert)
/undo # Änderung rückgängig machen
/redo # Änderung wiederholen
/help # Hilfe/Shortcuts
Standardkonzept des „Leader-Keys“ (TUI)
OpenCode verwendet einen konfigurierbaren „Leader“-Schlüssel (häufig ctrl+x), um Terminal-Konflikte zu vermeiden. Viele Tastenkombinationen sind „Leader + Schlüssel“.
FAQ
Was ist OpenCode?
OpenCode ist ein quelloffenes KI-Code-Agent, der für die Arbeit in Ihrem Terminal (TUI + CLI) mit zusätzlichen Desktop/IDE-Oberflächen konzipiert ist.
Ist OpenCode kostenlos?
Das Tool ist quelloffen. Die Nutzungskosten hängen vom angeschlossenen Modell/Anbieter ab. Einige Anbieter können ein Abonnement oder kostenlose Tiers anbieten.
Wie kann ich OpenCode ohne TUI ausführen?
Verwenden Sie opencode run "..." für den nicht-interaktiven Modus (nützlich für Skripte/Automatisierung).
Wo speichert OpenCode Anbieter-Anmeldeinformationen?
opencode auth login speichert Anmeldeinformationen unter ~/.local/share/opencode/auth.json.
Hat OpenCode eine API / SDK?
Ja. OpenCode kann einen headless HTTP-Server (opencode serve) mit einer OpenAPI-Spezifikation unter /doc starten und bietet ein offizielles JS/TS-SDK: @opencode-ai/sdk.
Kann ich GitHub Copilot mit OpenCode verwenden?
GitHub hat angekündigt, dass Copilot eine Authentifizierung mit OpenCode über eine formelle Integration unterstützt. Die genaue Verfügbarkeit hängt von Ihrem Copilot-Plan und dem aktuellen Anbieter-Authentifizierungsfluss ab.
Einseitiges druckfähiges OpenCode-Cheatsheet-Tabellenblatt
Diese Version ist bewusst dicht und „druckfreundlich“. (Sie können sie später in eine dedizierte /ai-devtools/opencode/cheatsheet/-Seite einfügen.)
| Aufgabe | Befehl / Tastenkombination | Hinweise |
|---|---|---|
| TUI starten | opencode |
Standardverhalten ist das Starten der Terminal-Oberfläche |
| Ein Prompt ausführen | opencode run "..." |
Nicht-interaktiver Modus für Skripte/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 "..." |
Modell-Strings sind provider/model |
| Agent wählen | opencode run --agent plan "..." |
Plan ist für sicherere „keine Änderungen“-Arbeit (berechtigungsbeschränkt) |
| Modelle auflisten | opencode models [provider] |
Verwenden Sie --refresh, um die zwischengespeicherte Liste zu aktualisieren |
| Anbieter-Anmeldeinformationen konfigurieren | opencode auth login |
Speichert Anmeldeinformationen unter ~/.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 "..." |
Nützlich, um wiederholte kalte Starts zu vermeiden |
| Grundlegende Authentifizierung aktivieren | OPENCODE_SERVER_PASSWORD=... opencode serve |
Standardnutzername ist opencode, es sei denn, er wird überschrieben |
| Web-Oberflächenmodus | opencode web |
Startet Server + öffnet Browser |
| Sitzung exportieren | opencode export [sessionID] |
Nützlich für Archivierung oder Kontextfreigabe |
| Sitzung importieren | opencode import session.json |
Kann auch aus einem Share-URL importiert werden |
| Globale CLI-Flaggen ansehen | opencode --help / opencode --version |
--print-logs + --log-level für Debugging |
| TUI-Leader-Key-Konzept | Standard-Leader-Key häufig ctrl+x |
In tui.json anpassbar |
Quellen (offiziell zuerst)
Offiziell:
- OpenCode-Dokumentation (Einführung, CLI, Konfiguration, Server, SDK): https://opencode.ai/docs/
- OpenCode-Changelog: https://opencode.ai/changelog
- Offizieller GitHub-Repo: 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/
Reputierte 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: Integrieren Sie KI in Ihr Terminal mit OpenCode: https://www.freecodecamp.org/news/integrate-ai-into-your-terminal-using-opencode