Passa al contenuto principale

Usare un agente di programmazione installato come modello di chat

Se paghi già per un agente di programmazione e questo ha effettuato l'accesso sulla macchina che esegue Libre WebUI, puoi interagirvi da una normale chat anziché aggiungere una chiave API separata. Libre WebUI rileva l'interfaccia a riga di comando dell'agente e la propone nel selettore dei modelli come qualsiasi altro modello.

Che cosa viene rilevato​

A ogni richiesta dell'elenco dei modelli, Libre WebUI cerca nel PATH del server questi comandi:

ModelloComandoFornito da
Claude CodeclaudeAnthropic
CodexcodexOpenAI
OpenCodeopencodeSST
PipiMario Zechner

Tutto ciò che viene trovato compare nel gruppo Agenti del selettore dei modelli. Non viene installato nulla e non serve alcun file di configurazione: se il comando funziona nella shell del server, viene visualizzato.

Anche Impostazioni → Chat → Predefiniti identifica queste voci come Agente, incluso Strands quando il tuo account può usarlo. I modelli plugin mantengono il nome del provider e soltanto i modelli Ollama riportano l’etichetta Ollama. Disabilitare Ollama non nasconde gli agenti o i plugin configurati. La scheda informativa del modello mostra il nome visualizzato e il provider della voce selezionata; dimensione, famiglia e formato compaiono solo se forniti dal catalogo.

Scegliere un modello, non soltanto una CLI​

Ogni CLI può offrire diverse voci nel gruppo Agenti:

  • Claude Code propone il valore predefinito dell'account connesso, oltre a Sonnet, Opus e Haiku. Sono disponibili anche le scelte esplicite Sonnet 5.5 (claude-sonnet-5-5) e Opus 5.5 (claude-opus-5-5). Sonnet 5.5 richiede Claude Code 2.1.284 o successivo e Opus 5.5 richiede Claude Code 2.1.280 o successivo, entrambi con accesso tramite l'account connesso; esegui claude update per aggiornare la CLI. Gli alias Sonnet e Opus esistenti continuano a seguire l'associazione attuale dei modelli della CLI.
  • Codex propone il valore predefinito configurato e la famiglia documentata per l'accesso ChatGPT: GPT-6 Astra, GPT-6.1 Sol (gpt-6.1-sol), GPT-6 Sol, GPT-6 Luna, GPT-5.6 Sol, Terra, Luna, GPT-5.5 e GPT-5.3 Codex Spark. La disponibilità dipende dall'accesso della CLI e dai modelli abilitati per l'account.
  • Pi usa il modello configurato nella CLI stessa.
  • OpenCode elenca i modelli di tutti i provider con cui ha effettuato l'autenticazione (da opencode models) e richiede sempre una scelta esplicita: il suo valore predefinito a livello di CLI può puntare a un server locale non raggiungibile dall'host di Libre WebUI.

Anche il motore Strands integrato compare nel gruppo Agenti quando il tuo account può usarlo. Non è una CLI: gira all’interno del backend e pilota i tuoi modelli Ollama e dei plugin provider. La voce semplice Strands (strands) usa il tuo modello di chat predefinito. Le altre voci (strands:<route>) ne elencano una per ogni modello disponibile, ad esempio Strands · gpt-5.6-sol (Codex (ChatGPT)), e fissano sia il modello sia il suo provider per quella conversazione: un altro provider disponibile non può sostituirli in caso di interruzione. La consultazione delle scelte non avvia il motore.

Le stesse voci Strands possono essere usate come modello per le attività in Impostazioni → Chat → Predefiniti per titoli automatici e riepiloghi del ragionamento. Usa il modello attualmente in esecuzione usa la selezione Strands salvata nella conversazione. Queste brevi richieste di testo chiamano direttamente il modello del provider sottostante; non eseguono gli strumenti dell’agente né creano una sua sessione. Gli altri profili CLI richiedono un modello per le attività Ollama, plugin o Strands per queste richieste ausiliarie.

Pi esegue ogni turno senza stato (--no-session), con gli strumenti locali disabilitati e un prompt di sistema neutro, così le risposte non vengono influenzate dalla configurazione personale di Pi dell'utente del sistema operativo del server e le chat non vi accedono mai.

Utilizzo​

  1. Accedi come amministratore.
  2. Avvia una chat e apri il selettore dei modelli.
  3. Scegli una voce in Agenti.
  4. Invia normalmente i messaggi. Le risposte vengono trasmesse in streaming token per token.

