可用守卫

机器人税守卫

Last updated March 10, 2026

Bot Tax 守卫对无效的铸造交易收取可配置的 SOL 罚款,以阻止机器人和针对 Core Candy Machine 的垃圾邮件尝试。

一些钱包(如 Solflare、Phantom 和可能的其他钱包)目前会自动向交易注入 Lighthouse 指令。当 lastInstruction 设置为 true 时,这会导致 Bot Tax 守卫被触发。

由于钱包选择取决于用户,您无法阻止某人使用 Solflare 或类似钱包进行铸造。如果您预期用户会使用这些钱包铸造,请考虑将 lastInstruction 设置为 false 以避免误报。

请谨慎使用 Bot Tax 守卫。

概述

Bot Tax 守卫对无效交易收取惩罚费用,以阻止机器人尝试铸造 NFT。这个金额通常很小,足以伤害机器人而不影响真实用户的真正错误。所有机器人税将转移到 Candy Machine 账户,这样一旦铸造结束,您可以通过删除 Candy Machine 账户来访问这些资金。

这个守卫有点特殊,会影响所有其他守卫的铸造行为。当 Bot Tax 被激活且任何其他守卫未能验证铸造时,交易将假装成功。这意味着程序不会返回任何错误,但也不会铸造任何 NFT。这是因为交易必须成功才能将资金从机器人转移到 Candy Machine 账户。

此外,Bot Tax 守卫使我们能够确保铸造指令是交易的最后一条指令。这可以防止机器人在铸造后添加恶意指令,并返回错误以避免支付税款。

守卫设置

Bot Tax 守卫包含以下设置:

  • Lamports:对无效交易收取的 SOL(或 lamports)金额。我们建议设置一个相当小的金额,以避免影响犯了真正错误的真实用户。客户端验证也可以帮助减少对真实用户的影响。
  • Last Instruction:当铸造指令不是交易的最后一条指令时,是否应该禁止铸造并收取机器人税。我们建议将此设置为 true 以更好地防范机器人。

使用 Bot Tax 守卫设置 Candy Machine

create(umi, {
// ...
guards: {
botTax: some({
lamports: sol(0.01),
lastInstruction: true,
}),
},
});

API 参考:createBotTax

铸造设置

Bot Tax 守卫不需要铸造设置。

Route 指令

Bot Tax 守卫不支持 route 指令。

注意事项

  • 当 Bot Tax 守卫处于活动状态且另一个守卫拒绝铸造时,交易在链上仍然显示为成功但不会铸造 NFT。这是设计使然,以便可以收取罚款。
  • 收取的机器人税资金累积在 Candy Machine 账户中,可以在铸造结束后通过删除 Candy Machine 来回收。
  • lastInstruction 设置为 true 可能会导致自动向交易注入额外指令的钱包(如 Solflare 和 Phantom)出现误报。在生产环境中启用此选项之前请彻底测试。
  • 将罚款金额保持在较小水平(例如 0.01 SOL),以避免惩罚遇到验证错误的合法用户。