Rychlý start: Použití režimu agent Copilota GitHubu

Režim agenta umožňuje GitHub Copilotu koordinovat nástroje, které poskytuje rozšíření MSSQL pro Visual Studio Code. Když je rozšíření nainstalované a aktivní, GitHub Copilot může vypsat připojení k serveru Microsoft SQL Server, připojit se k serveru a databázi, načíst metadata schématu a spouštět dotazy, a to vše na základě pokynů v přirozeném jazyce, přičemž každou akci musíte schválit.

Všechny akce používají stejný kontext připojení a přihlašovací údaje jako rozšíření MSSQL. Režim agenta neuvádí jiné změny ověřování ani oprávnění.

Tip

Režim agenta můžete použít pro vícekrokové pracovní postupy, zkoumání ve velkém měřítku a delegované změny. Režim dotazování použijte, když potřebujete jednu odpověď nebo jednorázový dotaz. Režim plánu použijte, pokud potřebujete zdůvodnění návrhu před zápisem jazyka DDL (Transact-SQL) data Definition Language (T-SQL).

Klíčové poznatky

  • Režim agenta automaticky přebírá nástroje rozšíření MSSQL. Nevyžaduje se žádná @mssql zmínka.
  • Každé volání nástroje vyžaduje vaše schválení před provedením.
  • Režim agenta je díky svým nástrojům obeznámen se schématem: každé volání nástroje vrací reálná data z vaší připojené databáze.
  • Informace o kontextu architektury napříč všemi plochami najdete v tématu Jak GitHub Copilot funguje s rozšířením MSSQL.

Kdy použít režim agenta

Režim agenta je nejvhodnější pro:

  • Vícekrokové pracovní postupy "Připojte se k LocalDev, přepněte do AdventureWorks a ukažte mi všechny tabulky s cizím klíčem pro zákazníka."
  • Zkoumání ve velkém měřítku. "Vyhledejte všechny uložené procedury, které odkazují na SalesOrderHeader, a shrňte, co každý z nich dělá."
  • Delegovaná změna Přidání sloupců auditu do každé tabulky ve schématu Prodej a opětovné vygenerování souvisejících uložených procedur

Použijte režim dotazování, když vašim potřebám vyhovuje jediná otázka nebo jednorázový dotaz. Použijte příkazy s lomítkem, když už víte, kterou akci chcete provést. Režim plánu použijte, pokud chcete, aby se před všemi změnami napsal plán.

Podrobnosti o tom, jak režim agenta vybere a spustí nástroje, najdete v Visual Studio Code dokumentaci k režimu agenta.

Co je režim agenta?

Režim agenta umožňuje GitHubu Copilot provádět akce související s SQL pomocí rozšíření MSSQL a před spuštěním je vyžadováno potvrzení uživatele.

Tyto akce můžete vyvolat pomocí proměnných chatu, jako je #mssql_connect, nebo zadáním odpovídajících požadavků v přirozeném jazyce, například:

Connect to my Library database using my LocalDev profile

Snímek obrazovky rozhraní režimu GitHub Copilot Agent

Referenční informace k nástrojům režimu agenta MSSQL

Tato část obsahuje podrobné referenční informace o nástrojích specifických pro SQL, které jsou k dispozici v režimu agenta Copilot GitHubu. Rozšíření MSSQL přispívá k těmto nástrojům a umožňuje GitHub Copilotu spouštět akce prostřednictvím proměnných chatu nebo výzvy v přirozeném jazyce. Všechny nástroje před spuštěním vyžadují potvrzení uživatele.

Snímek obrazovky se seznamem nástrojů specifických pro SQL, které přispělo rozšíření MSSQL v režimu agenta Copilot

Tip

Můžete také použít proměnné chatu, jako je #mssql_connect, k přímému vyvolání těchto nástrojů nebo psát výzvy v přirozeném jazyce, například:

Connect to my development database

GitHub Copilot zpracovává výběr nástrojů automaticky.

Správa připojení

Název nástroje Description
connect Připojí se k databázi pomocí uloženého profilu připojení nebo zadaného serveru a databáze.
disconnect Ukončí aktuální aktivní relaci připojení.
change_database Změní databázi existující relace připojení.
get_connection_details Získá podrobnosti o konkrétním připojení MSSQL.
list_servers Zobrazí seznam všech uložených profilů připojení SQL Serveru ve vašem prostředí.
list_databases Zobrazí seznam všech dostupných databází pro připojený server MSSQL.

Examples

K interakci s GitHub Copilotem použijte následující fráze.

- Connect to my LocalDev environment
- Disconnect from my current database
- List my available connection profiles
- List all databases in the localhost server
- Set the active connection to localhost
- Set AdventureWorks as the active database
- Get the connection string for AdventureWorks on localhost

Snímek obrazovky s příkladem použití nástroje agenta pro připojení k databázi v chatu GitHub Copilot

Jak funguje logika připojení

Režim kopírovacího agenta GitHubu podporuje flexibilní způsoby připojení k databázi SQL, a to buď odkazováním na uložené profily, nebo zadáním serveru a databáze přímo. Tady je postup, jak funguje logika připojení.

Když se připojíte pomocí uloženého profilu:

  1. Připojíte se odkazem na název uloženého profilu připojení.
  2. GitHub Copilot pomocí mssql_list_servers nástroje ověří, že profil existuje.
  3. Nástroj mssql_connect pak použije uložené profileId a jeho parametry k navázání připojení.

