pnpm
Fast, disk-efficient Node.js package manager with strict dependency resolution and monorepo support.
- Enforces strict dependency resolution by default, preventing phantom dependencies; uses content-addressable storage to deduplicate packages across projects
- Supports monorepo workspaces with filtering, shared lockfiles, and workspace protocol; configuration via
pnpm-workspace.yaml - Includes advanced dependency management: catalogs for centralized version control, overrides to force specific versions, and patches to modify third-party packages
- Provides peer dependency auto-install, custom resolution hooks via
.pnpmfile.cjs, and package aliases using the npm: protocol - Use
--frozen-lockfilein CI environments; checkpnpm-workspace.yamland.npmrcfiles to understand project configuration
pnpm is a fast, disk space efficient package manager. It uses a content-addressable store to deduplicate packages across all projects on a machine, and enforces strict dependency resolution by default, preventing phantom dependencies.
Configuration model (important): pnpm settings now live in pnpm-workspace.yaml (and the global config.yaml) using camelCase keys. .npmrc is used only for authentication/registry credentials, and the pnpm field of package.json is no longer read. When working in a pnpm project, check pnpm-workspace.yaml for settings/workspace structure and .npmrc only for auth. Always use --frozen-lockfile (or pnpm ci) in CI.
The skill is based on pnpm 10.x, generated at 2026-06-22. It also covers v11 behavior changes (config split, isolated global packages,
allowBuilds,pmOnFail, global virtual store) where current docs describe them.
Core
| Topic | Description | Reference |
|---|---|---|
| CLI Commands | install/add/remove/update, run, dlx/pnx, workspace, runtime, publishing (version, view, sbom, stage) | core-cli |
| Configuration | pnpm-workspace.yaml settings (camelCase), global config.yaml, packageConfigs, .npmrc auth | core-config |
| Workspaces | Monorepo support: filtering, workspace protocol, shared lockfile, packageConfigs | core-workspaces |
| Store | Content-addressable store, virtual store, node linker modes, frozen/read-only store | core-store |