Поделиться через


Быстрый старт: создание и применение собственных навыков для модернизации GitHub Copilot

В этом кратком руководстве показано, как создавать и применять собственные пользовательские навыки при использовании GitHub Copilot модернизации.

Модернизация GitHub Copilot поддерживает создание пользовательских навыков для кодификации знаний вашей организации с целью обновления пользовательских библиотек и конфигураций, соблюдения стандартов кодирования и многого другого. Вы также можете скопировать задачи Майкрософт по умолчанию в пользовательские настройки, чтобы адаптировать их к вашим потребностям. Вы можете повторно использовать, поделиться и улучшить пользовательские навыки, чтобы повысить эффективность вашей команды.

Замечание

Если вы ранее использовали пользовательские задачи , хранящиеся в .github/appmod/custom-tasks/ проекта или Visual Studio Code пользовательских данных, расширение автоматически переносит их в новое .github/skills/ расположение проекта при первой загрузке.

Prerequisites

  • Учетная запись GitHub с активной подпиской на GitHub Copilot в рамках любого плана.
  • Одна из следующих сред разработки:
  • Java 21 или более поздней версии.
  • Maven или Gradle для создания проектов Java.

Замечание

Учетная запись Azure требуется только для развертывания ресурсов в Azure и не нужна при использовании GitHub Copilot для модернизации и внесения изменений в код.

Если вы используете Gradle, поддерживается только оболочка Gradle версии 5 или более поздней.

Язык для конкретного домена Kotlin (DSL) не поддерживается.

Функция My Skills еще не поддерживается для IntelliJ IDEA.

Создание собственного навыка

Чтобы создать пользовательский навык, выполните следующие действия.

Определение сведений о навыке

  1. На боковой панели Activity откройте область расширения GitHub Copilot modernization, наведите указатель мыши на раздел TASKS и выберите Создать пользовательский навык.

    Снимок экрана Visual Studio Code, где показано обновление GitHub Copilot с выделенной кнопкой

  2. Откроется SKILL.md файл. Заполните следующие поля. Полные спецификации формата навыков см. в спецификации "Навыки агента".

    • Имя навыка: описательный и дефисированный идентификатор навыка. Например, "Custom-skill-migrate-rabbitmq".
    • Описание навыка: краткое описание цели навыка. Например, "Миграция сообщений RabbitMQ в Служебная шина Azure для приложений Spring Boot".
    • Skill Content: подробные инструкции для Copilot во время миграции кода. Вы можете ссылаться на файлы из раздела "Ресурсы " по имени в этом поле. Например, "Вы являетесь помощником разработчика Spring Boot, следуйте guide.md, чтобы перейти с RabbitMQ на Служебная шина Azure".

Добавление ресурсов

Ресурсы предоставляют справочные знания, которые Copilot использует при использовании навыка. Выберите " Добавить ресурсы " и выберите тип ресурса:

  • Файлы: выберите отдельные файлы, содержащие инструкции по миграции, примеры конфигурации или другие справочные материалы. Чтобы включить дифф фиксации Git в качестве ресурса, выберите соответствующий файл диффа.

  • Папки: выберите папку, чтобы включить в нее все файлы в качестве ресурсов. Этот параметр полезен, если справочные знания охватывают несколько связанных файлов.

    Скриншот Visual Studio Code, на котором показан пользовательский навык модернизации GitHub Copilot с выделенной кнопкой

Выбранные файлы копируются в .github/skills/<skill-name>/ в вашем проекте. Файлы ресурсов и папки хранятся вместе с SKILL.md папкой навыка. Общий размер ресурса ограничен. Не забудьте ссылаться на эти файлы или папки по имени в поле Skill Content, чтобы Copilot знать, когда их использовать.

Сохранение навыка

После завершения всех полей и добавления ресурсов нажмите кнопку "Сохранить". Пользовательский навык отображается в разделе "Мои навыки ".

Поделитесь своим навыком

Поделитесь навыком с другими, скопировав его папку из вашего проекта.

  1. Скопируйте папку навыка, расположенную в разделе .github/skills/, и поделитесь этой папкой с предполагаемым получателем.

    Скриншот Visual Studio Code, на котором показано, как копировать папку навыка.

  2. На стороне получателя поместите папку .github/skills/ в корневой каталог проекта. Если такого каталога нет, создайте его.

  3. Выберите "Обновить" в области расширения. Навык появится в разделе "Мои навыки" , готовый к использованию.

Применение собственного навыка

Чтобы применить собственный навык, выполните следующие действия.

  1. Выберите "Выполнить" в нижней части SKILL.md файла или найдите навык в разделе "Мои навыки " и выберите "Запустить навык".

  2. Откроется окно чата Copilot в режиме агента и автоматически выполняет следующие действия:

    1. Создает plan.md и progress.md.
    2. Проверяет состояние системы управления версиями и выбирает новую ветвь для миграции.
    3. Выполняет миграцию кода.
    4. Выполняет проверки и исправления для сборки, модульных тестов, CVE, проверки согласованности и проверки полноты.
    5. Создает файл summary.md .
  3. Если агент приостанавливается для подтверждения или прерывается, введите "Продолжить ".

  4. После завершения всех шагов просмотрите изменения кода и нажмите кнопку "Сохранить в окне чата", чтобы подтвердить.

Скопировать в мои навыки

Если вы хотите настроить задачу Майкрософт, вы можете экспортировать ее в My Skills в качестве отправной точки и изменить ее в соответствии с вашими потребностями:

  1. В разделе TASKS найдите задачу Майкрософт, которую требуется настроить.

  2. Щелкните элемент правой кнопкой мыши и выберите "Копировать в мои навыки".

    Скриншот из Visual Studio Code, где показано копирование задачи Майкрософт в раздел

  3. Откроется новый SKILL.md файл, предварительно заполненный содержимым выбранного элемента. При необходимости измените поля "Имя навыка", "Описание", " Содержимое" и "Ресурсы ".

  4. Нажмите кнопку "Сохранить". Навык отображается в разделе "Мои навыки ".

Обновить или удалить собственный навык

В разделе "Мои навыки" щелкните правой кнопкой мыши навык, который вы хотите изменить, и выберите один из следующих вариантов:

  • Измените, чтобы обновить навык.
  • Удалите для удаления навыка.

Часто задаваемые вопросы

Если я вручную помещаю папку навыка в .github/skills/, распознает ли её расширение?

Да. Если поместить допустимую папку навыка, содержащую файл SKILL.md в корневом .github/skills/ каталоге проекта, расширение распознает его после нажатия кнопки "Обновить" в области расширения. Навык отображается в разделе "Мои навыки " панели задач , и вы можете запускать, редактировать или удалять его так же, как и любой другой пользовательский навык.

Однако в пользовательском интерфейсе расширения отображаются только файлы ресурсов, на которые явно ссылается SKILL.md. При использовании кнопки "Добавить ресурсы" расширение копирует выбранные файлы в папку навыка и добавляет запись ссылки в разделе SKILL.md, например:

**Resources:**
- file:///references.txt

Если вы вручную помещаете дополнительные файлы в папку с навыками, но не добавляете соответствующие записи ссылок, расширение не сможет их отображать. Чтобы файлы ресурсов отображались в пользовательском интерфейсе и доступны для Copilot, всегда добавляйте их с помощью кнопки Add Resources или вручную добавьте соответствующие записи ссылки в SKILL.md.

Следующий шаг

Предопределённые задачи для модернизации GitHub Copilot