gh skill: Copilot、Claude Code、Cursor向けGitHub CLIエージェントスキル管理

GitHubは2026年4月16日にgh skillコマンドをパブリックプレビューでローンチした。これによりAI支援開発で最も厄介な問題の一つが静かに解決される: すべてのAIコーディングアシスタントが独自のディレクトリ規約、独自のインストール手順、そして「スキル」が何かという独自の概念を持つ中で、エージェントスキルをどう共有し管理するか?

.claude/skills.agents/skills~/.copilot/skillsの間でSKILL.mdファイルを手作業でコピーしたり、チームが信じるバージョンをピンするためにだけリポジトリをフォークしたりしてきたなら、gh skillは待ち望んでいたコマンドだ。これはエージェントスキルを、npmがJavaScriptパッケージを扱うのと同じように、pipがPythonライブラリを扱うのと同じように扱う — 検索、インストール、ピン、プレビュー、更新、パブリッシュを第一級の動詞として。

このガイドではgh skillが実際に何をするか、日々使うクリーンな使用パターン、そしてチーム全体にスキルをデプロイする予定なら重要なエンタープライズ制御を説明する。


主要なポイント

  • gh skillはAIエージェントスキルのパッケージマネージャー。 GitHub Copilot、Claude Code、Cursor、Codex、Gemini CLI、Antigravityをまたぐ単一コマンド。
  • スキルはGitHubプロダクトではなく標準。 オープンなAgent Skills仕様に従う — SKILL.mdファイル(YAMLフロントマター付き)とオプションのscripts/references/assets/ディレクトリ。
  • 来歴が組み込み済み。 gh skill installはインストールされたSKILL.mdにソース、ref、tree SHAを書き込むので、gh skill updateが推測なしで上流の変更を検出できる。
  • バージョンピンが第一級。 タグ(@v1.2.0)、コミットSHA(@abc123def)にピン、または--pinでスキルをマークしてルーチンの更新から保護。
  • gh skill previewがセキュリティゲート。 インストール前に — 特にshellbashアクセスを許可する前に — スキルの内容、スクリプト、allowed-toolsを読む。
  • エンタープライズガバナンスが依然重要。 タグ保護、イミュータブルなリリース、シークレットスキャン、コードスキャンをすべての内部スキルリポジトリで有効にすべき。

エージェントスキルとは実際何か

エージェントスキルは、AIエージェントに特定の仕事をどう行うかを教える指示のディレクトリだ — PR記述の生成、OpenAPI specのスキャフォールド、セキュリティレビューの実行、コーディング標準の強制。エコシステムはシンプルな構造に収束している:

my-skill/
├── SKILL.md              # 必須: YAMLフロントマター + 指示
├── scripts/              # オプション: エージェントが実行できるヘルパー
├── references/           # オプション: エージェントがロードできるサポートドキュメント
└── assets/               # オプション: テンプレート、プロンプト、フィクスチャ

SKILL.mdファイルは指示と、エージェントがいつスキルをロードすべきかを判断するために必要なメタデータの両方を運ぶ:

---
name: pr-description-writer
description: Writes structured GitHub pull request descriptions with summary, test plan, and risk sections. Use when opening or updating a PR.
license: MIT
allowed-tools:
  - read
  - write
---

# PR Description Writer

When invoked, read the current branch diff, identify the scope of changes,
and produce a pull request description with three sections:

1. **Summary** — 2-3 bullets describing the intent.
2. **Test plan** — checklist of how the change was verified.
3. **Risk** — one sentence on rollback and blast radius.

Use `scripts/format-diff.sh` if the diff exceeds 400 lines.

ここで2つの詳細が重要だ。descriptionフィールド(最大1,024文字)は、エージェントがスキルをロードするかどうかを判断するときに読むもの — だからREADMEではなくツールのツールチップのように書く。そしてallowed-toolsはツール呼び出しを事前承認する; shellbashをリストから外しておくと、エージェントにターミナルコマンドを実行する前に尻ねさせることを強制し、これが完全に監査していないものに対して望む姿勢だ。


クリーンな使用例

これらが実際にタイプするコマンドだ。すべての例はgh skillが利用可能なGitHub CLI v2.90.0以降を仮定する。

検出: エコシステムを検索

# キーワードに一致するスキルを公開リポジトリ全体で検索
gh skill search mcp

# キュレーションされたコレクションを直接ブラウズ
gh skill install github/awesome-copilot

スキル名なしでgh skill install OWNER/REPOを実行すると、リポジトリ内のすべてのスキルをリストするインタラクティブピッカーに入る。新しいコレクションを探索する最速の方法だ。

検査: インストール前にプレビュー

# 何もインストールせずにスキルのSKILL.mdを表示
gh skill preview github/awesome-copilot documentation-writer

# インタラクティブターミナルでは、previewはファイルピッカーを開き
# scripts/ と references/ を個別にレビューできる
gh skill preview github/awesome-copilot security-review

