jup documentation

jup reads the package manager declared in package.json, downloads and verifies that release, and runs it. It supports npm, pnpm, and Yarn.

{
  "packageManager": "pnpm@11.1.2+sha512.abc123..."
}

When pnpm install runs through a jup shim, it uses the pinned release rather than an unrelated global installation. The same pin can be used on developer machines, in CI, and in containers.

Note

jup is not published to npm yet. Follow the source installation steps in Getting started.

#Start here

#Deployment guides

  • CI and offline use — warm the cache, build container layers, freeze range resolutions, and move package managers to isolated machines.
  • Registries and networking — configure private registries, authentication, .npmrc, proxies, TLS, timeouts, and retries.
  • Download verification — understand digests, registry signatures, signing keys, trust boundaries, and Yarn Berry downloads.

#Reference

#Migration and support

  • Migrating from Corepack — reuse existing project configuration and understand behavior that differs from Corepack.
  • Troubleshooting — diagnose shim, cache, registry, TLS, and verification failures.

Tip

If jup selects an unexpected manifest or version, run jup info. It reports the project pin, registry, cache entry, and active shims without contacting the network.

jup  Run the package manager your project pinned.