OpenCode Quickstart: Installation, Konfiguration und Nutzung des KI-Coding-Agenten für die Konsole

So installieren, konfigurieren und verwenden Sie OpenCode

Inhaltsverzeichnis

OpenCode ist ein quelloffener KI-Coding-Agent, den Sie in der Terminalumgebung (TUI + CLI) ausführen können, mit optionalen Oberflächen für Desktop und IDE. Dies ist der OpenCode Quickstart: Installation, Verifikation, Verbindung eines Modells/Anbieters und Ausführung echter Workflows (CLI + API).

Versionshinweis: OpenCode wird schnell veröffentlicht. Die hier genannten „latest“-Befehle sind stabil, aber Ausgabe und Standardwerte können sich ändern – prüfen Sie daher immer die offiziellen CLI-Dokumente und das Changelog (unten verlinkt).

Dieser Artikel ist Teil von KI-Entwicklungstools: Der vollständige Leitfaden für KI-gestützte Entwicklung. Wenn Sie auch einen selbst gehosteten Assistenten wie Nous Hermes pflegen, zeigt das Hermes Agent CLI Spickzettel den hermes-Befehlssatz neben diesem OpenCode-Quickstart.

Was OpenCode ist (und wo es einzuordnen ist)

OpenCode ist für terminal-first, agentisches Coding konzipiert, bleibt dabei aber flexibel hinsichtlich Anbieter und Modelle. In der Praxis ist es eine Workflow-Ebene, die Folgendes ermöglicht:

  • Start einer Terminal-Benutzeroberfläche (TUI), wenn Sie opencode ausführen
  • Ausführung nicht-interaktiver „One-Shot“-Prompts über opencode run (Skripte/Automatisierung)
  • Bereitstellung eines headless HTTP-Servers über opencode serve (und einer Web-UI über opencode web)
  • Programmgesteuerte Steuerung über das offizielle JS/TS-SDK @opencode-ai/sdk

Wenn Sie es mit einem anderen quelloffenen agentischen Assistenten vergleichen möchten, der mehrstufige Pläne in einer sandboxumgebung ausführen kann, siehe OpenHands Coding Assistant QuickStart.

Für Anthropics terminal-first Agent mit derselben „lokales Modell über HTTP“-Geschichte (Ollama oder llama.cpp, Berechtigungen, Preismodell), siehe Claude Code Installation und Konfiguration für Ollama, llama.cpp, Preise.

Für einen absichtlich minimalen Ansatz derselben Terminal-Agent-Idee – vier Standard-Tools, keine integrierte Sandbox, alles andere über Erweiterungen – siehe die Pi Coding Agent Rezension.

opencode with self-hosted qwen3.5 27b LLM

Voraussetzungen

Sie benötigen:

  • Eine moderne Terminal-Emulation (wichtig für das TUI-Erlebnis).
  • Zugriff auf mindestens ein Modell/einen Anbieter (API-Schlüssel oder Abonnement-Authentifizierung, je nach Anbieter). Lokale Optionen wie Ollama oder llama.cpp funktionieren ohne API-Schlüssel, wenn Sie einen kompatiblen Server lokal ausführen.

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 aktuellsten 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 zu Windows (die offiziellen Richtlinien empfehlen häufig WSL für die beste Kompatibilität). Alternativen umfassen 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 verifizieren

opencode --version
opencode --help

Erwartete Ausgabestruktur (variiert je nach Version):

# Beispiel:
# <gibt eine Versionsnummer aus, z. B. vX.Y.Z>
# <gibt Hilfe mit verfügbaren Befehlen/Unterbefehlen aus>

Einen Anbieter verbinden (zwei praktische Wege)

Weg A: TUI /connect (interaktiv)

Starten Sie OpenCode:

opencode

Führen Sie dann aus:

/connect

Folgen Sie den UI-Schritten, um einen Anbieter auszuwählen und sich zu authentifizieren (einige Abläufe öffnen einen Browser/Gerätelogin).

Weg B: CLI opencode auth login (Anbieter-Schlüssel)

OpenCode unterstützt die Konfiguration von Anbietern über:

opencode auth login

