Ügynökkészségek használata a GitHub Copilottal a SQL Server Management Studio-ban

Az ügynöki készségek olyan újrafelhasználható utasítások, amelyek GitHub Copilot adott feladatok elvégzésére utasítják. Minden képesség egy markdown-fájl, amelyet egyszer definiál, időt takarít meg, és egységes működést biztosít a munkafolyamatban. Úgy gondolj a készségekre, mint egy forgatókönyvre, ne pedig egyetlen óriási promptra. A Agent mód (előzetes verzió) használatakor a Copilot automatikusan felderíti és alkalmazza a vonatkozó készségeket a feltett kérdések alapján.

Megjegyzés:

A SQL Server Management Studio (SSMS) GitHub Copilot Agent módja jelenleg előzetes verzióként érhető el.

Az egyéni utasításoktól eltérően, amelyek minden válaszhoz általános beállításokat határoznak meg, a készségek olyan célzott feladatspecifikus útmutatást nyújtanak, amelyet bármely ügynök felderíthet és használhat. Egyszer definiáljon egy képességet, és következetesen alkalmazza a munkamenetekre és a csapatra.

Prerequisites

Az Agent-készségek működése

Az Ügynök mód használatakor a Copilot átvizsgálja az adattárához és a felhasználói profiljához tartozó ismert készségek helyeit. Ha egy képesség leírása megegyezik a kérés szándékával, Copilot aktiválja a képességet, és további kontextusként alkalmazza az utasításokat. Ha egy képesség aktív, a neve megjelenik a csevegésben, hogy tudja, hogy alkalmazva van.

A Copilot az egyes készségek frontmatterében lévő description mező alapján dönti el, hogy mely készségeket aktiválja. Egy világos, kulcsszavakban gazdag leírás segít Copilot azonosítani, ha egy képesség releváns.

Jártassági helyek

Copilot a következő helyekről fedezi fel a készségeket:

Scope Paths Részletek
Munkaterület (a csapattal megosztva) \, \, \ Az Ön repozitóriumának gyökerében tárolva. Elkötelezett a forráskövetés mellett, hogy minden csapattag ugyanazokat a képességeket kapja.
Személyes (csak az Ön profilja) \, \, \ Az összes projektre érvényes. Nincs lekötve egy adattárra sem.

A munkaterület-készségek elsőbbséget élveznek a projektspecifikus konvencióknál. A személyes készségek olyan munkafolyamatokhoz és preferenciákhoz hasznosak, amelyek projekteken keresztül utaznak Önnel.

Készségek létrehozása

A készségeket az SSMS Készségek paneljén vagy manuálisan is létrehozhatja a fájlrendszerben.

Képesség létrehozása a Készségek panelről

  1. Az Copilot Chat ablakban válassza a Tools ikont.
  2. Válassza a Készségek panelt.
  3. A Készségek panelen válassza a + gombot.
  4. Válassza ki a hatókört: egy munkaterületi jártasságot (az adattárban tárolva) vagy egy személyes képességet (a felhasználói profilban tárolva).
  5. Adja meg a képesség nevét. A név lesz a könyvtár neve, és csak kisbetűket, számokat és kötőjeleket kell használnia.
  6. Az SSMS létrehoz egy sablont SKILL.md az új készségkönyvtárban. Szerkessze a sablont, és adja hozzá az utasításokat a fájlhoz.

Készség manuális létrehozása

  1. Hozzon létre egy készségkönyvtárat a megfelelő helyen. A munkaterületi képességhez hozza létre a .github/skills/ fájlt a tárház gyökerében.
  2. Hozzon létre egy alkönyvtárat a képességéhez. Minden készségnek saját könyvtárral kell rendelkeznie. Például: .github/skills/tsql-style-guide/.
  3. Hozzon létre egy SKILL.md fájlt a készségkönyvtárban.
  4. Opcionálisan hozzáadhat támogató fájlokat, például szkripteket, referenciadokumentumokat vagy példakimenetet.

Készségkönyvtár-struktúra

your-repo/
└── .github/
    └── skills/
        └── index-verification/
        │   ├── SKILL.md          # Required: metadata and instructions
        │   └── references/       # Optional: supplementary documentation
        └── agent-job-failure-triage/
            ├── SKILL.md
            └── examples/         # Optional: example scripts

SKILL.md formátum

Minden SKILL.md fájlnak TARTALMAZNIa kell a YAML előterét, majd a Markdown utasításait. A bevezető metaadatblokk biztosítja azokat a metaadatokat, amelyeket a Copilot a képesség felfedezéséhez és aktiválásához használ.

Előtér tulajdonságai

Ingatlan Szükséges Description
name Igen Csak kisbetűk, számok és kötőjelek. Meg kell egyeznie a szülőkönyvtár nevével. Legfeljebb 64 karakter.
description Igen Leírja, hogy mit tesz a képesség, és mikor érdemes használni. Legfeljebb 1024 karakter. Adjon meg konkrét kulcsszavakat, amelyek jelzik, ha a képesség releváns.
license No A licenc neve vagy a készséghez mellékelt licencfájlra mutató hivatkozás.
compatibility No Környezeti követelmények, például a tervezett termék vagy a szükséges rendszerképességek.
metadata No Tetszőleges kulcs-érték párok más metaadatokhoz.
allowed-tools No Azon eszközök neveinek szóközzel elválasztott listája, amelyek használatára a készség előzetesen jóváhagyással rendelkezik.

