← Back to list

generate-props-documentation
by ntaksh42
⭐ 0🍴 0📅 Nov 24, 2025
SKILL.md
name: generate-props-documentation description: 全コンポーネントのProps定義(型、デフォルト値、説明)を自動的に解析し、統一されたマークダウンドキュメントを生成します。 allowed-tools: "Read, Write, Glob, Grep"
Props一覧ドキュメント自動生成
このスキルは、全コンポーネントのProps定義を解析し、統一されたドキュメントを自動生成します。
実行手順
-
コンポーネントの収集
src/components/ui/内の全.astroファイルを取得- 各ファイルを読み込み
-
Props情報の抽出 各コンポーネントから以下の情報を抽出:
- プロパティ名
- 型(TypeScript型定義)
- デフォルト値
- JSDocコメント(説明)
- 必須/オプションの区別
-
ドキュメント生成
- マークダウン形式でドキュメントを生成
- コンポーネントごとにセクションを作成
- Props一覧表を作成
-
出力フォーマット
# Astro Components Props リファレンス
このドキュメントは自動生成されています。
## Button
Windows Forms風のボタンコンポーネント
### Props
| プロパティ | 型 | デフォルト値 | 必須 | 説明 |
|-----------|-----|-------------|------|------|
| label | string | 'Button' | いいえ | ボタンのテキスト |
| variant | 'default' \| 'primary' \| 'flat' | 'default' | いいえ | ボタンの種類 |
| size | 'small' \| 'medium' \| 'large' | 'medium' | いいえ | ボタンのサイズ |
| disabled | boolean | false | いいえ | 無効化 |
| type | 'button' \| 'submit' \| 'reset' | 'button' | いいえ | HTMLボタンのtype属性 |
| fullWidth | boolean | false | いいえ | ボタンの幅を100%にする |
### 使用例
\`\`\`astro
<Button variant="primary" size="large">送信</Button>
\`\`\`
---
## TextBox
... (他のコンポーネントも同様)
-
ファイル出力
- ユーザーに保存場所を確認
- デフォルト:
docs/PROPS_REFERENCE.md - 既存ファイルがある場合は上書き確認
-
統計情報の表示
- 処理したコンポーネント数
- 抽出したProps総数
- Props型の種類(string, boolean, number等の使用頻度)
実装ガイドライン
Propsの抽出方法
-
インターフェース定義の検出
interface Props { label?: string; // オプショナル(?付き) required: boolean; // 必須 } -
デフォルト値の検出
const { label = 'Default', required } = Astro.props; -
JSDocコメントの抽出
/** ボタンのテキスト */ label?: string;
エラーハンドリング
- Props定義が見つからない場合は「Props定義なし」と記載
- 型情報が不完全な場合は「any」と表示し警告
- JSDocコメントがない場合は「説明なし」と記載
追加機能(オプション)
- 検索機能: 特定のProp名や型でフィルタリング
- JSON出力: JSON形式でも出力可能にする
- バリデーション: 不正な型定義やデフォルト値の不整合を検出
注意事項
- TypeScriptの型定義を正確に解析すること
- Union型(
'a' | 'b')は見やすく整形 - 複雑なオブジェクト型は簡潔に表現
- 生成後は手動での微調整を推奨
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon