← Academy 日本語で学ぶ(一覧へ戻る)

agent skills

Anthropic Academy コースの日本語ナレッジ(学習用)/ 全 7 項目

Anthropic Academy「Introduction to agent skills」全文ナレッジノート

Claude Code のエージェントスキル(SKILL.md)入門コースの完全版ナレッジ。テキスト6レッスン+各レッスンの埋め込み動画(3〜4分)を、日本語ナレッジ・実務ポイント・動画逐語(日本語訳)・英語原文(レッスン本文+重複除去済み字幕)の4部構成で収録。

  • 修了証: https://verify.skilljar.com/c/yr72vniqzarv
  • 修了日: 2026-07-03
  • 進捗: 6/6 レッスン完了(クイズなし)

目次

# ノート 1行説明
1 01_what_are_skills.md スキル=SKILL.md の定義、置き場所(personal ~/.claude/skills / project .claude/skills)、CLAUDE.md・スラッシュコマンドとの違い
2 02_creating_your_first_skill.md pr-description スキルをゼロから作成、セマンティックマッチングと確認プロンプトの仕組み、優先順位 Enterprise→Personal→Project→Plugins
3 03_configuration_multifile.md メタデータ4フィールド(name/description 必須、allowed-tools/model 任意)、SKILL.md 500行ルールのプログレッシブ・ディスクロージャー、スクリプトは実行のみでトークン節約
4 04_skills_vs_other_features.md CLAUDE.md(常時)・サブエージェント(隔離)・フック(イベント駆動)・MCP(外部ツール)との使い分けと併用設計
5 05_sharing_skills.md Git・プラグイン/マーケットプレイス・エンタープライズ managed settings での共有3経路、サブエージェントは skills フィールド明示リスト必須(組み込みエージェントは不可)
6 06_troubleshooting_skills.md バリデータ起点のデバッグ手順——トリガー/ロード/誤スキル/シャドーイング/プラグイン/実行時エラーのチェックリスト

ソース

  • raw/ — 公式テキストレッスン原文(6ファイル)
  • subs/ — YouTube 自動字幕 vtt(bjdBVZa66oU=L1, Wx6_vjFFyHM=L2, 98KaK_rn5rQ=L3, IgNN4v0BJdU=L4, OCBi3eScNLk=L5, YBa1cwaG7is=L6)
↑ 目次へ戻る

Introduction to agent skills | Lesson 1「What are skills?」(全文ナレッジ)

テキストレッスン+埋め込み動画 3分(YouTube: bjdBVZa66oU)/ 2026-07-03

日本語ナレッジ(レッスン本文・完全版)

