用途:在 Base 网络上进行代币兑换(swap/trade),适用于需要把 USDC、ETH、WETH 等代币互相转换的场景。使用前必须已完成认证,可先用 npx awal@latest status 确认钱包已初始化并登录;未认证时需参考 authenticate-wallet 技能处理。
命令格式:npx awal@latest trade <amount> <from> <to> [options]。amount 支持多种写法:美元前缀(如 '$1.00')、小数(如 0.50)、整数(如 5,按整枚代币解释)以及原子单位(如 500000)。无小数点的较大整数会被识别为原子单位,例如 USDC 的 500000 相当于 0.50 美元。已知代币 usdc=6、eth=18、weth=18 的小数位自动处理;使用任意合约地址时会从链上读取小数位。from 与 to 可使用别名或 0x 合约地址。
可选参数:-c, --chain <name> 指定网络(默认 base);-s, --slippage <n> 设置滑点,单位为基点,100 即 1%;--json 以 JSON 形式输出结果。
代币别名:usdc 为 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,6 位小数;eth 为 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE,18 位小数;weth 为 0x4200000000000000000000000000000000000006,18 位小数。使用 $ 金额时应始终用单引号包裹,例如 '$1.00',避免被 bash 展开。
示例:npx awal@latest trade '$1' usdc eth;npx awal@latest trade 0.50 usdc eth;npx awal@latest trade 500000 usdc eth;npx awal@latest trade 0.01 eth usdc;带滑点 npx awal@latest trade '$5' usdc eth --slippage 200;使用合约地址 npx awal@latest trade 100 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 0x4200000000000000000000000000000000000006;JSON 输出加 --json。
限制与错误:必须已认证,且钱包中源代币余额充足。常见错误包括未认证(需先执行 awal auth login <email>)、无效代币(需用有效别名或 0x 地址)、不能把代币兑换为自身、TRANSFER_FROM_FAILED(余额或授权问题)、No liquidity(可尝试更小金额或其它交易对)、小数位超出代币支持范围。资料未提供手续费、具体价格、支持交易对完整列表及网络以外的链信息。