Claude CodeのSkillsがCopilotで発火しない・読み込まれない原因は発火メカニズムの違い。description強化、トークン予算、Instructionsルーティングで解決。
はじめに
ども!GitHub Copilotが徐々に育ってきて、ニコニコな龍ちゃんです。1月後半から2月にかけてGitHub Copilot関連のブログが多めに出ています。ブログが出ているということは育っている証拠ですね。
今回は、前回紹介していた Agent Skills の話題です。「網羅5種ブログ」と「Claude Code→GitHub Copilot移行」では補足として触れていた Agent Skills を、Claude Code から実際に移植したという部分にフォーカスしていきます。
「Claude Code で使っていた Skills をそのまま GitHub Copilot に移植したら、まったく発火しない…」
同じ SKILL.md 形式なのに、なぜ動かないのか?本記事では、発火しない根本原因と3つの解決策を解説します。
検証環境
- 検証日: 2026年2月2日
- 環境: VS Code 1.108以降 + GitHub Copilot
- 参考: VS Code Docs – Agent Skills
前提:Agent Skills の基本
Agent Skills の基本(ディレクトリ構造、SKILL.md の書き方)は「【2026年版】Agent Skills 入門:SKILL.md の基本から実践まで」を参照してください。
本記事では「発火しない」問題と解決策に特化します。
発火しない原因:Claude Code との根本的な違い
結論から言うと、Claude Code と GitHub Copilot ではスキルの発火メカニズムが根本的に異なります。
注: 以下は4つのスキルを実際に移植した際の動作検証から分析した内容です。公式ドキュメントで詳細が公開されていない部分は推測を含みます。
決定的 vs 確率的
| 観点 | Claude Code | GitHub Copilot |
|---|---|---|
| スキル把握 | 全スキルを起動時に把握 | relevance に基づき選択的に読み込み |
| 判断方式 | 全情報を元に内部判断(情報完全) | 確率的な判定(事前フィルタリングあり) |
| description の役割 | 発火判定に使用(全メタデータ把握後に判断) | 発火判定に使用(事前フィルタリングで判断) |
GitHub Copilot も Claude Code も、Agent Skills には「Progressive Disclosure」という設計思想を採用しています。全スキルを事前に読み込むのではなく、関連度に基づいて必要なスキルのみを読み込む仕組みです。
違いは「どの段階で絞り込むか」にあります。
Claude Code は全スキルを把握した上で内部判断で選択するのに対し、Copilot は事前に絞り込んでから選択するため、description の書き方次第で「漏れ」が発生するのです。
注: GitHub 公式では関連度スコアリングの詳細な実装方法は公開されていません。本記事の説明は動作検証からの推測を含みます。

Claude Code も Progressive Disclosure を採用していますが、その実装方法が異なります。
- メタデータ把握: 全スキルの Name + Description を起動時に把握
- 本体読み込み: 発火時に SKILL.md 本体を読み込み
- 参照ファイル: 必要に応じて references/ を参照
重要な違い: Claude Code は「全スキルのメタデータを把握した上で選択」するため、description が多少雑でも適切なスキルを選べます。一方 Copilot は「事前フィルタリング後に選択」するため、description の書き方次第で「漏れ」が発生します。
参考: Anthropic Engineering Blog – Agent Skills
description の設計思想が違う
ここが核心です。
Claude Code では「何をするか」をベースで書けばOKです。
description: ブログ記事をスクレイピングしてMarkdownに変換
内部ルーティングが賢いので、この程度の説明でも意図を理解してくれます。
GitHub Copilot では「スキルの機能と発火条件の両方」を書く必要があります。公式ガイドラインでは「describe BOTH what the skill does AND when to use it」と明記されています。
description: |
ブログ記事をスクレイピングしてMarkdownに変換するスキル。
Use when: ブログを取得したい、記事を保存したい、tech-lab.sios.jp の内容を取得したい。
Triggers on: scrape blog, fetch article, ブログ取得, 記事取得.
関連度スコアリングではユーザーが実際に使う言葉を埋め込まないとスコアが上がりません。
核心の一文: Claude Code と同じ感覚で作ると発火しない。「技術的な説明」ではなく「ユーザーの発話」を埋め込む必要がある。

