mcpField
V
vite-plus

vite-plus

github.com/uinafDevelopment0373 installsUpdated 1w ago
Repository

About vite-plus

A Vite+ skill documenting migration, checks, workspace task behavior, and runtime or CI constraints that are easy to miss in upstream documentation. It is for teams maintaining Vite+ projects and provides version-specific operational guidance.

Key features

  1. 01Migration steps and review items
  2. 02Vite+ check and task guidance
  3. 03Workspace command behavior notes
  4. 04Node and Git version constraints
  5. 05CI cache and release cautions

Use cases

  1. 01Plan a Vite+ version migration
  2. 02Configure type checking and lint commands
  3. 03Run tasks across workspace packages
  4. 04Review runtime and CI requirements

Install

Copy the command and run it in a terminal.

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

After installing, type/vite-plusin Claude Code to confirm it loaded.

Bundled filesagents/openai.yaml

Details

From the project README

Vite+

Rules the upstream docs leave implicit.

Migrate

  • Run the target migrator before any pnpm update or pnpm add, with the original lockfile installed: it detects the source Vitest version from it. Projects below Vitest 4 go to a 0.x release first.
  • Convert tsup with pnpm --package=vite-plus@<exact> dlx vp migrate --full; plain vp migrate skips it. On 1.0.0-rc.0 it leaves an intermediate tsdown.config.ts, a direct tsdown dependency, and a tsdown script. Move the settings into the pack block of vite.config.ts, switch the script to vp pack, drop tsdown, delete the intermediate config, and prove output parity for ESM, CJS, .d.ts, and .d.cts.
  • The 1.0 migrator exits 0 with REVIEW items outstanding; resolve all of them before committing. BLOCK stops dependency updates: fix and rerun. Save the review report before reinstalling.
  • Restore vite: catalog: where vp up wrote a literal alias (fixed in 0.3.0), and point the catalog entry at npm:@voidzero-dev/vite-plus-core@<target>.
  • Under pnpm 12, unknown keys in pnpm-workspace.yaml fail the install. Move them to a non-pnpm owner instead of relaxing validation or downgrading pnpm.

Checks and tasks

  • Set lint.options.typeCheck: true so vp check reports type errors. Drop a separate tsc --noEmit only after one run shows identical diagnostics. A framework checker such as vue-tsc stays as the only standalone type check, on TypeScript 6 until the TypeScript 7.1 API ships.
  • 1.0 no longer ships the oxlint and oxfmt binaries. Point editors and scripts at vp lint --lsp, vp fmt --lsp, and vp fmt --stdin-filepath.
  • From Vitest 5, vp test no longer searches parent directories for a config; package-level runs need --config <root>/vite.config.ts --dir ..
  • From 0.3.0, bare app commands at the workspace root prefer defaultPackage or the root config, so a green root run does not prove workspace coverage. Use vp run -r <task>.
  • Built-ins don't dispatch same-named package scripts; use vp run <script> or vpr <script>.

Runtimes and CI

  • 1.0.0-rc.0 requires Node ^22.18.0 || ^24.11.0 || >=26.0.0. The migrator bumps version files, not CI images, containers, or published engines.node. To keep Node 20 in the public contract, constrain contributors with devEngines.runtime.
  • vp staged on 1.0 needs Node ^22.22.1 || ^24.11.0 || >=26.0.0 and Git 2.32+ wherever the hook runs; the migrator's .nvmrc of 22.18.0 is too low.
  • Projects tested with @cloudflare/vitest-pool-workers 0.22.0 stay on their 0.x Vite+ pin until workers-sdk#15618 ships: every Worker test file fails to start on 1.0.0-rc.0.
  • In secret-bearing release, publish, or deploy jobs keep dependency caches off (setup-vp cache defaults to false; don't carry over cache: pnpm), install fresh, and verify the exact payload before credentials are used.
  • vp implode deletes managed runtimes and global state, so align CI paths some other way. The toolchain container is for build tooling, not a production runtime.
  • Keep package-script caching off in Vite+ task graphs unless every script is pure; a global run.cache: true also caches deploy, publish, and migration scripts. Put runtime and toolchain pins in every cached task's inputs, not only in CI cache keys.

Comments

Markdown supported