返回顶部
b

broadcast-sign-transfer广播签名转账

支持 EVM 多链的原生代币和 ERC20 转账,自动构造交易、本地签名并通过 OKX API 广播上链

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.1
安全检测
已通过
368
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

broadcast-sign-transfer

广播签名转账技能

什么是这个技能?

这个技能实现了完整的EVM链转账流程:

用户输入(私钥/地址/金额)

构造交易(自动获取nonce、gas)

本地签名(私钥不离开本机)

通过OKX API广播到链上

返回tx_hash和区块浏览器链接

支持两种转账类型:

  • - 原生代币转账:ETH、BNB、MATIC等
  • ERC20 Token转账:USDT、USDC等任意ERC20



什么时候该用这个技能?

满足以下条件时使用:

  1. 1. 用户想发起一笔链上转账
  2. 用户提供了接收方地址和转账金额
  3. 私钥已通过环境变量配置好

不适用的情况:

  • - 用户想做Swap(代币兑换)→ 使用Swap技能
  • 用户只想查询余额或交易状态 → 使用查询工具
  • 用户没有配置私钥环境变量 → 先引导配置环境变量



执行流程(逐步说明)

步骤1: 检查输入参数
├── chain_index是否在支持列表?
├── to_address是否以0x开头?
└── amount是否大于0?

步骤2: 获取链上数据
├── 获取当前nonce
└── 获取当前gas price(Legacy或EIP-1559)

步骤3: 构造交易
├── 原生代币:直接构造tx,gas固定21000
└── ERC20:调用transfer(),动态估算gas × 1.2安全系数

步骤4: 本地签名
└── 使用私钥对交易签名,私钥不离开本机

步骤5: 广播到链上
└── 调用OKX Broadcast API发送签名交易

步骤6: 返回结果
├── 成功 → 返回txhash和explorerurl
└── 失败 → 返回具体错误原因



输入参数

chain_index(必填)

  • - 类型:字符串string
  • 说明:区块链链ID
  • 当前支持

| chain_index | 链名 | Gas类型 | 支持MEV |
|-------------|------|---------|---------|
| 56 | BSC | Legacy | ✅ |

  • - 示例:56
  • 注意:必须是字符串,56 ❌ 56 ✅

to_address(必填)

  • - 类型:字符串string
  • 说明:接收方钱包地址
  • 格式:0x开头,42位十六进制字符
  • 示例:0xaF3e6407073b2793271dA3d45A393397517ee3d9

amount(必填)

  • - 类型:浮点数float
  • 说明:转账金额,人类可读单位
  • 示例:0.01(表示0.01 BNB),100.0(表示100 USDT)
  • 注意:脚本内部自动转换为链上精度(wei / raw units)

token_address(ERC20转账时必填)

  • - 类型:字符串string
  • 说明:ERC20 Token的合约地址
  • 格式:0x开头
  • 示例:0x55d398326f99059fF775485246999027B3197955(BSC上的USDT)

enablemevprotection(选填)

  • - 类型:布尔值boolean
  • 默认值:false
  • 说明:是否开启MEV保护,防止三明治攻击
  • 注意:仅支持MEV的链才能开启,否则报错

输出结果

成功时

字段类型说明
orderidstringOKX平台订单ID
txhash
string | 链上交易哈希 | | explorer_url | string | 区块浏览器链接 |

成功输出示例:

✅ BSC广播成功
Order ID: 1234567890
Tx Hash: 0xabc123...
浏览器: https://bscscan.com/tx/0xabc123...

失败时

返回具体错误原因,见下方错误处理章节。



环境变量(必须配置)


变量名说明
WALLETPRIVATEKEY钱包私钥(0x开头)
OKXACCESSKEY
OKX Web3 API Key |
| OKXSECRETKEY | OKX Secret Key |
| OKX_PASSPHRASE | OKX Passphrase |

⚠️ 必须使用OKX Web3 API Key,普通交易API Key会返回401错误。

