Skip to main content

GitHub Copilot CLI プラグイン リファレンス

CLI プラグインのコマンドと構成の詳細を確認します。

メモ

ターミナルで copilot plugin [SUBCOMMAND] --help を入力すると、プラグインの使用に関するヘルプが表示されます。

CLI コマンド

ターミナルで次のコマンドを使用して、Copilot CLI のプラグインを管理できます。

CommandDescription
copilot plugin install SPECIFICATIONプラグインをインストールします。 以下のコマンドについては、プラグインの仕様install参照してください。
copilot plugin uninstall NAMEプラグインを削除する
copilot plugin listインストールされているプラグインを一覧表示する
copilot plugin update NAMEプラグインを更新する
copilot plugin update --allインストールされているすべてのプラグインを更新する
copilot plugin disable NAMEプラグインをアンインストールせずに一時的に無効にする
copilot plugin enable NAME無効になっているプラグインを再度有効にする
copilot plugin marketplace add SPECIFICATIONマーケットプレースを登録する
copilot plugin marketplace list登録されているマーケットプレースを一覧表示する
copilot plugin marketplace browse NAMEMarketplace プラグインを参照する
copilot plugin marketplace remove NAMEマーケットプレースの登録を解除する

          `install` コマンドのプラグイン仕様
FormatDescription
Marketplaceplugin@marketplace登録済みマーケットプレースからのプラグイン
GitHubOWNER/REPOGitHub リポジトリのルート
GitHub サブディレクトリOWNER/REPO:PATH/TO/PLUGINリポジトリ内のサブディレクトリ
Git URLhttps://github.com/o/r.git任意の Git URL
ローカル パス
          `./my-plugin` または `/abs/path`    | ローカル ディレクトリ |

plugin.json

すべてのプラグインは、少なくともプラグインディレクトリのルートにある plugin.json という名前のマニフェストファイルを含むプラグインディレクトリで構成されています。 「GitHub Copilot CLI(コマンドラインインターフェース) のプラグインの作成」を参照してください。

必須フィール���

フィールドタイプDescription
name文字列Kebab-case プラグイン名 (文字、数字、ハイフンのみ)。 最大 64 文字。

省略可能なメタデータ フィールド

フィールドタイプDescription
description文字列簡単な説明。 最大 1024 文字。
version文字列セマンティック バージョン (例: 1.0.0)。
authorオブジェクト
          `name` (必須)、 `email` (省略可能)、 `url` (省略可能)。 |

| homepage | 文字列 | プラグインのホームページ URL。 | | repository | 文字列 | ソース リポジトリの URL。 | | license | 文字列 | ライセンス識別子 (例: MIT)。 | | keywords | string[] | キーワードを検索します。 | | category | 文字列 | プラグイン カテゴリ。 | | tags | string[] | その他のタグ。 |

コンポーネント パス フィールド

これらは、プラグインのコンポーネントを見つける場所を CLI に指示します。 すべて省略可能です。 省略した場合、CLI では既定の規則が使用されます。

フィールドタイプ既定値Description
agentsstring | string[]agents/エージェント ディレクトリ (.agent.md ファイル) へのパス。
skillsstring | string[]skills/スキル ディレクトリ (SKILL.md ファイル) へのパス。
commandsstring | string[]コマンド ディレクトリへのパス。
hooksstring | オブジェクトhooks 構成ファイルまたはインライン フック オブジェクトへのパス。
mcpServersstring | オブジェクトMCP 構成ファイル (例: .mcp.json)、またはインライン サーバー定義へのパス。
lspServersstring | オブジェクトLSP 構成ファイルまたはインライン サーバー定義へのパス。

          `plugin.json` ファイルの例
JSON
{
  "name": "my-dev-tools",
  "description": "React development utilities",
  "version": "1.2.0",
  "author": {
    "name": "Jane Doe",
    "email": "jane@example.com"
  },
  "license": "MIT",
  "keywords": ["react", "frontend"],
  "agents": "agents/",
  "skills": ["skills/", "extra-skills/"],
  "hooks": "hooks.json",
  "mcpServers": ".mcp.json"
}