Hinweise:

  • Anmeldeinformationen werden unter ~/.local/share/opencode/auth.json gespeichert.
  • 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 führen viele Benutzer Ollama aus und verbinden OpenCode damit. Ich hatte kürzlich sehr gute Erfahrungen mit der Konfiguration und Ausführung von OpenCode mit llama.cpp statt – llama-server stellt OpenAI-kompatible Endpunkte bereit, sodass Sie GGUF-Modelle mit demselben Workflow verwenden können. Wenn Sie eine feingranulare Kontrolle über Speicher und Laufzeit wünschen oder einen leichteren Stack ohne Python bevorzugen (übrigens ist ollama in Go implementiert), lohnt sich llama.cpp. Ich habe die Möglichkeit sehr genossen, offgeladene Ebenen zu konfigurieren, die Benutzerfreundlichkeit der Modelle im GGUF-Format und die viel bessere/schnellere implementierte Kompatibilität mit neuen Modellen wie Qwen3.5. Wenn Sie wissen möchten, welche Modelle in OpenCode tatsächlich gut funktionieren – über Coding-Aufgaben und strukturierte Ausgabe-Genauigkeit hinweg – siehe mein praktischer LLM-Vergleich für OpenCode.

Ein Projekt korrekt starten (empfohlener erster Lauf)

Aus Ihrem Repository:

cd /path/to/your/repo
opencode

Initialisieren Sie dann:

/init

Dies analysiert Ihr Projekt und erstellt eine AGENTS.md-Datei im Projektstamm. Es lohnt sich in der Regel, diese Datei zu committen, damit OpenCode (und Teammitglieder) einen konsistenten Projektkontext teilen.

Core-CLI-Workflows (Copy-Paste-Beispiele)

OpenCode unterstützt nicht-interaktive Läufe:

opencode run "Explain how closures work in JavaScript"

Für Befehlszeilen-Workflow-Muster – Pipen von Git-Ausgabe, Makefile- und CI-Ziele, Berechtigungsrichtlinien für unbeaufsichtigte Läufe – und die zu erwartenden Fehlermodi, siehe den OpenCode CLI Praxis-Leitfaden. Er baut auf diesem Quickstart auf, wiederholt es aber nicht.

Workflow: Code generieren (CLI)

Ziel: Generieren Sie eine kleine, testbare Funktion mit minimalem Kontext.

opencode run "Write a Go function ParsePort(envVar string, defaultPort int) (int, error). It should read the env var, parse an int, validate 1-65535, and return defaultPort if empty. Include 3 table-driven tests."

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 refaktorisieren (CLI + Plan-Agent)

Ziel: Bestätigen Sie, dass der restriktivere plan-Agent ausgeführt wird, bevor Sie sich darauf verlassen.

opencode run --agent plan --file ./src/auth.ts \
  "Refactor this file to reduce complexity. Output a short plan only. Do not run commands."

Erwartete Ausgabe: Ein Plan-Abschnitt, keine Dateiänderungen, keine ausgeführten Befehle.

Workflow: Repository-Fragen stellen (CLI)

Ziel: Bestätigen Sie, dass der explore-Agent Implementierungsdetails lokalisieren kann.

opencode run --agent explore \
  "Where is authentication validated for API requests in this repository?"

Erwartete Ausgabe: Eine kurze Karte der Dateipfade und eine Flussbeschreibung.

Beide sind Einmal-Smoke-Tests. Für die eingeschränkte, produktionsreife Version derselben Aufgaben – explizite Risiko/Grenzfall-Ausgabe, Unified-Diff-Patches, berechtigungsbewusste Erkundungsprompts und was zu tun ist, wenn das Modell nicht compliant ist – siehe den Abschnitt „Best OpenCode CLI Use Cases“ im OpenCode CLI Praxis-Leitfaden.

Workflow: Wiederholte CLI-Läufe 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 "Summarize the repo structure and main entrypoints."
opencode run --attach http://localhost:4096 "Now propose 3 high-impact refactors and why."

Erwartete Ausgabe:

  • Gleich 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) bereit und bietet einen typsicheren JS/TS-Client.

Installation:

npm install @opencode-ai/sdk

Beispiel: Server + Client starten, dann Prompt senden

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: {
    // Modellstring-Format ist provider/model (nur Beispiel)
    // model: "anthropic/claude-3-5-sonnet-20241022",
  },
});

console.log(`Server running at: ${opencode.server.url}`);

// Basis-Health/Version-Check
const health = await opencode.client.global.health();
console.log("Healthy:", health.data.healthy, "Version:", health.data.version);

// Sitzung erstellen und Prompt senden
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: "Generate a small README section describing this repo." }],
  },
});

console.log(result.data);

// Server schließen, wenn fertig
opencode.server.close();

Ausführen:

node scripts/opencode-sdk-demo.mjs

Erwartete Ausgabestruktur:

  • „Server running at …“
  • Eine Health-Antwort einschließlich einer Versionszeichenkette
  • Ein Sitzungs-Prompt-Antwortobjekt (exakte Struktur hängt von responseStyle und SDK-Version ab)

