Fonctionnalités

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 mentionFormatDescriptionExemple d'utilisation
Fichier@/path/to/file.tsInclut le contenu du fichier dans le contexte de la requêteExplique la fonction dans @/src/utils.ts
Dossier@/path/to/folderInclut le contenu de tous les fichiers directement dans le dossier (non récursif)Analyse le code dans @/src/components
Problèmes@problemsInclut les diagnostics du panneau Problems de IBM Bob@problems Corrige toutes les erreurs dans mon code
Terminal@terminalInclut la commande terminal récente et sa sortieCorrige les erreurs affichées dans @terminal
Git commit@a1b2c3dRéférence un commit spécifique par son hashQu'est-ce qui a changé dans le commit @a1b2c3d ?
Git changes@git-changesAffiche les modifications non validéesSuggère un message pour @git-changes
URL@https://example.comImporte le contenu d'un site webRé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)
FournitLe contenu complet du fichier avec les numéros de ligne
Fonctionne avecFichiers texte, PDFs et fichiers DOCX (avec extraction de texte)
Fonctionne dansRequêtes initiales, retours d'expérience et messages de suivi
LimitesLes fichiers très volumineux peuvent être tronqués ; fichiers binaires non pris en charge
Conseil :

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)
FournitLe contenu complet de tous les fichiers du dossier
InclutLe contenu des fichiers texte non binaires directement présents dans le dossier (non récursif)
Idéal pourFournir du contexte à partir de plusieurs fichiers d'un même répertoire
ConseilFais attention aux limites de la context window lorsque tu mentionnes de grands répertoires
Note :

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
FournitToutes les erreurs et avertissements du panneau Problems de IBM Bob
InclutLes chemins de fichiers, les numéros de ligne et les messages de diagnostic
GroupeLes problèmes organisés par fichier pour une meilleure clarté
Idéal pourCorriger 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
CaptureLa dernière commande et sa sortie complète
PréserveL'état du terminal (ne vide pas le terminal)
LimiteLimité au contenu visible du tampon du terminal
Idéal pourDéboguer des erreurs de build ou analyser la sortie de commandes
Conseil

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.

TypeFormatFournitLimites
Commit@a1b2c3dMessage de commit, auteur, date et diff completFonctionne uniquement dans les dépôts Git
Modifications en cours@git-changesSortie de git status et diff des modifications non validéesFonctionne 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
TraitementUtilise un navigateur headless pour récupérer le contenu
NettoyageSupprime les scripts, les styles et les éléments de navigation
SortieConvertit le contenu en Markdown pour une meilleure lisibilité
LimiteLes pages complexes peuvent ne pas se convertir parfaitement
Conseil :

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"

Conseil :

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.

Conseil :

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 :

ComportementDescription
Contournement de .bobignoreLes @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 .gitignoreDe 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 GitLes 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 pas
  • Examine @git-changes et suggère des améliorations
  • Compare @/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.

Comment trouvez-vous ce sujet ?