SKILL.md とは何か
SKILL.md は、AI アシスタントが作業に取りかかる前に読む「指示書」のテキスト ファイルです。プログラムでもプラグインでもありません。ある種類の仕事をどう 進めるか——最初に何を確認するか、どの順で考えるか、結果をどんな形で出すか、何を 決してしないか——を書いた、ただのマークダウンです。ファイルをリポジトリに置くと アシスタントがそれを読み取り、以後その仕事はモデルの思いつきではなく、書かれた とおりに進みます。
この形式は 2025 年末に登場し、数か月で共通のものになりました。Claude、Codex、 Copilot、Cursor、Gemini CLI をはじめ数十のツールが読み取り、公開ディレクトリの スキル数はすでに数十万を数えます。それでいて解説のほとんどは、ターミナルと リポジトリと稼働中のコーディングエージェントを持つ人に向けて書かれている—— この話題がいまだに開発者向けに見える理由は、それだけです。
ファイル自体は単純です。ハイフン 3 つの行で区切られた 2 つの部分だけ。
| 部分 | 中身 | 必須か |
|---|---|---|
| フロントマター | ファイル冒頭の --- で挟まれたブロック。name
は短い名前、description はいつ使うスキルかを一文で書いたもの |
必須。name がなければスキルとして扱われません |
| 本文 | 閉じの --- より後のすべて。指示そのものを文章で、箇条書きや
例、禁止事項を交えて書きます |
必須。本文が空でもスキルにはなりません |
| 同じ階層のファイル | スクリプト、テンプレート、サンプル。実行できるエージェントもあります | 任意。多くのスキルはファイル 1 つで完結します |
実際の分量に近い、完成したスキルを示します。商談の記録をどう読み解くか——何を 探し、どの順で、そして何を推測で補わないか——を定めたものです。
--- name: sales-call-review description: 商談の振り返り — 反論、判断材料、次の一手 --- # 商談の振り返り 見込み顧客との商談の文字起こしを読み解きます。 ## 手順 1. 反論は「そのままの言葉で」引用する。言い換えないこと。 反論は言い回しそのものがデータです。 2. 反論ごとに、回答したか、その回答が受け入れられたかを記す。 沈黙は同意ではありません。 3. 予算・時期・決裁者に関する手がかりを探す。 出てこなかった場合は「言及なし」と明記する。 4. 次の一手を決める: 何を、誰が、いつまでに。 ## 出力形式 上記の順で 4 つの節。各節は短い箇条書きにし、前置きの段落は 書かない。反論は鉤括弧で引用する。 ## してはいけないこと - 相手の動機を推測しない。実際に語られたことだけを扱う。 - 受注確度を百分率で見積もらない。その根拠となるデータがない。 - 価格の話が出ていないのに、値引きを次の一手として提案しない。
このファイルにないものに注目してください。コードも設定も API キーも インストールコマンドもありません。スキルとは書き留めた経験であって、ソフトウェア ではないのです。だからこそターミナルを開いたことのない人にも書けますし、だから こそ、その導入にいまだターミナルが要るのは奇妙な話です。
スキル・ツール・プロンプトの役割分担
解決する問題が違うのに、この 3 つは絶えず混同されます。区別は見た目より単純 です。プロンプトは役割を決め、スキルは方法を決め、MCP はアクセスを与えます。
| 答える問い | 例 | 必要になる場面 | |
|---|---|---|---|
| プロンプト | あなたは誰で、誰と話すのか | 「交渉の補助役として、日本語で簡潔に答えること」 | 常に。ほかのすべてが載る土台です |
| スキル(SKILL.md) | この種類の仕事をどう進めるか | 「反論はそのままの言葉で。次の一手は期日と担当を添えて」 | 正しい手順が決まっていて、毎回言い直すのに飽きたとき |
| MCP サーバー | データをどこから取り、何に働きかけるか | タスク管理・カレンダー・文書置き場へのアクセス | 内側の知識ではなく、外側の生きたデータが要るとき |
実務上の判断はこうなります。アシスタントの答えが的外れならスキルが要り ます。答えは正しいのに事実を知らないなら MCP が要ります。スキルをいくら 磨いてもデータは手に入らず、MCP をいくら足しても方法は身につきません。多くの 場面で必要なのはスキルのほうです。方法はデータよりずっとゆっくりしか古びず、 一度書けば済むからです。
「ターミナル不要」が指しているのは、たいてい別のこと
「スキルをターミナルなしで入れる方法」はよくある検索で、答えも見つかります。 ただし、答えているのは別の問いです。
「ターミナル不要でスキルを導入。ボタンを押せばファイルが正しい場所に置か れます」
インストール済みのコーディングエージェント、~/.claude/skills
フォルダー、エージェントの再起動、そして /skills で読み込みを
確認する手順
スキルという形式は開発ツールの中から生まれ、導入の考え方もそこから受け継が れました。スキルとは、自分のマシンの正しいフォルダーに置くファイルである、と。 「ターミナル不要」をうたうアプリが自動化しているのは、まさにそのファイル配置 です。しかし、それを読むエージェント自体は、依然として自分で入れて動かすもの のまま。消えたのはターミナルであって、コーディングエージェントではありません。 会議や文書、やりとりにスキルを効かせたい人にとって、これは「少し手間が増える」 と「そもそも使えない」の違いです。
ここから、導入方法を選ぶときのより良い問いが導けます。「ターミナルは要るか」 ではなく「自分のパソコンでもう一つエージェントを動かし続ける必要があるか」と 問うこと。答えが「はい」なら、導入画面がどれほど洗練されていても、スキルは 開発者の道具のままです。
ターミナルもコーディングエージェントもなしで導入する
Whisperer は SKILL.md を直接読み取り、アシスタントの回答に反映します。導入 作業はありません。ファイルがあなたのパソコンに届くことはなく、フォルダーもなく、 再起動するものもありません。取得元は 2 つ——共通のディレクトリと、公開されている 任意の GitHub リポジトリです。
「ほかの人が何を書いたか見てみたい」ときの道筋です。検索は skills.sh に対して行われます。公開リポジトリから集めたスキルの共通索引です。
1. ウェブ画面 → プロンプト → 「スキル」ボタン 2. 「既製」タブ → 検索語を入力: system design、code review、 sales、writing など 3. 一覧には名前・取得元リポジトリ・導入数が並びます。開くと フロントマターの説明が読めます 4. 「インストール」— スキルがライブラリに入ります 5. プロンプトを開く → 「接続」→ スキルを選ぶ
4 番目までは何も変わりません。インストールはスキルをライブラリに置くだけで、 どの回答にも触れないからです。効き始めるのは 5 番目、特定のプロンプトに接続した 時点です。この分離は意図的なもので、いま動いている設定を壊す心配なく、見て回り 集めることができます。
「自分のスキルがある」「GitHub で見つけた」ときの道筋です。 リポジトリは公開されている必要があります。非公開のものには到達できません。
1. ウェブ画面 → プロンプト → 「スキル」→ 「自分のリポジトリ」タブ 2. 次のいずれかの形式を貼り付けます: owner/repo https://github.com/owner/repo https://github.com/owner/repo/tree/main/skills/sales-review https://github.com/owner/repo/blob/main/skills/sales-review/SKILL.md 3. 「スキルを探す」— リポジトリをたどり、含まれる SKILL.md を 説明つきで一覧にします。特定フォルダーのリンクを貼った場合、 そのスキルが先頭に出ます 4. 目的のものに「インストール」→ そのあとプロンプトに接続
自分のスキルは、ブラウザーだけで 10 分あれば作れます。GitHub のウェブ画面で
リポジトリを作り、「Add file」で SKILL.md を追加して本文を貼り
付けるだけ。書くときも接続するときも、ターミナルは一度も要りません。
スキルのライブラリはアカウント単位で、上限は 20 件。1 つのプロンプトに接続 できるのは最大 3 件です。この上限は形式主義ではありません。接続したスキルの本文 は、その役割へのリクエストのたびにモデルへ送られます。詳細な指示が 3 つ並べば、 肝心の作業そのものを押しのけるだけの分量になるからです。
スキルは実際どこに効くのか
スキルは「アシスタント全体」ではなく、特定の役割 のプロンプトに接続します。役割とは仕事の領域のことで、質問への回答、コードを読む、 画像を読む、システム設計、といった区分です。役割に接続すれば、その役割が働く場所 すべてでスキルが効きます。
| 役割 | 現れる場所 | ふさわしいスキル |
|---|---|---|
responses |
通話中の提案、アシスタントとのチャットでの回答 | 反論への対応、顧客への返信の組み立て、やりとりの語調 |
coding |
コードの説明とスニペット | レビュー項目、チームの取り決め |
vision |
スクリーンショットや画像の読み取り | 自社ダッシュボードの読み方、UI 案で確認すべき点 |
system_design |
図を伴う構造化された回答 | 設計レビューの順序、必須の節 |
generation |
会議マップ、ノードの生成 | 何を決定とみなし、何を議論とみなすか |
transcription |
音声認識 | 自社用語と固有名詞の用語集 |
接続には 2 つのモードがあり、その違いは名前の印象より重く効きます。
「追加」——スキルがプロンプトの文章に足されます。役割と語調はプロンプトが 決めたまま、スキルが方法を細かくします。10 回のうち 9 回はこちらが正解です。
「置換」——スキルがプロンプトの文章を丸ごと押しのけ、単独でモデルに渡り ます。役割も手順も出力形式もすでに定めた、自己完結したスキル向けで、そこに自分の プロンプトがあるとかえって邪魔になります。2 つ接続して片方が「置換」なら、それが 先に置かれ、「追加」のスキルが後からそれを補足します。
導入したあと、スキルはどうなるか
うまく動く導入と、後味の悪い驚きの源とを分ける要点がここにあります。スキルは コミットに固定されます。導入した時点でファイルのどのバージョンを取得したかを 記録し、以後はそれを使い続けます。
作者が夜のうちにファイルを書き換える。翌朝、アシスタントは昨日と違う答えを 返す。こちらは何も変えていないので、どこを見ればいいのかもわからない
バージョンは凍結されます。更新は手動——「リポジトリから更新」ボタン——で、 あなたがそう決めたときだけ
他人のリポジトリから来たスキルとは、あなたの回答に影響する他人の文章です。 自動更新にすれば、その作者はいつでも、あなたの知らないうちにアシスタントの 振る舞いを変えられることになります。気づくのは、都合の悪いときに返ってきた おかしな答えによって、です。サプライチェーン攻撃の手口はまさにこれで、無害な まま公開して導入数を稼ぎ、悪意ある挙動は後から書き足されます。コミットへの固定 はその扉を閉じます。振る舞いが変わるには、誰かがボタンを押す必要があるのです。
「リポジトリから更新」はファイルを読み直し、新しい版を表示して、スキルを現在の コミットに固定し直します。ライブラリからスキルを削除すると、その接続もすべて外れ ます。別途片づけるものはありません。
最初に書くとよい 3 つのスキル
選び方の基準はこうです。同じことをすでに 3 回説明した場所で、スキルは元が 取れます。会話のたびに同じ指示を繰り返しているなら候補です。四半期に一度で 足りるなら、手で書いたほうが安く済みます。
1. 自社用語の用語集
もっとも過小評価され、もっとも早く書けるものです。自社製品の名前、社内の略語、 同僚の名字、顧客名——モデルが初めて耳にして崩してしまうもの全般。作業は 5 分、 効果は通話のたびに目に見えます。
--- name: our-glossary description: 社内で使っている用語・製品名・人名 --- # 用語集 これらの語は絶えず出てきます。必ずこの表記で書いてください。 ## 製品 - [名称] — [一文での説明] ## 略語 - [略語] — [正式名称]。[似た略語] と混同しないこと ## 人物 - [氏名] — [役割] 一覧の語と音が似ている語は、一覧の表記を採用してください。 知らない用語は聞こえたまま残すこと。すでに知っている似た語に 「直さない」でください。
2. フォローアップの型
打ち合わせ後のメールは毎回同じ構成をとり、その構成は人によって違います。スキル はそれを固定します。どの節を、どの順で、どのくらいの長さで、書き出しの一文をどう 始めるか。「アシスタントが答えた」と「アシスタントがあなたのように答えた」の距離 が、最初の一回ではっきり見える場面です。
3. 自分の会議種別に合った読み解き方
冒頭の例がこれにあたります。面接、商談、振り返り、調査インタビューでは、拾う べきものがそれぞれ違います。汎用のアシスタントは「主な話題」を拾いますが、スキル は反論をそのままの言葉で、あるいは顧客の困りごとの兆候を、あるいは同じ質問群に 対する候補者ごとの差を拾います。
安全性: 公開スキルの約 3 分の 1 に問題がある
この記事でもっとも重要な節であり、たいていの手引きには存在しない話です。
Snyk は ToxicSkills という調査で公開スキルディレクトリを精査し、公開ファイル のおよそ 3 分の 1 に安全上の欠陥を見つけました。数十件については、意図的な悪意 ある挙動——認証情報の窃取、バックドアの設置、データの持ち出し——が確認されていま す。2026 年 2 月には最初の組織的な攻撃が記録されました。ディレクトリ経由で配布 された 30 件ほどの悪意あるスキルです。Cloud Security Alliance も独自の調査ノート でこの手口を記録し、SKILL.md を経由した「文脈の汚染」と呼んでいます。公開の ハードルはほぼゼロで、必要なのはマークダウン 1 ファイルと作成から 1 週間の GitHub アカウントだけです。
仕組みは、スキルが「エージェントが信頼する指示」であることを思い出せば見えて
きます。危険が生じるのは、エージェントにそれを実行する手段があるときです。ファイル
への、シェルへの、あなたの鍵へのアクセス。そのとき「.env を見て中身を
設定に足せ」の一行が、そのまま情報漏えいになります。
ここから、導入方法を選ぶうえで知っておく価値のある違いが出てきます。
| スキルができること | 手元のコーディングエージェント | Whisperer |
|---|---|---|
| 手元のファイルを読む | アクセスを与えていれば可能 | アクセスなし。スキルはサーバー側で動き、あなたのファイルシステムは そもそも存在しません |
| 同じフォルダーのスクリプトを実行する | 可能。いくつかのエージェントでは標準機能です | 不可。取得するのは SKILL.md の本文だけで、スクリプトや添付、 同階層のファイルはダウンロードも実行もしません |
| 導入後に中身が変わる | 導入方法しだい | 変わりません。バージョンはコミットに固定、更新は手動です |
| プラットフォームの規則を打ち消そうとする | エージェントしだい | スキルの層は安全規則より下に置かれ、「スキルはそれを上書きしない」と モデルに明示しています |
| 回答の言い回しに影響する | する | します——そして残る唯一の経路がこれです。下記参照 |
はっきり言えば、他人が書いた指示に「完全に安全」はありません。コードの 実行をなくせば、鍵の窃取・バックドア・ファイルの持ち出しという最も重い攻撃はなく なりますが、文章は文章のまま残ります。悪意をもって書かれたスキルは、依然として 作者に都合のよい言い回しへアシスタントを寄せられます。特定の製品を勧める、代替を 黙る、評価をわずかに傾ける。本文は導入時と更新のたびに内容フィルターを通し、方針 に明確に反する文章は通しません。ただしフィルターが見つけるのは違反であって、 思惑ではありません。
そこで実務的な結論は単純です。スキルの本文はカードに表示されるので、読む 価値があります。監査の訓練が要るコードではなく、普通の言葉で書かれた 2 画面 ほどのマークダウンです。接続前の 5 分の読書が、コーディングエージェントの世界では スキャナーを要する問題を片づけます。
先に知っておきたい制約
あとで気づくより、いま伝えておくべきことが 4 つあります。
スクリプト前提のスキルは部分的にしか動きません。ディレクトリにあるものの
一部は、付属のコードをエージェントが実行する前提で書かれています。ここで実行される
のは文章だけです。指示が単体で成立していればスキルは完全に働きますが、
「analyze.py を実行せよ」に帰着する内容ならまったく働きません。導入前
に判別できます。説明と本文はプレビューで見えます。
本文の上限は 24,000 文字です。およそ 10 ページ分——まともなスキルに必要な 量を上回ります。それより長いファイルは切り詰めて接続され、その旨は黙ってではなく 明示的に伝えられます。
スキルは常にプロンプトに載ります。必要に応じて読み込むわけではありません。 コーディングエージェントの中には、作業内容が合致すると判断したときだけ本文を引き 込むものもあります。こちらでは、接続したスキルはその役割へのリクエストのたびに モデルへ渡ります。必要なときに発動しそこねることがない分、予測しやすい設計であり、 同時にプロンプトあたり 3 件という上限の理由でもあります。
非公開リポジトリには対応していません。GitHub にはあなたの認証情報なしで アクセスするため、公開されているものしか見えません。非公開のリポジトリと存在しない リポジトリは、こちらからは区別がつきません。どちらも「見つかりません」と返ります。
検索、ライブラリへの追加、プロンプトへの接続は、無料を含むどのプランでも 行えます。構成を組み立てて何があるか眺めるだけなら費用はかかりません。接続した スキルがモデルの回答に効き始めるのは有料プラン——Start プラン以上——からです。
他人のスキルを接続する前のチェックリスト
よくある質問
スキルを書くのにプログラミングの知識は要りますか
要りません。スキルは普通の言葉で書く文章です。何をするか、どの順で、何を避ける か。技術的な要件はファイル冒頭のフロントマター 4 行だけで、上の例からそのまま 写せます。GitHub のリポジトリはウェブ画面で作成でき、ファイルもボタンで追加でき ます。
スキルとシステムプロンプトはどう違いますか
プロンプトは「誰がどんな語調で答えるか」を、スキルは「ある種類の仕事をどう 進めるか」を書きます。実務上の違いは使い回しにあります。プロンプトは個人のもの ですが、スキルは一度書けば同じ仕事をする誰にでも合います。スキルが共有され、 プロンプトがほとんど共有されないのはそのためです。
スキルと MCP、どちらを選べばよいですか
二者択一ではありません。スキルは方法を、MCP はデータと操作をもたらします。 答えが的外れならスキルが、答えは妥当なのに事実を知らないなら MCP が要ります。 両方必要な場面も多く、MCP がタスク管理からデータを運び、スキルがその扱い方を 定める、という形になります。
1 つのスキルを複数のプロンプトに接続できますか
できます。ライブラリは共通で、接続数に上限はありません。スキルの保存は一度、 接続した先すべてで働きます。
作者がリポジトリでスキルを書き換えたらどうなりますか
何も起きません。あなたの控えは取得元のコミットで凍結されています。変更が届くの は「リポジトリから更新」を押したときだけで、そのとき新しい本文はあらためて内容 フィルターを通ります。
検索結果が空になることがあるのはなぜですか
理由は 2 つあります。ディレクトリが一時的に落ちている場合——このとき一覧は空に なりますが、自分のリポジトリの接続は変わらず使えます。もう一つは GitHub 側の 回数制限です。トークンなしでは制限がサービス全体で数えられるため、そうした場面 では数分待つほうが、空の結果を「スキルがない」と見せるより誠実です。
Claude Code や Cursor 向けに書かれたスキルは、ここで動きますか
動きます。ただし指示が単体で成立していることが条件です。形式は同一で、文章も 同じように読まれます。移らないのは、ファイルシステムやシェル、スクリプト実行を 前提とした部分です。あなたの会議を扱うアシスタントには、そうしたものが設計上 存在しません。
まず何から
スキルが自分に合うかを見極める最短の方法は、アシスタントにすでに何度も続けて 出した指示を 1 つ選び、スキルとして保存してみることです。ファイルに 5 分、接続に 1 分。結果はすぐ読み取れます。答えが自分の意図に近づいたなら、あなたは繰り返しを やめたところです。近づかなかったなら、その指示は方法ではなくデータの話だったので、 答えは別の道具にあります。
スキルのライブラリはウェブ画面のプロンプトにあります。 プロンプトと役割の仕組みは Prompt Studio の解説に、どの モデルがどの役割を担うかはモデルの 役割の項にまとめてあります。