Concepts de base

Outils

Découvre comment Bob utilise des outils spécialisés pour lire des fichiers, éditer du code, exécuter des commandes, générer des sous-agents, utiliser des intégrations MCP et changer de mode pour rationaliser ton flux de travail de codage.

Flux de travail des outils

Lorsque vous travaillez avec Bob, il détermine les actions appropriées. Pour chaque étape, Bob va :

  1. Sélectionner l'outil approprié en fonction de votre demande
  2. Présenter l'outil avec ses paramètres pour vérification
  3. Exécuter l'outil approuvé et vous montrer les résultats
  4. Continuer ce processus jusqu'à ce que votre tâche soit terminée

Catégories d'outils

Les outils de Bob sont regroupés par leur fonction principale. Comprendre ces catégories vous aide à voir comment Bob accomplit différentes tâches.

Outils de lecture

Les outils de lecture permettent à Bob d'accéder au contenu des fichiers et de comprendre la structure du code sans apporter de modifications.

OutilObjectifExemple d'utilisation
read_fileLit le contenu d'un fichier, avec des plages de lignes optionnellesAfficher les fichiers de configuration, examiner le code source
globTrouve des fichiers par motif de nom (ex. **/*.ts)Localiser les fichiers de test, trouver tous les composants
grepRecherche le contenu des fichiers avec des motifs regexTrouver les définitions de fonctions, localiser les TODOs
list_filesListe les fichiers et répertoiresParcourir la structure d'un seul répertoire
GetSymbolsOverviewObtient les symboles de niveau supérieur dans un fichierComprendre la structure du fichier avant de plonger dedans
FindSymbolRecherche un symbole par chemin de nom avec profondeur optionnelleNaviguer vers une classe, méthode ou fonction
FindReferencingSymbolsTrouve toutes les références à un symboleComprendre où une fonction ou un type est utilisé

Bob utilise les outils de lecture lorsque votre demande implique de vérifier du code, de rechercher des motifs ou d'examiner la structure du projet.

Outils d'écriture

Les outils d'écriture permettent à Bob de créer de nouveaux fichiers ou de modifier du code existant.

OutilObjectifExemple d'utilisation
write_fileCrée un nouveau fichier ou réécrit complètement un fichier existantGénérer de nouveaux composants, créer des fichiers de configuration
apply_diffApplique des modifications précises et ciblées à des parties spécifiques d'un fichierMettre à jour la logique de fonction, corriger des bugs, refactoriser du code
insert_contentInsère de nouvelles lignes à une position spécifique dans un fichierAjouter des imports, insérer de nouvelles fonctions
search_and_replaceTrouve et remplace des motifs de texte ou regex dans un fichierRenommer des variables, mettre à jour des motifs répétés

Bob utilise les outils d'écriture lorsque votre demande implique de créer des fichiers, d'implémenter des fonctionnalités, de corriger des bugs ou de refactoriser du code.

Outils de commande

Les outils de commande permettent à Bob d'exécuter des commandes et d'effectuer des opérations système.

OutilObjectifExemple d'utilisation
execute_commandExécute des commandes CLI dans votre espace de travailInstaller des dépendances, exécuter des tests, construire des projets

Bob utilise les outils de commande lorsque votre demande implique d'exécuter des commandes, d'installer des packages, d'exécuter des scripts ou d'effectuer des opérations système.

Outils de sous-agent

Les outils de sous-agent permettent à Bob de générer un agent indépendant pour gérer un travail ciblé et autonome dans son propre contexte isolé.

OutilObjectifExemple d'utilisation
spawn_subagentCrée un agent indépendant avec sa propre fenêtre de contexteRechercher une section de la base de code, recueillir des informations sans polluer le contexte principal

Comment fonctionnent les sous-agents

Un sous-agent s'exécute indépendamment de la conversation principale. Il a sa propre fenêtre de contexte, exécute sa tâche assignée et renvoie un résumé des résultats à Bob. Cela rend les sous-agents utiles pour les travaux qui ajouteraient autrement de grandes quantités de contenu non pertinent à la conversation principale.

Bob utilise les sous-agents avec parcimonie. Le comportement par défaut est toujours de faire le travail directement. Un sous-agent n'est envisagé que lorsque toutes les conditions suivantes sont remplies :

  • La tâche est clairement autonome et seul un résumé est nécessaire en retour
  • Elle ajouterait un contenu non pertinent significatif au contexte principal
  • Elle ne peut pas être accomplie avec un ou deux appels d'outils directs

Il existe deux types de sous-agents :

TypeDescription
exploreExploration de la base de code en lecture seule, s'exécute sur un modèle plus léger
generalAccès complet aux outils, s'exécute sur le modèle par défaut

Par défaut, un sous-agent ne voit pas l'historique de conversation du parent. Définir fork_context: true transmet l'historique de conversation au sous-agent lorsqu'il a besoin de comprendre les décisions antérieures, les contraintes ou les préférences de l'utilisateur.

Bob n'utilise pas de sous-agents pour les lectures simples de fichiers, les recherches rapides, les opérations à outil unique ou les tâches où il a déjà le contexte pertinent.

Outils de sous-tâche

Les outils de sous-tâche permettent à Bob de créer une nouvelle instance de tâche nommée qui s'exécute comme sa propre conversation dédiée dans l'interface utilisateur.

OutilObjectifExemple d'utilisation
start_subtaskCrée une nouvelle tâche avec un titre, des instructions et une liste de tâches optionnelleDiviser une grande demande en une sous-tâche suivie avec son propre fil de conversation

Comment fonctionnent les sous-tâches

Une sous-tâche est une tâche complètement indépendante qui apparaît dans l'interface utilisateur avec son propre fil d'Ariane et son historique de conversation. Contrairement à un sous-agent — qui s'exécute silencieusement en arrière-plan et ne renvoie qu'un résumé — une sous-tâche est visible et interactive. Tu peux suivre sa progression, examiner sa sortie et continuer la conversation à l'intérieur.

Bob utilise les sous-tâches lorsqu'une demande est suffisamment complexe pour bénéficier d'un suivi dédié et d'un fil de conversation séparé. Une sous-tâche peut recevoir :

  • Un titre affiché dans le fil d'Ariane de l'interface utilisateur
  • Un message avec des instructions détaillées
  • Une liste de tâches initiale pour suivre les étapes
  • Un mode optionnel pour le démarrer (par exemple, mode Plan pour le travail de conception)

Outils MCP

Les outils MCP permettent à Bob d'étendre ses capacités via des serveurs Model Context Protocol (MCP) connectés.

OutilObjectifExemple d'utilisation
Outils de serveur MCPAccède aux outils fournis par les serveurs MCP connectésInterroger des bases de données, interagir avec des API, accéder à des services externes

Bob utilise les outils MCP lorsque votre demande implique des fonctionnalités fournies par des serveurs MCP configurés, comme monday.com, des bases de connaissances produits ou des intégrations personnalisées.

Outils de mode

Les outils de mode permettent à Bob de basculer entre différents modes pour des tâches spécialisées.

OutilObjectifExemple d'utilisation
switch_modeBascule vers un autre mode (Agent, Plan, Ask, etc.)Passer au mode Plan pour la conception d'architecture, mode Agent pour l'implémentation

Bob utilise les outils de mode lorsque votre demande est mieux traitée par un autre mode et ses capacités spécialisées.

Outils de skill

Les outils de skill permettent à Bob d'activer des ensembles d'instructions spécialisées pour des domaines et des tâches spécifiques.

OutilObjectifExemple d'utilisation
use_skillCharge des instructions détaillées pour un skill nommé dans le contexte actuelActiver le skill Carbon builder, charger les conseils de workflow Jira

Les skills étendent les connaissances intégrées de Bob avec des instructions organisées et spécifiques au domaine. Lorsqu'une demande correspond à un skill — comme travailler avec des composants Carbon Design System, écrire de la documentation DITA ou gérer des sprints Jira — Bob active le skill pertinent une fois par conversation pour charger ses conseils complets avant de continuer.

Outils de workflow

Les outils de workflow permettent à Bob de lancer des processus prédéfinis en plusieurs étapes conçus pour des tâches récurrentes spécifiques.

OutilObjectifExemple d'utilisation
start_workflowLance un workflow nommé avec ses propres étapes structuréesCréer un pull request, effectuer une revue de code

Les workflows sont des processus étape par étape organisés pour les tâches courantes. Bob les utilise lorsqu'une demande correspond clairement à l'objectif d'un workflow — par exemple, générer une description de PR à partir d'un diff git ou examiner les modifications de code par rapport à une branche de base.

Outils de todo

Les outils de todo permettent à Bob de suivre la progression à travers des tâches en plusieurs étapes à l'aide d'une liste de contrôle visible.

OutilObjectifExemple d'utilisation
update_todo_listCrée ou met à jour une liste de contrôle markdown des étapes de tâcheSuivre les étapes d'implémentation, marquer les éléments terminés, ajouter des tâches nouvellement découvertes

Bob utilise le suivi des todos pour les tâches complexes avec plusieurs étapes. La liste est mise à jour au fur et à mesure que le travail progresse — marquant les éléments comme terminés, ajoutant des étapes nouvellement découvertes et gardant un élément en cours à la fois. Cela te donne une vue claire de ce qui a été fait et de ce qui reste.

Outils de question

Les outils de question permettent à Bob de recueillir des informations supplémentaires nécessaires pour accomplir des tâches.

OutilObjectifExemple d'utilisation
ask_followup_questionDemande des clarifications ou des détails supplémentairesDemander l'approche d'implémentation préférée, demander des informations manquantes

Bob utilise les outils de question lorsque votre demande nécessite plus d'informations ou de clarifications avant que Bob puisse continuer.

Comment trouvez-vous ce sujet ?