Salta ai contenuti

CLI

Opzioni e comandi della CLI di OpenCode.

La CLI di OpenCode avvia la TUI quando eseguita senza argomenti.

Terminal window
opencode

Ma accetta anche comandi come documentato in questa pagina. Questo ti permette di interagire con OpenCode in modo programmatico.

Terminal window
opencode run "Explain how closures work in JavaScript"

tui

Avvia l’interfaccia utente terminale di OpenCode.

Terminal window
opencode [project]

Flag

FlagBreveDescrizione
--continue-cContinua l’ultima sessione
--session-sID sessione da continuare
--promptPrompt da usare
--model-mModello da usare in forma di fornitore/modello
--agentAgente da usare
--portPorta in ascolto
--hostnameNome host in ascolto

Comandi

La CLI di OpenCode ha anche i seguenti comandi.


agent

Gestisci gli agenti per OpenCode.

Terminal window
opencode agent [command]

attach

Collega un terminale a un server backend OpenCode già in esecuzione avviato tramite comandi serve o web.

Terminal window
opencode attach [url]

Questo permette di usare la TUI con un backend OpenCode remoto. Ad esempio:

Terminal window
# Avvia il server backend per l'accesso web/mobile
opencode web --port 4096 --hostname 0.0.0.0
# In un altro terminale, collega la TUI al backend in esecuzione
opencode attach http://10.20.30.40:4096

Flag

FlagBreveDescrizione
--dirDirectory di lavoro per avviare la TUI
--session-sID sessione da continuare

create

Crea un nuovo agente con configurazione personalizzata.

Terminal window
opencode agent create

Questo comando ti guiderà nella creazione di un nuovo agente con un prompt di sistema personalizzato e configurazione degli strumenti.


list

Elenca tutti gli agenti disponibili.

Terminal window
opencode agent list

auth

Comando per gestire le credenziali e l’accesso per i fornitori.

Terminal window
opencode auth [command]

login

OpenCode è alimentato dall’elenco dei fornitori su Models.dev, quindi puoi usare opencode auth login per configurare le chiavi API per qualsiasi fornitore che desideri usare. Questo viene archiviato in ~/.local/share/opencode/auth.json.

Terminal window
opencode auth login

Quando OpenCode si avvia carica i fornitori dal file delle credenziali. E se ci sono chiavi definite nei tuoi ambienti o un file .env nel tuo progetto.


list

Elenca tutti i fornitori autenticati come archiviato nel file delle credenziali.

Terminal window
opencode auth list

Oppure la versione breve.

Terminal window
opencode auth ls

logout

Disconnetti da un fornitore cancellandolo dal file delle credenziali.

Terminal window
opencode auth logout

github

Gestisci l’agente GitHub per l’automazione del repository.

Terminal window
opencode github [command]

install

Installa l’agente GitHub nel tuo repository.

Terminal window
opencode github install

Questo configura il flusso di lavoro GitHub Actions necessario e ti guida attraverso il processo di configurazione. Più info.


run

Esegui l’agente GitHub. Questo viene usato tipicamente in GitHub Actions.

Terminal window
opencode github run
Flag
FlagDescrizione
--eventEvento GitHub fittizio per eseguire l’agente
--tokenToken di accesso personale GitHub

mcp

Gestisci i server Model Context Protocol.

Terminal window
opencode mcp [command]

add

Aggiungi un server MCP alla tua configurazione.

Terminal window
opencode mcp add

Questo comando ti guiderà nell’aggiunta di un server MCP locale o remoto.


list

Elenca tutti i server MCP configurati e il loro stato di connessione.

Terminal window
opencode mcp list

Oppure usa la versione breve.

Terminal window
opencode mcp ls

auth

Autenticati con un server MCP abilitato per OAuth.

Terminal window
opencode mcp auth [name]

Se non fornisci un nome server, ti verrà chiesto di selezionare tra i server abilitati per OAuth disponibili.

Puoi anche elencare i server abilitati per OAuth e il loro stato di autenticazione.

Terminal window
opencode mcp auth list

Oppure usa la versione breve.

Terminal window
opencode mcp auth ls

logout

Rimuovi le credenziali OAuth per un server MCP.

Terminal window
opencode mcp logout [name]

debug

Esegui il debug dei problemi di connessione OAuth per un server MCP.

