Aller au contenu principal

Contrôle du répertoire de travail

Le répertoire de travail par défaut

Quand vous lancez vibe, l’agent utilise le répertoire courant comme répertoire de travail. C’est ce répertoire qui définit le contexte du projet : Vibe scanne son arborescence, lit les fichiers de configuration et détecte le type de projet à partir de cet emplacement.

cd /home/user/projets/mon-api
vibe
# → Vibe analyse le projet mon-api

C’est pour cela qu’il est important de se placer dans le bon répertoire avant de lancer Vibe. L’agent travaille dans le contexte du dossier où il est lancé.

L’option —workdir

Si vous souhaitez travailler sur un projet sans vous y déplacer avec cd, utilisez l’option --workdir :

vibe --workdir /home/user/projets/mon-api

Vibe se comporte exactement comme si vous aviez lancé vibe depuis /home/user/projets/mon-api. Le scan du projet, les chemins de fichiers et les commandes shell utilisent tous ce répertoire comme base.

Cas d’usage

L’option --workdir est utile dans plusieurs scénarios :

  • Scripts d’automatisation — quand vous ne contrôlez pas le répertoire courant
  • Projets multiples — basculer rapidement sans changer de terminal
  • CI/CD — pointer vers le répertoire du dépôt cloné
# Dans un script
for projet in api frontend worker; do
  vibe --workdir "/projets/$projet" \
       --prompt "Vérifie les vulnérabilités npm" \
       --output json > "audit-$projet.json"
done

Travailler sur plusieurs projets

En pratique, les développeurs travaillent souvent sur plusieurs projets simultanément. Voici comment organiser vos sessions Vibe efficacement.

Un terminal par projet

L’approche la plus simple : ouvrez un terminal (ou un onglet tmux/screen) par projet :

# Terminal 1 : API backend
cd /projets/api-backend
vibe

# Terminal 2 : Frontend
cd /projets/frontend-react
vibe

# Terminal 3 : Infrastructure
cd /projets/infra-terraform
vibe

Chaque instance de Vibe a son propre contexte, sa propre session et son propre historique.

Configuration par projet

Créez un fichier .vibe/config.toml dans chaque projet pour des paramètres adaptés :

# Projet API Python
# /projets/api-backend/.vibe/config.toml
cat > .vibe/config.toml << 'EOF'
active_model = "devstral-2"
system_prompt_id = "python_expert"

[tools.bash]
permission = "ask"
EOF
# Projet Frontend React
# /projets/frontend-react/.vibe/config.toml
cat > .vibe/config.toml << 'EOF'
active_model = "devstral-2"
system_prompt_id = "react_expert"

[[mcp_servers]]
name = "fetch"
transport = "stdio"
command = "uvx"
args = ["mcp-server-fetch"]
EOF

La configuration projet (./.vibe/config.toml) a priorité sur la configuration globale (~/.vibe/config.toml). Chaque projet peut ainsi avoir son propre modèle, ses propres prompts et ses propres serveurs MCP.

Le système Trust Folder

Pour la sécurité, Vibe utilise un système de dossiers de confiance défini dans ~/.vibe/trusted_folders.toml. Seuls les répertoires listés dans ce fichier permettent certaines actions automatiques (comme l’auto-approve).

# ~/.vibe/trusted_folders.toml
trusted = [
  "/home/user/projets/mon-api",
  "/home/user/projets/frontend",
]

Si vous travaillez dans un répertoire non listé et activez l’auto-approve, Vibe vous avertira que le répertoire n’est pas dans la liste de confiance.

Chemins relatifs et absolus

Dans vos interactions avec Vibe, vous pouvez utiliser des chemins relatifs (par rapport au répertoire de travail) ou des chemins absolus :

# Chemin relatif (recommandé)
Explique le code dans @src/api/routes.ts

# Chemin absolu
Explique le code dans @/home/user/projets/mon-api/src/api/routes.ts

Les chemins relatifs sont plus lisibles et portables. L’autocomplétion avec @ fonctionne avec les deux types de chemins.

Changer de répertoire en session

Si vous avez besoin de naviguer vers un autre dossier en cours de session, utilisez une commande shell :

!cd /autre/projet && ls

Attention : le contexte projet (scan initial) reste celui du répertoire de lancement. Vibe ne re-scanne pas automatiquement le nouveau répertoire. Pour un changement complet de contexte, il est préférable de lancer une nouvelle session.

Points clés à retenir

  • Vibe utilise le répertoire courant comme contexte de projet au lancement
  • --workdir permet de spécifier un répertoire sans s’y déplacer
  • Un terminal par projet est l’approche la plus propre pour le multi-projet
  • .vibe/config.toml par projet personnalise le comportement pour chaque codebase
  • Le système Trust Folder sécurise l’auto-approve par répertoire
  • Les chemins relatifs avec @ sont recommandés pour la lisibilité