Mentions de contexte
Référence des éléments spécifiques de ton projet directement dans tes conversations avec Bob en utilisant les @mentions pour une assistance précise et contextualisée.
Types de mentions
Avec les mentions de contexte, tu peux faire référence à divers éléments de ton projet :
| Type de mention | Format | Description | Exemple d'utilisation |
|---|---|---|---|
| Fichier | @/path/to/file.ts | Inclut le contenu du fichier dans le contexte de la requête | Explique la fonction dans @/src/utils.ts |
| Dossier | @/path/to/folder | Inclut le contenu de tous les fichiers directement dans le dossier (non récursif) | Analyse le code dans @/src/components |
| Problèmes | @problems | Inclut les diagnostics du panneau Problems de IBM Bob | @problems Corrige toutes les erreurs dans mon code |
| Terminal | @terminal | Inclut la commande terminal récente et sa sortie | Corrige les erreurs affichées dans @terminal |
| Git commit | @a1b2c3d | Référence un commit spécifique par son hash | Qu'est-ce qui a changé dans le commit @a1b2c3d ? |
| Git changes | @git-changes | Affiche les modifications non validées | Suggère un message pour @git-changes |
| URL | @https://example.com | Importe le contenu d'un site web | Résume @https://docusaurus.io/ |
Mentions de fichier
Les mentions de fichier sont le type le plus couramment utilisé, te permettant d'inclure le contenu de fichiers spécifiques dans ta conversation avec Bob.
| Capacité | Détails |
|---|---|
| Format | @/path/to/file.ts (commence toujours par / depuis la racine du workspace) |
| Fournit | Le contenu complet du fichier avec les numéros de ligne |
| Fonctionne avec | Fichiers texte, PDFs et fichiers DOCX (avec extraction de texte) |
| Fonctionne dans | Requêtes initiales, retours d'expérience et messages de suivi |
| Limites | Les fichiers très volumineux peuvent être tronqués ; fichiers binaires non pris en charge |
Pour les fichiers volumineux, tu peux mentionner des sections spécifiques en utilisant le chemin du fichier suivi des numéros de ligne, comme @/src/app.js:10-20 pour n'inclure que les lignes 10 à 20.
Mentions de dossier
Avec les mentions de dossier, tu peux faire référence à plusieurs fichiers à la fois, offrant un contexte plus large depuis un répertoire.
| Capacité | Détails |
|---|---|
| Format | @/path/to/folder (sans barre oblique à la fin) |
| Fournit | Le contenu complet de tous les fichiers du dossier |
| Inclut | Le contenu des fichiers texte non binaires directement présents dans le dossier (non récursif) |
| Idéal pour | Fournir du contexte à partir de plusieurs fichiers d'un même répertoire |
| Conseil | Fais attention aux limites de la context window lorsque tu mentionnes de grands répertoires |
Les mentions de dossier sont non récursives, ce qui signifie qu'elles incluent uniquement les fichiers situés directement dans le dossier spécifié, pas dans ses sous-dossiers.
Mention de problèmes (problems)
La mention de problèmes importe les diagnostics du panneau Problems de IBM Bob, t'aidant à résoudre plusieurs problèmes à la fois.
| Capacité | Détails |
|---|---|
| Format | @problems |
| Fournit | Toutes les erreurs et avertissements du panneau Problems de IBM Bob |
| Inclut | Les chemins de fichiers, les numéros de ligne et les messages de diagnostic |
| Groupe | Les problèmes organisés par fichier pour une meilleure clarté |
| Idéal pour | Corriger les erreurs sans copier-coller manuel |
Exemple d'utilisation : @problems Peux-tu m'aider à corriger tous ces problèmes ?
Mention de terminal
Les mentions de terminal capturent la sortie des commandes récentes, t'aidant à déboguer des erreurs de build ou à analyser les résultats d'une commande.
| Capacité | Détails |
|---|---|
| Format | @terminal |
| Capture | La dernière commande et sa sortie complète |
| Préserve | L'état du terminal (ne vide pas le terminal) |
| Limite | Limité au contenu visible du tampon du terminal |
| Idéal pour | Déboguer des erreurs de build ou analyser la sortie de commandes |
Lors de la résolution d'un échec de build, essaie
Qu'est-ce qui ne va pas avec @terminal ? pour obtenir un aperçu immédiat de l'erreur sans copier manuellement la sortie.
Mentions Git
Les mentions Git t'aident à travailler avec le contrôle de version en référençant des commits et des modifications.
| Type | Format | Fournit | Limites |
|---|---|---|---|
| Commit | @a1b2c3d | Message de commit, auteur, date et diff complet | Fonctionne uniquement dans les dépôts Git |
| Modifications en cours | @git-changes | Sortie de git status et diff des modifications non validées | Fonctionne uniquement dans les dépôts Git |
Exemple d'utilisation : Quel est le but de @a1b2c3d ? ou Suggère un message de commit pour @git-changes
Mentions d'URL
Les mentions d'URL te permettent de référencer du contenu web externe dans tes conversations avec Bob.
| Capacité | Détails |
|---|---|
| Format | @https://example.com |
| Traitement | Utilise un navigateur headless pour récupérer le contenu |
| Nettoyage | Supprime les scripts, les styles et les éléments de navigation |
| Sortie | Convertit le contenu en Markdown pour une meilleure lisibilité |
| Limite | Les pages complexes peuvent ne pas se convertir parfaitement |
Les mentions d'URL sont utiles pour faire référence à de la documentation.
Essaie Peux-tu m'expliquer @https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise pour obtenir de l'aide sur un concept en utilisant la doc officielle comme contexte.
Utiliser les mentions de contexte
Saisis @ dans la zone de texte du chat pour afficher le dropdown de suggestions.
Continue à écrire pour filtrer les suggestions ou utilise les touches directionnelles pour naviguer.
Sélectionne avec la touche Entrée ou un clic de souris.
Combine plusieurs mentions dans une requête : "Corrige @problems dans @/src/component.ts"
Surligne du texte et utilise le raccourci clavier ⌘ + L pour l'ajouter au chat.
Le dropdown suggère automatiquement :
- Les fichiers récemment ouverts
- Les dossiers visibles
- Les commits Git récents
- Les mots-clés spéciaux (
problems,terminal,git-changes) - Tous les fichiers actuellement ouverts (indépendamment des règles d'exclusion ou des filtres de répertoires)
Le dropdown filtre automatiquement les répertoires courants comme node_modules, .git, dist et out pour réduire le bruit visuel, bien que tu puisses inclure leur contenu en les saisissant manuellement.
Tu peux combiner plusieurs mentions dans une seule requête. Essaie Compare @/src/v1/api.js avec @/src/v2/api.js et explique les différences.
Comportements importants
Interactions avec les fichiers ignorés
Les mentions de contexte ont des comportements spécifiques lors de l'interaction avec les fichiers ignorés :
| Comportement | Description |
|---|---|
Contournement de .bobignore | Les @mentions de fichiers et de dossiers contournent les vérifications de .bobignore lors de la récupération de contenu pour le contexte. Le contenu des fichiers ignorés sera inclus s'il est directement mentionné. |
Contournement de .gitignore | De même, les @mentions de fichiers et de dossiers ne respectent pas les règles de .gitignore lors de la récupération de contenu. |
| Respect des commandes Git | Les mentions liées à Git (@git-changes, @commit-hash) respectent .gitignore puisqu'elles reposent sur des commandes Git. |
Les mentions de contexte contournent les règles d'exclusion, de sorte que tu peux faire référence à des fichiers spécifiques qui seraient normalement ignorés par Bob ou Git. Cette capacité est particulièrement utile lorsque tu as besoin de discuter de fichiers générés ou d'autres contenus généralement ignorés.
Synthèse
Les mentions de contexte améliorent tes interactions avec Bob en fournissant des références précises aux éléments de ton projet. Au lieu de copier-coller du code ou de décrire l'emplacement des fichiers, tu peux directement faire référence à ce dont tu parles.
Combinaisons efficaces de différents types de mentions :
Corrige @problems dans @/src/components et explique ce qui ne allait pasExamine @git-changes et suggère des améliorationsCompare @/v1/api.js avec @https://api-docs.example.com et vérifie s'il y a des incohérences
En utilisant efficacement les mentions de contexte, tu peux communiquer plus précisément avec Bob et recevoir une aide plus ciblée.
Subagents
Découvre comment Bob utilise des subagents pour gérer des tâches ciblées et autonomes dans des contextes isolés sans polluer la conversation principale.
Conseils Bob
Les conseils Bob détectent les problèmes de qualité du code en temps réel avec des suggestions de refactorisation assistées par IA pour les fonctions complexes. Réduis la dette technique pendant que tu codes.