| name | extract-skill-patterns |
| description | 会話履歴を分析し、スキルとして抽出できる再利用可能なパターンを提案する |
| argument-hint | |
| allowed-tools | Read, mcp__acp__Read, Grep, Bash |
| disable-model-invocation | false |
スキル抽出分析スキル
現在の会話履歴を分析し、再利用可能なスキルとして抽出できるパターンを提案します。
分析対象
会話履歴から以下のパターンを検出します:
-
繰り返し実行されるワークフロー
- 複数回登場する類似のツール実行シーケンス
- 定型的な調査・確認手順
-
複数ツールの組み合わせパターン
- 特定の目的のために組み合わせて使われるツール群
- 条件分岐を含む処理フロー
-
ドメイン固有の操作
- プロジェクト特有の定型作業
- 特定のファイル構造に対する操作
-
判断を伴う複合タスク
- 複数の確認ステップと判断が必要な処理
- 状況に応じた分岐処理
分析手順
1. 会話履歴の取得
会話履歴は分析時点で自動的に参照されるため、明示的な取得は不要です。
2. パターンの検出
会話履歴から以下を抽出:
- 実行されたツールの種類と順序
- 繰り返し現れるコマンドパターン
- ファイル操作の対象となったパス
- 条件分岐のロジック
- ユーザーとの対話で確認された判断基準
3. スキル化の評価
検出したパターンごとに以下を評価:
- 再利用性: 今後も同様の操作が必要になる可能性
- 複雑性: スキル化することで簡略化できる手順の多さ
- 汎用性: 特定の状況に限定されない適用範囲
- 自動化可能性: ユーザーの判断を最小限に抑えられるか
4. 提案の生成
スキル化すべきパターンについて、以下の情報を提案:
- スキル名: 操作を端的に表す名前
- 説明: スキルが実行する内容の要約
- トリガー: どのような状況でこのスキルを使うべきか
- 手順概要: スキルが実行する主要ステップ
- 必要なツール: allowed-toolsに指定すべきツール
- 引数: スキル実行に必要なパラメータ
出力フォーマット
以下の形式で提案を出力します:
## スキル化候補の分析結果
### 候補1: [スキル名]
- 説明: [スキルの目的と機能]
- トリガー: [使用すべき状況]
- 再利用性: [高/中/低]
- 複雑性: [高/中/低]
#### 検出されたパターン
[会話履歴で見つかった具体的な操作手順]
#### 提案する手順
1. [ステップ1]
2. [ステップ2]
...
#### 必要なツール
- [ツール1]
- [ツール2]
#### 引数
- [引数名]: [説明]
---
[他の候補があれば同様に記述]
評価基準
スキル化を推奨する条件:
- 3回以上類似の操作が会話に登場している
- 5ステップ以上の手順を含む
- 複数のツールを組み合わせている
- 特定のプロジェクト構造に依存している
スキル化を推奨しない条件:
- 一度しか実行されていない操作
- 単一ツールで完結する簡単な操作
- 高度な判断が毎回必要な操作
- プロジェクト固有すぎて汎用性がない
注意事項
- 既存のスキル(create-pr-description, summarize-issue)と重複しないよう確認する
- 会話履歴から実際に実行された操作のみを分析対象とする
- スキル化することで本当に効率化できるかを慎重に評価する
- 提案は優先度順(再利用性×複雑性の高い順)に並べる
次のステップ
提案されたスキルについて、ユーザーが実装を希望する場合:
- スキル名を確定
- SKILL.mdの詳細な仕様を作成
conf/.claude/skills/[skill-name]/SKILL.mdとして保存
- 必要に応じてテスト実行
出力例
## スキル化候補の分析結果
### 候補1: setup-new-repository
- 説明: 新規リポジトリのセットアップ手順を自動化
- トリガー: 新しいプロジェクトを開始する時
- 再利用性: 高
- 複雑性: 高
#### 検出されたパターン
会話履歴で3回、以下の手順が繰り返されている:
1. ghq getでリポジトリをクローン
2. README.mdの確認
3. 依存関係のインストール(npm install/cargo build等)
4. 設定ファイルのテンプレート作成
#### 提案する手順
1. リポジトリURLまたは名前を引数として受け取る
2. ghq getでローカルにクローン
3. プロジェクトタイプを判定(package.json, Cargo.toml等の存在確認)
4. 該当するパッケージマネージャーで依存関係をインストール
5. 推奨される初期設定ファイルの存在を確認し、不足があれば提案
#### 必要なツール
- Bash
- Read
- mcp__acp__Read
- Grep
#### 引数
- repository: GitHubリポジトリのURL or org/repo形式