このレッスンで学ぶこと(What you'll learn)

所要時間の目安:15分

このレッスンを終えると、次のことができるようになります:

  • Claude Code のスキルとは何か、どのように動くかを定義できる
  • スキルがどこに置かれるか(個人用 vs プロジェクト用ディレクトリ)を説明できる
  • スキル・CLAUDE.md・スラッシュコマンドを区別できる
  • スキルが正しいカスタマイズ手段となるシナリオを特定できる

動画「What are skills?」(3分)

この動画では、スキル——特定のタスクの扱い方を Claude Code に自動で教える再利用可能な markdown ファイル——を紹介します。PR のレビューやコミットメッセージの作成を頼むたびに指示を繰り返す代わりに、スキルを一度書けば、そのタスクが出てくるたびに Claude が適用します。動画では、スキルとは何か、どこに置くのか、他の Claude Code カスタマイズ手段とどう違うのかを扱います。

キーテイクアウェイ(Key takeaways)

  • スキルは、Claude Code が発見してタスクをより正確に処理するために使える「指示のフォルダ」。各スキルは、frontmatter に name と description を持つ SKILL.md ファイルとして存在する
  • Claude は description を使ってスキルとリクエストを照合する。何かを頼むと、リクエストを利用可能なスキルの description と比較し、一致するものを起動する
  • 個人用スキルは ~/.claude/skills に置き、すべてのプロジェクトについて回る。プロジェクトスキルはリポジトリ内の .claude/skills に置き、クローンした全員に共有される
  • スキルはオンデマンドでロードされる——毎会話にロードされる CLAUDE.md や、明示的な起動が必要なスラッシュコマンドと違い、Claude が状況を認識した時に自動で起動する
  • 同じことを Claude に繰り返し説明しているなら、それは「書かれるのを待っているスキル」

本文導入

チームのコーディング標準を Claude に説明するたび、あなたは同じことを繰り返しています。PR レビューのたびにフィードバックの構成方法を再説明し、コミットメッセージのたびに好みのフォーマットを Claude に思い出させています。スキルはこれを解決します。

スキルとは、あることのやり方を Claude に一度だけ教える markdown ファイルです。以降、関連する場面が来るたびに、Claude はその知識を自動的に適用します。

スキルとは何か(What Skills Are)

スキルは、Claude Code が発見して、タスクをより正確に処理するために使える指示とリソースのフォルダです。各スキルは、frontmatter に name と description を持つ SKILL.md ファイルとして存在します。

description は、Claude がそのスキルを使うかどうかを判断する材料です。PR のレビューを頼むと、Claude はリクエストを利用可能なスキルの description と照合し、該当するものを見つけます。Claude はリクエストを読み、利用可能なすべてのスキルの description と比較し、一致するものを起動します。

スキルの frontmatter は次のようになります:

---
name: pr-review
description: Reviews pull requests for code quality. Use when reviewing PRs or checking code changes.
---

frontmatter の下に、実際の指示を書きます——レビューチェックリスト、フォーマットの好み、そのタスクのために Claude が知っておくべきことすべてです。

スキルの置き場所(Where Skills Live)

スキルは、誰が必要とするかに応じて異なる場所に保存できます:

  • 個人用スキル~/.claude/skills(ホームディレクトリ)に置きます。これらはすべてのプロジェクトであなたについて回ります——コミットメッセージのスタイル、ドキュメントのフォーマット、コードの説明のされ方の好みなど。
  • プロジェクトスキルはリポジトリのルートディレクトリ内の .claude/skills に置きます。リポジトリをクローンした人は誰でも自動的にこれらのスキルを手に入れます。チーム標準の置き場所です——会社のブランドガイドライン、Web デザインで使う指定フォントやカラーなど。

Windows では、個人用スキルは C:/Users/<your-user>/.claude/skills に置かれます。

プロジェクトスキルはコードと一緒にバージョン管理にコミットされるため、チーム全体で共有されます。

スキル vs. CLAUDE.md vs. スラッシュコマンド

Claude Code には挙動をカスタマイズする方法がいくつかあります。スキルがユニークなのは「自動」かつ「タスク特化」だからです。比較すると:

  • CLAUDE.md ファイルは毎回の会話にロードされます。Claude に常に TypeScript の strict mode を使わせたいなら、CLAUDE.md に書きます。
  • スキルはリクエストに一致した時にオンデマンドでロードされます。Claude は最初、name と description だけをロードするので、コンテキストウィンドウ全体を埋めることはありません。PR レビューのチェックリストはデバッグ中にコンテキストにある必要はなく、実際にレビューを頼んだ時にロードされます。
  • スラッシュコマンドは明示的にタイプする必要があります。スキルは不要です。Claude が状況を認識した時に適用します。

Claude がスキルをリクエストに一致させると、ターミナルにスキルがロードされる様子が表示されます:(※原文ではここにターミナル画面の図が入る)

スキルを使うべき場面(When to Use Skills)

スキルは、特定のタスクに適用される専門知識に最適です:

  • チームが従うコードレビュー標準
  • 好みのコミットメッセージフォーマット
  • 組織のブランドガイドライン
  • 特定タイプのドキュメント用のテンプレート
  • 特定フレームワーク用のデバッグチェックリスト

経験則はシンプルです:同じことを Claude に繰り返し説明しているなら、それは書かれるのを待っているスキルです。

レッスンの振り返り(Lesson reflection)

  • 直近の Claude Code とのやり取りを思い出してください。どの指示を繰り返していましたか?スキルがあればどれだけ時間を節約できたでしょうか?
  • チームのワークフローを考えてください。どの標準やプロセスがスキル化の恩恵を最も受けるでしょうか?

次のレッスン(What's next)

次のレッスンでは、最初のスキルをゼロから作り、Claude Code が裏側でどのようにスキルを発見・照合・ロードするかを学びます。

実務ポイント(このレッスンから持ち帰るもの)

  1. スキル化の判定基準は「繰り返し」——同じ指示を2回以上 Claude に説明したら、その内容は SKILL.md に切り出す。
  2. description が照合のすべて——スキルが使われるかどうかは frontmatter の description とリクエストの意味的な重なりで決まる。「何をするか+いつ使うか」を書く。
  3. 置き場所は2択——自分の好み(コミットスタイル等)は ~/.claude/skills、チーム標準(ブランドガイドライン等)はリポジトリの .claude/skills(Git 共有される)。
  4. CLAUDE.md との使い分け——「常に適用」は CLAUDE.md、「特定タスクのみ」はスキル。スキルは name/description しか常駐しないためコンテキストを節約できる。
  5. スラッシュコマンドとの違いは起動方法——スラッシュコマンドは手動入力、スキルは Claude が状況を認識して自動適用。

動画逐語(日本語訳)

[0:03] チームのコーディング標準を Claude に説明するたび、あなたは同じことを繰り返しています。PR レビューのたびに、フィードバックの構成の仕方を説明し直しています。コミットメッセージのたびに、好みのフォーマットを Claude に思い出させています。そして——スキルがこれを解決します。

[0:20] スキルとは、あることのやり方を Claude に一度だけ教える markdown ファイルであり、Claude は関連する場面が来るたびにその知識を自動的に適用します。

[0:32] エージェントスキルとは、エージェントが発見して、物事をより正確かつ効率的にこなすために使える、指示・スクリプト・リソースのフォルダです。Claude Code では、SKILL.md ファイルがその実体です。

[0:45] description は、Claude がそのスキルを使うかどうかを判断する手がかりです。「この PR をレビューして」と頼むと、Claude はリクエストを利用可能なスキルの description と照合し、該当するものを見つけます。Claude はリクエストを読み、利用可能なすべてのスキルの description と比較し、一致するものを起動します。

[1:05] スキルは、誰が必要とするかに応じていくつかの場所に置けます。個人用スキルはホームディレクトリの .claude/skills に置き、あなたのすべてのプロジェクトについて回ります。これはあなた自身の好みです——コミットメッセージのスタイル、ドキュメントのフォーマット、コードをどう説明してほしいか。

[1:24] プロジェクトスキルは、リポジトリのルートディレクトリ内の .claude/skills に置きます。リポジトリをクローンした人は誰でも、これらのスキルを自動的に手に入れます。ここはチーム標準の置き場所です——会社のブランドガイドラインや、Web デザインで使う指定フォント・カラーなど。

[1:43] Claude Code には挙動をカスタマイズする方法がいくつかあります。スキルがユニークなのは、「自動」かつ「タスク特化」である点です。CLAUDE.md ファイルは毎回の会話にロードされます。Claude に常に TypeScript strict mode を使わせたいなら、それは CLAUDE.md に書きます。一方スキルは、リクエストに一致した時にオンデマンドでロードされます。最初は name と description だけをロードするので、コンテキストウィンドウ全体を埋めません。PR レビューのチェックリストは、デバッグ中にコンテキストにある必要はありません。実際にレビューを頼んだ時にロードされます。

[2:17] スラッシュコマンドは自分でタイプする必要があります。スキルは不要です。Claude が状況を認識した時に適用します。

[2:27] スキルは、特定のタスクに適用される専門知識に最適です。チームが従うコードレビュー標準、好みのコミットメッセージフォーマット、組織のブランドガイドライン。

[2:42] 同じことを Claude に繰り返し説明しているなら——そう、それは書かれるのを待っているスキルです。

英語原文

レッスン本文

What are skills?

What you'll learn

Estimated time: 15 minutes

By the end of this lesson you'll be able to:

Define what Claude Code skills are and how they work
Explain where skills live (personal vs. project directories)
Distinguish between skills, CLAUDE.md, and slash commands
Identify scenarios where skills are the right customization tool
What are skills?

(3 minutes)

This video introduces skills — reusable markdown files that teach Claude Code how to handle specific tasks automatically. Instead of repeating instructions every time you ask Claude to review a PR or write a commit message, you write a skill once and Claude applies it whenever the task comes up. The video covers what skills are, where they live, and how they compare to other Claude Code customization options.

Key takeaways
Skills are folders of instructions that Claude Code can discover and use to handle tasks more accurately. Each skill lives in a SKILL.md file with a name and description in its frontmatter
Claude uses the description to match skills to requests. When you ask Claude to do something, it compares your request against available skill descriptions and activates the ones that match
Personal skills go in ~/.claude/skills and follow you across all projects. Project skills go in .claude/skills inside a repository and are shared with anyone who clones it
Skills load on demand — unlike CLAUDE.md (which loads into every conversation) or slash commands (which require explicit invocation), skills activate automatically when Claude recognizes the situation
If you find yourself explaining the same thing to Claude repeatedly, that's a skill waiting to be written

Every time you explain your team's coding standards to Claude, you're repeating yourself. Every PR review, you re-describe how you want feedback structured. Every commit message, you remind Claude of your preferred format. Skills fix this.

A skill is a markdown file that teaches Claude how to do something once. Claude then applies that knowledge automatically whenever it's relevant.

What Skills Are

Skills are folders of instructions and resources that Claude Code can discover and use to handle tasks more accurately. Each skill lives in a SKILL.md file with a name and description in its frontmatter.

The description is how Claude decides whether to use the skill. When you ask Claude to review a PR, it matches your request against available skill descriptions and finds the relevant one. Claude reads your request, compares it to all available skill descriptions, and activates the ones that match.

Here's what a skill's frontmatter looks like:

---
name: pr-review
description: Reviews pull requests for code quality. Use when reviewing PRs or checking code changes.
---

Below the frontmatter, you write the actual instructions — your review checklist, formatting preferences, or whatever Claude needs to know for that task.

Where Skills Live

You can store skills in different places depending on who needs them:

Personal skills go in ~/.claude/skills (your home directory). These follow you across all your projects — your commit message style, your documentation format, how you like code explained.
Project skills go in .claude/skills inside the root directory of your repository. Anyone who clones the repo gets these skills automatically. This is where team standards live, like your company's brand guidelines, preferred fonts, and colors for web design.

On Windows, personal skills live in C:/Users/<your-user>/.claude/skills.

Project skills get committed to version control alongside your code, so the whole team shares them.

Skills vs. CLAUDE.md vs. Slash Commands

Claude Code has several ways to customize behavior. Skills are unique because they're automatic and task-specific. Here's how they compare:

CLAUDE.md files load into every conversation. If you want Claude to always use TypeScript's strict mode, that goes in CLAUDE.md.
Skills load on demand when they match your request. Claude only loads the name and description initially, so they don't fill up your entire context window. Your PR review checklist doesn't need to be in context when you're debugging — it loads when you actually ask for a review.
Slash commands require you to explicitly type them. Skills don't. Claude applies them when it recognizes the situation.

When Claude matches a skill to your request, you'll see it load in the terminal:

When to Use Skills

Skills work best for specialized knowledge that applies to specific tasks:

Code review standards your team follows
Commit message formats you prefer
Brand guidelines for your organization
Documentation templates for specific types of docs
Debugging checklists for particular frameworks

The rule of thumb is simple: if you find yourself explaining the same thing to Claude repeatedly, that's a skill waiting to be written.

Lesson reflection
Think about your most recent interactions with Claude Code. Which instructions did you find yourself repeating? How might a skill have saved you time?
Consider your team's workflow. Which standards or processes would benefit most from being encoded as skills?
What's next

In the next lesson, you'll create your first skill from scratch and learn how Claude Code discovers, matches, and loads skills behind the scenes.

動画字幕(重複除去済み)

Every time you explain your team's coding standards to Claude, you're repeating yourself. Every PR review, you redescribe how you want feedback structured. Every commit message, you remind Claude of your preferred format. And skills fix this.

A skill is a markdown file that teaches Claude how to do something once, and Claude applies that knowledge automatically whenever it's relevant.

Agent skills are folders of instructions, scripts, and resources that agents can discover and use to do things more accurately and efficiently. With Claude Code, we have the skill.md file.

The description is how Claude decides whether to use the skill. When you ask Claude to review this PR, it matches your request against available skill descriptions and finds this one. Claude reads your request, compares it to all available skill descriptions, and activates the ones that match.

You can store skills in a few places depending on who needs them. Personal skills go in the home directory .claude/skills and follow you across all your project. These are your preferences, your commit message style, your documentation format, how you like code explained.

Project skills go in the .claude/skills inside of the root directory of your repository. Anyone who clones the repository gets these skills automatically. This is where team standards live, like your company's brand guidelines, preferred fonts, and colors that you use for web design.

Claude Code has several ways to customize behavior. Skills are unique because they're automatic and task-specific. Claude.md files load into every conversation. If you want Claude to always use TypeScript strict mode, that goes in your claude.md file. Skills, on the other hand, load on demand when they match your request. It only loads in the name and description, so it doesn't fill up your entire context window. Your PR review checklist doesn't need to be in the context when you're debugging. It loads when you actually ask for a review.

Slash commands require you to type them. Skills don't. Claude applies them when it recognizes the situation.

Skills work best for specialized knowledge that applies to specific tasks. Code review standards your team follows, commit message formats that you prefer, brand guidelines of your organization.

If you find yourself explaining the same thing to Claude repeatedly, well, that's a skill waiting to be written.

↑ 目次へ戻る

Introduction to agent skills | Lesson 2「Creating your first skill」(全文ナレッジ)

テキストレッスン+埋め込み動画 4分(YouTube: Wx6_vjFFyHM)/ 2026-07-03

日本語ナレッジ(レッスン本文・完全版)

このレッスンで学ぶこと(What you'll learn)

所要時間の目安:20分

このレッスンを終えると、次のことができるようになります:

  • 正しい frontmatter 構造を持つスキルをゼロから作成できる
  • スキルが Claude Code で正しくロードされることをテスト・検証できる
  • Claude Code が入ってくるリクエストを利用可能なスキルにどう照合するかを説明できる
  • スキルの優先順位ヒエラルキー(Enterprise・Personal・Project・Plugins)を説明できる

動画「Creating your first skill」(4分)

この動画では、スキルをゼロから作る手順を追います——すべてのプロジェクトで使える個人用の PR 説明文スキルです。SKILL.md ファイルの正確な構造、テスト方法、そして Claude Code がスキルを発見してリクエストに照合する仕組みが分かります。名前が衝突した時にどのスキルが勝つかを決める優先順位ヒエラルキーも扱います。

キーテイクアウェイ(Key takeaways)

  • スキルとは、frontmatter にメタデータ(name・description)、その下に指示を書いた SKILL.md ファイルを含むディレクトリ
  • Claude は起動時にスキルの name と description だけをロードし、入ってくるリクエストをセマンティックマッチング(意味的照合)でそれらの description と照合する
  • Claude がスキルの全文をコンテキストにロードする前に、確認プロンプトが表示される
  • 名前衝突時の優先順位:Enterprise → Personal → Project → Plugins
  • スキルの更新は SKILL.md の編集、削除はディレクトリの削除。変更を反映するには必ず Claude Code を再起動する

本文導入

スキルをゼロから作る手順を追い、その後、Claude Code が裏側で実際にどうスキルをロード・照合しているかを見ていきましょう。

スキルの作成(Creating a Skill)

一貫したフォーマットで PR の説明文を書く方法を Claude に教える個人用スキルを作ります。個人用スキルなので、ホームディレクトリに置かれ、すべてのプロジェクトで機能します。

まず、skills フォルダの中にスキル用のディレクトリを作ります。ディレクトリ名はスキル名と一致させます:

mkdir -p ~/.claude/skills/pr-description

次に、そのディレクトリの中に SKILL.md ファイルを作ります。ファイルは frontmatter のダッシュで区切られた2つの部分から成ります:

---
name: pr-description
description: Writes pull request descriptions. Use when creating a PR, writing a PR, or when the user asks to summarize changes for a pull request.
---

When writing a PR description:

1. Run `git diff main...HEAD` to see all changes on this branch
2. Write a description following this format:

## What
One sentence explaining what this PR does.

## Why
Brief context on why this change is needed

## Changes
- Bullet points of specific changes made
- Group related changes together
- Mention any files deleted or renamed

name はスキルを識別します。description は Claude にいつ使うべきかを伝えます——これが照合基準です。2つ目のダッシュ以降のすべてが、スキル起動時に Claude が従う指示です。

スキルのテスト(Testing Your Skill)

Claude Code は起動時にスキルをロードするので、スキル作成後はセッションを再起動してください。利用可能なスキルの一覧を確認すれば、使えるようになったか検証できます。

一覧に自分のスキルが表示されるはずです。テストするには、ブランチ上で何か変更を加え、「write a PR description for my changes(変更の PR 説明文を書いて)」のように言います。Claude は PR description スキルを使っていることを示し、diff を確認して、あなたのテンプレートに従った説明文を書きます——毎回同じフォーマットです。

スキル照合の仕組み(How Skill Matching Works)

Claude Code は起動時に4つの場所をスキャンしてスキルを探しますが、ロードするのは name と description だけで、全文ではありません。これは重要なポイントです。

リクエストを送ると、Claude はあなたのメッセージを利用可能なすべてのスキルの description と比較します。例えば「explain what this function does(この関数が何をするか説明して)」は、「explain code with visual diagrams(視覚的な図解でコードを説明する)」と書かれたスキルに一致します。意図が重なるからです。

一致が見つかると、Claude はスキルのロードを確認するよう求めます。この確認ステップによって、Claude がどんなコンテキストを取り込もうとしているかを把握し続けられます。確認すると、Claude は SKILL.md ファイル全体を読み、その指示に従います。

スキルの優先順位(Skill Priority)

自分の個人用スキルと同名のスキルを持つリポジトリをクローンしたら、どちらが勝つのでしょうか?明確な優先順位があります:

  1. Enterprise — managed settings(管理設定)。最優先
  2. Personal — ホームディレクトリ(~/.claude/skills
  3. Project — リポジトリ内の .claude/skills ディレクトリ
  4. Plugins — インストール済みプラグイン。最下位

これにより、組織はエンタープライズスキルで標準を強制しつつ、個人のカスタマイズも許容できます。会社にエンタープライズの「code-review」スキルがあり、あなたが同名の個人用「code-review」スキルを作った場合、エンタープライズ版が優先されます。

衝突を避けるには、説明的な名前を使いましょう。単なる「review」ではなく、「frontend-review」や「backend-review」のような名前にします。

スキルの更新と削除(Updating and Removing Skills)

スキルを更新するには、その SKILL.md ファイルを編集します。削除するには、そのディレクトリを削除します。変更後は、反映のために Claude Code を再起動してください。

レッスンの振り返り(Lesson reflection)

  • あなたの日々のワークフローの中で、今すぐスキル化できるタスクは何ですか?その description はどんな内容になりますか?
  • 優先順位ヒエラルキーは、チームのスキル管理戦略にどう影響するでしょうか?

次のレッスン(What's next)

次のレッスンでは、発展的な設定オプションを扱います。メタデータフィールド、allowed-tools によるツール制限、そしてプログレッシブ・ディスクロージャーとマルチファイル構成による大きなスキルの構造化です。

実務ポイント(このレッスンから持ち帰るもの)

  1. 作成手順は3ステップ——mkdir -p ~/.claude/skills/<スキル名> → SKILL.md 作成(frontmatter+指示)→ Claude Code 再起動。ディレクトリ名=スキル名。
  2. 起動時は name/description のみロード——全文はマッチ成立+ユーザー確認後にロード。確認プロンプトはコンテキストへの取り込みを可視化する安全装置。
  3. 照合はセマンティックマッチング——キーワード完全一致ではなく意図の重なりで判定。「explain what this function does」が「explain code with visual diagrams」にマッチする。
  4. 優先順位を暗記——Enterprise → Personal → Project → Plugins。同名衝突ではエンタープライズが常に勝つ。
  5. 名前は具体的に——「review」ではなく「frontend-review」「backend-review」。衝突予防の第一手段はリネーム。
  6. 変更は再起動しないと反映されない——更新・削除のどちらも Claude Code の再起動が必要。

動画逐語(日本語訳)

[0:03] では、スキルを作ってみましょう。このスキルは、視覚的な図解とアナロジーを使ってコードを説明してほしい、という私たちの好みのやり方を Claude に教えるものです。その後、Claude がスキルを使う時に内部(フードの下)で何が起きているかを見ていきます。

[0:18] まず、スキル用のディレクトリを作りましょう。今回作るのは個人用スキルで、多くのプロジェクトで使うことになるので、ホームディレクトリに置きます。skills ディレクトリの中に「スキル名のディレクトリ」を作っている点に注意してください。

[0:33] 次に、スキルを作成します。

[0:38] name はスキルを識別します。description は Claude にいつ使うべきかを伝えます。これが照合基準です。そして、2つ目のダッシュ以降のすべてが、Claude が従う指示になります。

[0:52] Claude Code は起動時にスキルをロードします。なのでセッションを再起動してください。それから、利用可能になっているか検証します。

[1:00] 一覧に「PR description」が表示されるはずです。

[1:04] では、テストしましょう。ブランチ上で何か変更を加えて、「変更の PR 説明文を書いて」と言います。

[1:11] すると Claude は、PR description スキルを使っていることを表示します。

[1:17] その後、diff を確認し、あなたのテンプレートに従って説明文を書きます。毎回まったく同じフォーマットです。

[1:24] Claude Code は起動時に、4つの場所をスキャンしてスキルを探します。エンタープライズのパス、あなたの個人用 Claude スキル、プロジェクトの Claude スキル、そしてインストール済みプラグインです。各スキルの name と description だけをロードし、全文はロードしません。これは後で重要になります。リクエストを送ると、Claude はそれをスキルの description と比較します。「この関数が何をするか説明して」は、「視覚的な図解でコードを説明する」と書かれたスキルに一致します。意図が重なるからです。すると、スキルをロードしてよいか確認を求められます。この確認ステップのおかげで、Claude がどんなコンテキストを使おうとしているかを把握できます。確認すると、Claude はファイル全体を読み、その指示に従います。

[2:00] さて、Git リポジトリをクローンして、スキル名が重複していたとしましょう。どちらが勝つのでしょうか?優先順位リストはこうです。最上位はエンタープライズで、managed settings にあります。2番目は個人用で、いままさに作っているようなホームディレクトリの設定にあります。3番目はプロジェクトで、リポジトリ内の .claude ディレクトリです。そして最下位はプラグインで、オンラインで入手したプラグインの置き場所です。

[2:27] これにより、組織は標準を強制しつつ、名前を変えたスキルによる個人のカスタマイズを許容できます。会社にエンタープライズの code review スキルがあり、あなたが個人用の code review スキルを作った場合、エンタープライズ版が優先されます。衝突を避けるには、説明的な名前を使いましょう。「review」ではなく、「front-end PR review」や「security review」のように。

[2:52] スキルを更新するには、SKILL.md ファイルを編集するだけ。シンプルです。削除するには、ディレクトリを消します。変更後は Claude Code を再起動すると反映されます。

[3:06] まとめ。スキルの作成とは、メタデータと指示を含む SKILL.md ファイルを持つディレクトリを作ることです。Claude は起動時にスキルの name と description をロードし、入ってくるリクエストをそれらの description と照合し、全文をロードする前に確認を求めます。名前の衝突は優先順位ルールで処理されます——エンタープライズが個人に優先し、個人がプロジェクトに優先し、プロジェクトがプラグインに優先します。スキルを更新するには SKILL.md ファイルを編集し、変更を反映するには Claude Code を再起動します。

英語原文

レッスン本文

[YouTube: Wx6_vjFFyHM (4 minutes)]
Creating your first skill

What you'll learn
Estimated time: 20 minutes
By the end of this lesson you'll be able to:
Create a skill from scratch with proper frontmatter structure
Test and verify that a skill loads correctly in Claude Code
Explain how Claude Code matches incoming requests to available skills
Describe the skill priority hierarchy (Enterprise, Personal, Project, Plugins)

Creating your first skill (4 minutes)
This video walks through building a skill from scratch — a personal PR description skill that works across all your projects. You'll see exactly how to structure the SKILL.md file, test it, and understand how Claude Code discovers and matches skills to your requests. The video also covers the priority hierarchy that determines which skill wins when names conflict.

Key takeaways
A skill is a directory containing a SKILL.md file with metadata (name, description) in frontmatter and instructions below
Claude loads only skill names and descriptions at startup, then matches incoming requests against those descriptions using semantic matching
You get a confirmation prompt before Claude loads the full skill content into context
Priority for name conflicts: Enterprise → Personal → Project → Plugins
To update a skill, edit its SKILL.md. To remove one, delete its directory. Always restart Claude Code for changes to take effect

Let's walk through creating a skill from scratch, then look at how Claude Code actually loads and matches skills behind the scenes.

Creating a Skill
We'll build a personal skill that teaches Claude how to write PR descriptions in a consistent format. Since it's a personal skill, it lives in your home directory and works across all your projects.
First, create a directory for your skill inside the skills folder. The directory name should match your skill name:

mkdir -p ~/.claude/skills/pr-description

Then create a SKILL.md file inside that directory. The file has two parts separated by frontmatter dashes:

---
name: pr-description
description: Writes pull request descriptions. Use when creating a PR, writing a PR, or when the user asks to summarize changes for a pull request.
---

When writing a PR description:

1. Run `git diff main...HEAD` to see all changes on this branch
2. Write a description following this format:

## What
One sentence explaining what this PR does.

## Why
Brief context on why this change is needed

## Changes
- Bullet points of specific changes made
- Group related changes together
- Mention any files deleted or renamed

The name identifies your skill. The description tells Claude when to use it — this is the matching criteria. Everything after the second set of dashes is the instructions Claude follows when the skill is activated.

Testing Your Skill
Claude Code loads skills at startup, so restart your session after creating one. You can verify it's available by checking the available skills list.
You should see your skill listed. To test it, make some changes on a branch and say something like "write a PR description for my changes." Claude will indicate it's using the PR description skill, check your diff, and write a description following your template — same format every time.

How Skill Matching Works
When Claude Code starts, it scans four locations for skills but only loads the name and description — not the full content. This is an important detail.
When you send a request, Claude compares your message against the descriptions of all available skills. For example, "explain what this function does" would match a skill described as "explain code with visual diagrams" because the intent overlaps.
Once a match is found, Claude asks you to confirm loading the skill. This confirmation step keeps you aware of what context Claude is pulling in. After you confirm, Claude reads the complete SKILL.md file and follows its instructions.

Skill Priority
If you clone a repository that has a skill with the same name as one of your personal skills, which one wins? There's a clear priority order:
Enterprise — managed settings, highest priority
Personal — your home directory (~/.claude/skills)
Project — the .claude/skills directory inside a repository
Plugins — installed plugins, lowest priority

This lets organizations enforce standards through enterprise skills while still allowing individual customization. If your company has an enterprise "code-review" skill and you create a personal "code-review" skill with the same name, the enterprise version takes precedence.
To avoid conflicts, use descriptive names. Instead of just "review," use something like "frontend-review" or "backend-review."

Updating and Removing Skills
To update a skill, edit its SKILL.md file. To remove one, delete its directory. Restart Claude Code after any changes for them to take effect.

Lesson reflection
What's one task in your daily workflow that you could turn into a skill right now? What would the description look like?
How might the priority hierarchy affect your team's skill management strategy?

What's next
In the next lesson: advanced configuration options including metadata fields, tool restrictions with allowed-tools, and how to structure larger skills using progressive disclosure and multi-file organization.

動画字幕(重複除去済み)

So, let's create a skill. This skill will teach Claude how we would like it to explain code using visual diagrams and analogies. Then, we'll look at what happens under the hood when Claude uses it.

First, let's create a directory for your skill. We're going to be making a personal skill, so it'll live in many projects, so it will go in your home directory. Take into consideration that we're creating a directory with the skill name inside of the skills directory.

Now create the skill.

The name identifies your skill. The description tells Claude when to use it. This is the matching criteria. And then everything after the second dashes is the instructions that Claude follows.

Claude Code loads skills at startup. So restart your session. Then verify it's available. You should see PR description in the list.

Now test it. Make some changes on a branch and say, "Write a PR description for my changes." Claude will then show you that it's using the PR description skill. After that, it'll check your diff and write a description following your template. Same format every single time.

When Claude Code starts, it scans four locations for skills. Enterprise paths, your personal Claude skills, the project's Claude skills, and installed plugins. It loads only the name and description of each skill, not the full content. This is important later. When you send a request, Claude compares it to the descriptions of your skills. "Explain what this function does" matches a skill described as "explain code with visual diagrams" because the intent overlaps. It will then ask you to confirm loading up the skill. This confirmation step keeps you aware of what context Claude is using. After you confirm, Claude reads the complete file and follows its instructions.

Now, let's say you clone a Git repository and have an overlapping skill name. Well, which one wins? Here's the priority list. The highest is enterprise, which lives in the managed settings. Two is the personal, which lives in your root directory configuration like we're doing right now. Three is the project which is the .claude directory inside of your repository. And the lowest is the plugins where you store your plugins that you got online.

This lets organizations enforce standards while allowing individual customization through differently named skills. If your company has an enterprise code review skill and you create a personal code review skill, the enterprise version of that takes precedence. To avoid conflicts, use descriptive names. Instead of review, use front-end PR review or security review.

To update a skill, edit its skill.md file. Simple. To remove one, delete its directory. Restart Claude Code after changes for them to take effect.

Creating a skill means making a directory with a skill.md file containing metadata and instructions. Claude loads skill names and descriptions at startup, matches incoming requests against those descriptions and asks for confirmation before loading the full content. Priority rules handling name conflicts: enterprise overrides personal, personal overrides project, project overrides plugins. Edit the skill.md file to update a skill and restart Claude Code for changes to take effect.

↑ 目次へ戻る

Introduction to agent skills | Lesson 3「Configuration and multi-file skills」(全文ナレッジ)

テキストレッスン+埋め込み動画 4分(YouTube: 98KaK_rn5rQ)/ 2026-07-03

日本語ナレッジ(レッスン本文・完全版)

このレッスンで学ぶこと(What you'll learn)

所要時間の目安:20分

  • allowed-tools や model を含む発展的なスキルメタデータフィールドを設定できる
  • 正しいリクエストで確実にトリガーされる、効果的なスキル description を書ける
  • allowed-tools を使って、スキルが有効な間に Claude ができることを制限できる
  • プログレッシブ・ディスクロージャー(段階的開示)とマルチファイル構造を使って複雑なスキルを整理できる

キーテイクアウェイ(Key takeaways)

  • name と description は必須——allowed-tools と model はオプションだが強力な追加要素
  • 良い description は2つの問いに答える:このスキルは何をするのか?Claude はいつ使うべきか?
  • allowed-tools は、スキルが有効な間に Claude が使えるツールを制限する——読み取り専用やセキュリティ重視のワークフローに有用
  • プログレッシブ・ディスクロージャー:SKILL.md を500行未満に保ち、Claude が必要な時だけ読むサポートファイル(references・scripts・assets)にリンクする
  • スクリプトは中身をコンテキストにロードせずに実行される——出力だけがトークンを消費するので、コンテキストが効率的に保たれる

スキルのメタデータフィールド(Skill Metadata Fields)

エージェントスキルのオープン標準は、SKILL.md の frontmatter でいくつかのフィールドをサポートしています。2つが必須で、残りはオプションです:

  • name(必須) — 小文字・数字・ハイフンのみ。最大64文字。ディレクトリ名と一致させるべき。
  • description(必須) — Claude にいつスキルを使うかを伝える。最大1,024文字。最も重要なフィールド(照合に使われる)。
  • allowed-tools(オプション) — スキルが有効な間に Claude が使えるツールを制限する。
  • model(オプション) — そのスキルにどの Claude モデルを使うかを指定する。

効果的な description の書き方(Writing Effective Descriptions)

明示的に書きましょう。良い description は次の2つの問いに答えます:このスキルは何をするのか?Claude はいつ使うべきか?

期待した時にスキルがトリガーされない場合は、自分が実際にリクエストを言い表す言い方に一致するキーワードをさらに追加してください。

allowed-tools によるツール制限(Restricting Tools with allowed-tools)

読み取り専用/セキュリティ重視のワークフロー向け:

---
name: codebase-onboarding
description: Helps new developers understand the system works.
allowed-tools: Read, Grep, Glob, Bash
model: sonnet
---

このスキルが有効な間、Claude は指定されたツールだけを許可を求めずに使えます——編集も書き込みもできません。allowed-tools を省略すると、通常の権限モデルが使われます。

プログレッシブ・ディスクロージャー(Progressive Disclosure)

スキルは Claude のコンテキストウィンドウを共有します。すべてを2,000行の1ファイルに詰め込むと、コンテキストスペースを取り、メンテナンスも困難になります。

必須の指示は SKILL.md に置き、詳細な参照資料は、Claude が必要な時だけ読む別ファイルに置きます。

オープン標準が推奨する構成:

  • scripts/(実行可能コード)
  • references/(追加ドキュメント)
  • assets/(画像・テンプレート・データファイル)

サポートファイルは SKILL.md からリンクし、いつロードすべきかを明確に指示します。例:誰かがシステム設計について尋ねた時だけ、Claude が architecture-guide.md を読む。ドキュメント全体をコンテキストウィンドウに入れるのではなく、目次だけを入れておくようなものです。

経験則:SKILL.md は500行未満に保つ。それを超えたら参照ファイルに分割する。

スクリプトの効率的な利用(Using Scripts Efficiently)

スキルディレクトリ内のスクリプトは、中身をコンテキストにロードせずに実行されます——出力だけがトークンを消費します。キーとなる指示:Claude にスクリプトを「読む」のではなく「実行する」よう伝えること。

有用な用途:

  • 環境の検証
  • 一貫性が必要なデータ変換
  • 生成コードよりもテスト済みコードの方が信頼できる処理

次のレッスン(What's next)

スキルを CLAUDE.md・サブエージェント・フック・MCP サーバーと比較します。

実務ポイント(このレッスンから持ち帰るもの)

  1. frontmatter の制約値を正確に——name は小文字・数字・ハイフンのみで最大64文字(ディレクトリ名と一致)、description は最大1,024文字。必須はこの2つだけ。
  2. description は「何をする+いつ使う」の2問回答形式——トリガーされない場合の第一手は、実際の言い回しに合わせたキーワード追加。
  3. 読み取り専用スキルには allowed-tools——allowed-tools: Read, Grep, Glob, Bash のように列挙すれば、有効中は編集・書き込み不可になる。セキュリティ重視のワークフローの型。
  4. 500行ルール——SKILL.md は500行未満。超えるなら scripts/ references/ assets/ に分割し、「いつ読むか」の指示付きでリンクする(目次パターン)。
  5. スクリプトは「実行」させる——中身はコンテキストに載らず出力のみトークン消費。環境検証・決定論的なデータ変換はコード化してスキルに同梱する。

動画逐語(日本語訳)

[0:02] 基本のスキルは name と description だけで動きますが、Claude Code でスキルを本当に効果的にするための発展的なコツを紹介します。

[0:12] agentskills.io のオープン標準には多くの利用可能なフィールドがあります。name はすでに見た通りで、スキルを識別し、小文字・数字・ハイフンのみを使い、最大64文字で、ディレクトリ名と一致させるべきものです。description も必須で、Claude にいつスキルを使うべきかを伝えます。最大1,024文字で、最も重要なフィールドです。Claude はこれを照合に使います。さらに、他のオプションフィールドも追加できます。1つは allowed-tools フィールドで、スキルが有効な間に Claude が使えるツールを制限します。model フィールドは、そのスキルにどの Claude モデルを使うかを指定します。

[0:50] 指示は明示的に書くようにしましょう。例えば、誰かに「あなたの仕事は犬を手伝うことです」と言われても、私は何をすればいいのか分かりません。Claude も同じように考えると想定すべきです。良い description は2つの問いに答えます。このスキルは何をするのか?そして、Claude はいつ使うべきか?

[1:08] 一方、こちらの(具体的な)職務記述書を渡されたら、仕事をやり遂げられる自信がもう少し持てます。スキルがトリガーされない場合は、自分がリクエストを言い表す言い方に一致するキーワードを追加してください。

[1:20] 時には、ファイルを読むだけで変更はできないスキルが欲しいこともあります。セキュリティ的に敏感なワークフローや読み取り専用のタスクなどです。これを可能にするのが allowed-tools フィールドです。このスキルが有効な間、Claude は指定されたツールだけを許可を求めずに使えます。編集なし、書き込みなし、bash コマンドなし。allowed-tools を省略すれば、スキルは何も制限せず、Claude は通常の権限モデルを使います。

[1:49] スキルは、あなたの会話と一緒に Claude のコンテキストウィンドウを共有します。Claude がスキルを使おうとすると、そのスキルの中身をコンテキストにロードすると判断します。しかし、スキルに必要な参照資料や例、ユーティリティスクリプトが要る場合もあります。それを2万行のテキストファイル1つに全部詰め込むと、コンテキストウィンドウの多くのスペースを取ってしまいます。それに正直なところ、そんなファイルのメンテナンスは楽しくありません。ここで登場するのがプログレッシブ・ディスクロージャー(段階的開示)です。必須の指示は SKILL.md に置き、詳細な参照資料は、必要な時だけ Claude が読む別ファイルに置きます。オープン標準はさらに、実行可能コード用の scripts フォルダ、追加ドキュメント用の references、そしてそのスキルに関連する画像・テンプレート・その他データファイル用の assets を持つことを推奨しています。

[2:39] そして SKILL.md の中で、サポートファイルへリンクします。この例では、Claude は誰かがシステム設計について尋ねた時だけ architecture.md を読みます。たとえば「コンポーネントをどこに追加すればいい?」と聞かれただけなら、そのファイルは一切ロードされません。ドキュメント全体を丸ごと押し込むのではなく、コンテキストウィンドウに目次を置いておくようなものです。SKILL.md は500行未満に保ってください。それを超えているなら、コンテンツを分割すべきかどうか検討しましょう。

[3:08] スキルディレクトリ内のスクリプトは、中身をコンテキストにロードせずに実行できます。スクリプトが実行され、出力だけがトークンを消費します。Claude には「スクリプトを実行しろ、読むな」と伝えてください。これは、環境の検証、一貫性が必要なデータ変換、生成コードよりテスト済みコードの方が信頼できる処理に、とても有用です。

[3:31] まとめ。スキルはメタデータフィールドをサポートします。name と description は必須。allowed-tools は利用可能なツールを制限し、model はどの Claude を使うかを指定します。description には、確実に照合されるための具体的なアクションとトリガーフレーズが必要です。大きなスキルにはプログレッシブ・ディスクロージャーを使いましょう。SKILL.md ファイルを500行未満に保ち、必要な時だけロードされるサポートファイルにリンクします。スクリプトは中身をロードせずに実行でき、コンテキストを効率的に保ちます。

英語原文

レッスン本文

[YouTube: 98KaK_rn5rQ (4 minutes)]
Configuration and multi-file skills

What you'll learn — Estimated time: 20 minutes
Configure advanced skill metadata fields including allowed-tools and model
Write effective skill descriptions that reliably trigger on the right requests
Use allowed-tools to restrict what Claude can do when a skill is active
Organize complex skills using progressive disclosure and multi-file structures

Key takeaways
name and description are required — allowed-tools and model are optional but powerful additions
A good description answers two questions: What does the skill do? When should Claude use it?
allowed-tools restricts which tools Claude can use when the skill is active — useful for read-only or security-sensitive workflows
Progressive disclosure: keep SKILL.md under 500 lines and link to supporting files (references, scripts, assets) that Claude reads only when needed
Scripts execute without loading their contents into context — only the output consumes tokens, keeping context efficient

Skill Metadata Fields
The agent skills open standard supports several fields in the SKILL.md frontmatter. Two required, rest optional:
name (required) — lowercase letters, numbers, hyphens only. Max 64 chars. Should match directory name.
description (required) — tells Claude when to use the skill. Max 1,024 chars. Most important field (matching).
allowed-tools (optional) — restricts which tools Claude can use when the skill is active.
model (optional) — specifies which Claude model to use for the skill.

Writing Effective Descriptions
Be explicit. A good description answers: What does the skill do? When should Claude use it?
If your skill isn't triggering when you expect, add more keywords that match how you actually phrase requests.

Restricting Tools with allowed-tools
Read-only / security-sensitive workflows:

---
name: codebase-onboarding
description: Helps new developers understand the system works.
allowed-tools: Read, Grep, Glob, Bash
model: sonnet
---

When active, Claude can only use those tools without asking permission — no editing, no writing. Omit allowed-tools → normal permission model.

Progressive Disclosure
Skills share Claude's context window. Cramming everything into one 2,000-line file: takes context space, hard to maintain.
Keep essential instructions in SKILL.md; put detailed reference material in separate files Claude reads only when needed.
Open standard suggests: scripts/ (executable code), references/ (additional documentation), assets/ (images, templates, data files).
Link supporting files from SKILL.md with clear instructions about when to load them. Example: Claude reads architecture-guide.md only when someone asks about system design. Like having a table of contents in the context window rather than the entire document.
Rule of thumb: keep SKILL.md under 500 lines; beyond that, split into reference files.

Using Scripts Efficiently
Scripts in skill directory run without loading their contents into context — only output consumes tokens. Key instruction: tell Claude to RUN the script, not read it.
Useful for: environment validation / data transformations that need consistency / operations more reliable as tested code than generated code.

What's next: compare skills to CLAUDE.md, subagents, hooks, MCP servers.

動画字幕(重複除去済み)

A basic skill works with just a name and description, but here are some other advanced tips that can make your skills really effective in Claude Code.

The agentskills.io open standard has many available fields. We already went over the name, which identifies your skill, uses lowercase letters, numbers, and hyphens only. A maximum of 64 characters and should match your directory name. A description which is also required, which tells Claude when to use the skill. This is a maximum of 1,024 characters and is the most important field. Claude uses this for matching. But we can also add other optional fields. One of them is the allowed tools field which restricts which tools Claude can use when the skill is active. The model field which specifies which Claude model to use for the skill.

Try to be explicit with your instructions. For example, if someone told me my job was to help with dogs, I wouldn't know what to do. So, we have to assume Claude would think the same way. A good description answers two questions. What does this skill do? And when should Claude use it? Now, if this job description was given to me, I feel a little bit more confident that I could get the job done. If your skill isn't triggering, add more keywords that match how you phrase requests.

Sometimes you want a skill that can only read files, not modify them. This could be for security sensitive workflows, read only tasks or more. We have the allowed tools field to make this possible. When this skill is active, Claude can only use those tools without asking permission. No editing, no writing, no bash commands. If you omit allowed tools, the skill doesn't restrict anything. Claude uses its normal permission model.

Skills share Claude's context window with your conversation. When Claude wants to use a skill, it will decide to load the contents of that skill into context. However, sometimes you'll need some references, examples, or some utility scripts that are required by the skill. But cramming it all into one 20,000 line text file means you take up a lot of space in the context window. And let's be real here, it's just not a lot of fun to maintain that. This is where progressive disclosure comes in. Put your essential instructions in skill.md and detailed reference material in separate files that Claude reads only when needed. The open standard also suggests having a scripts folder for executable code, references for additional documentation and assets for images, templates or other data files that would be relevant for that skill.

Then in skill.md link to the supporting files. Here, Claude reads architecture.md only when someone asks about system design. If they're asking where to add a component, let's say, it just never loads. It's like having a table of contents in the context window rather than fitting the whole entire document in there. Keep skill.md under 500 lines. If you're exceeding that, then maybe consider should this be split up into different content.

Scripts in your skill directory can run without loading their contents into context. The script executes and only the output consumes tokens. Tell Claude to run the script, not read it. This is very useful for environment validation, data transformations that need to be consistent, operations that are more reliable as tested code than generated code.

Skills support metadata fields. Name and description which are required. Allowed tools restricts available tools and model specifies which Claude to use. Descriptions need specific actions and trigger phrases to match for reliability. For larger skills, use progressive disclosure. Keep your skill.md file under 500 lines and link to the supporting files that load only when needed. Scripts can execute without loading their contents, keeping context efficient.

↑ 目次へ戻る

Introduction to agent skills | Lesson 4「Skills vs. other Claude Code features」(全文ナレッジ)

テキストレッスン+埋め込み動画 3分(YouTube: IgNN4v0BJdU)/ 2026-07-03

日本語ナレッジ(レッスン本文・完全版)

このレッスンで学ぶこと(What you'll learn)

所要時間の目安:15分

  • スキルを CLAUDE.md・サブエージェント・フック・MCP サーバーと比較できる
  • ユースケースに合わせて正しい Claude Code カスタマイズ機能を選べる
  • 複数の機能を効果的に組み合わせた補完的なセットアップを設計できる

キーテイクアウェイ(Key takeaways)

  • CLAUDE.md は毎回の会話にロードされ、常時オンのプロジェクト標準に最適。スキルはオンデマンドでロードされ、タスク特化の専門知識に最適
  • サブエージェントは隔離された実行コンテキストで動く——委譲する作業に使う。スキルは現在の会話に知識を追加する
  • フックはイベント駆動(ファイル保存・ツール呼び出しで発火)。スキルはリクエスト駆動(何を頼んでいるかに基づいて起動)
  • MCP サーバーは外部ツールと連携を提供する——スキルとはまったく別のカテゴリ
  • 各機能は自分の専門を担当する——すべてを1つのアプローチに押し込まず、組み合わせる

CLAUDE.md vs スキル

CLAUDE.md は毎回の会話に、常にロードされます。TypeScript strict mode → CLAUDE.md。

スキルはオンデマンドでロードされます。PR レビューのチェックリストは、新しいコードを書いている時にコンテキストにある必要はありません——レビューを頼んだ時に起動します。

CLAUDE.md を使う場面:

  • 常に適用されるプロジェクト全体の標準
  • 「データベーススキーマを絶対に変更しない」のような制約
  • フレームワークの好みとコーディングスタイル

スキルを使う場面:

  • タスク特化の専門知識
  • 時々しか関係ない知識
  • 毎回の会話を散らかすことになる詳細な手順

スキル vs サブエージェント

スキルは現在の会話に知識を追加します(指示が既存のコンテキストに加わる)。

サブエージェントは別のコンテキストで動きます——タスクを受け取り、独立して作業し、結果を返します。隔離されています。

サブエージェントを使う場面:

  • 別の実行コンテキストに委譲したい
  • 異なるツールアクセスが必要
  • 委譲した作業とメインコンテキストの間に隔離が欲しい

スキルを使う場面:

  • 現在のタスクのために Claude の知識を強化したい
  • 専門知識が会話全体に適用される

スキル vs フック

フックはイベントで発火します(すべてのファイル保存でリンター、ツール呼び出し前の検証など)。イベント駆動です。

スキルはリクエスト駆動です(何を頼んでいるかに基づいて起動)。

フックを使う場面:

  • すべてのファイル保存で走るべき処理
  • 特定のツール呼び出し前の検証
  • Claude のアクションの自動的な副作用

スキルを使う場面:

  • Claude のリクエスト処理に情報を与える知識
  • Claude の推論に影響するガイドライン

全体の組み合わせ(Putting It All Together)——典型的なセットアップ

  • CLAUDE.md = 常時オンのプロジェクト標準
  • スキル = タスク特化・オンデマンド
  • フック = イベントトリガーの自動処理
  • サブエージェント = 隔離された委譲コンテキスト
  • MCP サーバー = 外部ツールと連携

各機能は自分の専門を担当します。すべてをスキルに押し込まないでください。複数を同時に使いましょう。

実務ポイント(このレッスンから持ち帰るもの)

  1. 選択の一次判定軸は「ロードタイミング」——常時=CLAUDE.md、リクエスト一致時=スキル、イベント時=フック、委譲時=サブエージェント、外部ツール=MCP。
  2. CLAUDE.md をやせさせる道具がスキル——「時々しか使わない詳細手順」はスキルに逃がすと毎会話のコンテキスト消費を削れる。
  3. スキルとサブエージェントの違いは「コンテキストの居場所」——スキルは現在の会話に知識を注入、サブエージェントは隔離実行して結果だけ返す。
  4. フックとスキルの違いは「発火条件」——フック=イベント駆動(保存・ツール呼び出し)、スキル=リクエスト駆動(依頼内容の意味)。
  5. アンチパターンは「全部スキル化」——各機能の専門に合わせ複数併用するのが正しい設計。

動画逐語(日本語訳)

[0:02] Claude Code にはいくつかのカスタマイズ手段があります。スキル、CLAUDE.md、サブエージェント、フック、MCP サーバー。それぞれ解決する問題が違います。いつどれを使うかを知っていれば、間違ったものを作らずに済みます。では、順に見ていきましょう。

[0:18] CLAUDE.md は毎回の会話に、常にロードされます。このプロジェクトで Claude に TypeScript strict mode を使わせたいなら、CLAUDE.md ファイルに書きます。スキルは、Claude がリクエストに一致させた時にオンデマンドでロードされます。PR レビューのチェックリストは、新しいコードを書いている時にコンテキストにある必要はありません。レビューを頼んだ時に起動します。

[0:42] つまり、CLAUDE.md は、常に適用されるプロジェクト全体の標準、「データベーススキーマを絶対に変更しない」のような制約、フレームワークの好みやコーディングスタイルのために使います。そしてスキルは、タスク特化の専門知識、時々しか関係ない知識、毎回の会話を散らかしてしまうような詳細な手順のために使います。

[1:04] スキルは現在の会話に知識を追加します。スキルが起動すると、その指示は既存のコンテキストに加わります。サブエージェントは別のコンテキストで動きます。タスクを受け取り、独立して作業し、結果を返します。メインの会話から隔離されています。サブエージェントを使うのは、タスクを別の実行コンテキストに委譲したい時、メインの会話とは異なるツールアクセスが必要な時、委譲した作業とメインコンテキストの間の隔離が欲しい時です。スキルを使うのは、現在のタスクのために Claude の知識を強化したい時、専門知識が会話全体に適用される時です。

[1:42] フックはイベントで発火します。Claude がファイルを保存するたびにリンターを走らせるフックや、特定のツール呼び出しの前に入力を検証するフックが考えられます。フックはすべてイベント駆動です。一方スキルはリクエスト駆動——あなたが何を頼んでいるかに基づいて起動します。ですから、フックは、すべてのファイル保存で走るべき処理、特定のツール呼び出し前の検証、Claude のアクションの自動的な副作用のために使います。そしてスキルは、Claude のリクエスト処理に情報を与える知識、Claude の推論に影響するガイドラインのために使います。

[2:15] 典型的なセットアップは、常時オンのプロジェクト標準としての CLAUDE.md ファイル、タスク特化の専門知識としてのスキル、自動処理のためのフック、という構成でしょう。それぞれが自分の専門を担当します。別の選択肢が最適な時に、すべてをスキルに押し込まないでください。複数を同時に使えます。

[2:34] まとめ。スキルは自動的でタスク特化の専門知識を提供します。CLAUDE.md は常時オンの指示のためのもの。サブエージェントは隔離されたコンテキストで動きます。フックはイベントで発火します。MCP は外部ツールを提供します。トピックが関連する時に Claude に自動適用してほしい知識がある時にスキルを使い、包括的なカスタマイズのために他の機能と組み合わせてください。

英語原文

レッスン本文

[YouTube: IgNN4v0BJdU (3 minutes)]
Skills vs. other Claude Code features

What you'll learn — Estimated time: 15 minutes
Compare skills to CLAUDE.md, subagents, hooks, and MCP servers
Choose the right Claude Code customization feature for a given use case
Design a complementary setup that combines multiple features effectively

Key takeaways
CLAUDE.md loads into every conversation and is best for always-on project standards. Skills load on demand and are best for task-specific expertise
Subagents run in isolated execution contexts — use them for delegated work. Skills add knowledge to your current conversation
Hooks are event-driven (fire on file saves, tool calls). Skills are request-driven (activate based on what you're asking)
MCP servers provide external tools and integrations — a different category entirely from skills
Each feature handles its own specialty — combine them rather than forcing everything into one approach

CLAUDE.md vs Skills
CLAUDE.md loads into every conversation, always. TypeScript strict mode → CLAUDE.md.
Skills load on demand. PR review checklist doesn't need to be in context when writing new code — activates when you ask for a review.
Use CLAUDE.md for: project-wide standards that always apply / constraints like "never modify the database schema" / framework preferences and coding style
Use Skills for: task-specific expertise / knowledge only relevant sometimes / detailed procedures that would clutter every conversation

Skills vs Subagents
Skills add knowledge to current conversation (instructions join existing context).
Subagents run in a separate context — receive a task, work independently, return results. Isolated.
Use Subagents when: delegate to separate execution context / different tool access / isolation between delegated work and main context
Use Skills when: enhance Claude's knowledge for current task / expertise applies throughout a conversation

Skills vs Hooks
Hooks fire on events (linter on every file save, validate before tool calls). Event-driven.
Skills are request-driven (activate based on what you're asking).
Use Hooks for: operations on every file save / validation before specific tool calls / automated side effects of Claude's actions
Use Skills for: knowledge that informs how Claude handles requests / guidelines that affect Claude's reasoning

Putting It All Together — typical setup:
CLAUDE.md = always-on project standards / Skills = task-specific on-demand / Hooks = event-triggered automation / Subagents = isolated delegated contexts / MCP servers = external tools & integrations
Each handles its own specialty. Don't force everything into skills. Use multiple at a time.

動画字幕(重複除去済み)

Claude Code offers several customization options. Skills, claude.md, subagents, hooks, MCP servers. They solve different problems. Knowing when to use each prevents you from building the wrong thing. So, let's run them down.

Claude.md loads into every conversation always. So, if you want Claude to use TypeScript strict mode in this project, then put it in your claude.md file. Skills load on demand. When Claude matches a request, your PR review checklist doesn't need to be in the context when you're writing a new code. It activates when you ask for a review.

So, use claude.md for project-wide standards that always apply, constraints like never modify the database schema, framework preferences, and coding style. Then use skills for task specific expertise, knowledge that's only relevant sometimes, and detailed procedures that would clutter every conversation.

Skills add knowledge to your current conversation. When a skill activates, its instructions join the existing context. Subagents run in a separate context. They receive a task, work on it independently, and return results. They're isolated from your main conversation. Use subagents when you want to delegate a task to a separate execution context, you need different tool access than the main conversation does, you want isolation between delegated work and your main context. Use skills when you want to enhance Claude's knowledge for the current task. The expertise applies throughout a conversation.

Hooks fire on events. A hook might run a linter every time Claude saves a file or validate input before certain tool calls. They're all event driven, while skills, they're request driven. They activate based on what you're asking. So use hooks for operations that should run on every file save, validation before specific tool calls, or automated side effects of Claude's actions. Then use skills for knowledge that informs how Claude handles requests, guidelines that affect Claude's reasoning.

A typical setup might include a claude.md file for always on project standards, skills for task specific expertise, hooks for automated operations. Each handles its own specialty. Don't force everything into skills when another option fits best. You can use multiple at a time.

Skills provide automatic task specific expertise. Claude.md is for always on instructions. Subagents run in isolated context. Hooks fire on events. MCP provides external tools. Use skills when you have knowledge that Claude should apply automatically when the topic is relevant and combine them with other features for comprehensive customization.

↑ 目次へ戻る

Introduction to agent skills | Lesson 5「Sharing skills」(全文ナレッジ)

テキストレッスン+埋め込み動画 4分(YouTube: OCBi3eScNLk)/ 2026-07-03

日本語ナレッジ(レッスン本文・完全版)

このレッスンで学ぶこと(What you'll learn)

所要時間の目安:20分

  • スキルを Git リポジトリにコミットしてチームと共有できる
  • プラグインとマーケットプレイスを通じてスキルをプロジェクト横断で配布できる
  • エンタープライズ managed settings を使ってスキルを組織全体に展開できる
  • カスタムサブエージェントに特定のスキルを使わせる設定ができる

キーテイクアウェイ(Key takeaways)

  • .claude/skills にあるプロジェクトスキルは Git を通じて自動的に共有される——リポジトリをクローンした人は誰でも手に入れる
  • プラグインを使えば、マーケットプレイス経由でリポジトリを越えてスキルを配布でき、より広いコミュニティで使える
  • エンタープライズ managed settings は最優先の権限でスキルを組織全体に展開する。必須の標準やコンプライアンスに最適
  • サブエージェントはあなたのスキルを自動では見ない——カスタムエージェントの frontmatter の skills フィールドに明示的にリストする必要がある
  • 組み込みエージェント(Explorer・Plan・Verify)はスキルにまったくアクセスできない——.claude/agents に定義したカスタムサブエージェントだけが使える

スキルをリポジトリにコミットする(Committing Skills to Your Repository)

最もシンプルな方法:.claude/skills に置くこと——クローンした人は誰でも自動的に手に入れます。更新を push すれば、全員が次の pull で受け取ります。

向いている用途:

  • チームのコーディング標準
  • プロジェクト固有のワークフロー
  • あなたのコードベース構造を参照するスキル

.claude ディレクトリには agents・hooks・skills・settings が含まれ、すべて通常の Git ワークフローでバージョン管理されます。

プラグインを通じたスキルの配布(Distributing Skills Through Plugins)

プラグイン=Claude Code をカスタム機能で拡張する仕組みで、チームやプロジェクトを越えた共有のために設計されています。プラグインプロジェクトの中に skills ディレクトリを作ります(.claude と似た構造)——各スキルは SKILL.md を持つ自分のフォルダを持ちます。

マーケットプレイスに配布すれば、他のユーザーが発見してインストールできます。

スキルがプロジェクト固有すぎず、チームを越えたコミュニティにも有用な場合に最適です。

managed settings によるエンタープライズ展開(Enterprise Deployment Through Managed Settings)

管理者は managed settings を通じてスキルを組織全体に展開できます。エンタープライズスキルは最優先です——同名の個人・プロジェクト・プラグインスキルを上書きします。

managed settings は、プラグインの入手元を制御する strictKnownMarketplaces をサポートします:

"strictKnownMarketplaces": [
  { "source": "github", "repo": "acme-corp/approved-plugins" },
  { "source": "npm", "package": "@acme-corp/compliance-plugins" }
]

必須の標準、セキュリティ要件、コンプライアンスワークフローに向いた選択肢です。キーワードは「must(必須)」。

スキルとサブエージェント(重要な gotcha)

サブエージェントはあなたのスキルを自動では見ません。 委譲されたタスクは、真っさらなクリーンコンテキストから始まります。

  • 組み込みエージェント(Explorer・Plan・Verify)はスキルにまったくアクセスできない
  • カスタムサブエージェントはスキルを使える。ただし明示的にリストされた時だけ
  • スキルはサブエージェントの起動時にロードされる。オンデマンドではない

カスタムサブエージェントの作成:.claude/agents にエージェントの markdown を追加します(または /agents コマンドで対話的に)。frontmatter の例:

---
name: frontend-security-accessibility-reviewer
description: "Use this agent when you need to review frontend code for accessibility..."
tools: Bash, Glob, Grep, Read, WebFetch, WebSearch, Skill...
model: sonnet
color: blue
skills: accessibility-audit, performance-check
---

このパターンが効く場面:

  • 特定の専門知識を持たせた隔離タスク委譲
  • サブエージェントごとに異なるスキルが必要な場合
  • プロンプトに頼らず、委譲した作業で標準を強制したい場合

実務ポイント(このレッスンから持ち帰るもの)

  1. 共有の3経路を使い分ける——チーム内=リポジトリの .claude/skills(Git 共有・追加インストール不要)、リポジトリ横断=プラグイン+マーケットプレイス、組織全体の強制=エンタープライズ managed settings(キーワードは「must」)。
  2. 最大の落とし穴:サブエージェントはスキルを継承しない——委譲タスクはクリーンコンテキスト開始。使わせたいスキルはカスタムエージェント frontmatter の skills: フィールドに明示列挙する。
  3. 組み込みエージェント(Explorer・Plan・Verify)はスキル不可——スキルを効かせたい委譲は .claude/agents のカスタムサブエージェントで行う。
  4. サブエージェントのスキルは起動時ロード——オンデマンドではないため、そのエージェントの目的に常に関連するスキルだけをリストする。
  5. プラグイン入手元の統制——組織では strictKnownMarketplaces(github repo / npm package 指定)で承認済みマーケットプレイスに限定できる。

動画逐語(日本語訳)

[0:02] スキルは共有されると、いっそう価値が高まります。自分だけが使う PR レビュースキルも役に立ちますが、同じスキルをチーム全体で共有すればコードレビューが標準化され、組織の中で一貫した体験が得られます。その方がずっと良い。スキルを共有する方法を紹介します。

[0:20] 最もシンプルな共有方法は、スキルをリポジトリにコミットすることです。.claude/skills に置きます。リポジトリをクローンした人は誰でも、これらのスキルを自動的に手に入れます。追加のインストールは不要で、すでにやっていることの延長です。更新を push すれば、全員が次の pull で受け取ります。これは、チームのコーディング標準、プロジェクト固有のワークフロー、コードベースの構造を参照するスキルに向いています。

[0:47] もう一つの配布方法はプラグインです。プラグインは、Claude Code をカスタム機能で拡張する方法だと考えてください。ただし、チームやプロジェクトを越えて共有されるように設計されています。

[1:01] プラグインプロジェクトの中に、skills というディレクトリを作ります。これはプロジェクトの .claude ディレクトリと似たファイル構造に従い、スキル名(のフォルダ)に SKILL.md ファイルを置きます。プラグインをマーケットプレイスに配布すれば、他のユーザーが自分の Claude Code にダウンロードして使えます。これは、スキルの機能がプロジェクト固有すぎず、コミュニティのメンバーにも使えるものである場合に最適です。

[1:30] 管理者は managed settings を通じて、スキルを組織全体に展開できます。前に話した通り、エンタープライズスキルは最優先で、同名の個人・プロジェクト・プラグインスキルを上書きします。これは、必須の標準、セキュリティ要件、コンプライアンスワークフロー、組織全体で一貫していなければならないコーディングプラクティスのためのものです。キーワードは「must(必須)」。

[1:54] ここで、人を驚かせるポイントがあります。サブエージェントは、あなたのスキルを自動的には見ません。そうなんです。タスクをサブエージェントに委譲すると、真っさらなクリーンコンテキストから始まります。Explorer・Plan・Verify のような組み込みエージェントは、スキルにまったくアクセスできません。あなたが定義したカスタムサブエージェントだけが使え、しかも明示的にリストした時だけです。スキル付きのカスタムサブエージェントを作るには、.claude/agents にエージェントの md ファイルを追加します。skills フィールドが、どのスキルをロードするかをリストします。これらのスキルはサブエージェントの起動時にロードされ、メインの会話のようにオンデマンドではありません。この点を考慮してください。

[2:30] まず、スキルが存在することを確認します。

[2:35] よし、存在します。次に、Claude Code のサブエージェント作成機能を使ってサブエージェントを作ります。すでにあるサブエージェントにこれらのスキルを追加したいなら、既存の agent.md ファイルを開くだけです。その後、skills フィールドを作って、スキルを追加します。サブエージェントに委譲すると、両方のスキルがロードされた状態になり、毎回のレビューにそれらを適用します。

[2:58] このパターンが特に効くのは、特定の専門知識を持たせた隔離タスク委譲をしたい時です。サブエージェントごとに異なるスキルが必要な時——フロントエンドレビュアー vs バックエンドレビュアー。プロンプトに頼らずに、委譲した作業で標準を強制したい時。サブエージェントの目的に常に関連するスキルだけをリストしてください。

[3:21] まとめ。スキルの共有は、チームアクセスならプロジェクトディレクトリ、リポジトリ横断の配布ならプラグイン、組織全体の標準ならエンタープライズ展開で行います。サブエージェントはスキルを自動的に継承しないので、サブエージェントの skills フィールドに明示的にリストします。組み込みエージェントはスキルにアクセスできません。.claude/agents にあるカスタムサブエージェントだけが使えます。スキルはサブエージェントの起動時にロードされるので、その目的に常に関連するスキルだけをリストしてください。

英語原文

レッスン本文

[YouTube: OCBi3eScNLk (4 minutes)]
Sharing skills

What you'll learn — Estimated time: 20 minutes
Share skills with your team by committing them to a Git repository
Distribute skills across projects through plugins and marketplaces
Deploy skills organization-wide using enterprise managed settings
Configure custom subagents to use specific skills

Key takeaways
Project skills in .claude/skills are shared automatically through Git — anyone who clones the repo gets them
Plugins let you distribute skills across repositories via marketplaces for broader community use
Enterprise managed settings deploy skills organization-wide with the highest priority, ideal for mandatory standards and compliance
Subagents don't automatically see your skills — you must explicitly list skills in a custom agent's frontmatter skills field
Built-in agents (Explorer, Plan, Verify) can't access skills at all — only custom subagents defined in .claude/agents can

Committing Skills to Your Repository
Simplest: place in .claude/skills — anyone who clones gets them automatically. Push updates → everyone gets on next pull.
Works well for: team coding standards / project-specific workflows / skills that reference your codebase structure.
The .claude directory contains agents, hooks, skills, settings — all version-controlled through normal Git workflows.

Distributing Skills Through Plugins
Plugins = extend Claude Code with custom functionality designed for sharing across teams and projects. In your plugin project, create a skills directory (similar structure to .claude) — each skill gets its own folder with SKILL.md.
After distributing to a marketplace, other users can discover and install it.
Best when skills aren't too project-specific and useful to community beyond your team.

Enterprise Deployment Through Managed Settings
Admins deploy skills org-wide through managed settings. Enterprise skills take the highest priority — override personal/project/plugin skills with same name.
Managed settings support strictKnownMarketplaces to control plugin sources:

"strictKnownMarketplaces": [
  { "source": "github", "repo": "acme-corp/approved-plugins" },
  { "source": "npm", "package": "@acme-corp/compliance-plugins" }
]

Right choice for mandatory standards, security requirements, compliance workflows. Keyword = "must".

Skills and Subagents(重要な gotcha)
Subagents don't automatically see your skills. Delegated task starts with fresh, clean context.
- Built-in agents (Explorer, Plan, Verify) can't access skills at all
- Custom subagents CAN use skills, but only when explicitly listed
- Skills are loaded when the subagent STARTS, not on demand

Create custom subagent: add agent markdown in .claude/agents (or /agents command interactively). Frontmatter example:

---
name: frontend-security-accessibility-reviewer
description: "Use this agent when you need to review frontend code for accessibility..."
tools: Bash, Glob, Grep, Read, WebFetch, WebSearch, Skill...
model: sonnet
color: blue
skills: accessibility-audit, performance-check
---

Pattern works well when: isolated task delegation with specific expertise / different subagents need different skills / enforce standards in delegated work without relying on prompts.

動画字幕(重複除去済み)

Skills become more valuable when shared. A PR review skill that only you use is helpful. The same skill shared across your team standardizes code review and provides a consistent experience amongst your organization, which is much better. Here are ways you can share your skills.

Now the simplest sharing method is committing skills to your repository. Place them in .claude/skills. Anyone who clones a repository gets these skills automatically. No extra installation. It's just what you're doing already. When you push updates, everyone gets them on the next pull. This works well for team coding standards, project specific workflows, skills that reference your codebase structure.

Another way you can distribute your skills is through plugins. Think of plugins as ways to extend Claude Code with custom functionality, but designed to be shared across teams and projects. In your plug-in project, create a directory called skills. This will then follow a similar file structure to the .claude directory in our project with the name of the skill with a skill.md file. And after you distribute your plugin to a marketplace, other users can download it into Claude Code for themselves to use. This is best if your skills have functionality that isn't too project specific and can be used by community members.

Administrators can deploy skills organization-wide through managed settings. Enterprise skills take highest priority. Like we discussed before, they override personal, project and plug-in skills with the same name. This is for mandatory standards, security requirements, compliance workflows, coding practices that must be consistent across the organization. Keyword: must.

Here's something that surprises people. Subagents don't automatically see your skills. Yeah, when you delegate a task to a subagent, it starts with a fresh, clean context. Built-in agents like the Explorer, Plan, and Verify can't access skills at all. Only custom subagents you define can use them and only when you explicitly list them. To create a custom subagent with skills, add an agent .md file in .claude/agents. The skills field lists which skills to load. These skills are loaded when the subagent starts, not on demand like in the main conversation. So take that into consideration.

First ensure the skills exist. Okay, it exists. Then create the subagent using the Claude Code subagent creator. If you have a subagent that you want to add these skills to already, just go to the existing agent.md file. Then after that, create the skills fields and add your skills. When you delegate to the subagent, it has both skills loaded and applies them to every single review.

Now this pattern works really well when you want isolated task delegation with specific expertise. Different subagents need different skills. Front-end reviewer versus back-end reviewer. You want to enforce standards in delegated work without relying on prompts. Only list skills that are always relevant to the subagent's purpose.

Share skills through project directories for team access, plugins for cross repository distribution, or enterprise deployment for organization-wide standards. Subagents don't inherit skills automatically, so list them explicitly in the subagent's skills field. Built-in agents can't access skills. Only custom subagents can, in your .claude/agents. Skills load when the subagents start, so only list skills that are always relevant to its purpose.

↑ 目次へ戻る

Introduction to agent skills | Lesson 6「Troubleshooting skills」(全文ナレッジ)

テキストレッスン+埋め込み動画 4分(YouTube: YBa1cwaG7is)/ 2026-07-03

日本語ナレッジ(レッスン本文・完全版)

このレッスンで学ぶこと(What you'll learn)

所要時間の目安:15分

  • スキルバリデータを使い、デバッグの前に構造的な問題を捕捉できる
  • よくあるスキルのトリガー問題・ロード問題を診断して直せる
  • エンタープライズ・個人・プロジェクト・プラグインのスキル間の優先順位衝突を解決できる
  • 依存関係の欠落・権限・パスの問題を含む実行時エラーをデバッグできる

キーテイクアウェイ(Key takeaways)

  • まずスキルバリデータツールから始める——構造的な問題を最初に捕捉する
  • スキルがトリガーされないなら、原因はほぼ必ず description——自分が実際にリクエストを言い表す言い方に一致するトリガーフレーズを追加する
  • スキルがロードされないなら、SKILL.md が名前付きディレクトリの中にあるか(skills ルート直下ではないか)、ファイル名が正確に SKILL.md かを確認する
  • 間違ったスキルが使われるなら、description が似すぎている——もっと区別できるようにする
  • 実行時エラー:依存関係、ファイル権限(chmod +x)、パス区切り(すべてスラッシュ)を確認する

スキルバリデータを使う(Use the Skills Validator)

最初にやること:agent skills verifier コマンド(uv 経由のインストールが最も簡単)。スキルディレクトリから実行しても、どこからでも実行してもかまいません。デバッグの前に構造的な問題を捕捉します。

スキルがトリガーされない(Skill Doesn't Trigger)

原因はほぼ必ず description です。Claude はセマンティックマッチングを使うので、リクエストが description の意味と重なる必要があります。

  • 自分が実際にどうリクエストを言い表しているかに照らして description を確認する
  • ユーザーが実際に言いそうなトリガーフレーズを追加する
  • バリエーションでテストする:「help me profile this」「why is this slow?」「make this faster」
  • どれかが失敗したら → そのキーワードを追加する

スキルがロードされない(Skill Doesn't Load)

  • SKILL.md は名前付きディレクトリの中に置く。skills のルート直下には置かない
  • ファイル名は正確に SKILL.md(SKILL は全部大文字、md は小文字)
  • claude --debug を実行してロードエラーを見る(自分のスキル名を探す)

間違ったスキルが使われる(Wrong Skill Gets Used)

description が似すぎている → 区別できるようにする。具体性は、似た響きのスキルとの衝突を防ぎます。

スキルの優先順位衝突(Skill Priority Conflicts)

個人スキルが無視される → エンタープライズなど優先度の高いスキルが同名かもしれない(エンタープライズの「code-review」は個人の「code-review」に毎回勝つ)。

選択肢:自分のスキルをリネームする(簡単な方)/ 管理者に相談する。

プラグインのスキルが表示されない(Plugin Skills Not Appearing)

キャッシュをクリア → Claude Code を再起動 → 再インストール。それでも出ない → プラグイン構造が間違っている → バリデータへ。

実行時エラー(Runtime Errors)

  • 依存関係の欠落:外部パッケージはインストールされている必要がある。依存情報をスキルの description に追加する
  • 権限の問題:スクリプトに chmod +x
  • パス区切り:Windows でもすべてスラッシュ(/)を使う

クイック・トラブルシューティング・チェックリスト

症状 対処
トリガーされない? description を改善し、トリガーフレーズを追加
ロードされない? パス・ファイル名・YAML 構文を確認
間違ったスキルが使われる? description をもっと区別できるものに
シャドーイングされている? 優先順位ヒエラルキーを確認し、リネーム
プラグインのスキルが見えない? キャッシュをクリアして再インストール
実行時に失敗する? 依存関係・権限・パスを確認

コースのまとめ(Course wrap-up)

最高のスキルは、実際の痛点から生まれます——自分が最も頻繁に繰り返している指示から始めましょう。

実務ポイント(このレッスンから持ち帰るもの)

  1. 調査の第一手はバリデータ——agent skills verifier(uv でインストールが最速)を回して構造問題を先に潰してから、description のデバッグに進む。
  2. 「トリガーされない」=ほぼ description 問題——実際の言い回し複数パターン(「help me profile this」「why is this slow?」「make this faster」)でテストし、落ちた言い方のキーワードを description に足す。
  3. 「ロードされない」=配置とファイル名の機械チェック——名前付きディレクトリ内か/SKILL.md(大文字 SKILL+小文字 md)か/claude --debug でエラーメッセージ確認。
  4. 同名シャドーイングの現実解はリネーム——エンタープライズ同名スキルには勝てない。管理者交渉より自分のリネームが早い。
  5. 実行時エラーの3点セット——外部パッケージのインストール(依存情報は description に明記)、chmod +x、パス区切りは Windows でもスラッシュ。
  6. スキル作りの原点——最高のスキルは実際の痛点から。最も繰り返している指示から書き始める。

動画逐語(日本語訳)

[0:03] スキルが動かない時、問題はたいてい少数のカテゴリのどれかに入ります。スキルがトリガーされない、ロードされない、衝突している、あるいは実行時に失敗する。でも朗報です。ほとんどの修正はかなり単純です。いくつか紹介しましょう。

[0:22] まずできるのは、agent skills verifier コマンドを試すことです。OS によってインストール手順は異なりますが、最も速く簡単にインストールできる uv の利用をおすすめします。インストールしたら、スキルディレクトリに移動するか、どこからでもこのコマンドを実行できます。

[0:41] スキルは存在する、バリデータも通る、なのに期待した時に Claude が使ってくれない。うーん……原因はほぼ必ず description です。Claude はセマンティックマッチングを使うので、リクエストが description の意味と重なる必要があります。重なりが足りなければ、マッチしません。自分がどうリクエストを言い表しているかに照らして description を確認してください。ユーザーが実際に言いそうなトリガーフレーズを追加し、バリエーションでテストします。「これをプロファイルするのを手伝って」「なぜこれは遅いの?」「これを速くして」。どれかがトリガーに失敗したら、そのキーワードを description に追加します。

[1:17] 「どんなスキルが使える?」と Claude に聞いてもスキルが出てこない場合は、次を確認してください。スキルは正しい場所に、正しい構造で置かれている必要があります。SKILL.md ファイルは名前付きディレクトリの中に置き、skills のルート直下には置きません。ファイル名は正確に SKILL.md——SKILL は全部大文字、md は小文字。リストを一つずつ消し込んでいくだけです。はい、消し込んでいきます。claude --debug を実行するとロードエラーが見えます。自分のスキル名に言及するメッセージを探してください。これだけで問題が解決してしまうこともあります。

[1:49] Claude が間違ったスキルを使う、あるいは混乱しているように見えるなら、description が似すぎている可能性が高い。区別できるようにしましょう。できるだけ具体的にすることは、Claude がいつあなたのスキルを使うか判断する助けになるだけでなく、似た響きの他のスキルと衝突しないためにも効きます。

[2:07] 個人スキルが無視されているなら、エンタープライズなど優先度の高いスキルが同名かもしれません。そこを調べてください。エンタープライズの code review があって、あなたも個人の code review を持っているなら、エンタープライズの方が毎回勝ちます。解決策は、自分のスキルをもう少し独自性のある名前にリネームすること。あるいはエンタープライズスキルについて管理者に相談すること。ただし、勝ち目があるのはおそらく1つ目の方です。

[2:35] プラグインをインストールしたのにスキルが見えない?キャッシュをクリアしましょう。Claude Code を再起動して、再インストールします。それでもスキルが出てこないなら、プラグインの構造が間違っているのかもしれません。バリデータツールの出番です。

[2:49] スキルはロードされるが、実行中に失敗する。スキルが外部パッケージを使うなら、それらはインストールされている必要があります。この情報を description に追加してください。スクリプトには実行権限が必要です。パス区切りは、Windows であってもすべてスラッシュ(/)を使ってください。

[3:06] 最後に、クイックチェックリストです。トリガーされない?——description とトリガーフレーズを改善しましょう。ロードされない?——パス・ファイル名・YAML 構文を確認。間違ったスキルが使われる?——description をもう少し区別できるものに。シャドーイングされている?——優先順位を確認して、必要ならリネーム。プラグインが見えない?——キャッシュをクリアして再インストール。実行時に失敗する?——依存関係・権限・パスを確認してください。

英語原文

レッスン本文

[YouTube: YBa1cwaG7is (4 minutes)]
Troubleshooting skills

What you'll learn — Estimated time: 15 minutes
Use the skills validator to catch structural issues before debugging
Diagnose and fix common skill triggering and loading problems
Resolve skill priority conflicts between enterprise, personal, project, and plugin skills
Debug runtime errors including missing dependencies, permissions, and path issues

Key takeaways
Start with the skills validator tool — catches structural problems first
If a skill doesn't trigger, the cause is almost always the description — add trigger phrases that match how you actually phrase requests
If a skill doesn't load, check SKILL.md is inside a named directory (not at skills root) and file name is exactly SKILL.md
If the wrong skill gets used, descriptions are too similar — make them more distinct
Runtime errors: check dependencies, file permissions (chmod +x), path separators (forward slashes everywhere)

Use the Skills Validator
First thing: agent skills verifier command (install via uv is easiest). Run from skill directory or anywhere. Catches structural problems before debugging.

Skill Doesn't Trigger
Cause is almost always the description. Claude uses semantic matching — request needs to overlap with description's meaning.
- Check description against how you actually phrase requests
- Add trigger phrases users would actually say
- Test with variations: "help me profile this", "why is this slow?", "make this faster"
- Any variation fails → add those keywords

Skill Doesn't Load
- SKILL.md must be inside a named directory, not at skills root
- File name exactly SKILL.md (all caps SKILL, lowercase md)
- Run claude --debug to see loading errors (look for your skill name)

Wrong Skill Gets Used
Descriptions too similar → make them distinct. Specificity prevents conflicts with similar-sounding skills.

Skill Priority Conflicts
Personal skill ignored → enterprise/higher-priority skill may have same name (enterprise "code-review" beats personal "code-review" every time).
Options: rename yours (easier) / talk to admin.

Plugin Skills Not Appearing
Clear cache → restart Claude Code → reinstall. Still missing → plugin structure wrong → validator.

Runtime Errors
- Missing dependencies: external packages must be installed. Add dependency info to skill description
- Permission issues: chmod +x on scripts
- Path separators: forward slashes everywhere, even Windows

Quick Troubleshooting Checklist
Not triggering? → Improve description, add trigger phrases
Not loading? → Check path, file name, YAML syntax
Wrong skill used? → Make descriptions more distinct
Being shadowed? → Check priority hierarchy, rename
Plugin skills missing? → Clear cache, reinstall
Runtime failure? → Dependencies, permissions, paths

Course wrap-up: The best skills come from real pain points — start with the instructions you find yourself repeating most often.

動画字幕(重複除去済み)

When skills don't work, the problem usually falls into one of a few categories. The skill doesn't trigger, doesn't load, has conflicts, or fails at runtime. But good news, most fixes are pretty straightforward. Here are some of them.

First thing we can do is try the agent skills verifier command. Depending on your operating system, installation steps will differ, but we recommend using uv as it's the easiest way to get it installed fast. Once installed, either navigate to your skill directory or run this command from anywhere.

Your skill exists, it passes the validator, but Claude isn't using it when expected. Hmm, well, the cause is almost always the description. Claude uses semantic matching, so your request needs to overlap with the description's meaning. If there's not enough overlap, no match. Check your description against how you're phrasing requests. Add trigger phrases users would actually say, test with variations. "Help me profile this." "Why is this slow?" "Make this faster." If any fail to trigger, add those keywords to your description.

If your skill doesn't appear when you ask Claude what skills are available, well, check these things. Skills must be in the right location with the right structure. The skill.md file must be inside of a named directory, not at the skills root. The file name must be exactly SKILL.md. All caps on the SKILL, lowercase md. Just crossing things off the list here. Okay, just crossing them off. Run claude --debug to see loading errors. Look for messages mentioning your skill name. Sometimes this will just solve the problem for you.

If Claude uses the wrong skill or seems confused, your descriptions are probably too similar. Make them distinct. Remember, being as specific as possible doesn't just help with Claude deciding when to use your skill, but not conflicting with other similar sounding skills.

If your personal skill is being ignored, an enterprise or higher priority skill might have the same name. So investigate that. If you see an enterprise code review and you also have a personal code review, well the enterprise one will win every time. So your solutions is to rename your skill to something a little bit more distinct, talk to your admin about the enterprise skill, but you'll have a better chance with number one. Probably.

Installed the plugin but can't see its skills? Well, clear the cache. Restart Claude Code and reinstall. If skills still don't appear, the plug-in structure just might be wrong. This is when the validator tool makes sense.

The skill loads but fails during execution. If your skill uses external packages, they must be installed. Add this info to your description. Scripts need execute permission. Use forward slashes everywhere, even on Windows.

So, here's a quick checklist. Not triggering? Well, improve your description and trigger phrases. Not loading? Check your path, file name, YAML syntax. Wrong skill used? Make your descriptions a little bit more distinct. Are you being shadowed? Check the priority and rename if needed. Plugins are missing? Clear your cache and reinstall. Runtime failure? Check dependencies, permissions, and paths.

↑ 目次へ戻る