mcpField
L
ln-724-artifact-cleaner

ln-724-artifact-cleaner

github.com/levnikolaevich開発584364 回インストール2 日前に更新
リポジトリ

ln-724-artifact-cleaner について

ln-724-artifact-cleanerは、オンラインプラットフォームから書き出したプロジェクトを本番デプロイ向けに整えるスキルです。Replit、StackBlitz、CodeSandbox、Glitchの固有ファイルや依存関係を検出し、変更内容を提示して確認後に削除します。

主な機能

  1. 014つのプラットフォームを検出
  2. 02固有ファイルと依存関係をスキャン
  3. 03削除・変更内容を事前表示
  4. 04確認後にクリーンアップして報告
  5. 05Glitchの.data/データを保護

活用シーン

  1. 01Replitの書き出しプロジェクトを整理
  2. 02StackBlitzやCodeSandboxの設定を除去
  3. 03Glitchプロジェクトをデプロイ向けに準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-724-artifact-cleaner

インストール後、Claude Code で/ln-724-artifact-cleanerを入力して読み込まれたか確認します。

同梱ファイルreferences/platform_artifacts.md

詳細

パス: ファイルパス(references/、../ln-*)は、このスキルディレクトリからの相対パスです。

ln-724-artifact-cleaner

タイプ: L3 ワーカー カテゴリ: 7XX プロジェクトのブートストラップ

オンラインプラットフォームからエクスポートされたプロジェクトからプラットフォーム固有のアーティファクトを削除し、本番環境へのデプロイに備えます。


概要

項目詳細
入力プロジェクトディレクトリ、プラットフォーム(自動検出または手動指定)
出力プラットフォームへの依存関係がないクリーンなプロジェクト
プラットフォームReplit、StackBlitz、CodeSandbox、Glitch
所要時間約2~5分
呼び出しln-720 から呼び出し(TRANSFORM モード、条件付き)、またはユーザーが呼び出し

呼び出し条件:

  • TRANSFORM モードのみ(CREATE モードではスキップ)
  • 少なくとも1つのプラットフォームが検出されていること
  • クリーンアップ前にユーザーの確認を得ること

プラットフォームのサポート一覧

