Diese Version des Artikels ist für die Verwendung benutzerdefinierter Repositoryanweisungen auf der GitHub-Website vorgesehen. Klicke oben auf die Registerkarten, wenn du Informationen zur Verwendung benutzerdefinierter Anweisungen in anderen Umgebungen möchtest.
Benutzerdefinierte Repositoryanweisungen werden derzeit unterstützt für:
- Copilot Chat in Visual Studio, VS Code und auf der GitHub-Website
- Copilot Code Review
Prerequisites for repository custom instructions
- You must have a custom instructions file (see the instructions below).
Diese Version des Artikels ist für die Verwendung benutzerdefinierter Repositoryanweisungen und Promptdateien in VS Code vorgesehen. Klicke oben auf die Registerkarten, wenn du Informationen zur Verwendung benutzerdefinierter Anweisungen in anderen Umgebungen möchtest.
Benutzerdefinierte Repositoryanweisungen werden derzeit unterstützt für:
- Copilot Chat in Visual Studio, VS Code und auf der GitHub-Website
- Copilot Code Review
Prerequisites for repository custom instructions
- You must have a custom instructions file (see the instructions below).
Diese Version des Artikels ist für die Verwendung benutzerdefinierter Repositoryanweisungen in Visual Studio vorgesehen. Klicke oben auf die Registerkarten, wenn du Informationen zur Verwendung benutzerdefinierter Anweisungen in anderen Umgebungen möchtest.
Benutzerdefinierte Repositoryanweisungen werden derzeit unterstützt für:
- Copilot Chat in Visual Studio, VS Code und auf der GitHub-Website
- Copilot Code Review
Prerequisites for repository custom instructions
- You must have a custom instructions file (see the instructions below).
Diese Version des Artikels ist für die Verwendung benutzerdefinierter Repositoryanweisungen in JetBrains-IDEs vorgesehen. Klicke oben auf die Registerkarten, wenn du Informationen zur Verwendung benutzerdefinierter Anweisungen in anderen Umgebungen möchtest.
Benutzerdefinierte Repositoryanweisungen werden derzeit unterstützt für:
- Copilot Chat in Visual Studio, VS Code und auf der GitHub-Website
- Copilot Code Review
Prerequisites for repository custom instructions
- You must have a custom instructions file (see the instructions below).
Diese Version des Artikels ist für die Verwendung benutzerdefinierter Repositoryanweisungen in Xcode vorgesehen. Klicke oben auf die Registerkarten, wenn du Informationen zur Verwendung benutzerdefinierter Anweisungen in anderen Umgebungen möchtest.
Benutzerdefinierte Repositoryanweisungen werden derzeit unterstützt für:
- Copilot Chat in Visual Studio, VS Code und auf der GitHub-Website
Prerequisites for repository custom instructions
- You must have a custom instructions file (see the instructions below).
Hinweis
Dieses Feature befindet sich aktuell in der public preview und kann noch geändert werden.
Diese Version dieses Artikels dient zur Verwendung benutzerdefinierter Repositoryanweisungen in Eclipse. Klicke oben auf die Registerkarten, wenn du Informationen zur Verwendung benutzerdefinierter Anweisungen in anderen Umgebungen möchtest.
Benutzerdefinierte Repositoryanweisungen werden derzeit unterstützt für:
- Copilot Chat in Visual Studio, VS Code und auf der GitHub-Website
- Copilot Code Review
Prerequisites for repository custom instructions
- You must have a custom instructions file (see the instructions below).
- Die Verwendung benutzerdefinierter Anweisungen muss aktiviert sein. Diese Einstellung ist standardmäßig aktiviert. Details findest du unter Aktivieren oder Deaktivieren benutzerdefinierter Repositoryanweisungen weiter unten in diesem Artikel.
- Benutzerdefinierte Anweisungen müssen aktiviert sein. Dieses Feature ist standardmäßig aktiviert. Details findest du unter Aktivieren oder Deaktivieren benutzerdefinierter Repositoryanweisungen weiter unten in diesem Artikel.
- Die Option Enable custom instructions... muss in deine Einstellungen aktiviert sein. Diese Einstellung ist standardmäßig aktiviert. Details findest du unter Aktivieren oder Deaktivieren benutzerdefinierter Repositoryanweisungen weiter unten in diesem Artikel.
- In deiner JetBrains-IDE muss die aktuelle Version der Copilot-Erweiterung installiert sein.
- In Xcode muss die aktuelle Version der Copilot-Erweiterung installiert sein.
- Die neueste Version der Copilot-Erweiterung muss in Eclipse installiert sein.
Erstellen von benutzerdefinierten Anweisungen
JetBrains-IDEs unterstützen eine einzelne, im Repository gespeicherte Datei mit benutzerdefinierten Anweisungen namens .github/copilot-instructions.md
und eine lokal gespeicherte Datei namens global-copilot-instructions.md
.
Du kannst die Datei .github/copilot-instructions.md
in deinem Repository mithilfe der Einstellungsseite von Copilot oder manuell erstellen.
Leerzeichen zwischen Anweisungen werden ignoriert, d. h. die Anweisungen können in einem Absatz und jeweils in einer neuen Zeile oder für bessere Lesbarkeit durch leere Zeilen getrennt geschrieben werden.
Verwenden der Einstellungsseite
- Klicken Sie in Ihrer JetBrains-IDE auf das Menü Datei (Windows) oder den Namen der Anwendung in der Menüleiste (macOS), und klicken Sie dann auf Einstellungen.
- Klicke unter Sprachen und Frameworks auf GitHub Copilot .
- Klicke unter „Copilot Instructions“ auf Workspace oder Global, um anzugeben, ob die benutzerdefinierten Anweisungen auf den aktuellen Arbeitsbereich oder auf alle Arbeitsbereiche angewendet werden sollen.
Manuelles Erstellen einer Datei mit benutzerdefinierten Anweisungen für einen Arbeitsbereich
-
Erstelle im Stamm deines Repositorys eine Datei mit dem Namen
.github/copilot-instructions.md
.Erstelle das
.github
-Verzeichnis, wenn es noch nicht vorhanden ist. -
Füge der Datei Anweisungen in natürlicher Sprache im Markdownformat hinzu.
Nach dem Speichern gelten diese Anweisungen für den aktuellen Arbeitsbereich in JetBrains-IDEs, die du öffnest, während Copilot aktiviert ist.
Manuelles Erstellen einer globalen Datei mit benutzerdefinierten Anweisungen
Wenn Anweisungen für alle Arbeitsbereiche in JetBrains-IDEs gelten sollen, kannst du eine globale Datei mit benutzerdefinierten Anweisungen auf deinem lokaler Computer erstellen.
-
Öffne den Datei-Explorer oder das Terminal.
-
Navigiere zum entsprechenden Speicherort für dein Betriebssystem:
- macOS:
/Users/YOUR-USERNAME/.config/github-copilot/intellij/
- Windows:
C:\Users\YOUR-USERNAME\AppData\Local\github-copilot\intellij\
- macOS:
-
Erstelle in diesem Verzeichnis eine Datei mit dem Namen
global-copilot-instructions.md
. -
Füge deine benutzerdefinierten Anweisungen in natürlicher Sprache im Markdownformat hinzu.
Nach dem Speichern gelten diese Anweisungen global für alle Arbeitsbereiche in JetBrains-IDEs, die du öffnest, während Copilot aktiviert ist.
Xcode unterstützt die im Repository gespeicherte Datei .github/copilot-instructions.md
mit benutzerdefinierten Anweisungen.
Du kannst eine Datei mit benutzerdefinierten Anweisungen in deinem Repository über die Einstellungsseite von Copilot erstellen.
Leerzeichen zwischen Anweisungen werden ignoriert, d. h. die Anweisungen können in einem Absatz und jeweils in einer neuen Zeile oder für bessere Lesbarkeit durch leere Zeilen getrennt geschrieben werden.
- Öffne die Anwendung „GitHub Copilot for Xcode“.
- Klicke oben im Anwendungsfenster unter Settings auf Advanced.
- Klicke rechts neben „Custom Instructions“ auf Current Workspace oder Global, um anzugeben, ob die benutzerdefinierten Anweisungen auf den aktuellen Arbeitsbereich oder auf alle Arbeitsbereiche angewendet werden soll.
Eclipse unterstützt zwei Arten benutzerdefinierter Repositoryanweisungen: benutzerdefinierte Anweisungen für Arbeitsbereiche und für Projekte.
Um eine benutzerdefinierte Anweisungsdatei für den Arbeitsbereich zu erstellen, kannst du die Copilot-Einstellungsseite verwenden. Zum Erstellen einer benutzerdefinierten Anweisungsdatei für das Projekt kannst du die Datei manuell im Projektverzeichnis erstellen.
Leerzeichen zwischen Anweisungen werden ignoriert, d. h. die Anweisungen können in einem Absatz und jeweils in einer neuen Zeile oder für bessere Lesbarkeit durch leere Zeilen getrennt geschrieben werden.
Erstellen einer Datei mit benutzerdefinierten Anweisungen für den Arbeitsbereich
- Klicke zum Öffnen des Copilot Chat-Panels auf der Statusleiste unten in Eclipse auf das Copilot-Symbol ().
- Wähle im Menü „Edit preferences“ aus.
- Erweitere im linken Bereich GitHub Copilot, und klicke auf Custom Instructions.
- Wähle Enable workspace instructions aus.
- Füge der Datei im Abschnitt „Workspace“ unter „Set custom instructions to guide Copilot's code suggestions in this workspace“ Anweisungen in natürlicher Sprache im Markdown-Format hinzu.
Erstellen einer benutzerdefinierten Anweisungsdatei für das Projekt
- Erstelle im Stammverzeichnis deines Projektverzeichnisses eine Datei mit dem Namen
.github/copilot-instructions.md
. - Füge deine benutzerdefinierten Anweisungen in natürlicher Sprache im Markdownformat hinzu.
Nach dem Speichern gelten diese Anweisungen für das aktuelle Projekt in Eclipse, das du mit aktiviertem Copilot geöffnet hast.
VS Code unterstützt zwei Arten benutzerdefinierter Anweisungen für Repositorys:
-
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.github
des Repositorys angegeben. Weitere Informationen findest du unter Erstellen repositoryweiter benutzerdefinierter Anweisungen. -
Pfadspezifische benutzerdefinierte Anweisungen gelten für Anforderungen im Kontext von Dateien, die mit einem angegebenen Pfad übereinstimmen.
Diese werden in mindestens einer
NAME.instructions.md
-Datei im Verzeichnis.github/instructions
des Repositorys angegeben. Weitere Informationen findest du unter Erstellen pfadspezifischer benutzerdefinierter Anweisungen.Wenn der von dir angegebene Pfad mit einer Datei übereinstimmt, an der Copilot gerade arbeitet, und eine repositoryweite benutzerdefinierte Anweisungsdatei vorhanden ist, werden die Anweisungen aus beiden Dateien verwendet.
Erstellen repositoryweiter benutzerdefinierter Anweisungen
-
Erstelle im Stamm deines Repositorys eine Datei mit dem Namen
.github/copilot-instructions.md
.Erstelle das
.github
-Verzeichnis, wenn es noch nicht vorhanden ist. -
Füge der Datei Anweisungen in natürlicher Sprache im Markdownformat hinzu.
Leerzeichen zwischen Anweisungen werden ignoriert, d. h. die Anweisungen können in einem Absatz und jeweils in einer neuen Zeile oder für bessere Lesbarkeit durch leere Zeilen getrennt geschrieben werden.
Erstellen pfadspezifischer benutzerdefinierter Anweisungen
-
Create the
.github/instructions
directory if it does not already exist. -
Create one or more
NAME.instructions.md
files, whereNAME
indicates the purpose of the instructions. The file name must end with.instructions.md
. -
At the start of the file, create a frontmatter block containing the
applyTo
keyword. Use glob syntax to specify what files or directories the instructions apply to.For example:
--- applyTo: "app/models/**/*.rb" ---
You can specify multiple patterns by separating them with commas. For example, to apply the instructions to all TypeScript files in the repository, you could use the following frontmatter block:
--- applyTo: "**/*.ts,**/*.tsx" ---
To apply the instructions to all files, use
applyTo: "**"
. -
Add your custom instructions in natural language, using Markdown format. Whitespace between instructions is ignored, so the instructions can be written as a single paragraph, each on a new line, or separated by blank lines for legibility.
Visual Studio unterstützt die im Repository gespeicherte Datei .github/copilot-instructions.md
mit benutzerdefinierten Anweisungen.
-
Erstelle im Stamm deines Repositorys eine Datei mit dem Namen
.github/copilot-instructions.md
.Erstelle das
.github
-Verzeichnis, wenn es noch nicht vorhanden ist. -
Füge der Datei Anweisungen in natürlicher Sprache im Markdownformat hinzu.
Leerzeichen zwischen Anweisungen werden ignoriert, d. h. die Anweisungen können in einem Absatz und jeweils in einer neuen Zeile oder für bessere Lesbarkeit durch leere Zeilen getrennt geschrieben werden.
Du kannst verschiedene Arten von benutzerdefinierten Repositoryanweisungen für die Verwendung auf GitHub.com erstellen:
-
Repositoryweite benutzerdefinierte Anweisungen gelten für alle Anforderungen, die im Kontext eines Repositorys gestellt werden.
Unterstützt von: Copilot Chat, Copilot-Programmier-Agent und Copilot Code Review.
Diese werden in einer
copilot-instructions.md
-Datei im Verzeichnis.github
des Repositorys angegeben. Weitere Informationen findest du unter Erstellen repositoryweiter benutzerdefinierter Anweisungen. -
Pfadspezifische benutzerdefinierte Anweisungen gelten für Anforderungen im Kontext von Dateien, die mit einem angegebenen Pfad übereinstimmen.
Unterstützt von: Copilot-Programmier-Agent und Copilot Code Review.
Diese werden in mindestens einer
NAME.instructions.md
-Datei im Verzeichnis.github/instructions
des Repositorys angegeben. Weitere Informationen findest du unter Erstellen pfadspezifischer benutzerdefinierter Anweisungen.Wenn der von dir angegebene Pfad mit einer Datei übereinstimmt, an der Copilot gerade arbeitet, und eine repositoryweite benutzerdefinierte Anweisungsdatei vorhanden ist, werden die Anweisungen aus beiden Dateien verwendet.
-
Agent-Anweisungen werden von KI-Agents verwendet.
Unterstützt von: Copilot-Programmier-Agent.
Du kannst mindestens eine
AGENTS.md
-Datei erstellen, die an einer beliebigen Stelle im Repository gespeichert ist. Wenn Copilot funktioniert, hat die nächsteAGENTS.md
-Datei in der Verzeichnisstruktur Vorrang.Alternativ kannst du eine einzelne
CLAUDE.md
- oderGEMINI.md
-Datei verwenden, die im Stammverzeichnis des Repositorys gespeichert ist.
Erstellen repositoryweiter benutzerdefinierter Anweisungen
Du kannst deine eigene benutzerdefinierte Anleitungsdatei von Grund auf neu erstellen. Weitere Informationen findest du unter Schreiben deiner eigenen „instructions.md“-Datei für Copilot. Alternativ kannst du Copilot-Programmier-Agent bitten, eine für dich zu generieren.
Anweisen von Copilot-Programmier-Agent zum Generieren einer copilot-instructions.md
-Datei
Hinweis
Copilot-Programmier-Agent befindet sich in der public preview. Änderungen sind vorbehalten. Während der Vorschauphase unterliegt die Verwendung des Features den Lizenzbestimmungen für die Vorabversion von GitHub.
-
Navigiere zur Seite „Agents“ bei github.com/copilot/agents.
Du kannst diese Seite auch erreichen, indem du auf die Schaltfläche neben der Suchleiste auf einer beliebigen Seite auf GitHub klickst und dann auf der Seitenleiste Agents auswählst.
-
Wähle im Dropdownmenü im Promptfeld das Repository aus, für das Copilot benutzerdefinierte Anweisungen generieren soll.
-
Kopiere den folgenden Prompt, und passe ihn bei Bedarf an:
Markdown Your task is to "onboard" this repository to Copilot coding agent by adding a .github/copilot-instructions.md file in the repository that contains information describing how a coding agent seeing it for the first time can work most efficiently. You will do this task only one time per repository and doing a good job can SIGNIFICANTLY improve the quality of the agent's work, so take your time, think carefully, and search thoroughly before writing the instructions. <Goals> - Reduce the likelihood of a coding agent pull request getting rejected by the user due to generating code that fails the continuous integration build, fails a validation pipeline, or having misbehavior. - Minimize bash command and build failures. - Allow the agent to complete its task more quickly by minimizing the need for exploration using grep, find, str_replace_editor, and code search tools. </Goals> <Limitations> - Instructions must be no longer than 2 pages. - Instructions must not be task specific. </Limitations> <WhatToAdd> Add the following high level details about the codebase to reduce the amount of searching the agent has to do to understand the codebase each time: <HighLevelDetails> - A summary of what the repository does. - High level repository information, such as the size of the repo, the type of the project, the languages, frameworks, or target runtimes in use. </HighLevelDetails> Add information about how to build and validate changes so the agent does not need to search and find it each time. <BuildInstructions> - For each of bootstrap, build, test, run, lint, and any other scripted step, document the sequence of steps to take to run it successfully as well as the versions of any runtime or build tools used. - Each command should be validated by running it to ensure that it works correctly as well as any preconditions and postconditions. - Try cleaning the repo and environment and running commands in different orders and document errors and and misbehavior observed as well as any steps used to mitigate the problem. - Run the tests and document the order of steps required to run the tests. - Make a change to the codebase. Document any unexpected build issues as well as the workarounds. - Document environment setup steps that seem optional but that you have validated are actually required. - Document the time required for commands that failed due to timing out. - When you find a sequence of commands that work for a particular purpose, document them in detail. - Use language to indicate when something should always be done. For example: "always run npm install before building". - Record any validation steps from documentation. </BuildInstructions> List key facts about the layout and architecture of the codebase to help the agent find where to make changes with minimal searching. <ProjectLayout> - A description of the major architectural elements of the project, including the relative paths to the main project files, the location of configuration files for linting, compilation, testing, and preferences. - A description of the checks run prior to check in, including any GitHub workflows, continuous integration builds, or other validation pipelines. - Document the steps so that the agent can replicate these itself. - Any explicit validation steps that the agent can consider to have further confidence in its changes. - Dependencies that aren't obvious from the layout or file structure. - Finally, fill in any remaining space with detailed lists of the following, in order of priority: the list of files in the repo root, the contents of the README, the contents of any key source files, the list of files in the next level down of directories, giving priority to the more structurally important and snippets of code from key source files, such as the one containing the main method. </ProjectLayout> </WhatToAdd> <StepsToFollow> - Perform a comprehensive inventory of the codebase. Search for and view: - README.md, CONTRIBUTING.md, and all other documentation files. - Search the codebase for build steps and indications of workarounds like 'HACK', 'TODO', etc. - All scripts, particularly those pertaining to build and repo or environment setup. - All build and actions pipelines. - All project files. - All configuration and linting files. - For each file: - think: are the contents or the existence of the file information that the coding agent will need to implement, build, test, validate, or demo a code change? - If yes: - Document the command or information in detail. - Explicitly indicate which commands work and which do not and the order in which commands should be run. - Document any errors encountered as well as the steps taken to workaround them. - Document any other steps or information that the agent can use to reduce time spent exploring or trying and failing to run bash commands. - Finally, explicitly instruct the agent to trust the instructions and only perform a search if the information in the instructions is incomplete or found to be in error. </StepsToFollow> - Document any errors encountered as well as the steps taken to work-around them.
Your task is to "onboard" this repository to Copilot coding agent by adding a .github/copilot-instructions.md file in the repository that contains information describing how a coding agent seeing it for the first time can work most efficiently. You will do this task only one time per repository and doing a good job can SIGNIFICANTLY improve the quality of the agent's work, so take your time, think carefully, and search thoroughly before writing the instructions. <Goals> - Reduce the likelihood of a coding agent pull request getting rejected by the user due to generating code that fails the continuous integration build, fails a validation pipeline, or having misbehavior. - Minimize bash command and build failures. - Allow the agent to complete its task more quickly by minimizing the need for exploration using grep, find, str_replace_editor, and code search tools. </Goals> <Limitations> - Instructions must be no longer than 2 pages. - Instructions must not be task specific. </Limitations> <WhatToAdd> Add the following high level details about the codebase to reduce the amount of searching the agent has to do to understand the codebase each time: <HighLevelDetails> - A summary of what the repository does. - High level repository information, such as the size of the repo, the type of the project, the languages, frameworks, or target runtimes in use. </HighLevelDetails> Add information about how to build and validate changes so the agent does not need to search and find it each time. <BuildInstructions> - For each of bootstrap, build, test, run, lint, and any other scripted step, document the sequence of steps to take to run it successfully as well as the versions of any runtime or build tools used. - Each command should be validated by running it to ensure that it works correctly as well as any preconditions and postconditions. - Try cleaning the repo and environment and running commands in different orders and document errors and and misbehavior observed as well as any steps used to mitigate the problem. - Run the tests and document the order of steps required to run the tests. - Make a change to the codebase. Document any unexpected build issues as well as the workarounds. - Document environment setup steps that seem optional but that you have validated are actually required. - Document the time required for commands that failed due to timing out. - When you find a sequence of commands that work for a particular purpose, document them in detail. - Use language to indicate when something should always be done. For example: "always run npm install before building". - Record any validation steps from documentation. </BuildInstructions> List key facts about the layout and architecture of the codebase to help the agent find where to make changes with minimal searching. <ProjectLayout> - A description of the major architectural elements of the project, including the relative paths to the main project files, the location of configuration files for linting, compilation, testing, and preferences. - A description of the checks run prior to check in, including any GitHub workflows, continuous integration builds, or other validation pipelines. - Document the steps so that the agent can replicate these itself. - Any explicit validation steps that the agent can consider to have further confidence in its changes. - Dependencies that aren't obvious from the layout or file structure. - Finally, fill in any remaining space with detailed lists of the following, in order of priority: the list of files in the repo root, the contents of the README, the contents of any key source files, the list of files in the next level down of directories, giving priority to the more structurally important and snippets of code from key source files, such as the one containing the main method. </ProjectLayout> </WhatToAdd> <StepsToFollow> - Perform a comprehensive inventory of the codebase. Search for and view: - README.md, CONTRIBUTING.md, and all other documentation files. - Search the codebase for build steps and indications of workarounds like 'HACK', 'TODO', etc. - All scripts, particularly those pertaining to build and repo or environment setup. - All build and actions pipelines. - All project files. - All configuration and linting files. - For each file: - think: are the contents or the existence of the file information that the coding agent will need to implement, build, test, validate, or demo a code change? - If yes: - Document the command or information in detail. - Explicitly indicate which commands work and which do not and the order in which commands should be run. - Document any errors encountered as well as the steps taken to workaround them. - Document any other steps or information that the agent can use to reduce time spent exploring or trying and failing to run bash commands. - Finally, explicitly instruct the agent to trust the instructions and only perform a search if the information in the instructions is incomplete or found to be in error. </StepsToFollow> - Document any errors encountered as well as the steps taken to work-around them.
-
Click Send now or press Return.
Copilot will start a new session, which will appear in the list below the prompt box. Copilot will create a draft pull request, write your custom instructions, push them to the branch, then add you as a reviewer when it has finished, triggering a notification.
Writing your own copilot-instructions.md
file
-
In the root of your repository, create a file named
.github/copilot-instructions.md
.Create the
.github
directory if it does not already exist. -
Add natural language instructions to the file, in Markdown format.
Whitespace between instructions is ignored, so the instructions can be written as a single paragraph, each on a new line, or separated by blank lines for legibility.
Tipp
The first time you create a pull request in a given repository with Copilot-Programmier-Agent, Copilot will leave a comment with a link to automatically generate custom instructions for the repository.
Creating path-specific custom instructions
Hinweis
Currently, on GitHub.com, path-specific custom instructions are only supported for Copilot-Programmier-Agent and Copilot Code Review.
-
Create the
.github/instructions
directory if it does not already exist. -
Create one or more
NAME.instructions.md
files, whereNAME
indicates the purpose of the instructions. The file name must end with.instructions.md
. -
At the start of the file, create a frontmatter block containing the
applyTo
keyword. Use glob syntax to specify what files or directories the instructions apply to.For example:
--- applyTo: "app/models/**/*.rb" ---
You can specify multiple patterns by separating them with commas. For example, to apply the instructions to all TypeScript files in the repository, you could use the following frontmatter block:
--- applyTo: "**/*.ts,**/*.tsx" ---
To apply the instructions to all files, use
applyTo: "**"
. -
Add your custom instructions in natural language, using Markdown format. Whitespace between instructions is ignored, so the instructions can be written as a single paragraph, each on a new line, or separated by blank lines for legibility.
Writing effective repository custom instructions
The instructions you add to your custom instruction file(s) should be short, self-contained statements that provide Copilot with relevant information to help it work in this repository. Because the instructions are sent with every chat message, they should be broadly applicable to most requests you will make in the context of the repository.
The exact structure you utilize for your instructions file(s) will vary by project and need, but the following guidelines provide a good starting point:
- Provide an overview of the project you're working on, including its purpose, goals, and any relevant background information.
- Include the folder structure of the repository, including any important directories or files that are relevant to the project.
- Specify the coding standards and conventions that should be followed, such as naming conventions, formatting rules, and best practices.
- Include any specific tools, libraries, or frameworks that are used in the project, along with any relevant version numbers or configurations.
The following instructions file(s) is an example of these practices in action:
# 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.
## Folder Structure
- `/src`: Contains the source code for the frontend.
- `/server`: Contains the source code for the Node.js backend.
- `/docs`: Contains documentation for the project, including API specifications and user guides.
## 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:
- Anweisungen zum Nutzen externer Ressourcen beim Generieren 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.
Verwendung benutzerdefinierter Repositoryanweisungen
Wenn du die Datei gespeichert hast, können die darin enthaltenen Anweisungen von Copilot Chat genutzt werden. Die vollständigen Anweisungen werden automatisch den Anfragen hinzugefügt, die du im Kontext dieses Repositorys an Copilot übermittelst. Sie werden beispielsweise dem Prompt hinzugefügt, den du an Copilot Chat übermittelst.
In der Vollbildansicht von Copilot Chat (github.com/copilot) kannst du eine Unterhaltung starten, die benutzerdefinierte Repositoryanweisungen verwendet, indem du das Repository hinzufügst, das die Anweisungen enthält.
Wenn benutzerdefinierte Repositoryanweisungen von Copilot Chat verwendet werden, wird die Anweisungsdatei als Verweis für die generierte Antwort hinzugefügt. Um herauszufinden, ob benutzerdefinierte Repositoryanweisungen verwendet wurden, erweitere die Liste der Verweise oben in einer Chatantwort im Chatbereich, und überprüfe, ob die .github/copilot-instructions.md
-Datei aufgeführt ist.
Du kannst auf die Referenz klicken, um die Datei zu öffnen.
Hinweis
- Multiple types of custom instructions can apply to a Copilot Chat conversation. Personal instructions take the highest priority, followed by repository instructions, with organization instructions prioritized last. However, all sets of relevant instructions are still combined and provided to Copilot Chat.
- Whenever possible, you should avoid providing conflicting sets of instructions. If you are concerned about response quality, you can also choose to temporarily disable repository instructions. See Hinzufügen benutzerdefinierter Repositoryanweisungen für GitHub Copilot.
Benutzerdefinierte Anweisungen werden nicht in der Chat-Ansicht oder dem Inlinechat angezeigt. Du kannst jedoch in der Referenzliste einer Antwort in der Chat-Ansicht nachsehen, ob sie von Copilot verwendet werden. Wenn dem Prompt, der an das Modell übermittelt wurde, benutzerdefinierte Anweisungen hinzugefügt wurden, dient die .github/copilot-instructions.md
-Datei als Referenz. Du kannst auf die Referenz klicken, um die Datei zu öffnen.
Benutzerdefinierte Anweisungen werden nicht in der Chat-Ansicht oder dem Inlinechat angezeigt. Du kannst jedoch in der Referenzliste einer Antwort in der Chat-Ansicht nachsehen, ob sie von Copilot verwendet werden. Wenn dem Prompt, der an das Modell übermittelt wurde, benutzerdefinierte Anweisungen hinzugefügt wurden, dient die .github/copilot-instructions.md
-Datei als Referenz. Du kannst auf die Referenz klicken, um die Datei zu öffnen.
Benutzerdefinierte Anweisungen werden nicht in der Chat-Ansicht oder dem Inlinechat angezeigt. Du kannst jedoch in der Referenzliste einer Antwort in der Chat-Ansicht nachsehen, ob sie von Copilot verwendet werden. Wenn dem Prompt, der an das Modell übermittelt wurde, benutzerdefinierte Anweisungen hinzugefügt wurden, dient die .github/copilot-instructions.md
-Datei als Referenz. Du kannst auf die Referenz klicken, um die Datei zu öffnen.
Benutzerdefinierte Anweisungen werden nicht in der Chat-Ansicht oder dem Inlinechat angezeigt. Du kannst jedoch in der Referenzliste einer Antwort in der Chat-Ansicht nachsehen, ob sie von Copilot verwendet werden. Wenn dem Prompt, der an das Modell übermittelt wurde, benutzerdefinierte Anweisungen hinzugefügt wurden, dient die .github/copilot-instructions.md
-Datei als Referenz. Du kannst auf die Referenz klicken, um die Datei zu öffnen.
Aktivieren oder Deaktivieren benutzerdefinierter Repositoryanweisungen
Du kannst auswählen, ob Copilot repositorybasierte benutzerdefinierte Anweisungen verwenden soll.
Aktivieren oder Deaktivieren benutzerdefinierter Anweisungen für Copilot Chat
Benutzerdefinierte Anweisungen sind standardmäßig für Copilot Chat aktiviert, sie können jedoch jederzeit deaktiviert oder erneut aktiviert werden. Dies gilt für deine eigene Verwendung von Copilot Chat und betrifft keine anderen Benutzenden.
-
Führe eine der folgenden Aktionen auf GitHub.com durch:
- Wechsle zu einem Repository mit einer Datei mit benutzerdefinierten Anweisungen, und öffne den Hilfechat.
- Wechsle zur immersiven Ansicht von Copilot Chat (github.com/copilot) und füge ein Repository an, das eine Datei mit benutzerdefinierten Anweisungen enthält.
-
Klicke im Chatbereich oben auf die Schaltfläche . Auf der immersiven Seite befindet sich die Schaltfläche oben rechts.
-
Klicke auf Disable custom instructions oder Enable custom instructions.
Hinweis
Dir werden diese Optionen nur im Kontext eines Repositorys angezeigt, das eine Datei mit benutzerdefinierten Anweisungen enthält.
Deine Wahl bleibt für alle Repositorys mit einer Datei mit benutzerdefinierten Anweisungen erhalten, bis du sie änderst.
Aktivieren oder Deaktivieren benutzerdefinierter Anweisungen für Copilot Code Review
Benutzerdefinierte Anweisungen sind für Copilot Code Review standardmäßig aktiviert. Du kannst sie aber in den Repositoryeinstellungen auf GitHub.com deaktivieren oder erneut aktivieren. Dies gilt für die Nutzung benutzerdefinierter Anweisungen durch Copilot für alle Reviews, die für dieses Repository durchgeführt werden.
- Klicke im Abschnitt „Code & automation“ der Randleiste auf Copilot und dann auf Code review.
- Aktiviere oder deaktiviere die Option „Use custom instructions when reviewing pull requests“ mithilfe der Umschaltfläche.
Aktivieren oder Deaktivieren benutzerdefinierter Repositoryanweisungen
Du kannst auswählen, ob Copilot repositorybasierte benutzerdefinierte Anweisungen verwenden soll.
Aktivieren oder Deaktivieren benutzerdefinierter Anweisungen für Copilot Chat
Benutzerdefinierte Anweisungen sind standardmäßig für Copilot Chat aktiviert, sie können jedoch jederzeit deaktiviert oder erneut aktiviert werden. Dies gilt für deine eigene Verwendung von Copilot Chat und betrifft keine anderen Benutzenden.
- Öffne den Einstellungs-Editor mit der Tastenkombination BEFEHL+, (Mac) bzw. STRG+, (Linux/Windows).
- Geben Sie im Suchfeld als Suchbegriff
instruction file
ein. - Aktiviere oder deaktiviere das Kontrollkästchen für Code Generation: Use Instruction Files.
Aktivieren oder Deaktivieren benutzerdefinierter Anweisungen für Copilot Code Review
Benutzerdefinierte Anweisungen sind für Copilot Code Review standardmäßig aktiviert. Du kannst sie aber in den Repositoryeinstellungen auf GitHub.com deaktivieren oder erneut aktivieren. Dies gilt für die Nutzung benutzerdefinierter Anweisungen durch Copilot für alle Reviews, die für dieses Repository durchgeführt werden.
- Klicke im Abschnitt „Code & automation“ der Randleiste auf Copilot und dann auf Code review.
- Aktiviere oder deaktiviere die Option „Use custom instructions when reviewing pull requests“ mithilfe der Umschaltfläche.
Aktivieren oder Deaktivieren benutzerdefinierter Repositoryanweisungen
Du kannst auswählen, ob Copilot repositorybasierte benutzerdefinierte Anweisungen verwenden soll.
Aktivieren oder Deaktivieren benutzerdefinierter Anweisungen für Copilot Chat
Benutzerdefinierte Anweisungen sind standardmäßig für Copilot Chat aktiviert, sie können jedoch jederzeit deaktiviert oder erneut aktiviert werden. Dies gilt für deine eigene Verwendung von Copilot Chat und betrifft keine anderen Benutzenden.
-
Klicke auf der Menüleiste von Visual Studio unter Extras auf Optionen.
-
Gib im Dialogfeld „Options“
custom instructions
in das Suchfeld ein, und klicke auf Copilot. -
Aktiviere oder deaktiviere das Kontrollkästchen für Enable custom instructions to be loaded from .github/copilot-instructions.md files and added to requests.
Aktivieren oder Deaktivieren benutzerdefinierter Anweisungen für Copilot Code Review
Benutzerdefinierte Anweisungen sind für Copilot Code Review standardmäßig aktiviert. Du kannst sie aber in den Repositoryeinstellungen auf GitHub.com deaktivieren oder erneut aktivieren. Dies gilt für die Nutzung benutzerdefinierter Anweisungen durch Copilot für alle Reviews, die für dieses Repository durchgeführt werden.
- Klicke im Abschnitt „Code & automation“ der Randleiste auf Copilot und dann auf Code review.
- Aktiviere oder deaktiviere die Option „Use custom instructions when reviewing pull requests“ mithilfe der Umschaltfläche.
Aktivieren und Verwenden von Promptdateien
Hinweis
- Copilot prompt files are in public preview and subject to change. Prompt files are only available in VS Code. See Informationen zum Anpassen der Antworten von GitHub Copilot Chat.
- For community-contributed examples of prompt files for specific languages and scenarios, see the Awesome GitHub Copilot Customizations repository.
Mithilfe von Promptdateien kannst du wiederverwendbare Promptanweisungen mit zusätzlichem Kontext erstellen und freigeben. Eine Promptdatei ist eine Markdowndatei, die in deinem Arbeitsbereich gespeichert ist und das vorhandene Format zum Schreiben von Prompts in Copilot Chat nachahmt (z. B. Rewrite #file:x.ts
). In deinem Arbeitsbereich können mehrere Promptdateien vorhanden sein, die jeweils einen Prompt für einen anderen Zweck definieren.
Aktivieren von Promptdateien
Um Promptdateien zu aktivieren, konfiguriere die Arbeitsbereichseinstellungen.
- Öffne die Befehlspalette, indem du STRG+UMSCHALT+P (Windows/Linux) bzw. BEFEHL+UMSCHALT+P (Mac) drückst.
- Gib „Open Workspace Settings (JSON)“ ein, und wähle die angezeigte Option aus.
- Füge in der
settings.json
-Datei"chat.promptFiles": true
hinzu, um den Ordner.github/prompts
als Speicherort für Promptdateien zu aktivieren. Dieser Ordner wird erstellt, wenn er noch nicht vorhanden ist.
Erstellen von Promptdateien
-
Öffne die Befehlspalette, indem du STRG+UMSCHALT+P (Windows/Linux) bzw. BEFEHL+UMSCHALT+P (Mac) drückst.
-
Gib „prompt“ ein, und wähle Chat: Create Prompt aus.
-
Gib einen Namen für die Promptdatei ein, aber lasse dabei die Erweiterung
.prompt.md
weg. Der Name kann alphanumerische Zeichen und Leerzeichen enthalten und sollte den Zweck des Prompts beschreiben, den die Datei enthalten soll. -
Schreibe die Promptanweisungen mithilfe der Markdown-Formatierung.
Du kannst auf andere Dateien im Arbeitsbereich verweisen, indem du Markdown-Links wie
[index](../../web/index.ts)
oder die#file:../../web/index.ts
-Syntax verwendest. Pfade sind relativ zur Promptdatei. Durch Verweisen auf andere Dateien kannst du zusätzlichen Kontext bereitstellen, z. B. API-Spezifikationen oder Produktdokumentation.
Verwenden von Promptdateien
-
Klicke unten in der Ansicht Copilot Chat auf das Symbol Attach context ().
-
Klicke im Dropdownmenü auf Prompt..., und wähle die gewünschte Promptdatei aus.
-
Füge optional zusätzliche Dateien an, einschließlich Promptdateien, um mehr Kontext bereitzustellen.
-
Gib optional zusätzliche Informationen in das Chatpromptfeld ein.
Ob das nötig ist oder nicht, hängt vom Inhalt der verwendeten Prompts ab.
-
Übermittle den Chatprompt.
Weitere Informationen zu Promptdateien findest du unter Benutzerdefinierte Anweisungen für GitHub Copilot in VS Code in der Dokumentation zu Visual Studio Code.