Minimale OpenCode-Konfiguration zum Kopieren

OpenCode unterstützt JSON- und JSONC-Konfiguration. Dies ist ein vernünftiger Ausgangspunkt für eine projektlokale Konfiguration.

Erstellen Sie opencode.jsonc in Ihrem Repository-Stamm:

{
  "$schema": "https://opencode.ai/config.json",

  // Standardmodell wählen (provider/model). Dies mit dem ausrichten, was `opencode models` anzeigt.
  "model": "provider/model",

  // Optional: Ein günstigeres „kleines Modell“ für leichte Aufgaben (Titel, etc.)
  "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 Bearbeitung/Befehlen erforderlich
  "permission": {
    "edit": "ask",
    "bash": "ask"
  }
}

Für eine vollständigere Berechtigungsrichtlinie für unbeaufsichtigte opencode run-Jobs, siehe den OpenCode CLI Praxis-Leitfaden.

Kurzer Spickzettel (Schnellreferenz)

Befehle, die Sie täglich verwenden werden

opencode                       # TUI starten
opencode run "..."             # Nicht-interaktiver Lauf (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 + Web-UI
opencode session list          # Sitzungen auflisten
opencode stats                 # Token/Kosten-Statistiken

TUI-Befehle, die sich zu merken lohnen

/connect   # Anbieter verbinden
/init      # Repository analysieren, AGENTS.md generieren
/share     # Sitzung teilen (wenn aktiviert)
/undo      # Änderung rückgängig machen
/redo      # Änderung wiederherstellen
/help      # Hilfe/Kürzel

Konzept des Standard-„Leader Keys“ (TUI)

OpenCode verwendet eine konfigurierbare „Leader“-Taste (häufig ctrl+x), um Terminal-Konflikte zu vermeiden. Viele Kürzel sind „Leader + Taste“.

Einseitige druckbare OpenCode-Spickzettel-Tabelle

Diese Version ist absichtlich dicht und „druckfreundlich“. (Sie können sie später in eine dedizierte /ai-devtools/opencode/cheatsheet/-Seite einfügen.)

Aufgabe Befehl / Kürzel Hinweise
TUI starten opencode Standardverhalten ist das Starten der Terminal-UI
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 "..." Mehrere --file-Flags für mehrere Dateien verwenden
Modell für einen Lauf 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 (berechtigungsbeschränkt)
Modelle auflisten opencode models [provider] --refresh verwenden, 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-Spec unter http://host:port/doc
Läufe an Server anhängen opencode run --attach http://localhost:4096 "..." Nützlich, um wiederholte Kaltstarts zu vermeiden
Basis-Authentifizierung aktivieren OPENCODE_SERVER_PASSWORD=... opencode serve Benutzername standardmäßig opencode, außer überschrieben
Web-UI-Modus opencode web Startet Server + öffnet Browser
Sitzung exportieren opencode export [sessionID] Nützlich zum Archivieren oder Teilen von Kontext
Sitzung importieren opencode import session.json Kann auch aus einer Share-URL importiert werden
Globale CLI-Flags anzeigen opencode --help / opencode --version --print-logs + --log-level für Debugging
TUI Leader-Key-Konzept Standard-Leader-Key oft ctrl+x In tui.json anpassbar

Oh My Opencode – OpenCode mit Multi-Agent-Orchestrierung weiterentwickeln

Sobald OpenCode läuft, ist der natürliche nächste Schritt Oh My Opencode – ein Community-Plugin, das OpenCode in einem Multi-Agent-Harness kapselt. Die Hauptidee: Tippen Sie ultrawork (oder ulw) in einer Sitzung, und ein Orchestrator (Sisyphus) übernimmt, delegiert Unteraufgaben an Spezialagenten, die parallel auf dem Modellfamily laufen, für die ihre Prompts optimiert sind.

Drei Artikel behandeln es im Detail:


OpenCode war eines der ersten Tools, die von Anthropics Politik betroffen waren, den Zugriff auf Claude-Abonnements durch Dritte zu blockieren – ein Schritt, der im Januar 2026 unternommen wurde, einen Monat bevor dieselbe Einschränkung OpenClaw traf. Die OpenClaw Aufstieg und Fall Zeitleiste dokumentiert beide Ereignisse und das breitere Muster, das sie für Agent-Tools darstellen, die auf Abonnement-Compute basieren.


Quellen (offizielle zuerst)

Offiziell:

Autoritative Integrationsreferenz:

Glaubwürdige Vergleiche/Tutorials:

Abonnieren

Neue Beiträge zu Systemen, Infrastruktur und KI-Engineering.