skill-authoring について
AIエージェントスキルの作成、レビュー、改善に向けたガイドで、Claude CodeスキルとMCPツールを扱います。メタデータ、起動条件、コンテンツ構成、段階的な開示、ツール設計、テスト、保守に関する46のルールを収録しています。
主な機能
- 018カテゴリにわたる46のルール
- 02スキルのメタデータと説明の指針
- 03起動条件とアクティベーションの最適化
- 04コンテンツの段階的な開示
- 05MCPツールの設計と検証
活用シーン
- 01エージェントスキルの作成やレビュー
- 02スキルの起動精度の改善
- 03スキル内容や参照資料の構成
- 04ツールインターフェースとスキル動作のテスト
MCP 対応
MCPツールの命名、パラメーターの説明、用途の範囲、エラーメッセージなどの設計指針を含みます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ pproenca/ dot-skills --skill skill-authoringインストール後、Claude Code で/skill-authoringを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
AGENTS.mdmetadata.jsonassets/templates/_template.mdreferences/_sections.mddesc-avoid-vague-terms.mddesc-differentiate-similar-skills.mddesc-include-negative-cases.mddesc-length-optimization.mddesc-specific-capabilities.mddesc-third-person-voice.mddesc-trigger-keywords.mdmaint-audit-security.mdmaint-changelog.mdmaint-plugin-packaging.mdmaint-semantic-versioning.mdmcp-allowed-tools.mdmcp-error-messages.mdmcp-idempotent-operations.mdmcp-parameter-descriptions.mdmcp-tool-naming.mdmcp-tool-scope.mdmeta-allowed-frontmatter-fields.mdmeta-directory-match.mdmeta-frontmatter-yaml-syntax.mdmeta-name-format.mdmeta-name-hyphen-boundaries.mdmeta-name-length.mdmeta-name-no-consecutive-hyphens.mdmeta-name-uniqueness.mdmeta-required-frontmatter.md詳細
AI エージェントスキルのベストプラクティス
Claude Code のスキルや MCP ツールを含む、AI エージェントスキルの設計・開発ガイドです。8 つのカテゴリにわたる 46 のルールを、影響度の高い順にまとめ、スキルの作成、レビュー、最適化を支援します。
適用する場面
- 新しい Claude Code のスキルや MCP ツールを作成するとき
- SKILL.md のメタデータや説明を記述・レビューするとき
- スキルのトリガーの信頼性を最適化するとき
- 段階的開示のためにコンテンツを構成するとき
- スキルの起動と動作をテストするとき
- エージェントのワークフロー向けにツールのインターフェースを設計するとき
基本原則
1. 起動は説明によって決まります。 Claude は、ユーザーの意図との説明の一致度に基づいてスキルを選択します。具体的な機能、トリガーキーワード、対象外のケースを含めてください。説明が曖昧なスキルは、起動が不安定になるか、まったく起動しません。
2. 重要な指示を冒頭に置きます。 Claude は長いコンテンツを切り詰めることがあります。譲れないルールは最初の 100 行に置いてください。重要な制約を末尾に埋め込むと、無視されます。
3. 段階的開示でトークンを節約します。 詳細なコンテンツは必要なときだけ読み込みます。2000 行のスキルは、起動するたびにコンテキストを無駄に消費します。次のように構成してください:SKILL.md(概要)→ references/(詳細)→ scripts/(実行)。
4. 実行だけでなく起動もテストします。 完璧に動作しても一度も起動しないスキルは、何の価値もありません。デプロイ前に、実際のユーザーの表現、同義語、エッジケースを使ってテストしてください。
5. ドメインごとにスキルを 1 つにします。 重複するスキルは起動時の競合を引き起こします。明確な境界(言語、フレームワーク、ワークフローの段階)で分割し、それぞれに異なるトリガーキーワードを設定してください。
ルールのカテゴリ
| 優先度 | カテゴリ | 影響度 | 接頭辞 |
|---|---|---|---|
| 1 | スキルのメタデータ設計 | CRITICAL | meta- |
| 2 | 説明の設計 | CRITICAL | desc- |
| 3 | コンテンツ構成 | HIGH | struct- |
| 4 | トリガーの最適化 | HIGH | trigger- |
| 5 | 段階的開示 | MEDIUM-HIGH | prog- |
| 6 | MCP ツールの設計 | MEDIUM | mcp- |
| 7 | テストと検証 | MEDIUM | test- |
| 8 | メンテナンスと配布 | LOW-MEDIUM | maint- |
クイックリファレンス
1. スキルのメタデータ設計(CRITICAL)
meta-name-format- スキル名は小文字とハイフンを使って記述しますmeta-name-hyphen-boundaries- 名前の先頭または末尾にハイフンを使用しませんmeta-name-no-consecutive-hyphens- 名前に連続したハイフンを使用しませんmeta-name-uniqueness- スキル名がグローバルに一意であることを確認しますmeta-required-frontmatter- 必須の frontmatter フィールドをすべて含めますmeta-allowed-frontmatter-fields- 許可された frontmatter フィールドのみを使用しますmeta-frontmatter-yaml-syntax- 有効な YAML frontmatter 構文を使用しますmeta-name-length- スキル名を 64 文字未満にしますmeta-directory-match- スキル名とディレクトリ名を一致させます
2. 説明の設計(CRITICAL)
desc-specific-capabilities- 説明に具体的な機能を記載しますdesc-trigger-keywords- 説明にユーザーが使うトリガーキーワードを含めますdesc-third-person-voice- 説明は三人称で記述しますdesc-length-optimization- 見つけやすさを考慮して説明の長さを最適化しますdesc-avoid-vague-terms- 説明で曖昧な表現を避けますdesc-differentiate-similar-skills- 類似するスキルは異なるトリガーで区別しますdesc-include-negative-cases- 精度を高めるため、対象外のケースを含めます
3. コンテンツ構成(HIGH)
struct-header-hierarchy- 一貫した見出し階層を使用しますstruct-instructions-first- 重要な指示をコンテンツの冒頭に置きますstruct-imperative-instructions- 指示は命令形で記述しますstruct-code-blocks-with-language- コードブロックに言語を指定しますstruct-line-limit- SKILL.md を 500 行未満にしますstruct-single-responsibility- ドメインごとにスキルを 1 つにしますproject-conventions- リポジトリ固有のスキル規約を維持します
4. トリガーの最適化(高)
trigger-slash-command-aliases- 説明にスラッシュコマンドのエイリアスを含めるtrigger-file-type-patterns- 説明にファイルタイプのパターンを含めるtrigger-workflow-stages- 説明でワークフローの各段階に言及するtrigger-error-patterns- デバッグ用スキルにエラーパターンを含めるtrigger-synonym-coverage- 同義語や別の言い回しもカバーする
5. 段階的な情報開示(中〜高)
prog-three-level-disclosure- 3段階の段階的な情報開示を実装するprog-one-level-deep-links- 参照リンクの階層を1段階までに制限するprog-scripts-execute-not-read- コードを読むのではなく、スクリプトを実行するprog-lazy-load-examples- 例や参照資料を必要に応じて読み込むprog-mutual-exclusion- 相互排他的なコンテキストを分ける
6. MCP ツールの設計(中)
mcp-tool-naming- アクションと対象が明確なツール名を使用するmcp-parameter-descriptions- すべてのツールパラメーターを説明するmcp-error-messages- 対応方法が分かるエラーメッセージを返すmcp-tool-scope- 単一の目的を持つツールを設計するmcp-allowed-tools- 安全上の制約にallowed-toolsを使用するmcp-idempotent-operations- 冪等なツール操作を設計する
7. テストと検証(中)
test-trigger-phrases- 実際のユーザーフレーズでスキルの有効化をテストするtest-edge-cases- エッジケースの入力でスキルをテストするtest-negative-scenarios- 関係のないリクエストではスキルが有効にならないことをテストするtest-instruction-clarity- 新しいコンテキストで指示の明確さをテストする
8. メンテナンスと配布(低〜中)
maint-semantic-versioning- スキルのリリースにセマンティックバージョニングを使用するmaint-changelog- スキルの更新履歴を管理するmaint-plugin-packaging- 配布用にスキルをプラグインとしてパッケージ化するmaint-audit-security- 外部ソースからインストールする前にスキルを監査する
ルールの作成
assets/templates/_template.md をコピーし、フロントマターのスキーマに従ってください。
---
title: Rule Title Here
impact: CRITICAL|HIGH|MEDIUM-HIGH|MEDIUM|LOW-MEDIUM|LOW
impactDescription: Quantified impact (e.g., "2-10x improvement")
tags: prefix, technique, related-concepts
---
参照ファイルには、次のパターンを使用します:references/{prefix}-{slug}.md