marketplace.json

          `marketplace.json` ファイルを作成してリポジトリの `.github/plugin/` ディレクトリに保存すると、人々がプラグインを発見してインストールするのに利用できるプラグインマーケットプレースを作成できます。 
          `marketplace.json` ファイルをローカル ファイル システムに格納することもできます。 たとえば、ファイルを `/PATH/TO/my-marketplace/.github/plugin/marketplace.json` として保存すると、次のコマンドを使用して CLI に追加できます。
copilot plugin marketplace add /PATH/TO/my-marketplace

メモ

Copilot CLI は、marketplace.json ディレクトリ内の.claude-plugin/ ファイルも検索します。

詳しくは、「GitHub Copilot CLI(コマンドラインインターフェース) のプラグイン マーケットプレースの作成」をご覧ください。

          `marketplace.json` ファイルの例
JSON
{
  "name": "my-marketplace",
  "owner": {
    "name": "Your Organization",
    "email": "plugins@example.com"
  },
  "metadata": {
    "description": "Curated plugins for our team",
    "version": "1.0.0"
  },
  "plugins": [
    {
      "name": "frontend-design",
      "description": "Create a professional-looking GUI ...",
      "version": "2.1.0",
      "source": "./plugins/frontend-design"
    },
    {
      "name": "security-checks",
      "description": "Check for potential security vulnerabilities ...",
      "version": "1.3.0",
      "source": "./plugins/security-checks"
    }
  ]
}

メモ

各プラグインの source フィールドの値は、リポジトリのルートを基準としたプラグインのディレクトリへのパスです。 パスの先頭で ./ を使用する必要はありません。 たとえば、"./plugins/plugin-name""plugins/plugin-name" は同じディレクトリに解決されます。

          `marketplace.json` フィールド

最上位レベルのフィールド

フィールドタイプ必須Description
name文字列イエスKebab-case のマーケットプレース名。 最大 64 文字。
ownerオブジェクトイエス
          `{ name, email? }` — マーケットプレースの所有者情報。 |

| plugins | アレイ | イエス | プラグイン エントリの一覧 (下の表を参照)。 | | metadata | オブジェクト | いいえ | { description?, version?, pluginRoot? } |

プラグインエントリフィールド( plugins 配列内のオブジェクト)

フィールドタイプ必須Description
name文字列イエスKebab-case プラグイン名。 最大 64 文字。
sourcestring | オブジェクトイエスプラグインをフェッチする場所 (相対パス、GitHub、または URL)。
description文字列いいえプラグインの説明。 最大 1024 文字。
version文字列いいえプラグインのバージョン。
authorオブジェクトいいえ{ name, email?, url? }
homepage文字列いいえプラグインの��ームページ URL。
repository文字列いいえソース リポジトリの URL。
license文字列いいえライセンス識別子。
keywordsstring[]いいえキーワードを検索します。
category文字列いいえプラグイン カテゴリ。
tagsstring[]いいえその他のタグ。
commandsstring | string[]いいえコマンド ディレクトリへのパス。
agentsstring | string[]いいえエージェント ディレクトリへのパス(複数可)。
skillsstring | string[]いいえスキル ディレクトリへのパス。
hooksstring | オブジェクトいいえフック構成またはインラインフックオブジェクトへのパス。
mcpServersstring | オブジェクトいいえMCP 構成またはインライン サーバー定義へのパス。
lspServersstring | オブジェクトいいえLSP 構成またはインライン サーバー定義へのパス。
strictブーリアンいいえ
          `true` (既定) の場合、プラグインは完全なスキーマと検証規則に準拠している必要があります。 
          `false`場合は、緩やかな検証が使用されるため、特に直接インストールやレガシ プラグインの場合は柔軟性が向上します。 |

ファイルの場所

Item経路
インストールされているプラグイン
          `~/.copilot/state/installed-plugins/MARKETPLACE/PLUGIN-NAME` (Marketplace 経由でインストール)、 `~/.copilot/state/installed-plugins/PLUGIN-NAME` (直接インストール) |

| Marketplace キャッシュ | ~/.copilot/state/marketplace-cache/ | | プラグイン マニフェスト | plugin.json.github/plugin/plugin.json、または .claude-plugin/plugin.json | | Marketplace マニフェスト | .github/plugin/marketplace.json または .claude-plugin/marketplace.json | | Agents | agents/ (既定、マニフェストでオーバーライド可能) | | Skills | skills/ (既定、マニフェストでオーバーライド可能) | | Hooks の設定 | hooks.json または hooks/hooks.json | | MCP 設定 | .mcp.json または .github/mcp.json | | LSP 構成 | lsp.json または .github/lsp.json |

