Aller au contenu principal

Utiliser un agent de programmation installé comme modèle de chat

Si vous payez déjà un agent de programmation et qu'il est connecté sur la machine qui exécute Libre WebUI, vous pouvez lui parler depuis un chat normal au lieu d'ajouter une clé API distincte. Libre WebUI détecte l'interface en ligne de commande de l'agent et le propose dans le sélecteur de modèles comme n'importe quel autre modèle.

Éléments détectés

À chaque demande de la liste des modèles, Libre WebUI recherche les commandes suivantes dans le PATH du serveur :

ModèleCommandeFourni par
Claude CodeclaudeAnthropic
CodexcodexOpenAI
OpenCodeopencodeSST
PipiMario Zechner

Tout élément trouvé apparaît dans un groupe Agents du sélecteur de modèles. Rien n'est installé à votre place et aucun fichier de configuration n'est requis : si la commande s'exécute dans le shell de votre serveur, elle apparaît.

Choisir un modèle, pas seulement une interface en ligne de commande

Chaque interface peut proposer plusieurs entrées dans le groupe Agents :

  • Claude Code propose sa valeur par défaut connectée, ainsi que Sonnet, Opus et Haiku.
  • Codex propose sa valeur configurée par défaut ainsi que la famille documentée pour la connexion ChatGPT : GPT-5.6 Sol, Terra, Luna et GPT-5.3 Codex Spark.
  • Pi s'exécute avec le modèle configuré dans l'interface en ligne de commande elle-même.
  • OpenCode répertorie les modèles de chaque fournisseur auprès duquel il est authentifié (à partir de opencode models) et exige toujours un choix explicite : sa valeur par défaut au niveau de l'interface peut pointer vers un serveur local inaccessible depuis l'hôte Libre WebUI.

Pi exécute chaque tour sans état (--no-session), avec les outils locaux désactivés et un message système neutre. Les réponses ne sont donc pas influencées par la configuration personnelle de Pi associée à l'utilisateur du système d'exploitation du serveur, et les chats n'y touchent jamais.

Utilisation

  1. Connectez-vous en tant qu'administrateur.
  2. Démarrez un chat et ouvrez le sélecteur de modèles.
  3. Choisissez une entrée sous Agents.
  4. Envoyez vos messages normalement. Les réponses sont diffusées jeton par jeton.

La conversation est enregistrée comme n'importe quel autre chat : vous pouvez la quitter et y revenir, la renommer et la rechercher depuis la palette de commandes. Chaque tour envoie à l'agent une transcription de la conversation récente et diffuse sa réponse.

Qui peut l'utiliser et à quoi l'agent peut accéder

Cette fonctionnalité est réservée aux administrateurs, pour une raison importante. L'agent s'exécute sur l'hôte en tant que même utilisateur du système d'exploitation que le serveur Libre WebUI, et non dans un conteneur Work. Il hérite donc des identifiants de l'agent appartenant à cet utilisateur et de tous les accès dont ces agents disposent habituellement, notamment la possibilité de lire des fichiers et d'exécuter des commandes sur le serveur s'il le décide.

Considérez l'activation de cette fonction comme l'octroi à l'agent d'un accès shell à la machine. C'est pourquoi elle est livrée désactivée : un administrateur doit l'activer dans Paramètres → Gestion des utilisateurs → Agents. Le réglage est conservé et prend effet immédiatement, sans redémarrage.

Pour figer ce choix au niveau du déploiement indépendamment du réglage à l'exécution, définissez la variable d'environnement dans un sens ou dans l'autre (cela verrouille aussi le bouton dans l'interface) :

AGENT_CLI_MODELS_ENABLED=false # or true

Pour un modèle qui peut agir sur des fichiers tout en restant dans un bac à sable, utilisez plutôt Work : il exécute les modèles capables d'utiliser des outils dans un conteneur verrouillé doté d'un espace de travail isolé.

Configuration

VariableValeur par défautFonction
AGENT_CLI_MODELS_ENABLEDnon définieFixe la fonction sur true/false ; sans valeur, suit le bouton d'administration (désactivé par défaut)
AGENT_CLI_TIMEOUT_MS600000Durée maximale d'un tour d'agent avant son arrêt forcé

Dépannage

Aucun groupe Agents n'apparaît. Vérifiez que la fonctionnalité est activée dans Paramètres → Gestion des utilisateurs → Agents (elle est désactivée par défaut) et que vous êtes connecté en tant qu'administrateur, puis vérifiez que la commande se trouve dans le PATH du processus qui exécute le serveur, et pas seulement dans votre shell interactif. Un gestionnaire de services, un conteneur Docker ou un lanceur d'application démarre souvent avec un PATH bien plus réduit que celui d'un terminal de connexion.

La réponse échoue immédiatement. Exécutez manuellement la même commande en tant qu'utilisateur du serveur (claude -p "hello" ou codex exec "hello"). La plupart des échecs proviennent d'une connexion expirée demandée par l'agent ou d'une limite de débit de l'abonnement sous-jacent. OpenCode, en particulier, ne signale l'expiration de la connexion à un fournisseur que dans ses propres journaux ; relancez opencode auth login en tant qu'utilisateur du serveur.

Les réponses s'arrêtent en cours de route. Un long tour a peut-être atteint AGENT_CLI_TIMEOUT_MS. Augmentez sa valeur ou divisez la demande en étapes plus petites.

Documentation connexe