はじめに
なぜ Agent Plugin が必要か?
VS Code の Copilot エージェントはここ数ヶ月で急速に進化し、カスタムエージェント、スキル、フック、MCP サーバーなど多彩なカスタマイズが可能になりました。
しかし、チームで共有しようとすると途端に面倒なります。
Git サブモジュール?手動コピー?バージョンずれ?何それ?みたいな。
Agent Plugin はこの問題を一気に解決します。
Agent Plugin の全体像
Plugin がバンドルできるもの
Agent Plugin は以下の5種類のカスタマイズを 1つのパッケージ にまとめられます。
| 種類 | 説明 | 具体例 |
|---|---|---|
| Custom Agents | 専用ペルソナ・ツール制限・モデル指定付きのエージェント | コードレビュー専門エージェント |
| Skills | SKILL.md + スクリプト + リソースのセット | テスト実行スキル、ドキュメント生成スキル |
| Hooks | エージェントのライフサイクルで自動実行されるシェルコマンド | テスト後のレポート生成 |
| MCP Servers | 外部ツール連携用のサーバー定義 | Jira連携、Slack通知 |
| Slash Commands |
/ で呼び出すカスタムコマンド |
/review、/deploy
|
アーキテクチャ概要
Plugin がどのように発見・インストール・利用されるか、全体の流れを見てみましょう。
使ってみよう — セットアップ手順
Step 1: 設定を有効にする
settings.json に以下を追加します。
{
"chat.plugins.enabled": true
}
Step 2: プラグインを探す
Extensions ビュー(Ctrl+Shift+X / Cmd+Shift+X)を開き、検索ボックスに @agentPlugins と入力します。
デフォルトでは以下の公式マーケットプレイスからプラグインが取得されます。
| マーケットプレイス | 説明 |
|---|---|
github/copilot-plugins |
GitHub 公式プラグイン |
github/awesome-copilot |
コミュニティ貢献プラグイン |
Step 3: インストール
一覧から目的のプラグインを見つけたら Install ボタンを押すだけ。インストールされたスキルやエージェントは、ローカルで定義したものと同列に表示されます。
自分のプライベートリポジトリを Agent Plugin にする
自分のリポジトリをプラグイン化して、チームに配布してみましょう。
完成形のディレクトリ構成
Step 1: リポジトリを作成する
# 新規リポジトリを作成
mkdir my-agent-plugins && cd my-agent-plugins
git init
# ディレクトリ構造を作成
mkdir -p .github/plugin
mkdir -p plugins/my-custom-plugin/.github
mkdir -p plugins/my-custom-plugin/skills/code-review
mkdir -p plugins/my-custom-plugin/agents
Step 2: Plugin マニフェストを作成する(plugin.json)
plugins/my-custom-plugin/.github/plugin.json を作成します。
重要: 公式ドキュメントではプラグインルートに
plugin.jsonを置くと記載されていますが、現時点では.github/サブディレクトリ内に配置する必要があります。
{
"name": "my-custom-plugin",
"description": "チーム向けコードレビュー",
"version": "1.0.0",
"author": {
"name": "Your Name",
"email": "you@example.com"
},
"license": "MIT",
"keywords": ["review"],
"skills": [
"skills/code-review"
]
}
skillsのパスは プラグインのルートディレクトリ(plugins/my-custom-plugin/)からの相対パスです。.github/からの相対パスではないので注意。
Step 3: スキルを作成する
plugins/my-custom-plugin/skills/code-review/SKILL.md を作成します。
---
name: code-review
description: プロジェクトのコーディング規約に基づいたコードレビュー
---
# Code Review Skill
あなたはシニアコードレビュアーです。以下の観点でレビューしてください。
## レビュー観点
1. **命名規則**: 変数名・関数名はプロジェクトの規約に従っているか
2. **エラーハンドリング**: 適切な例外処理が行われているか
3. **パフォーマンス**: N+1クエリやメモリリークの懸念はないか
4. **セキュリティ**: SQLインジェクション、XSSなどの脆弱性はないか
5. **テスタビリティ**: テストしやすい設計になっているか
## 出力フォーマット
- 🔴 **Critical**: 必ず修正が必要
- 🟡 **Warning**: 修正を推奨
- 🟢 **Suggestion**: より良くするための提案
Step 4: カスタムエージェントを追加する(任意)
plugins/my-custom-plugin/agents/reviewer.agent.md を作成します。
---
name: Reviewer
description: コードレビュー専門エージェント。読み取り専用ツールのみ使用。
tools: ["read", "search"]
---
あなたはコードレビュー専門のエージェントです。
コードの変更は一切行わず、レビューコメントの提供のみを行います。
## ルール
- コードを編集しない(読み取り専用)
- 具体的な行番号を示してコメントする
- 修正案はコードブロックで提示する
- 重要度に応じて Critical / Warning / Suggestion に分類する
Step 5: Marketplace マニフェストを作成する
.github/plugin/marketplace.json を作成します。
{
"name": "my-team-plugins",
"owner": {
"name": "Your Team",
"email": "team@example.com"
},
"metadata": {
"description": "チーム共有の Agent Plugin コレクション",
"version": "1.0.0"
},
"plugins": [
{
"name": "my-custom-plugin",
"description": "コードレビュー",
"version": "1.0.0",
"source": "./plugins/my-custom-plugin"
}
]
}
nameには A-z, 0-9, ハイフン のみ使用可能です。
Step 6: GitHub にプッシュする
git add .
git commit -m "feat: 初回 Agent Plugin リリース"
git remote set-url origin https://github.com/your-name/my-agent-plugins.git
git push -u origin main
Step 7: VS Code に Marketplace を登録する
settings.json に追加します。
{
"chat.plugins.enabled": true,
"chat.plugins.marketplaces": [
"your-name/my-agent-plugins"
]
}
プライベートリポジトリでも動作します。パブリックとして見つからない場合、VS Code は直接 clone を試みます。
Step 8: インストール&利用
Extensions ビューで @agentPlugins を検索し、自分のプラグインが表示されれば成功です!
一応チャットで聞いてみると、code-review の SKILL.md が使えるようになっていることが確認できます。
ローカルプラグインで開発する(Marketplace 不要)
開発中は GitHub にプッシュせず、ローカルパスで直接登録できます。
{
"chat.plugins.paths": {
"/Users/you/dev/my-agent-plugins/plugins/my-custom-plugin": true
}
}
true で有効、false で無効(登録は残す)。
知っておくべきハマりポイント
| 症状 | 原因と対処法 |
|---|---|
| プラグインが一覧に表示されない |
name に日本語や特殊文字が含まれていないか確認。marketplace.json / plugin.json の構文エラーはサイレントに失敗する |
| 修正しても反映されない | VS Code はマーケットプレイスを強くキャッシュする。settings.json の参照形式を変える(例: owner/repo → https://github.com/owner/repo.git)か、VS Code を再読み込みする |
plugin.json の配置場所 |
ドキュメントではプラグインルートと記載されているが、実際は .github/ 内に置く必要がある(プレビュー版の仕様?) |
| マーケットプレイス設定が効かない |
chat.plugins.marketplaces はユーザーレベルの設定のみ対応。ワークスペース設定では動作しない |
まとめ
Agent Plugin は「AIエージェントのカスタマイズを npm のように管理・配布する仕組み」です。
| ステップ | 内容 |
|---|---|
| 1. 定義 |
plugin.json でスキル・エージェント・フックをバンドル |
| 2. 配布 | Git リポジトリをマーケットプレイスとして公開 |
| 3. インストール | Extensions ビューからワンクリック |
| 4. 利用 | チャットで即座に利用可能 |
| 5. 更新 | リポジトリ更新で全員に反映 |
まだプレビュー段階ですが、チーム開発における AI カスタマイズの共有問題を根本的に解決するポテンシャルがあるかもしれません。



