mcpField
U
updating-npm-package

updating-npm-package

github.com/spencerpauly開発868404 回インストール13 週間前に更新
リポジトリ

updating-npm-package について

npm依存パッケージの更新向けスキルです。バージョン確認、変更内容の評価、移行、プロジェクトの検証手順を示し、JavaScriptプロジェクトの依存関係を保守する開発者を対象とします。

主な機能

  1. 01インストール済みと最新の版を確認
  2. 02パッチ、マイナー、メジャー更新の分類
  3. 03メジャー更新の破壊的変更を調査
  4. 04ビルド、テスト、型チェックの実行
  5. 05移行レポートの作成

活用シーン

  1. 01npm依存パッケージを最新版へ更新
  2. 02メジャー更新のコードへの影響を評価
  3. 03monorepo全体で依存更新を調整

インストール

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

$npx skills add https://github.com/spencerpauly/awesome-cursor-skills --skill updating-npm-package

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

詳細

npm パッケージの更新

ユーザーから特定の npm 依存関係の更新、アップグレード、またはバージョン引き上げを依頼された場合に、このスキルを使用します。

手順

  1. 現在のバージョンを確認する — package.json を読み、インストールされているバージョンを確認します。

    npm ls <package-name>
    
  2. npm で最新バージョンを調べる — パッケージ情報を取得します。

    npm view <package-name> versions --json
    npm view <package-name> dist-tags --json
    

    これにより、latest タグと公開済みのすべてのバージョンを確認できます。

  3. 更新の種類を判断する — 現在のバージョンと最新バージョンを比較します。

    • パッチ(1.2.3 → 1.2.4):バグ修正のみ
    • マイナー(1.2.3 → 1.3.0):後方互換性のある新機能
    • メジャー(1.2.3 → 2.0.0):破壊的変更
  4. パッチまたはマイナー更新の場合 — そのまま更新します。

    npm install <package-name>@latest
    

    ビルドとテストを実行し、問題がないことを確認します。

    npm run build && npm test
    

    すべて成功したら、コミットして変更内容を報告します。

  5. メジャー更新の場合 — まず徹底的に調査します。

    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>@latest
    

    e. 破壊的変更を修正する — 移行ガイドに基づき、影響を受ける使用箇所をそれぞれ更新します。ファイルごとに変更を適用します。

    f. 検証する — テストスイート全体を実行します。

    npm run lint && npx tsc --noEmit && npm test && npm run build
    

    g. 移行レポートを作成する — 次の内容をまとめます。

    ## 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)の変更は想定されるものです。更新とともにコミットしてください。

コメント