SuperAPI AI 工具集

clanker

编程与开发

查看项目

更新于 10-15 08:33

技能介绍

用途

Clanker 是一个代币部署协议,它可以创建带有 Uniswap V4 流动性池的 ERC20 代币,并在单笔交易中完成。SDK 提供 TypeScript 接口,用于部署代币,并支持归属(vesting)、空投(airdrops)以及可自定义的奖励分配等高级功能。适用于用户想要部署新代币、创建 memecoin 或进行类似代币发行操作的场景。

安装与环境准备

安装命令: npm install clanker-sdk viem 或 yarn add clanker-sdk viem 或 pnpm add clanker-sdk viem

环境配置:创建 .env 文件并写入私钥: PRIVATE_KEY=0x...your_private_key_here

基本代币部署

通过创建 Clanker 实例并调用 deploy 方法完成部署。示例代码中依次创建了 publicClient 与 wallet(使用 viem 的 createPublicClient、createWalletClient、http、privateKeyToAccount、base 链),随后调用 clanker.deploy,传入 name、symbol、image(IPFS)、tokenAdmin、metadata.description、context.interface 以及 vanity: true 等参数。若返回 error 则抛出,否则等待交易并打印部署后的代币地址。

主要能力

  1. 代币部署:支持完整定制,包括元数据、社交链接和池配置。基本部署包含代币名称、符号、图片(IPFS)、描述与社交媒体链接、靓号(vanity)地址生成以及自定义池配置。

  2. 金库(代币归属):可锁定一定比例的代币并设置锁定期与归属期,例如 vault 中 percentage(代币供应量百分比)、lockupDuration(悬崖期,秒)、vestingDuration(线性归属期,秒)、recipient。

  3. 空投:使用 Merkle 树证明向多个地址分发代币。通过 clanker-sdk/v4/extensions 的 createAirdrop、registerAirdrop 创建空投,并在部署配置中传入 airdrop(可含 lockupDuration、vestingDuration)。

  4. 奖励配置:配置交易手续费分配,通过 rewards.recipients 数组设置每个接收者的 recipient、admin、bps(费用比例)与 token(接收代币类型)。代币类型选项:'Clanker' 仅接收所部署的代币,'Paired' 仅接收配对代币(如 WETH),'Both' 接收两种代币。资料还给出 Bankr 接口默认手续费配置:BANKR_INTERFACE_ADDRESS 为 0xF60633D02690e2A15A54AB919925F3d038Df163e,其中 8000 bps 给创建者、2000 bps(20%)给 Bankr 接口,均接收配对代币(WETH)。

  5. 开发买入(Dev Buy):在部署时包含初始代币购买,通过 devBuy.ethAmount 与 recipient 设置。

  6. 自定义市值:通过 getTickFromMarketCap 计算初始价格/市值,并配置 pool.positions(tickLower、tickUpper、positionBps)。

  7. 防狙击保护:配置费用衰减,通过 sniperFees.startingFee、endingFee、secondsToDecay 设置。

合约限制与常量

代币供应量固定为 100,000,000,000(1000 亿),18 位小数。扩展最大 BPS 为 9000(90%),即分配给扩展的代币最多占 90%,至少 10% 进入 LP。每次部署最多 10 个扩展。金库最小锁定期 7 天。空投最小锁定期 1 天。最大 LP 费用 10%(普通交易费上限)。最大狙击费 80%(MEV/狙击保护费上限)。狙击费衰减最长为 2 分钟。奖励接收者最多 7 个。LP 仓位最多 7 个。

支持的链

Base(链 ID 8453,原生代币 ETH,完整支持)、Ethereum(链 ID 1,ETH,完整支持)、Arbitrum(链 ID 42161,ETH,完整支持)、Unichain(ETH,完整支持)、Monad(原生代币 MON,仅支持静态费用)。

部署后操作

领取金库代币:通过 clanker.getVaultClaimableAmount 查询可领取数量,若大于 0 则调用 clanker.claimVaultedTokens 领取。

收取交易奖励:通过 clanker.availableRewards 查询可用奖励,再通过 clanker.claimRewards 领取。

更新代币元数据:通过 clanker.updateMetadata 更新描述与社交链接(JSON 字符串)。

更新代币图片:通过 clanker.updateImage 更新图片(IPFS 哈希)。

常见工作流

简单 memecoin 发行:准备代币图片(上传至 IPFS);使用基本配置(名称、符号、图片)部署;启用靓号地址以获得易记的合约地址;分享合约地址。

带空投的社区代币:整理空投接收者名单;使用 createAirdrop() 创建 Merkle 树;带空投扩展部署代币;在 Clanker 服务注册空投;分享领取说明。

带归属的创建者代币:使用金库配置部署;设置锁定期(悬崖期);设置归属期;在归属过程中领取代币。

完整部署配置与最佳实践

资料提供了完整的 tokenConfig 示例,涵盖 chainId、name、symbol、image、tokenAdmin、metadata、context、vault、devBuy、rewards、pool(含 pairedToken 为 WETH 0x4200000000000000000000000000000000000006、positions: 'Standard')、fees: 'StaticBasic'、vanity、sniperFees 等字段。

安全建议:永远不要暴露私钥,使用环境变量;先在测试网测试,主网上线前验证配置;执行前使用 *Simulate 方法模拟交易;核对所有接收者地址。

代币设计建议:选择有意义的名称,使用高质量图片(IPFS),合理配置归属期以匹配项目时间线。

Gas 优化:使用 Base 或 Arbitrum 以降低费用;尽量批量操作;监控 Gas 价格,在低峰期部署。

故障排查:常见问题包括缺少 PRIVATE_KEY(需设置环境变量)、余额不足(需为钱包充值原生代币)、交易回滚(检查参数并先模拟)、无效图片(确保 IPFS 哈希可访问)。调试步骤包括检查钱包余额、验证链配置、使用模拟方法、在区块浏览器查看交易、检查错误信息详情。

相关资源

GitHub: github.com/clanker-devco/clanker-sdk NPM: npmjs.com/package/clanker-sdk 示例: github.com/clanker-devco/clanker-sdk/tree/main/examples/v4

资料提示:始终使用 vanity: true 选项以获得易记的合约地址;永远不要提交私钥,使用 .env 文件并加入 .gitignore;建议从简单部署示例开始,再按需添加归属和奖励等功能。