Thanks to visit codestin.com
Credit goes to docs.github.com

Skip to main content

Hinzufügen von Agent-Fähigkeiten für GitHub Copilot-CLI

Ändern Sie das Verhalten und die Fähigkeiten von Copilot, wenn es an bestimmten Aufgaben arbeitet.

Agentenfähigkeiten sind Ordner mit Anweisungen, Skripts und Ressourcen, die Copilot geladen werden können, wenn dies relevant ist, um deren Leistung bei spezialisierten Aufgaben zu verbessern. Weitere Informationen findest du unter Informationen zu Agentenkenntnissen.

Erstellen und Hinzufügen einer Fähigkeit

Um eine Agentfähigkeit zu erstellen, schreiben Sie eine SKILL.md Datei und optional andere Ressourcen, z. B. ergänzende Markdown-Dateien oder Skripts, auf die Sie in den SKILL.md Anweisungen verweisen.

  1. Falls Sie dies noch nicht getan haben, erstellen Sie ein skills Verzeichnis an einem der folgenden Speicherorte. Hier finden Sie Ihre Fähigkeit und alle anderen, die Sie in Zukunft erstellen möchten.

    Für Projektkompetenzen, die für ein einzelnes Repository spezifisch sind, erstellen Sie ein .github/skills, ein .claude/skills, oder ein .agents/skills Verzeichnis in Ihrem Repository.

    Erstellen Sie in Ihrem lokalen Heimverzeichnis ein ~/.copilot/skills, ~/.claude/skills oder ~/.agents/skills Verzeichnis für persönliche Fähigkeiten, die über Projekte hinweg geteilt werden.

  2. Im skills-Verzeichnis erstellen Sie ein Unterverzeichnis für Ihren neuen Skill. Jede Fähigkeit sollte über ein eigenes Verzeichnis verfügen (z. B .github/skills/webapp-testing. ).

    Skill-Unterverzeichnisnamen sollten in Kleinbuchstaben geschrieben sein und Bindestriche für Leerzeichen verwenden.

  3. Erstellen Sie in Ihrem Qualifikationsunterverzeichnis eine SKILL.md Datei mit den Anweisungen Ihrer Fähigkeiten.

    Wichtig

    Skill-Dateien müssen SKILL.md genannt werden.

           `SKILL.md` Dateien sind Markdown-Dateien mit YAML-Frontmatter. In ihrer einfachsten Form enthalten sie:
    
    • YAML-Titelei
      • Name (erforderlich): Ein eindeutiger Bezeichner für die Fähigkeit. Dies muss kleingeschrieben sein, wobei Bindestriche für Leerzeichen verwendet werden. In der Regel entspricht dies dem Namen des Qualifikationsverzeichnisses.
      • Beschreibung (erforderlich): Eine Beschreibung, was die Fähigkeit tut, und wann Copilot sollte sie verwendet werden.
      • lizenz (optional): Eine Beschreibung der Lizenz, die für diese Fähigkeit gilt.
    • Ein Markdown-Textkörper mit Anweisungen, Beispielen und Richtlinien, denen Copilot folgen soll.
  4. Fügen Sie optional Skripts, Beispiele oder andere Ressourcen zum Verzeichnis Ihrer Fähigkeiten hinzu.

    Weitere Informationen finden Sie unter "Aktivieren einer Fähigkeit zum Ausführen eines Skripts".

Beispieldatei für SKILL.md

Für eine Projektkompetenz würde sich diese Datei in einem .github/skills/github-actions-failure-debugging Verzeichnis Ihres Repositorys befinden.

Für eine persönliche Fähigkeit würde sich diese Datei in einem ~/.copilot/skills/github-actions-failure-debugging Verzeichnis befinden.

Markdown
---
name: github-actions-failure-debugging
description: Guide for debugging failing GitHub Actions workflows. Use this when asked to debug failing GitHub Actions workflows.
---

To debug failing GitHub Actions workflows in a pull request, follow this process, using tools provided from the GitHub MCP Server:

