SuperAPI AI 工具集

node-supply-chain

通用与其它

查看项目

更新于 10-16 09:49

技能介绍

用途:为 Node/npm 项目加固供应链,修复常见错误——在 CI 中直接使用 npm install、对机器人 PR 一概自动合并、把冷却期当作完整防护、以及把 npm 专属脚本策略套用到 pnpm/yarn 仓库。

主要能力:基线审计脚本可检查锁文件状态、CI 安装命令、Dependabot 配置(冷却/分组)、未固定版本的第三方 actions、以及按仓库实际包管理器判断的安装脚本策略,命令为:python3 "${CLAUDE_SKILL_DIR}/scripts/audit_supply_chain.py"。锁文件规范要求提交锁文件,CI 使用 npm ci、pnpm install --frozen-lockfile 或 yarn immutable,不得裸装。Dependabot 配置覆盖 npm 与 github-actions 生态、每周、分组并设置明确冷却期,同时须说明三个真实限制:安全 PR 按设计绕过冷却、npm 传递依赖未被覆盖、SHA 固定的 actions 不会告警。禁止对机器人 PR 一概自动合并,应与人类 PR 同等级审查。安装脚本策略按包管理器区分:npm >= 12 用 allowScripts 白名单、npm 11 用 ignore-scripts、pnpm 用 allowBuilds、yarn 用 enableScripts,只允许真正需要构建脚本的包。来源验证使用 npm audit signatures,仅作为来源证明而非安全证明。令牌卫生要求不用经典令牌,对 OIDC 无法覆盖的场景使用短生命周期细粒度令牌。Actions 固定要求第三方 actions 以 SHA 固定并附版本注释,可用 node-ci 的检查器或 zizmor 做 lint。事件响应流程:从锁文件确定暴露范围(确切解析版本与安装窗口),覆盖或固定到已知良好版本,记录窗口后重新加固。

限制:本技能不处理 GitHub 仓库设置(规则集、密钥扫描、PVR),这些属于外部工具;发布带来源验证的包属于 node-release;修复自身代码 CVE 属普通开发工作。npm/pnpm/yarn 脚本策略机制不同,只适用于相应包管理器。冷却期只是赌他人在窗口内先发现恶意软件,需分层使用。overrides/resolutions 可快速缓解但会静默腐化,应加日期戳并在上游修复后移除。npm CLI 行为(脚本默认值、audit signatures)需按 npm 官方文档在使用时核对版本。