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 :
- Sélectionner l'outil approprié en fonction de votre demande
- Présenter l'outil avec ses paramètres pour vérification
- Exécuter l'outil approuvé et vous montrer les résultats
- 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
read_file | Lit le contenu d'un fichier, avec des plages de lignes optionnelles | Afficher les fichiers de configuration, examiner le code source |
glob | Trouve des fichiers par motif de nom (ex. **/*.ts) | Localiser les fichiers de test, trouver tous les composants |
grep | Recherche le contenu des fichiers avec des motifs regex | Trouver les définitions de fonctions, localiser les TODOs |
list_files | Liste les fichiers et répertoires | Parcourir la structure d'un seul répertoire |
GetSymbolsOverview | Obtient les symboles de niveau supérieur dans un fichier | Comprendre la structure du fichier avant de plonger dedans |
FindSymbol | Recherche un symbole par chemin de nom avec profondeur optionnelle | Naviguer vers une classe, méthode ou fonction |
FindReferencingSymbols | Trouve toutes les références à un symbole | Comprendre 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
write_file | Crée un nouveau fichier ou réécrit complètement un fichier existant | Générer de nouveaux composants, créer des fichiers de configuration |
apply_diff | Applique des modifications précises et ciblées à des parties spécifiques d'un fichier | Mettre à jour la logique de fonction, corriger des bugs, refactoriser du code |
insert_content | Insère de nouvelles lignes à une position spécifique dans un fichier | Ajouter des imports, insérer de nouvelles fonctions |
search_and_replace | Trouve et remplace des motifs de texte ou regex dans un fichier | Renommer 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
execute_command | Exécute des commandes CLI dans votre espace de travail | Installer 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é.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
spawn_subagent | Crée un agent indépendant avec sa propre fenêtre de contexte | Rechercher 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 :
| Type | Description |
|---|---|
explore | Exploration de la base de code en lecture seule, s'exécute sur un modèle plus léger |
general | Accè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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
start_subtask | Crée une nouvelle tâche avec un titre, des instructions et une liste de tâches optionnelle | Diviser 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
| Outils de serveur MCP | Accède aux outils fournis par les serveurs MCP connectés | Interroger 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
switch_mode | Bascule 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
use_skill | Charge des instructions détaillées pour un skill nommé dans le contexte actuel | Activer 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
start_workflow | Lance un workflow nommé avec ses propres étapes structurées | Cré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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
update_todo_list | Crée ou met à jour une liste de contrôle markdown des étapes de tâche | Suivre 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.
| Outil | Objectif | Exemple d'utilisation |
|---|---|---|
ask_followup_question | Demande des clarifications ou des détails supplémentaires | Demander 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.
Garder la documentation synchronisée avec ta base de code
Apprends à garder la documentation technique synchronisée avec ta base de code en utilisant la commande init d'IBM Bob et un mode Docs Architect personnalisé dans des scénarios de développement réels — développement de fonctionnalités, révisions de code, intégration et maintenance continue.
Gestion du context window
Découvre comment fonctionne le context window de 270 000 tokens de Bob, comment chaque catégorie contribue à l'utilisation des tokens et les meilleures pratiques pour garder les tasks ciblées et efficaces en coût.