Informationen zum Anpassen von Copilot Antworten
GitHub Copilot kann Antworten bereitstellen, die auf Ihre Vorlieben, an die Arbeitsweise Ihres Teams, die von Ihnen verwendeten Tools und die Besonderheiten Ihres Projekts zugeschnitten sind. Anstatt Ihren Eingabeaufforderungen wiederholt denselben Kontext hinzuzufügen, können Sie benutzerdefinierte Anweisungen erstellen, die diese Informationen automatisch bereitstellen, um Copilot die Erstellung von Antworten mit höherer Qualität zu ermöglichen.
Prompt-Dateien bieten eine weitere Möglichkeit, aufgabenspezifische Anweisungen und Kontext zu geben Copilot . Im Gegensatz zu benutzerdefinierten Anweisungen entscheiden Sie, wann Sie sie in einem Chat verwenden. Weitere Informationen findest du unter Prompt-Dateien für GitHub Copilot.
Die verfügbaren Arten von benutzerdefinierten Anweisungen und die Copilot Features, die sie verwenden, variieren je nach Client und Oberfläche (GitHub.com, Visual Studio Code, Visual Studio, JetBrains IDEs, Xcode und Eclipse). Um zu prüfen, welche Typen Ihre Umgebung unterstützt, siehe Unterstützung für verschiedene Arten von benutzerdefinierten Anweisungen. Unterstützte IDEs und Versionen finden Sie unter Copilot Funktionsmatrix.
Hinweis
Aufgrund der nicht-deterministischen Natur von KI befolgen Copilot Ihre benutzerdefinierten Anweisungen möglicherweise nicht immer exakt bei jeder Verwendung.
Typen von benutzerdefinierten Anweisungen
Benutzerdefinierte Anweisungen können auf verschiedenen Ebenen angewendet werden:
| Type | Umfang | Beispielverwendung |
|---|---|---|
| Persönliche Anweisungen | Ihre Unterhaltungen mit Copilot | Geben Sie Ihre individuellen Einstellungen an, z. B. bevorzugte Sprache oder Antwortstil. |
| Benutzerdefinierte Repositoryanweisungen | Unterhaltungen mit Copilot, die im Kontext eines Repositorys, eines Projekts, eines Pfads oder eines unterstützten Agents durchgeführt werden | Beschreiben Sie die Sprachen, Frameworks, Tools, Architektur und Codierungskonventionen, die in einem Projekt verwendet werden. |
| Benutzerdefinierte Anweisungen der Organisation | Unterhaltungen mit Copilot, bei Verwendung im Kontext einer Organisation | Stellen Sie organisationsweite Sprach-, Sicherheits-, Compliance- oder Reaktionsrichtlinien bereit. |
Einige Clients (JetBrains IDEs und Xcode) bieten zusätzliche globale, Arbeitsbereichs- oder Projektanweisungsmechanismen. Diese Mechanismen lassen sich nicht immer direkt persönlichen, Repository- und Organisationsanweisungen in GitHub zuordnen.
Informationen zu persönlichen Anweisungen
Persönliche Anweisungen, die auf GitHub.com konfiguriert sind, gelten für GitHub Copilot Chat in GitHub. Andere Clients wie Copilot CLI verwenden lokale Dateien für persönliche Anweisungen. Siehe Hinzufügen von benutzerdefinierten Anweisungen für GitHub Copilot CLI.
Sie können anpassen, wie Copilot Chat auf Sie auf GitHub.com reagiert, indem Sie persönliche Anweisungen hinzufügen. Diese Anweisungen gelten nur für Sie. Sie können z. B. Ihre bevorzugte Sprache, die gewünschte Detailebene oder wie die Antworten strukturiert sein sollen angeben. Siehe Hinzufügen von persönlichen benutzerdefinierten Anweisungen für GitHub Copilot.
Informationen zu benutzerdefinierten Repositoryanweisungen
Benutzerdefinierte Repositoryanweisungen enthalten projektspezifischen Kontext und Anleitungen. Sie können z. B. den Zweck des Repositorys, die vom Repository verwendeten Frameworks und Tools sowie die Codierungs- oder Testkonventionen beschreiben, die Mitwirkende befolgen sollten.
Es gibt drei Haupttypen von benutzerdefinierten Repositoryanweisungen:
-
Repositoryweite benutzerdefinierte Anweisungen gelten für alle Anforderungen, die im Kontext eines Repositorys gestellt werden.
Diese werden in einer
copilot-instructions.md-Datei im Verzeichnis.githubdes Repositorys angegeben. -
Pfadspezifische benutzerdefinierte Anweisungen gelten für Anforderungen im Kontext von Dateien, die mit einem angegebenen Pfad übereinstimmen.
Diese werden in einer oder mehreren
NAME.instructions.mdDateien innerhalb oder unterhalb des.github/instructionsVerzeichnisses im Repository spezifiziert.Mithilfe pfadspezifischer Anweisungen kannst du vermeiden, deine repositoryweiten Anweisungen mit Informationen zu überladen, die ausschließlich für Dateien bestimmter Typen oder in bestimmten Verzeichnissen gelten.
-
Agent-Anweisungen, die repositoryweiten benutzerdefinierten Anweisungen ähneln, derzeit jedoch nicht von allen Copilot Funktionen unterstützt werden.
Diese werden in Dateien angegeben, die als "
AGENTS.md", "CLAUDE.md" oder "GEMINI.md" bezeichnet werden.
Ausführliche Informationen zur Unterstützung für jede dieser Repositorytypen von benutzerdefinierten Anweisungen in verschiedenen Copilot Features finden Sie unter Unterstützung für verschiedene Arten von benutzerdefinierten Anweisungen.
Eine kuratierte Sammlung von Beispielen finden Sie unter Benutzerdefinierte Anweisungen.
Beachten Sie, dass Agent-Anweisungsdateien, wie AGENTS.md, Anweisungen für unterstützte KI-Agenten bereitstellen. Sie unterscheiden sich von benutzerdefinierten Agentdefinitionsdateien, die in .github/agentsgespeichert sind, die spezielle Agents und ihre Konfiguration definieren. Informationen zu den Agent-Anweisungsdateinamen, die Copilot erkennt, finden Sie unter Unterstützung für verschiedene Arten von benutzerdefinierten Anweisungen.
Repositoryspezifische benutzerdefinierte Anweisungen über Clients und Oberflächen hinweg
Welche Arten von benutzerdefinierten Repositoryanweisungen Sie verwenden können (repositoryweite, pfadspezifische oder Agent-Anweisungen), hängt von Ihrer Umgebung und von der Aufgabe ab, z. B. Chatten, Arbeiten in der Cloud oder Überprüfen eines Pull Requests. Eine Umgebung kann z. B. pfadspezifische Anweisungen für eine Aufgabe unterstützen, für eine andere aber nicht. Informationen zum Überprüfen der Unterstützung für Ihr Setup finden Sie unter Unterstützung für verschiedene Arten von benutzerdefinierten Anweisungen. Unterstützte IDEs und Versionen finden Sie unter Copilot Funktionsmatrix.
Informationen zu benutzerdefinierten Anweisungen für Organisationen
Hinweis
Support: Benutzerdefinierte Anweisungen in der Organisation werden derzeit für Sitzungen unterstützt, die auf der GitHub Website ausgeführt werden (in Cloud-Sandboxes oder auf GitHub Actions) und für Copilot code review. Sie werden in lokalen Clientsitzungen nicht unterstützt.
Organisationsbesitzer können Anweisungen hinzufügen, um Copilot an die Anforderungen und Einstellungen ihrer Organisation anzupassen. Diese Anweisungen werden für alle Mitglieder der Organisation verwendet, unabhängig davon, ob sie ihr Copilot Abonnement von dieser Organisation erhalten.
Benutzerdefinierte Anweisungen der Organisation können nur für Organisationen mit einem Copilot Business Oder Copilot Enterprise Abonnement konfiguriert werden.
Organisationsanweisungen können z. B. folgende Aktionen ausführen:
- Geben Sie eine Sprache an, die in den Antworten verwendet werden soll.
- Bereitstellen von organisationsweiten Sicherheits- oder Compliance-Hinweisen.
- Geben Sie bevorzugte Antwortformate an, z. B. keine Codeblöcke zu generieren.
- Leiten Sie Personen zu einer internen Wissensbasis oder einem Supportkanal für bestimmte Themen.
Informationen zum Hinzufügen von Organisationsanweisungen finden Sie unter Hinzufügen von organisationseigenen benutzerdefinierten Anweisungen für GitHub Copilot.
Rangfolge von benutzerdefinierten Anweisungen
Die Rangfolge hängt vom Client und Feature ab. Die meisten Oberflächen und Clients, einschließlich Copilot CLI, Visual Studio Code und Visual Studio, kombinieren anwendbare Anweisungsdateien, ohne eine allgemeine Prioritätsreihenfolge zu definieren.
Für Copilot Chat auf GitHub.com werden Copilot alle relevanten Anweisungen zur Verfügung gestellt. Die Reihenfolge der Rangfolge, von der höchsten bis zur niedrigsten, lautet:
- Persönliche Anweisungen
- Angepasste Repository-Anweisungen:
- Pfadspezifische Anweisungen in jeder anwendbaren
.github/instructions/**/*.instructions.mdDatei - Repositoryweite Anweisungen in
.github/copilot-instructions.md - Agent-Anweisungen, z. B. Anweisungen in einer
AGENTS.mdDatei
- Pfadspezifische Anweisungen in jeder anwendbaren
- Benutzerdefinierte Anweisungen der Organisation
Versuchen Sie, wann immer möglich, konfliktende Sätze von Anweisungen zu vermeiden. Wenn Sie sich Sorgen um die Antwortqualität machen, können Sie die Anweisungen im Repository vorübergehend deaktivieren. Weitere Informationen findest du unter Hinzufügen von benutzerdefinierten Repositoryanweisungen für GitHub Copilot.
Verwenden von benutzerdefinierten Anweisungen
Benutzerdefinierte Anweisungen bestehen aus Anweisungen in natürlicher Sprache und sind am effektivsten, wenn sie kurz und eigenständig sind. Berücksichtigen Sie den Umfang, über den eine Anweisung angewendet werden soll, bevor Sie entscheiden, ob sie auf persönlicher, Repository- oder Organisationsebene hinzugefügt werden soll.
Zu den gängigen Anwendungsfällen gehören:
- Antworteinstellungen. Geben Sie eine bevorzugte Sprache, eine Antwortstruktur, einen Ton oder eine Erklärungsebene an.
- Projektkontext. Erläutern Sie den Zweck, die Architektur oder die Domäne eines Repositorys.
- Sprachen und Frameworks. Identifizieren Sie die Sprachen, Bibliotheken, Frameworks und Versionen, die von einem Projekt verwendet werden.
- Codierungs- und Testkonventionen. Beschreiben Sie Benennungs-, Formatierungs-, Test-, Fehlerbehandlungs- oder Dokumentationsstandards.
- Prüfung und Sicherheitsleitfaden. Identifizieren Sie Probleme, die besondere Aufmerksamkeit erhalten sollten, wenn ein unterstütztes Feature Code überprüft oder ändert.
- Organisationsanforderungen. Stellen Sie organisationsweite Sprach-, Sicherheits-, Compliance- oder Supportanleitungen bereit.
Beispiele:
- Persönliche Anweisung:
Always respond in Portuguese. - Persönliche Anweisung:
Explain a single concept per line. Be clear and concise. - Anweisung für das Repository:
Use Vue with the PrimeVue library. - Repository-Anweisung:
Use early returns whenever possible. - Organisationsanweisung:
For questions related to security, use the Security Docs Knowledge Base. - Organisationsanweisung:
Do not generate code blocks in responses.
Anweisungen zum Testen, Commit-Nachrichten oder zur Codeüberprüfung können hilfreichen Kontext bieten. Die Features, die eine bestimmte Anweisung verwenden, Copilot variieren jedoch je nach Client und Oberfläche, und benutzerdefinierte Anweisungen garantieren nicht, dass generierte Inhalte einer Richtlinie entsprechen.
Hinweis
Beim Überprüfen eines Pull Requests liest Copilot benutzerdefinierte Repository-Anweisungen, Agent-Anweisungen und Agent-Fähigkeiten aus dem Head-Branch (dem Branch mit Ihren Änderungen), nicht aus dem Basisbranch. Wenn Sie beispielsweise my-feature-branch in main zusammenführen, verwendet Copilot die Anweisungen und Fähigkeiten in my-feature-branch, sodass Sie Änderungen daran im selben Pull Request testen können, ohne sie zuerst zusammenzuführen.
Schreiben hilfreicher benutzerdefinierter Anweisungen
Die Anweisungen, die Sie Ihrer/Ihren Datei(en) mit benutzerdefinierten Anweisungen hinzufügen, sollten kurze, in sich geschlossene Aussagen sein, die Copilot relevante Informationen liefern, um Copilot bei der Arbeit in diesem Repository zu unterstützen. Da die Anweisungen mit jeder Chatnachricht gesendet werden, müssen sie auf die meisten Anforderungen im Zusammenhang mit dem Repository breit anwendbar sein.
Welche Struktur du für die Anweisungsdateien jeweils verwendest, hängt vom Projekt und von den Anforderungen ab. Die folgenden Richtlinien bieten jedoch einen guten Ausgangspunkt:
- Gib einen Überblick über das Projekt, an dem du arbeitest. Dazu gehören der Zweck, die Ziele und alle relevanten Hintergrundinformationen.
- Leg die Codierungsstandards und -konventionen fest, die befolgt werden sollen, z. B. Namenskonventionen, Formatierungsregeln und bewährte Methoden.
- Gib alle spezifischen Tools, Bibliotheken oder Frameworks an, die im Projekt verwendet werden, zusammen mit den entsprechenden Versionsnummern oder Konfigurationen.
Die folgende Anweisungendatei ist ein Beispiel für diese Vorgehensweisen in Aktion:
# Project Overview
This project is a web application that allows users to manage their tasks and to-do lists. It is built using React and Node.js, and uses MongoDB for data storage.
## Libraries and Frameworks
- React and Tailwind CSS for the frontend.
- Node.js and Express for the backend.
- MongoDB for data storage.
## Coding Standards
- Use semicolons at the end of each statement.
- Use single quotes for strings.
- Use function based components in React.
- Use arrow functions for callbacks.
## UI guidelines
- A toggle is provided to switch between light and dark mode.
- Application should have a modern and clean design.
Du solltest auch die Größe und Komplexität deines Repositorys berücksichtigen. Die folgenden Arten von Anweisungen können für ein kleines Repository mit nur wenigen Mitwirkenden funktionieren, aber für ein großes und vielfältiges Repository können sie Probleme verursachen:
- Anfragen zum Verweis auf externe Ressourcen bei der Formulierung einer Antwort
- Anweisungen zum Antworten in einem bestimmten Stil
- Anweisungen, immer mit einem bestimmten Detailniveau zu antworten
Die folgenden Anweisungen führen möglicherweise nicht zu den gewünschten Ergebnissen:
Always conform to the coding styles defined in styleguide.md in repo my-org/my-repo when generating code.
Use @terminal when answering questions about Git.
Answer all questions in the style of a friendly colleague, using informal language.
Answer all questions in less than 1000 characters, and words of no more than 12 characters.
Nächste Schritte
- Hinzufügen von persönlichen benutzerdefinierten Anweisungen für GitHub Copilot
- Hinzufügen von benutzerdefinierten Repositoryanweisungen für GitHub Copilot
- Hinzufügen von benutzerdefinierten Repositoryanweisungen für GitHub Copilot in Ihrer IDE
- Hinzufügen von organisationseigenen benutzerdefinierten Anweisungen für GitHub Copilot