Condividi tramite


Introduzione alla modalità agente di GitHub Copilot

Con la modalità agente GitHub Copilot in Visual Studio, è possibile usare il linguaggio naturale per specificare un'attività di alto livello. L'intelligenza artificiale crea un piano, apporta modifiche al codice, esegue comandi terminal, richiama gli strumenti e applica le modifiche nella codebase. Monitora i risultati, ad esempio i risultati della compilazione, gli errori di unit test o gli output degli strumenti e esegue l'iterazione in base alle esigenze.

A differenza della modalità ask, la modalità agente non si arresta dopo una singola risposta. Continua a eseguire e perfezionare i passaggi fino a raggiungere l'obiettivo nel prompt o sono richiesti più input.

Prerequisites

È necessario Visual Studio 2022 versione 17.14 o versione successiva.

Usare la modalità agente

In modalità agente, Copilot opera in modo autonomo e determina il contesto pertinente per la richiesta.

Per iniziare, seguire questa procedura:

  1. Aprire la finestra Copilot Chat, selezionare Ask per espandere l'elenco a discesa della modalità e quindi selezionare Agent.

Screenshot del selettore della modalità agente di Copilot.

Screenshot che mostra il selettore della modalità agente di Copilot.

  1. Immettere il prompt e quindi selezionare Invia o premere INVIO per inviarlo. È possibile specificare un requisito generale e non è necessario specificare i file da usare.

  2. La modalità agente potrebbe richiamare più strumenti per eseguire attività diverse. Facoltativamente, selezionare l'icona Strumenti per configurare gli strumenti aggiuntivi che l'agente può usare per rispondere alla richiesta.

Screenshot che mostra altri strumenti usati dalla modalità agente.

Screenshot che mostra altri strumenti usati dalla modalità agente.

  1. Copilot richiede conferma prima di eseguire un comando terminale o usare uno strumento non integrato.

Screenshot che mostra i comandi per l'approvazione dell'agente.

Screenshot che mostra l'approvazione del comando dell'agente.

  1. Copilot rileva automaticamente i problemi nelle modifiche del codice o nei comandi del terminale e quindi esegue un'azione. Il processo si ripete fino a quando i problemi non vengono risolti.

  2. Quando Copilot elabora la richiesta, trasmette le modifiche al codice suggerite direttamente nell'editor. Esaminare le modifiche suggerite e:

    • Mantenere o rimuovere le modifiche suggerite nel suo complesso in Modifiche totali nella finestra della chat.

Screenshot che mostra un elenco di modifiche suggerite.

Screenshot che mostra un elenco di modifiche suggerite.

  • Esaminare le differenze dei singoli file e applicarle in modo selettivo.
  1. Se si desidera esaminare le singole modifiche al codice apportate dall'agente, è possibile esaminare la modifica specifica in ogni passaggio.

Screenshot che mostra come accedere alle singole differenze di modifica con l'agente di Copilot.

  1. Per esaminare le singole modifiche al codice apportate dall'agente, è possibile:

    • Esaminare la modifica specifica in ogni passaggio.

Screenshot che mostra l'accesso a singole differenze di modifica con Copilot agent.

  • Esaminare le modifiche cumulative apportate dall'ultima volta che le modifiche sono state mantenute o annullate.

    Screenshot che mostra l'accesso alle differenze di modifica cumulative con Copilot agent.

  1. Continuare a eseguire l'iterazione delle modifiche al codice per perfezionare le modifiche o implementare altre funzionalità.

Informazioni sugli strumenti in modalità agente

La modalità agente può usare gli strumenti seguenti per rispondere a una richiesta:

  • Strumenti predefiniti
  • Strumenti MCP (Model Context Protocol)

Suggerimento

Visual Studio include anche agenti predefiniti come @debug, @profiler, @test e @vs che si integrano con funzionalità IDE specifiche. È anche possibile creare agenti personalizzati per i flussi di lavoro del team. Per altre informazioni, vedere Usare agenti personalizzati in GitHub Copilot.

Per visualizzare e gestire gli strumenti disponibili in modalità agente, selezionare l'icona Strumenti nella finestra di chat.

Screenshot che mostra il selettore dello strumento per Copilot agent.

Screenshot che mostra il selettore dello strumento per Copilot agent.

In base al risultato di uno strumento, Copilot potrebbe richiamare altri strumenti per eseguire la richiesta complessiva. Ad esempio, se una modifica del codice genera errori di sintassi nel file, Copilot potrebbe esplorare un altro approccio e suggerire modifiche al codice diverse.

Gli strumenti aggiuntivi aggiunti eseguendo i server MCP non vengono abilitati automaticamente. Le caselle di controllo vengono deselezionate per impostazione predefinita ed è necessario selezionarle per attivare gli strumenti.

Gestire le approvazioni degli strumenti

Quando Copilot richiama uno strumento, richiede la conferma di eseguire lo strumento. Il motivo è che gli strumenti possono essere eseguiti localmente nel computer ed eseguire azioni che modificano file o dati.

