Funzionalità

Menzioni di contesto

Fai riferimento a elementi specifici del tuo progetto direttamente nelle conversazioni con Bob utilizzando le @mentions per un'assistenza precisa e consapevole del contesto.

Tipi di menzioni

Con le menzioni di contesto, puoi fare riferimento a vari elementi del tuo progetto:

Tipo di menzioneFormatoDescrizioneEsempio di utilizzo
File@/path/to/file.tsInclude il contenuto del file nel contesto della richiestaSpiega la funzione in @/src/utils.ts
Cartella@/path/to/folderInclude il contenuto di tutti i file direttamente nella cartella (non ricorsivo)Analizza il codice in @/src/components
Problemi@problemsInclude la diagnostica del pannello Problems di IBM Bob@problems Correggi tutti gli errori nel mio codice
Terminal@terminalInclude il comando recente del terminale e il relativo outputCorreggi gli errori mostrati in @terminal
Git commit@a1b2c3dFa riferimento a un commit specifico tramite il relativo hashCosa è cambiato nel commit @a1b2c3d?
Git changes@git-changesMostra le modifiche non sottoposte a commitSuggerisci un messaggio per @git-changes
URL@https://example.comImporta il contenuto del sito webRiassumi @https://docusaurus.io/

Menzioni di file

Le menzioni di file sono il tipo più comunemente utilizzato e ti consentono di includere il contenuto di file specifici nella tua conversazione con Bob.

CapacitàDettagli
Formato@/path/to/file.ts (inizia sempre con / dalla radice del workspace)
FornisceContenuto completo del file con i numeri di riga
Funziona conFile di testo, PDF e file DOCX (con estrazione del testo)
Funziona inRichieste iniziali, risposte di feedback e messaggi di follow-up
LimitazioniI file molto grandi possono essere troncati; i file binari non sono supportati
Suggerimento:

Per i file di grandi dimensioni, puoi menzionare sezioni specifiche utilizzando il percorso del file seguito dai numeri di riga, come @/src/app.js:10-20 per includere solo le righe 10-20.

Menzioni di cartella

Con le menzioni di cartella, puoi fare riferimento a più file contemporaneamente, fornendo un contesto più ampio da una directory.

CapacitàDettagli
Formato@/path/to/folder (nessuna barra finale)
FornisceContenuto completo di tutti i file all'interno della directory
IncludeContenuto dei file di testo non binari direttamente all'interno della cartella (non ricorsivo)
Ideale perFornire il contesto di più file in una directory
SuggerimentoPresta attenzione ai limiti del contex window quando menzioni directory di grandi dimensioni
Nota:

Le menzioni di cartella non sono ricorsive, il che significa che includono solo i file presenti direttamente nella cartella specificata, non nelle sottocartelle.

Menzione dei problemi (problems)

La menzione dei problemi importa la diagnostica dal pannello Problems di IBM Bob, aiutandoti a risolvere più problemi contemporaneamente.

CapacitàDettagli
Formato@problems
FornisceTutti gli errori e gli avvisi dal pannello dei problemi di IBM Bob
IncludePercorsi dei file, numeri di riga e messaggi diagnostici
RaggruppaProblemi organizzati per file per una maggiore chiarezza
Ideale perCorreggere gli errori senza copiarli manualmente

Esempio di utilizzo: @problems Puoi aiutarmi a risolvere tutti questi problemi?

Menzione del terminale (terminal)

Le menzioni del terminale acquisiscono l'output del comando recente, aiutandoti a eseguire il debug degli errori di compilazione o ad analizzare i risultati del comando.

CapacitàDettagli
Formato@terminal
AcquisisceL'ultimo comando e il suo output completo
PreservaLo stato del terminale (non cancella il terminale)
LimitazioneLimitato al contenuto visibile del buffer del terminale
Ideale perDebug di errori di compilazione o analisi dell'output dei comandi
Suggerimento

Durante la risoluzione di un errore di compilazione, prova a inserire Cosa c'è che non va in @terminal? per ottenere informazioni immediate sull'errore senza copiare manualmente l'output.

Menzioni Git