gh skill previewがセキュリティゲートだ。本番コードに触れるプロジェクトへのインストール前に使い、allowed-toolsを慎重に読む — bashを事前承認するスキルは、エージェントが呼び出した瞬間に任意のコマンドを実行できる。

インストール: プロジェクトスコープ、ユーザースコープ、特定バージョン

# 最新バージョンを現在のプロジェクトにインストール (.agents/skills, .claude/skills など)
gh skill install github/awesome-copilot documentation-writer

# すべてのプロジェクトで利用できるようユーザープロファイルにインストール
gh skill install github/awesome-copilot documentation-writer --scope user

# 特定のリリースタグにピン
gh skill install github/awesome-copilot documentation-writer@v1.2.0 --pin

# 最大の再現性のために特定のコミットSHAにピン
gh skill install github/awesome-copilot documentation-writer@abc123def --pin

# 1つのエージェントホストのみにインストール (スキルがツールごとに分岐する場合に有用)
gh skill install github/awesome-copilot documentation-writer --agent claude-code

gh skillは各エージェントがスキルをどこに期待するか知っている。インストール時にCopilotとCursorには.agents/skills、Claude Codeには.claude/skills、その他のサポートホストには対応するパスに自動的に書き込む — マシン上で構成されたものに基づく。

更新: まずドライラン、それから前進

# インストールされたすべてのスキルをスキャンし上流の変更を表示 — 書き込みなし
gh skill update --dry-run

# インタラクティブに更新、各変更のプロンプト
gh skill update

# 非インタラクティブ更新 (CI/CDで使用)
gh skill update --all

# 以前ピンされたスキルを含める
gh skill update --all --unpin

更新メカニズムはgh skill installが各SKILL.mdに書き込んだtree SHAを読み、上流リポジトリと比較する。だから来歴はオプションではない — 安全な更新を可能にするプリミティブだ。

パブリッシュ: 自分のスキルを出荷

1つ以上のスキルディレクトリを含むリポジトリから:

# agentskills.io仕様に対してパブリッシュせずにすべてを検証
gh skill publish --dry-run

# 一般的な問題を自動修正 (コミットされたファイルからインストールメタデータを削除など)
gh skill publish --dry-run --fix

# インタラクティブパブリッシュ: リリースをタグ付けしGitHub Releasesを開く
gh skill publish

パブリッシュはスキル名(小文字、ハイフン、64文字以内)を検証し、必須のフロントマターが存在することを確認し、allowed-toolsが正しい型かチェックする。またagent-skillsリポジトリトピックを有効にし、タグ保護、シークレットスキャン、コードスキャンを推奨する — これらは他者がインストールするすべてのスキルリポジトリに望む最小限の制御だ。

CI/CD: GitHub Actionsワークフローでスキルをインストール

name: Release notes with Copilot CLI

on:
  push:
    tags:
      - 'v*'

jobs:
  release-notes:
    runs-on: ubuntu-latest
    permissions:
      contents: write
    steps:
      - uses: actions/checkout@v4

      - name: Install GitHub CLI skills
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          gh skill install github/awesome-copilot release-notes-writer@v1.2.0 --pin

      - name: Generate release notes
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          gh copilot run "Write release notes for $GITHUB_REF_NAME using the release-notes-writer skill" \
            --allow-all-paths \
            > RELEASE_NOTES.md

      - name: Publish release
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: gh release create "$GITHUB_REF_NAME" --notes-file RELEASE_NOTES.md

このパターン — スキルをピンし、Copilot CLI経由で呼び出し、出力をコミット — は、changelog生成、セキュリティサマリー、コンプライアンスレポート、オンボーディングスキャフォールドに一般化する。

エンタープライズ: 開発者環境を一括ブートストラップ

#!/usr/bin/env bash
# bootstrap-skills.sh — 新しいラップトップやCodespacesで実行

set -euo pipefail

SKILLS=(
  "myorg/skills security-review@v2.1.0"
  "myorg/skills pr-description-writer@v1.4.0"
  "myorg/skills terraform-reviewer@v3.0.1"
  "github/awesome-copilot documentation-writer@v1.2.0"
)

for spec in "${SKILLS[@]}"; do
  gh skill install $spec --scope user --pin
done

gh skill update --dry-run

各スキルをピンし--pinで再度ピンすることは、ブートストラップスクリプトが決定論的になることを意味する: すべての開発者がセキュリティチームが承認したバージョンを正確に得て、スクリプトを更新するまで何も黙って変わらない。


エンタープライズチームにとってgh skillが重要な理由

gh skill以前、大組織内での「スキルの共有」は通常、Slackのメッセージ、zipファイル、リリスタグのないフォークされたリポジトリのようだった。それは1チームの規模で機能し、1社の規模で壊れた。gh skillを正規の配布メカニズムとして採用すると何が変わるか。

