Zum Inhalt springen
V1-Doku
tui

CLI

Der OpenCode CLI startet standardmäßig das TUI, wenn er ohne Argumente ausgeführt wird.

Terminal
opencode

Es akzeptiert aber auch Befehle, wie auf dieser Seite dokumentiert. Dadurch können Sie programmgesteuert mit OpenCode interagieren.

Terminal
opencode run "Explain how closures work in JavaScript"

Starten Sie die Terminalbenutzeroberfläche OpenCode.

Terminal
opencode [project]

Optionen

FlagKurzBeschreibung
--continue-cSetzen Sie die letzte Sitzung fort
--session-sSession-ID zum Fortfahren
--forkSitzung beim Fortsetzen verzweigen (mit --continue oder --session)
--promptPrompt zur Verwendung
--model-mZu verwendendes Modell in der Form provider/model
--agentZu verwendender Agent
--portPort zum Abhören
--hostnameHostname zum Abhören

Der OpenCode CLI verfügt außerdem über die folgenden Befehle.


Schließen Sie ein Terminal an einen bereits laufenden OpenCode-Backend-Server an, der über die Befehle serve oder web gestartet wurde.

Terminal
opencode attach [url]

Dies ermöglicht die Verwendung von TUI mit einem Remote-Backend OpenCode. Zum Beispiel:

Terminal
# Start the backend server for web/mobile access
opencode web --port 4096 --hostname 0.0.0.0

# In another terminal, attach the TUI to the running backend
opencode attach http://10.20.30.40:4096

Optionen

FlagKurzBeschreibung
--dirArbeitsverzeichnis zum Starten von TUI in
--continue-cLetzte Sitzung fortsetzen
--session-sSession-ID zum Fortfahren
--forkSitzung beim Fortsetzen abzweigen (mit --continue oder --session verwenden)
--password-pBasic-Auth-Passwort (standardmäßig OPENCODE_SERVER_PASSWORD)
--username-uBasic-Auth-Benutzername (standardmäßig OPENCODE_SERVER_USERNAME oder opencode)

Befehl zum Verwalten von Anmeldeinformationen und Anmelden für Anbieter.

Terminal
opencode auth [command]

login

OpenCode wird von der Anbieterliste bei Models.dev unterstützt, sodass Sie opencode auth login verwenden können, um API-Schlüssel für jeden Anbieter zu konfigurieren, den Sie verwenden möchten. Dies wird in ~/.local/share/opencode/auth.json gespeichert.

Terminal
opencode auth login

Wenn OpenCode startet, lädt es den Anbieter aus der Anmeldeinformationsdatei. Und ob in Ihren Umgebungen Schlüssel sind oder in Ihrem Projekt eine .env-Datei vorhanden ist.


list

Listet alle authentifizierten Anbieter auf, wie in der Anmeldeinformationsdatei gespeichert.

Terminal
opencode auth list

Oder die Kurzversion.

Terminal
opencode auth ls

logout

Melden Sie sich von einem Anbieter ab, indem Sie ihn aus der Anmeldeinformationsdatei löschen.

Terminal
opencode auth logout

Verwalten Sie den GitHub-Agenten für die Repository-Automatisierung.

Terminal
opencode github [command]

install

Installieren Sie den GitHub-Agenten in Ihrem Repository.

Terminal
opencode github install

Dadurch wird der erforderliche GitHub-Aktionsworkflow eingerichtet und Sie durch den Konfigurationsprozess geführt. Learn more.


run

Führen Sie den GitHub-Agenten aus. Dies wird normalerweise in GitHub-Aktionen verwendet.

Terminal
opencode github run
Optionen
FlagBeschreibung
--eventGitHub Scheinereignis zum Ausführen des Agenten für
--tokenGitHub persönliches Zugriffstoken

Verwalten Sie Model Context Protocol-Server.

Terminal
opencode mcp [command]

add

Fügen Sie Ihrer Konfiguration einen MCP-Server hinzu.

Terminal
opencode mcp add

Dieser Befehl führt Sie durch das Hinzufügen eines lokalen oder Remote-MCP-Servers.


list

Listen Sie alle konfigurierten MCP-Server und deren Verbindungsstatus auf.

Terminal
opencode mcp list

Oder nutzen Sie die Kurzversion.

Terminal
opencode mcp ls

auth