1. Use the `list_workflow_runs` tool to look up recent workflow runs for the pull request and their status
2. Use the `summarize_job_log_failures` tool to get an AI summary of the logs for failed jobs, to understand what went wrong without filling your context windows with thousands of lines of logs
3. If you still need more information, use the `get_job_logs` or `get_workflow_run_logs` tool to get the full, detailed failure logs
4. Try to reproduce the failure yourself in your own environment.
5. Fix the failing build. If you were able to reproduce the failure yourself, make sure it is fixed before committing your changes.

Aktivieren einer Fähigkeit zum Ausführen eines Skripts

Wenn eine Fähigkeit aufgerufen wird, Copilot entdeckt automatisch alle Dateien im Verzeichnis der Fähigkeiten und macht sie zusammen mit den Anweisungen der Qualifikation verfügbar. Dies bedeutet, dass Sie Skripts oder andere Ressourcen in das Qualifikationsverzeichnis aufnehmen und in Ihren SKILL.md Anweisungen darauf verweisen können.

So erstellen Sie eine Fähigkeit, die ein Skript ausführt:

  1.        **Fügen Sie das Skript zum Verzeichnis Ihrer Fähigkeiten hinzu.** Beispielsweise könnte eine Fähigkeit zum Konvertieren von SVG-Bildern in PNG die folgende Struktur haben.
    
    .github/skills/image-convert/
    ├── SKILL.md
    └── convert-svg-to-png.sh
    
  2.        **Optional genehmigen Sie die Tools, die die Fertigkeit benötigt, vorab.** In Ihrem `SKILL.md` Front-Matter können Sie das `allowed-tools` Feld verwenden, um die Tools aufzulisten, die Copilot möglicherweise verwenden darf, ohne jedes Mal eine Bestätigung einholen zu müssen. Wenn ein Tool nicht im `allowed-tools` Feld aufgeführt ist, fordert Copilot Sie um Erlaubnis auf, bevor es verwendet wird.
    
    ---
    name: image-convert
    description: Converts SVG images to PNG format. Use when asked to convert SVG files.
    allowed-tools: shell
    ---
    

    Warnung

    Genehmigen Sie shell oder bash Tools nur vorab, wenn Sie diese Fähigkeit und alle referenzierten Skripte überprüft haben und deren Quelle vollständig vertrauen. Wenn Sie shell oder bash vorab genehmigen, entfällt der Bestätigungsschritt für das Ausführen von Terminal-Befehlen. Dies kann Angreifern die Möglichkeit bieten, über Skills oder Prompt-Injektionen beliebige Befehle in Ihrer Umgebung auszuführen. Wenn Sie im Zweifel sind, lassen Sie shell und bash von allowed-tools weg, damit Copilot Ihre ausdrückliche Bestätigung anfordern muss, bevor Terminalbefehle ausgeführt werden.

  3.        **Schreiben Sie Anweisungen zur Copilot Verwendung des Skripts.** Beschreiben Sie im Markdown-Textkörper `SKILL.md`, wann und wie das Skript ausgeführt wird.
    
    When asked to convert an SVG to PNG, run the `convert-svg-to-png.sh` script
    from this skill's base directory, passing the input SVG file path as the
    first argument.
    

Hinzufügen einer Fähigkeit, die eine andere Person erstellt hat

Zusätzlich zur Erstellung eigener Fähigkeiten können Sie auch Fähigkeiten hinzufügen, die andere Personen erstellt haben.

  1. Laden Sie ein Qualifikationsverzeichnis herunter (d. a. ein Verzeichnis, das eine SKILL.md Datei und optional andere Dateien und Unterverzeichnisse enthält).

    Laden Sie z. B. eine Fähigkeit aus dem Fantastischen GitHub Copilot Repository herunter: https://awesome-copilot.github.com/skills/.

  2. Wenn Sie eine .zip Datei heruntergeladen haben, entzippen Sie dies.

  3. Verschieben Sie das Qualifikationsverzeichnis an den erforderlichen Speicherort:

    • Für Projektkompetenzen, die für ein einzelnes Repository spezifisch sind: .github/skills, , .claude/skillsoder .agents/skills in Ihrem Repository.

    • Für persönliche Fähigkeiten, die über Projekte hinweg freigegeben werden: ~/.copilot/skills, , ~/.claude/skillsoder ~/.agents/skills in Ihrem lokalen Heimverzeichnis.

  4. Starten Sie eine CLI-Sitzung, oder wenn Sie sich derzeit in einer CLI-Sitzung befinden, geben Sie /skills reload ein.

  5. Geben Sie die Eingabetaste /skills info SKILL-NAME ein, um zu überprüfen, ob die Fähigkeit neu geladen wurde.

    SKILL-NAME wird in der datei SKILL.md definiert und ist in der Regel mit dem Namen des Qualifikationsverzeichnisses identisch.

