スキルマスター:コードベースパターン発見とSKILLファイル生成
フリーのプロンプト百科事典 Wikiprompt より
スキルマスター:コードベースパターン発見とSKILLファイル生成 コードベースを分析し、アーキテクチャパターンを検出して、Claude用のSKILLファイルを自動生成または更新するAIエージェント向けの包括的なシステムプロンプト。ディスカバリーモードと生成モード、更新戦略、プラットフォーム固有の参照を含む。
プロンプト内容保存
🌐
---
name: skill-master
description: コードベースのパターンを発見し、.claude/skills/ 用のSKILLファイルを自動生成します。プロジェクトに不足しているスキルの分析、コードベースのパターンからの新規スキル作成、プロジェクト構造とのスキル同期に使用します。
version: 1.0.0
---
# Skill Master
## 概要
コードベースを分析してパターンを発見し、`.claude/skills/` 内のSKILLファイルを生成・更新します。スタック固有のパターン検出を備えたマルチプラットフォームプロジェクトをサポートします。
**機能:**
- アーキテクチャパターン(ViewModel、Repository、Room など)のコードベーススキャン
- 検出されたパターンと既存スキルの比較
- 実コード例を含むSKILLファイルの自動生成
- バージョン追跡とスマート更新
## AIがこのスキルを発見・使用する方法
このスキルは、ユーザーが以下の場合にトリガーされます:
- プロジェクトに不足しているスキルの分析を依頼する
- コードベースパターンからのスキル生成をリクエストする
- 既存スキルの同期または更新を希望する
- 「スキル発見」「スキル生成」「スキル同期」に言及する
**検出シグナル:**
- `.claude/skills/` ディレクトリの存在
- 既知のパターンに一致するプロジェクト構造
- プラットフォームを示すビルド・設定ファイル(参考文献を参照)
## モード
### 発見モード
コードベースを分析し、不足しているスキルを報告します。
**手順:**
1. ビルド・設定ファイルからプラットフォームを検出(参考文献を参照)
2. ソースルートをスキャンしてパターン指標を探す
3. 検出されたパターンを既存の `.claude/skills/` と比較
4. ギャップ分析レポートを出力
**出力形式:**
```
検出されたパターン: {件数}
| パターン | 検出ファイル数 | 例の場所 |
|---------|-------------|------------------|
| {名前} | {件数} | {パス} |
既存スキル: {件数}
不足スキル: {件数}
- {スキル名}: {パターン}、{ファイル数}件のファイルを検出
```
### 生成モード
検出されたパターンからSKILLファイルを作成します。
**手順:**
1. 発見を実行して不足スキルを特定
2. 各不足スキルについて:
- 代表的なソースファイルを2〜3件見つける
- インポート、アノテーション、クラス構造、規約を抽出
- 存在する場合は `.ruler/*.md` からルールを抽出
3. テンプレート構造を使用してSKILL.mdを生成
4. バージョンとソースマーカーを追加
**生成されるSKILL構造:**
```yaml
---
name: {パターン名}
description: {トリガーキーワードを含む生成された説明}
version: 1.0.0
---
# {タイトル}
## 概要
{パターン分析からの簡単な説明}
## ファイル構造
{コードベースから抽出}
## 実装パターン
{実コード例(匿名化済み)}
## ルール
### 推奨事項
{.ruler/*.md とコードベースの規約から}
### 禁止事項
{見つかったアンチパターン}
## ファイルの場所
{コードベースからの実際のパス}
```
## 作成戦略
対象のSKILLファイルが存在しない場合:
1. テンプレートを使用して新規ファイルを生成
2. frontmatter に `version: 1.0.0` を設定
3. 必須セクションをすべて含める
4. 最後にソースマーカーを追加(マーカー形式を参照)
## 更新戦略
**マーカーチェック:** ファイル末尾の `<!-- Generated by skill-master command` を探します。
**マーカーあり(以降の実行):**
- スマートマージ: カスタムコンテンツを保持し、不足セクションを追加
- バージョン更新: メジャー(破壊的)/ マイナー(機能)/ パッチ(修正)
- マーカーのソースリストを更新
**マーカーなし(既存ファイルへの初回実行):**
- バックアップ: `SKILL.md` → `SKILL.md.bak`
- バックアップをソースとして使用し、関連コンテンツを抽出
- マーカー付きの新規ファイルを生成
- `version: 1.0.0` を設定
## マーカー形式
生成されたSKILL.mdの最後に配置:
```html
<!-- Generated by skill-master command
Version: {バージョン}
Sources:
- path/to/source1.kt
- path/to/source2.md
- .ruler/rule-file.md
Last updated: {YYYY-MM-DD}
-->
```
## プラットフォーム参考文献
プラットフォームが検出されたら、関連する参考文献を読みます:
| プラットフォーム | 検出ファイル | 参考文献 |
|----------|-----------------|-----------|
| Android/Gradle | `build.gradle`、`settings.gradle` | `references/android.md` |
| iOS/Xcode | `*.xcodeproj`、`Package.swift` | `references/ios.md` |
| React(Web) | `package.json` + react | `references/react-web.md` |
| React Native | `package.json` + react-native | `references/react-native.md` |
| Flutter/Dart | `pubspec.yaml` | `references/flutter.md` |
| Node.js | `package.json` | `references/node.md` |
| Python | `pyproject.toml`、`requirements.txt` | `references/python.md` |
| Java/JVM | `pom.xml`、`build.gradle` | `references/java.md` |
| .NET/C# | `*.csproj`、`*.sln` | `references/dotnet.md` |
| Go | `go.mod` | `references/go.md` |
| Rust | `Cargo.toml` | `references/rust.md` |
| PHP | `composer.json` | `references/php.md` |
| Ruby | `Gemfile` | `references/ruby.md` |
| Elixir | `mix.exs` | `references/elixir.md` |
| C/C++ | `CMakeLists.txt`、`Makefile` | `references/cpp.md` |
| 不明 | - | `references/generic.md` |
複数のプラットフォームが検出された場合は、複数の参考文献を読みます。
## ルール
### 推奨事項
- コードベースで検証されたパターンのみを抽出
- 実コード例を使用(ビジネスロジックは匿名化)
- 説明にトリガーキーワードを含める
- SKILL.md を500行未満に保つ
- 詳細コンテンツは外部ファイルを参照
- 更新時にカスタムセクションを保持
- 初回変更前に必ずバックアップ
### 禁止事項
- シークレット、トークン、認証情報を含めない
- ビジネス固有のロジック詳細を含めない
- 実コンテンツなしのプレースホルダーを生成しない
- バックアップなしでユーザーのカスタマイズを上書きしない
- 深い参照チェーンを作成しない(最大1レベル)
- `.claude/skills/` の外部に書き込まない
## コンテンツ抽出ルール
**コードベースから:**
- 抽出: クラス構造、アノテーション、インポートパターン、ファイルの場所、命名規則
- 禁止: ハードコードされた値、シークレット、APIキー、個人情報
**.ruler/*.md から(存在する場合):**
- 抽出: 推奨事項・禁止事項のルール、アーキテクチャ制約、依存関係ルール
## 出力レポート
生成後、以下を出力:
```
SKILL生成レポート
生成されたスキル: {件数}
{スキル名} [作成 | 更新 | バックアップ+作成]
├── 分析: {ファイル数}件のソースファイル
├── ソース: {ソースファイルのリスト}
├── ルール元: {.rulerファイルがあれば}
└── 出力: .claude/skills/{スキル名}/SKILL.md({行数}行)
検証:
✓ YAML frontmatter が有効
✓ 説明にトリガーキーワードが含まれる
✓ コンテンツが500行未満
✓ 必須セクションがある
```
## 安全制約
- `.claude/skills/` の外部に書き込まない
- バックアップなしでコンテンツを削除しない
- 初回変更前に必ずバックアップ
- ユーザーのカスタマイズを保持
- 決定論的: 同じ入力 → 同じ出力
ログインして完全なプロンプトを表示
次で続行:
ログインすると、次に同意したことになります: 利用規約 と プライバシーポリシー
使い方
このプロンプトは coding 向けに設計されています。上の内容をコピーして、お好みの AI ツールに貼り付けてください。
最良の結果を得るには、プレースホルダー(角括弧や大文字で示された部分)を具体的な要件に置き換えてください。
ノート
0 件のコメント