Agent Skills
返回列表
🔒

NPM 包审计参考

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/npm-package-audit-reference。

技能介绍

解决什么问题

当项目依赖树不断扩张,npm audit 输出的漏洞列表、许可证风险和体积变化常常混杂在一起。安全团队需要区分真实供应链风险与理论告警,合规团队要确认许可证冲突,前端团队还要评估新增包对 bundle 体积的实际影响。该技能通过整合多个上游工具的参考信息,减少跨平台手工核对成本。

核心能力与关键步骤

  • 依赖漏洞扫描:调用 npm audit 获取基础漏洞报告,并参考 npm CLI v10 文档中的命令参数与输出结构,理解 npm 官方对 severity、via 字段的定义。
  • 供应链风险评分:通过 Socket.dev API 查询包的维护者变更、安装脚本行为等维度,辅助判断 npm audit 中 high/critical 告警的实际威胁等级。
  • Bundle 体积评估:使用 Bundlephobia API 检查包的 gzip 体积、依赖数量及 ES module 兼容性,避免在优化性能时引入不可控的体积膨胀。
  • 许可证合规报告:基于 license-checker 生成依赖树中所有许可证的清单,快速识别 GPL、MIT 等协议的共存情况。

适用边界与注意点

  • 该技能提供的是参考信息整合,不会自动修复漏洞或修改 package-lock.json,需配合手动更新依赖或使用 npm audit fix 处理。
  • Socket.dev 和 Bundlephobia 的 API 结果可能因上游数据更新而变化,建议定期重新运行评估而非依赖单次结果。
  • npm audit 的漏洞数据库依赖 npm 官方维护,若使用私有 registry 或镜像源,可能出现告警缺失或误报,需结合内部私有漏洞库交叉验证。
  • 许可证合规报告仅覆盖直接依赖和可解析的传递依赖,对于动态加载或运行时下载的依赖,仍需人工确认许可证条款。

使用场景

  • 维护包含数百个依赖的单体仓库时,使用 npm audit 与 Socket.dev 交叉验证高危漏洞,确定是否需要紧急升级。
  • 前端团队引入新包前,通过 Bundlephobia 查询 gzip 体积与依赖数,评估对首屏加载时间的实际影响。
  • 发布商业产品前,运行 license-checker 生成依赖许可证清单,排查是否存在与专有软件冲突的 GPL 协议。
  • 配置 CI/CD 流水线时,整合 npm audit 的 JSON 输出,将依赖漏洞扫描结果自动关联到 GitHub Issues 跟踪。

适合人员

  • 前端工程师,需要在引入新包前评估漏洞风险与 bundle 体积影响,避免性能回退。
  • 安全工程师,负责监控供应链攻击,需要结合 npm audit 与 Socket.dev 判断漏洞的真实威胁等级。
  • 合规专员,需定期生成依赖许可证报告,确保产品符合公司法务对开源协议的要求。
  • DevOps 工程师,正在搭建 CI/CD 流水线,需要将依赖安全扫描集成到自动化发布流程中。