Skip to main content

Добавление навыков агента для GitHub Copilot

Вы можете изменять Copilotповедение и способности , когда он работает на конкретных задачах.

Примечание.

Навыки агента работают с Copilot облачный агент, и GitHub Copilot CLIв режиме агента в Visual Studio Code.

Навыки агента — это папки с инструкциями, скриптами и ресурсами, которые Copilot могут загружаться по мере необходимости, чтобы повысить их производительность в специализированных задачах. Дополнительные сведения см. в разделе О навыках работы агентом.

Создание и добавление навыка

Чтобы создать навык агента, вы пишете SKILL.md файл и, по желанию, другие ресурсы, такие как дополнительные файлы Markdown или скрипты, на которые вы ссылаетесь в SKILL.md инструкциях.

  1. Если вы ещё этого не сделали, создайте skills каталог в одном из следующих адресов. Именно здесь вы найдёте свой навык и все остальные, которые захотите создать в будущем.

    Для проектных навыков, специфичных для одного репозитория, создайте в репозитории .github/skills, .claude/skillsили .agents/skills каталог.

    Для личных навыков, которые используются между проектами, создайте ~/.copilot/skills, ~/.claude/skillsили ~/.agents/skills каталог в вашем местном домашнем каталоге.

  2. Внутри skills каталога создайте подкаталог для вашего нового навыка. У каждого навыка должна быть своя собственная папка (например, .github/skills/webapp-testing).

    Названия подкаталогов навыков должны быть строчными и использовать дефисы для пробелов.

  3. В подкаталоге навыков создайте SKILL.md файл с инструкциями к вашему навыку.

    Внимание

    Файлы навыков должны быть названы SKILL.md.

           `SKILL.md` файлы — это файлы Markdown с YAML frontmatter. В самом простом виде они включают в себя:
    
    • Титульный лист YAML
      • имя (обязательно): уникальный идентификатор навыка. Это, должно быть, строчная буква, с дефисами для пробелов. Обычно это совпадает с названием каталога навыка.
      • Описание (обязательно): Описание того, что делает навык и когда Copilot его следует использовать.
      • лицензия (по желанию): описание лицензии, применяемой к данному навыку.
    • Текст Markdown с инструкциями, примерами и рекомендациями, которым Copilot следует следовать.
  4. По желанию добавьте скрипты, примеры или другие ресурсы в каталог ваших навыков.

    Для получения дополнительной информации см. раздел «Включение навыка для запуска скрипта».

Пример файла SKILL.md

Для проектного навыка этот файл будет находиться в .github/skills/github-actions-failure-debugging каталоге вашего репозитория.

Для личного навыка этот файл должен находиться в каталоге ~/.copilot/skills/github-actions-failure-debugging .

Markdown
---
name: github-actions-failure-debugging
description: Guide for debugging failing GitHub Actions workflows. Use this when asked to debug failing GitHub Actions workflows.
---

To debug failing GitHub Actions workflows in a pull request, follow this process, using tools provided from the GitHub MCP Server:

1. Use the `list_workflow_runs` tool to look up recent workflow runs for the pull request and their status
2. Use the `summarize_job_log_failures` tool to get an AI summary of the logs for failed jobs, to understand what went wrong without filling your context windows with thousands of lines of logs
3. If you still need more information, use the `get_job_logs` or `get_workflow_run_logs` tool to get the full, detailed failure logs
4. Try to reproduce the failure yourself in your own environment.
5. Fix the failing build. If you were able to reproduce the failure yourself, make sure it is fixed before committing your changes.

Включение навыка для запуска скрипта

При вызове навыка Copilot автоматически находит все файлы в каталоге навыка и делает их доступными вместе с инструкциями навыка. Это значит, что вы можете включать скрипты или другие ресурсы в каталог навыков и ссылаться на них в инструкции SKILL.md .

Чтобы создать навык, который запускает скрипт:

  1.        **Добавьте скрипт в каталог навыков.** Например, навык преобразования изображений SVG в PNG может иметь следующую структуру.
    
    .github/skills/image-convert/
    ├── SKILL.md
    └── convert-svg-to-png.sh
    
  2.        **По желанию заранее одобрить инструменты, необходимые навыку.** В вашем `SKILL.md` фронтматтере вы можете использовать `allowed-tools` поле для перечисления инструментов Copilot , которые вы можете использовать, без каждого подтверждения. Если инструмент отсутствует в `allowed-tools` поле, Copilot перед использованием вас запросит разрешение.
    
    ---
    name: image-convert
    description: Converts SVG images to PNG format. Use when asked to convert SVG files.
    allowed-tools: shell
    ---
    

    Предупреждение

    Одобряйте инструменты OR shell``bash только если вы изучили этот навык и все ссылающиеся скрипты и полностью доверяете их источнику. Предварительное одобрение shell или bash удаление этапа подтверждения для выполнения терминальных команд может позволить навыкам, управляемым злоумышленниками, или инъекциям подсказок выполнять произвольные команды в вашей среде. Если сомневаетесь, опустите shell и bash от allowed-toolsCopilot , чтобы запросить ваше явное подтверждение перед запуском команд терминала.

  3.        **Напишите инструкции, которые объясняют Copilot , как использовать скрипт.** В теле Markdown `SKILL.md`опишите, когда и как запускать скрипт.
    
    When asked to convert an SVG to PNG, run the `convert-svg-to-png.sh` script
    from this skill's base directory, passing the input SVG file path as the
    first argument.
    