懸念gh skill以前gh skillで
検出暗黙知、Slackのピンgh skill search + キュレーションされた組織リポジトリ
バージョン管理「最新のmain」または手動コピーGitタグ、コミットSHA、--pinフラグ
更新検出手動の差分SKILL.mdメタデータのtree SHA比較
移植性エージェントごとに1スキル、複製1スキル、6エージェント、自動配置
セキュリティレビューアドホックgh skill preview + パブリッシュ時スキャン
監査なしフロントマターのソース、ref、tree SHA

監査の行がエンタープライズセキュリティチームが最も気にするものだ。ソースリポジトリ、git ref、tree SHAがインストールされたSKILL.mdに直接書き込まれるため、開発者のラップトップを歩いて「何のスキルが、どこから、どのバージョンでインストールされているか?」という問いに単純なfindコマンドで答えられる — 別のインベントリシステムは不要だ。


うまく移植するセキュリティパターン

3つのプラクティスが単一の開発者からエンタープライズまで新しいツールなしでスケールする。

1. インストール前に毎回プレビュー。 gh skill preview OWNER/REPO skill-nameをレビューチェックリストの一部にする。SKILL.mdscripts/ディレクトリの2分間の読みで、ほとんどのレッドフラグ — プロンプトインジェクション、予期しないネットワーク呼び出し、ワーキングツリー外に書き込むもの — を捉える。

2. allowed-toolsに冷酷であること。 スキルが参照するすべてのスクリプトを監査しない限り、allowed-toolsからshellbashを外す。エージェントにコマンド実行前に尋ねさせることは、攻撃者制御のスキルやプロンプトインジェクションペイロードに対する単一の最大の制御だ。

3. 内部スキルリポジトリを強化。 gh skill publishがタグ保護、シークレットスキャン、コードスキャンの有効化を促すとき、3つすべてに「はい」と言う。タグ保護は特にリリースをイミュータブルにし、これが下流の消費者がタグへの--pinを信頼できるようにする。

これらの制御がエンタープライズAIプログラムにどう適合するか — モデルガバナンス、MCPサーバーポリシー、エージェント予算制御を含む — のより広いフレームについては、エンタープライズAIエージェントコンサルティングのガイドとCopilot CLIエンタープライズハーネスの解説を参照。同じ原則が適用される: スキルは新しい攻撃面であり、答えは禁止ではなくガバナンスだ。


より広いエコシステムでgh skillが位置する場所

gh skillは急速に動く状況の1ピースだ。スキル戦略を構築しているなら、これらの関連ピースを一緒に理解する価値がある:

  • agentskills.ioのAgent Skills仕様gh skillが検証するオープン標準。
  • Claude CodeとGemini CLIのスキルオーサリングClaude CodeとGemini CLIをまたぐスキル作成ツールの投稿でカバー。
  • Model Context Protocol (MCP) — スキルとMCPサーバーは補完的。スキルは指示を運び、MCPサーバーは機能を運ぶ。最も強力なエージェント構成は両方を使う。
  • Windows 365 + Intuneガバナンス — 開発者用ラップトップがCloud PCのとき、スキルデプロイは単なる開発者ツーリングの問題ではなくIntuneコンサルティングの問題になる。

gh skillの変更ログは、コマンドがパブリックプレビュー中に変更される可能性を明示的に注記しているため、次のいくつかのリリースでインターフェースが進化することを想定すること。基本 — SKILL.md、来歴メタデータ、タグとSHAのピン — は安定した賭けだ。


はじめにのチェックリスト

  1. GitHub CLIをv2.90.0以降にアップグレードgh --version)。
  2. gh skill --helpを実行しコマンドが利用可能か確認。
  3. インストール前にプレビュー。 gh skill previewを筋肉の記憶にする。
  4. 本番ですべてをピン。 CI/CDで実行するスキルに--pinと特定のタグまたはSHAを使用。
  5. 内部スキルリポジトリを作成。 agent-skillsトピックを追加、タグ保護を有効化、シークレットとコードスキャンを有効化、gh skill publishで最初の内部スキルを出荷。
  6. ガバナンスモデルを文書化。 新しいスキルを誰が承認するか? 内部レジストリを誰が所有するか? allowed-toolsを誰がレビューするか?

チームがより広いエンタープライズAIロールアウトの一部としてスキルガバナンスの構築を支援したい場合、Big Hat GroupのOpenClawコンサルティングプラクティスがフルスタックをカバーする — スキル、MCPサーバー、エージェントガバナンス、Windows 365配信、Intuneポリシー。

GitHubの2026年4月リリース全体の話題 — VS Code 1.116の組み込みCopilot、より厳密な個人プラン、Claude Opus 4.7のロールアウト、そしてgh skill自体 — は最新のCopilot Weeklyでカバーされている。

スキルはついに第一級のアーティファクトになった。そういうものとして出荷しよう。