Exécuter des commandes shell
Le terminal intégré
Vibe embarque un terminal bash stateful. Cela signifie que vous disposez d’un shell complet directement dans votre session Vibe, avec la persistance de l’état entre les commandes : variables d’environnement, répertoire courant, alias — tout est conservé.
L’agent utilise cet outil bash pour exécuter des commandes quand il en a besoin : lancer des tests, vérifier un statut, installer une dépendance. Mais vous pouvez aussi invoquer des commandes directement.
Le préfixe ! pour les commandes rapides
La manière la plus rapide d’exécuter une commande depuis le mode interactif est le préfixe ! :
!ls -la src/
!git log --oneline -10
!npm run test -- --watch
Le ! indique à Vibe que ce qui suit est une commande shell à exécuter directement, sans interprétation par l’agent. Le résultat s’affiche immédiatement dans le terminal.
Demander à l’agent d’exécuter des commandes
Vous pouvez aussi demander à Vibe d’exécuter des commandes en langage naturel :
Lance les tests unitaires
Installe la dépendance axios
Vérifie que le serveur de développement se lance correctement
L’agent détermine la commande appropriée en fonction de votre projet (npm, pip, cargo, etc.) et la propose pour approbation.
L’approbation des commandes shell
Par défaut, chaque commande shell nécessite votre approbation. Vibe affiche la commande exacte qu’il souhaite exécuter et attend votre confirmation :
L'agent souhaite exécuter :
npm run test
Approuver ? (y/n)
Ce mécanisme est crucial pour la sécurité. Une commande rm -rf proposée par erreur n’aura aucun effet tant que vous ne l’approuvez pas.
Configurer les permissions par commande
Dans config.toml, vous pouvez définir des permissions fines :
[tools.bash]
permission = "ask" # Toujours demander (défaut)
# Ou pour un agent de confiance :
# permission = "always" # Exécuter sans demander
Référencer des fichiers dans les commandes
Le préfixe @ fonctionne aussi dans le contexte des commandes. Quand vous référencez un fichier, Vibe inclut son contenu dans le contexte :
Lance le script @scripts/deploy.sh et explique-moi ce qu'il fait
L’agent lit d’abord le script, l’analyse, puis l’exécute si vous approuvez.
Commandes multi-lignes
Pour des commandes complexes sur plusieurs lignes, utilisez Ctrl+J ou Shift+Enter pour insérer des sauts de ligne :
Exécute ces commandes dans l'ordre :
1. git stash
2. git pull origin main
3. git stash pop
4. npm install
5. npm run build
Vibe exécute les commandes séquentiellement, s’arrêtant si l’une d’elles échoue, et vous montre le résultat de chaque étape.
Cas d’usage courants
Gestion des dépendances
Mets à jour toutes les dépendances npm et vérifie qu'il n'y a pas de vulnérabilités
L’agent exécutera npm update, puis npm audit et vous présentera un résumé.
Tests et CI
Lance les tests, et s'il y en a qui échouent, analyse les erreurs et propose des corrections
C’est ici que Vibe brille : il peut enchaîner l’exécution des tests, l’analyse des erreurs et la proposition de corrections dans un seul échange.
Build et déploiement
Build le projet en mode production et vérifie qu'il n'y a pas d'erreurs TypeScript
Docker et conteneurs
Vérifie quels conteneurs Docker tournent et montre les logs du conteneur api
Le mode auto-approve
Avec Shift+Tab, vous pouvez basculer en mode auto-approve. Dans ce mode, Vibe exécute les commandes sans demander votre confirmation. C’est utile pour les sessions de développement intensif où vous faites confiance à l’agent, mais utilisez-le avec précaution.
Le système de Trust Folder ajoute une couche de sécurité : seuls les répertoires explicitement marqués comme sûrs dans ~/.vibe/trusted_folders.toml permettent l’auto-approve.
Ouvrir un éditeur externe
Si vous avez besoin de rédiger un message long ou complexe, Ctrl+G ouvre votre éditeur externe (défini par $EDITOR). Rédigez votre message, sauvegardez et fermez — le contenu est envoyé à Vibe.
Points clés à retenir
- Le préfixe
!exécute une commande shell directement depuis le mode interactif - L’agent peut aussi déterminer et exécuter les commandes appropriées en langage naturel
- Chaque commande nécessite une approbation par défaut (modifiable dans config.toml)
- Le terminal est stateful : variables et répertoire courant sont préservés
- Le mode auto-approve (Shift+Tab) supprime les confirmations — à utiliser avec précaution
- Le système Trust Folder sécurise l’auto-approve par répertoire