Hoodieswap 技能
将 Hoodieswap 用作 Robinhood 链(链 ID 4663)上的非托管执行准备层。发现资产和路由,向用户展示实质性条款,然后为已连接的钱包准备未签名交易。绝不请求、存储或使用私钥。
选择工作流程
- 对于资产查询或市场发现,调用
GET /tokens或GET /stocks。 - 对于交易预览,调用
POST /quote。预览报价时钱包是可选的。 - 对于 ERC-20 输入,在用户选择路由和钱包后调用
POST /approval。 - 要获取最终的未签名交换负载,调用
POST /swap/prepare。 - 对于代币启动,使用
dryRun: true调用POST /launch/preflight。在返回模拟结果和未签名的 Airlock 交易后停止。 - 在准备任何交易前,阅读 references/safety.md。
- 阅读 references/schemas.md 以了解请求和响应字段。
- 阅读 references/robinhood-chain.md 以获取规范网络值。
- 当签名账户是 OnChainHoodies ERC-6551 HoodWallet 时,阅读 references/hoodwallet.md。
选择签名者配置文件
eoa:为传统外部拥有钱包准备交易。och-hoodwallet:通过 OnChainHoodies 解析 Hoodie 所有者和确定的 ERC-6551 账户,使用 HoodWallet 地址作为swapper进行报价,然后将准备好的调用传递给 HoodWallet 的授权执行方法。- 切勿将代币绑定账户视为拥有独立的私钥。其当前的 NFT 所有者或其他明确授权的控制器必须批准并执行该调用。
- OnChainHoodies 公共 API 提供身份、所有权和钱包上下文。它本身并不授权或签署 HoodWallet 交易。
交易工作流程
- 通过符号、名称或合约地址解析请求的资产。
- 确认两个资产都在 Robinhood 链上,并确定小数位数。将原生 ETH 视为
0x0000000000000000000000000000000000000000。 - 在不使用浮点运算的情况下,将用户输入转换为原始整数金额。
- 运行
node scripts/quote.mjs --token-in ... --token-out ... --amount ... --decimals ... [--swapper ...]或直接调用/quote。 - 展示所选提供者、输入、预期输出、价格影响(如果有)、池约束(如果有)以及任何警告。不要将报价描述为有保证的。
- 要求用户明确批准准备。
- 如果输入是 ERC-20 且报价报告了授权,则准备所需的授权交易。不要静默批准无限额支出。
- 运行
node scripts/prepare-swap.mjs --quote-file quote.json或使用所选提供者报价调用/swap/prepare。 - 再次验证链 ID、目标、值、calldata 存在性、代币对和金额。
- 将未签名交易返回给所选签名者适配器以供明确审查。对于
och-hoodwallet,在验证当前 Hoodie 所有权后,仅将准备好的确切目标、值和 calldata 包装在 HoodWallet 执行调用中。 - 除非用户单独启用了经授权的钱包工具或策略并批准了确切操作,否则切勿从代理广播该交易。
启动工作流程
- 收集所需的名称、代码、描述、公开图片 URL、创建者邮箱、创建者钱包和配对模式。
- 如果与股票代币配对,则从
GET /stocks解析地址;绝不接受任意股票配对地址。 - 使用
source: "launchpad"、mode: "preflight"和dryRun: true提交规范预检负载。 - 展示预测的代币和池、总供应量、费用、完整受益人分配、配对、安全属性、Gas 估算和交易目标。
- 等待用户审查。预检并非启动授权。
- 只有创建者账户可以授权并发送返回的 Airlock 交易。HoodWallet 创建者必须通过授权的 ERC-6551 账户路径来执行它。
确定性与错误处理
- 在 API 调用中使用原始整数金额,并将其保留为字符串。
- 不要编造代币小数、地址、池 ID、报价、余额或路由可用性。
- 来自
/quote的404表示未找到可执行路由;不要伪造回退。 - 标记为
NO ROUTE或NOT CONFIGURED的提供者对于该请求不可用。 - 如果之前的报价已过时或金额发生变化,请立即在交易准备前重新报价。
- 当报价或截止时间到期时,将所有准备好的交易视为已过期。
- 将用户拒绝表示为取消,而非交易失败。
API 和客户端
- 生产环境基础 URL:
https://hoodieswap.xyz/api/v1 - OpenAPI:
https://hoodieswap.xyz/api/v1/openapi.json - 仓库规范:openapi/hoodieswap-v1.yaml
- TypeScript 客户端:src/client.ts
- 能力发现:
GET /capabilities
Hoodieswap 准备路由和交易。钱包仍然是签名的边界,Hoodieswap 绝不托管。