Thanks to visit codestin.com
Credit goes to docs.github.com

Skip to main content

О GitHub Copilot плагинах

Плагины — это устанавливаемые пакеты, которые расширяются Copilot многоразовыми агентами, навыками, крючками и интеграциями.

Кто может использовать эту функцию?

GitHub Copilot CLI Доступна со всеми Copilot тарифными планами. Если вы получаете Copilot от организации, Copilot CLI политика должна быть включена в настройках организации.

Copilot cloud agent доступна для всех платных Copilot планов.

Агент доступен во всех репозиториях, хранящихся на GitHub, за исключением тех, которые принадлежат управляемые учетные записи пользователей и где он явно отключен.

GitHub Copilot app доступна для всех Copilot планов.
Sign up for Copilot

Плагины предоставляют возможность распространять пользовательскую Copilot функциональность. Подключаемый модуль можно использовать для добавления предварительно настроенного набора возможностейCopilot, включая Copilot CLICopilot cloud agent, и GitHub Copilot app.

Что такое подключаемый модуль?

  • Распространяемый пакет, расширяющий Copilotфункциональность .
  • Набор компонентов в одном устанавливаемом устройстве.

Что содержат плагины

Подключаемый модуль может содержать некоторые или все перечисленные ниже компоненты. Расположения этих компонентов зависят от формата подключаемого модуля:

  • Пользовательские агенты — специализированные AI-ассистенты (*.agent.md файлы в архиве agents/)
  • Навыки — Дискретные вызываемые возможности (подкаталоги навыков в skills/, содержащие SKILL.md файл)
  • Крючки — обработчики событий, которые перехватывают поведение агента ( hooks.json файл в корне плагина или в hooks/)
  • Конфигурации сервера MCP — интеграция протокола контекста модели
  • Конфигурации сервера LSP — интеграции с протоколом языка и сервера ( lsp.json файл в корне плагина или в .github/)

Форматы подключаемых модулей

Copilot поддерживает два формата подключаемых модулей:

  • Подключаемые модули агента 1.0 — это переносимый формат для совместного использования навыков и конфигураций сервера MCP между совместимыми клиентами. Чтобы использовать этот формат, задайте $schema для plugin.json``https://agent-plugins.org/schemas/1.0.0/plugin.schema.jsonпараметра in значение . Навыки обнаруживаются из skills/конфигурации сервера MCP в mcp.json корневом каталоге подключаемого модуля. Эти расположения нельзя настроить в манифесте. Выберите подключаемые модули агента 1.0, если вы хотите сделать навыки и серверы MCP переносимыми.
  • Устаревшие подключаемые Copilot модули не объявляют подключаемые $schemaмодули агента. Они используют существующие поля манифеста и поведение обнаружения компонентов, включая настраиваемые пути компонентов и конфигурацию MCP в .mcp.json, .github/mcp.jsonили поле манифеста mcpServers . Выберите устаревший формат, если требуется настраиваемый путь к компонентам или поддерживает существующий Copilotподключаемый модуль.

Для нового подключаемого модуля используйте подключаемые модули агента 1.0, если вам не требуются настраиваемые пути к компонентам. Используйте устаревший формат в основном для существующих устаревших подключаемых модулей.

Поддерживаются оба формата. Добавление $schema изменений, как Copilot интерпретирует манифест и обнаруживает компоненты. Подключаемые модули без $schema продолжения загрузки в качестве устаревших подключаемых модулей.

Как устроены плагины

Подключаемый модуль — это каталог с определенной структурой и файлом манифеста plugin.json . Для подключаемых модулей агента 1.0 требуется манифест в корневом каталоге подключаемого модуля. Устаревшие подключаемые модули поддерживают дополнительные расположения манифестов. Манифест предоставляет подключаемый модуль имя и метаданные. В зависимости от формата он также может указывать на компоненты. Наряду с манифестом каталог может содержать агенты, навыки, перехватчики, конфигурации сервера MCP и конфигурации сервера LSP.

Структура подключаемых модулей агента 1.0

Подключаемые модули агента 1.0 хранят навыки и серверы MCP в стандартных расположениях, чтобы совместимые клиенты могли их обнаружить. Другие компоненты, включая агенты, перехватчики, команды и серверы LSP, зависят от клиента. Copilot считывает эти компоненты из com.github.copilot каталога. Другие клиенты игнорируют этот каталог, поэтому один и тот же подключаемый модуль может объединять общие навыки и серверы MCP с Copilotкомпонентами с определенными компонентами.

Каталог подключаемых модулей агента 1.0 может выглядеть следующим образом:

