---
name: Create Skill
slug: create-skill-6
category: AI Engineering
description: Create Skill guides a conversational workflow to collect domain knowledge and generate an optimized Claude Code skill. It is used when you need to define scope, trigger phrases, and review criteria before writing the final SKILL.md.
github: "https://github.com/shinpr/ai-coding-project-boilerplate/tree/main/.claude/commands-ja/create-skill.md"
language: JavaScript
stars: 227
forks: 25
install: "npx degit https://github.com/shinpr/ai-coding-project-boilerplate/tree/main/.claude/commands-ja ~/.claude/skills/commands-ja"
installs_to: ~/.claude/skills/commands-ja
source_path: .claude/commands-ja/create-skill.md
collection_size: 25
category_size: 2793
collection_url: "https://dirskills.com/collections/shinpr/ai-coding-project-boilerplate"
added: 2026-09-03T06:04:53.848Z
last_synced: 2026-09-03T06:04:53.848Z
canonical_url: "https://dirskills.com/skills/create-skill-6"
---

# Create Skill

Create Skill guides a conversational workflow to collect domain knowledge and generate an optimized Claude Code skill. It is used when you need to define scope, trigger phrases, and review criteria before writing the final SKILL.md.

**Install:**

```bash
npx degit https://github.com/shinpr/ai-coding-project-boilerplate/tree/main/.claude/commands-ja ~/.claude/skills/commands-ja
```

## README

**ユーザーの明示的な指示**: ユーザーは、このレシピで名前が挙げられたすべてのサブエージェント呼び出しを明示的に指示し、承認している。各呼び出しの前提条件を満たした時点で、該当する呼び出しを実行する。

**コマンドコンテキスト**: 対話を通じてユーザーの知識を収集し、最適化されたスキルファイルを生成・レビューするワークフロー。

スキルのトピック: $ARGUMENTS

## 実行プロセス

Step 1-6を順番に完了する。現在のステップで定められた出力、レビュー結果、または承認条件を満たした場合にのみ次へ進む。該当するすべての完了条件を満たした後に完了する。

### Step 1: 事前確認

1. 既存スキルをGlob: `.claude/skills/*/SKILL.md`, `~/.claude/skills/*/SKILL.md`
2. `$ARGUMENTS`が既存スキル名と一致する場合: `/refine-skill`を提案して終了
3. 既存スキル名の一覧をユーザーに提示

### Step 2: スキル知識の収集

AskUserQuestionで4ラウンドに分けて情報を収集する。

**ラウンド1: スキルの本質**
- このスキルはどのドメイン知識を体系化するか？（1-2文）
- スキル適用時の主な目的は？（例: 「型安全性の確保」「テストパターンの標準化」）

**ラウンド2: プロジェクト固有の価値**

LLMのベースライン知識を超える価値があるかを検証する。

- このスキルが体系化するプロジェクト固有のルール・パターン・クラス名・ワークフローは何か？
- 具体例を提示する（例: 特定のエラークラス、チーム規約、このコードベース固有のファイルパターン）

| ユーザー回答 | アクション |
|-------------|-----------|
| プロジェクト固有の詳細を提供 | スキルコンテンツに組み込む。ラウンド3へ。 |
| 一般知識のみ記述 | 「一般知識のみのスキルは実行時にトリガーされにくい」旨を警告。選択肢を提示: (A) プロジェクト固有の要素を特定する (B) トリガーされにくい可能性を理解した上で進める |

**ラウンド3: スコープ、使用場面、ユーザーフレーズ**
- どのような場面でこのスキルを有効化すべきか？ 具体的なシナリオを3-5個（例: 「ユニットテスト作成時」「セキュリティ観点でのPRレビュー時」）
- このスキルが明示的に扱わない範囲は？（スコープ境界）
- チームがこの作業を依頼する際に実際に使うフレーズは？（例: 「エラーハンドリング追加して」「リトライロジック見て」「キャッチブロックレビューして」）

収集したフレーズを2カテゴリに分類:

| カテゴリ | 定義 | 例 |
|----------|------|-----|
| **skill-dependent** | スキルの知識なしでは正しく完了できない | 「リトライロジック実装して」「エラーハンドリングレビューして」 |
| **pattern-copyable** | 既存コードのコピーで完了可能 | 「fetchXxx関数を追加して」 |

全てpattern-copyableの場合: 「これらの作業は既存コードのコピーで完了できます。このスキルが体系化する隠れたルールが必要なシナリオを提供できますか？」と確認し、少なくとも1つのskill-dependentフレーズを確保する。

