upgrading-emdash について
EmDash のアップグレード計画用 CLI ツールです。npm のリリースタグを解決し、直接依存パッケージを更新してスキルを再取得し、プロジェクト固有の作業指示書を作成します。アプリコードの編集、データベース移行、デプロイは行いません。
主な機能
- 01npm リリースタグの解決
- 02直接 EmDash 依存パッケージの更新
- 03EmDash スキルの再取得
- 04変更と移行情報を含む作業指示書の作成
- 05dry-run と JSON 出力への対応
活用シーン
- 01アップグレード対象の変更確認
- 02beta や next タグでのアップグレード準備
- 03必要なコードと設定変更の評価
- 04アップグレード前の移行とバックアップ要件の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ emdash-cms/ skills --skill upgrading-emdashインストール後、Claude Code で/upgrading-emdashを入力して読み込まれたか確認します。
詳細
EmDash のアップグレード
upgrade-emdash を使って、選択した npm リリースタグを解決し、すべての直接依存の EmDash パッケージを更新し、EmDash スキルを更新して、プロジェクト固有の作業指示書を作成します。アップデーターはアプリケーションコードの編集、データベースのマイグレーションの適用、デプロイは行いません。
作業指示書を準備する
プロジェクトのルートから実行します。
npx upgrade-emdash@latest --dry-run
npx upgrade-emdash@latest
next や beta など、別の npm dist-tag を指定するには --to <tag> を使います。--to にはバージョンを指定できません。非対話型の環境でアップデーターのプロンプトを承認するには --yes を、機械可読なドライランを実行するには --json を、プロジェクトルートが別の場所にある場合は --cwd <path> を使います。
アップデーターは .emdash/UPGRADE.md に書き込みます。コマンドの完了後、このファイルを読んでください。このファイルには、このプロジェクトの直接依存パッケージが対象とする、作成済みの完全な変更履歴エントリーが記載されています。生成された依存関係の更新エントリーは除外されています。また、インストール後に見つかった正確なコアマイグレーションの差分も記載されています。
アップグレードを完了する
- 既存のプロジェクトと未コミットの変更を確認します。無関係な作業は保持してください。
.emdash/UPGRADE.mdの各リリースエントリーをプロジェクトに照らして評価します。必要なソースコードと設定の変更を適用してください。プロジェクトで影響を受ける部分を使用していない場合、新機能を採用しないでください。- リポジトリで該当するフォーマット、テスト、型チェック、ビルドのコマンドを実行します。
- 作業指示書に記載されたマイグレーションステータスのコマンドを実行し、対象データベースと保留中のマイグレーションを報告します。
- 作業指示書に追加されたコアマイグレーションが記載されている場合、ステータスコマンドで以前のマイグレーションが保留中と報告された場合、またはリリースエントリーでデータを変更するプロジェクトの作業が必要な場合は、アップグレードしたアプリケーションを起動またはデプロイする前に、作業指示書のバックアップ手順に従ってください。
- ユーザーがその操作を明示的に依頼していない限り、データベースへのマイグレーション適用、デプロイ、その他のリモート変更を行う前に確認してください。
- 許可されたマイグレーションとデプロイ作業の後、マイグレーションの確認を実行し、影響を受けるサイトのパスを検証します。
コアマイグレーションは前進のみとしてください。追加または保留中のマイグレーションがないパッケージ更新では、アップグレード専用の復旧ポイントは必要ありません。許可されたデータベース変更の前に、バックアップと復旧の手順で作成した復元可能なデータベースバックアップ、別途取得したメディアバックアップ、関連する暗号化キー、マイグレーションとデプロイで共通のビルド成果物を必須としてください。JSON バックアップは復旧ポイントではありません。マイグレーションの down() 関数を実行したり、マイグレーションの記録を削除したりせず、対応するデータベースとアプリケーション成果物を一緒に復元してロールバックしてください。