官方包
npm 的正式包名为failproofai:
为什么我们持有这些别名
供应链攻击中,拼写抢注(typosquatting)是一种常见手段——恶意攻击者注册一个与热门包名仅有一个按键之差的包名,不知情的用户在安装时一旦输错,便会运行攻击者控制的代码,并获得完整的系统访问权限。这正是 Failproof AI 所要防范的威胁。 为消除这一攻击面,我们在 npm 上抢先注册了failproofai 的所有常见拼写错误和格式变体。这些包名均无法被第三方注册。每个别名都是一个轻量代理,安装后会自动委托给真正的 failproofai 包。
已注册的别名
格式变体 —— “failproof ai” 的不同写法:| 包名 | 状态 |
|---|---|
failproof | ✅ 已发布 |
failproof-ai | ⏳ 等待 npm 审核 |
fail-proof-ai | ⏳ 等待 npm 审核 |
failproof_ai | ⏳ 等待 npm 审核 |
fail_proof_ai | ⏳ 等待 npm 审核 |
fail-proofai | ⏳ 等待 npm 审核 |
failprof* 拼写错误 —— “proof” 中缺少一个 o:
| 包名 | 状态 |
|---|---|
failprof | ✅ 已发布 |
failprof-ai | ✅ 已发布 |
failprofai | ⏳ 等待 npm 审核 |
fail-prof-ai | ⏳ 等待 npm 审核 |
failprof_ai | ⏳ 等待 npm 审核 |
faliproof* 拼写错误 —— a 和 i 互换位置:
| 包名 | 状态 |
|---|---|
faliproof | ✅ 已发布 |
faliproof-ai | ✅ 已发布 |
faliproofai | ⏳ 等待 npm 审核 |
为什么显示”等待审核”? npm 的防滥用政策会拦截那些在去除标点符号并经过相似度检测后与已有包名规范化为同一字符串的新包名。我们已联系 npm 支持团队,申请以防抢注为由保留这些名称,获批后将正式激活。您可以通过以下命令验证任意已发布的别名均归我们所有:
别名的工作原理
每个别名包的工作方式如下:- 将
failproofai列为依赖项——安装时会运行真正的包(包括其postinstall钩子配置) - 暴露一个与自身同名的可执行文件(例如
failprof-ai),将所有参数代理转发给failproofai二进制文件
failproofai 本身行为之外的任何数据。