**ラウンド4: 判断基準とエビデンス**
- 具体的なルールや基準は？（体系化すべき中核知識）
- 良い/悪いパターンの具体例は？
- このスキルが準拠する外部参照や標準は？
- 実物の資料: 「これらのパターンを実証する既存ファイル、過去の障害例、PR、会話ログはありますか？」（実際の使い方に裏付けられた内容にする）

### Step 3: スキル名と構造の決定

1. 既存の命名規則に従い名詞/動名詞形式のスキル名を導出:
   - `coding-standards`, `typescript-rules`, `implementation-approach`（名詞/動名詞の複合語）
2. 収集した内容量からサイズを見積もり
3. スキル名と構造をAskUserQuestionで確認

### Step 4: スキルコンテンツの生成

収集した情報を渡してskill-creatorエージェントをAgent toolで起動:
- Mode: creation
- Skill name: Step 3のスキル名
- Raw knowledge: ラウンド4の生の知識
- Trigger scenarios: ラウンド3の使用場面
- User phrases: ラウンド3のユーザーフレーズ（skill-dependentとpattern-copyable両方）
- Scope: ラウンド3のスコープ
- Decision criteria: ラウンド4の判断基準
- Project-specific value: ラウンド2のプロジェクト固有の価値
- Practical artifacts: ラウンド4の実物の資料（提供された場合）
- Existing generated content: 初回生成では`None`、修復時は現在のSKILL.mdとreference
- Current review: 初回生成では`None`、修復時は直前のskill-reviewer出力

### Step 5: 生成コンテンツのレビュー

skill-reviewerエージェントをAgent toolで起動:
- skill-creatorの生成コンテンツを渡す
- 生成された各referenceのファイル名、行数、内容を渡す
- レビューモード: `creation`
- 再レビューでは、全ての`user_decision`を解決した後、前回のレビューとskill-creatorの`reviewResolutions`を渡す

**判定ロジック**:
- グレードAまたはB: Step 6へ進み、グレードBの残存指摘は任意の注記として提示する
- グレードC: 各指摘を`findingId`で`apply`、`decline`、`user_decision`に分類するようskill-creatorへ依頼する
- `apply`: 現在の生成コンテンツを修正して再レビューする
- `decline`: 根拠を添えて再レビューする
- `user_decision`: ユーザーへ確認し、回答を成果またはスコープを決める情報としてskill-creatorへ戻す。再レビュー前に、その指摘を`apply`または根拠付き`decline`へ確定する
- reviewerが却下済みの指摘を維持できるのは、正しさまたは検証可能性に関する新しい根拠がある場合だけとする。新しい根拠を伴わない同じ好みは作業を妨げない
- 2回の修復・再レビュー後もグレードCの場合は、現在の内容と残存指摘をユーザーへ提示する

### Step 6: ユーザー確認と書き込み

1. 生成したSKILL.mdの内容をユーザーに提示し最終承認を取得
2. 意図の整合性を確認: 「このスキルは説明いただいた知識と基準を正しく反映していますか？」
3. 修正要望がある場合: 変更を適用しskill-reviewerを再実行
4. 承認後、`.claude/skills/{skill-name}/SKILL.md`に書き込み
5. `/sync-skills`の実行を提案

## 完了条件

- [ ] 既存スキルとの名前衝突がない
- [ ] プロジェクト固有の価値をラウンド2で検証済み
- [ ] ユーザーフレーズを収集・分類済み（少なくとも1つのskill-dependent）
- [ ] スキル名をユーザーが確認済み
- [ ] skill-creatorが有効なJSON出力を返却
- [ ] skill-reviewerがグレードAまたはBを返却
- [ ] ユーザーが最終コンテンツを承認済み
- [ ] `.claude/skills/{skill-name}/SKILL.md`に書き込み済み
- [ ] `/sync-skills`の実行を提案済み

## エラーハンドリング

| エラー | アクション |
|--------|-----------|
| スキル名が既存と重複 | `/refine-skill {スキル名}`を提案 |
| 4ラウンドで知識が不足 | 対象を絞った追加質問（最大2問） |
| skill-creatorが無効なJSONを返却 | 入力を簡素化して1回再試行 |
| 2回の修復・再レビューでもグレードC | 現在の内容と残存指摘を提示し、ユーザーに判断を委ねる |
| ユーザーが生成内容を却下 | 具体的なフィードバックを収集し、調整してskill-creatorを再実行 |

## スコープ境界

**このコマンドが担当**: 対話による知識収集、creatorとreviewerエージェントの連携、ファイル書き込み。
**このコマンドは担当しない**: スキルコンテンツの最適化ロジック（skill-creatorに委譲）、品質評価ロジック（skill-reviewerに委譲）、メタデータ同期（`/sync-skills`に委譲）。
