pnpm is a fast, disk space efficient package manager. It uses a content-addressable store to deduplicate packages across all projects on a machine, saving significant disk space. pnpm enforces strict dependency resolution by default, preventing phantom dependencies. Configuration should preferably be placed in pnpm-workspace.yaml for pnpm-specific settings.
Important: When working with pnpm projects, agents should check for pnpm-workspace.yaml and .npmrc files to understand workspace structure and configuration. Always use --frozen-lockfile in CI environments.
The skill is based on pnpm 10.x, generated at 2026-01-28.
Core
Topic
Description
Reference
CLI Commands
Install, add, remove, update, run, exec, dlx, and workspace commands
Configuration
pnpm-workspace.yaml, .npmrc settings, and package.json fields
Workspaces
Monorepo support with filtering, workspace protocol, and shared lockfile
Store
Content-addressable storage, hard links, and disk efficiency
Features
Topic
Description
Reference
Catalogs
Centralized dependency version management for workspaces
Overrides
Force specific versions of dependencies including transitive
Patches
Modify third-party packages with custom fixes
Aliases
Install packages under custom names using npm: protocol
Hooks
Customize resolution with .pnpmfile.cjs hooks
Peer Dependencies
Auto-install, strict mode, and dependency rules
Best Practices
Topic
Description
Reference
CI/CD Setup
GitHub Actions, GitLab CI, Docker, and caching strategies
Migration
Migrating from npm/Yarn, handling phantom deps, monorepo migration
Performance
Install optimizations, store caching, workspace parallelization