Agents
Les agents sont des surcharges de configuration appliquées par-dessus la configuration globale. Ils regroupent un prompt système, un prompt de compaction, un modèle actif, un ensemble d'outils disponibles et des règles d'approbation.
Le CLI est livré avec plusieurs agents intégrés, et vous pouvez définir les vôtres.
Agents intégrés
| Agent | Comportement |
|---|---|
default | Agent polyvalent. Demande une approbation avant d'exécuter des outils. |
plan | Agent en lecture seule pour l'exploration et la planification. Approuve automatiquement les outils de lecture sûrs. |
accept-edits | Approuve automatiquement les modifications de fichiers dans le répertoire de travail. Demande toujours une approbation pour les autres actions (par exemple, les commandes shell). |
auto-approve | Approuve automatiquement toutes les exécutions d'outils. Utilisez uniquement dans un environnement de confiance et sandboxé : cet agent peut exécuter des commandes arbitraires comme rm -rf sur tout chemin accessible par Vibe. |
lean | Agent spécialisé pour l'assistant de preuve Lean 4. Installez-le avec /leanstall depuis le CLI. |
Le CLI inclut également un sous-agent intégré appelé explore, utilisé par le modèle pour l'exploration en lecture seule de la base de code. Vous ne pouvez pas sélectionner les sous-agents directement avec --agent.
Sélectionner un agent
Choisissez un agent au lancement :
vibe --agent plan
vibe --agent auto-approveDans les sessions interactives, changez d'agent à la volée avec Maj+Tab.
Définissez l'agent interactif par défaut dans config.toml :
default_agent = "plan"Cela s'applique uniquement aux sessions interactives. En mode programmatique (--prompt), le CLI utilise auto-approve par défaut si --agent n'est pas fourni.
Agents personnalisés
Créez des agents personnalisés dans ~/.vibe/agents/ (niveau utilisateur) ou ./.vibe/agents/ (niveau projet) en ajoutant un fichier .toml. Chaque agent doit déclarer son type via agent_type :
agent_type = "agent": destiné à l'utilisateur. Sélectionnable viavibe --agent <nom>ouMaj+Tab.agent_type = "subagent": délegation uniquement. Lancé par le modèle via l'outiltask. Non sélectionnable par l'utilisateur.
Exécutez un agent personnalisé avec son nom de fichier :
vibe --agent redteamLe CLI recherche redteam.toml dans le répertoire des agents et applique sa configuration.
Exemple : un agent de révision red-team en lecture seule.
# ~/.vibe/agents/redteam.toml
agent_type = "agent"
display_name = "Red team"
description = "Read-only audit agent for security review."
safety = "safe"
active_model = "mistral-medium-latest"
system_prompt_id = "redteam"
disabled_tools = ["search_replace", "write_file"]
[tools.bash]
permission = "ask"
[tools.read_file]
permission = "always"Le champ safety modifie la couleur de la bordure d'entrée dans le CLI pour signaler le niveau de sécurité de l'agent. Les options sont safe, neutral, destructive et yolo. Il s'agit d'un indicateur visuel uniquement et n'applique pas de permissions, aussi associez-le à des enabled_tools, disabled_tools et des permissions par outil appropriés.
La valeur system_prompt_id pointe vers un fichier dans ~/.vibe/prompts/. L'exemple ci-dessus nécessite ~/.vibe/prompts/redteam.md.
Sous-agents personnalisés
Les sous-agents s'exécutent indépendamment et renvoyent uniquement des résultats textuels à l'agent parent. Le modèle peut les lancer via l'outil task lorsqu'il souhaite déléguer une exploration ou un travail en arrière-plan.
Créez un sous-agent personnalisé en définissant agent_type = "subagent" :
# ~/.vibe/agents/research.toml
agent_type = "subagent"
display_name = "Research"
description = "Read-only subagent for research tasks."
safety = "safe"
enabled_tools = ["grep", "read_file"]Les sous-agents ne peuvent pas poser de questions à l'utilisateur. Par défaut, les sous-agents intégrés n'écrivent pas de fichiers, mais un sous-agent personnalisé peut le faire si ses enabled_tools et ses permissions par outil l'y autorisent.
Prise en charge de AGENTS.md
Le CLI charge jusqu'à deux fichiers AGENTS.md dans le Contexte pour suivre les instructions spécifiques aux agents du projet :
- Niveau utilisateur :
~/.vibe/AGENTS.md(ou dans$VIBE_HOMEsi vous l'avez défini). - Niveau projet : à partir du répertoire de travail actuel, en remontant les répertoires parents (mais uniquement dans les dossiers de confiance), le premier fichier
AGENTS.mdtrouvé est chargé.
Par exemple :
/
dir_1/
AGENTS.md <- never loaded: location is not trusted
dir_2/ <- trusted
AGENTS.md
dir_3/
AGENTS.md <- loaded
project/ <- cwd (no AGENTS.md here)