Screenshot che mostra una richiesta di conferma dello strumento.

Screenshot che mostra una richiesta di conferma dello strumento.

Nella finestra della chat, dopo una chiamata allo strumento, usare le opzioni a discesa Consenti per confermare automaticamente lo strumento specifico per la sessione o la soluzione corrente o tutte le chiamate future.

È possibile reimpostare le selezioni di conferma dello strumento nel riquadroOpzioni. Espandere la sezione All Settings>GitHub>Copilot>Tools.

Screenshot che mostra le impostazioni di chiamata dello strumento GitHub Copilot in Visual Studio.

È possibile reimpostare le selezioni di conferma dello strumento nella finestra di dialogo Opzioni strumenti. Espandere la sezione GitHub>Copilot>Tools.

Screenshot delle impostazioni di chiamata dello strumento GitHub Copilot.

Accettare o rimuovere modifiche

Copilot elenca i file modificati nell'elenco delle modifiche Total nella finestra della chat.

Screenshot che mostra un elenco di file modificati.

Screenshot che mostra un elenco di file modificati.

Selezionare ogni file per esaminare le modifiche singolarmente. È possibile mantenere o annullare le modifiche apportate a ogni blocco di codice.

In alternativa, nell'elenco Totale modifiche selezionare Mantieni o Annulla per tutte le modifiche apportate dall'ultima volta che è stata selezionata l'opzione Mantieni o Annulla.

Ripristinare le modifiche

Quando si richiedono modifiche al codice, è possibile ripristinare alcune modifiche. Per ripristinare, selezionare Ripristina accanto al checkpoint prima del prompt che include modifiche che non si desidera.

Screenshot che mostra la reversione delle modifiche.

Screenshot che mostra la reversione delle modifiche.

Attualmente, l'agente di Visual Studio Copilot non supporta l'annullamento o la ripetizione passo-passo.

Interrompere una richiesta in modalità agente

Per interrompere una richiesta in corso, è possibile annullarla. L'annullamento di una richiesta arresta tutti gli strumenti in esecuzione e i comandi del terminale.

Per arrestare una compilazione, selezionare Compila sulla barra degli strumenti superiore e quindi selezionare Annulla. In alternativa, usare i tasti di scelta rapida CTRL+INTERR .

Pianificazione in modalità agente (anteprima)

Annotazioni

La pianificazione è disponibile in anteprima pubblica con Visual Studio 2022 versione 17.14. Questa funzionalità è in fase di sviluppo attivo e può evolversi in base al feedback degli utenti.

Planning in modalità agente consente Copilot di suddividere le richieste complesse o a più passaggi in attività strutturate e rilevabili prima dell'esecuzione.

Quando Planning è attivo, Copilot:

  • Crea un piano markdown rivolto all'utente che delinea gli obiettivi e lo stato di avanzamento.
  • Gestisce un piano JSON interno () che funge da scratchpad leggibile LLM per il rilevamento, il ragionamento e il coordinamento dei passaggi.

Questa struttura consente di Copilot rimanere coerenti, aggiornare il piano in modo dinamico e offrire agli sviluppatori visibilità sulle operazioni che sta facendo.

Come funziona

Analisi delle richieste

Quando un'attività richiede più passaggi, Copilot passa alla modalità di pianificazione.

Creazione del piano

  • Piano Markdown: descrive l'attività, i passaggi e lo stato di avanzamento in un formato leggibile.
  • Piano JSON: formato strutturato e leggibile LLM che acquisisce lo stesso piano in formato analizzabile dal computer. Questo file JSON consente Copilot di aggiornare e interpretare il piano in modo coerente tra turni.

Esecuzione e iterazione

Copilot esegue ogni passaggio del piano, aggiornando entrambi i file man mano che procede.

  • Il piano markdown viene aggiornato visibilmente nell'editor.
  • Il piano JSON si evolve in background man mano che Copilot affina, riordina o adatta i passaggi.

Spazio di archiviazione

Entrambi i file vengono archiviati in .

Strumenti usati nella pianificazione

Quando si abilita Pianificazione, diventa attivo un set dedicato di strumenti interni. Questi strumenti coordinano il modo in cui Copilot crea, aggiorna e finalizza i piani durante l'esecuzione.

Tool Description
piano Genera il piano strutturato iniziale dalla richiesta utente.
adapt_plan Affina o modifica il piano in base al nuovo contesto o feedback.
aggiorna_progresso_piano Aggiorna lo stato di completamento dei passaggi e sincronizza lo stato del piano.
registra_osservazione Acquisisce i risultati di runtime o le informazioni dettagliate che influenzano le azioni successive.
finish_plan Completa il piano una volta completati tutti i passaggi.

Questi strumenti consentono Copilot di gestire i flussi di lavoro in più passaggi in modo incrementale, mantenere lo stato di esecuzione e rimanere allineati alla finalità dell'utente.