my-plugin/
├── plugin.json               # Required manifest
├── skills/                   # Skills (optional)
│   └── deploy/
│       └── SKILL.md
├── mcp.json                  # MCP server config (optional)
└── com.github.copilot/       # Copilot components (optional)
    ├── agents/
    │   └── helper.agent.md
    ├── commands/
    ├── rules/
    ├── hooks/
    │   └── hooks.json
    └── lsp.json

Манифест должен включать подключаемые модули агента 1.0 $schema. Поддерживаемые поля манифеста верхнего уровня, требования к имени и расположения компонентов см. в полях манифеста подключаемого модуля агента 1.0.

Устаревшая структура подключаемого модуля

Устаревший каталог подключаемого Copilot модуля может выглядеть следующим образом:

my-plugin/
├── plugin.json           # Required manifest
├── agents/               # Custom agents (optional)
│   └── helper.agent.md
├── skills/               # Skills (optional)
│   └── deploy/
│       └── SKILL.md
├── hooks.json            # Hook configuration (optional)
├── .mcp.json             # MCP server config (optional)
└── lsp.json              # LSP server config (optional)

Полный набор полей, которые вы можете включить в манифест, см. Ссылка на плагин GitHub Copilot CLI. Пошаговые рекомендации по созданию плагина смотрите Создание плагина для GitHub Copilot CLI.

Зачем использовать плагины?

Плагины предоставляют следующие преимущества:

  • Повторное использование между проектами
  • Стандартизация Copilot конфигурации команды
  • Делитесь экспертизой в области (например, предоставляя навыки эксперта по Rails или Kubernetes)
  • Инкапсулировать сложные настройки сервера MCP

Где можно найти плагины?

Вы можете установить плагины из:

  • Рынок
  • Хранилище
  • Местная тропа

Маркетплейс — это место, где разработчики могут публиковать, обнаружать, устанавливать и управлять плагинами. Это немного похоже на магазин приложений — только для плагинов.

Примеры маркетплейсов включают:

То, как вы устанавливаете плагин, зависит от того, каким клиентом вы используете:

  • В Copilot CLI, вы можете устанавливать плагины обязательно с помощью copilot plugin install команды или /plugin install команды slash, либо декларативно, добавляя плагин в enabledPlugins поле либо пользовательского ~/.copilot/settings.json или .github/copilot/settings.json репозитория. См . раздел AUTOTITLE.
  • В Copilot cloud agent, вы устанавливаете плагины декларативно, добавляя их в enabledPlugins поле файла .github/copilot/settings.json репозитория. Чтобы установить плагины с маркетплейса, который по умолчанию не зарегистрирован, можно добавить маркетплейс в extraKnownMarketplaces поле в том же файле.
  • GitHub Copilot appВ разделе "Настройка" щелкните "Настроить", а затем щелкните "Подключаемые модули", чтобы просмотреть marketplaces и установить подключаемые модули.

Корпоративные администраторы могут определять стандарты плагинов, которые применяются к пользователям тарифного плана Copilot предприятия, включая указание дополнительных маркетплейсов и автоматически устанавливаемых плагинов. См . раздел AUTOTITLE.

Как работают маркетплейсы плагинов

Маркетплейс плагинов — это реестр плагинов, с которых можно просматривать и устанавливать. Маркетплейс может быть размещён в репозитории на GitHub.comлюбом другом онлайн-сервисе хостинга Git или в вашей локальной или общей файловой системе.

Маркетплейс определяется файлом marketplace.json , который предоставляет метаданные о маркетплейсе и перечисляет доступные плагины. Каждая запись в массиве plugins маркетплейса описывает плагин — включая его название, описание, версию и путь к каталогу плагина.

Поскольку плагины на маркетплейсе имеют версии, маркетплейсы позволяют легко их находить, устанавливать и обновлять, а также делиться ими в команде. Пошаговые рекомендации по созданию маркетплейса смотрите Создание маркетплейса плагинов для GitHub Copilot CLI.

Плагины по сравнению с ручной конфигурацией

Любые функции, которые можно добавить с помощью плагина, можно также настраивать Copilot вручную — например, добавляя пользовательские профили агентов или MCP-серверы. Однако плагины дают несколько преимуществ по сравнению с ручной конфигурацией:

ФункцияРучная настройка в репозиторииПлагин
ОбъемОдиночный репозиторийЛюбой проект
SharingКопирование вручнуюКоманда установки или enabledPlugins запись
VersioningИстория гитаВерсии на рынке
DiscoveryПоиск репозиториевПросмотр на рынке

Дополнительные материалы