skill-standardization
Standardize and validate SKILL.md files against the Agent Skills specification (agentskills.io). Use when creating new skills, auditing existing skills for spec compliance, converting legacy skill formats to standard structure, or improving descriptions for reliable triggering. Triggers on: "validate skill", "create SKILL.md", "standardize skill format", "check skill spec", "skill frontmatter", "improve skill description", "add evals to skill".
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o skill-standardization.zip https://jpskill.com/download/20922.zip && unzip -o skill-standardization.zip && rm skill-standardization.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/20922.zip -OutFile "$d\skill-standardization.zip"; Expand-Archive "$d\skill-standardization.zip" -DestinationPath $d -Force; ri "$d\skill-standardization.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
skill-standardization.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
skill-standardizationフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 2
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
スキル標準化
このスキルを使用する場面
- SKILL.md ファイルをゼロから作成する場合
- 既存のスキルが Agent Skills の仕様に準拠しているか監査する場合
- 従来のスキル形式(非標準の見出し、フロントマター)を標準形式に変換する場合
- 関連するプロンプトでより確実にトリガーされるようにスキル説明を改善する場合
- スキルに評価テストケース(
evals/evals.json)を追加する場合 - ディレクトリ内のすべてのスキルの一貫性を一括検証する場合
Agent Skills 仕様リファレンス
フロントマターフィールド
| フィールド | 必須 | 制約 |
|---|---|---|
name |
はい | 1~64文字、小文字の英数字とハイフン、先頭/末尾/連続するハイフンなし、親ディレクトリ名と一致する必要があります |
description |
はい | 1~1024文字、スキルの機能とトリガー条件を記述する必要があります |
allowed-tools |
いいえ | 事前承認されたツールのスペース区切りリスト |
compatibility |
いいえ | 最大500文字、環境要件 |
license |
いいえ | ライセンス名またはバンドルされたファイルへの参照 |
metadata |
いいえ | 追加フィールド用の任意のキーと値のマップ |
標準ディレクトリ構造
skill-name/
├── SKILL.md # 必須
├── scripts/ # オプション: 実行可能スクリプト
├── references/ # オプション: 詳細なドキュメント
├── assets/ # オプション: テンプレート、画像、データ
└── evals/ # オプション: 評価テストケース
└── evals.json
段階的開示ティア
| ティア | ロードされる内容 | タイミング | トークン予算 |
|---|---|---|---|
| 1. カタログ | name + description | セッション開始時 | スキルあたり約100トークン |
| 2. 説明 | SKILL.md の本文全体 | アクティベーション時 | 5000トークン未満(最大500行) |
| 3. リソース | scripts/, references/ | 必要に応じて | 可変 |
手順
ステップ1: 既存のスキルを検証する
スキルディレクトリで検証スクリプトを実行します。
bash scripts/validate_skill.sh path/to/skill-directory
ディレクトリ内のすべてのスキルを検証します。
bash scripts/validate_skill.sh --all .agent-skills/
スクリプトは以下をチェックします。
- 必須のフロントマターフィールド(
name、description) nameの形式: 小文字、連続するハイフンなし、ディレクトリ名と一致descriptionの長さ: 1~1024文字allowed-toolsの形式: スペース区切り(YAMLリストではない)- 推奨セクションの存在
- ファイルの長さ: 500行を超えると警告
ステップ2: 効果的な説明文を作成する
description フィールドは、スキルがいつトリガーされるかを決定します。説明が不十分だとスキルがアクティブ化されず、広すぎると誤ったタイミングでトリガーされます。
テンプレート:
description: >
[スキルが何をするか — 特定の操作をリストアップします。]
[トリガー条件]のときに使用します。ユーザーが明示的に
[ドメインキーワード]を言及しなくても — 以下でもトリガーされます: [同義語リスト]。
原則(agentskills.ioより):
- 命令形表現 — 「このスキルは〜します」ではなく「このスキルは〜のときに使用します」
- ユーザーの意図、実装ではない — ユーザーが達成したいことを記述する
- エッジケースを明示する — 「Xと言わなくても」
- トリガーキーワードをリストアップする — ユーザーが入力する可能性のある同義語、関連用語
- 1024文字以内を維持する — 説明は編集中に長くなるため、制限に注意する
Before / After:
# Before (不十分 — 全くトリガーされない)
description: PDFを扱います。
# After (最適化済み — 確実にトリガーされる)
description: >
PDFファイルからテキストとテーブルを抽出し、フォームに入力し、ドキュメントを結合および分割します。
ユーザーがPDFファイルを操作する必要がある場合に使用します。ユーザーが明示的に
「PDF」と言わなくても — 以下でトリガーされます: フォームに入力、ドキュメントからテキストを抽出、ファイルを結合、
スキャンされたページを読み取る。
ステップ3: 新しい SKILL.md を作成する
このテンプレートを出発点として使用します。
---
name: skill-name
description: >
[機能と処理する特定の操作。]
[トリガー条件]のときに使用します。以下でトリガーされます: [キーワードリスト]。
allowed-tools: Bash Read Write Edit Glob Grep
metadata:
tags: tag1, tag2, tag3
version: "1.0"
---
# スキルタイトル
## このスキルを使用する場面
- シナリオ1
- シナリオ2
## 手順
### ステップ1: [アクション]
内容...
### ステップ2: [アクション]
内容...
## 例
### 例1: [シナリオ]
入力: ...
出力: ...
## ベストプラクティス
1. プラクティス1
2. プラクティス2
## 参照
- [リンク](url)
ステップ4: 従来のセクション見出しを変換する
| 従来の見出し | 標準見出し |
|---|---|
## Purpose |
## When to use this skill |
## When to Use |
## When to use this skill |
## Procedure |
## Instructions |
## Best Practices |
## Best practices |
## Reference |
## References |
## Output Format |
## Output format |
ステップ5: 評価テストケースを追加する
evals/evals.json を作成し、2〜5個の現実的なテストプロンプトを含めます。
{
"skill_name": "your-skill-name",
"evals": [
{
"id": 1,
"prompt": "このスキルをトリガーすべき現実的なユーザーメッセージ",
"expected_output": "成功がどのようなものかを示す説明",
"assertions": [
"特定の検証可能な主張(ファイルが存在する、カウントが正しい、形式が有効である)",
"別の特定の主張"
]
}
]
}
良いアサーションは検証可能です。ファイルが存在する、JSONが有効である、グラフに3つの棒がある、などです。「出力が良い」のような曖昧なアサーションは避けてください。
利用可能なスクリプト
scripts/validate_skill.sh— SKILL.md を Agent Skills の仕様に対して検証します
例
例1: スキルディレクトリを検証する
bash scripts/validate_skill.sh .agent-skills/my-skill/
出力:
Validating: .agent-skills/my-skill/SKILL.md
✓ Required field: name = 'my-skill'
✓ Required field: description present
✗ Description length: 1087 chars (max 1024)
✓ Name format: valid lowercase
✗ Name/directory mismatch: name='myskill' vs dir='my-skill'
✓ Recommended section: When to use this skill
✓ Recommended section: Instructions
⚠ Missing recommended section: Examples
✓ File length: 234 lines (OK)
Issues: 2 errors, 1 warning
例2: すべてのスキルを一括検証する
b 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Skill Standardization
When to use this skill
- Creating a new SKILL.md file from scratch
- Auditing existing skills for Agent Skills specification compliance
- Converting legacy skill formats (non-standard headings, frontmatter) to standard
- Improving skill descriptions to trigger more reliably on relevant prompts
- Adding evaluation test cases (
evals/evals.json) to a skill - Batch-validating all skills in a directory for consistency
Agent Skills Specification Reference
Frontmatter fields
| Field | Required | Constraints |
|---|---|---|
name |
Yes | 1–64 chars, lowercase alphanumeric + hyphens, no leading/trailing/consecutive hyphens, must match parent directory name |
description |
Yes | 1–1024 chars, must describe what skill does AND when to trigger |
allowed-tools |
No | Space-delimited list of pre-approved tools |
compatibility |
No | Max 500 chars, environment requirements |
license |
No | License name or reference to bundled file |
metadata |
No | Arbitrary key-value map for additional fields |
Standard directory structure
skill-name/
├── SKILL.md # Required
├── scripts/ # Optional: executable scripts
├── references/ # Optional: detailed documentation
├── assets/ # Optional: templates, images, data
└── evals/ # Optional: evaluation test cases
└── evals.json
Progressive disclosure tiers
| Tier | What's loaded | When | Token budget |
|---|---|---|---|
| 1. Catalog | name + description | Session start | ~100 tokens per skill |
| 2. Instructions | Full SKILL.md body | On activation | < 5000 tokens (500 lines max) |
| 3. Resources | scripts/, references/ | When needed | Varies |
Instructions
Step 1: Validate an existing skill
Run the validation script on a skill directory:
bash scripts/validate_skill.sh path/to/skill-directory
Validate all skills in a directory:
bash scripts/validate_skill.sh --all .agent-skills/
The script checks:
- Required frontmatter fields (
name,description) nameformat: lowercase, no consecutive hyphens, matches directory namedescriptionlength: 1–1024 charactersallowed-toolsformat: space-delimited (not YAML list)- Recommended sections present
- File length: warns if over 500 lines
Step 2: Write an effective description
The description field determines when a skill triggers. A weak description means the skill never activates; an over-broad one triggers at wrong times.
Template:
description: >
[What the skill does — list specific operations.]
Use when [trigger conditions]. Even if the user doesn't explicitly
mention [domain keyword] — also triggers on: [synonym list].
Principles (from agentskills.io):
- Imperative phrasing — "Use this skill when..." not "This skill does..."
- User intent, not implementation — describe what the user wants to achieve
- Be explicit about edge cases — "even if they don't say X"
- List trigger keywords — synonyms, related terms the user might type
- Stay under 1024 characters — descriptions grow during editing; watch the limit
Before / After:
# Before (weak — never triggers)
description: Helps with PDFs.
# After (optimized — reliable triggering)
description: >
Extract text and tables from PDF files, fill forms, merge and split documents.
Use when the user needs to work with PDF files, even if they don't explicitly
say 'PDF' — triggers on: fill form, extract text from document, merge files,
read scanned pages.
Step 3: Create a new SKILL.md
Use this template as the starting point:
---
name: skill-name
description: >
[What it does and specific operations it handles.]
Use when [trigger conditions]. Triggers on: [keyword list].
allowed-tools: Bash Read Write Edit Glob Grep
metadata:
tags: tag1, tag2, tag3
version: "1.0"
---
# Skill Title
## When to use this skill
- Scenario 1
- Scenario 2
## Instructions
### Step 1: [Action]
Content...
### Step 2: [Action]
Content...
## Examples
### Example 1: [Scenario]
Input: ...
Output: ...
## Best practices
1. Practice 1
2. Practice 2
## References
- [Link](url)
Step 4: Convert legacy section headings
| Legacy heading | Standard heading |
|---|---|
## Purpose |
## When to use this skill |
## When to Use |
## When to use this skill |
## Procedure |
## Instructions |
## Best Practices |
## Best practices |
## Reference |
## References |
## Output Format |
## Output format |
Step 5: Add evaluation test cases
Create evals/evals.json with 2–5 realistic test prompts:
{
"skill_name": "your-skill-name",
"evals": [
{
"id": 1,
"prompt": "Realistic user message that should trigger this skill",
"expected_output": "Description of what success looks like",
"assertions": [
"Specific verifiable claim (file exists, count is correct, format is valid)",
"Another specific claim"
]
}
]
}
Good assertions are verifiable: file exists, JSON is valid, chart has 3 bars. Avoid vague assertions like "output is good."
Available scripts
scripts/validate_skill.sh— Validates a SKILL.md against the Agent Skills spec
Examples
Example 1: Validate a skill directory
bash scripts/validate_skill.sh .agent-skills/my-skill/
Output:
Validating: .agent-skills/my-skill/SKILL.md
✓ Required field: name = 'my-skill'
✓ Required field: description present
✗ Description length: 1087 chars (max 1024)
✓ Name format: valid lowercase
✗ Name/directory mismatch: name='myskill' vs dir='my-skill'
✓ Recommended section: When to use this skill
✓ Recommended section: Instructions
⚠ Missing recommended section: Examples
✓ File length: 234 lines (OK)
Issues: 2 errors, 1 warning
Example 2: Batch validate all skills
bash scripts/validate_skill.sh --all .agent-skills/
Example 3: Fix common frontmatter issues
# WRONG — tags inside metadata is non-standard for some validators
metadata:
tags: [tag1, tag2] # list syntax
platforms: Claude # non-spec field
# CORRECT — per Agent Skills spec
metadata:
tags: tag1, tag2 # string value
allowed-tools: Bash Read Write # space-delimited, not a YAML list
Best practices
- Description quality first — weak descriptions mean the skill never activates; improve it before anything else
- Keep SKILL.md under 500 lines — move detailed reference docs to
references/ - Pin script versions — use
uvx ruff@0.8.0not justruffto ensure reproducibility - No interactive prompts in scripts — agents run in non-interactive shells; use
--flaginputs, never TTY prompts - Structured output from scripts — prefer JSON/CSV over free-form text; send data to stdout, diagnostics to stderr
- Add evals before publishing — at least 2–3 test cases covering core and edge cases
References
同梱ファイル
※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。
- 📄 SKILL.md (8,346 bytes)
- 📎 scripts/validate_skill.sh (7,206 bytes)