Anpassen von GitHub Copilot-Chatantworten
GitHub Copilot Chat kann Antworten und Code generieren, die Ihren Codierungspraktiken und Projektanforderungen entsprechen, wenn der richtige Kontext gegeben ist. Anstatt diese Informationen immer wieder in jeder Chataufforderung hinzuzufügen, können Sie diesen Kontext in Dateien speichern und automatisch in jede Chatanfrage einschließen.
Es gibt drei Hauptmethoden zum Anpassen von KI-Antworten in Visual Studio Code:
Benutzerdefinierte Anweisungen: Definieren Sie allgemeine Richtlinien für Aufgaben wie das Generieren von Code, das Ausführen von Codeüberprüfungen oder das Generieren von Commit-Nachrichten. Diese beschreiben, wie Aufgaben ausgeführt werden sollen, und können Codierungsmethoden, bevorzugte Technologien, Sicherheitsregeln oder Commit-Nachrichtenformate angeben.
Eingabeaufforderungsdateien: Definieren sie wiederverwendbare Eingabeaufforderungen für allgemeine Aufgaben. Diese eigenständigen Eingabeaufforderungen beschreiben, was getan werden soll, und kann Gerüstkomponenten, das Ausführen von Codeüberprüfungen, das Erstellen von Schrittweisen Anleitungen oder das Generieren von Implementierungsplänen umfassen.
Benutzerdefinierte Chatmodi: Definieren Sie, wie Chat funktioniert, welche Tools sie verwenden können, und wie er mit der Codebasis interagiert. Beispiele sind Planungsmodi mit schreibgeschütztem Zugriff, Forschungsmodi, die auf externe Ressourcen zugreifen, oder rollenspezifische Modi wie front-end-Entwicklung.
Benutzerdefinierte Anweisungen
Benutzerdefinierte Anweisungen ermöglichen es Ihnen, Richtlinien zu beschreiben, um Antworten zu erhalten, die Ihren spezifischen Kodierungspraktiken und Ihrem Technologie-Stack entsprechen. Statt diesen Kontext manuell in jede Chatabfrage aufzunehmen, integrieren benutzerdefinierte Anweisungen diese Informationen automatisch in jede Chatanfrage.
Note
Benutzerdefinierte Anweisungen werden für Codeabschlusse nicht berücksichtigt.
Typen von benutzerdefinierten Anweisungen
Visual Studio Code unterstützt drei Möglichkeiten zum Definieren von benutzerdefinierten Anweisungen:
| Type | Description | Anwendungsfälle |
|---|---|---|
.github/copilot-instructions.md |
Eine einzelne Markdowndatei im Arbeitsbereich, die automatisch in alle Anforderungen eingeschlossen wird, mit Unterstützung für mehrere Editoren. | Allgemeine Codierungsmethoden, bevorzugte Technologien, projektweite Anforderungen. |
.instructions.md files |
Mehrere Markdowndateien mit Globmusterunterstützung, Arbeitsbereich oder Benutzerprofilspeicher. | Aufgabenspezifische Anweisungen, präzise Kontrolle darüber, wann Anweisungen angewendet werden. |
| Visual Studio Code-Einstellungen | Anweisungen in den Benutzer-/Arbeitsbereichseinstellungen für bestimmte Szenarien. | Codegenerierung, Testgenerierung, Commit-Meldungen, Code-Reviews, PR-Beschreibungen. |
Sie können diese Ansätze kombinieren, konfliktende Anweisungen jedoch vermeiden, da keine Prioritätsreihenfolge angewendet wird.
Beispiele für benutzerdefinierte Anweisungen
Allgemeine Codierungsrichtlinien:
---
applyTo: "**"
---
# Project coding standards
## Naming Conventions
- Use PascalCase for component names, interfaces, and type aliases.
- Use camelCase for variables, functions, and methods.
- Prefix private class members with underscore (_).
- Use ALL_CAPS for constants.
## Error Handling
- Use try/catch blocks for async operations.
- Implement proper error boundaries in React components.
- Always log errors with contextual information.
TypeScript- und React-Richtlinien:
---
applyTo: "**/*.ts,**/*.tsx"
---
# TypeScript and React standards
Apply the [general coding guidelines](./general-coding.instructions.md) to all code.
## TypeScript Guidelines
- Use TypeScript for all new code.
- Follow functional programming principles where possible.
- Use interfaces for data structures and type definitions.
- Prefer immutable data (const, readonly).
- Use optional chaining (?.) and nullish coalescing (??) operators.
## React Guidelines
- Use functional components with hooks.
- Follow the React hooks rules (no conditional hooks).
- Use React.FC type for components with children.
- Keep components small and focused.
- Use CSS modules for component styling.
Verwenden sie die Datei ".github/copilot-instructions.md"
Speichern Sie benutzerdefinierte Anweisungen in einer .github/copilot-instructions.md Datei im Arbeitsbereichsstamm, um Codierungsmethoden, bevorzugte Technologien und Projektanforderungen zu beschreiben. Diese Anweisungen gelten nur für den Arbeitsbereich und sind automatisch in jeder Chatanfrage enthalten.
Setupschritte:
- Setzen Sie
github.copilot.chat.codeGeneration.useInstructionFilesauftrue. - Erstellen Sie
.github/copilot-instructions.mdim Stamm des Arbeitsbereichs. - Beschreiben Sie Anweisungen mithilfe des Natürlichen Sprach- und Markdown-Formats.
Note
Diese Datei funktioniert in Visual Studio Code, Visual Studio und GitHub.com.
Verwenden Sie .instructions.md Dateien
Erstellen Sie mehrere .instructions.md Dateien für bestimmte Aufgaben, Programmiersprachen, Frameworks oder Projekttypen. Diese können automatisch basierend auf Dateimustern angewendet oder manuell an Chataufforderungen angefügt werden.
Dateispeicherorte:
- Arbeitsbereichsdateien: Im Ordner gespeichert
.github/instructions, nur innerhalb des Arbeitsbereichs verfügbar. - Benutzerdateien: In Visual Studio Code-Profil gespeichert, in mehreren Arbeitsbereichen verfügbar und über die Einstellungssynchronisierung synchronisiert.
Dateistruktur:
---
description: "Brief description of the instructions file"
applyTo: "**/*.ts,**/*.tsx" # Glob pattern for automatic application
---
# Instructions content in Markdown format
Erstellen und Verwenden von Anleitungsdateien:
- Führen Sie
Chat: New Instructions Fileüber die Befehlspalette aus. - Wählen Sie Arbeitsbereich oder Benutzerstandort aus.
- Geben Sie in Markdown Namen- und Autorenanweisungen ein.
- Verwenden Sie
Chat: Configure Instructions, um vorhandene Dateien zu bearbeiten.
Manuelles Anhängen:
- In der Chatansicht: Hinzufügen von Kontextanweisungen >
- Befehlspalette:
Chat: Attach Instructions
Automatische Anwendung: Verwenden von applyTo-Metadaten mit Globmustern (** für alle Anforderungen, spezifische Muster für Zielanwendung)
Angeben von benutzerdefinierten Anweisungen in den Einstellungen
Konfigurieren sie benutzerdefinierte Anweisungen in den Visual Studio Code-Einstellungen für bestimmte Szenarien:
| Scenario | Setting |
|---|---|
| Codeerzeugung | github.copilot.chat.codeGeneration.instructions |
| Testgenerierung | github.copilot.chat.testGeneration.instructions |
| Code Review | github.copilot.chat.reviewSelection.instructions |
| Commit-Nachrichten | github.copilot.chat.commitMessageGeneration.instructions |
| PR-Titel/Beschreibungen | github.copilot.chat.pullRequestDescriptionGeneration.instructions |
Definieren von Anweisungen als Text oder Verweisen auf externe Dateien:
"github.copilot.chat.codeGeneration.instructions": [
{
"text": "Always add a comment: 'Generated by Copilot'."
},
{
"text": "In TypeScript always use underscore for private field names."
},
{
"file": "general.instructions.md"
},
{
"file": "db.instructions.md"
}
]
Best Practices für benutzerdefinierte Anweisungen
- Halten Sie Die Anweisungen prägnant: Jede Anweisung sollte eine einzelne, einfache Anweisung sein.
- Vermeiden Sie externe Verweise: Verweisen Sie nicht auf externe Codierungsstandards oder Ressourcen.
- Organisieren nach Thema: Aufteilen von Anweisungen in mehrere Dateien für eine bessere Organisation.
- Aktivieren der Teamfreigabe: Speichern Sie Anleitungen in Dateien mit Versionskontrolle für die Teamzusammenarbeit.
- Verwenden Sie eine gezielte Anwendung: Nutzen Sie
applyTodie Eigenschaft für dateispezifische Anweisungen. - Effizient referenzieren: Verweisen Sie auf benutzerdefinierte Anweisungen in Aufforderungsdateien, um Duplizierungen zu vermeiden.
Summary
Mit benutzerdefinierten Anweisungen in GitHub Copilot Chat können Sie Codierungsmethoden, bevorzugte Technologien und Projektanforderungen definieren, die automatisch in jeder Chatanfrage enthalten sind. Mithilfe von .github/copilot-instructions.md Dateien, .instructions.md Dateien oder Visual Studio Code-Einstellungen können Sie sicherstellen, dass KI-generierte Antworten ihren Codierungsstandards und Projektanforderungen entsprechen. Dieser Ansatz verbessert die Qualität und Relevanz der KI-Unterstützung und behält gleichzeitig die Kontrolle über den Codierungsprozess bei.