Terminal window
opencode mcp debug <name>

models

Elenca tutti i modelli disponibili dai fornitori configurati.

Terminal window
opencode models [provider]

Questo comando visualizza tutti i modelli disponibili attraverso i tuoi fornitori configurati nel formato fornitore/modello.

Questo è utile per capire il nome esatto del modello da usare nella tua configurazione.

Puoi opzionalmente passare un ID fornitore per filtrare i modelli di quel fornitore.

Terminal window
opencode models anthropic

Flag

FlagDescrizione
--refreshAggiorna la cache dei modelli da models.dev
--verboseUsa output del modello più dettagliato (include metadati come i costi)

Usa il flag --refresh per aggiornare l’elenco dei modelli in cache. Questo è utile quando sono stati aggiunti nuovi modelli a un fornitore e vuoi vederli in OpenCode.

Terminal window
opencode models --refresh

run

Esegui opencode in modalità non interattiva passando direttamente un prompt.

Terminal window
opencode run [message..]

Questo è utile per script, automazione, o quando vuoi una risposta rapida senza avviare l’intera TUI. Ad esempio:

Terminal window
opencode run Explain the use of context in Go

Puoi anche collegarti a un’istanza opencode serve in esecuzione per evitare i tempi di avvio a freddo del server MCP a ogni esecuzione:

Terminal window
# Avvia un server headless in un terminale
opencode serve
# In un altro terminale, esegui comandi che vi si collegano
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"

Flag