Authentifizieren Sie sich mit einem OAuth-fähigen MCP-Server.

Terminal
opencode mcp auth [name]

Wenn Sie keinen Servernamen angeben, werden Sie aufgefordert, einen der verfügbaren OAuth-fähigen Server auszuwählen.

Sie können auch OAuth-fähige Server und deren Authentifizierungsstatus auflisten.

Terminal
opencode mcp auth list

Oder nutzen Sie die Kurzversion.

Terminal
opencode mcp auth ls

logout

Entfernen Sie OAuth-Anmeldeinformationen für einen MCP-Server.

Terminal
opencode mcp logout [name]

debug

Beheben Sie OAuth-Verbindungsprobleme für einen MCP-Server.

Terminal
opencode mcp debug <name>

Listen Sie alle verfügbaren Modelle der konfigurierten Anbieter auf.

Terminal
opencode models [provider]

Dieser Befehl zeigt alle bei Ihren konfigurierten Anbietern verfügbaren Modelle im Format provider/model an.

Dies ist nützlich, um die genauen Modellnamen herauszufinden, die in Ihrer Konfiguration verwendet werden sollen.

Sie können optional eine Anbieter-ID übergeben, um Modelle nach diesem Anbieter zu filtern.

Terminal
opencode models anthropic

Optionen

FlagBeschreibung
--refreshAktualisieren Sie den Modellcache von models.dev
--verboseVerwenden Sie eine ausführlichere Modellausgabe (einschließlich Metadaten wie Kosten)

Verwenden Sie das Flag --refresh, um die zwischengespeicherte Modellliste zu aktualisieren. Dies ist nützlich, wenn einem Anbieter neue Modelle hinzugefügt wurden und Sie diese in OpenCode sehen möchten.

Terminal
opencode models --refresh

Führen Sie OpenCode im nicht interaktiven Modus aus, indem Sie direkt eine Eingabeaufforderung übergeben.

Terminal
opencode run [message..]

Dies ist nützlich für die Skripterstellung, die Automatisierung oder wenn Sie eine schnelle Antwort wünschen, ohne das vollständige TUI zu starten. Zum Beispiel:

Terminal
opencode run Explain the use of context in Go

Sie können auch eine Verbindung zu einer laufenden opencode serve-Instanz herstellen, um bei jedem Lauf Kaltstartzeiten für den MCP-Server zu vermeiden:

Terminal
# Start a headless server in one terminal
opencode serve

# In another terminal, run commands that attach to it
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"

Optionen

