Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Usare WinDbg MCP per analizzare un target di debug con un client di intelligenza artificiale supportato mentre si esaminano le azioni del debugger avviate dall'intelligenza artificiale in WinDbg. WinDbg MCP usa il protocollo MCP (Model Context Protocol) per fornire al client strumenti e contesto del debugger WinDbg durante l'analisi.
I risultati generati dall'intelligenza artificiale non sono autorevoli. Verificare i risultati, le evidenze, i presupposti, lo stato obiettivo e i comandi rispetto all'output in WinDbg.
Questo articolo illustra come registrare WinDbg con Visual Studio Code con GitHub Copilot o GitHub Copilot CLI, connettere il client selezionato alla sessione WinDbg desiderata e usare la connessione per il debug assistito dall'intelligenza artificiale.
Prerequisites
- Verifica che l'organizzazione consenta WinDbg MCP. Gli amministratori possono disabilitarlo abilitando la modalità con restrizioni WinDbg.
- Ottenere WinDbg versione 1.2610.1001.0 o successiva dall'app WinDbg Microsoft Store o dal download di WinDbg.
- Uno dei client di intelligenza artificiale supportati seguenti:
- Visual Studio Code con GitHub Copilot
- interfaccia della riga di comando (CLI) di GitHub Copilot
- Autorizzazione all'uso del target di debug e dei relativi dati con il client di intelligenza artificiale selezionato e il relativo servizio del modello configurato.
- Revisione delle linee guida sulla sicurezza, la privacy e il limite di sessione in WinDbg MCP overview.
Installare e abilitare WinDbg MCP
In questa sezione si registra WinDbg come server MCP con il client di intelligenza artificiale scelto, si avvia il servizio MCP per la sessione WinDbg corrente, che abilita la modalità protetta per impostazione predefinita, e si connette il client a un target di debug in modo da poter avviare l'analisi assistita da intelligenza artificiale. Non è necessario caricare o collegarsi a una destinazione di debug per abilitare il server o registrare WinDbg con un client IA supportato.
Per installare e abilitare il server MCP, seguire questa procedura:
Apri WinDbg. Per aprirlo, cercare WinDbg nel menu Start e selezionarlo.
Scegliere Impostazioni dal menu File di WinDbg.
Nella pagina Impostazioni selezionare Impostazioni servizio MCP, selezionare Abilita server e quindi selezionare il client nell'elenco Client . Selezionare VS Code per Visual Studio Code con GitHub Copilot, oppure selezionare GitHub Copilot CLI se si usa GitHub Copilot CLI.
Usare i controlli numerati nella barra multifunzione WinDbg per installare il server, avviare il servizio e aprire il client.
Selezionare Installa MCP (1) per registrare WinDbg come server MCP con il client selezionato e quindi completare tutte le conferme visualizzate dal client. Una notifica conferma che WinDbg ha registrato il server MCP con il client selezionato.
Selezionare MCP Service (2) per avviare il server MCP per la sessione WinDbg corrente. Nell'avviso sulla privacy e sulla sicurezza esaminare questi comportamenti in modalità protetta:
- Impostazione predefinita: WinDbg seleziona Abilita modalità protetta quando il server MCP viene avviato per impostazione predefinita.
- Attivazione: Se si lascia selezionata la casella di controllo all'avvio del server MCP, viene attivata la modalità protetta. Dopo l'attivazione, la modalità protetta non può essere disattivata e rimane attiva fino al riavvio di WinDbg.
- Impostazione salvata: Se si seleziona o si deseleziona la casella di controllo, l'impostazione salvata >Impostazioni>Impostazioni del servizio MCP>Abilita modalità protetta per il server MCP viene aggiornata in modo da corrispondere allo stato della casella di controllo.
Confermare di autorizzare la destinazione di debug prevista e i relativi dati per l'uso con il client di intelligenza artificiale selezionato e il relativo servizio modello configurato e quindi selezionare Sì.
L'avviso relativo alla privacy e alla sicurezza di WinDbg spiega che l'avvio del server MCP può esporre informazioni sensibili di destinazione del debug a parti non attendibili. Avvisa di non usare il server con dati personali, riservati, proprietari o altri dati che non possiedi o che non sei autorizzato/a a divulgare. Le operazioni di debug guidate dall'intelligenza artificiale possono caricare direttamente o indirettamente o eseguire codice non attendibile, che potrebbe compromettere la sicurezza, danneggiare i dati o danneggiare il sistema o i dispositivi. La modalità protetta riduce questi rischi limitando le operazioni del debugger che possono caricare o eseguire codice non attendibile, avviare processi o eseguire operazioni di file non sicure. WinDbg seleziona la casella di controllo **Abilita modalità sicura all'avvio del server MCP** per impostazione predefinita. La modalità protetta viene attivata all'avvio del server e rimane attiva fino al riavvio di WinDbg. Se si deseleziona la casella di controllo, viene modificata l'impostazione del servizio MCP salvato. La selezione di **Sì** prende atto degli avvisi e avvia il server; selezionando **No** annulla l'operazione.
Per altre informazioni sulla modalità protetta, vedere Modalità protetta.
Caricare o collegare a un target di debug.
Selezionare Apri chat (3) per aprire il client di intelligenza artificiale selezionato e avviare una chat.
Verificare la connessione MCP di WinDbg
Verificare che la barra di stato winDbg mostri il client di intelligenza artificiale connesso al server MCP.
Verificare che WinDbg MCP sia disponibile nel client di intelligenza artificiale.
Immettere il prompt seguente:
Use WinDbg MCP to report the current target type and execution state.Verificare che il client di intelligenza artificiale usi gli strumenti MCP WinDbg e riporti il tipo di target e lo stato di esecuzione visualizzati da WinDbg.
Se il client non si connette o il risultato non corrisponde alla destinazione, vedere Risolvere i problemi di configurazione e connessione MCP di WinDbg.
Analizzare un target di debug con WinDbg MCP
Dopo aver verificato la connessione, provare un prompt di analisi immediato:
Analyze this debugging target and provide the likely cause, supporting evidence, and remaining assumptions.
Confrontare i risultati del client di intelligenza artificiale con lo stato di destinazione e l'output visibile del debugger prima di agire su di essi. Per gli strumenti disponibili e i prompt predefiniti, vedere strumenti e prompt WinDbg MCP. Per gli scenari supportati, vedere Usare MCP WinDbg per il debug.
Scrivere prompt MCP efficaci per WinDbg
Fornire al client di intelligenza artificiale un contesto sufficiente per selezionare gli strumenti MCP WinDbg appropriati e produrre risultati che è possibile convalidare:
- Identificare il target di debug e l'attività, ad esempio l'analisi di un dump di arresto anomalo del sistema, l'analisi di un target attivo o l'analisi di una traccia di Time Travel Debugging.
- Chiedere prove a supporto e ipotesi rimanenti, non solo una conclusione.
- Richiedere i comandi del debugger, la diagnostica, la revisione del codice sorgente o lo script pertinenti quando è necessario un tipo specifico di analisi.
- Specificare il formato di output, ad esempio un albero, una griglia, un grafico o un piano di indagine ordinato.
- Confrontare il risultato con lo stato di destinazione, i comandi e l'output visibile del debugger in WinDbg prima di agire su di esso.
Gestire le sessioni WinDbg
Queste procedure presuppongono che l'installazione sia stata completata, che sia stata aperta la chat del client di intelligenza artificiale supportata, che winDbg MCP sia disponibile nel client e che sia stato avviato il servizio MCP in ogni finestra di WinDbg che si vuole usare. Richiedere i comandi di selezione della sessione tramite la chat client di intelligenza artificiale; non immettere i nomi degli strumenti direttamente in WinDbg.
Il proxy MCP WinDbg si connette automaticamente quando rileva esattamente una sessione WinDbg disponibile. Se sono disponibili più sessioni, il client di intelligenza artificiale rimane disconnesso fino a quando non si seleziona una sessione.
Connettere il client di intelligenza artificiale quando sono disponibili più sessioni WinDbg
Usare questa procedura quando sono disponibili più sessioni WinDbg e il client di intelligenza artificiale non è connesso a uno. Dopo la procedura, il client si connette alla sessione selezionata.
- Chiedere al client di intelligenza artificiale di usare
list_sessions. - Identificare l'ID del processo per la sessione WinDbg prevista nel risultato.
- Chiedere al client di intelligenza artificiale di usare
connect_sessioncon tale ID processo. - Verificare che il client segnali una connessione alla sessione desiderata e che il relativo stato di destinazione corrisponda alla finestra WinDbg selezionata.
Passare il client di intelligenza artificiale a un'altra sessione WinDbg
Usare questa procedura quando il client di intelligenza artificiale è connesso a una sola sessione WinDbg e si vuole usare un'altra sessione. Dopo la procedura, il client si disconnette dalla sessione originale e si connette alla sessione sostitutiva selezionata.
- Chiedere al client di intelligenza artificiale di usare
disconnect_session. - Chiedere al client di intelligenza artificiale di usare
list_sessions. - Identificare l'ID del processo per la nuova sessione WinDbg.
- Chiedere al client di intelligenza artificiale di usare
connect_sessioncon tale ID processo. - Verificare che il client segnala una connessione alla nuova sessione e verificare il relativo tipo di destinazione e lo stato di esecuzione nella finestra WinDbg selezionata.
Disconnettere il client di intelligenza artificiale dalla sessione WinDbg corrente
Usare questa procedura quando il client di intelligenza artificiale è connesso a una sessione WinDbg e si vuole terminare tale connessione. Dopo la procedura, il client non ha alcuna connessione a una sessione WinDbg; WinDbg e il servizio MCP possono rimanere in esecuzione.
- Chiedere al client di intelligenza artificiale di usare
disconnect_session. - Verificare che il client segnali che il proxy si è disconnesso dalla sessione WinDbg.
Solo un client MCP attivo può connettersi a una sessione WinDbg alla volta. Se una sessione non è disponibile, disconnettere l'altro client di intelligenza artificiale da tale sessione e quindi connettere il client previsto.