Abilitazione e gestione degli strumenti di pianificazione

Per abilitare pianificazione:

  1. Aprire il riquadro Tools>Options, espandere la sezione Tutte le impostazioni>GitHub>Copilot>Copilot Chat.

  2. Selezionare la casella di controllo Abilita pianificazione .

Per abilitare Planning in Visual Studio 2022 versione 17.14 o successiva:

  1. Aprire la finestra di dialogo Tools>Options ed espandere la sezione GitHub>Copilot.

  2. Selezionare la casella di controllo Abilita pianificazione e quindi selezionare OK.

Dopo aver abilitato la pianificazione, gli strumenti di pianificazione vengono visualizzati nell'elenco Strumenti nella finestra della chat:

Screenshot che mostra il gruppo Strumenti di pianificazione con tutti gli strumenti secondari abilitati in modalità agente.

È possibile disabilitare in modo selettivo il set di strumenti di pianificazione direttamente nell'elenco Strumenti nella finestra di chat. Se è necessario disabilitare gli strumenti di pianificazione, è consigliabile disabilitare tutti, non solo uno. Le modifiche si applicano immediatamente alla sessione di chat corrente.

Suggerimento

La disabilitazione di singoli strumenti consente di sperimentare diversi comportamenti di pianificazione o di eseguire il debug di passaggi specifici durante lo sviluppo.

Limitazioni

  • I piani vengono archiviati temporaneamente ed eliminati al termine della sessione, a meno che non vengano salvati manualmente.
  • Esiste un sovraccarico di latenza leggero a causa del rilevamento dello stato strutturato.
  • Alcuni agenti specializzati potrebbero non supportare ancora la pianificazione.

Inviare commenti e suggerimenti

Stiamo migliorando attivamente la pianificazione in modalità agente. Condividere commenti e suggerimenti, segnalare problemi o suggerire miglioramenti qui: Pianning in Copilot Chat - Visual Studio Developer Community

Domande frequenti

Quale visibilità ha la modalità agente nei file?

La modalità agente può modificare solo:

  • File locali che fanno parte della soluzione.
  • File locali presenti nella directory della soluzione aperta o nelle relative sottodirectory.

La modalità agente non può accedere a file e directory escluse tramite l'esclusione di file.

Per i comandi del terminale, la modalità agente ha le stesse autorizzazioni del processo di Visual Studio in esecuzione e non è limitata alle restrizioni precedenti. Esaminare attentamente i comandi del terminale proposti prima di eseguirli.

Non viene visualizzata la modalità Ask e la modalità agente nella finestra Copilot Chat

Seguire questa procedura di risoluzione dei problemi nell'ordine specificato:

  1. Assicurarsi di usare Visual Studio 17.14 o versione successiva.

    • Controllare la versione in Help>About Visual Studio.

    • Se non si usa la versione 17.14 o successiva, aprire il programma di installazione Visual Studio e aggiornare la build.

  2. Verificare che l'opzione Abilita modalità agente nel riquadro chat sia selezionata.

    Nel riquadro Tools>Options espandere la sezione Tutte le impostazioni>GitHub>Copilot>Copilot Chat, e verificare che l'opzione sia selezionata.

    Nella finestra di dialogo Tools>Options espandere la sezione GitHub>Copilot e verificare che l'opzione sia selezionata in Copilot Chat.

  3. Provare a riavviare Visual Studio.

Quando è consigliabile usare la modalità ask e la modalità agente?

  • La modalità Ask è eccellente quando si desidera 100% confidenza che non vengano apportate modifiche al codice a meno che non si selezioni in modo esplicito Applica o copia e incolla il codice manualmente.
  • La modalità agente può gestire le stesse domande concettuali e generare esempi di codice senza applicarli, insieme alle funzionalità dell'agente di modifica del codice.
  • Se si desidera usare le funzionalità MCP, è necessario che sia selezionata la modalità agente.

Che cosa è successo alle modifiche di Copilot in Visual Studio?

La modalità agente è un'evoluzione di Copilot Edits, con una maggiore capacità di iterare sugli errori, utilizzare strumenti e applicazione automatica delle modifiche al codice.

Per la versione iniziale di Visual Studio 2022 versione 17.14, Copilot Edits è ancora disponibile se l'opzione Enable Agent nel riquadro chat non è selezionata. Controllare l'impostazione dell'opzione nella finestra di dialogo Tools>Options nella sezione GitHub>Copilot>Copilot Chat.

Come amministratore, come si controlla l'uso della modalità agente per gli utenti Visual Studio?

La modalità Agente in Visual Studio è governata dalla funzione Editor preview features sul dashboard di GitHub Copilot per gli amministratori. Se l'amministratore disattiva questa impostazione, gli utenti in tale sottoscrizione non possono usare la modalità agente in Visual Studio.

Per altre informazioni, vedere Gestione di criteri e funzionalità per GitHub Copilot nell'organizzazione.