Salta ai contenuti

CLI

Opzioni e comandi della CLI di ArmIn.

La CLI di ArmIn, per impostazione predefinita, avvia la TUI quando viene eseguita senza argomenti.

Terminal window
armin

Ma accetta anche i comandi documentati in questa pagina. Questo ti permette di interagire con ArmIn in modo programmatico.

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

tui

Avvia l’interfaccia testuale di ArmIn (interfaccia utente da terminale).

Terminal window
armin [project]

Flag

FlagBreveDescrizione
--continue-cContinua l’ultima sessione
--session-sID sessione da continuare
--forkDuplica la sessione quando continui (usa con --continue o --session)
--promptPrompt da usare
--model-mModello nel formato provider/model
--agentAgente da usare
--portPorta su cui mettersi in ascolto
--hostnameHostname su cui mettersi in ascolto

Comandi

La CLI di ArmIn include anche i seguenti comandi.


agent

Gestisci gli agenti per ArmIn.

Terminal window
armin agent [command]

attach

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

Terminal window
armin attach [url]

Questo consente di usare la TUI con un backend ArmIn remoto. Per esempio:

Terminal window
# Start the backend server for web/mobile access
armin web --port 4096 --hostname 0.0.0.0
# In un altro terminale, collega la TUI al backend in esecuzione
armin attach http://10.20.30.40:4096

Flag

FlagBreveDescrizione
--dirWorking directory in cui avviare la TUI
--session-sID sessione da continuare

create

Crea un nuovo agente con configurazione personalizzata.

Terminal window
armin agent create

Questo comando ti guida nella creazione di un nuovo agente con un system prompt personalizzato e configurazione degli strumenti.


list

Elenca tutti gli agenti disponibili.

Terminal window
armin agent list

auth

Comando per gestire le credenziali e il login dei provider.

Terminal window
armin auth [command]

login

ArmIn si basa sull’elenco provider di Models.dev, quindi puoi usare armin auth login per configurare le API key per qualunque provider tu voglia usare. Le credenziali vengono salvate in ~/.local/share/armin/auth.json.

Terminal window
armin auth login

Quando ArmIn si avvia, carica i provider dal file delle credenziali e, se presenti, anche eventuali key definite nell’ambiente o in un file .env nel progetto.


list

Elenca tutti i provider autenticati come salvati nel file delle credenziali.

Terminal window
armin auth list

Oppure la versione corta.

Terminal window
armin auth ls

logout

Esegue il logout da un provider rimuovendolo dal file delle credenziali.

Terminal window
armin auth logout

github

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

Terminal window
armin github [command]

install

Installa l’agente GitHub nel tuo repository.

Terminal window
armin github install

Questo configura il workflow GitHub Actions necessario e ti guida nel processo di configurazione. Scopri di più.


run

Esegui l’agente GitHub. Tipicamente usato in GitHub Actions.

Terminal window
armin github run
Flag
FlagDescrizione
--eventEvento GitHub mock per cui eseguire l’agente
--tokenGitHub personal access token

mcp

Gestisci i server Model Context Protocol.

Terminal window
armin mcp [command]

add

Aggiungi un server MCP alla tua configurazione.

Terminal window
armin mcp add

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


list

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

Terminal window
armin mcp list

Oppure la versione corta.

Terminal window
armin mcp ls

auth

Autentica con un server MCP con OAuth abilitato.

Terminal window
armin mcp auth [name]

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

Puoi anche elencare i server OAuth-capable e il loro stato di autenticazione.

Terminal window
armin mcp auth list

Oppure la versione corta.

Terminal window
armin mcp auth ls

logout

Rimuovi le credenziali OAuth per un server MCP.

Terminal window
armin mcp logout [name]

debug

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

Terminal window
armin mcp debug <name>

models

Elenca tutti i modelli disponibili dai provider configurati.

Terminal window
armin models [provider]

Questo comando mostra tutti i modelli disponibili tra i provider configurati nel formato provider/model.

È utile per capire l’esatto nome del modello da usare nella config.

Puoi anche passare opzionalmente un ID provider per filtrare i modelli a quel provider.

Terminal window
armin models anthropic