Készségek kezelése a Készségek panelről

Válassza a Tools ikont az Copilot Chat ablakban a Skills panel megnyitásához. A panel megjeleníti az aktuális munkamenethez Copilot felderített összes képességet.

A panelen a következőt végezheti el:

  • Szerkesztés: A(z) ... menüből közvetlenül a szerkesztőben megnyithatja bármely készség SKILL.md fájlját.
  • Fájlhely megnyitása: Ugrás a lemez készségkönyvtárára.
  • Keresés: A képességek szűrése név vagy kulcsszó alapján.

A panel a képességkonfigurációs hibák diagnosztikáit is megjeleníti, így gyorsan azonosíthatja és kijavíthatja a problémákat.

Tippek hatékony készségek írásához

  • Legyen SKILL.md tömör: Cél 300 sor alatt. Helyezze át a részletes referenciaanyagot külön fájlokba a megfelelő alkönyvtárakban.
  • Írja be a kulcsszóban gazdag leírást: Copilot a description használatával dönti el, hogy mikor aktiválja a képességet. Adja meg azokat a konkrét feladatokat, objektumokat és forgatókönyveket, amelyekben a képesség érvényes.
  • Számozott lépéseket használjon az eljárásokhoz: A lépésenkénti utasítások egyszerűbbek a modell számára, mint a próza.
  • Példák a várt kimenetre: Mintakódok, táblázatformátumok vagy megjegyzésblokkok megjelenítése, hogy a modell tudja, hogyan néz ki a "kész".
  • Explicit korlátok megadása: Mondja el a képességnek, hogy mit ne tegyen. Például: „Ne javasolja a 10 milliónál több sort tartalmazó táblákon lévő indexek törlését anélkül, hogy előtte jelentést adna az írási mennyiségről.”
  • Referenciaanyag: A kapcsolódó tartalmakat és szkripteket fájlokban references\tárolhatja, scripts\illetve examples\ a képesség adott tartalmára mutathat.

Példa SQL-készségekre

Az alábbi példák bemutatják, hogyan írhat készségeket a gyakori SQL Server feladatokhoz. Használja őket kiindulási pontként, és alakítsa őket a csapat konvencióihoz.

Index ellenőrzése

A duplikációk elkerülése érdekében tekintse át a meglévő indexeket, mielőtt újakat javasol.

---
name: index-verification
description: Use when an index recommendation has been generated and must be validated before implementation. Verifies workload benefit, redundancy, write overhead, storage impact, and existing index coverage.
---

# Index Verification

## Use this skill when

- A missing index recommendation exists
- An agent generated an index recommendation
- Query tuning suggests adding an index
- A user asks whether an index should be created

## Never assume

- Missing index DMVs are recommendations, not requirements.
- Do not recommend index creation until validation is complete.

## Verification Checklist

### 1. Check Existing Indexes

Determine whether:

- An equivalent index already exists
- A wider index already covers the workload
- Included columns already satisfy the query
- The recommendation duplicates another recommendation

### 2. Estimate Read Benefit

Evaluate:

- Query execution frequency
- Current execution cost
- Expected seek/selectivity improvement
- Number of affected queries

### 3. Evaluate Write Cost

Determine:

- Insert impact
- Update impact
- Delete impact
- Additional maintenance cost

### 4. Evaluate Storage Impact

Estimate:

- Index size on disk
- Memory pressure
- Replication impact

### 5. Make Recommendation

Return one of:

- Create index
- Modify existing index
- Consolidate with existing recommendation
- Reject recommendation

## Avoid

- Blindly trusting missing-index DMVs
- Creating overlapping indexes
- Recommending indexes for one-off queries
- Ignoring write-heavy workloads

## Output Format

Format output as a table: index name, columns, type, and recommendation (create / modify / consolidate / reject).

Ügynökfeladathibák triázsa

Elemezze a sikertelen SQL Agent-feladatok előzményeit, és tegyen javaslatokat a kiváltó probléma megoldására.

---
name: agent-job-failure-triage
description: Use when an automated job, workflow, maintenance task, or agent execution fails. Determines root cause and appropriate remediation while avoiding unsafe recovery actions.
---
# Agent Job Failure Triage

## Objective

Identify root cause before attempting remediation.

## First Rule

Never retry repeatedly without understanding why the job failed.

## Investigation Order

### 1. Collect Failure Details

Gather:

- Job name
- Error message
- Start time
- End time
- Retry history

### 2. Classify Failure

Determine whether failure is:

- Resource-related
- Permission-related
- Configuration-related
- Data-related
- Dependency-related
- Other or unknown

### 3. Check Recent Changes

Investigate:

- Deployments
- Configuration changes
- Schema changes
- Security changes
- Infrastructure changes

### 4. Determine Blast Radius

Identify:

- Data modified by job
- Schema modified by job
- Affected users or departments
- Downstream jobs
- SLA impact
- Data correctness risk

## Safe Actions

- Collect logs
- Validate dependencies
- Escalate when root cause is unknown

## Unsafe Actions

- Retry job
- Disable job
- Force-completing jobs
- Disabling validation checks
- Modifying production data to "make it pass"
- Restarting the SQL Agent service