用途:在安装、写入依赖清单或向用户推荐软件包之前,先确认该包名真实存在于对应注册表,防止模型幻觉出的包名被安装。资料指出,代码生成模型推荐不存在包名的比例在商业模型约 5.2%、开源模型约 21.7%(576,000 样本,Spracklen 等 2024,arXiv 2406.10279),且 58% 的幻觉名会在重复运行中复现,攻击者可据此注册空名并投放恶意软件,即 slopsquatting。
主要能力:核验两类信号。一是不存在:名称不在注册表中,视为疑似幻觉,不应安装,应查找正确名称或确认是否已改名、移除。二是仿冒:名称与流行包仅差一到两个编辑距离(如 reqeusts 与 requests),可能是拼写错误或刻意冒充,需确认目标名称。注册表可达且名称存在即通过;注册表不可达时报告为未验证,不阻断,网络错误不按失败关闭。
使用方式:适用于 pip install、uv add、npm install、pnpm add、yarn add、cargo add、poetry add、pdm add,以及写入 pyproject.toml、requirements.txt、package.json、Cargo.toml 或在文字中推荐包时。流程为:提取命令或清单中确切的包名(去掉版本与参数);逐个在注册表确认存在;对接近流行包的名称复述并确认;若安装进入 PR,按 imbue:proof-of-work 记录注册表 URL 与 HTTP 状态作为证据。guard_package_hallucination.py 钩子会在每次 Bash 安装命令上自动执行该检查,默认影子模式(仅警告),设 VOW_SHADOW_MODE=0 可阻断仿冒与不存在安装,设 IMBUE_PKG_REGISTRY_CHECK=0 可关闭网络查询、仅用离线仿冒信号。
适用场景与限制:不适用于已确认存在包的版本升级(用 sanctum:version-updates)或依赖供应链审计(用 leyline:supply-chain-advisory)。GitHub 依赖方、星标、提交活跃度、下载量等仅作置信度参考,不阻断;新包、小众包、内部包、私有包天然低使用量,不应因此拒绝。注册表存在性是唯一通过/失败判据。