FlagBreveDescrizione
--commandIl comando da eseguire, usa il messaggio per gli argomenti
--continue-cContinua l’ultima sessione
--session-sID sessione da continuare
--shareCondividi la sessione
--model-mModello da usare in forma di fornitore/modello
--agentAgente da usare
--file-fFile/i da allegare al messaggio
--formatFormato: default (formattato) o json (eventi JSON grezzi)
--titleTitolo per la sessione (usa il prompt troncato se nessun valore)
--attachCollega a un server opencode in esecuzione (es: http://localhost:4096)
--portPorta per il server locale (predefinito: porta casuale)

serve

Avvia un server OpenCode headless per l’accesso API. Dai un’occhiata alla documentazione del server per l’interfaccia HTTP completa.

Terminal window
opencode serve

Questo avvia un server HTTP che fornisce l’accesso API alle funzionalità di opencode senza l’interfaccia TUI.

Flag

FlagDescrizione
--portPorta in ascolto
--hostnameNome host in ascolto
--mdnsAbilita la scoperta mDNS
--corsOrigin browser aggiuntivi per consentire CORS

session

Gestisci le sessioni OpenCode.

Terminal window
opencode session [command]

list

Elenca tutte le sessioni OpenCode.

Terminal window
opencode session list
Flag
FlagBreveDescrizione
--max-count-nLimita alle N sessioni più recenti
--formatFormato di output: table o json (table)

stats

Mostra le statistiche di utilizzo dei token e dei costi per le tue sessioni OpenCode.

Terminal window
opencode stats

Flag

FlagDescrizione
--daysMostra le statistiche per gli ultimi N giorni (tutto il tempo)
--toolsNumero di strumenti da mostrare (tutti)
--modelsMostra la ripartizione dell’uso dei modelli (nascosto per impostazione predefinita). Passa un numero per mostrare i primi N
--projectFiltra per progetto (tutti i progetti, stringa vuota: progetto corrente)

export

Esporta i dati della sessione come JSON.

Terminal window
opencode export [sessionID]

Se non fornisci un ID sessione, ti verrà chiesto di selezionare tra le sessioni disponibili.


import

Importa i dati della sessione da un file JSON o URL di condivisione OpenCode.

Terminal window
opencode import <file>

Puoi importare da un file locale o un URL di condivisione OpenCode.

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

web

Avvia un server OpenCode headless con un’interfaccia web.

Terminal window
opencode web

Questo avvia un server HTTP e apre un browser web per accedere a OpenCode attraverso un’interfaccia web.

Flag

FlagDescrizione
--portPorta in ascolto
--hostnameNome host in ascolto
--mdnsAbilita la scoperta mDNS
--corsOrigin browser aggiuntivi per consentire CORS

acp

Avvia un server ACP (Agent Client Protocol).

Terminal window
opencode acp

Questo comando avvia un server ACP che comunica tramite stdin/stdout usando nd-JSON.

Flag

FlagDescrizione
--cwdDirectory di lavoro
--portPorta in ascolto
--hostnameNome host in ascolto

uninstall

Disinstalla OpenCode e rimuovi tutti i file correlati.

Terminal window
opencode uninstall

Flag

FlagBreveDescrizione
--keep-config-cMantiene i file di configurazione
--keep-data-dMantiene i dati delle sessione e snapshot
--dry-runMostra cosa verrebbe rimosso senza rimuovere
--force-fSalta i prompt di conferma

upgrade

Aggiorna opencode all’ultima versione o a una versione specifica.

Terminal window
opencode upgrade [target]

Per aggiornare all’ultima versione.

Terminal window
opencode upgrade

Per aggiornare a una versione specifica.

Terminal window
opencode upgrade v0.1.48

Flag

FlagBreveDescrizione
--method-mIl metodo di installazione che è stato usato; curl, npm, pnpm, bun, brew

Flag globali

La CLI di opencode accetta i seguenti flag globali.

FlagBreveDescrizione
--help-hMostra aiuto
--version-vStampa numero versione
--print-logsStampa log su stderr
--log-levelLivello log (DEBUG, INFO, WARN, ERROR)

Variabili d’ambiente

OpenCode può essere configurato usando variabili d’ambiente.

VariabileTipoDescrizione
OPENCODE_AUTO_SHAREbooleanCondividi automaticamente le sessioni
OPENCODE_GIT_BASH_PATHstringPercorso dell’eseguibile Git Bash su Windows
OPENCODE_CONFIGstringPercorso del file di configurazione
OPENCODE_CONFIG_DIRstringPercorso della directory di configurazione
OPENCODE_CONFIG_CONTENTstringContenuto configurazione json inline
OPENCODE_DISABLE_AUTOUPDATEbooleanDisabilita verifiche aggiornamento automatiche
OPENCODE_DISABLE_PRUNEbooleanDisabilita potatura dei vecchi dati
OPENCODE_DISABLE_TERMINAL_TITLEbooleanDisabilita aggiornamenti automatici del titolo del terminale
OPENCODE_PERMISSIONstringConfigurazione permessi json inline
OPENCODE_DISABLE_DEFAULT_PLUGINSbooleanDisabilita plugin predefiniti
OPENCODE_DISABLE_LSP_DOWNLOADbooleanDisabilita download automatici dei server LSP
OPENCODE_ENABLE_EXPERIMENTAL_MODELSbooleanAbilita modelli sperimentali
OPENCODE_DISABLE_AUTOCOMPACTbooleanDisabilita compattazione automatica del contesto
OPENCODE_DISABLE_CLAUDE_CODEbooleanDisabilita lettura da .claude (prompt + abilità)
OPENCODE_DISABLE_CLAUDE_CODE_PROMPTbooleanDisabilita lettura di ~/.claude/CLAUDE.md
OPENCODE_DISABLE_CLAUDE_CODE_SKILLSbooleanDisabilita caricamento di .claude/skills
OPENCODE_CLIENTstringIdentificatore client (predefinito cli)
OPENCODE_ENABLE_EXAbooleanAbilita strumenti di ricerca web Exa

Sperimentale

Queste variabili d’ambiente abilitano funzionalità sperimentali che possono cambiare o essere rimosse.

VariabileTipoDescrizione
OPENCODE_EXPERIMENTALbooleanAbilita tutte le funzionalità sperimentali
OPENCODE_EXPERIMENTAL_ICON_DISCOVERYbooleanAbilita scoperta icone
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECTbooleanDisabilita copia sulla selezione nella TUI
OPENCODE_EXPERIMENTAL_BASH_MAX_OUTPUT_LENGTHnumberLunghezza massima output per comandi bash
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MSnumberTimeout predefinito per comandi bash in ms
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAXnumberToken di output massimi per risposte LLM
OPENCODE_EXPERIMENTAL_FILEWATCHERbooleanAbilita file watcher per l’intera directory
OPENCODE_EXPERIMENTAL_OXFMTbooleanAbilita formattatore oxfmt
OPENCODE_EXPERIMENTAL_LSP_TOOLbooleanAbilita strumento LSP sperimentale