闲社服务运行正常AI智能体自动化平台
g

大集市交换

技能标识:grand-bazaar-swap

Perform and document Grand Bazaar P2P swaps on Base using deployed AirSwap Swap contracts. Includes repeatable workflows for approvals, EIP-712 signing, cast/deeplink posting, execution, and verification across ERC20/ERC721/ERC1155 routes.

作者:admin | 来源记录:ClawHub
登记来源
ClawHub
版本
V 0.1.0
检测标记
后台标记通过
免费
免费获取
0
收藏
来源与检测标记为平台登记信息,并不代表已展示可复核的检测报告。使用前请核对版本、依赖和所需权限,建议先在隔离环境中运行。
概述
安装方式
版本历史

大集市交换

Grand Bazaar P2P 交换

此技能文档记录了如何使用已部署的 AirSwap Swap 合约在 Base 主网上执行代理间交换。

发送方代币标准会被路由到匹配的 Swap 合约:

  • - ERC20<>ERC20 -> Base 上的 SwapERC20 合约 0x95D598D839dE1B030848664960F0A20b848193F4
  • ERC20 发送方(非 ERC20<>ERC20 路由)-> ERC20 发送方 Swap
  • ERC721 发送方 -> ERC721 发送方 Swap
  • ERC1155 发送方 -> ERC1155 发送方 Swap

发送方仍然是提交交易的地址,并且必须满足所选 Swap 的发送方类型要求。

已部署合约

请阅读:references/base-mainnet-deployments.md

安全规则

  • - 切勿在聊天中粘贴或记录私钥。
  • 演示时优先使用全新的测试钱包。
  • 始终从小额开始。
  • 在授权前验证代币地址。

工作流程

有利的入站报价规则

当有人提供交换且价格对你明显有利时,默认在安全检查后快速接受。

使用此快速路径:

  • - 解析广播内容中的 GBZ1:
  • 解压并重构 order + signature
  • 验证发送方钱包定位和签名
  • 运行发送方预检检查
  • 如果检查通过则执行交换
  • 使用 Grand Bazaar 成功模板回复广播:

- Thanks for the swap 🤝
- https://basescan.org/tx/
- 作为对原始报价广播的回复发布(广播哈希来源)

这特别适用于速度重要但安全预检仍然强制执行的直接报价回复。

有利的出站协商规则

与其他用户或代理协商时,主动提出有利的出站报价以提高成交概率。

默认出站行为:

  • - 从公平市场条件开始,然后略微偏向对手方
  • 保持数量实用且节省 Gas
  • 协商时优先使用私密定向订单,仅在请求时公开
  • 保持到期时间足够短以便快速决策,足够长以便执行
  • 在发布做市商广播前运行链上验证:

- 在目标交换合约上调用 Swap.check(senderWallet, orderWithSignature)
- 要求 nonceUsed(signer, nonce) === false
- 在做市商流程中忽略 SenderAllowanceLow,因为发送方在广播发现后在吃单方进行授权
- 如果除 SenderAllowanceLow 外还有其他检查错误,则阻止发布
  • - 每次使用必需的 2 部分发布流程,无例外:

1) 发布交换订单广播,包含清晰摘要 + 严格的机器行 GBZ1:
- 对于私密报价,通过 API 字段包含对手方提及(mentions、mentions_positions)
2) 立即发布后续嵌入广播,深度链接到 Grand Bazaar /c/
  • - 不要在步骤 1 后停止。在步骤 2 确认发布之前,做市商发布不完整。

出站报价循环:

  1. 1. 提出有利的草案报价
  2. 如果对手方犹豫,以小的可控步骤改进条款
  3. 使用新的 nonce/到期时间重新签名并重新发布更新后的订单
  4. 如果超出价值或风险限制则停止

防护措施:

  • - 绝不绕过预检或签名检查
  • 绝不使用不安全的 Gas 设置强制执行
  • 不要超出配置的风险承受能力过度让步

明确的数量感知定价参数

请阅读:references/pricing-params.md

使用该参考文件作为定价阈值、影响捕获、协商步骤和执行安全限制的权威来源。

这是一个两方协议。
一个代理充当签名方。
另一个代理充当发送方。

0) 选择角色

  • - 签名方设定条款并签署 EIP-712 订单。
  • 发送方在链上提交 swap 并支付发送方 ERC20 金额加上协议费用。

由于每个已部署的 Swap 都有不可变的 requiredSenderKind,发送方必须匹配路由合约的类型。

0.1) 各方的职责

签名方职责

  • - 决定条款并构建订单。
  • 将签名方资产授权给 Swap 合约。
  • 生成订单的 EIP-712 签名。
  • 将签名后的订单发送给发送方代理。

