workflow-template-extractor について
workflow-template-extractorは、既存プロジェクトを再利用可能で実行できるテンプレートに整えるスキルです。成熟したプロジェクトを開発の土台として再利用したいチーム向けで、リファクタリングではなくコピーと整理を中心に進めます。
主な機能
- 01プロジェクトをtemplatesディレクトリへコピー
- 02秘密情報を除去しIDを環境変数に置換
- 03ブランド要素を汎用プレースホルダーに変更
- 04README、環境設定例、メタデータを整備
- 05インストール、dev、buildの検証を記録
活用シーン
- 01実績あるプロジェクトを新規開発の土台にする
- 02共有可能なプロジェクトテンプレートを準備
- 03ベースライン公開前に固有情報を除去
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ heyvhuang/ ship-faster --skill workflow-template-extractorインストール後、Claude Code で/workflow-template-extractorを入力して読み込まれたか確認します。
詳細
ワークフロー:テンプレート抽出(実プロジェクト → テンプレート)
目標:実プロジェクトを、手作業でのクリーンアップを最小限に抑えながら、templates/ 内の共有可能で実行可能なテンプレートに変換します。
これは、今後の開発のベースラインとして再利用したい「実績のあるプロジェクト」を対象としています。
入力(パスのみを渡す)
source_repo_root:実プロジェクトへのパスtarget_repo_root:Ship Faster リポジトリのルート(templates/がある場所)run_dir:runs/template-extractor/active/<run_id>/extract_spec.md:保持・削除・汎用化する内容(ブランド、コピー、アセット、インテグレーション、認証ゲート)
出力(永続化)
03-plans/extract-plan.md05-final/extract-summary.mdtemplates/<NNN>-<slug>/(実行可能)
ワークフロー
0) 初期化
run_dirを作成します。<slug>と<NNN>(次に使用可能なテンプレート番号)を決定します。source_repo_rootをtemplates/<NNN>-<slug>/にコピーします(ビルド出力とキャッシュは除外します)。
1) シークレット除去と脱ブランド化
必須事項:
- すべてのファイルからシークレット値を削除します(
.env*、設定ファイル、ハードコードされたトークン)。 - プロジェクト ID(Stripe の価格 ID、Supabase の URL/キー、Webhook シークレット)を環境変数キーに置き換えます。
- テンプレートに意図的にブランドを残す場合を除き、ブランド名、ドメイン、ロゴを中立的なプレースホルダーに置き換えます。
2) テンプレートのエントリードキュメントを標準化
必須ファイル:
README.md(5 分で実行可能).env.local.example(キーのみ)metadata.json(名前と説明)
推奨事項:
dev、build、start用のスクリプトがあることを確認します。- lint/typecheck/format がなく、リポジトリが TypeScript 中心の場合は、最小限のガードレールを追加します(過度に重いガバナンスは避けてください)。
3) 検証
05-final/extract-summary.md に以下を記録します:
- インストールが正常に動作する
devが起動するbuildが成功する(または、認証情報がないと実行できない理由を明確に記載する)
制約
- シークレット値をコミットしてはいけません。
- 抽出は「コピーしてクリーンアップ」であり、リファクタリングプロジェクトではありません。
コメント
Markdown 対応