mcpField
V
vite-plus

vite-plus

github.com/uinaf開発0373 回インストール1 週間前に更新
リポジトリ

vite-plus について

上流ドキュメントで見落としやすい、Vite+ の移行、チェック、ワークスペースタスクの挙動、ランタイムや CI の制約をまとめたスキルです。Vite+ プロジェクトの保守チーム向けに、バージョンごとの運用情報を示します。

主な機能

  1. 01移行手順とレビュー項目
  2. 02Vite+ のチェックとタスクの指針
  3. 03ワークスペースコマンドの挙動
  4. 04Node と Git のバージョン制約
  5. 05CI キャッシュとリリースの注意点

活用シーン

  1. 01Vite+ のバージョン移行を計画
  2. 02型チェックと lint コマンドを設定
  3. 03ワークスペース内の複数パッケージでタスク実行
  4. 04ランタイムと CI の要件を確認

インストール

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

$npx skills add https://github.com/uinaf/agent-skills --skill vite-plus

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

同梱ファイルagents/openai.yaml

詳細

Vite+

上流ドキュメントで明示されていないルールです。

移行

  • pnpm update または pnpm add を実行する前に、元のロックファイルをインストールした状態で対象のマイグレーターを実行してください。マイグレーターはロックファイルから移行元の Vitest バージョンを検出します。Vitest 4 未満のプロジェクトは、まず 0.x リリースに移行してください。
  • tsup は pnpm --package=vite-plus@<exact> dlx vp migrate --full で変換してください。通常の vp migrate では変換されません。1.0.0-rc.0 では、中間生成物の tsdown.config.ts、直接依存関係の tsdown、および tsdown スクリプトが残ります。設定を vite.config.ts の pack ブロックに移し、スクリプトを vp pack に切り替え、tsdown を削除して、中間設定ファイルを削除してください。さらに、ESM、CJS、.d.ts、.d.cts の出力が移行前と同等であることを確認してください。
  • 1.0 のマイグレーターは、未対応の REVIEW 項目が残っていても終了コード 0 で終了します。コミットする前に、すべて解決してください。BLOCK がある場合は依存関係の更新が停止します。修正して再実行してください。再インストールする前に、レビュー報告を保存してください。
  • vp up によってリテラルのエイリアスが書き込まれた場合は、vite: catalog: に戻してください(0.3.0 で修正済み)。また、カタログのエントリーが npm:@voidzero-dev/vite-plus-core@<target> を指すようにしてください。
  • pnpm 12 では、pnpm-workspace.yaml の未知のキーがあるとインストールに失敗します。バリデーションを緩めたり pnpm をダウングレードしたりせず、別のツールの管理対象に移してください。

チェックとタスク

  • vp check で型エラーが報告されるように、lint.options.typeCheck: true を設定してください。別途実行している tsc --noEmit は、一度実行して同じ診断結果が得られたことを確認してから削除してください。vue-tsc などのフレームワーク用チェッカーは、TypeScript 7.1 の API がリリースされるまでは、単独で実行する唯一の型チェッカーとして TypeScript 6 上で使用してください。
  • 1.0 では oxlint と oxfmt のバイナリーが同梱されなくなりました。エディターとスクリプトの参照先を vp lint --lsp、vp fmt --lsp、vp fmt --stdin-filepath に変更してください。
  • Vitest 5 以降、vp test は親ディレクトリーの設定を検索しなくなりました。パッケージ単位で実行する場合は --config <root>/vite.config.ts --dir . が必要です。
  • 0.3.0 以降、ワークスペースのルートでアプリコマンドを直接実行すると、defaultPackage またはルート設定が優先されます。そのため、ルートで実行が成功しても、ワークスペース全体が対象になっているとは限りません。vp run -r <task> を使用してください。
  • 組み込みコマンドは、同じ名前のパッケージスクリプトを実行しません。vp run <script> または vpr <script> を使用してください。

ランタイムと CI

  • 1.0.0-rc.0 では Node ^22.18.0 || ^24.11.0 || >=26.0.0 が必要です。マイグレーターが更新するのはバージョンファイルであり、CI イメージ、コンテナー、公開される engines.node ではありません。公開する契約で Node 20 を維持するには、devEngines.runtime でコントリビューターの使用バージョンを制限してください。
  • 1.0 の vp staged を実行する場所では、Node ^22.22.1 || ^24.11.0 || >=26.0.0 と Git 2.32 以降が必要です。マイグレーターが設定する .nvmrc の 22.18.0 では不十分です。
  • @cloudflare/vitest-pool-workers 0.22.0 でテストされているプロジェクトは、次がリリースされるまで、Vite+ の 0.x 系のバージョン指定を維持してください。 workers-sdk#15618 がリリースされるまで、1.0.0-rc.0 ではすべての Worker テストファイルが起動に失敗します。
  • シークレットを扱うリリース、公開、デプロイのジョブでは、依存関係のキャッシュを無効にしてください(setup-vp の cache はデフォルトで false です。cache: pnpm を引き継がないでください)。クリーンな状態でインストールし、認証情報を使う前に、正確なペイロードを検証してください。
  • vp implode は管理対象のランタイムとグローバル状態を削除するため、CI のパスは別の方法で揃えてください。ツールチェーンコンテナーはビルドツール用であり、本番ランタイム用ではありません。
  • すべてのスクリプトが純粋な処理でない限り、Vite+ のタスクグラフではパッケージスクリプトのキャッシュを無効にしてください。グローバルな run.cache: true は、デプロイ、公開、移行のスクリプトもキャッシュします。ランタイムとツールチェーンのバージョン指定は、CI のキャッシュキーだけでなく、キャッシュ対象の各タスクの入力に含めてください。

コメント