pnpm은 빠르고 디스크 공간 효율적인 패키지 매니저입니다. 내용 기반 저장소를 사용하여 시스템의 모든 프로젝트에서 패키지를 중복 제거하고 상당한 디스크 공간을 절약합니다. pnpm은 기본적으로 엄격한 의존성 해결을 적용하여 팬텀 의존성을 방지합니다. pnpm 전용 설정은 pnpm-workspace.yaml에 배치하는 것이 좋습니다.
중요: pnpm 프로젝트를 작업할 때 에이전트는 pnpm-workspace.yaml 및 .npmrc 파일을 확인하여 워크스페이스 구조와 구성을 이해해야 합니다. CI 환경에서는 항상 --frozen-lockfile 플래그를 사용하세요.
이 스킬은 pnpm 10.x를 기반으로 하며, 2026-01-28에 생성되었습니다.
핵심
| 항목 | 설명 | 참조 |
|---|---|---|
| CLI 명령어 | install, add, remove, update, run, exec, dlx 및 워크스페이스 명령어 | core-cli |
| 구성 | pnpm-workspace.yaml, .npmrc 설정 및 package.json 필드 | core-config |
| 워크스페이스 | 필터링, 워크스페이스 프로토콜 및 공유 lockfile을 지원하는 모노레포 | core-workspaces |
| 저장소 | 내용 기반 저장소, 하드 링크 및 디스크 효율성 | core-store |
기능
| 항목 | 설명 | 참조 |
|---|---|---|
| 카탈로그 | 워크스페이스용 중앙 집중식 의존성 버전 관리 | features-catalogs |
| 오버라이드 | 전이적 의존성을 포함한 특정 버전 강제 지정 | features-overrides |
| 패치 | 사용자 정의 수정으로 타사 패키지 변경 | features-patches |
| 별칭 | npm: 프로토콜을 사용하여 사용자 정의 이름으로 패키지 설치 | features-aliases |
| 훅 | .pnpmfile.cjs 훅으로 해결 프로세스 사용자 정의 | features-hooks |
| 피어 의존성 | 자동 설치, 엄격 모드 및 의존성 규칙 | features-peer-deps |
모범 사례
| 항목 | 설명 | 참조 |
|---|---|---|
| CI/CD 설정 | GitHub Actions, GitLab CI, Docker 및 캐싱 전략 | best-practices-ci |
| 마이그레이션 | npm/Yarn에서 마이그레이션, 팬텀 의존성 처리, 모노레포 마이그레이션 | best-practices-migration |
| 성능 | 설치 최적화, 저장소 캐싱, 워크스페이스 병렬화 | best-practices-performance |