プラットフォーム設定ファイルディレクトリNPM パッケージビルド設定コメント
Replit.replit、replit.nix.local/、.cache/、.upm/@replit/*REPL_ID チェック// @replit
StackBlitz.stackblitzrc.turbo/--ポートの上書き--
CodeSandboxsandbox.config.json.codesandbox/--CSB 環境チェック--
Glitchglitch.json、.glitch-assets.glitch/、.data/--Glitch 環境変数--

リファレンス: platform_artifacts.md


ワークフロー

Phase 1: Detect & Scan
    |
    +---> 1.0 Detect platforms (auto-detect by config files)
    +---> 1.1 Scan platform-specific artifacts
    |
    v
Phase 2: Preview
    |
    v
Phase 3: Confirm
    |
    v
Phase 4: Execute (per detected platform)
    |
    +---> 4.1 Delete files/directories
    +---> 4.2 Modify package.json
    +---> 4.3 Modify build config (vite/webpack)
    +---> 4.4 Remove platform comments
    +---> 4.5 Modify .gitignore
    |
    v
Phase 5: Verify & Report

フェーズ1:検出とスキャン

ステップ1.0:プラットフォームの検出
プラットフォーム主な識別情報信頼度
Replit.replit ファイル100%
StackBlitz.stackblitzrc100%
CodeSandboxsandbox.config.json100%
Glitchglitch.json100%

出力:

Detected Platforms:
  - replit (confidence: 100%)
ステップ1.1:アーティファクトのスキャン

検出されたプラットフォームごとに、プラットフォーム固有の検出ルールを使ってアーティファクトをスキャンします。

Replit の検出ルール:

Files:
  - Glob: .replit, replit.nix, .replit.nix
  - Glob: vite-plugin-meta-images.ts (if uses REPLIT_* env vars)
Directories:
  - Glob: .local/, .cache/, .upm/, .breakpoints
Package.json:
  - Grep: "@replit/" in devDependencies
Vite Config:
  - Grep: "@replit/" imports
  - Grep: "REPL_ID" or "REPLIT_" environment checks
Code:
  - Grep: "// @replit" comments in *.tsx, *.ts, *.jsx, *.js
.gitignore:
  - Grep: "^\.replit$" line

StackBlitz/CodeSandbox/Glitch: 必須の読み込み: 検出ルールを確認するため、platform_artifacts.md を読み込みます。

スキャン結果の形式
Scan Results:
  Platform: Replit
  Files Found: 2
    - .replit (729 bytes)
    - vite-plugin-meta-images.ts (2333 bytes)
  Directories Found: 1
    - .local/ (6 files, 589KB)
  Package Dependencies: 3
    - @replit/vite-plugin-cartographer
    - @replit/vite-plugin-dev-banner
    - @replit/vite-plugin-runtime-error-modal
  Build Config Modifications: 4
    - Import: runtimeErrorOverlay
    - Import: metaImagesPlugin
    - Plugin: runtimeErrorOverlay()
    - Block: REPL_ID conditional (lines 14-24)
  Code Comments: 10
    - button.tsx: 5 comments
    - badge.tsx: 5 comments
  Gitignore Entries: 1
    - .replit

フェーズ2:プレビュー

プラットフォームごとに、変更内容の詳細なプレビューを表示します。

Will DELETE files:
  - .replit (729 bytes)
  - vite-plugin-meta-images.ts (2333 bytes)
Will DELETE directories:
  - .local/ (6 files, 589KB)
Will MODIFY files:
  - package.json: Remove 3 @replit/* devDependencies
  - vite.config.ts: Remove 4 imports/plugins/blocks
  - 2 UI files: Remove 10 @replit comments
  - .gitignore: Remove ".replit" line

Summary: 2 files deleted, 1 directory deleted, 5 files modified

フェーズ3:確認

Proceed with platform cleanup (Replit)? [Y/n]

選択肢:

  • Y(デフォルト): クリーンアップを実行
  • n: 操作をキャンセル
  • カスタム除外: スキップするファイルをユーザーが指定できます

フェーズ4:実行

プラットフォームルーター

検出されたプラットフォームに基づき、プラットフォーム固有のクリーンアップを実行します。複数のプラットフォームが検出された場合は、順番に実行します。

4.1 Replit のクリーンアップ(主)

ファイル/ディレクトリの削除:

rm -f .replit replit.nix .replit.nix
rm -f vite-plugin-meta-images.ts
rm -rf .local/ .cache/ .upm/ .breakpoints

package.json の変更: devDependencies から、@replit/ で始まるキーを削除します。

vite.config.ts の変更:

  • @replit/* のインポートを削除
  • plugins 配列から Replit プラグインを削除
  • REPL_ID の条件ブロックを削除

// @replit コメントの削除: **/*.tsx、**/*.ts、**/*.jsx、**/*.js 内の // @replit.*$ を Grep します。

.gitignore の変更: .replit の行を削除します。

4.2 StackBlitz のクリーンアップ
rm -f .stackblitzrc
rm -rf .turbo/  # Only if not used in production
4.3 CodeSandbox のクリーンアップ
rm -f sandbox.config.json
rm -rf .codesandbox/

package.json から "sandbox" フィールドを削除します(存在する場合)。

4.4 Glitch のクリーンアップ
rm -f glitch.json .glitch-assets
rm -rf .glitch/
# .data/ - ASK USER before deleting (may contain important data)

サーバーコードから Glitch の環境変数チェック(PROJECT_DOMAIN、ASSETS_URL)を削除します。


フェーズ5:検証とレポート

Cleanup Complete!

Platforms Cleaned: Replit

Deleted:
  - .replit
  - vite-plugin-meta-images.ts
  - .local/ (6 files)

Modified:
  - package.json (removed 3 dependencies)
  - vite.config.ts (removed 4 imports/plugins)
  - button.tsx (removed 5 comments)
  - badge.tsx (removed 5 comments)
  - .gitignore (removed 1 line)

Next Steps:
  1. Run `npm install` to update package-lock.json
  2. Run `npm run build` to verify build works
  3. Commit: git add . && git commit -m "chore: remove platform artifacts"

エッジケース

ケース対応
プラットフォームのアーティファクトが見つからない「プロジェクトはクリーンです」と報告して終了
複数のプラットフォームが検出された順番にクリーンアップし、個別にレポート
プロジェクトが Webpack(Vite ではない)を使用している代わりに webpack.config.* を検索
package.json がないNPM クリーンアップのフェーズをスキップ
.data/ ディレクトリ(Glitch)削除前にユーザーに確認(データが含まれている可能性があります)

エラー処理

エラー対応
権限が拒否されたエラーをログに記録し、chmod または管理者権限を提案します
ファイルが使用中時間を置いて再試行し、その後ユーザーに警告します
JSON の解析エラーエラーをログに記録し、手動での修正を提案します
ビルド設定の構文エラーエラーをログに記録し、手動での修正を提案します

統合

ln-720-structure-migrator との連携

TRANSFORM モードで条件付きで呼び出されます:

ln-720-structure-migrator:
  Phase 1: Detect project type + platform
  Phase 2: Clean artifacts (ln-724-artifact-cleaner)  # CONDITIONAL
    Condition: Platform detected (Replit/StackBlitz/CodeSandbox/Glitch)
    Skipped if: CREATE mode OR no platform markers
  Phase 3: Restructure frontend (ln-721)
  Phase 4: Generate backend (ln-722)
  Phase 5: Generate seed data (ln-723)
単独での使用
User: Clean my project from platform artifacts
Claude: Invokes ln-724-artifact-cleaner

重要なルール

  • 条件付き呼び出し: プラットフォームのアーティファクトが検出された場合にのみ実行し、CREATE モードではスキップします
  • ユーザーの確認: 削除前に必ず内容をプレビューして確認を求めます
  • データ損失の防止: ユーザーデータが含まれている可能性のあるディレクトリ(.data/)を削除する前に、ユーザーに確認します
  • ビルドの検証: クリーンアップ後に npm run build を実行するよう推奨します
  • 冪等性: クリーンなプロジェクトで再実行すると、「アーティファクトが見つかりません」と報告します

参考資料


完了の定義

  • 少なくとも 1 つのプラットフォームが検出されている(Replit/StackBlitz/CodeSandbox/Glitch)
  • すべてのプラットフォームアーティファクトがスキャンされ、ユーザーにプレビューされている
  • 削除の前にユーザーの確認を受けている
  • プラットフォームのファイル、ディレクトリ、依存関係、ビルド設定、コメントがクリーンアップされている
  • プラットフォームファイルに関する .gitignore の項目が削除されている
  • 削除・変更されたファイル数を含むクリーンアップレポートが生成されている

バージョン: 2.0.0 最終更新日: 2026-02-07

コメント