Flag

FlagDescrizione
--refreshAggiorna la cache modelli da models.dev
--verboseOutput più verboso (include metadati come i costi)

Usa --refresh per aggiornare l’elenco modelli in cache. È utile quando nuovi modelli vengono aggiunti a un provider e vuoi vederli in ArmIn.

Terminal window
armin models --refresh

run

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

Terminal window
armin run [message..]

È utile per scripting, automazione o quando vuoi una risposta rapida senza avviare la TUI completa. Per esempio:

Terminal window
armin run Explain the use of context in Go

Puoi anche collegarti a una istanza armin serve già in esecuzione per evitare i cold boot dei server MCP ad ogni esecuzione:

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

Flag

FlagBreveDescrizione
--commandIl comando da eseguire; usa message per gli argomenti
--continue-cContinua l’ultima sessione
--session-sID sessione da continuare
--forkDuplica la sessione quando continui (usa con --continue o --session)
--shareCondividi la sessione
--model-mModello nel formato provider/model
--agentAgente da usare
--file-fFile da allegare al messaggio
--formatFormato: default (formattato) o json (eventi JSON grezzi)
--titleTitolo sessione (usa prompt troncato se non viene fornito un valore)
--attachAttach a un server armin in esecuzione (es. http://localhost:4096)
--portPorta per il server locale (di default una porta casuale)

serve

Avvia un server ArmIn headless per accesso via API. Vedi le server docs per l’interfaccia HTTP completa.

Terminal window
armin serve

Avvia un server HTTP che espone accesso API alle funzionalità di armin senza la TUI. Imposta OPENCODE_SERVER_PASSWORD per abilitare HTTP basic auth (username di default armin).

Flag

FlagDescrizione
--portPorta su cui mettersi in ascolto
--hostnameHostname su cui mettersi in ascolto
--mdnsAbilita discovery mDNS
--corsOrigin browser addizionali per consentire CORS

session

Gestisci le sessioni ArmIn.

Terminal window
armin session [command]

list

Elenca tutte le sessioni ArmIn.

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

stats

Mostra statistiche di utilizzo token e costo per le sessioni ArmIn.

Terminal window
armin stats

Flag

FlagDescrizione
--daysMostra statistiche per gli ultimi N giorni (all time)
--toolsNumero di strumenti da mostrare (all)
--modelsMostra breakdown di utilizzo modelli (nascosto di default). Passa un numero per top N
--projectFiltra per progetto (tutti i progetti; stringa vuota: progetto corrente)

export

Esporta i dati di sessione come JSON.

Terminal window
armin export [sessionID]

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


import

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

Terminal window
armin import <file>

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

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

web

Avvia un server ArmIn headless con interfaccia web.

Terminal window
armin web

Avvia un server HTTP e apre un browser per accedere a ArmIn tramite interfaccia web. Imposta OPENCODE_SERVER_PASSWORD per abilitare HTTP basic auth (username di default armin).

Flag

FlagDescrizione
--portPorta su cui mettersi in ascolto
--hostnameHostname su cui mettersi in ascolto
--mdnsAbilita discovery mDNS
--corsOrigin browser addizionali per consentire CORS

acp

Avvia un server ACP (Agent Client Protocol).

Terminal window
armin acp

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

Flag

FlagDescrizione
--cwdDirectory di lavoro
--portPorta su cui mettersi in ascolto
--hostnameHostname su cui mettersi in ascolto

uninstall

Disinstalla ArmIn e rimuove tutti i file correlati.

Terminal window
armin uninstall

Flag

FlagBreveDescrizione
--keep-config-cMantieni i file di configurazione
--keep-data-dMantieni dati di sessione e snapshot
--dry-runMostra cosa verrebbe rimosso senza rimuovere
--force-fSalta le richieste di conferma

upgrade

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

Terminal window
armin upgrade [target]

Per aggiornare all’ultima versione:

Terminal window
armin upgrade

Per aggiornare a una versione specifica:

Terminal window
armin upgrade v0.1.48

Flag

FlagBreveDescrizione
--method-mMetodo di installazione usato: curl, npm, pnpm, bun, brew

Flag globali

La CLI di armin accetta i seguenti flag globali.

FlagBreveDescrizione
--help-hMostra l’help
--version-vStampa il numero di versione
--print-logsStampa i log su stderr
--log-levelLivello log (DEBUG, INFO, WARN, ERROR)

Variabili d’ambiente

ArmIn può essere configurato tramite variabili d’ambiente.

VariabileTipoDescrizione
OPENCODE_AUTO_SHAREbooleanCondivide automaticamente le sessioni
OPENCODE_GIT_BASH_PATHstringPercorso all’eseguibile Git Bash su Windows
OPENCODE_CONFIGstringPercorso al file di configurazione
OPENCODE_TUI_CONFIGstringPercorso al file di configurazione TUI
OPENCODE_CONFIG_DIRstringPercorso alla directory di configurazione
OPENCODE_CONFIG_CONTENTstringContenuto JSON di config inline
OPENCODE_DISABLE_AUTOUPDATEbooleanDisabilita i controlli automatici di aggiornamento
OPENCODE_DISABLE_PRUNEbooleanDisabilita la potatura dei dati vecchi
OPENCODE_DISABLE_TERMINAL_TITLEbooleanDisabilita aggiornamenti automatici del titolo terminale
OPENCODE_PERMISSIONstringConfig permessi JSON inline
OPENCODE_DISABLE_DEFAULT_PLUGINSbooleanDisabilita i plugin di default
OPENCODE_DISABLE_LSP_DOWNLOADbooleanDisabilita download automatico dei server LSP
OPENCODE_ENABLE_EXPERIMENTAL_MODELSbooleanAbilita modelli sperimentali
OPENCODE_DISABLE_AUTOCOMPACTbooleanDisabilita compaction automatica del contesto
OPENCODE_DISABLE_CLAUDE_CODEbooleanDisabilita lettura da .claude (prompt + skill)
OPENCODE_DISABLE_CLAUDE_CODE_PROMPTbooleanDisabilita lettura di ~/.claude/CLAUDE.md
OPENCODE_DISABLE_CLAUDE_CODE_SKILLSbooleanDisabilita caricamento di .claude/skills
OPENCODE_DISABLE_MODELS_FETCHbooleanDisabilita fetch dei modelli da fonti remote
OPENCODE_FAKE_VCSstringProvider VCS finto per scopi di test
OPENCODE_DISABLE_FILETIME_CHECKbooleanDisabilita controllo file time per ottimizzazione
OPENCODE_CLIENTstringIdentificatore client (default cli)
OPENCODE_ENABLE_EXAbooleanAbilita gli strumenti di web search Exa
OPENCODE_SERVER_PASSWORDstringAbilita basic auth per serve/web
OPENCODE_SERVER_USERNAMEstringSovrascrive lo username basic auth (default armin)
OPENCODE_MODELS_URLstringURL personalizzato per recuperare la configurazione modelli

Sperimentale

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

VariabileTipoDescrizione
OPENCODE_EXPERIMENTALbooleanAbilita tutte le funzionalità sperimentali
OPENCODE_EXPERIMENTAL_ICON_DISCOVERYbooleanAbilita icon discovery
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECTbooleanDisabilita copy on select nella TUI
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MSnumberTimeout di default per comandi bash in ms
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAXnumberMassimo token di output per risposte LLM
OPENCODE_EXPERIMENTAL_FILEWATCHERbooleanAbilita file watcher per l’intera dir
OPENCODE_EXPERIMENTAL_OXFMTbooleanAbilita formatter oxfmt
OPENCODE_EXPERIMENTAL_LSP_TOOLbooleanAbilita strumento LSP sperimentale
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHERbooleanDisabilita file watcher
OPENCODE_EXPERIMENTAL_EXAbooleanAbilita funzionalità Exa sperimentali
OPENCODE_EXPERIMENTAL_LSP_TYbooleanAbilita Abilita TY LSP per i file python
OPENCODE_EXPERIMENTAL_MARKDOWNbooleanAbilita markdown sperimentale
OPENCODE_EXPERIMENTAL_PLAN_MODEbooleanAbilita plan mode