scaffold について
scaffoldは、既存リポジトリの実装パターンに沿ってコードを段階的に生成する開発スキルです。モジュールやコンポーネントなどの追加に使え、変更ファイルと後続作業を報告します。
主な機能
- 01エンドポイント、モジュール、コンポーネント、パッケージ、モデルの生成
- 02類似実装を3件以上確認
- 03ローカルの命名規則とファイル構成に準拠
- 04ファイル上書き前に確認
- 05作成ファイルと後続手順の報告
活用シーン
- 01既存プロジェクトへのAPIエンドポイント追加
- 02プロジェクトのパターンに沿ったUIコンポーネント作成
- 03共有パッケージやデータベースモデルの雛形作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ shipshitdev/ skills --skill scaffoldインストール後、Claude Code で/scaffoldを入力して読み込まれたか確認します。
同梱ファイルplugin.json
詳細
スキャフォールド
既存のリポジトリ内に、コードベースのローカルなパターンに従って、段階的にコードを生成します。
契約
入力:
- スキャフォールド対象の種類と名前
- リポジトリのルート
- 参考にする既存の例
出力:
- 作成または変更したファイル
- 既存のコードから踏襲したパターン
- 手動で必要な後続作業と実行するテスト
作成/変更するもの:
- 指定されたモジュール/コンポーネント/パッケージのローカルなソース、テスト、エクスポート用ファイル
- 完全なプロダクトリポジトリは作成しません
外部への副作用:
- ありません
確認が必要な場合:
- 既存ファイルを上書きする前
- 該当する例が3つ未満で、新しいパターンを導入する前
委譲先:
- ユーザーが新しいプロジェクト全体を必要としている場合は、
project-init-orchestrator - ユーザーが新しい Shipshit.dev プロダクトリポジトリを必要としている場合は、
project-init-orchestrator(v0 ルート)/npx @shipshitdev/v0 nestjs-expert、react-patterns、shadcn、typescript-expertなどのフレームワーク固有のスキル
手順
-
引数からスキャフォールド対象を特定します:
endpoint [name]— 新しい API エンドポイント(コントローラー+サービス+モジュール)module [name]— 完全な構成を備えた新しいバックエンドモジュールcomponent [name]— 適切な型付けを備えた新しい UI コンポーネントpackage [name]— 新しい共有パッケージmodel [name]— サービスを備えた新しいデータベースモデル(Prisma)
-
既存の例を3つ以上見つけます:
- コードベース内で類似の実装を検索します
- 使用されている正確なパターン(インポート、命名、ファイル構成)を特定します
- モジュール固有の規約に注意します
-
種類に応じてスキャフォールドします:
API エンドポイント
- 適切なディレクトリにコントローラー、サービス、モジュールを作成します
- 認証ガード、テナントフィルタリング、シリアライザーによるレスポンスに従います
UI コンポーネント
- 適切な型付けを備えたコンポーネントファイル
- 専用の props ファイルに Props インターフェースを定義
- バレルからエクスポート
共有パッケージ
- package.json を含むディレクトリ
- バレルエクスポート:
src/index.ts - TypeScript の設定
データベースモデル
- Prisma モデルファイルとマイグレーション
- 共有インターフェースパッケージ内のインターフェース
- 該当する場合は共有シリアライザーパッケージ内のシリアライザー
-
重要なルールを適用します:
- インターフェースはインラインではなく、専用ファイルに定義します
- 相対インポートではなく、パスエイリアスを使用します
- すべてのクエリでテナント/組織フィルターを適用します(該当する場合)
-
報告します:作成したすべてのファイルと必要な手動作業を列挙します
引数
- 必須:スキャフォールドする対象(例:「endpoint tasks」、「component ImageGrid」、「model workflows」)
コメント
Markdown 対応