updating-npm-package について
npm依存パッケージの更新向けスキルです。バージョン確認、変更内容の評価、移行、プロジェクトの検証手順を示し、JavaScriptプロジェクトの依存関係を保守する開発者を対象とします。
主な機能
- 01インストール済みと最新の版を確認
- 02パッチ、マイナー、メジャー更新の分類
- 03メジャー更新の破壊的変更を調査
- 04ビルド、テスト、型チェックの実行
- 05移行レポートの作成
活用シーン
- 01npm依存パッケージを最新版へ更新
- 02メジャー更新のコードへの影響を評価
- 03monorepo全体で依存更新を調整
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ spencerpauly/ awesome-cursor-skills --skill updating-npm-packageインストール後、Claude Code で/updating-npm-packageを入力して読み込まれたか確認します。
詳細
npm パッケージの更新
ユーザーから特定の npm 依存関係の更新、アップグレード、またはバージョン引き上げを依頼された場合に、このスキルを使用します。
手順
-
現在のバージョンを確認する —
package.jsonを読み、インストールされているバージョンを確認します。npm ls <package-name> -
npm で最新バージョンを調べる — パッケージ情報を取得します。
npm view <package-name> versions --json npm view <package-name> dist-tags --jsonこれにより、
latestタグと公開済みのすべてのバージョンを確認できます。 -
更新の種類を判断する — 現在のバージョンと最新バージョンを比較します。
- パッチ(1.2.3 → 1.2.4):バグ修正のみ
- マイナー(1.2.3 → 1.3.0):後方互換性のある新機能
- メジャー(1.2.3 → 2.0.0):破壊的変更
-
パッチまたはマイナー更新の場合 — そのまま更新します。
npm install <package-name>@latestビルドとテストを実行し、問題がないことを確認します。
npm run build && npm testすべて成功したら、コミットして変更内容を報告します。
-
メジャー更新の場合 — まず徹底的に調査します。
a. 変更履歴とリリースノートを取得する — パッケージの GitHub リポジトリで
CHANGELOG.md、MIGRATION.md、またはリリースノートを確認します。Web で公式のアップグレードガイドを探します。Search: "<package-name> v<major> migration guide" OR "<package-name> v<major> upgrade guide"b. 破壊的変更を読む — 現在のバージョンと更新先のバージョンの間にある破壊的変更をすべて特定します。よく確認すべき項目は次のとおりです。
- 削除または名前が変更された API
- 関数のシグネチャまたは戻り値の型の変更
- Node.js のサポートバージョンの終了
- 新たなピア依存関係の要件
- デフォルト動作の変更
- 設定ファイル形式の変更
c. コードベースへの影響を調べる — パッケージの使用箇所をすべて検索します。
# Find all imports grep -r "from ['\"]<package-name>" src/ grep -r "require(['\"]<package-name>" src/各使用箇所について、破壊的変更の影響を受けるか確認します。
d. 更新を適用する:
npm install <package-name>@lateste. 破壊的変更を修正する — 移行ガイドに基づき、影響を受ける使用箇所をそれぞれ更新します。ファイルごとに変更を適用します。
f. 検証する — テストスイート全体を実行します。
npm run lint && npx tsc --noEmit && npm test && npm run buildg. 移行レポートを作成する — 次の内容をまとめます。
## Package Update: <package-name> v<old> → v<new> (Major) ### Breaking Changes Applied - `oldFunction()` renamed to `newFunction()` — updated in 3 files - Config format changed from `.js` to `.config.ts` — migrated - Dropped support for Node 16 — verified we're on Node 20 ### Files Modified - src/lib/client.ts — updated import and function call - src/config/settings.ts — migrated config format - package.json — bumped version ### Validation - ✅ Lint passes - ✅ TypeScript compiles - ✅ All 47 tests pass - ✅ Build succeeds
注意事項
- 更新前に必ずピア依存関係との互換性を確認してください。不一致がある場合、
npm installが警告を表示します。 - モノレポでは、そのパッケージが複数のワークスペースで使われていないか確認し、該当するすべてのワークスペースをまとめて更新してください。
- パッケージに codemod ツール(例:
npx @next/codemod)がある場合は、手作業で移行せずに使用してください。 - ロックファイル(
package-lock.json)の変更は想定されるものです。更新とともにコミットしてください。