Добавление навыка, который создал кто-то другой

Помимо создания собственных навыков, вы также можете добавить навыки, которые создали другие люди.

Совет

Вы также можете использовать gh skillGitHub CLI In для поиска, установки, обновления и публикации навыков агента. Дополнительные сведения см. в разделе Добавление навыков агента для GitHub Copilot.

  1. Скачайте каталог навыков (то есть каталог, содержащий SKILL.md файл и, по желанию, другие файлы и подкаталоги).

    Например, скачайте навык из репозитория Awesome GitHub Copilot : https://awesome-copilot.github.com/skills/.

  2. Если вы скачали .zip файл, распакайте его.

  3. Переместите каталог навыков в нужное место:

    • Для проектных навыков, специфичных для одного репозитория: .github/skills, .claude/skills, или .agents/skills в вашем репозитории.

    • Для личных навыков, разделяйте их между проектами: ~/.copilot/skills, ~/.claude/skills, или ~/.agents/skills в вашем местном домашнем каталоге.

Управленческие навыки с GitHub CLI

Примечание.

          `gh skill` находится в public preview процессе и может измениться. Чтобы воспользоваться им, обновите GitHub CLI до версии 2.90.0 или выше.

Вы можете использовать gh skill команду GitHub CLI входа для обнаружения, установки, обновления и публикации навыков агента из GitHub репозиториев.

Полный список gh skill подкоманд можно найти gh skill --help в разделе руководства.gh skillGitHub CLI

Навыки установки

Вы можете искать навыки, просматривать их и устанавливать из GitHub репозиториев.

Предупреждение

Навыки не проверяются и GitHub могут содержать инъекции подсказок, скрытые инструкции или вредоносные скрипты. Всегда проверяйте содержимое навыка перед установкой с помощью gh skill preview.

  1. Ищите навыки по темам:

    gh skill search TOPIC
    
  2. Просмотрите навык, чтобы ознакомиться с его содержимым перед установкой. Это отображает SKILL.md навыки и дерево файлов в вашем терминале без установки ничего:

    gh skill preview OWNER/REPOSITORY SKILL
    
  3. Установите навык. Вы можете запускать gh skill install без аргументов для полностью интерактивного потока или указать репозиторий для интерактивного просмотра его навыков:

    gh skill install OWNER/REPOSITORY
    

    Чтобы установить конкретный навык напрямую:

    gh skill install OWNER/REPOSITORY SKILL
    

    Например, чтобы установить навык из github/awesome-copilot репозитория:

    Shell
    gh skill install github/awesome-copilot documentation-writer
    

    Вы можете установить конкретную версию с помощью @TAG или @SHA:

    Shell
    gh skill install github/awesome-copilot documentation-writer@v1.2.0
    

    Чтобы заблокировать навык в определённой версии (или зафиксировать SHA) так, чтобы он пропускался во время обновлений, используйте --pin:

    Shell
    gh skill install github/awesome-copilot documentation-writer --pin v1.2.0
    

    Примечание.

           `@VERSION` Синтаксис и `--pin` флаг взаимоисключают. Используйте либо одно, либо другое, а не оба.
    

    Чтобы установить навык для конкретного хоста агента, используйте --agent флаг. Для управления областью установки используйте --scope:

    Shell
    gh skill install github/awesome-copilot documentation-writer --agent claude-code --scope user
    

Навыки автоматически устанавливаются в правильный каталог для хоста вашего агента. По умолчанию навыки устанавливаются в Copilot рамках проекта.

Обновление навыков

Когда вы устанавливаете навык с gh skill, метаданные происхождения записываются на фронтматтер SKILL.md навыка, включая исходный репозиторий, ссылку и SHA дерева. Команда использует эти метаданные для проверки изменений в gh skill update верхней части потока.

Чтобы интерактивно проверять обновления:

gh skill update

Чтобы обновить конкретный навык:

gh skill update SKILL

Чтобы обновить все установленные навыки без подсказки:

gh skill update --all

Закреплённые навыки пропускаются во время обновлений. Чтобы обновить закреплённый навык, переустановите его с новым --pin значением.

Издательские навыки

Если вы ведёте хранилище навыков, вы можете проверить и опубликовать свои навыки с GitHub CLIпомощью .

Чтобы проверить свои навыки по спецификации Agent Skills и проверить удалённые настройки, такие как защита тегов, секретное сканирование и сканирование кода, без публикации, используйте --dry-run:

gh skill publish --dry-run

Чтобы автоматически исправить проблемы с метаданными в ваших файлах навыков, используйте --fix. Это не публикует ваши навыки:

gh skill publish --fix

Чтобы подтвердить и опубликовать свои навыки:

gh skill publish

Как Copilot используются навыки агента

При выполнении задач Copilot решает, когда использовать ваши навыки, исходя из вашего запроса и описания навыка.

Когда Copilot решает использовать навык, файл SKILL.md будет введён в контекст агента, давая агенту доступ к вашим инструкциям. Затем он может следовать этим инструкциям и использовать любые скрипты или примеры, которые вы могли включить в каталог навыка.

Навыки против пользовательских инструкций

Вы можете использовать как навыки, так и пользовательские инструкции, чтобы обучить Copilot работе в вашем репозитории и выполнении конкретных задач.

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

Чтобы узнать больше о пользовательских инструкциях репозитория, смотрите Добавление пользовательских инструкций репозитория для GitHub Copilot.