pnpm
2
总安装量
2
周安装量
#75273
全站排名
安装命令
npx skills add https://github.com/g1joshi/agent-skills --skill pnpm
Agent 安装分布
trae
2
gemini-cli
2
antigravity
2
claude-code
2
codex
2
Skill 文档
pnpm
pnpm is fast and disk-efficient. It uses a Content Addressable Store and hard links to avoid duplicating packages. v9 (2025) adds Catalogs.
When to Use
- Disk Space: Saves GBs by storing one copy of
lodashglobally. - Speed: Installation is instant if packages are already in the store.
- Monorepos: Excellent workspace support with strict isolation.
Quick Start
# Enable via Corepack
corepack enable
corepack prepare pnpm@latest --activate
pnpm add next
Core Concepts
Content Addressable Store
~/.local/share/pnpm/store. All packages live here. Projects assume node_modules structure via symlinks.
Strict Resolution
Unlike npm/yarn (classic), pnpm does not flatten node_modules. You cannot access dependency-of-dependency unless you declare it.
Catalogs (v9)
Define version groups in pnpm-workspace.yaml. e.g. catalog:react-18 ensures all packages use exact same versions.
Best Practices (2025)
Do:
- Use CI Caching: pnpm is fast, but setup
pnpm-storecaching in GitHub Actions to make it instant. - Use
pnpm -r: Run commands recursively across the monorepo. - Use
only-allow: Addpreinstallscript to force team to use pnpm.
Don’t:
- Don’t shame hoist: If legacy tools break with symlinks, use
shamefully-hoist=truein.npmrcas a temporary fix.