雑に作ると動かない理由
まとめると、こういうことです。
| 項目 | Claude Code | GitHub Copilot |
|---|---|---|
| 設定の厳密さ | 雑でも動く | 厳密に作る必要あり |
| トークン予算 | 気にしなくてOK | 500トークン以下推奨(上限5,000トークン) |
| 結果 | – | 同等の機能を実現可能(作法に従えば) |
Claude Code のノリで雑にぶち込むと動きません。ただし、作法に従って厳密に作れば、Claude Code と同等の機能を実現できます。
公式が推奨するベストプラクティスに盲目的に従う必要はないですが、一度は目を通しておいたほうがよい!という感じですね。Microsoftが公開しているリポジトリに含まれているGitHub Copilot Agent Skillsのガイドラインです。
補足: 比較のために大げさに書いていますが、Claude Code の Skills もちゃんと設計したほうが良いです!
解決策①:description を強化する
落とし穴:「英語で書くべき」Tips が逆効果になる場合
よく「システムプロンプトは英語で書くべき」というTipsがありますよね。GitHub Copilot Agent Skills では、これが逆効果になる可能性があります。
Copilot の関連度判定は文字列の類似度で判断していると推測されます。ユーザーの発話と description の言葉が近いほどスコアが上がります。日本語でプロンプトを書くユーザーには、日本語の発火キーワードが必要になります。英語だけで書くと、日本語クエリとの類似度が低くなり、発火しにくくなります。
結論: description には日本語・英語両方の発火キーワードを列挙しましょう。
推奨フォーマット
description: |
[機能の簡潔な説明(何をするスキルか)].
Use when: [どんな時に使うか(ユーザーの意図)].
Triggers on: [発火キーワード(日本語・英語)].
Before / After
Before(発火しない):
description: HTMLをPlaywrightでレンダリングしてPNG画像に変換
After(発火する):
description: |
HTMLファイルをPlaywrightでレンダリングしてPNG画像に変換するスキル。
Use when: HTMLを画像化したい、スクリーンショットを撮りたい。
Triggers on: HTMLをPNGに変換, HTML to PNG, 画像に変換, HTMLを画像に, screenshot HTML, HTMLをキャプチャ.
ポイントは「技術的に何をするか」ではなく、「ユーザーがどう言うか」を想像して書くことです。
解決策②:トークン予算を守る
Copilot はトークン効率を重視する設計です。SKILL.md が長すぎると、そもそも読み込まれない可能性があります。
| ファイル | 推奨 | 上限 |
|---|---|---|
| SKILL.md | 500トークン以下(約60行目安) | 5,000トークン |
| references/*.md | 1,000トークン | 2,000トークン |
分割パターン
長くなりそうな場合は、詳細を references/ に分割しましょう。
.github/skills/my-skill/
├── SKILL.md # 概要 + Quick Start(〜60行)
└── references/
├── commands.md # コマンド詳細
└── troubleshooting.md
SKILL.md は「ルーター役」に徹して、詳細は必要な時だけ読み込まれるようにします。
解決策③:Instructions ルーティング(力技)
正直、関連度スコアリングは不安定です。description を強化しても、発火したりしなかったりすることがあります。
そこで最終手段として、copilot-instructions.md に明示的なルーティングテーブルを追加する方法があります。
## Agent Skills Routing
| キーワード | スキル | パス |
|----------------------------------------|--------------|----------------------------------------|
| ブログスクレイピング, tech-lab.sios.jp | blog-scraper | `.github/skills/blog-scraper/SKILL.md` |
| フローチャート, 図 | html-diagram | `.github/skills/html-diagram/SKILL.md` |
なぜ有効か
- Instructions は常に読み込まれる
- 関連度スコアリングをバイパスできる
- 発火が安定する
デメリット(トレードオフ)
力技ゆえのデメリットも認識しておきましょう。
- 保守性の低下: スキルを追加・変更するたびにルーティングテーブルの更新が必要
- スケーラビリティ: スキル数が増えると Instructions ファイルが肥大化
- 本来の設計思想から外れる: Progressive Disclosure の恩恵を受けられない
結論: 確実に発火させたい重要なスキル(3〜5個程度)に限定して使うのがおすすめです。
検証結果:4スキルで発火確認
実際に Claude Code から移植した4つのスキルで検証しました。
| スキル | プロンプト | 結果 | 発火経路 |
|---|---|---|---|
| blog-scraper | tech-lab.sios.jp + 取得して | ✅ | Instructions |
| html-diagram | HTMLで図化して | ✅ | Instructions |
| copilot-chat-converter | Markdownに変換して | ✅ | Instructions |
| html-to-png | 連携呼び出し | ✅ | スキル内 |
結論: Instructions ルーティングテーブルで全スキル安定発火しました。
検証に使用したスキルの概要:
| スキル | 概要 | 関連記事 |
|---|---|---|
| blog-scraper | ブログ記事をMarkdown形式で保存 | HTML→Markdown変換 |
| html-diagram | Tailwind CSSで図解を自動生成 | HTML図解自動生成 |
| copilot-chat-converter | Chat履歴JSONをMarkdownに変換 | – |
| html-to-png | HTMLをPNG画像に変換 | html-diagramと連携 |
移植チェックリスト
Claude Code Skills → GitHub Copilot への移植手順をまとめました。
- [ ] `.claude/skills/` → `.github/skills/` にコピー
- [ ] `allowed-tools` を削除(Copilot では実験的機能)
- [ ] description に `Use when` / `Triggers on` を追加
- [ ] ユーザー発話を日本語・英語で列挙
- [ ] SKILL.md を 500トークン以下(約60行目安)に削減
- [ ] `copilot-instructions.md` にルーティングテーブル追加(重要スキルのみ)
- [ ] VS Code リロード後、5〜10分待機
- [ ] 発火テストこのチェックリストに従えば、Claude Code で作ったスキルを GitHub Copilot でも活用できます。
まとめ
Agent Skills が発火しない問題と解決策を整理しました。
| ポイント | 内容 |
|---|---|
| 原因 | Claude Code(全スキル把握)と GitHub Copilot(事前フィルタリング)で仕組みが違う |
| description | 「何をするか」+「いつ使うか(Use when / Triggers on)」の両方を書く |
| 解決策 | ① description 強化 ② トークン予算 ③ Instructions ルーティング(力技) |
| 結論 | 作法に従って厳密に作れば、Claude Code と同等の機能を実現可能 |
発火しない場合は、本記事の3つの解決策を順番に試してみてください。特に Instructions ルーティングは確実性が高いのでおすすめです。
参考リンク
公式ドキュメント
公式リポジトリ
- github/awesome-copilot – ベストプラクティス
- Microsoft GitHub-Copilot-for-Azure – Agent Skills 実装例
- anthropics/claude-cookbooks – Skills – Progressive Disclosure
関連記事
- GitHub Copilot設定5種を網羅!生産性を最大化する使い分け術
- Claude Code→GitHub Copilot移行で使える設定ファイル6つの対応表
- 【2026年版】Agent Skills 入門:SKILL.md の基本から実践まで
ここまで読んでいただき、ありがとうございました!
Agent Skills の発火問題で困っている方の参考になれば幸いです。Claude Code から移行する方は、ぜひ移植チェックリストを活用してください。