Při připojování zadáním serveru a databáze:

  • Pokud uložený profil odpovídá zadanému serveru i databázi:

    1. GitHub Copilot používá mssql_list_servers k vyhledání shody.
    2. Potom zavolá mssql_connect pomocí úplného profilu.
  • Pokud uložený profil odpovídá pouze serveru:

    1. GitHub Copilot najde odpovídající profil serveru.
    2. Pokusí se připojit nahrazením uživatelem požadované databáze do daného profilu.
    3. Pokud připojení selže, zobrazí se chyba.
  • Pokud žádný profil neodpovídá zadanému serveru:

    • GitHub Copilot hlásí chybu.

Tento flexibilní odpovídající systém umožňuje GitHub Copilot zpracovat celou řadu scénářů připojení. Minimalizuje úsilí uživatelů a současně zajišťuje bezpečné a ověřitelné akce.

Zkoumání schématu

Název nástroje Description
show_schema Zobrazí základní diagram schématu připojené databáze včetně tabulek a relací.
list_schemas Zobrazí seznam všech schémat v databázi pro připojený server MSSQL.
list_tables Zobrazí seznam všech tabulek v databázi připojeného serveru MSSQL.
list_views Zobrazí seznam všech zobrazení v databázi připojeného serveru MSSQL.
list_functions Zobrazí seznam všech funkcí v databázi připojeného serveru MSSQL.

Examples

K interakci s GitHub Copilotem použijte následující fráze.

- Show me the schema for this database
- Show me all tables in the current database
- List all views from this MSSQL database
- Give me a list of all the functions available in this schema
- What schemas are available in this database?

Snímek obrazovky s animací zobrazující nástroj vizualizéru schématu databáze v režimu agenta Copilot

Provedení dotazu

Název nástroje Description
run_query Spustí dotaz SQL na připojenou databázi.

Examples

K interakci s GitHub Copilotem použijte následující fráze.

- Give me the top five posts published this week
- Execute the current file to find how many comments each post has
- Get all categories along with the number of posts in each

Snímek obrazovky s příkladem pomocí nástroje agenta pro připojení k databázi a načtení dat

Snímek obrazovky s jiným příkladem, který používá nástroj agenta pro připojení k databázi a načtení dat

Správa nástrojů v režimu agenta

GitHub Copilot může během zpracování vaší žádosti používat nástroje specifické pro MSSQL a další nástroje, které přispěly rozšířením. Tyto nástroje můžete zobrazit v rozhraní Režimu agenta v nabídce Nástroje , kde můžete také zapnout nebo vypnout konkrétní nástroje.

Při vyvolání nástroje, zejména pokud komunikuje s počítačem nebo databází, GitHub Copilot požádá o potvrzení, aby se zajistilo zabezpečené spuštění. Nástroj můžete povolit pouze pro aktuální relaci, pracovní prostor nebo trvale.

Další informace o viditelnosti a schváleních nástrojů najdete v tématu Správa schválení nástrojů.

Pracovní postup potvrzení režimu agenta

Když GitHub Copilot vybere nástroj, zobrazí se potvrzovací dialog s podrobnostmi o požadované akci. Před spuštěním libovolných příkazů, které komunikují s vaším počítačem nebo databází, musíte žádost explicitně schválit:

  • Povolit v této relaci
  • Povolit v tomto pracovním prostoru
  • Vždy povolit

Tento potvrzovací krok pomáhá zajistit zabezpečené a úmyslné interakce s vaším vývojovým prostředím.

Note

Další informace o tom, jak funguje potvrzení ve všech nástrojích v režimu agenta, najdete v dokumentaci editoru Visual Studio Code ke schválení nástrojů.

Katalog výzev režimu agenta

Pomocí těchto výzev v přirozeném jazyce můžete vyvolat nástroje rozšíření MSSQL prostřednictvím režimu agenta. U každé kategorie je uveden odkaz na ekvivalentní příkaz s lomítkem nebo výzvu režimu Ask.

Správa připojení

Connect to my LocalDev profile and set AdventureWorks as the active database.
List all my saved connection profiles and tell me which one I'm currently connected to.
Disconnect from my current database.

Ekvivalentní příkazy s lomítkem: /connect, /listServers, /changeDatabase, /disconnect.

Zkoumání schématu

Show me every table in the SalesLT schema, grouped by whether they're
referenced by a foreign key from another table.
Find all stored procedures that reference SalesLT.SalesOrderHeader and
summarize what each one does in one sentence.
Which tables in the current database have no primary key?

Ekvivalenty se ptají na výzvy: viz Chat s účastníkem@mssql.

Provedení dotazu

Run a query to count the number of active customers in SalesLT.Customer,
then show me the top 10 by order total.
Show me the execution plan for this query: SELECT ... FROM ...
Execute the last query I ran against my Dev database instead.

Vícekrokové pracovní postupy

Connect to LocalDev, switch to AdventureWorks, list all tables with a
foreign key to SalesLT.Customer, and save the list to a file called
customer-dependents.md.
Find every stored procedure that uses dynamic SQL and open each one
in a new editor tab so I can review them.

Delegovaná změna schématu

Note

Změny schématu je vhodné nejprve spustit v režimu plan mode. Naplánujte změny, zkontrolujte je a pak plán předejte režimu agenta pro provedení.

Add createdAt and updatedAt audit columns to every table in the Sales
schema that doesn't already have them. Use DATETIME2(7) with a default
of GETUTCDATE().
Regenerate every stored procedure that inserts into SalesLT.Customer
to include the new email column.