# 用のプラグインを作成する GitHub Copilot CLI（コマンドラインインターフェース）

簡単にインストールできるパッケージでカスタマイズを共有するプラグインを作成します。

## イントロダクション

プラグインは、 Copilot CLI (コパイロット CLI)の機能を拡張するパッケージです。 「[GitHub Copilot プラグインについて](/ja/copilot/concepts/agents/about-plugins)」を参照してください。

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

## プラグインの構造

プラグインは、特定の構造を持つディレクトリで構成されます。 少なくとも、ディレクトリのルートに `plugin.json` マニフェスト ファイルが含まれている必要があります。 エージェント、スキル、フック、および MCP サーバー構成の任意の組み合わせを含めることもできます。

### プラグイン構造の例

```text
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)
```

## プラグインの作成

1. プラグインのディレクトリを作成します。

2. `plugin.json`マニフェスト ファイルをディレクトリのルートに追加します。

\*\*
`plugin.json` ファイルの例\*\*

```json copy
{
  "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"
}
```

このファイルに含めることができるフィールドの完全なセットの詳細については、 [GitHub Copilot CLI プラグイン リファレンス](/ja/copilot/reference/copilot-cli-reference/cli-plugin-reference#pluginjson) を参照してください。

1. エージェント、スキル、フック、および MCP サーバー構成に適したファイルとディレクトリを作成して、いくつかのコンポーネントをプラグインに追加します。

   例えば次が挙げられます。

   1. `NAME.agent.md` サブディレクトリに`agents` ファイルを作成して、エージェントを追加します。

      ```markdown copy
      ---
      name: my-agent
      description: Helps with specific tasks
      tools: ["bash", "edit", "view"]
      ---

      You are a specialized assistant that...
      ```

   2. プラグイン ディレクトリの `skills/NAME` サブディレクトリを作成してスキルを追加します。ここで、 `NAME` はスキルの名前です。 次に、このサブディレクトリ内に、スキルを定義する `SKILL.md` ファイルを作成します。

      たとえば、"デプロイ" スキルを作成するには、 `skills/deploy/SKILL.md`を作成します。

      ```markdown copy
      ---
      name: deploy
      description: Deploy the current project to...
      ---

      Instructions for the skill...
      ```

2. プラグインをローカルにインストールして、開発時にテストできるようにします。

   たとえば、 `./my-plugin` がプラグイン ディレクトリへのパスである場合は、次のように入力します。

   ```shell copy
   copilot plugin install ./my-plugin
   ```

3. インストールされているプラグインの一覧を表示して、プラグインが正常に読み込まれたことを確認します。

   ```shell copy
   copilot plugin list
   ```

   または、新しい対話型セッションを開始し、次のように入力できます。

   ```copilot copy
   /plugin list
   ```

4. 定義したエージェント、スキル、フック、および MCP サーバー構成が正しく読み込まれたことを確認します。

   たとえば、対話型セッションで、プラグインで定義されているカスタム エージェントが読み込まれたことを確認するには、次のように入力します。

   ```copilot copy
   /agent
   ```

   プラグインで定義されているスキルが読み込まれたことを確認するには、次のように入力します。

   ```copilot copy
   /skills list
   ```

5. プラグインのコンポーネントによって提供される機能を使用して、各コンポーネントが期待どおりに動作することを確認します。

6. 必要に応じて、プラグインの開発を繰り返します。

   > \[!IMPORTANT]
   > プラグインをインストールすると、そのコンポーネントがキャッシュされ、CLI は後続のセッションのためにキャッシュから読み取ります。 ローカル プラグインに加えられた変更を取得するには、もう一度インストールします。
   >
   > ```shell copy
   > copilot plugin install ./my-plugin
   > ```

7. テストが完了したら、次のように入力してプラグインのローカル バージョンをアンインストールできます。

   ```shell copy
   copilot plugin uninstall NAME
   ```

   > \[!NOTE]
   > プラグインをアンインストールするには、プラグインのディレクトリへのパスではなく、プラグインの`name` マニフェスト ファイルの`plugin.json` フィールドで指定されているプラグインの名前を使用します。

## プラグインの配布

プラグインを配布するには、それをマーケットプレースに追加します。 「[用のプラグイン マーケットプレースを作成する GitHub Copilot CLI（コマンドラインインターフェース）](/ja/copilot/how-tos/copilot-cli/customize-copilot/plugins-marketplace)」を参照してください。

## 詳細については、次を参照してください。

* [GitHub Copilot CLI（コマンドラインインターフェース） のプラグインの検索とインストール](/ja/copilot/how-tos/copilot-cli/customize-copilot/plugins-finding-installing)
* [GitHub Copilot CLI プラグイン リファレンス](/ja/copilot/reference/copilot-cli-reference/cli-plugin-reference)