在 Abstract(ZK Stack L2)上部署智能合约并跨链桥接资产。适用于代理需要在 Abstract 部署合约、桥接 ETH/代币、交易/兑换代币、在 Myriad Markets 进行预测、检查余额、转账或与 Abstract 主网交互。涵盖 zksolc 编译、Hardhat 部署、Relay 跨链、DEX 交易(Kona、Aborean)、Myriad 预测市场以及关键合约地址。
上载摘要, AI代理需要使用摘要( ZK Stack L2) 操作的所有信息是一项面向实际任务的技能,主要用于开始 HereQ快速启动;创建摘要全球钱包( AGW).;
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
AI 智能体在 Abstract(ZK Stack L2)上运行所需的一切。
# 检查您是否已准备好运行 node scripts/quick-start.js check# 或获取完整配置指南 node scripts/quick-start.js
AGW 是一种智能合约钱包,可在 Abstract 上赚取 XP。对智能体至关重要!
⚠️ 关键提示:请先理解三层结构:
私钥 → EOA(签名者)→ AGW(智能合约钱包)
正确的资金注入流程:
1. 为 EOA 注入少量 ETH(用于支付 gas) 2. 创建/部署 AGW(首次交易由 EOA 支付 gas) 3. 向 AGW 注入主余额资金 4. 此后所有操作均通过 AGW 执行
export WALLET_PRIVATE_KEY=0x... node scripts/create-agw.js
您的 EOA 将成为签名者,AGW 是一个独立的智能合约地址。
⚠️ 版本警告:不同版本的 agw-client 可能计算出不同的 AGW 地址!请务必锁定所用版本。详情参见 references/agw.md。
node scripts/check-balances.jsall
export WALLET_PRIVATE_KEY=0x... node scripts/relay-bridge.js --from base --amount 0.01
export WALLET_PRIVATE_KEY=0x... node scripts/deploy-abstract.js ./artifacts/MyContract.json "constructor-arg"
export WALLET_PRIVATE_KEY=0x... node scripts/transfer.js --to 0x... --amount 0.01 # ETH node scripts/transfer.js --to 0x... --amount 100 --token USDC # 代币
export WALLET_PRIVATE_KEY=0x... export DEX_ROUTER=0x... # 设置 DEX 路由器地址 node scripts/swap-tokens.js --from ETH --to USDC --amount 0.01
Abstract 支持多个 DEX。为获得最佳效果,请使用协议专用脚本:
# Kona Finance(V2)—— USDC → ETH export WALLET_PRIVATE_KEY=0x... node scripts/swap-kona.js # Aborean(Velodrome 风格)—— 待路由器上线后可用 node scripts/swap-aborean.js # 通用 Uniswap V2 node scripts/swap-uniswap-v2.js
合约地址与支持的交易池详见 references/dex.md。
在 Myriad Markets 进行交易 —— Abstract 上规模最大的预测市场(超 41.5 万用户,交易额超 1 亿美元)。
# 列出开放中的市场 node scripts/myriad-trade.js list # 获取市场详情 node scripts/myriad-trade.js info# 购买份额(提交预测) export WALLET_PRIVATE_KEY=0x... node scripts/myriad-buy-direct.js # 示例:为市场 765 的“Yes”结果花费 1 美元 USDC.e node scripts/myriad-buy-direct.js 765 0 1
合约地址、ABI 细节及代币信息详见 references/myriad.md。
# 读取 node scripts/call-contract.js --address 0x... --abi ./abi.json --function balanceOf --args 0x1234 # 写入 export WALLET_PRIVATE_KEY=0x... node scripts/call-contract.js --address 0x... --abi ./abi.json --function transfer --args 0x1234,100 --write
# 先部署 SimpleNFT.sol,再执行铸造 export WALLET_PRIVATE_KEY=0x... # 向已有合约铸造 node scripts/mint-nft.js --contract 0x... --image QmIPFShash --to 0xRecipient --name "My NFT"
基础 NFT 合约模板参见 references/SimpleNFT.sol。
# 查询 USDC 余额 node scripts/usdc-ops.js balance# 转移 USDC export WALLET_PRIVATE_KEY=0x... node scripts/usdc-ops.js transfer # 授权支出方 node scripts/usdc-ops.js approve # 查询授权额度 node scripts/usdc-ops.js allowance
# 获取当前 Gas 价格 node scripts/estimate-gas.js # 预估转账成本 node scripts/estimate-gas.js transfer# 预估部署成本 node scripts/estimate-gas.js deploy
# 监听新区块 node scripts/watch-events.js blocks # 监听指定钱包的 ETH 转账(转入/转出) node scripts/watch-events.js transfers# 监听 ERC20 代币转账 node scripts/watch-events.js erc20 # 监听合约事件 node scripts/watch-events.js contract
# 获取水龙头使用说明 node scripts/testnet-setup.js faucet # 查询测试网余额 node scripts/testnet-setup.js check# 验证测试网配置 node scripts/testnet-setup.js verify
| 项目 | 值 |
|---|---|
| Chain ID | 2741 |
| RPC | https://api.mainnet.abs.xyz |
| 区块浏览器 | https://abscan.org |
| 跨链桥 | https://relay.link/bridge/abstract |
| USDC | 0x84A71ccD554Cc1b02749b35d22F684CC8ec987e1 |
| WETH | 0x3439153EB7AF838Ad19d56E1571FBD09333C2809 |
| Kona Router | 0x441E0627Db5173Da098De86b734d136b27925250 |
| Uniswap V2 Router | 0xad1eCa41E6F772bE3cb5A48A6141f9bcc1AF9F7c |
| Myriad PM Contract | 0x3e0F5F8F5Fb043aBFA475C0308417Bf72c463289 |
| Myriad PTS Token | 0x0b07cf011B6e2b7E0803b892d97f751659940F23 |
| Myriad API | https://api-v2.myriadprotocol.com |
| 脚本 | 用途 |
|---|---|
quick-start.js |
从此处开始 —— 配置指南与健康检查 |
create-agw.js |
创建 Abstract 全局钱包(可赚取 XP!) |
check-balances.js |
查询 ETH 和代币余额 |
relay-bridge.js |
从其他链桥接 ETH |
bridge-usdc-relay.js |
通过 Relay API 桥接 USDC |
deploy-abstract.js |
向 Abstract 部署合约(含验证功能!) |
verify-contract.js |
验证合约是否已部署字节码(安全检查) |
transfer.js |
发送 ETH 或代币 |
usdc-ops.js |
USDC 转账、授权与额度查询 |
swap-tokens.js |
通过 DEX 进行通用代币兑换 |
swap-kona.js |
在 Kona Finance(V2)上兑换 ✅ |
swap-aborean.js |
在 Aborean(Velodrome 风格)上兑换 |
swap-uniswap-v2.js |
在 Uniswap V2 上兑换 |
myriad-trade.js |
列出市场、获取市场信息(调用 Myriad API) |
myriad-buy-direct.js |
在 Myriad 上提交预测(链上操作) ✅ |
call-contract.js |
调用任意合约函数 |
mint-nft.js |
向已有合约铸造 NFT |
estimate-gas.js |
交易前预估 Gas 成本 |
watch-events.js |
实时监控链上事件 |
testnet-setup.js |
配置并验证测试网访问权限 |
| 文件 | 内容 |
|---|---|
agw.md |
Abstract 全局钱包指南(XP 获取、激活流程) |
dex.md |
DEX 合约与兑换模式(Kona、Aborean) |
myriad.md |
Myriad 预测市场合约、ABI 与交易说明 |
hardhat.config.js |
适配 Abstract 的可用 Hardhat 配置 |
addresses.md |
关键合约地址汇总 |
troubleshooting.md |
常见错误与解决方案 |
SimpleNFT.sol |
基础 NFT 合约模板 |
Abstract 是基于 zkSync 的链。标准 EVM 部署方式不适用。
// 使用 zksync-ethers(不可使用 viem,亦不可使用标准 ethers)
const { ContractFactory } = require("zksync-ethers");
const factory = new ContractFactory(abi, bytecode, wallet);
const contract = await factory.deploy(args);
// 部署后务必验证字节码
const code = await provider.getCode(address);
if (code === '0x') throw new Error("部署失败!");
// 不要使用 viem 的 deployContract
await walletClient.deployContract({...}); // 返回成功但无实际字节码
// 不要使用标准 ethers 的 ContractFactory
// 不要仅依赖交易成功状态作判断
zksync-ethers 的 ContractFactoryeth_getCode != 0x详细解决方案参见 references/troubleshooting.md。
# 核心依赖 npm install ethers zksync-ethers viem # 合约部署依赖 npm install @matterlabs/hardhat-zksync # AGW(Abstract 全局钱包)依赖 —— 必须锁定版本! # 不同版本会为同一 EOA 计算出不同的 AGW 地址 npm install @abstract-foundation/agw-client@1.10.0
⚠️ agw-client 版本警告:较新版本可能采用不同的工厂合约,导致相同 EOA 计算出不同的 AGW 地址。如需升级版本,请务必在转账前确认 AGW 地址未发生变化!
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章