Zum Inhalt springen

CLI

OpenCode CLI Optionen und Befehle.

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

Terminal-Fenster
opencode

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

Terminal-Fenster
opencode run "Explain how closures work in JavaScript"

tui

Starten Sie die Terminalbenutzeroberfläche OpenCode.

Terminal-Fenster
opencode [project]

Flags

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

Befehle

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


agent

Agenten für OpenCode verwalten.

Terminal-Fenster
opencode agent [command]

attach

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

Terminal-Fenster
opencode attach [url]

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

Terminal-Fenster
# 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

Flags

FlagKurzBeschreibung
--dirArbeitsverzeichnis zum Starten von TUI in
--session-sSession-ID zum Fortfahren

create

Erstellen Sie einen neuen Agenten mit benutzerdefinierter Konfiguration.

Terminal-Fenster
opencode agent create

Dieser Befehl führt Sie durch die Erstellung eines neuen Agenten mit einer benutzerdefinierten Systemeingabeaufforderung und Toolkonfiguration.


list

Listen Sie alle verfügbaren Agenten auf.

Terminal-Fenster
opencode agent list

auth

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

Terminal-Fenster
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-Fenster
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-Fenster
opencode auth list

Oder die Kurzversion.

Terminal-Fenster
opencode auth ls

logout

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

Terminal-Fenster
opencode auth logout

github

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

Terminal-Fenster
opencode github [command]

install

Installieren Sie den GitHub-Agenten in Ihrem Repository.

Terminal-Fenster
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-Fenster
opencode github run
Flags
FlagBeschreibung
--eventGitHub Scheinereignis zum Ausführen des Agenten für
--tokenGitHub persönliches Zugriffstoken

mcp

Verwalten Sie Model Context Protocol-Server.

Terminal-Fenster
opencode mcp [command]

add

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

Terminal-Fenster
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-Fenster
opencode mcp list

Oder nutzen Sie die Kurzversion.

Terminal-Fenster
opencode mcp ls

auth

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

Terminal-Fenster
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-Fenster
opencode mcp auth list

Oder nutzen Sie die Kurzversion.

Terminal-Fenster
opencode mcp auth ls

logout

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

Terminal-Fenster
opencode mcp logout [name]

debug

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

Terminal-Fenster
opencode mcp debug <name>

models

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

Terminal-Fenster
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-Fenster
opencode models anthropic

Flags

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-Fenster
opencode models --refresh

run

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

Terminal-Fenster
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-Fenster
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-Fenster
# 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"

Flags

FlagKurzBeschreibung
--commandDer auszuführende Befehl, Nachricht für Argumente verwenden
--continue-cSetzen Sie die letzte Sitzung fort
--session-sSession-ID zum Fortfahren
--forkSitzung beim Fortsetzen verzweigen (mit --continue oder --session verwenden)
--shareTeilen Sie die Sitzung
--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)
--portPort für den lokalen Server (standardmäßig zufälliger Port)

serve

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-Fenster
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).

Flags

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

session

OpenCode-Sitzungen verwalten.

Terminal-Fenster
opencode session [command]

list

Listen Sie alle OpenCode-Sitzungen auf.

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

stats

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

Terminal-Fenster
opencode stats

Flags

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)

export

Sitzungsdaten als JSON exportieren.

Terminal-Fenster
opencode export [sessionID]

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


import

Importieren Sie Sitzungsdaten aus einer JSON-Datei oder einer OpenCode-Freigabe-URL.

Terminal-Fenster
opencode import <file>

Sie können aus einer lokalen Datei oder einer OpenCode-Freigabe-URL importieren.

Terminal-Fenster
opencode import session.json
opencode import https://opncd.ai/s/abc123

web

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

Terminal-Fenster
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).

Flags

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

acp

Starten Sie einen ACP (Agent Client Protocol) Server.

Terminal-Fenster
opencode acp

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

Flags

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

uninstall

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

Terminal-Fenster
opencode uninstall

Flags

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

upgrade

Aktualisiert OpenCode auf die neueste Version oder eine bestimmte Version.

Terminal-Fenster
opencode upgrade [target]

Um auf die neueste Version zu aktualisieren.

Terminal-Fenster
opencode upgrade

Um auf eine bestimmte Version zu aktualisieren.

Terminal-Fenster
opencode upgrade v0.1.48

Flags

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

Globale Flags

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)

Umgebungsvariablen

OpenCode kann mithilfe von Umgebungsvariablen konfiguriert werden.

VariableTypBeschreibung
OPENCODE_AUTO_SHAREboolescher WertSitzungen automatisch teilen
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_DISABLE_FILETIME_CHECKboolescher WertDateizeitprüfung zur Optimierung deaktivieren
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

Experimental

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

VariableTypBeschreibung
OPENCODE_EXPERIMENTALboolescher WertAlle experimentellen Funktionen 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 WertExperimentelle LSP-Typprüfung aktivieren
OPENCODE_EXPERIMENTAL_MARKDOWNboolescher WertExperimentelle Markdown-Funktionen aktivieren
OPENCODE_EXPERIMENTAL_PLAN_MODEboolescher WertPlanmodus aktivieren