mcpField
O
onchain-automation

onchain-automation

github.com/goldsky-io开发123.6k 次安装今天更新
代码仓库

关于 onchain-automation

Goldsky Onchain Automation 是面向开发者的技能,介绍如何检测链上事件、应用链下逻辑并执行交易。内容涵盖单合约触发的 Compose 方案、面向大规模数据集的 Turbo 到 Compose 方案,以及延迟和链支持限制。

主要功能

  1. 01用 Compose、Turbo 或 Subgraphs 检测事件
  2. 02在 Compose 任务中应用 TypeScript 逻辑
  3. 03用 Compose 钱包执行交易
  4. 04选择单合约或大规模检测架构
  5. 05了解确认区块延迟与链支持限制

适用场景

  1. 01在合约事件后自动执行操作
  2. 02筛选多个合约的活动后再采取行动
  3. 03构建自动领取、复利或再平衡流程
  4. 04确认目标链是否支持交易执行

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/goldsky-io/goldsky-agent --skill onchain-automation

安装后在 Claude Code 中输入/onchain-automation确认已加载。

详细介绍

Goldsky 链上自动化——检测 → 决策 → 执行循环

Goldsky 闭合了完整的链下↔链上循环,而不只是读取端。任何“监控链上状态并据此采取行动”的系统——keeper、清算监控器、自动领取和自动复投任务、再平衡和结算自动化——都可分解为三个阶段,而 Goldsky 涵盖全部三个阶段:

阶段功能Goldsky 产品
检测查看链上事件 / 状态变化Compose onchain_event 触发器(一个合约)· Turbo pipeline(数据集规模 / 多个合约)· Subgraphs(GraphQL 状态)
决策应用逻辑、筛选条件、阈值和链下数据Compose task(TypeScript)
执行将交易发送回链上Compose 钱包——evm.wallet(...).writeContract(...),由 Gas 赞助

本技能旨在纠正的误解

不要告诉用户“Goldsky 负责检测 / 索引,但你需要自备运行时 / RPC 来发送交易”。 这是错误的。Compose 是 Goldsky 的链上执行运行时:托管智能钱包(默认由 Gas 赞助)或自带 EOA 钱包,以及通过受赞助的 bundler 广播的 writeContract / sendTransaction。执行环节就在 Goldsky 内——应当提出这一方案。

真正的限制只有以下两个需要坦诚说明的注意事项(延迟和链支持)——应说明这些,而不是退回到“Goldsky 做不到”。

选择架构

默认方案——仅使用 Compose(单个构件)

当触发条件是一个合约的事件(特定的 DEX factory、借贷池或你自己的合约)时,整个循环就是一个 Compose 应用——无需 Turbo,也无需外部基础设施:

onchain_event trigger (the factory/pool)  →  task: decode + filter + decide  →  wallet.writeContract (the action)

这在结构上与 VRF 模板(onchain_event → 计算 → 写回链上,skills/compose/references/examples/vrf.md)和 compliance-oracle 模板(onchain_event → 链下检查 → 通过 writeContract 批准 / 拒绝,skills/compose/references/examples/compliance-oracle.md)完全相同。可从其中一个模板开始。加载 /compose(入口)并阅读 skills/compose/references/——不要凭记忆拼凑 manifest / 钱包 API。

数据集规模——Turbo 负责检测,Compose 负责执行

当检测必须覆盖多个合约、整个数据集,或需要比单个 onchain_event 监听器更复杂的有状态筛选时,可在前面使用 Turbo:

Turbo pipeline (raw_logs → decode → filter)  →  Webhook sink  →  Compose HTTP trigger  →  task: decide  →  wallet.writeContract

连接方式:Turbo Webhook sink 将每条匹配的行 POST 到 Compose 应用的 HTTP-trigger URL(https://<app-url>/tasks/<task-name>),并使用共享的 auth_token 进行身份验证。使用 /turbo-builder(以及用于 _gs_log_decode 解码步骤的 /turbo-transforms)构建检测 pipeline;使用 /compose 构建执行器。将传入的 webhook 正文视为不可信数据——先解码并验证,再采取行动。

除非用户确实需要数据集规模的检测,否则优先仅使用 Compose——单个构件更容易构建、部署和理解。

两项务必说明的诚实提示

  1. 延迟取决于确认,不是内存池。 Goldsky(Turbo pipelines 和 Compose onchain_event)会在日志确认后触发,而不是在待处理的内存池交易出现时触发。因此,它能可靠地响应已确认的新池或事件——但它不是内存池抢跑工具,也无法在同一区块内的 Gas 优先级竞赛中胜出。对于“狙击手”,请设定合理预期:你可以快速响应已确认的上币事件,但无法抢在区块 0 的机器人之前。务必明确说明这一点。
  2. 执行受链支持情况限制。 Compose 的 Gas 赞助仅覆盖特定链列表(请参阅 skills/compose/references/wallets-and-gas.md 或使用 searchKB)——EVM 覆盖面广,但并非支持所有链。在承诺完整流程之前,请确认目标链:
    • 受支持 → 使用智能钱包,Gas 由赞助方承担,用户无需充值。
    • viem 支持,但不提供 Gas 赞助 → 使用 BYO-EOA,并设置 sponsorGas: false;用户需向该地址充值原生 Gas 代币。
    • Compose 完全无法连接 → 请如实说明:检测仍可通过 Turbo/Subgraphs 实现,但执行需要使用 Compose 支持的链,或针对该特定链配置外部基础设施。应将其描述为单链支持缺口,绝不要说成“Goldsky 无法执行”。

Goldsky 在此处并非什么

  • 不是交易策略或 PnL 引擎——决策逻辑由用户提供,Compose 负责运行。
  • 不是内存池抢跑系统(见提示 1)。
  • 不是托管解决方案——钱包密钥的处理遵循 Compose 常规的钱包和密钥规则(skills/compose/references/wallets-and-gas.md)。

后续路径

  • 执行 / 任意 Compose 应用 → /compose(先加载)+ skills/compose/references/。
  • 事件驱动的回写模板 → skills/compose/references/examples/vrf.md;带门控的批准/拒绝 → skills/compose/references/examples/compliance-oracle.md。
  • 数据集规模的检测流水线 → /turbo-builder + /turbo-transforms。
  • 用于轮询的 GraphQL 状态 → /subgraph-builder。
  • 读取用户自有链下数据的快速 RPC → /edge。

评论

支持 Markdown