FlagKurzBeschreibung
--commandDer auszuführende Befehl, Argumente als Nachricht verwenden
--continue-cSetzen Sie die letzte Sitzung fort
--session-sSession-ID zum Fortfahren
--forkSitzung beim Fortsetzen verzweigen (mit --continue oder --session verwenden)
--model-mZu verwendendes Modell in der Form provider/model
--agentZu verwendender Agent
--file-fDatei(en) zum Anhängen an die Nachricht
--formatFormat: default (formatiert) oder json (rohe JSON-Ereignisse)
--titleTitel für die Sitzung (verwendet eine verkürzte Eingabeaufforderung, wenn kein Wert angegeben wird)
--attachAn einen laufenden OpenCode-Server anschließen (z.B. http://localhost:4096)
--password-pBasic-Auth-Passwort (standardmäßig OPENCODE_SERVER_PASSWORD)
--username-uBasic-Auth-Benutzername (standardmäßig OPENCODE_SERVER_USERNAME oder opencode)
--dirVerzeichnis für die Ausführung, oder Pfad auf dem Remote-Server beim Anhängen
--variantModellvariante (anbieterspezifischer Reasoning-Aufwand)
--thinkingDenkblöcke anzeigen
--portPort für den lokalen Server (standardmäßig zufälliger Port)

Starten Sie einen Headless-OpenCode-Server für den API-Zugriff. Sehen Sie sich die Server-Dokumentation für die vollständige HTTP-Schnittstelle an.

Terminal
opencode serve

Dadurch wird ein HTTP-Server gestartet, der API-Zugriff auf OpenCode-Funktionalität ohne die TUI-Schnittstelle bietet. Legen Sie OPENCODE_SERVER_PASSWORD fest, um die HTTP-Basisauthentifizierung zu aktivieren (Benutzername ist standardmäßig opencode).

Optionen

FlagBeschreibung
--portPort zum Abhören
--hostnameHostname zum Abhören
--mdnsmDNS-Discovery aktivieren
--corsZusätzliche Browser-Ursprünge für CORS zulassen

OpenCode-Sitzungen verwalten.

Terminal
opencode session [command]

list

Listen Sie alle OpenCode-Sitzungen auf.

Terminal
opencode session list
Optionen
FlagKurzBeschreibung
--max-count-nBeschränken auf die N neuesten Sitzungen
--formatAusgabeformat: table oder json (table)

Zeigen Sie Token-Nutzungs- und Kostenstatistiken für Ihre OpenCode-Sitzungen an.

Terminal
opencode stats

Optionen

FlagBeschreibung
--daysStatistiken für die letzten N Tage anzeigen (alle Zeiten)
--toolsAnzahl der angebotenen Werkzeuge (alle)
--modelsAufschlüsselung der Modellnutzung anzeigen (standardmäßig ausgeblendet). Übergeben Sie eine Zahl, um die obersten N anzuzeigen
--projectNach Projekt filtern (alle Projekte, leere Zeichenfolge: aktuelles Projekt)

Sitzungsdaten als JSON exportieren.

Terminal
opencode export [sessionID]

Wenn Sie keine Sitzungs-ID angeben, werden Sie aufgefordert, eine der verfügbaren Sitzungen auszuwählen.


Importieren Sie Sitzungsdaten aus einer JSON-Datei.

Terminal
opencode import <file>
Terminal
opencode import session.json

Starten Sie einen Headless-OpenCode-Server mit einer Weboberfläche.

Terminal
opencode web

Dadurch wird ein HTTP-Server gestartet und ein Webbrowser geöffnet, um über eine Webschnittstelle auf OpenCode zuzugreifen. Legen Sie OPENCODE_SERVER_PASSWORD fest, um die HTTP-Basisauthentifizierung zu aktivieren (Benutzername ist standardmäßig opencode).

Optionen

FlagBeschreibung
--portPort zum Abhören
--hostnameHostname zum Abhören
--mdnsmDNS-Discovery aktivieren
--corsZusätzliche Browser-Ursprünge für CORS zulassen

Starten Sie einen ACP (Agent Client Protocol) Server.

Terminal
opencode acp

Dieser Befehl startet einen ACP-Server, der über stdin/stdout unter Verwendung von nd-JSON kommuniziert.

Optionen

FlagBeschreibung
--cwdArbeitsverzeichnis
--portPort zum Abhören
--hostnameHostname zum Abhören

Deinstallieren Sie OpenCode und entfernen Sie alle zugehörigen Dateien.

Terminal
opencode uninstall

Optionen

FlagKurzBeschreibung
--keep-config-cKonfigurationsdateien behalten
--keep-data-dSitzungsdaten und Snapshots aufbewahren
--dry-runZeigt, was entfernt werden würde, ohne zu entfernen
--force-fBestätigungsaufforderungen überspringen

Aktualisiert OpenCode auf die neueste Version oder eine bestimmte Version.

Terminal
opencode upgrade [target]

Um auf die neueste Version zu aktualisieren:

Terminal
opencode upgrade

Um auf eine bestimmte Version zu aktualisieren.

Terminal
opencode upgrade v0.1.48

Optionen

FlagKurzBeschreibung
--method-mDie zu verwendende Installationsmethode; curl, npm, pnpm, bun, brew

Der OpenCode CLI akzeptiert die folgenden globalen Flags.

FlagKurzBeschreibung
--help-hHilfe anzeigen
--version-vVersionsnummer drucken
--print-logsProtokolle nach stderr drucken
--log-levelProtokollebene (DEBUG, INFO, WARN, ERROR)

OpenCode kann mithilfe von Umgebungsvariablen konfiguriert werden.

VariableTypBeschreibung
OPENCODE_GIT_BASH_PATHZeichenfolgePfad zur ausführbaren Git Bash-Datei unter Windows
OPENCODE_CONFIGZeichenfolgePfad zur Konfigurationsdatei
OPENCODE_CONFIG_DIRZeichenfolgePfad zum Konfigurationsverzeichnis
OPENCODE_CONFIG_CONTENTZeichenfolgeInline-JSON-Konfigurationsinhalt
OPENCODE_DISABLE_AUTOUPDATEboolescher WertAutomatische Update-Prüfungen deaktivieren
OPENCODE_DISABLE_PRUNEboolescher WertBereinigung alter Daten deaktivieren
OPENCODE_DISABLE_TERMINAL_TITLEboolescher WertDeaktivieren Sie die automatische Aktualisierung von Terminaltiteln
OPENCODE_PERMISSIONZeichenfolgeInline-JSON-Berechtigungskonfiguration
OPENCODE_DISABLE_DEFAULT_PLUGINSboolescher WertStandard-Plugins deaktivieren
OPENCODE_DISABLE_LSP_DOWNLOADboolescher WertAutomatische LSP-Server-Downloads deaktivieren
OPENCODE_ENABLE_EXPERIMENTAL_MODELSboolescher WertExperimentelle Modelle aktivieren
OPENCODE_DISABLE_AUTOCOMPACTboolescher WertAutomatische Kontextkomprimierung deaktivieren
OPENCODE_DISABLE_CLAUDE_CODEboolescher WertDeaktivieren Sie das Lesen von .claude (Prompt + Skills)
OPENCODE_DISABLE_CLAUDE_CODE_PROMPTboolescher WertDeaktivieren Sie das Lesen von ~/.claude/CLAUDE.md
OPENCODE_DISABLE_CLAUDE_CODE_SKILLSboolescher WertDeaktivieren Sie das Laden von .claude/skills
OPENCODE_DISABLE_MODELS_FETCHboolescher WertDeaktivieren Sie das Abrufen von Modellen aus Remote-Quellen
OPENCODE_FAKE_VCSZeichenfolgeGefälschter VCS-Anbieter zu Testzwecken
OPENCODE_CLIENTZeichenfolgeClient-ID (standardmäßig cli)
OPENCODE_ENABLE_EXAboolescher WertExa-Websuchtools aktivieren
OPENCODE_SERVER_PASSWORDZeichenfolgeAktivieren Sie die Basisauthentifizierung für serve/web
OPENCODE_SERVER_USERNAMEZeichenfolgeBenutzernamen für die Basisauthentifizierung überschreiben (Standard opencode)
OPENCODE_MODELS_URLZeichenfolgeBenutzerdefinierte URL zum Abrufen der Modellkonfiguration

Diese Umgebungsvariablen ermöglichen experimentelle Funktionen, die sich ändern oder entfernt werden können.

VariableTypBeschreibung
OPENCODE_EXPERIMENTALboolescher WertExperimentelle Funktionen unter dem Sammelflag aktivieren
OPENCODE_EXPERIMENTAL_ICON_DISCOVERYboolescher WertSymbolerkennung aktivieren
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECTboolescher WertKopieren bei Auswahl in TUI deaktivieren
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MSZahlStandard-Timeout für Bash-Befehle in ms
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAXZahlMaximale Ausgabetokens für LLM-Antworten
OPENCODE_EXPERIMENTAL_FILEWATCHERboolescher WertDateiüberwachung für das gesamte Verzeichnis aktivieren
OPENCODE_EXPERIMENTAL_OXFMTboolescher WertOxfmt-Formatierer aktivieren
OPENCODE_EXPERIMENTAL_LSP_TOOLboolescher WertExperimentelles LSP-Tool aktivieren
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHERboolescher WertDateiüberwachung deaktivieren
OPENCODE_EXPERIMENTAL_EXAboolescher WertExperimentelle Exa-Funktionen aktivieren
OPENCODE_EXPERIMENTAL_LSP_TYboolescher WertTY LSP für Python-Dateien aktivieren
OPENCODE_EXPERIMENTAL_PLAN_MODEboolescher WertPlanmodus aktivieren
OPENCODE_EXPERIMENTAL_EVENT_SYSTEMboolescher WertExperimentelles Ereignissystem aktivieren
OPENCODE_EXPERIMENTAL_NATIVE_LLMboolescher WertNativen LLM-Anfragepfad aktivieren
OPENCODE_EXPERIMENTAL_PARALLELboolescher WertParallele Websuche aktivieren
OPENCODE_EXPERIMENTAL_SCOUTboolescher WertScout-Subagent aktivieren
OPENCODE_EXPERIMENTAL_WORKSPACESboolescher WertWorkspace-Unterstützung aktivieren