Настройка ответов чата GitHub Copilot
GitHub Copilot Chat может создавать ответы и код, соответствующие вашим рекомендациям по написанию кода и требованиям проекта при указании правильного контекста. Вместо многократного добавления этих сведений в каждом запросе чата вы можете хранить этот контекст в файлах и автоматически включать их в каждый запрос чата.
Существует три основных способа настройки ответов ИИ в Visual Studio Code:
Пользовательские инструкции. Определение общих рекомендаций для задач, таких как создание кода, выполнение проверок кода или создание сообщений фиксации. В этих документах описывается, как должны выполняться задачи, и указываются методики написания кода, предпочитаемые технологии, правила безопасности или форматы сообщений коммитов.
Файлы запроса: определение повторно используемых запросов для распространенных задач. Эти автономные запросы описывают, что необходимо сделать, и могут включать компоненты шаблонов, выполнение проверок кода, создание пошаговых руководств или планы реализации.
Настраиваемые режимы чата: определите, как работает чат, какие инструменты он может использовать, и как он взаимодействует с базой кода. Примеры включают режимы планирования с доступом только для чтения, режимы исследования, которые обращаются к внешним ресурсам или режимам конкретной роли, таким как интерфейсная разработка.
Пользовательские инструкции
Пользовательские инструкции позволяют описать рекомендации по получению ответов, соответствующих определенным методикам написания кода и стеку технологий. Вместо того, чтобы вручную включить этот контекст в каждый запрос чата, пользовательские инструкции автоматически включают эти сведения с каждым запросом чата.
Note
Пользовательские инструкции не учитываются для завершения кода.
Типы пользовательских инструкций
Visual Studio Code поддерживает три способа определения пользовательских инструкций:
| Type | Description | Варианты использования |
|---|---|---|
.github/copilot-instructions.md |
Единый файл Markdown в рабочей области, автоматически включаемый во все запросы, поддержка разных редакторов. | Общие методики написания кода, предпочитаемые технологии, требования на уровне проекта. |
.instructions.md files |
Несколько файлов Markdown с поддержкой шаблона glob, с возможностью хранения в рабочей области или профиле пользователя. | Инструкции для конкретной задачи, детализированный контроль при применении инструкций. |
| Параметры Visual Studio Code | Инструкции в параметрах пользователя или рабочей области для определенных сценариев. | Создание кода, создание тестов, фиксация сообщений, проверки кода, описания PR. |
Эти подходы можно объединить, но избежать конфликтов инструкций, так как приоритет не применяется.
Примеры пользовательских инструкций
Общие рекомендации по программированию:
---
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 и React:
---
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.
Использование файла .github/copilot-instructions.md
Сохраните пользовательские инструкции в файле в корневом .github/copilot-instructions.md каталоге рабочей области, чтобы описать методики написания кода, предпочитаемые технологии и требования к проекту. Эти инструкции применяются только к рабочей области и автоматически включаются в каждый запрос чата.
Действия по настройке:
- Задайте для параметра
github.copilot.chat.codeGeneration.useInstructionFilesзначениеtrue. - Создайте
.github/copilot-instructions.mdв корневом каталоге рабочей области. - Описание инструкций с использованием естественного языка и формата Markdown.
Note
Этот файл работает в Visual Studio Code, Visual Studio и GitHub.com.
Использование файлов instructions.md
Создайте несколько .instructions.md файлов для определенных задач, языков программирования, платформ или типов проектов. Их можно применять автоматически на основе шаблонов файлов или вручную прикрепляться к запросам чата.
Расположения файлов:
-
Файлы рабочей области: хранящиеся в
.github/instructionsпапке, доступные только в рабочей области. - Пользовательские файлы: Хранящиеся в профиле Visual Studio Code, доступные в нескольких рабочих областях и синхронизированные с помощью синхронизации параметров.
Структура файлов:
---
description: "Brief description of the instructions file"
applyTo: "**/*.ts,**/*.tsx" # Glob pattern for automatic application
---
# Instructions content in Markdown format
Создание и использование файлов инструкций:
- Запустите
Chat: New Instructions Fileиз палитры команд. - Выберите рабочую область или расположение пользователя.
- Введите имя и инструкции автора в Markdown.
- Используется
Chat: Configure Instructionsдля редактирования существующих файлов.
Вложение вручную:
- В представлении чата: добавление инструкции по контексту >
- Палитра команд:
Chat: Attach Instructions
Автоматическое приложение: использование applyTo метаданных с глоб-шаблонами (** для всех запросов, для конкретных запросов)
Указание пользовательских инструкций в параметрах
Настройте пользовательские инструкции в параметрах Visual Studio Code для определенных сценариев:
| Scenario | Setting |
|---|---|
| Создание кода | github.copilot.chat.codeGeneration.instructions |
| Создание тестов | github.copilot.chat.testGeneration.instructions |
| проверка кода; | github.copilot.chat.reviewSelection.instructions |
| Фиксация сообщений | github.copilot.chat.commitMessageGeneration.instructions |
| Заголовки и описания pr | github.copilot.chat.pullRequestDescriptionGeneration.instructions |
Определите инструкции в виде текста или ссылки на внешние файлы:
"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"
}
]
Рекомендации по пользовательским инструкциям
- Будьте краткими: каждая инструкция должна быть одной простой инструкцией.
- Избегайте внешних ссылок: не ссылайтесь на внешние стандарты кодирования или ресурсы.
- Упорядочение по разделу: разделение инструкций на несколько файлов для лучшей организации.
- Включение общего доступа для команды: Храните инструкции в файлах с контролем версий для совместной работы команды.
-
Используйте целевое приложение: использование
applyToсвойства для инструкций для конкретного файла. - Эффективно использовать ссылку: ссылки на пользовательские инструкции в файлах запроса, чтобы избежать дублирования.
Summary
Пользовательские инструкции в чате GitHub Copilot позволяют определять методики написания кода, предпочитаемые технологии и требования к проекту, которые автоматически включаются в каждый запрос чата. С помощью файлов .github/copilot-instructions.md, файлов .instructions.md или настроек Visual Studio Code можно убедиться, что ответы, сгенерированные ИИ, соответствуют вашим стандартам кодирования и потребностям проекта. Этот подход повышает качество и актуальность помощи искусственного интеллекта при сохранении контроля над процессом написания кода.