Les agents intégrés de Mistral Vibe
Sur cette page
Leçon réécrite le 2 novembre 2026 d’après la documentation de Vibe Code. La version précédente présentait quatre agents, dont
defaultetplan:defaults’appelle désormaisask, l’agent par défaut estaccept-edits,smart-approveetleanont été ajoutés, et il n’existe plus d’agentplanintégré. Sources : Agents · Safety, approvals, and permissions. Complément du 3 novembre : vérifié surmistral-vibe3.0.4, l’agentleann’autorise que le modèlelabs-leanstral-1-5, retiré le 30 septembre 2026 d’après la table des modèles de Mistral : il ne peut plus répondre.
Ce qu’est un agent dans Vibe
Dans Vibe, un agent est un jeu de réglages appliqué par-dessus votre configuration globale : un prompt système, un modèle, une sélection d’outils et des règles d’approbation. La question n’est donc jamais seulement « qu’est-ce que je demande à Vibe ? », mais aussi « avec quel agent, donc avec quelles permissions ? ». Choisir le bon agent, c’est régler l’équilibre entre votre contrôle et la vitesse de l’outil : rester toute la journée en approbation manuelle fait perdre du temps sur des actions sans risque, tout laisser passer sur un dépôt important finit mal.
Les agents fournis avec Vibe
| Agent | Comportement d’approbation | Pour quoi faire |
|---|---|---|
ask | Demande avant chaque outil (anciennement default) | Explorer un dépôt inconnu, tout vérifier |
accept-edits | Agent par défaut. Approuve seul les modifications de fichiers dans le répertoire de travail ; demande pour le reste, dont les commandes shell | Travail quotidien, refactorings déjà cadrés |
smart-approve | Classe chaque appel d’outil : exécute ceux qu’il juge sûrs, demande avant les risqués | Travail quotidien avec moins d’interruptions |
auto-approve | Approuve tout, commandes shell comprises | Environnements de confiance et isolés uniquement |
lean | Agent spécialisé pour l’assistant de preuve Lean 4, à installer avec /leanstall. Dans Vibe 3.0.4, il n’accepte qu’un modèle, Leanstral 1.5 (labs-leanstral-1-5), que la table des modèles de Mistral donne pour retiré le 30 septembre 2026, sans remplaçant | Preuves formelles, si un modèle Leanstral redevient disponible |
ask, le plus prudent
Chaque outil passe par votre validation : lecture de fichier, écriture, commande. C’est le choix sûr pour reprendre un dépôt écrit par quelqu’un d’autre, ou pour un code sensible. Vous gardez un contrôle total, au prix d’un rythme plus lent.
accept-edits, le réglage par défaut
C’est l’agent actif quand vous lancez vibe sans option. Il modifie les fichiers du répertoire de travail sans demander, mais vous consulte avant une commande shell ou une action sensible. Vibe demande aussi, quel que soit l’agent hors approbation totale, avant qu’un outil ne lise, n’écrive ou n’exécute quoi que ce soit en dehors du répertoire de travail, et avant toute lecture ou modification de fichiers .env ou .envrc.
smart-approve, le tri automatique
Beaucoup de demandes d’approbation portent sur des actions que vous auriez acceptées de toute façon. smart-approve applique d’abord vos règles de permission, réutilise les approbations déjà données dans la session, puis fait classer chaque appel par un modèle : ce qu’il juge sûr s’exécute, ce qu’il juge risqué vous est soumis. La documentation est claire sur sa limite : c’est un classifieur, pas un bac à sable. Un appel jugé sûr s’exécute avec les mêmes droits que votre compte utilisateur. Pour du code non fiable ou des secrets, restez sur ask ou dans un environnement isolé.
auto-approve, l’autonomie totale
Tout s’exécute sans confirmation, y compris un rm -rf sur n’importe quel chemin que Vibe peut atteindre. Réservez-le à un environnement jetable : conteneur, machine virtuelle, branche éphémère en intégration continue. Un administrateur peut le désactiver pour toute l’organisation (enable_auto_approve = false).
Choisir et changer d’agent
vibe --agent ask # au lancement
vibe --agent smart-approve # ou vibe --smart-approve
En session interactive, Shift+Tab fait défiler les agents sans quitter Vibe. Pour changer l’agent par défaut, une ligne suffit dans config.toml :
default_agent = "ask"
Ce réglage vaut aussi pour le mode programmatique (vibe --prompt …). Attention à ce mode : personne ne peut y répondre à une demande d’approbation, donc Vibe refuse tout appel d’outil qui en exige une. Pour une exécution non surveillée, passez --auto-approve (alias --yolo), et seulement dans un environnement isolé.
Et le mode « plan » ?
Vibe n’a pas d’agent plan intégré. Si votre configuration contient default_agent = "plan" sans agent personnalisé de ce nom, Vibe affiche un avertissement et démarre avec ask. Le schéma « explorer et planifier, puis exécuter » reste pourtant excellent : la documentation montre comment créer votre propre agent plan en lecture seule, ce que fait la leçon suivante.
Les subagents
L’agent peut aussi déléguer une partie du travail à des subagents, par exemple pour explorer un grand dépôt sans remplir son propre contexte. Sans subagent personnalisé, il peut lancer un subagent générique doté des mêmes instructions et outils que lui. Les subagents ne se sélectionnent pas avec --agent : c’est l’agent qui les lance (leçon 5).
Les instructions de projet : AGENTS.md
Quel que soit l’agent, Vibe charge les fichiers AGENTS.md : celui de votre répertoire Vibe (~/.vibe/AGENTS.md), puis ceux du projet, depuis le répertoire de travail jusqu’à la racine du dossier de confiance. En cas de conflit, le fichier le plus proche du répertoire de travail l’emporte. C’est l’endroit pour les conventions qui valent pour tous les agents : commandes de test, style, fichiers à ne jamais toucher.
Points clés à retenir
- Agents intégrés :
ask,accept-edits(par défaut),smart-approve,auto-approve, etlean(à installer, mais privé de modèle depuis le retrait de Leanstral 1.5 le 30 septembre 2026) smart-approveréduit les interruptions mais reste un classifieur, pas un bac à sableShift+Tabchange d’agent en session ;default_agentfixe l’agent par défaut- En mode programmatique, tout appel qui demande une approbation est refusé, sauf
--auto-approve - Il n’y a plus d’agent
planintégré : créez le vôtre (leçon 2)