La conversazione viene archiviata come qualsiasi altra chat: puoi lasciarla e riprenderla, rinominarla e cercarla dalla tavolozza dei comandi. Ogni turno invia all'agente una trascrizione della conversazione recente e ne trasmette la risposta in streaming.

Chi può usarlo e a che cosa può accedere​

Questa funzionalità è riservata agli amministratori, per un motivo importante. L'agente viene eseguito sull'host come lo stesso utente del sistema operativo che esegue il backend di Libre WebUI, non all'interno di un container Work. Eredita quindi le credenziali dell'agente di quell'utente e tutto l'accesso di cui dispongono normalmente tali agenti, inclusa la possibilità di leggere file ed eseguire comandi sul server, se decide di farlo.

Considera l'abilitazione di questa funzione equivalente alla concessione all'agente dell'accesso shell alla macchina. Per questo motivo, la funzionalità è disabilitata inizialmente: un amministratore deve attivarla in Impostazioni → Gestione utenti → Accesso e criteri → Modelli di agenti CLI. L'impostazione viene salvata e ha effetto immediato, senza riavvio.

La modifica di questo controllo aggiorna subito il catalogo dei modelli: la categoria Agenti contiene le voci CLI dirette, mentre Modelli plugin contiene integrazioni API dei provider come Codex (ChatGPT). Strands è elencato nella stessa categoria ma segue la propria impostazione di accesso Motore Strands, non questo interruttore, quindi può comparire anche quando i modelli di agenti CLI sono disattivati. Il rilevamento dei suoi modelli non può bloccare il rilevamento degli agenti CLI installati.

Le installazioni esistenti ereditano la precedente scelta salvata per Agenti finché non viene salvata un’impostazione CLI indipendente.

Per fissare la scelta a livello di distribuzione indipendentemente dall'interruttore a runtime, imposta la variabile d'ambiente su uno dei due valori (ciò blocca anche l'interruttore nell'interfaccia):

AGENT_CLI_MODELS_ENABLED=false # or true

Per un modello in grado di intervenire sui file, ma confinato in un ambiente isolato, usa invece Work: esegue i modelli che supportano gli strumenti in un container protetto con un'area di lavoro isolata.

Monitoraggio dell’utilizzo​

Apri Utilizzo provider (/usage) e cerca Agenti nella parte superiore. Claude Code, Codex, OpenCode, Pi e l’attività di Strands hanno voci esplicite, con un messaggio chiaro quando nel periodo selezionato non sono state registrate chiamate.

Le chiamate CLI effettuate tramite LWUI registrano esito, durata e utilizzo dei token dichiarato. Ogni invocazione crea un solo evento di utilizzo; snapshot ripetuti e conteggi per passaggio non duplicano eventi o token. I contatori dei token mancanti restano non dichiarati. L’arresto di una risposta viene registrato come annullamento; un’uscita CLI non riuscita non diventa un successo soltanto perché ha prodotto testo parziale. Le chiamate CLI effettuate al di fuori di LWUI non vengono importate.

Le chiamate di Strands sono attribuite all’agente Strands. Consulta Utilizzo degli agenti per dettagli e limiti.

Configurazione​

VariabileValore predefinitoScopo
AGENT_CLI_MODELS_ENABLEDnon impostatoFissa true/false; se non impostata, usa l'interruttore amministrativo (disattivato inizialmente)
AGENT_CLI_TIMEOUT_MS600000Tempo massimo di esecuzione di un singolo turno dell'agente prima dell'arresto

Risoluzione dei problemi​

Il gruppo Agenti non compare. Verifica che la funzionalità sia abilitata in Impostazioni → Gestione utenti → Accesso e criteri → Modelli di agenti CLI (è disattivata per impostazione predefinita) e di aver effettuato l'accesso come amministratore, quindi controlla che il comando si trovi nel PATH del processo che esegue il backend, non soltanto nella tua shell interattiva. Un gestore di servizi, un container Docker o un programma di avvio desktop spesso usa un PATH molto più ridotto rispetto a un terminale di accesso.

La risposta non riesce immediatamente. Esegui manualmente lo stesso comando come utente del server (claude -p "hello" o codex exec "hello"). La maggior parte degli errori deriva dalla richiesta di un nuovo accesso scaduto da parte dell'agente oppure da un limite di frequenza dell'abbonamento sottostante. OpenCode, in particolare, segnala l'accesso scaduto a un provider solo nei propri log; esegui nuovamente opencode auth login come utente del server.

Le risposte si interrompono. Un turno lungo potrebbe aver raggiunto AGENT_CLI_TIMEOUT_MS. Aumentalo oppure suddividi la richiesta in passaggi più piccoli.

Documenti correlati​