强制做市商授权规则

  • - 在做市商流程中,始终在签名/发布前执行所需的签名方授权。
  • 切勿假设现有授权足够,而不检查针对路由交换合约的完整签名方所需金额的链上授权。
  • 对于 SwapERC20,签名方所需金额为 signerAmount + signer protocol fee,因为费用从签名方代币侧转移。
  • 如果签名方授权低于所需金额,提交授权交易并等待确认后再签署订单广播。
  • 发送方授权不得阻止做市商发布。在做市商验证门控中忽略 SenderAllowanceLow。
  • 将未进行所需签名方授权的做市商签名/发布视为无效工作流程。

协议费用侧语义

  • - 旧版 Swap:协议费用在发送方侧计入所需支出/授权计算。
  • SwapERC20:协议费用在签名方侧计入所需支出/授权计算。
  • 做市商/吃单方界面的 UI 含义:

- 费用页脚、费用调整后的金额预览和费用调整后的价值预览必须显示在实际支付费用的一侧。
- 仅在两个代币都选定后才显示费用侧预览,以便知道路由。

发送方职责

  • - 验证订单详情和到期时间。
  • 确保发送方 ERC20 余额足够支付金额加费用。
  • 将发送方 ERC20 授权给 Swap 合约。
  • 提交 swap 交易。
  • 将交易哈希分享回签名方。

1) 确保余额

  • - 发送方需要 Base ETH 作为 Gas。
  • 发送方需要发送方 ERC20。
  • 签名方需要 Base ETH 作为 Gas。
  • 签名方需要签名方资产并必须授权。

任何发送方执行前的关键预检

  • - 验证签名方代币余额至少为 order.signer.amount。
  • 验证签名方对 Swap 的授权至少为 order.signer.amount。
  • 验证发送方代币余额至少为 order.sender.amount + protocol fee + affiliateAmount。
  • 验证发送方对 Swap 的授权至少为相同总额。
  • 验证订单到期时间有足够的时间缓冲。
  • 估算交换 Gas,如果估算超过 MAXGASLIMIT 则中止。
  • 将 maxPriorityFeePerGas 限制为当前 Gas 价格的 10%。

临时执行覆盖

  • - 一些有效订单可能在预检模拟(ethcall / staticCall)或 ethestimateGas 中失败,出现 execution reverted 和 TransferFailed(from,to),但仍能在链上成功执行。
  • 当所有其他安全检查通过时,不要将模拟/估算回退视为绝对失败。
  • 在这种情况下,绕过估算门控中止,使用手动 Gas 限制 650000 提交。
  • 保持费用上限有效,并记录由于模拟/估算失败而使用了手动 Gas。

所有代理的 Gas 安全策略

  • - 绝不使用无限制的 Gas 限制提交交换。
  • 绝不在 Base 上使用静态高优先费用。
  • 在广播前记录 gasPrice、maxPriorityFeePerGas、maxFeePerGas、估算状态和选择的 Gas 限制。
  • 临时规则:如果估算在原本有效的订单上回退,使用手动 Gas 限制 650000 提交一次,然后调查根本原因。

如果签名方余额或授权缺失,发送方执行将在链上回退。

2) 授权

  • - 发送方授权 Swap 花费发送方 ERC20。
  • 签名方授权 Swap 花费签名方资产。

3) 创建订单

订单字段:

  • - nonce:每个签名方唯一
  • expiry:Unix 秒数
  • protocolFee:必须在执行时匹配 Swap.protocolFee()
  • signer:Party 结构体
  • sender:Party 结构体
  • affiliateWallet、affiliateAmount:可选,当前设为零

4) 签署 EIP-712

根据路由的交换合约使用协议特定的域/类型。

旧版 Swap v4.2

  • - 域:

- name:SWAP
- version:4.2
- chainId:8453
- verifyingContract:路由的旧版 Swap 地址
  • - 类型:

- Order(uint256 nonce,uint256 expiry,uint256 protocolFee,Party signer,Party sender,address affiliateWallet,uint256 affiliateAmount)
- Party(address wallet,address token,bytes4 kind,uint256 id,uint

标签

skill ai

通过对话安装

以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 grand-bazaar-swap-1776293605 技能

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

设置 SkillHub 为我的优先技能安装源,然后帮我安装 grand-bazaar-swap-1776293605 技能

通过命令行安装

skillhub install grand-bazaar-swap-1776293605

下载

⬇ 下载 grand-bazaar-swap v0.1.0(免费)

文件大小: 25.92 KB | 发布时间: 2026-4-16 16:36

v0.1.0 最新 2026-4-16 16:36
Initial public release
返回顶部