关于 pnpm
面向编码 Agent 的 pnpm 技能,适用于 pnpm 10.x 项目。内容涵盖命令、配置、工作区和包存储,并介绍 CI 中使用冻结锁文件等实践。
主要功能
- 01安装与工作区命令指引
- 02配置与项目设置
- 03管理单体仓库工作区
- 04内容寻址式包存储
- 05目录、覆盖、补丁与钩子
- 06CI 与迁移实践
适用场景
- 01安装或管理项目依赖
- 02配置 pnpm 单体仓库
- 03为 CI 准备 pnpm 工作流
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sanity-io/ next-sanity --skill pnpm安装后在 Claude Code 中输入/pnpm确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
GENERATION.mdreferences/best-practices-ci.mdbest-practices-migration.mdbest-practices-performance.mdcore-cli.mdcore-config.mdcore-store.mdcore-workspaces.mdfeatures-aliases.mdfeatures-catalogs.mdfeatures-hooks.mdfeatures-overrides.mdfeatures-patches.mdfeatures-peer-deps.md详细介绍
pnpm 是一款快速且节省磁盘空间的包管理器。它使用内容寻址存储,在一台机器上的所有项目间去重包,从而显著节省磁盘空间。pnpm 默认强制执行严格的依赖解析,防止出现幽灵依赖。对于 pnpm 专属设置,建议优先将配置放在 pnpm-workspace.yaml 中。
重要提示: 使用 pnpm 项目时,Agent 应检查 pnpm-workspace.yaml 和 .npmrc 文件,以了解工作区结构和配置。在 CI 环境中,始终使用 --frozen-lockfile。
此技能基于 pnpm 10.x,于 2026-01-28 生成。
核心
| 主题 | 描述 | 参考 |
|---|---|---|
| CLI 命令 | 安装、添加、移除、更新、运行、执行、dlx 和工作区命令 | core-cli |
| 配置 | pnpm-workspace.yaml、.npmrc 设置和 package.json 字段 | core-config |
| 工作区 | 支持通过筛选、工作区协议和共享锁文件管理单体仓库 | 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 |
评论
支持 Markdown