配置方式(写入~/.zshrc永久生效):
bash
export WALLETPRIVATEKEY=0x你的私钥
export OKXACCESSKEY=你的Key
export OKXSECRETKEY=你的Secret
export OKX_PASSPHRASE=你的Passphrase

bash
source ~/.zshrc



调用示例

代码调用

python
from scripts.broadcastsigntransfer import BroadcastTransaction

bt = BroadcastTransaction(chain_index=56)

原生代币转账

result = bt.transfer_native( to_address=0xRecipient..., amount=0.01, enablemevprotection=False, ) print(result.summary())

ERC20转账

result = bt.transfer_token( token_address=0x55d398326f99059fF775485246999027B3197955, # BSC USDT to_address=0xRecipient..., amount=100.0, enablemevprotection=False, ) print(result.summary())

命令行调用

bash

原生代币转账


python3 scripts/broadcastsigntransfer.py --chain 56 native \
--to 0xRecipient... \
--amount 0.01

ERC20转账

python3 scripts/broadcastsigntransfer.py --chain 56 token \ --token 0x55d398326f99059fF775485246999027B3197955 \ --to 0xRecipient... \ --amount 100

开启MEV保护

python3 scripts/broadcastsigntransfer.py --chain 56 native \ --to 0xRecipient... \ --amount 0.01 \ --mev

Gas处理机制

转账类型Gas处理方式
原生代币固定21000(EVM协议层常量)
ERC20 Token
eth_estimateGas动态估算 × 1.2安全系数 |

Gas价格根据链类型自动切换:

  • - Legacy(BSC):使用gasPrice
  • EIP-1559(ETH/Polygon等):使用maxFeePerGas + maxPriorityFeePerGas



错误处理


错误信息原因解决方法
暂不支持链 {chainindex}链未在支持列表中检查chainindex是否正确
to_address格式错误
地址不以0x开头 | 检查地址格式 |
| amount必须大于0 | 金额为负数或0 | 输入正确金额 |
| 余额不足 | ERC20余额不够 | 检查钱包余额 |
| 链 {chainindex} 不支持MEV保护 | 该链不支持MEV | 关闭enablemev_protection |
| 401 Unauthorized | 使用了普通API Key | 确认使用OKX Web3 API Key |
| 广播失败(code=xxx) | OKX API返回错误 | 检查API凭证和交易数据 |
| 缺少OKX API凭证 | 环境变量未配置 | 配置四个环境变量后重试 |
| 缺少钱包私钥 | WALLETPRIVATEKEY未配置 | 配置私钥环境变量 |


安全注意事项

  • - ⚠️ 私钥通过环境变量传入,不要硬编码在代码里
  • ⚠️ 广播成功不代表交易成功,需通过explorer_url确认链上状态
  • ⚠️ 广播后的交易无法撤销,请在调用前确认地址和金额正确
  • ⚠️ ~/.zshrc是明文存储,确保只有自己能访问该文件

依赖安装

bash
pip3 install requests web3



文件结构

broadcast-sign-transfer/
├── broadcastsigntransfer.md ← 当前文件,AI技能说明书
└── scripts/
└── broadcastsigntransfer.py ← 可执行的Python客户端



当前支持的链

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 broadcast-sign-transfer-1776306564 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 broadcast-sign-transfer-1776306564 技能

通过命令行安装

skillhub install broadcast-sign-transfer-1776306564

下载

⬇ 下载 broadcast-sign-transfer v1.0.1(免费)

文件大小: 9.13 KB | 发布时间: 2026-4-16 18:39

v1.0.1 最新 2026-4-16 18:39
- 移除了 OKX 相关标签,更新对 OKX 依赖的表述
- 文档文字优化,部分字段描述更准确
- skill 适用/不适用场景说明更新
- 其他小幅文档调整和表述优化

Archiver·手机版·闲社网·闲社论坛·智能体自动化市场· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2026 闲社网·AI智能体论坛·AI自动化解决方案·http://xianshe.com

p2p_official_large
返回顶部