読み込みの順序と優先順位

複数のプラグインをインストールすると、一部のカスタム エージェント、スキル、MCP サーバー、または MCP サーバー経由で提供されるツールの名前が重複している可能性があります。 この状況では、優先順位に基づいて、使用するコンポーネントが CLI によって決定されます。

  •         **エージェントとスキル** では、最初に見つかったものが優先されます。
    

    インストールするプラグインと同じ名前または ID を持つプロジェクト レベルのカスタム エージェントまたはスキルがある場合、プラグインのエージェントまたはスキルは自動的に無視されます。 プラグインは、プロジェクト レベルまたは個人用の構成をオーバーライドできません。 カスタム エージェントは、ファイル名から派生した ID を使用して重複除去されます (たとえば、ファイル名が reviewer.agent.md の場合、エージェント ID は reviewer)。 スキルは、 SKILL.md ファイル内の名前フィールドによって重複除去されます。

  •         **MCP サーバー** では、最終優先優先順位が使用されます。
    

    既にインストールした MCP サーバーと同じサーバー名を持つ MCP サーバーを定義するプラグインをインストールすると、プラグインの定義が優先されます。 --additional-mcp-config コマンドライン オプションを使用すると、プラグインを使用してインストールされた同じ名前の MCP サーバー構成をオーバーライドできます。

  •         **組み込みのツールとエージェント** は常に存在し、ユーザー定義コンポーネントによってオーバーライドすることはできません。
    

次の図は、読み込みの順序と優先順位の規則を示しています。

┌─────────────────────────────────────────────────────────┐
│  BUILT-IN - HARDCODED, ALWAYS PRESENT                   │
│  • tools: bash, view, apply_patch, glob, rg, task, ...  │
│  • agents: explore, task, code-review, general-purpose  │
└────────────────────────┬────────────────────────────────┘
                         │
  ┌──────────────────────▼──────────────────────────────────────────────┐
  │  CUSTOM AGENTS - FIRST LOADED IS USED (dedup by ID)                 │
  │  1. ~/.copilot/agents/           (user, .github convention)         │
  │  2. <project>/.github/agents/    (project)                          │
  │  3. <parents>/.github/agents/    (inherited, monorepo)              │
  │  4. ~/.claude/agents/            (user, .claude convention)         │
  │  5. <project>/.claude/agents/    (project)                          │
  │  6. <parents>/.claude/agents/    (inherited, monorepo)              │
  │  7. PLUGIN: agents/ dirs         (plugin, by install order)         │
  │  8. Remote org/enterprise agents (remote, via API)                  │
  └──────────────────────┬──────────────────────────────────────────────┘
                         │
  ┌──────────────────────▼──────────────────────────────────────────────┐
  │  AGENT SKILLS - FIRST LOADED IS USED (dedup by name)                │
  │  1. <project>/.github/skills/        (project)                      │
  │  2. <project>/.agents/skills/        (project)                      │
  │  3. <project>/.claude/skills/        (project)                      │
  │  4. <parents>/.github/skills/ etc.   (inherited)                    │
  │  5. ~/.copilot/skills/               (personal-copilot)             │
  │  6. ~/.claude/skills/                (personal-claude)              │
  │  7. PLUGIN: skills/ dirs             (plugin)                       │
  │  8. COPILOT_SKILLS_DIRS env + config (custom)                       │
  │  --- then commands (.claude/commands/), skills override commands ---│
  └──────────────────────┬──────────────────────────────────────────────┘
                         │
  ┌──────────────────────▼──────────────────────────────────────────────┐
  │  MCP SERVERS - LAST LOADED IS USED (dedup by server name)           │
  │  1. ~/.copilot/mcp-config.json       (lowest priority)              │
  │  2. .vscode/mcp.json                 (workspace)                    │
  │  3. PLUGIN: MCP configs              (plugins)                      │
  │  4. --additional-mcp-config flag     (highest priority)             │
  └─────────────────────────────────────────────────────────────────────┘