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.

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.
  • Codex propone il valore predefinito configurato e la famiglia documentata per l'accesso ChatGPT: GPT-5.6 Sol, Terra, Luna e GPT-5.3 Codex Spark.
  • 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.

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 → Agenti. L'impostazione viene salvata e ha effetto immediato, senza riavvio.

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.

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 → Agenti (è 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