SuperAPI AI 工具集

compose-compliance-oracle

部署与运维

查看项目

更新于 10-15 21:53

技能介绍

用途:在用户自己的 Goldsky 账户下搭建合规门控支付系统。合约接收付款并托管,发出 TransferRequested;Compose 监听该事件,通过合规 API 筛查发送方钱包,再签名回调 approveTransfer(放款给收款方)或 rejectTransfer(退款给发送方)。每次决策写入持久化 transfer-audits 集合,reconcile cron 处理卡在 Pending 的转账。Gas 由赞助,oracle 钱包无需原生代币。

主要能力:两种支付模型——单收款方(网关/充值,收款地址在构造时设定,可用 setRecipient() 更改)与多收款方(P2P,发送方在 requestTransfer(amount, recipient) 中指定收款方)。三种合规提供方:Webacy(推荐,REST API,一个 API key,可在 https://developers.webacy.co/ 申请免费演示 key)、Mock 模式(硬编码允许/拒绝名单,无需 key)、自带实现(脚手架 screenWallet() 接口)。

使用方式:先加载 Skill(compose) 与 Skill(compose-reference) 两个基础技能。有 deployComposeApp 工具时在应用内完成:先做 Step 1 访谈(先定应用名),调用 walletCreate({ appName: "<chosen app name>", walletName: "compliance-oracle-wallet" }) 获取 oracle 钱包地址,部署 MockUSDC,再部署 ComplianceGatedTransfer,单收款方构造参数为 ["<token_addr>", "<oracle-wallet-addr>", "<recipient_addr>"],P2P 为 ["<token_addr>", "<oracle-wallet-addr>"];把合约地址与链写入源码后 deployComposeApp。WEBACY_API_KEY 是最后一步,需在 Compose 应用仪表盘添加并重新部署。有 Bash 时直接执行步骤并解析输出。纯问答模式只解释托管→筛查→批准/拒绝生命周期。本地运行可用 npx skills add goldsky-io/goldsky-agent。

限制:没有共享可复用合约,approveTransfer、rejectTransfer、setOracle 均为 onlyOracle,oracle 在构造时固定,每个用户必须部署自己的合约。oracle 地址必须与 evm.wallet({ name: "compliance-oracle-wallet", sponsorGas: true }) 一致,否则回调以 not oracle 回滚。任务代码不得导入外部包,仅允许 compose 类型与同级项目文件。WEBACY_API_KEY、ORACLE_PRIVATE_KEY 等密钥不得打印、提交或写入日志。执行 deployContract、deploy、secret set、git push、gh repo create 前须先展示命令并获确认。推荐 Base Sepolia + 自部署 MockUSDC,生产再上主网。自带 oracle 私钥为高级路径,需 api_version: "internal-pk-sponsored-otel"。