Verwenden von Agentenkenntnissen

Bei der Durchführung von Aufgaben entscheidet Copilot anhand deines Prompts und der Beschreibung des Skills, wann Deine Skills verwendet werden.

Wenn Copilot sich zur Verwendung eines Skills entscheidet, wird die SKILL.md-Datei in den Kontext des Agents eingebunden, was dem Agent Zugriff auf Deine Anweisungen gewährt. Anschließend können Sie diesen Anweisungen folgen und alle Skripts oder Beispiele verwenden, die Sie möglicherweise in das Verzeichnis der Skills eingefügt haben.

Um zu sagen Copilot , eine bestimmte Fähigkeit zu verwenden, schließen Sie den Qualifikationsnamen in Ihre Eingabeaufforderung ein, gefolgt von einem Schrägstrich. Wenn Sie beispielsweise eine Fähigkeit namens "frontend-design" haben, könnten Sie eine Aufforderung wie folgt verwenden:

Use the /frontend-design skill to create a responsive navigation bar in React.

Fähigkeitenbefehle in der CLI

  • Auflisten der derzeit verfügbaren Fähigkeiten: Verwenden Sie den Befehl /skills list oder die Eingabeaufforderung:

    What skills do you have?
    
  • Aktivieren oder deaktivieren Sie bestimmte Fähigkeiten: Verwenden Sie den Befehl /skills , und verwenden Sie dann die NACH-OBEN- und NACH-UNTEN-TASTE auf der Tastatur und die Leertaste, um Die Fähigkeiten ein- oder auszuschalten.

  • Erfahren Sie mehr über eine Fähigkeit (einschließlich ihres Standorts): Verwenden Sie den Befehl /skills info.

  • Fügen Sie einen Speicherort für Fähigkeiten hinzu: Um einen alternativen Speicherort hinzuzufügen, an dem Fähigkeiten gespeichert werden sollen, verwenden Sie den Befehl /skills add.

  • Neuladen von Fähigkeiten: Wenn Sie während einer CLI-Sitzung eine Fähigkeit hinzugefügt haben, können Sie sie mithilfe des Befehls /skills reload hinzufügen, um zu vermeiden, dass Sie die CLI neu starten müssen, um sie zu verwenden.

  • Entfernen Sie Fähigkeiten: Um eine Fähigkeit zu entfernen, die Sie direkt hinzugefügt haben , nicht über ein Plug-In, verwenden Sie den Befehl /skills remove SKILL-DIRECTORY. Um fähigkeiten zu entfernen, die als Teil eines Plug-Ins hinzugefügt werden, müssen Sie das Plug-In selbst verwalten. Verwenden Sie den info Unterbefehl, um herauszufinden, von welchem Plugin eine Fähigkeit stammt.

Fähigkeiten im Vergleich zu benutzerdefinierten Anweisungen

Du kannst sowohl Skills als auch benutzerdefinierte Anleitungen verwenden, um Copilot anzuleiten, wie man in Deinem Repository arbeitet und spezifische Aufgaben durchführt.

Wir empfehlen, benutzerdefinierte Anweisungen für einfache Anweisungen zu verwenden, die für fast jede Aufgabe relevant sind (z. B. Informationen zu den Codierungsstandards Ihres Repositorys), und Kompetenzen für detailliertere Anweisungen, auf die Copilot nur dann zugreifen soll, wenn es relevant ist.

Weitere Informationen zu benutzerdefinierten Repositoryanweisungen finden Sie unter Hinzufügen von benutzerdefinierten Repositoryanweisungen für GitHub Copilot.

Weitere Informationen dazu, wie sich die Fähigkeiten von anderen Anpassungsfeatures unterscheiden, finden Sie unter Vergleich der GitHub Copilot CLI-Anpassungsmöglichkeiten.