安装一个 JavaScript 软件包,有点像收下快递时,箱子刚拆开,里面的机器就自动启动。方便,但第三方代码也可能趁机运行恶意命令。由部分 npm 原核心成员推动的 vlt 发布 1.0,试图把这道风险关口往前挪,同时可直接替代 npm。
据 InfoQ 报道,vlt 把安装拆成两步:vlt install 只下载和解压依赖,不运行生命周期脚本——也就是软件包在安装时自动执行的命令;开发者确认后,再用 vlt build 运行获准脚本,并跳过已知恶意内容。其托管仓库还会在返回软件包前拦截已知恶意包。
另一个亮点是 vlt query:它能查询依赖图,也就是项目直接、间接使用了哪些软件包。vlt 提供 60 多种选择器,其中约一半面向安全审计,还能跨本机项目追踪问题依赖。迁移可沿用兼容 npm 的仓库 API,但原始安装速度仍由 pnpm 和 Bun 领先;vlt 所称仓库比 npm 快至 38%,并不等于整体最快。