Le menzioni Git ti aiutano a lavorare con il controllo della versione facendo riferimento a commit e modifiche.

TipoFormatoFornisceLimitazioni
Commit@a1b2c3dMessaggio di commit, autore, data e diff completoFunziona solo nei repository Git
Modifiche in corso@git-changesOutput di git status e diff delle modifiche non sottoposte a commitFunziona solo nei repository Git

Esempio di utilizzo: Qual è lo scopo di @a1b2c3d? oppure Suggerisci un messaggio di commit per @git-changes

Menzioni di URL

Le menzioni di URL ti consentono di fare riferimento a contenuti web esterni nelle tue conversazioni con Bob.

CapacitàDettagli
Formato@https://example.com
ElaborazioneUtilizza un browser headless per recuperare il contenuto
PuliziaRimuove script, stili ed elementi di navigazione
OutputConverte il contenuto in Markdown per facilitarne la lettura
LimitazioneLe pagine complesse potrebbero non essere convertite perfettamente
Suggerimento:

Le menzioni di URL sono utili per fare riferimento alla documentazione. Prova Puoi spiegarmi @https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise per ottenere aiuto nella comprensione di un concetto utilizzando la documentazione ufficiale come contesto.

Utilizzare le menzioni di contesto

Digita @ nell'input della chat per attivare il dropdown dei suggerimenti.

Continua a digitare per filtrare i suggerimenti o usa i tasti freccia per navigare.

Seleziona con il tasto Invio o facendo clic con il mouse.

Combina più menzioni in una richiesta: "Correggi @problems in @/src/component.ts"

Suggerimento:

Evidenzia il testo e usa la scorciatoia da tastiera + L per aggiungerlo alla chat.

Il dropdown suggerisce automaticamente:

  • File aperti di recente
  • Cartelle visibili
  • Commit git recenti
  • Parole chiave speciali (problems, terminal, git-changes)
  • Tutti i file attualmente aperti (indipendentemente dalle impostazioni di ignore o dai filtri di directory)

Il dropdown esclude automaticamente le directory comuni come node_modules, .git, dist e out per ridurre il rumore, sebbene sia possibile includere il loro contenuto digitandolo manualmente.

Suggerimento:

Puoi combinare più menzioni in una singola richiesta. Prova Confronta @/src/v1/api.js con @/src/v2/api.js e spiega le differenze.

Comportamenti importanti

Interazioni con file ignorati

Le menzioni di contesto hanno comportamenti specifici quando interagiscono con file ignorati:

ComportamentoDescrizione
Bypass di .bobignoreLe @mentions di file e cartelle ignorano i controlli di .bobignore quando recuperano il contenuto per il contesto. Il contenuto dei file ignorati verrà incluso se menzionato direttamente.
Bypass di .gitignoreAllo stesso modo, le @mentions di file e cartelle non rispettano le regole di .gitignore durante il recupero del contenuto.
Rispetto dei comandi GitLe menzioni correlate a Git (@git-changes, @commit-hash) rispettano .gitignore poiché si basano sui comandi Git.

Le menzioni di contesto ignorano le regole di ignore, quindi puoi fare riferimento a file specifici che normalmente verrebbero ignorati da Bob o Git. Questa funzionalità è particolarmente utile quando devi discutere di file generati o altri contenuti generalmente ignorati.

Mettendo tutto insieme

Le menzioni di contesto migliorano le tue interazioni con Bob fornendo riferimenti precisi agli elementi del tuo progetto. Invece di copiare e incollare codice o descrivere le posizioni dei file, puoi fare direttamente riferimento a ciò di cui stai discutendo.

Combinazioni efficaci di diversi tipi di menzioni:

  • Correggi @problems in @/src/components e spiega cosa c'era di sbagliato
  • Rivedi @git-changes e suggerisci miglioramenti
  • Confronta @/v1/api.js con @https://api-docs.example.com e verifica la presenza di incongruenze

Utilizzando le menzioni di contesto in modo efficace, puoi comunicare in modo più preciso con Bob e ricevere un'assistenza più mirata.

Come valuti questo argomento?