@eco-incorp/sauce 0.99.6 → 0.99.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +58 -16
- package/actions/action-program.schema.json +480 -379
- package/actions/dist/abis.d.ts +19 -18
- package/actions/dist/abis.d.ts.map +1 -1
- package/actions/dist/abis.js +29 -29
- package/actions/dist/compile.d.ts +4 -4
- package/actions/dist/compile.d.ts.map +1 -1
- package/actions/dist/compile.js +3 -1
- package/actions/dist/compose.d.ts +63 -6
- package/actions/dist/compose.d.ts.map +1 -1
- package/actions/dist/compose.js +100 -16
- package/actions/dist/index.d.ts +1 -1
- package/actions/dist/index.d.ts.map +1 -1
- package/actions/dist/names.d.ts +88 -0
- package/actions/dist/names.d.ts.map +1 -0
- package/actions/dist/names.js +324 -0
- package/actions/dist/program.d.ts.map +1 -1
- package/actions/dist/program.js +115 -5
- package/actions/dist/registry.d.ts +10 -8
- package/actions/dist/registry.d.ts.map +1 -1
- package/actions/dist/registry.js +10 -8
- package/actions/dist/schema.d.ts.map +1 -1
- package/actions/dist/schema.js +99 -12
- package/actions/dist/semantics.d.ts +12 -2
- package/actions/dist/semantics.d.ts.map +1 -1
- package/actions/dist/semantics.js +78 -8
- package/actions/dist/spec.d.ts +30 -0
- package/actions/dist/spec.d.ts.map +1 -1
- package/actions/dist/spec.js +151 -138
- package/actions/dist/split-swap.d.ts +10 -5
- package/actions/dist/split-swap.d.ts.map +1 -1
- package/actions/dist/split-swap.js +48 -7
- package/actions/dist/to-quote.d.ts +14 -5
- package/actions/dist/to-quote.d.ts.map +1 -1
- package/actions/dist/to-quote.js +210 -244
- package/actions/dist/to-sauce.d.ts +18 -4
- package/actions/dist/to-sauce.d.ts.map +1 -1
- package/actions/dist/to-sauce.js +232 -205
- package/actions/dist/types.d.ts +245 -147
- package/actions/dist/types.d.ts.map +1 -1
- package/actions/dist/types.js +4 -0
- package/docs/README.md +38 -0
- package/docs/api/README.md +37 -23
- package/docs/api/compiler.md +53 -12
- package/docs/api/contracts.md +105 -0
- package/docs/api/coverage.md +80 -57
- package/docs/api/router.md +238 -0
- package/docs/api/routes.md +31 -22
- package/docs/concepts/architecture.md +26 -3
- package/docs/concepts/saucescript.md +35 -55
- package/docs/examples/README.md +21 -14
- package/docs/examples/action-program.ts +51 -35
- package/docs/examples/cross-chain-cascade.sauce.ts +4 -0
- package/docs/examples/cross-chain-intent.sauce.ts +2 -1
- package/docs/examples/evm-execution.ts +2 -4
- package/docs/examples/first-intent.ts +7 -2
- package/docs/examples/pot-router.ts +19 -0
- package/docs/examples/registry-names.ts +52 -0
- package/docs/examples/router-route.sauce.ts +31 -0
- package/docs/examples/router-route.ts +72 -0
- package/docs/examples/router-swap.sauce.ts +16 -0
- package/docs/examples/router-swap.ts +47 -0
- package/docs/examples/venue-where-deployed.sauce.ts +14 -0
- package/docs/guides/actions.md +230 -120
- package/docs/guides/builders-and-actions.md +20 -14
- package/docs/guides/cli.md +1442 -0
- package/docs/guides/compiling.md +19 -7
- package/docs/guides/intents.md +228 -15
- package/docs/guides/mcp.md +539 -0
- package/docs/guides/nested-intents.md +21 -6
- package/docs/guides/protocols-and-tokens.md +218 -39
- package/docs/guides/quick-start.md +5 -0
- package/docs/guides/solana.md +199 -52
- package/docs/guides/verification.md +2 -2
- package/mcp/dist/config.js +78 -0
- package/mcp/dist/config.js.map +1 -0
- package/mcp/dist/entry.js +112 -0
- package/mcp/dist/entry.js.map +1 -0
- package/mcp/dist/files.js +64 -0
- package/mcp/dist/files.js.map +1 -0
- package/mcp/dist/guard.js +262 -0
- package/mcp/dist/guard.js.map +1 -0
- package/mcp/dist/http.js +111 -0
- package/mcp/dist/http.js.map +1 -0
- package/mcp/dist/intents.js +579 -0
- package/mcp/dist/intents.js.map +1 -0
- package/mcp/dist/prompts.js +153 -0
- package/mcp/dist/prompts.js.map +1 -0
- package/mcp/dist/reach.js +98 -0
- package/mcp/dist/reach.js.map +1 -0
- package/mcp/dist/resources.js +154 -0
- package/mcp/dist/resources.js.map +1 -0
- package/mcp/dist/sdk.js +34 -0
- package/mcp/dist/sdk.js.map +1 -0
- package/mcp/dist/server.js +119 -0
- package/mcp/dist/server.js.map +1 -0
- package/mcp/dist/setup.js +189 -0
- package/mcp/dist/setup.js.map +1 -0
- package/mcp/dist/skilltools.js +520 -0
- package/mcp/dist/skilltools.js.map +1 -0
- package/mcp/dist/terms.js +93 -0
- package/mcp/dist/terms.js.map +1 -0
- package/mcp/dist/tools.js +1497 -0
- package/mcp/dist/tools.js.map +1 -0
- package/mcp/dist/wallets.js +168 -0
- package/mcp/dist/wallets.js.map +1 -0
- package/package.json +18 -13
- package/sdk/dist/artifacts/V12Deployments.json +3 -1
- package/sdk/dist/artifacts/V12EngineGate.json +1 -2
- package/sdk/dist/artifacts/V12KitchenProxy.json +1 -0
- package/sdk/dist/chains/canonical.d.ts +15 -24
- package/sdk/dist/chains/canonical.d.ts.map +1 -1
- package/sdk/dist/chains/canonical.js +18 -29
- package/sdk/dist/chains/canonical.js.map +1 -1
- package/sdk/dist/cli/actions.d.ts +29 -0
- package/sdk/dist/cli/actions.d.ts.map +1 -0
- package/sdk/dist/cli/actions.js +122 -0
- package/sdk/dist/cli/actions.js.map +1 -0
- package/sdk/dist/cli/args.d.ts +118 -0
- package/sdk/dist/cli/args.d.ts.map +1 -0
- package/sdk/dist/cli/args.js +354 -0
- package/sdk/dist/cli/args.js.map +1 -0
- package/sdk/dist/cli/assume.d.ts +51 -0
- package/sdk/dist/cli/assume.d.ts.map +1 -0
- package/sdk/dist/cli/assume.js +207 -0
- package/sdk/dist/cli/assume.js.map +1 -0
- package/sdk/dist/cli/chain.d.ts +170 -0
- package/sdk/dist/cli/chain.d.ts.map +1 -0
- package/sdk/dist/cli/chain.js +457 -0
- package/sdk/dist/cli/chain.js.map +1 -0
- package/sdk/dist/cli/commands.d.ts +226 -0
- package/sdk/dist/cli/commands.d.ts.map +1 -0
- package/sdk/dist/cli/commands.js +637 -0
- package/sdk/dist/cli/commands.js.map +1 -0
- package/sdk/dist/cli/create.d.ts +70 -0
- package/sdk/dist/cli/create.d.ts.map +1 -0
- package/sdk/dist/cli/create.js +483 -0
- package/sdk/dist/cli/create.js.map +1 -0
- package/sdk/dist/cli/diagnostics.d.ts +12 -0
- package/sdk/dist/cli/diagnostics.d.ts.map +1 -0
- package/sdk/dist/cli/diagnostics.js +200 -0
- package/sdk/dist/cli/diagnostics.js.map +1 -0
- package/sdk/dist/cli/effects.d.ts +71 -0
- package/sdk/dist/cli/effects.d.ts.map +1 -0
- package/sdk/dist/cli/effects.js +279 -0
- package/sdk/dist/cli/effects.js.map +1 -0
- package/sdk/dist/cli/fill.d.ts +83 -0
- package/sdk/dist/cli/fill.d.ts.map +1 -0
- package/sdk/dist/cli/fill.js +734 -0
- package/sdk/dist/cli/fill.js.map +1 -0
- package/sdk/dist/cli/funding.d.ts +126 -0
- package/sdk/dist/cli/funding.d.ts.map +1 -0
- package/sdk/dist/cli/funding.js +514 -0
- package/sdk/dist/cli/funding.js.map +1 -0
- package/sdk/dist/cli/globals.d.ts +16 -0
- package/sdk/dist/cli/globals.d.ts.map +1 -0
- package/sdk/dist/cli/globals.js +197 -0
- package/sdk/dist/cli/globals.js.map +1 -0
- package/sdk/dist/cli/init.d.ts +34 -0
- package/sdk/dist/cli/init.d.ts.map +1 -0
- package/sdk/dist/cli/init.js +181 -0
- package/sdk/dist/cli/init.js.map +1 -0
- package/sdk/dist/cli/inputs.d.ts +72 -0
- package/sdk/dist/cli/inputs.d.ts.map +1 -0
- package/sdk/dist/cli/inputs.js +152 -0
- package/sdk/dist/cli/inputs.js.map +1 -0
- package/sdk/dist/cli/inspect.d.ts +48 -0
- package/sdk/dist/cli/inspect.d.ts.map +1 -0
- package/sdk/dist/cli/inspect.js +536 -0
- package/sdk/dist/cli/inspect.js.map +1 -0
- package/sdk/dist/cli/intent-commands.d.ts +71 -0
- package/sdk/dist/cli/intent-commands.d.ts.map +1 -0
- package/sdk/dist/cli/intent-commands.js +698 -0
- package/sdk/dist/cli/intent-commands.js.map +1 -0
- package/sdk/dist/cli/intent-svm.d.ts +15 -0
- package/sdk/dist/cli/intent-svm.d.ts.map +1 -0
- package/sdk/dist/cli/intent-svm.js +222 -0
- package/sdk/dist/cli/intent-svm.js.map +1 -0
- package/sdk/dist/cli/intents.d.ts +43 -0
- package/sdk/dist/cli/intents.d.ts.map +1 -0
- package/sdk/dist/cli/intents.js +89 -0
- package/sdk/dist/cli/intents.js.map +1 -0
- package/sdk/dist/cli/interactive.d.ts +11 -0
- package/sdk/dist/cli/interactive.d.ts.map +1 -0
- package/sdk/dist/cli/interactive.js +161 -0
- package/sdk/dist/cli/interactive.js.map +1 -0
- package/sdk/dist/cli/lifecycle-svm.d.ts +109 -0
- package/sdk/dist/cli/lifecycle-svm.d.ts.map +1 -0
- package/sdk/dist/cli/lifecycle-svm.js +299 -0
- package/sdk/dist/cli/lifecycle-svm.js.map +1 -0
- package/sdk/dist/cli/lifecycle.d.ts +439 -0
- package/sdk/dist/cli/lifecycle.d.ts.map +1 -0
- package/sdk/dist/cli/lifecycle.js +1721 -0
- package/sdk/dist/cli/lifecycle.js.map +1 -0
- package/sdk/dist/cli/main.d.ts +3 -0
- package/sdk/dist/cli/main.d.ts.map +1 -0
- package/sdk/dist/cli/main.js +8 -0
- package/sdk/dist/cli/main.js.map +1 -0
- package/sdk/dist/cli/mcp.d.ts +66 -0
- package/sdk/dist/cli/mcp.d.ts.map +1 -0
- package/sdk/dist/cli/mcp.js +169 -0
- package/sdk/dist/cli/mcp.js.map +1 -0
- package/sdk/dist/cli/password.d.ts +54 -0
- package/sdk/dist/cli/password.d.ts.map +1 -0
- package/sdk/dist/cli/password.js +148 -0
- package/sdk/dist/cli/password.js.map +1 -0
- package/sdk/dist/cli/policy.d.ts +130 -0
- package/sdk/dist/cli/policy.d.ts.map +1 -0
- package/sdk/dist/cli/policy.js +702 -0
- package/sdk/dist/cli/policy.js.map +1 -0
- package/sdk/dist/cli/pools.d.ts +140 -0
- package/sdk/dist/cli/pools.d.ts.map +1 -0
- package/sdk/dist/cli/pools.js +658 -0
- package/sdk/dist/cli/pools.js.map +1 -0
- package/sdk/dist/cli/price.d.ts +74 -0
- package/sdk/dist/cli/price.d.ts.map +1 -0
- package/sdk/dist/cli/price.js +321 -0
- package/sdk/dist/cli/price.js.map +1 -0
- package/sdk/dist/cli/prompt.d.ts +30 -0
- package/sdk/dist/cli/prompt.d.ts.map +1 -0
- package/sdk/dist/cli/prompt.js +53 -0
- package/sdk/dist/cli/prompt.js.map +1 -0
- package/sdk/dist/cli/publish.d.ts +48 -0
- package/sdk/dist/cli/publish.d.ts.map +1 -0
- package/sdk/dist/cli/publish.js +480 -0
- package/sdk/dist/cli/publish.js.map +1 -0
- package/sdk/dist/cli/receipt.d.ts +35 -0
- package/sdk/dist/cli/receipt.d.ts.map +1 -0
- package/sdk/dist/cli/receipt.js +63 -0
- package/sdk/dist/cli/receipt.js.map +1 -0
- package/sdk/dist/cli/rehearse.d.ts +80 -0
- package/sdk/dist/cli/rehearse.d.ts.map +1 -0
- package/sdk/dist/cli/rehearse.js +265 -0
- package/sdk/dist/cli/rehearse.js.map +1 -0
- package/sdk/dist/cli/report.d.ts +69 -0
- package/sdk/dist/cli/report.d.ts.map +1 -0
- package/sdk/dist/cli/report.js +206 -0
- package/sdk/dist/cli/report.js.map +1 -0
- package/sdk/dist/cli/returned.d.ts +16 -0
- package/sdk/dist/cli/returned.d.ts.map +1 -0
- package/sdk/dist/cli/returned.js +111 -0
- package/sdk/dist/cli/returned.js.map +1 -0
- package/sdk/dist/cli/run.d.ts +40 -0
- package/sdk/dist/cli/run.d.ts.map +1 -0
- package/sdk/dist/cli/run.js +3162 -0
- package/sdk/dist/cli/run.js.map +1 -0
- package/sdk/dist/cli/signer.d.ts +72 -0
- package/sdk/dist/cli/signer.d.ts.map +1 -0
- package/sdk/dist/cli/signer.js +243 -0
- package/sdk/dist/cli/signer.js.map +1 -0
- package/sdk/dist/cli/simulate.d.ts +11 -0
- package/sdk/dist/cli/simulate.d.ts.map +1 -0
- package/sdk/dist/cli/simulate.js +246 -0
- package/sdk/dist/cli/simulate.js.map +1 -0
- package/sdk/dist/cli/skills.d.ts +77 -0
- package/sdk/dist/cli/skills.d.ts.map +1 -0
- package/sdk/dist/cli/skills.js +527 -0
- package/sdk/dist/cli/skills.js.map +1 -0
- package/sdk/dist/cli/solana.d.ts +183 -0
- package/sdk/dist/cli/solana.d.ts.map +1 -0
- package/sdk/dist/cli/solana.js +1360 -0
- package/sdk/dist/cli/solana.js.map +1 -0
- package/sdk/dist/cli/store.d.ts +60 -0
- package/sdk/dist/cli/store.d.ts.map +1 -0
- package/sdk/dist/cli/store.js +196 -0
- package/sdk/dist/cli/store.js.map +1 -0
- package/sdk/dist/cli/support.d.ts +144 -0
- package/sdk/dist/cli/support.d.ts.map +1 -0
- package/sdk/dist/cli/support.js +217 -0
- package/sdk/dist/cli/support.js.map +1 -0
- package/sdk/dist/cli/svm-effects.d.ts +50 -0
- package/sdk/dist/cli/svm-effects.d.ts.map +1 -0
- package/sdk/dist/cli/svm-effects.js +196 -0
- package/sdk/dist/cli/svm-effects.js.map +1 -0
- package/sdk/dist/cli/terminal.d.ts +42 -0
- package/sdk/dist/cli/terminal.d.ts.map +1 -0
- package/sdk/dist/cli/terminal.js +136 -0
- package/sdk/dist/cli/terminal.js.map +1 -0
- package/sdk/dist/cli/verify.d.ts +32 -0
- package/sdk/dist/cli/verify.d.ts.map +1 -0
- package/sdk/dist/cli/verify.js +185 -0
- package/sdk/dist/cli/verify.js.map +1 -0
- package/sdk/dist/cli/wallet-commands.d.ts +59 -0
- package/sdk/dist/cli/wallet-commands.d.ts.map +1 -0
- package/sdk/dist/cli/wallet-commands.js +222 -0
- package/sdk/dist/cli/wallet-commands.js.map +1 -0
- package/sdk/dist/cli/wallet-send.d.ts +38 -0
- package/sdk/dist/cli/wallet-send.d.ts.map +1 -0
- package/sdk/dist/cli/wallet-send.js +303 -0
- package/sdk/dist/cli/wallet-send.js.map +1 -0
- package/sdk/dist/cli/wallets.d.ts +79 -0
- package/sdk/dist/cli/wallets.d.ts.map +1 -0
- package/sdk/dist/cli/wallets.js +297 -0
- package/sdk/dist/cli/wallets.js.map +1 -0
- package/sdk/dist/deployments/index.d.ts +4 -62
- package/sdk/dist/deployments/index.d.ts.map +1 -1
- package/sdk/dist/deployments/index.js +4 -84
- package/sdk/dist/deployments/index.js.map +1 -1
- package/sdk/dist/deployments/pot.d.ts +17 -7
- package/sdk/dist/deployments/pot.d.ts.map +1 -1
- package/sdk/dist/deployments/pot.js +25 -10
- package/sdk/dist/deployments/pot.js.map +1 -1
- package/sdk/dist/deployments/releases.d.ts +36 -0
- package/sdk/dist/deployments/releases.d.ts.map +1 -0
- package/sdk/dist/deployments/releases.js +61 -0
- package/sdk/dist/deployments/releases.js.map +1 -0
- package/sdk/dist/deployments/releases.json +76 -0
- package/sdk/dist/deployments/v12-addresses.d.ts +13 -0
- package/sdk/dist/deployments/v12-addresses.d.ts.map +1 -1
- package/sdk/dist/deployments/v12-addresses.js +16 -3
- package/sdk/dist/deployments/v12-addresses.js.map +1 -1
- package/sdk/dist/deposit/index.d.ts +6 -6
- package/sdk/dist/deposit/index.d.ts.map +1 -1
- package/sdk/dist/deposit/index.js +1 -1
- package/sdk/dist/deposit/index.js.map +1 -1
- package/sdk/dist/deposit/params.d.ts +4 -4
- package/sdk/dist/deposit/params.d.ts.map +1 -1
- package/sdk/dist/deposit/params.js +7 -4
- package/sdk/dist/deposit/params.js.map +1 -1
- package/sdk/dist/deposit/source.d.ts +3 -30
- package/sdk/dist/deposit/source.d.ts.map +1 -1
- package/sdk/dist/deposit/source.js +7 -83
- package/sdk/dist/deposit/source.js.map +1 -1
- package/sdk/dist/deposit/templates.d.ts +1 -2
- package/sdk/dist/deposit/templates.d.ts.map +1 -1
- package/sdk/dist/deposit/templates.js +10 -2
- package/sdk/dist/deposit/templates.js.map +1 -1
- package/sdk/dist/deposit/types.d.ts +14 -12
- package/sdk/dist/deposit/types.d.ts.map +1 -1
- package/sdk/dist/deposit/types.js +6 -0
- package/sdk/dist/deposit/types.js.map +1 -1
- package/sdk/dist/descriptors/accessors.d.ts +38 -35
- package/sdk/dist/descriptors/accessors.d.ts.map +1 -1
- package/sdk/dist/descriptors/accessors.js +16 -0
- package/sdk/dist/descriptors/accessors.js.map +1 -1
- package/sdk/dist/descriptors/call.d.ts +66 -14
- package/sdk/dist/descriptors/call.d.ts.map +1 -1
- package/sdk/dist/descriptors/call.js +94 -13
- package/sdk/dist/descriptors/call.js.map +1 -1
- package/sdk/dist/descriptors/contracts.generated.d.ts +3393 -0
- package/sdk/dist/descriptors/contracts.generated.d.ts.map +1 -0
- package/sdk/dist/descriptors/contracts.generated.js +728 -0
- package/sdk/dist/descriptors/contracts.generated.js.map +1 -0
- package/sdk/dist/descriptors/derive.d.ts +20 -11
- package/sdk/dist/descriptors/derive.d.ts.map +1 -1
- package/sdk/dist/descriptors/derive.js +68 -30
- package/sdk/dist/descriptors/derive.js.map +1 -1
- package/sdk/dist/descriptors/index.d.ts +6 -7
- package/sdk/dist/descriptors/index.d.ts.map +1 -1
- package/sdk/dist/descriptors/index.js +2 -2
- package/sdk/dist/descriptors/index.js.map +1 -1
- package/sdk/dist/descriptors/links.d.ts +23 -214
- package/sdk/dist/descriptors/links.d.ts.map +1 -1
- package/sdk/dist/descriptors/links.js +1 -232
- package/sdk/dist/descriptors/links.js.map +1 -1
- package/sdk/dist/descriptors/query.d.ts +1 -1
- package/sdk/dist/descriptors/query.d.ts.map +1 -1
- package/sdk/dist/descriptors/query.js +1 -1
- package/sdk/dist/descriptors/query.js.map +1 -1
- package/sdk/dist/descriptors/registry.d.ts +2 -5
- package/sdk/dist/descriptors/registry.d.ts.map +1 -1
- package/sdk/dist/descriptors/registry.js +11 -66
- package/sdk/dist/descriptors/registry.js.map +1 -1
- package/sdk/dist/embedded/resolve.d.ts +4 -4
- package/sdk/dist/embedded/resolve.d.ts.map +1 -1
- package/sdk/dist/embedded/resolve.js +12 -8
- package/sdk/dist/embedded/resolve.js.map +1 -1
- package/sdk/dist/embedded/skills.generated.d.ts +1 -1
- package/sdk/dist/embedded/skills.generated.d.ts.map +1 -1
- package/sdk/dist/embedded/skills.generated.js +137 -136
- package/sdk/dist/embedded/skills.generated.js.map +1 -1
- package/sdk/dist/embedded/sources.generated.d.ts.map +1 -1
- package/sdk/dist/embedded/sources.generated.js +40 -6
- package/sdk/dist/embedded/sources.generated.js.map +1 -1
- package/sdk/dist/evm/engine.d.ts +813 -10
- package/sdk/dist/evm/engine.d.ts.map +1 -1
- package/sdk/dist/evm/engine.js +127 -8
- package/sdk/dist/evm/engine.js.map +1 -1
- package/sdk/dist/index.d.ts +3 -2
- package/sdk/dist/index.d.ts.map +1 -1
- package/sdk/dist/index.js +6 -2
- package/sdk/dist/index.js.map +1 -1
- package/sdk/dist/price.d.ts +40 -0
- package/sdk/dist/price.d.ts.map +1 -0
- package/sdk/dist/price.js +101 -0
- package/sdk/dist/price.js.map +1 -0
- package/sdk/dist/protocols/aerodrome/abis.d.ts +76 -0
- package/sdk/dist/protocols/aerodrome/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/aerodrome/abis.js +61 -0
- package/sdk/dist/protocols/aerodrome/abis.js.map +1 -1
- package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts +70 -0
- package/sdk/dist/protocols/aerodrome-slipstream/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/aerodrome-slipstream/abis.js +54 -0
- package/sdk/dist/protocols/aerodrome-slipstream/abis.js.map +1 -1
- package/sdk/dist/protocols/camelot/abis.d.ts +178 -0
- package/sdk/dist/protocols/camelot/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/camelot/abis.js +139 -0
- package/sdk/dist/protocols/camelot/abis.js.map +1 -1
- package/sdk/dist/protocols/eco-routes/abis.d.ts +792 -50
- package/sdk/dist/protocols/eco-routes/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/eco-routes/abis.js +1058 -49
- package/sdk/dist/protocols/eco-routes/abis.js.map +1 -1
- package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts +44 -61
- package/sdk/dist/protocols/eco-routes/addresses.generated.d.ts.map +1 -1
- package/sdk/dist/protocols/eco-routes/addresses.generated.js +45 -62
- package/sdk/dist/protocols/eco-routes/addresses.generated.js.map +1 -1
- package/sdk/dist/protocols/eco-routes/lookup.d.ts +10 -0
- package/sdk/dist/protocols/eco-routes/lookup.d.ts.map +1 -1
- package/sdk/dist/protocols/eco-routes/lookup.js +16 -0
- package/sdk/dist/protocols/eco-routes/lookup.js.map +1 -1
- package/sdk/dist/protocols/maverick/abis.d.ts +77 -0
- package/sdk/dist/protocols/maverick/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/maverick/abis.js +58 -0
- package/sdk/dist/protocols/maverick/abis.js.map +1 -1
- package/sdk/dist/protocols/maverick/addresses.d.ts.map +1 -1
- package/sdk/dist/protocols/maverick/addresses.js +4 -0
- package/sdk/dist/protocols/maverick/addresses.js.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v2/abis.d.ts +52 -0
- package/sdk/dist/protocols/pancakeswap-v2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v2/abis.js +43 -0
- package/sdk/dist/protocols/pancakeswap-v2/abis.js.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/pancakeswap-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/pancakeswap-v3/abis.js +56 -0
- package/sdk/dist/protocols/pancakeswap-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/permit2/abis.d.ts +113 -0
- package/sdk/dist/protocols/permit2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/permit2/abis.js +63 -0
- package/sdk/dist/protocols/permit2/abis.js.map +1 -1
- package/sdk/dist/protocols/quickswap/abis.d.ts +148 -0
- package/sdk/dist/protocols/quickswap/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/quickswap/abis.js +119 -0
- package/sdk/dist/protocols/quickswap/abis.js.map +1 -1
- package/sdk/dist/protocols/sushiswap-v2/abis.d.ts +52 -0
- package/sdk/dist/protocols/sushiswap-v2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/sushiswap-v2/abis.js +42 -0
- package/sdk/dist/protocols/sushiswap-v2/abis.js.map +1 -1
- package/sdk/dist/protocols/synthra-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/synthra-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/synthra-v3/abis.js +55 -0
- package/sdk/dist/protocols/synthra-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/trader-joe/abis.d.ts +133 -0
- package/sdk/dist/protocols/trader-joe/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/trader-joe/abis.js +101 -0
- package/sdk/dist/protocols/trader-joe/abis.js.map +1 -1
- package/sdk/dist/protocols/trader-joe/addresses.d.ts.map +1 -1
- package/sdk/dist/protocols/trader-joe/addresses.js +5 -0
- package/sdk/dist/protocols/trader-joe/addresses.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v2/abis.d.ts +52 -0
- package/sdk/dist/protocols/uniswap-v2/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v2/abis.js +44 -0
- package/sdk/dist/protocols/uniswap-v2/abis.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/uniswap-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v3/abis.js +55 -0
- package/sdk/dist/protocols/uniswap-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/abis.d.ts +247 -0
- package/sdk/dist/protocols/uniswap-v4/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/abis.js +167 -0
- package/sdk/dist/protocols/uniswap-v4/abis.js.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/addresses.d.ts.map +1 -1
- package/sdk/dist/protocols/uniswap-v4/addresses.js +50 -0
- package/sdk/dist/protocols/uniswap-v4/addresses.js.map +1 -1
- package/sdk/dist/protocols/unitflow-v3/abis.d.ts +73 -0
- package/sdk/dist/protocols/unitflow-v3/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/unitflow-v3/abis.js +56 -0
- package/sdk/dist/protocols/unitflow-v3/abis.js.map +1 -1
- package/sdk/dist/protocols/velodrome/abis.d.ts +76 -0
- package/sdk/dist/protocols/velodrome/abis.d.ts.map +1 -1
- package/sdk/dist/protocols/velodrome/abis.js +61 -0
- package/sdk/dist/protocols/velodrome/abis.js.map +1 -1
- package/sdk/dist/recipes/cctp-split.sauce.ts +2 -2
- package/sdk/dist/recipes/plain-transfer.sauce.ts +2 -2
- package/sdk/dist/routes/accessor-index.d.ts +2 -2
- package/sdk/dist/routes/accessor-index.d.ts.map +1 -1
- package/sdk/dist/routes/accessor-index.js +4 -3
- package/sdk/dist/routes/accessor-index.js.map +1 -1
- package/sdk/dist/routes/ambient.d.ts +5 -0
- package/sdk/dist/routes/ambient.d.ts.map +1 -1
- package/sdk/dist/routes/ambient.js +20 -0
- package/sdk/dist/routes/ambient.js.map +1 -1
- package/sdk/dist/routes/ast-walk.d.ts +17 -3
- package/sdk/dist/routes/ast-walk.d.ts.map +1 -1
- package/sdk/dist/routes/ast-walk.js +24 -2
- package/sdk/dist/routes/ast-walk.js.map +1 -1
- package/sdk/dist/routes/available.d.ts +43 -0
- package/sdk/dist/routes/available.d.ts.map +1 -0
- package/sdk/dist/routes/available.js +230 -0
- package/sdk/dist/routes/available.js.map +1 -0
- package/sdk/dist/routes/builtins.generated.d.ts +180 -0
- package/sdk/dist/routes/builtins.generated.d.ts.map +1 -0
- package/sdk/dist/routes/builtins.generated.js +2 -0
- package/sdk/dist/routes/builtins.generated.js.map +1 -0
- package/sdk/dist/routes/chain-exports.generated.d.ts +13 -8
- package/sdk/dist/routes/chain-exports.generated.d.ts.map +1 -1
- package/sdk/dist/routes/chain-exports.generated.js.map +1 -1
- package/sdk/dist/routes/closure.d.ts.map +1 -1
- package/sdk/dist/routes/closure.js +13 -26
- package/sdk/dist/routes/closure.js.map +1 -1
- package/sdk/dist/routes/composed.d.ts.map +1 -1
- package/sdk/dist/routes/composed.js +20 -8
- package/sdk/dist/routes/composed.js.map +1 -1
- package/sdk/dist/routes/encode.d.ts +17 -0
- package/sdk/dist/routes/encode.d.ts.map +1 -1
- package/sdk/dist/routes/encode.js +14 -11
- package/sdk/dist/routes/encode.js.map +1 -1
- package/sdk/dist/routes/entry.d.ts +76 -0
- package/sdk/dist/routes/entry.d.ts.map +1 -0
- package/sdk/dist/routes/entry.js +478 -0
- package/sdk/dist/routes/entry.js.map +1 -0
- package/sdk/dist/routes/index.d.ts +19 -12
- package/sdk/dist/routes/index.d.ts.map +1 -1
- package/sdk/dist/routes/index.js +11 -8
- package/sdk/dist/routes/index.js.map +1 -1
- package/sdk/dist/routes/intent-body.d.ts +97 -0
- package/sdk/dist/routes/intent-body.d.ts.map +1 -0
- package/sdk/dist/routes/intent-body.js +441 -0
- package/sdk/dist/routes/intent-body.js.map +1 -0
- package/sdk/dist/routes/intent-dsl.d.ts +21 -6
- package/sdk/dist/routes/intent-dsl.d.ts.map +1 -1
- package/sdk/dist/routes/intent-dsl.js +34 -17
- package/sdk/dist/routes/intent-dsl.js.map +1 -1
- package/sdk/dist/routes/intent-sugar.d.ts +77 -4
- package/sdk/dist/routes/intent-sugar.d.ts.map +1 -1
- package/sdk/dist/routes/intent-sugar.js +318 -129
- package/sdk/dist/routes/intent-sugar.js.map +1 -1
- package/sdk/dist/routes/intent.d.ts +13 -1
- package/sdk/dist/routes/intent.d.ts.map +1 -1
- package/sdk/dist/routes/intent.js +37 -1
- package/sdk/dist/routes/intent.js.map +1 -1
- package/sdk/dist/routes/nest.d.ts +3 -2
- package/sdk/dist/routes/nest.d.ts.map +1 -1
- package/sdk/dist/routes/nest.js +5 -3
- package/sdk/dist/routes/nest.js.map +1 -1
- package/sdk/dist/routes/parse.d.ts +6 -0
- package/sdk/dist/routes/parse.d.ts.map +1 -0
- package/sdk/dist/routes/parse.js +39 -0
- package/sdk/dist/routes/parse.js.map +1 -0
- package/sdk/dist/routes/portal.d.ts +258 -4
- package/sdk/dist/routes/portal.d.ts.map +1 -1
- package/sdk/dist/routes/portal.js +588 -9
- package/sdk/dist/routes/portal.js.map +1 -1
- package/sdk/dist/routes/protocol-rewrite.d.ts +71 -1
- package/sdk/dist/routes/protocol-rewrite.d.ts.map +1 -1
- package/sdk/dist/routes/protocol-rewrite.js +178 -54
- package/sdk/dist/routes/protocol-rewrite.js.map +1 -1
- package/sdk/dist/routes/rs-compile.d.ts +25 -22
- package/sdk/dist/routes/rs-compile.d.ts.map +1 -1
- package/sdk/dist/routes/rs-compile.js +55 -49
- package/sdk/dist/routes/rs-compile.js.map +1 -1
- package/sdk/dist/routes/sauce-calls.d.ts +26 -12
- package/sdk/dist/routes/sauce-calls.d.ts.map +1 -1
- package/sdk/dist/routes/sauce-calls.js +16 -23
- package/sdk/dist/routes/sauce-calls.js.map +1 -1
- package/sdk/dist/routes/sauce-route.d.ts +74 -7
- package/sdk/dist/routes/sauce-route.d.ts.map +1 -1
- package/sdk/dist/routes/sauce-route.js +225 -75
- package/sdk/dist/routes/sauce-route.js.map +1 -1
- package/sdk/dist/routes/source-globals.d.ts +107 -0
- package/sdk/dist/routes/source-globals.d.ts.map +1 -0
- package/sdk/dist/routes/source-globals.generated.d.ts +5523 -933
- package/sdk/dist/routes/source-globals.generated.d.ts.map +1 -1
- package/sdk/dist/routes/source-globals.generated.js +3 -4
- package/sdk/dist/routes/source-globals.generated.js.map +1 -1
- package/sdk/dist/routes/source-globals.js +174 -0
- package/sdk/dist/routes/source-globals.js.map +1 -0
- package/sdk/dist/routes/stock-tokens.d.ts +69 -0
- package/sdk/dist/routes/stock-tokens.d.ts.map +1 -0
- package/sdk/dist/routes/stock-tokens.generated.d.ts +4 -0
- package/sdk/dist/routes/stock-tokens.generated.d.ts.map +1 -0
- package/sdk/dist/routes/stock-tokens.generated.js +1836 -0
- package/sdk/dist/routes/stock-tokens.generated.js.map +1 -0
- package/sdk/dist/routes/stock-tokens.js +65 -0
- package/sdk/dist/routes/stock-tokens.js.map +1 -0
- package/sdk/dist/routes/token-registry.d.ts +64 -8
- package/sdk/dist/routes/token-registry.d.ts.map +1 -1
- package/sdk/dist/routes/token-registry.js +202 -32
- package/sdk/dist/routes/token-registry.js.map +1 -1
- package/sdk/dist/routes/token-rewrite.d.ts +1 -1
- package/sdk/dist/routes/token-rewrite.d.ts.map +1 -1
- package/sdk/dist/routes/token-rewrite.js +5 -9
- package/sdk/dist/routes/token-rewrite.js.map +1 -1
- package/sdk/dist/routes/unknown-global.d.ts +32 -0
- package/sdk/dist/routes/unknown-global.d.ts.map +1 -0
- package/sdk/dist/routes/unknown-global.js +106 -0
- package/sdk/dist/routes/unknown-global.js.map +1 -0
- package/sdk/dist/routes/vault.d.ts +38 -8
- package/sdk/dist/routes/vault.d.ts.map +1 -1
- package/sdk/dist/routes/vault.js +47 -8
- package/sdk/dist/routes/vault.js.map +1 -1
- package/sdk/dist/sauce-script/builtins.d.ts +309 -0
- package/sdk/dist/sauce-script/declarations.d.ts +3 -0
- package/sdk/dist/sauce-script/declarations.d.ts.map +1 -0
- package/sdk/dist/sauce-script/declarations.js +229 -0
- package/sdk/dist/sauce-script/declarations.js.map +1 -0
- package/sdk/dist/sauce-script/index.d.ts +2714 -0
- package/sdk/dist/sauce-script/ts-plugin.cjs +85 -0
- package/sdk/dist/skills/loader.d.ts.map +1 -1
- package/sdk/dist/skills/loader.js +4 -3
- package/sdk/dist/skills/loader.js.map +1 -1
- package/sdk/dist/std/router/balancer-v2-vault.abi.json +78 -0
- package/sdk/dist/std/router/curve-cryptoswap.abi.json +29 -0
- package/sdk/dist/std/router/curve-stableswap.abi.json +29 -0
- package/sdk/dist/std/router/dodo-v2-pool.abi.json +39 -0
- package/sdk/dist/std/router/lb-pair.abi.json +55 -0
- package/sdk/dist/std/router/package.json +7 -0
- package/sdk/dist/std/router/router.evm.js +567 -0
- package/sdk/dist/std/router/sauce-router.abi.json +202 -0
- package/sdk/dist/std/router/uniswap-v2-pair.abi.json +49 -0
- package/sdk/dist/std/router/woo-pp-v2.abi.json +42 -0
- package/sdk/dist/std/token/permit2.abi.json +226 -0
- package/sdk/dist/std/token/token.evm.js +73 -0
- package/sdk/dist/std/token/token.svm.js +194 -41
- package/sdk/dist/svm/client.d.ts +62 -15
- package/sdk/dist/svm/client.d.ts.map +1 -1
- package/sdk/dist/svm/client.js +103 -42
- package/sdk/dist/svm/client.js.map +1 -1
- package/sdk/dist/svm/engine.d.ts +66 -5
- package/sdk/dist/svm/engine.d.ts.map +1 -1
- package/sdk/dist/svm/engine.js +73 -5
- package/sdk/dist/svm/engine.js.map +1 -1
- package/sdk/dist/svm/index.d.ts +2 -0
- package/sdk/dist/svm/index.d.ts.map +1 -1
- package/sdk/dist/svm/index.js +2 -0
- package/sdk/dist/svm/index.js.map +1 -1
- package/sdk/dist/svm/instructions.d.ts +72 -1
- package/sdk/dist/svm/instructions.d.ts.map +1 -1
- package/sdk/dist/svm/instructions.js +81 -2
- package/sdk/dist/svm/instructions.js.map +1 -1
- package/sdk/dist/svm/kitchen.d.ts +20 -1
- package/sdk/dist/svm/kitchen.d.ts.map +1 -1
- package/sdk/dist/svm/kitchen.js +47 -1
- package/sdk/dist/svm/kitchen.js.map +1 -1
- package/sdk/dist/svm/portal.d.ts +250 -0
- package/sdk/dist/svm/portal.d.ts.map +1 -0
- package/sdk/dist/svm/portal.js +462 -0
- package/sdk/dist/svm/portal.js.map +1 -0
- package/sdk/dist/svm/send.d.ts +18 -2
- package/sdk/dist/svm/send.d.ts.map +1 -1
- package/sdk/dist/svm/send.js +28 -3
- package/sdk/dist/svm/send.js.map +1 -1
- package/sdk/dist/svm/token-accounts.d.ts +49 -0
- package/sdk/dist/svm/token-accounts.d.ts.map +1 -0
- package/sdk/dist/svm/token-accounts.js +58 -0
- package/sdk/dist/svm/token-accounts.js.map +1 -0
- package/sdk/dist/svm/token-extensions.d.ts +18 -7
- package/sdk/dist/svm/token-extensions.d.ts.map +1 -1
- package/sdk/dist/svm/token-extensions.js +58 -5
- package/sdk/dist/svm/token-extensions.js.map +1 -1
- package/sdk/dist/token/evm.js +1 -1
- package/sdk/dist/token/index.d.ts +1 -1
- package/sdk/dist/token/index.js +1 -1
- package/sdk/dist/token/params.js +1 -1
- package/sdk/dist/token/source.js +3 -3
- package/sdk/dist/token/source.js.map +1 -1
- package/sdk/dist/token/types.d.ts +2 -2
- package/sdk/dist/token/types.js +2 -2
- package/sdk/src/protocols/aerodrome/AerodromePoolABI.json +105 -0
- package/sdk/src/protocols/aerodrome/abis.ts +62 -0
- package/sdk/src/protocols/aerodrome-slipstream/AerodromeSlipstreamPoolABI.json +96 -0
- package/sdk/src/protocols/aerodrome-slipstream/abis.ts +55 -0
- package/sdk/src/protocols/camelot/CamelotV2FactoryABI.json +25 -0
- package/sdk/src/protocols/camelot/CamelotV2PairABI.json +109 -0
- package/sdk/src/protocols/camelot/CamelotV3FactoryABI.json +25 -0
- package/sdk/src/protocols/camelot/CamelotV3PoolABI.json +92 -0
- package/sdk/src/protocols/camelot/abis.ts +143 -0
- package/sdk/src/protocols/eco-routes/PortalABI.json +1448 -0
- package/sdk/src/protocols/eco-routes/ProverABI.json +162 -0
- package/sdk/src/protocols/eco-routes/abis.ts +1060 -51
- package/sdk/src/protocols/eco-routes/addresses.generated.ts +45 -62
- package/sdk/src/protocols/eco-routes/lookup.ts +18 -0
- package/sdk/src/protocols/maverick/MaverickV2PoolABI.json +107 -0
- package/sdk/src/protocols/maverick/abis.ts +59 -0
- package/sdk/src/protocols/maverick/addresses.ts +4 -0
- package/sdk/src/protocols/pancakeswap-v2/PancakeSwapV2PairABI.json +72 -0
- package/sdk/src/protocols/pancakeswap-v2/abis.ts +44 -0
- package/sdk/src/protocols/pancakeswap-v3/PancakeSwapV3PoolABI.json +100 -0
- package/sdk/src/protocols/pancakeswap-v3/abis.ts +57 -0
- package/sdk/src/protocols/permit2/Permit2ABI.json +154 -0
- package/sdk/src/protocols/permit2/abis.ts +63 -0
- package/sdk/src/protocols/quickswap/QuickSwapV2FactoryABI.json +25 -0
- package/sdk/src/protocols/quickswap/QuickSwapV2PairABI.json +72 -0
- package/sdk/src/protocols/quickswap/QuickSwapV3FactoryABI.json +25 -0
- package/sdk/src/protocols/quickswap/QuickSwapV3PoolABI.json +88 -0
- package/sdk/src/protocols/quickswap/abis.ts +123 -0
- package/sdk/src/protocols/sushiswap-v2/SushiSwapV2PairABI.json +72 -0
- package/sdk/src/protocols/sushiswap-v2/abis.ts +43 -0
- package/sdk/src/protocols/synthra-v3/SynthraV3PoolABI.json +100 -0
- package/sdk/src/protocols/synthra-v3/abis.ts +56 -0
- package/sdk/src/protocols/trader-joe/LBPairABI.json +185 -0
- package/sdk/src/protocols/trader-joe/abis.ts +102 -0
- package/sdk/src/protocols/trader-joe/addresses.ts +5 -0
- package/sdk/src/protocols/uniswap-v2/UniswapV2PairABI.json +72 -0
- package/sdk/src/protocols/uniswap-v2/abis.ts +45 -0
- package/sdk/src/protocols/uniswap-v3/UniswapV3PoolABI.json +100 -0
- package/sdk/src/protocols/uniswap-v3/abis.ts +56 -0
- package/sdk/src/protocols/uniswap-v4/UniswapV4PoolManagerABI.json +38 -0
- package/sdk/src/protocols/uniswap-v4/UniswapV4StateViewABI.json +307 -0
- package/sdk/src/protocols/uniswap-v4/abis.ts +168 -0
- package/sdk/src/protocols/uniswap-v4/addresses.ts +50 -0
- package/sdk/src/protocols/unitflow-v3/UnitFlowV3PoolABI.json +100 -0
- package/sdk/src/protocols/unitflow-v3/abis.ts +57 -0
- package/sdk/src/protocols/velodrome/VelodromePoolABI.json +105 -0
- package/sdk/src/protocols/velodrome/abis.ts +62 -0
- package/skills/sauce-actions/SKILL.md +166 -0
- package/skills/sauce-actions/examples/swap-and-supply.json +24 -0
- package/skills/sauce-actions/examples/swap-by-key.json +15 -0
- package/skills/sauce-actions/references/actions.md +731 -0
- package/skills/sauce-chains/SKILL.md +137 -0
- package/skills/sauce-chains/examples/chains.sauce.ts +25 -0
- package/skills/sauce-chains/references/arbitrum.md +158 -0
- package/skills/sauce-chains/references/arc.md +107 -0
- package/skills/sauce-chains/references/aurora.md +33 -0
- package/skills/sauce-chains/references/avalanche.md +106 -0
- package/skills/sauce-chains/references/base-stocks.md +77 -0
- package/skills/sauce-chains/references/base.md +141 -0
- package/skills/sauce-chains/references/berachain.md +33 -0
- package/skills/sauce-chains/references/blast.md +60 -0
- package/skills/sauce-chains/references/boba.md +33 -0
- package/skills/sauce-chains/references/bsc.md +97 -0
- package/skills/sauce-chains/references/celo.md +57 -0
- package/skills/sauce-chains/references/core.md +33 -0
- package/skills/sauce-chains/references/cronos.md +33 -0
- package/skills/sauce-chains/references/ethereum-stocks.md +1741 -0
- package/skills/sauce-chains/references/ethereum.md +255 -0
- package/skills/sauce-chains/references/evmos.md +33 -0
- package/skills/sauce-chains/references/fantom.md +61 -0
- package/skills/sauce-chains/references/fuse.md +33 -0
- package/skills/sauce-chains/references/gnosis.md +57 -0
- package/skills/sauce-chains/references/index.md +58 -0
- package/skills/sauce-chains/references/ink.md +55 -0
- package/skills/sauce-chains/references/kava.md +33 -0
- package/skills/sauce-chains/references/klaytn.md +33 -0
- package/skills/sauce-chains/references/linea.md +65 -0
- package/skills/sauce-chains/references/manta.md +33 -0
- package/skills/sauce-chains/references/mantle.md +33 -0
- package/skills/sauce-chains/references/metis.md +54 -0
- package/skills/sauce-chains/references/mode.md +55 -0
- package/skills/sauce-chains/references/monad.md +79 -0
- package/skills/sauce-chains/references/moonbeam.md +33 -0
- package/skills/sauce-chains/references/opbnb.md +55 -0
- package/skills/sauce-chains/references/optimism.md +123 -0
- package/skills/sauce-chains/references/plasma.md +35 -0
- package/skills/sauce-chains/references/polygon.md +123 -0
- package/skills/sauce-chains/references/pulsechain.md +33 -0
- package/skills/sauce-chains/references/ronin.md +35 -0
- package/skills/sauce-chains/references/scroll.md +62 -0
- package/skills/sauce-chains/references/sei.md +55 -0
- package/skills/sauce-chains/references/solana.md +53 -0
- package/skills/sauce-chains/references/sonic.md +57 -0
- package/skills/sauce-chains/references/unichain.md +61 -0
- package/skills/sauce-chains/references/zetachain.md +33 -0
- package/skills/sauce-chains/references/zksync.md +59 -0
- package/skills/sauce-chains/references/zora.md +57 -0
- package/skills/sauce-cli/SKILL.md +366 -0
- package/skills/sauce-cli/examples/pay.sauce.ts +23 -0
- package/skills/sauce-cli/examples/split.sauce.ts +30 -0
- package/skills/sauce-distributed-swap/SKILL.md +392 -0
- package/skills/sauce-distributed-swap/examples/distributed-swap.mts +251 -0
- package/skills/sauce-distributed-swap/examples/distributed-swap.sauce.ts +115 -0
- package/skills/sauce-examples/SKILL.md +96 -0
- package/skills/sauce-globals/SKILL.md +175 -0
- package/skills/sauce-globals/examples/globals.mts +111 -0
- package/skills/sauce-globals/examples/globals.sauce.ts +47 -0
- package/skills/sauce-globals/references/chains.md +53 -0
- package/skills/sauce-globals/references/protocols.md +405 -0
- package/skills/sauce-globals/references/stocks.md +1824 -0
- package/skills/sauce-globals/references/tokens.md +53 -0
- package/skills/sauce-intents/SKILL.md +505 -0
- package/skills/sauce-intents/examples/cross-chain.sauce.ts +37 -0
- package/skills/sauce-intents/examples/fund-by-transfer.sauce.ts +54 -0
- package/skills/sauce-intents/examples/intents.mts +343 -0
- package/skills/sauce-intents/examples/swap-on-base.sauce.ts +135 -0
- package/skills/sauce-intents/references/portal.md +77 -0
- package/skills/sauce-overview/SKILL.md +161 -0
- package/skills/sauce-protocols/SKILL.md +118 -0
- package/skills/sauce-protocols/examples/protocols.mts +77 -0
- package/skills/sauce-protocols/examples/protocols.sauce.ts +27 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/aave-v2.md +35 -17
- package/skills/sauce-protocols/references/aave-v3.md +144 -0
- package/skills/sauce-protocols/references/aave-v4.md +50 -0
- package/skills/sauce-protocols/references/abracadabra.md +72 -0
- package/skills/sauce-protocols/references/across.md +73 -0
- package/skills/sauce-protocols/references/aerodrome-slipstream.md +50 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/aerodrome.md +43 -24
- package/skills/sauce-protocols/references/aevo.md +49 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/alchemix.md +10 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/ambient.md +14 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/arbitrum-bridge.md +11 -14
- package/{sdk/src/skills → skills/sauce-protocols/references}/arrakis.md +10 -26
- package/skills/sauce-protocols/references/axelar.md +56 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/balancer-v2.md +13 -29
- package/{sdk/src/skills → skills/sauce-protocols/references}/base-bridge.md +11 -16
- package/{sdk/src/skills → skills/sauce-protocols/references}/baseswap.md +12 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/beefy.md +10 -30
- package/{sdk/src/skills → skills/sauce-protocols/references}/benqi.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/camelot.md +13 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/cbeth.md +10 -22
- package/skills/sauce-protocols/references/cctp.md +47 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/celer.md +11 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/chainlink-ccip.md +11 -21
- package/skills/sauce-protocols/references/chainlink.md +47 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/circle-gateway.md +12 -38
- package/{sdk/src/skills → skills/sauce-protocols/references}/compound-v2.md +11 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/compound-v3.md +43 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/connext.md +11 -15
- package/{sdk/src/skills → skills/sauce-protocols/references}/convex.md +10 -28
- package/{sdk/src/skills → skills/sauce-protocols/references}/cowswap.md +12 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/crvusd.md +10 -19
- package/skills/sauce-protocols/references/curve.md +98 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/debridge.md +11 -33
- package/{sdk/src/skills → skills/sauce-protocols/references}/dodo.md +13 -18
- package/skills/sauce-protocols/references/eigenlayer.md +48 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/ens.md +10 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/erc20.md +10 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/erc3156.md +10 -13
- package/{sdk/src/skills → skills/sauce-protocols/references}/erc4626.md +11 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/ethena.md +10 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/etherfi.md +10 -32
- package/{sdk/src/skills → skills/sauce-protocols/references}/euler-v2.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/fenix.md +12 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/fluid.md +11 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/frax-ether.md +10 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/frax.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/gains-network.md +11 -28
- package/skills/sauce-protocols/references/gamma.md +57 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/gelato.md +12 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/gho.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/gmx-v1.md +12 -34
- package/{sdk/src/skills → skills/sauce-protocols/references}/gmx-v2.md +15 -28
- package/skills/sauce-protocols/references/harvest.md +41 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/hegic.md +10 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/hop.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/hyperlane.md +11 -21
- package/skills/sauce-protocols/references/index.md +355 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/instadapp.md +10 -18
- package/skills/sauce-protocols/references/kelp.md +46 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/kim.md +12 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/kyberswap-aggregator.md +12 -35
- package/skills/sauce-protocols/references/kyberswap.md +72 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/layerbank.md +11 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/layerzero.md +11 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/level-finance.md +10 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/lido.md +10 -28
- package/{sdk/src/skills → skills/sauce-protocols/references}/lifi.md +11 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/linea-bridge.md +11 -14
- package/{sdk/src/skills → skills/sauce-protocols/references}/liquity-v1.md +10 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/liquity-v2.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/lynex.md +12 -18
- package/skills/sauce-protocols/references/maker.md +57 -0
- package/skills/sauce-protocols/references/mantle-meth.md +43 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/maverick.md +13 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/moonwell.md +11 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/morpho-blue.md +44 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/mux-protocol.md +10 -30
- package/skills/sauce-protocols/references/olympus.md +39 -0
- package/skills/sauce-protocols/references/oneinch.md +81 -0
- package/skills/sauce-protocols/references/openocean.md +69 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/optimism-bridge.md +11 -16
- package/{sdk/src/skills → skills/sauce-protocols/references}/opyn.md +10 -21
- package/{sdk/src/skills → skills/sauce-protocols/references}/pancakeswap-v2.md +39 -41
- package/skills/sauce-protocols/references/pancakeswap-v3.md +72 -0
- package/skills/sauce-protocols/references/paraswap.md +39 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/pendle.md +47 -29
- package/skills/sauce-protocols/references/permit2.md +101 -0
- package/skills/sauce-protocols/references/perpetual-protocol.md +53 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/polygon-bridge.md +11 -17
- package/{sdk/src/skills → skills/sauce-protocols/references}/premia.md +10 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/puffer.md +10 -21
- package/skills/sauce-protocols/references/pyth.md +45 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/quickswap.md +13 -27
- package/{sdk/src/skills → skills/sauce-protocols/references}/radiant.md +11 -15
- package/{sdk/src/skills → skills/sauce-protocols/references}/ramses.md +12 -18
- package/skills/sauce-protocols/references/reflexer.md +52 -0
- package/skills/sauce-protocols/references/registry/aave-v2.md +43 -0
- package/skills/sauce-protocols/references/registry/aave-v3.md +62 -0
- package/skills/sauce-protocols/references/registry/aave-v4.md +80 -0
- package/skills/sauce-protocols/references/registry/abracadabra.md +54 -0
- package/skills/sauce-protocols/references/registry/across.md +57 -0
- package/skills/sauce-protocols/references/registry/aerodrome-slipstream.md +72 -0
- package/skills/sauce-protocols/references/registry/aerodrome.md +58 -0
- package/skills/sauce-protocols/references/registry/aevo.md +39 -0
- package/skills/sauce-protocols/references/registry/alchemix.md +46 -0
- package/skills/sauce-protocols/references/registry/ambient.md +40 -0
- package/skills/sauce-protocols/references/registry/arbitrum-bridge.md +40 -0
- package/skills/sauce-protocols/references/registry/arrakis.md +49 -0
- package/skills/sauce-protocols/references/registry/axelar.md +65 -0
- package/skills/sauce-protocols/references/registry/balancer-v2.md +50 -0
- package/skills/sauce-protocols/references/registry/base-bridge.md +42 -0
- package/skills/sauce-protocols/references/registry/baseswap.md +40 -0
- package/skills/sauce-protocols/references/registry/beefy.md +51 -0
- package/skills/sauce-protocols/references/registry/benqi.md +49 -0
- package/skills/sauce-protocols/references/registry/camelot.md +82 -0
- package/skills/sauce-protocols/references/registry/cbeth.md +43 -0
- package/skills/sauce-protocols/references/registry/cctp.md +48 -0
- package/skills/sauce-protocols/references/registry/celer.md +44 -0
- package/skills/sauce-protocols/references/registry/chainlink-ccip.md +45 -0
- package/skills/sauce-protocols/references/registry/chainlink.md +49 -0
- package/skills/sauce-protocols/references/registry/circle-gateway.md +70 -0
- package/skills/sauce-protocols/references/registry/compound-v2.md +53 -0
- package/skills/sauce-protocols/references/registry/compound-v3.md +52 -0
- package/skills/sauce-protocols/references/registry/connext.md +41 -0
- package/skills/sauce-protocols/references/registry/convex.md +51 -0
- package/skills/sauce-protocols/references/registry/cowswap.md +40 -0
- package/skills/sauce-protocols/references/registry/crvusd.md +40 -0
- package/skills/sauce-protocols/references/registry/curve.md +81 -0
- package/skills/sauce-protocols/references/registry/debridge.md +59 -0
- package/skills/sauce-protocols/references/registry/dodo.md +39 -0
- package/skills/sauce-protocols/references/registry/eco-routes.md +65 -0
- package/skills/sauce-protocols/references/registry/eigenlayer.md +58 -0
- package/skills/sauce-protocols/references/registry/ens.md +49 -0
- package/skills/sauce-protocols/references/registry/erc20.md +44 -0
- package/skills/sauce-protocols/references/registry/erc3156.md +38 -0
- package/skills/sauce-protocols/references/registry/erc4626.md +51 -0
- package/skills/sauce-protocols/references/registry/ethena.md +50 -0
- package/skills/sauce-protocols/references/registry/etherfi.md +57 -0
- package/skills/sauce-protocols/references/registry/euler-v2.md +49 -0
- package/skills/sauce-protocols/references/registry/fenix.md +39 -0
- package/skills/sauce-protocols/references/registry/fluid.md +48 -0
- package/skills/sauce-protocols/references/registry/frax-ether.md +49 -0
- package/skills/sauce-protocols/references/registry/frax.md +40 -0
- package/skills/sauce-protocols/references/registry/gains-network.md +43 -0
- package/skills/sauce-protocols/references/registry/gamma.md +56 -0
- package/skills/sauce-protocols/references/registry/gelato.md +45 -0
- package/skills/sauce-protocols/references/registry/gho.md +40 -0
- package/skills/sauce-protocols/references/registry/gmx-v1.md +59 -0
- package/skills/sauce-protocols/references/registry/gmx-v2.md +41 -0
- package/skills/sauce-protocols/references/registry/harvest.md +44 -0
- package/skills/sauce-protocols/references/registry/hegic.md +39 -0
- package/skills/sauce-protocols/references/registry/hop.md +49 -0
- package/skills/sauce-protocols/references/registry/hyperlane.md +48 -0
- package/skills/sauce-protocols/references/registry/instadapp.md +39 -0
- package/skills/sauce-protocols/references/registry/kelp.md +47 -0
- package/skills/sauce-protocols/references/registry/kim.md +39 -0
- package/skills/sauce-protocols/references/registry/kyberswap-aggregator.md +49 -0
- package/skills/sauce-protocols/references/registry/kyberswap.md +63 -0
- package/skills/sauce-protocols/references/registry/layerbank.md +54 -0
- package/skills/sauce-protocols/references/registry/layerzero.md +49 -0
- package/skills/sauce-protocols/references/registry/level-finance.md +41 -0
- package/skills/sauce-protocols/references/registry/lido.md +51 -0
- package/skills/sauce-protocols/references/registry/lifi.md +48 -0
- package/skills/sauce-protocols/references/registry/linea-bridge.md +40 -0
- package/skills/sauce-protocols/references/registry/liquity-v1.md +42 -0
- package/skills/sauce-protocols/references/registry/liquity-v2.md +40 -0
- package/skills/sauce-protocols/references/registry/lynex.md +39 -0
- package/skills/sauce-protocols/references/registry/maker.md +55 -0
- package/skills/sauce-protocols/references/registry/mantle-meth.md +48 -0
- package/skills/sauce-protocols/references/registry/maverick.md +60 -0
- package/skills/sauce-protocols/references/registry/moonwell.md +49 -0
- package/skills/sauce-protocols/references/registry/morpho-blue.md +47 -0
- package/skills/sauce-protocols/references/registry/mux-protocol.md +49 -0
- package/skills/sauce-protocols/references/registry/olympus.md +42 -0
- package/skills/sauce-protocols/references/registry/oneinch.md +45 -0
- package/skills/sauce-protocols/references/registry/openocean.md +44 -0
- package/skills/sauce-protocols/references/registry/optimism-bridge.md +42 -0
- package/skills/sauce-protocols/references/registry/opyn.md +42 -0
- package/skills/sauce-protocols/references/registry/pancakeswap-v2.md +71 -0
- package/skills/sauce-protocols/references/registry/pancakeswap-v3.md +76 -0
- package/skills/sauce-protocols/references/registry/paraswap.md +51 -0
- package/skills/sauce-protocols/references/registry/pendle.md +43 -0
- package/skills/sauce-protocols/references/registry/permit2.md +50 -0
- package/skills/sauce-protocols/references/registry/perpetual-protocol.md +49 -0
- package/skills/sauce-protocols/references/registry/polygon-bridge.md +43 -0
- package/skills/sauce-protocols/references/registry/premia.md +40 -0
- package/skills/sauce-protocols/references/registry/puffer.md +43 -0
- package/skills/sauce-protocols/references/registry/pyth.md +40 -0
- package/skills/sauce-protocols/references/registry/quickswap.md +80 -0
- package/skills/sauce-protocols/references/registry/radiant.md +41 -0
- package/skills/sauce-protocols/references/registry/ramses.md +39 -0
- package/skills/sauce-protocols/references/registry/reflexer.md +56 -0
- package/skills/sauce-protocols/references/registry/renzo.md +47 -0
- package/skills/sauce-protocols/references/registry/rocket-pool.md +49 -0
- package/skills/sauce-protocols/references/registry/sablier.md +40 -0
- package/skills/sauce-protocols/references/registry/safe.md +47 -0
- package/skills/sauce-protocols/references/registry/scroll-bridge.md +48 -0
- package/skills/sauce-protocols/references/registry/seamless.md +42 -0
- package/skills/sauce-protocols/references/registry/seaport.md +44 -0
- package/skills/sauce-protocols/references/registry/silo.md +48 -0
- package/skills/sauce-protocols/references/registry/socket.md +44 -0
- package/skills/sauce-protocols/references/registry/sommelier.md +43 -0
- package/skills/sauce-protocols/references/registry/spark.md +42 -0
- package/skills/sauce-protocols/references/registry/spookyswap.md +40 -0
- package/skills/sauce-protocols/references/registry/squid.md +45 -0
- package/skills/sauce-protocols/references/registry/stader.md +47 -0
- package/skills/sauce-protocols/references/registry/stargate.md +45 -0
- package/skills/sauce-protocols/references/registry/superfluid.md +49 -0
- package/skills/sauce-protocols/references/registry/sushiswap-v2.md +71 -0
- package/skills/sauce-protocols/references/registry/swell.md +49 -0
- package/skills/sauce-protocols/references/registry/synapse.md +46 -0
- package/skills/sauce-protocols/references/registry/syncswap.md +38 -0
- package/skills/sauce-protocols/references/registry/synthetix-v3.md +48 -0
- package/skills/sauce-protocols/references/registry/synthra-v3.md +77 -0
- package/skills/sauce-protocols/references/registry/thales.md +51 -0
- package/skills/sauce-protocols/references/registry/thena.md +39 -0
- package/skills/sauce-protocols/references/registry/thruster.md +38 -0
- package/skills/sauce-protocols/references/registry/tokemak.md +45 -0
- package/skills/sauce-protocols/references/registry/trader-joe.md +66 -0
- package/skills/sauce-protocols/references/registry/uniswap-v2.md +77 -0
- package/skills/sauce-protocols/references/registry/uniswap-v3.md +113 -0
- package/skills/sauce-protocols/references/registry/uniswap-v4.md +117 -0
- package/skills/sauce-protocols/references/registry/unitflow-v3.md +65 -0
- package/skills/sauce-protocols/references/registry/velodrome.md +58 -0
- package/skills/sauce-protocols/references/registry/venus.md +62 -0
- package/skills/sauce-protocols/references/registry/vertex.md +46 -0
- package/skills/sauce-protocols/references/registry/wormhole.md +59 -0
- package/skills/sauce-protocols/references/registry/yearn-v3.md +46 -0
- package/skills/sauce-protocols/references/registry/zerolend.md +41 -0
- package/skills/sauce-protocols/references/registry/zerox.md +44 -0
- package/skills/sauce-protocols/references/registry/zksync-bridge.md +40 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/renzo.md +10 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/rocket-pool.md +10 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/sablier.md +10 -27
- package/skills/sauce-protocols/references/safe.md +42 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/scroll-bridge.md +11 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/seamless.md +11 -16
- package/skills/sauce-protocols/references/seaport.md +38 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/silo.md +11 -20
- package/{sdk/src/skills → skills/sauce-protocols/references}/socket.md +11 -18
- package/skills/sauce-protocols/references/sommelier.md +40 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/spark.md +11 -16
- package/{sdk/src/skills → skills/sauce-protocols/references}/spookyswap.md +12 -19
- package/{sdk/src/skills → skills/sauce-protocols/references}/squid.md +11 -21
- package/skills/sauce-protocols/references/stader.md +39 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/stargate.md +11 -22
- package/{sdk/src/skills → skills/sauce-protocols/references}/superfluid.md +10 -28
- package/{sdk/src/skills → skills/sauce-protocols/references}/sushiswap-v2.md +38 -43
- package/skills/sauce-protocols/references/swell.md +49 -0
- package/skills/sauce-protocols/references/synapse.md +54 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/syncswap.md +12 -17
- package/{sdk/src/skills → skills/sauce-protocols/references}/synthetix-v3.md +10 -29
- package/skills/sauce-protocols/references/synthra-v3.md +63 -0
- package/skills/sauce-protocols/references/thales.md +58 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/thena.md +12 -18
- package/{sdk/src/skills → skills/sauce-protocols/references}/thruster.md +13 -18
- package/skills/sauce-protocols/references/tokemak.md +40 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/trader-joe.md +13 -26
- package/{sdk/src/skills → skills/sauce-protocols/references}/uniswap-v2.md +46 -44
- package/skills/sauce-protocols/references/uniswap-v3.md +188 -0
- package/skills/sauce-protocols/references/uniswap-v4.md +155 -0
- package/skills/sauce-protocols/references/unitflow-v3.md +63 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/velodrome.md +12 -24
- package/{sdk/src/skills → skills/sauce-protocols/references}/venus.md +12 -31
- package/skills/sauce-protocols/references/vertex.md +42 -0
- package/skills/sauce-protocols/references/wormhole.md +57 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/yearn-v3.md +10 -25
- package/{sdk/src/skills → skills/sauce-protocols/references}/zerolend.md +11 -15
- package/skills/sauce-protocols/references/zerox.md +39 -0
- package/{sdk/src/skills → skills/sauce-protocols/references}/zksync-bridge.md +11 -14
- package/skills/sauce-script/SKILL.md +407 -0
- package/skills/sauce-script/examples/IOracle.json +12 -0
- package/skills/sauce-script/examples/saucescript.mts +167 -0
- package/skills/sauce-script/examples/twap.sauce.ts +29 -0
- package/skills/sauce-script/references/builtins.json +823 -0
- package/skills/sauce-script/references/builtins.md +674 -0
- package/skills/sauce-solana/SKILL.md +322 -0
- package/skills/sauce-solana/examples/solana.mts +166 -0
- package/skills/sauce-solana/examples/solana.sauce.ts +45 -0
- package/skills/sauce-solana/examples/token-2022.sauce.ts +38 -0
- package/skills/sauce-swaps/SKILL.md +200 -0
- package/skills/sauce-swaps/examples/swap-leg.sauce.ts +50 -0
- package/skills/sauce-swaps/examples/swaps.mts +124 -0
- package/skills/sauce-typescript/SKILL.md +178 -0
- package/skills/sauce-typescript/examples/actions.mts +100 -0
- package/skills/sauce-typescript/examples/compiler.mts +69 -0
- package/skills/sauce-typescript/examples/cook.mts +65 -0
- package/skills/sauce-typescript/examples/verify.mts +104 -0
- package/dev-tools/README.md +0 -16
- package/dev-tools/artifacts/IERC20.json +0 -1
- package/dev-tools/artifacts/ISauceRouter.json +0 -1
- package/dev-tools/artifacts/IUniswapV3Pool.json +0 -1
- package/dev-tools/artifacts/Router.json +0 -1
- package/dev-tools/hardhat.config.cjs +0 -18
- package/dev-tools/sauce/js/add.js +0 -4
- package/dev-tools/sauce/js/call.js +0 -8
- package/dev-tools/sauce/js/erc20.js +0 -18
- package/dev-tools/sauce/js/example.js +0 -6
- package/dev-tools/sauce/js/fibonacci.js +0 -13
- package/dev-tools/sauce/ts/add.ts +0 -4
- package/dev-tools/sauce/ts/call.ts +0 -8
- package/dev-tools/sauce/ts/erc20.ts +0 -18
- package/dev-tools/sauce/ts/example.ts +0 -6
- package/dev-tools/sauce/ts/fibonacci.ts +0 -13
- package/dev-tools/sauce/ts/saucescript.d.ts +0 -1
- package/dev-tools/sauce/ts/tsconfig.json +0 -12
- package/dev-tools/scripts/deploy.ts +0 -107
- package/dev-tools/scripts/init.js +0 -132
- package/dev-tools/scripts/run.ts +0 -67
- package/dev-tools/scripts/start-fork.sh +0 -92
- package/dev-tools/scripts/start-local.sh +0 -120
- package/dev-tools/scripts/stop-local.sh +0 -40
- package/dev-tools/scripts/sync-artifacts.js +0 -46
- package/dev-tools/scripts/sync-price.ts +0 -58
- package/dev-tools/src/contracts.ts +0 -59
- package/dev-tools/src/runner.ts +0 -355
- package/dev-tools/src/svm-local.ts +0 -305
- package/dev-tools/src/sync-price.ts +0 -217
- package/sdk/dist/deployments/v12.generated.d.ts +0 -95
- package/sdk/dist/deployments/v12.generated.d.ts.map +0 -1
- package/sdk/dist/deployments/v12.generated.js +0 -50
- package/sdk/dist/deployments/v12.generated.js.map +0 -1
- package/sdk/dist/swap/index.d.ts +0 -29
- package/sdk/dist/swap/index.d.ts.map +0 -1
- package/sdk/dist/swap/index.js +0 -27
- package/sdk/dist/swap/index.js.map +0 -1
- package/sdk/dist/swap/params.d.ts +0 -29
- package/sdk/dist/swap/params.d.ts.map +0 -1
- package/sdk/dist/swap/params.js +0 -123
- package/sdk/dist/swap/params.js.map +0 -1
- package/sdk/dist/swap/source.d.ts +0 -30
- package/sdk/dist/swap/source.d.ts.map +0 -1
- package/sdk/dist/swap/source.js +0 -101
- package/sdk/dist/swap/source.js.map +0 -1
- package/sdk/dist/swap/types.d.ts +0 -160
- package/sdk/dist/swap/types.d.ts.map +0 -1
- package/sdk/dist/swap/types.js +0 -106
- package/sdk/dist/swap/types.js.map +0 -1
- package/sdk/src/skills/aave-v3.md +0 -134
- package/sdk/src/skills/aave-v4.md +0 -91
- package/sdk/src/skills/abracadabra.md +0 -93
- package/sdk/src/skills/across.md +0 -90
- package/sdk/src/skills/aerodrome-slipstream.md +0 -57
- package/sdk/src/skills/aevo.md +0 -58
- package/sdk/src/skills/axelar.md +0 -80
- package/sdk/src/skills/chainlink.md +0 -62
- package/sdk/src/skills/curve.md +0 -141
- package/sdk/src/skills/eigenlayer.md +0 -71
- package/sdk/src/skills/gamma.md +0 -79
- package/sdk/src/skills/harvest.md +0 -49
- package/sdk/src/skills/index.md +0 -299
- package/sdk/src/skills/kelp.md +0 -60
- package/sdk/src/skills/kyberswap.md +0 -100
- package/sdk/src/skills/loader.ts +0 -46
- package/sdk/src/skills/maker.md +0 -79
- package/sdk/src/skills/mantle-meth.md +0 -60
- package/sdk/src/skills/olympus.md +0 -46
- package/sdk/src/skills/oneinch.md +0 -64
- package/sdk/src/skills/openocean.md +0 -86
- package/sdk/src/skills/pancakeswap-v3.md +0 -104
- package/sdk/src/skills/paraswap.md +0 -67
- package/sdk/src/skills/permit2.md +0 -73
- package/sdk/src/skills/perpetual-protocol.md +0 -73
- package/sdk/src/skills/pyth.md +0 -58
- package/sdk/src/skills/reflexer.md +0 -73
- package/sdk/src/skills/safe.md +0 -56
- package/sdk/src/skills/seaport.md +0 -65
- package/sdk/src/skills/sommelier.md +0 -47
- package/sdk/src/skills/stader.md +0 -53
- package/sdk/src/skills/swell.md +0 -65
- package/sdk/src/skills/synapse.md +0 -63
- package/sdk/src/skills/synthra-v3.md +0 -57
- package/sdk/src/skills/thales.md +0 -74
- package/sdk/src/skills/tokemak.md +0 -48
- package/sdk/src/skills/uniswap-v3.md +0 -202
- package/sdk/src/skills/uniswap-v4.md +0 -125
- package/sdk/src/skills/unitflow-v3.md +0 -62
- package/sdk/src/skills/vertex.md +0 -55
- package/sdk/src/skills/wormhole.md +0 -76
- package/sdk/src/skills/zerox.md +0 -51
|
@@ -0,0 +1,731 @@
|
|
|
1
|
+
<!-- Generated from the actions JSON Schema the package ships: every action `sauce actions` takes. Do not edit. -->
|
|
2
|
+
|
|
3
|
+
# Every action
|
|
4
|
+
|
|
5
|
+
A sequence of protocol actions that compiles to one Sauce program executing on one chain. Amounts are base-10 strings. A token is a registry symbol ("USDC", or a tokenized stock's, its issuer's ticker: "SPCXc") or an address, and a protocol contract a namespace reference ("UniswapV3.Factory") or an address; a name resolves on the chain the program is compiled for, so a document with no chainId compiles for any chain where its names exist. Beyond this schema, a program must satisfy: every address with mixed-case hex carries a valid EIP-55 checksum; every amount fits its declared width; a first action that takes an amount sets `amount`; an amountRef names a saveOutputAs set by an earlier action, and is not combined with `amount`; argument names are unique; the value of every balanceOf/nativeBalance/argument action is read; and every token symbol and namespace reference exists on the chain it is compiled for.
|
|
6
|
+
|
|
7
|
+
## The document
|
|
8
|
+
|
|
9
|
+
| Field | Value | Required | Meaning |
|
|
10
|
+
| --- | --- | --- | --- |
|
|
11
|
+
| `$schema` | string | no | The schema this document declares; ignored. |
|
|
12
|
+
| `version` | `1` | yes | |
|
|
13
|
+
| `chainId` | chain id, an integer ≥ 1 | no | The chain the document is written for; compiling it for another is refused. Leave it out of a document that names its tokens and contracts: it then compiles for any chain where those names exist, the chain chosen when it is compiled. |
|
|
14
|
+
| `actions` | array of action (at least 1) | yes | The actions, in execution order. |
|
|
15
|
+
|
|
16
|
+
## Values
|
|
17
|
+
|
|
18
|
+
| Value | Takes |
|
|
19
|
+
| --- | --- |
|
|
20
|
+
| token | A token: a registry symbol, or an address. |
|
|
21
|
+
| token or `"native"` | A token: a registry symbol, an address, or "native" for the native currency, which the venue keys as the zero address. |
|
|
22
|
+
| contract | A protocol contract: a namespace reference, or an address. |
|
|
23
|
+
| token or contract | A contract that is also a token (WETH, wstETH): a registry symbol, a namespace reference, or an address. |
|
|
24
|
+
| address | An address: 0x + 40 hex digits. A mixed-case address must carry a valid EIP-55 checksum. |
|
|
25
|
+
| address or `"self"` | An address, or "self" for the executing Pot. |
|
|
26
|
+
| address or 32-byte account | An address, or a 32-byte account on a non-EVM destination (0x + 64 hex digits). |
|
|
27
|
+
| hex bytes | 0x-prefixed hex bytes, an even number of digits. |
|
|
28
|
+
| 32 bytes | 32 bytes: 0x + 64 hex digits. |
|
|
29
|
+
| name | A name that becomes a local variable in the emitted SauceScript. |
|
|
30
|
+
| base-10 integer string | Digits only: no sign, exponent or leading zeros. `uint<N>` is the width it must fit. |
|
|
31
|
+
|
|
32
|
+
## The actions
|
|
33
|
+
|
|
34
|
+
| Action | Does |
|
|
35
|
+
| --- | --- |
|
|
36
|
+
| [`uniswapV2Swap`](#uniswapv2swap) | Swaps through one Uniswap V2 pair (or a fork's), priced from its reserves and paid by a push. |
|
|
37
|
+
| [`uniswapV3Swap`](#uniswapv3swap) | Swaps through one Uniswap V3 pool (or a fork's), through the Pot's Router, which answers its callback. |
|
|
38
|
+
| [`uniswapV4Swap`](#uniswapv4swap) | Swaps through one Uniswap V4 pool, named by its key, through the Pot's Router, which settles with the PoolManager. |
|
|
39
|
+
| [`curveSwap`](#curveswap) | Swaps through a Curve pool's 4-argument `exchange`, approving exactly the input; the output is a balance delta. |
|
|
40
|
+
| [`balancerV2Swap`](#balancerv2swap) | Swaps through one Balancer V2 pool, approving the Vault for exactly the input. |
|
|
41
|
+
| [`dodoV2Swap`](#dodov2swap) | Swaps through one DODO V2 pool (DVM, DPP or DSP), paid by a push. |
|
|
42
|
+
| [`traderJoeLBSwap`](#traderjoelbswap) | Swaps through one Trader Joe Liquidity Book pair, paid by a push. |
|
|
43
|
+
| [`woofiSwap`](#woofiswap) | Swaps through WOOFi's WooPPV2, paid by a push. |
|
|
44
|
+
| [`maverickV2Swap`](#maverickv2swap) | Swaps through one Maverick V2 pool, through the Pot's Router, which pays what the pool asks for. |
|
|
45
|
+
| [`curveRouterNGSwap`](#curverouterngswap) | Swaps along a Curve RouterNG route of up to five hops. |
|
|
46
|
+
| [`balancerV2BatchSwap`](#balancerv2batchswap) | Swaps along Balancer V2 pools in one batch; the output is a balance delta. |
|
|
47
|
+
| [`balancerV3Swap`](#balancerv3swap) | Swaps an exact input through one Balancer V3 pool; the router pays the Pot and pulls through Permit2. |
|
|
48
|
+
| [`ambientSwap`](#ambientswap) | Swaps through an Ambient (CrocSwap) pool; the dex pays the Pot, and the output is a balance delta. |
|
|
49
|
+
| [`dodoV1Swap`](#dodov1swap) | Swaps through legacy DODO V1 (Classical) pairs via the DODO proxy, which pays the Pot. |
|
|
50
|
+
| [`carbonSwap`](#carbonswap) | Trades against Carbon strategies by source amount; the controller pays the Pot. |
|
|
51
|
+
| [`fraxswapSwap`](#fraxswapswap) | Swaps an exact input along a Fraxswap path; the output is a balance delta. |
|
|
52
|
+
| [`fluidDexT1Swap`](#fluiddext1swap) | Swaps an exact ERC-20 input through a Fluid DEX T1 pool. |
|
|
53
|
+
| [`acrossBridge`](#acrossbridge) | Deposits into an Across SpokePool for the same token on the destination, less the relayer fee. |
|
|
54
|
+
| [`stargateBridge`](#stargatebridge) | Sends through a Stargate V2 ERC-20 pool (taxi), paying the LayerZero fee it quotes. |
|
|
55
|
+
| [`cctpBridge`](#cctpbridge) | Burns USDC through Circle's CCTP V2 TokenMessenger for minting on the destination. |
|
|
56
|
+
| [`hyperlaneBridge`](#hyperlanebridge) | Transfers through a Hyperlane ERC-20 warp route, paying the interchain gas it quotes. |
|
|
57
|
+
| [`wrapETH`](#wrapeth) | Wraps native ETH into WETH. |
|
|
58
|
+
| [`unwrapETH`](#unwrapeth) | Unwraps WETH into native ETH. |
|
|
59
|
+
| [`wrapStETH`](#wrapsteth) | Wraps stETH into wstETH; the output is the wstETH minted. |
|
|
60
|
+
| [`unwrapStETH`](#unwrapsteth) | Unwraps wstETH; the output is the stETH returned. |
|
|
61
|
+
| [`lidoStake`](#lidostake) | Stakes native ETH with Lido; the output is the stETH received. |
|
|
62
|
+
| [`lidoUnstake`](#lidounstake) | Requests a Lido withdrawal of stETH; the ETH is claimed later with the withdrawal NFT. |
|
|
63
|
+
| [`rocketPoolStake`](#rocketpoolstake) | Stakes native ETH with Rocket Pool; the output is the rETH received. |
|
|
64
|
+
| [`rocketPoolUnstake`](#rocketpoolunstake) | Burns rETH; the output is the ETH received. |
|
|
65
|
+
| [`etherFiStake`](#etherfistake) | Stakes native ETH with ether.fi; the output is the eETH received. |
|
|
66
|
+
| [`aaveV3Supply`](#aavev3supply) | Supplies a token to Aave V3. |
|
|
67
|
+
| [`aaveV3Withdraw`](#aavev3withdraw) | Withdraws a token from Aave V3; the output is the amount withdrawn. |
|
|
68
|
+
| [`aaveV3Borrow`](#aavev3borrow) | Borrows a token from Aave V3 at the variable rate, the only rate it offers. |
|
|
69
|
+
| [`aaveV3Repay`](#aavev3repay) | Repays an Aave V3 variable-rate debt. |
|
|
70
|
+
| [`compoundV3Supply`](#compoundv3supply) | Supplies a token to a Compound V3 (Comet) market. |
|
|
71
|
+
| [`compoundV3Withdraw`](#compoundv3withdraw) | Withdraws a token from a Compound V3 (Comet) market. |
|
|
72
|
+
| [`transfer`](#transfer) | Transfers an ERC-20 token. |
|
|
73
|
+
| [`approve`](#approve) | Approves an ERC-20 spender, resetting a non-zero allowance first. |
|
|
74
|
+
| [`permit2Approve`](#permit2approve) | Grants a spender a Permit2 allowance; the token must also be approved to Permit2. |
|
|
75
|
+
| [`balanceOf`](#balanceof) | Reads the Pot's balance of a token; the output is that balance. |
|
|
76
|
+
| [`nativeBalance`](#nativebalance) | Reads the Pot's native balance; the output is that balance. |
|
|
77
|
+
| [`argument`](#argument) | Declares a runtime argument of the compiled program; the output is the value supplied. |
|
|
78
|
+
|
|
79
|
+
### uniswapV2Swap
|
|
80
|
+
|
|
81
|
+
Swaps through one Uniswap V2 pair (or a fork's), priced from its reserves and paid by a push. Calls @sauce/router uniswapV2: pair.getReserves, an ERC-20 transfer to the pair, pair.swap. Give exactly one of: pool; factory.
|
|
82
|
+
|
|
83
|
+
It names its pool one of 2 ways: `pool`, or `factory`.
|
|
84
|
+
|
|
85
|
+
| Field | Value | Required | Meaning |
|
|
86
|
+
| --- | --- | --- | --- |
|
|
87
|
+
| `type` | `"uniswapV2Swap"` | yes | the action |
|
|
88
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
89
|
+
| `pool` | contract | one form (above) | the pair; or leave it out and give `factory` |
|
|
90
|
+
| `factory` | contract | one form (above) | instead of `pool`: a Uniswap V2-style factory ("UniswapV2.Factory"), whose getPair(tokenIn, tokenOut) is the pair; the program reads it from the factory on chain and reverts if there is none |
|
|
91
|
+
| `tokenIn` | token | yes | the token sold, pushed to the pair |
|
|
92
|
+
| `tokenOut` | token | yes | the token bought; the direction is the pair's sort order |
|
|
93
|
+
| `feePpm` | integer 0–999999 | no | the pair's LP fee in parts per million; absent or 0 is 3000 (0.30%), PancakeSwap V2 is 2500 |
|
|
94
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
95
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
96
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
97
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
98
|
+
|
|
99
|
+
### uniswapV3Swap
|
|
100
|
+
|
|
101
|
+
Swaps through one Uniswap V3 pool (or a fork's), through the Pot's Router, which answers its callback. Calls @sauce/router uniswapV3: Router.swapV3. Give exactly one of: pool; factory + fee; factory + tickSpacing.
|
|
102
|
+
|
|
103
|
+
It names its pool one of 3 ways: `pool`, or `factory` + `fee`, or `factory` + `tickSpacing`.
|
|
104
|
+
|
|
105
|
+
| Field | Value | Required | Meaning |
|
|
106
|
+
| --- | --- | --- | --- |
|
|
107
|
+
| `type` | `"uniswapV3Swap"` | yes | the action |
|
|
108
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
109
|
+
| `pool` | contract | one form (above) | the pool; or leave it out and give `factory` with `fee` or `tickSpacing` |
|
|
110
|
+
| `factory` | contract | one form (above) | instead of `pool`: the factory whose getPool(tokenIn, tokenOut, key) is the pool — a Uniswap V3-style factory with `fee` ("UniswapV3.Factory", "PancakeswapV3.Factory"), or Aerodrome Slipstream's with `tickSpacing` ("AerodromeSlipstream.CLFactory"); the program reads it from the factory on chain and reverts if there is none |
|
|
111
|
+
| `fee` | integer 0–16777215 | one form (above) | with `factory`: the pool's fee tier, in hundredths of a bip (500 is 0.05%) |
|
|
112
|
+
| `tickSpacing` | integer 1–8388607 | one form (above) | with a Slipstream `factory`: the pool's tick spacing |
|
|
113
|
+
| `tokenIn` | token | yes | the token sold |
|
|
114
|
+
| `tokenOut` | token | yes | the token bought |
|
|
115
|
+
| `sqrtPriceLimitX96` | base-10 integer string, uint160 | no | a price at which the swap stops, leaving the rest of the input in the Pot; absent or 0 for none |
|
|
116
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
117
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
118
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
119
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
120
|
+
|
|
121
|
+
### uniswapV4Swap
|
|
122
|
+
|
|
123
|
+
Swaps through one Uniswap V4 pool, named by its key, through the Pot's Router, which settles with the PoolManager. Calls @sauce/router uniswapV4: Router.swapV4.
|
|
124
|
+
|
|
125
|
+
| Field | Value | Required | Meaning |
|
|
126
|
+
| --- | --- | --- | --- |
|
|
127
|
+
| `type` | `"uniswapV4Swap"` | yes | the action |
|
|
128
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
129
|
+
| `poolManager` | contract | yes | the PoolManager ("UniswapV4.PoolManager") |
|
|
130
|
+
| `tokenIn` | token or `"native"` | yes | the token sold; "native" is the native currency |
|
|
131
|
+
| `tokenOut` | token or `"native"` | yes | the token bought; "native" is the native currency |
|
|
132
|
+
| `fee` | integer 0–16777215 | yes | the pool key's fee, in hundredths of a bip |
|
|
133
|
+
| `tickSpacing` | integer 1–32767 | yes | the pool key's tick spacing |
|
|
134
|
+
| `hooks` | contract | no | the pool key's hooks contract; absent for a pool with none |
|
|
135
|
+
| `sqrtPriceLimitX96` | base-10 integer string, uint160 | no | a price at which the swap stops, leaving the rest of the input in the Pot; absent or 0 for none |
|
|
136
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
137
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
138
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
139
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
140
|
+
|
|
141
|
+
### curveSwap
|
|
142
|
+
|
|
143
|
+
Swaps through a Curve pool's 4-argument `exchange`, approving exactly the input; the output is a balance delta. Calls @sauce/router curve: an exact ERC-20 approval, then pool.exchange(int128|uint256 i, j, dx, min_dy).
|
|
144
|
+
|
|
145
|
+
| Field | Value | Required | Meaning |
|
|
146
|
+
| --- | --- | --- | --- |
|
|
147
|
+
| `type` | `"curveSwap"` | yes | the action |
|
|
148
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
149
|
+
| `pool` | contract | yes | the Curve pool |
|
|
150
|
+
| `tokenIn` | token | yes | the token sold, approved to the pool for exactly the amount |
|
|
151
|
+
| `tokenOut` | token | yes | the token bought, whose balance delta is the output |
|
|
152
|
+
| `i` | integer 0–7 | yes | the pool index of the coin sold |
|
|
153
|
+
| `j` | integer 0–7 | yes | the pool index of the coin bought |
|
|
154
|
+
| `indexType` | `"int128"` or `"uint256"` | yes | the pool's index type: int128 for StableSwap and NG pools, uint256 for CryptoSwap |
|
|
155
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
156
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot; the pool pays the Pot, which forwards it with a transfer |
|
|
157
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
158
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
159
|
+
|
|
160
|
+
### balancerV2Swap
|
|
161
|
+
|
|
162
|
+
Swaps through one Balancer V2 pool, approving the Vault for exactly the input. Calls @sauce/router balancerV2: an exact ERC-20 approval, then Vault.swap (GIVEN_IN).
|
|
163
|
+
|
|
164
|
+
| Field | Value | Required | Meaning |
|
|
165
|
+
| --- | --- | --- | --- |
|
|
166
|
+
| `type` | `"balancerV2Swap"` | yes | the action |
|
|
167
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
168
|
+
| `vault` | contract | yes | the Balancer V2 Vault |
|
|
169
|
+
| `poolId` | 32 bytes | yes | the pool id |
|
|
170
|
+
| `tokenIn` | token | yes | the token sold, approved to the Vault for exactly the amount |
|
|
171
|
+
| `tokenOut` | token | yes | the token bought |
|
|
172
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
173
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
174
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
175
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
176
|
+
|
|
177
|
+
### dodoV2Swap
|
|
178
|
+
|
|
179
|
+
Swaps through one DODO V2 pool (DVM, DPP or DSP), paid by a push. Calls @sauce/router dodoV2: an ERC-20 transfer to the pool, then sellBase(to) or sellQuote(to).
|
|
180
|
+
|
|
181
|
+
| Field | Value | Required | Meaning |
|
|
182
|
+
| --- | --- | --- | --- |
|
|
183
|
+
| `type` | `"dodoV2Swap"` | yes | the action |
|
|
184
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
185
|
+
| `pool` | contract | yes | the pool |
|
|
186
|
+
| `tokenIn` | token | yes | the token sold, pushed to the pool |
|
|
187
|
+
| `tokenOut` | token | yes | the token bought |
|
|
188
|
+
| `baseToken` | token | yes | the pool's base token; tokenIn and tokenOut must be base and quote |
|
|
189
|
+
| `quoteToken` | token | yes | the pool's quote token |
|
|
190
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
191
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
192
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
193
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
194
|
+
|
|
195
|
+
### traderJoeLBSwap
|
|
196
|
+
|
|
197
|
+
Swaps through one Trader Joe Liquidity Book pair, paid by a push. Calls @sauce/router traderJoeLB: an ERC-20 transfer to the pair, then pair.swap(swapForY, to). Give exactly one of: pool; factory + binStep. Give tokenX + tokenY together or not at all.
|
|
198
|
+
|
|
199
|
+
It names its pool one of 2 ways: `pool`, or `factory` + `binStep`.
|
|
200
|
+
Give `tokenX` and `tokenY` together or not at all.
|
|
201
|
+
|
|
202
|
+
| Field | Value | Required | Meaning |
|
|
203
|
+
| --- | --- | --- | --- |
|
|
204
|
+
| `type` | `"traderJoeLBSwap"` | yes | the action |
|
|
205
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
206
|
+
| `pool` | contract | one form (above) | the pair; or leave it out and give `factory` with `binStep` |
|
|
207
|
+
| `factory` | contract | one form (above) | instead of `pool`: the LBFactory ("TraderJoe.LBFactory"), whose getLBPairInformation(tokenIn, tokenOut, binStep) names the pair; the program reads it from the factory on chain and reverts if there is none |
|
|
208
|
+
| `binStep` | integer 1–65535 | one form (above) | with `factory`: the pair's bin step |
|
|
209
|
+
| `tokenIn` | token | yes | the token sold, pushed to the pair |
|
|
210
|
+
| `tokenOut` | token | yes | the token bought |
|
|
211
|
+
| `tokenX` | token | no | the pair's token X; tokenIn and tokenOut must be X and Y. Leave tokenX and tokenY out to read them from the pair |
|
|
212
|
+
| `tokenY` | token | no | the pair's token Y |
|
|
213
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
214
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
215
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
216
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
217
|
+
|
|
218
|
+
### woofiSwap
|
|
219
|
+
|
|
220
|
+
Swaps through WOOFi's WooPPV2, paid by a push. Calls @sauce/router woofi: an ERC-20 transfer to the pool, then WooPPV2.swap.
|
|
221
|
+
|
|
222
|
+
| Field | Value | Required | Meaning |
|
|
223
|
+
| --- | --- | --- | --- |
|
|
224
|
+
| `type` | `"woofiSwap"` | yes | the action |
|
|
225
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
226
|
+
| `pool` | contract | yes | the WooPPV2 itself, not the WooRouterV2 |
|
|
227
|
+
| `tokenIn` | token | yes | the token sold, pushed to the pool |
|
|
228
|
+
| `tokenOut` | token | yes | the token bought |
|
|
229
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted, as the pool's own minToAmount; required and positive, because the pool prices from an oracle |
|
|
230
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
231
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
232
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
233
|
+
|
|
234
|
+
### maverickV2Swap
|
|
235
|
+
|
|
236
|
+
Swaps through one Maverick V2 pool, through the Pot's Router, which pays what the pool asks for. Calls @sauce/router maverickV2: Router.swap.
|
|
237
|
+
|
|
238
|
+
| Field | Value | Required | Meaning |
|
|
239
|
+
| --- | --- | --- | --- |
|
|
240
|
+
| `type` | `"maverickV2Swap"` | yes | the action |
|
|
241
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
242
|
+
| `pool` | contract | yes | the pool |
|
|
243
|
+
| `tokenIn` | token | yes | the token sold |
|
|
244
|
+
| `tokenOut` | token | yes | the token bought |
|
|
245
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
246
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
247
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
248
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
249
|
+
|
|
250
|
+
### curveRouterNGSwap
|
|
251
|
+
|
|
252
|
+
Swaps along a Curve RouterNG route of up to five hops. Calls RouterNG.exchange(address[11],uint256[5][5],uint256,uint256,address[5],address).
|
|
253
|
+
|
|
254
|
+
| Field | Value | Required | Meaning |
|
|
255
|
+
| --- | --- | --- | --- |
|
|
256
|
+
| `type` | `"curveRouterNGSwap"` | yes | the action |
|
|
257
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
258
|
+
| `router` | contract | yes | the Curve RouterNG |
|
|
259
|
+
| `route` | array of token or contract (at least 1, at most 11) | yes | the route, tokens and pools alternating; padded to 11 with zero addresses |
|
|
260
|
+
| `swapParams` | array of [integer 0–255, integer 0–255, integer 0–255, integer 0–255, integer 0–255] (at least 1, at most 5) | yes | per hop: [i, j, swap_type, pool_type, n_coins]; padded to 5 rows |
|
|
261
|
+
| `pools` | array of contract (at most 5) | yes | a zap pool where a hop needs one; padded to 5 |
|
|
262
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
263
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
264
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
265
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
266
|
+
|
|
267
|
+
### balancerV2BatchSwap
|
|
268
|
+
|
|
269
|
+
Swaps along Balancer V2 pools in one batch; the output is a balance delta. Calls Vault.batchSwap.
|
|
270
|
+
|
|
271
|
+
| Field | Value | Required | Meaning |
|
|
272
|
+
| --- | --- | --- | --- |
|
|
273
|
+
| `type` | `"balancerV2BatchSwap"` | yes | the action |
|
|
274
|
+
| `vault` | contract | yes | the Balancer V2 Vault |
|
|
275
|
+
| `steps` | array of objects (below) (at least 1) | yes | the batch's steps; the last step's output asset is the output |
|
|
276
|
+
| `assets` | array of token or `"native"` (at least 2) | yes | every asset the steps index; "native" is the native currency |
|
|
277
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
278
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
279
|
+
| `deadline` | integer ≥ 0 | yes | Unix seconds after which the venue reverts |
|
|
280
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
281
|
+
|
|
282
|
+
Each `steps` entry:
|
|
283
|
+
|
|
284
|
+
| Field | Value | Required | Meaning |
|
|
285
|
+
| --- | --- | --- | --- |
|
|
286
|
+
| `poolId` | 32 bytes | yes | the step's pool id |
|
|
287
|
+
| `assetInIndex` | integer 0–255 | yes | index into `assets` of the step's input |
|
|
288
|
+
| `assetOutIndex` | integer 0–255 | yes | index into `assets` of the step's output |
|
|
289
|
+
| `amount` | base-10 integer string, uint256 | yes | the step's input; 0 spends the previous step's output |
|
|
290
|
+
|
|
291
|
+
### balancerV3Swap
|
|
292
|
+
|
|
293
|
+
Swaps an exact input through one Balancer V3 pool; the router pays the Pot and pulls through Permit2. Calls Router.swapSingleTokenExactIn.
|
|
294
|
+
|
|
295
|
+
| Field | Value | Required | Meaning |
|
|
296
|
+
| --- | --- | --- | --- |
|
|
297
|
+
| `type` | `"balancerV3Swap"` | yes | the action |
|
|
298
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
299
|
+
| `router` | contract | yes | the Balancer V3 Router |
|
|
300
|
+
| `pool` | contract | yes | the pool |
|
|
301
|
+
| `tokenIn` | token | yes | the token sold |
|
|
302
|
+
| `tokenOut` | token | yes | the token bought |
|
|
303
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
304
|
+
| `deadline` | integer ≥ 0 | yes | Unix seconds after which the venue reverts |
|
|
305
|
+
| `wethIsEth` | true or false | yes | true to pay or receive native ETH for WETH |
|
|
306
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
307
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
308
|
+
|
|
309
|
+
### ambientSwap
|
|
310
|
+
|
|
311
|
+
Swaps through an Ambient (CrocSwap) pool; the dex pays the Pot, and the output is a balance delta. Calls CrocSwapDex.userCmd(1, abi.encode(...)).
|
|
312
|
+
|
|
313
|
+
| Field | Value | Required | Meaning |
|
|
314
|
+
| --- | --- | --- | --- |
|
|
315
|
+
| `type` | `"ambientSwap"` | yes | the action |
|
|
316
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
317
|
+
| `dex` | contract | yes | the CrocSwapDex |
|
|
318
|
+
| `base` | token or `"native"` | yes | the pool's base token (numerically lower) |
|
|
319
|
+
| `quote` | token | yes | the pool's quote token |
|
|
320
|
+
| `poolIdx` | integer ≥ 0 | yes | the pool type index (420 is the standard pool) |
|
|
321
|
+
| `isBuy` | true or false | yes | true pays base and receives quote |
|
|
322
|
+
| `inBaseQty` | true or false | yes | true when the amount is denominated in the base token |
|
|
323
|
+
| `tip` | integer 0–65535 | yes | 0 accepts the pool's default fee |
|
|
324
|
+
| `limitPrice` | base-10 integer string, uint128 | yes | the worst acceptable price, as a Q64.64 square-root price |
|
|
325
|
+
| `amountOutMin` | base-10 integer string, uint128 | yes | the least output accepted; the dex reverts below it |
|
|
326
|
+
| `reserveFlags` | integer 0–255 | yes | 0x1 settles base from surplus, 0x2 quote |
|
|
327
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
328
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
329
|
+
|
|
330
|
+
### dodoV1Swap
|
|
331
|
+
|
|
332
|
+
Swaps through legacy DODO V1 (Classical) pairs via the DODO proxy, which pays the Pot. Calls DODOProxy.dodoSwapV1.
|
|
333
|
+
|
|
334
|
+
| Field | Value | Required | Meaning |
|
|
335
|
+
| --- | --- | --- | --- |
|
|
336
|
+
| `type` | `"dodoV1Swap"` | yes | the action |
|
|
337
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
338
|
+
| `proxy` | contract | yes | the DODO proxy; approvals go to DODOApprove, not to it |
|
|
339
|
+
| `tokenIn` | token | yes | the token sold |
|
|
340
|
+
| `tokenOut` | token | yes | the token bought |
|
|
341
|
+
| `pairs` | array of contract (at least 1) | yes | the V1 pairs to route through |
|
|
342
|
+
| `directions` | integer ≥ 0 | yes | a bit per pair: 0 sells base, 1 sells quote |
|
|
343
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
344
|
+
| `deadline` | integer ≥ 0 | yes | Unix seconds after which the venue reverts |
|
|
345
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
346
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
347
|
+
|
|
348
|
+
### carbonSwap
|
|
349
|
+
|
|
350
|
+
Trades against Carbon strategies by source amount; the controller pays the Pot. Calls CarbonController.tradeBySourceAmount.
|
|
351
|
+
|
|
352
|
+
| Field | Value | Required | Meaning |
|
|
353
|
+
| --- | --- | --- | --- |
|
|
354
|
+
| `type` | `"carbonSwap"` | yes | the action |
|
|
355
|
+
| `controller` | contract | yes | the CarbonController |
|
|
356
|
+
| `sourceToken` | token | yes | the token sold |
|
|
357
|
+
| `targetToken` | token | yes | the token bought |
|
|
358
|
+
| `tradeActions` | array of objects (below) (at least 1) | yes | the source amount per strategy; together they are the trade |
|
|
359
|
+
| `amountOutMin` | base-10 integer string, uint128 | yes | the least output accepted; the controller reverts below it |
|
|
360
|
+
| `deadline` | integer ≥ 0 | yes | Unix seconds after which the venue reverts |
|
|
361
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
362
|
+
|
|
363
|
+
Each `tradeActions` entry:
|
|
364
|
+
|
|
365
|
+
| Field | Value | Required | Meaning |
|
|
366
|
+
| --- | --- | --- | --- |
|
|
367
|
+
| `strategyId` | base-10 integer string, uint256 | yes | the strategy |
|
|
368
|
+
| `amount` | base-10 integer string, uint128 | yes | the source amount traded against it |
|
|
369
|
+
|
|
370
|
+
### fraxswapSwap
|
|
371
|
+
|
|
372
|
+
Swaps an exact input along a Fraxswap path; the output is a balance delta. Calls FraxswapRouter.swapExactTokensForTokens.
|
|
373
|
+
|
|
374
|
+
| Field | Value | Required | Meaning |
|
|
375
|
+
| --- | --- | --- | --- |
|
|
376
|
+
| `type` | `"fraxswapSwap"` | yes | the action |
|
|
377
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
378
|
+
| `router` | contract | yes | the Fraxswap router |
|
|
379
|
+
| `path` | array of token (at least 2) | yes | the token path; the last token is the output |
|
|
380
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
381
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
382
|
+
| `deadline` | integer ≥ 0 | yes | Unix seconds after which the venue reverts |
|
|
383
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
384
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
385
|
+
|
|
386
|
+
### fluidDexT1Swap
|
|
387
|
+
|
|
388
|
+
Swaps an exact ERC-20 input through a Fluid DEX T1 pool. Calls FluidDexT1.swapIn.
|
|
389
|
+
|
|
390
|
+
| Field | Value | Required | Meaning |
|
|
391
|
+
| --- | --- | --- | --- |
|
|
392
|
+
| `type` | `"fluidDexT1Swap"` | yes | the action |
|
|
393
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
394
|
+
| `pool` | contract | yes | the pool |
|
|
395
|
+
| `swap0to1` | true or false | yes | true sells token0 |
|
|
396
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least output accepted; the venue reverts below it |
|
|
397
|
+
| `recipient` | address or `"self"` | yes | receives the output when no later action spends it; `"self"` keeps it in the Pot |
|
|
398
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
399
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
400
|
+
|
|
401
|
+
### acrossBridge
|
|
402
|
+
|
|
403
|
+
Deposits into an Across SpokePool for the same token on the destination, less the relayer fee. Calls SpokePool.depositV3.
|
|
404
|
+
|
|
405
|
+
| Field | Value | Required | Meaning |
|
|
406
|
+
| --- | --- | --- | --- |
|
|
407
|
+
| `type` | `"acrossBridge"` | yes | the action |
|
|
408
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
409
|
+
| `spokePool` | contract | yes | the origin SpokePool; it pulls the token, so approve it first |
|
|
410
|
+
| `token` | token | yes | the token bridged (input and output) |
|
|
411
|
+
| `destChainId` | integer ≥ 1 | yes | the destination chain id |
|
|
412
|
+
| `recipient` | address | yes | receives on the destination |
|
|
413
|
+
| `relayerFee` | base-10 integer string, uint256 | yes | kept by the relayer: the destination receives `amount - relayerFee` |
|
|
414
|
+
| `quoteTimestamp` | integer 0–4294967295 | yes | the timestamp the fee was quoted at |
|
|
415
|
+
| `fillDeadline` | integer 0–4294967295 | yes | Unix seconds by which a relayer must fill |
|
|
416
|
+
| `exclusivityDeadline` | integer 0–4294967295 | yes | Unix seconds of relayer exclusivity; 0 for none |
|
|
417
|
+
| `message` | hex bytes | yes | delivered with the fill; 0x for none |
|
|
418
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
419
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
420
|
+
|
|
421
|
+
### stargateBridge
|
|
422
|
+
|
|
423
|
+
Sends through a Stargate V2 ERC-20 pool (taxi), paying the LayerZero fee it quotes. Calls StargatePool.quoteSend, then StargatePool.send.
|
|
424
|
+
|
|
425
|
+
| Field | Value | Required | Meaning |
|
|
426
|
+
| --- | --- | --- | --- |
|
|
427
|
+
| `type` | `"stargateBridge"` | yes | the action |
|
|
428
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
429
|
+
| `pool` | contract | yes | the StargatePool; it pulls the token, so approve it first |
|
|
430
|
+
| `dstEid` | integer 0–4294967295 | yes | the destination's LayerZero endpoint id |
|
|
431
|
+
| `recipient` | address or 32-byte account | yes | receives on the destination |
|
|
432
|
+
| `amountOutMin` | base-10 integer string, uint256 | yes | the least the destination may receive |
|
|
433
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
434
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
435
|
+
|
|
436
|
+
### cctpBridge
|
|
437
|
+
|
|
438
|
+
Burns USDC through Circle's CCTP V2 TokenMessenger for minting on the destination. Calls TokenMessengerV2.depositForBurn.
|
|
439
|
+
|
|
440
|
+
| Field | Value | Required | Meaning |
|
|
441
|
+
| --- | --- | --- | --- |
|
|
442
|
+
| `type` | `"cctpBridge"` | yes | the action |
|
|
443
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
444
|
+
| `tokenMessenger` | contract | yes | the CCTP V2 TokenMessenger; it pulls the token, so approve it first |
|
|
445
|
+
| `token` | token | yes | the burned token (USDC) |
|
|
446
|
+
| `destinationDomain` | integer 0–4294967295 | yes | the destination's CCTP domain |
|
|
447
|
+
| `recipient` | address or 32-byte account | yes | receives the mint on the destination |
|
|
448
|
+
| `maxFee` | base-10 integer string, uint256 | no | the most the transfer may pay in fees, from the amount; default "0" |
|
|
449
|
+
| `minFinalityThreshold` | integer 0–4294967295 | no | 2000 waits for finality (standard, the default); 1000 is fast |
|
|
450
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
451
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
452
|
+
|
|
453
|
+
### hyperlaneBridge
|
|
454
|
+
|
|
455
|
+
Transfers through a Hyperlane ERC-20 warp route, paying the interchain gas it quotes. Calls TokenRouter.quoteGasPayment, then TokenRouter.transferRemote.
|
|
456
|
+
|
|
457
|
+
| Field | Value | Required | Meaning |
|
|
458
|
+
| --- | --- | --- | --- |
|
|
459
|
+
| `type` | `"hyperlaneBridge"` | yes | the action |
|
|
460
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
461
|
+
| `router` | contract | yes | the warp route; it pulls the amount plus any fee it charges |
|
|
462
|
+
| `destinationDomain` | integer 0–4294967295 | yes | the destination's Hyperlane domain |
|
|
463
|
+
| `recipient` | address or 32-byte account | yes | receives on the destination |
|
|
464
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
465
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
466
|
+
|
|
467
|
+
### wrapETH
|
|
468
|
+
|
|
469
|
+
Wraps native ETH into WETH. Calls WETH.deposit.
|
|
470
|
+
|
|
471
|
+
| Field | Value | Required | Meaning |
|
|
472
|
+
| --- | --- | --- | --- |
|
|
473
|
+
| `type` | `"wrapETH"` | yes | the action |
|
|
474
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
475
|
+
| `weth` | token or contract | yes | the WETH contract ("WETH") |
|
|
476
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
477
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
478
|
+
|
|
479
|
+
### unwrapETH
|
|
480
|
+
|
|
481
|
+
Unwraps WETH into native ETH. Calls WETH.withdraw.
|
|
482
|
+
|
|
483
|
+
| Field | Value | Required | Meaning |
|
|
484
|
+
| --- | --- | --- | --- |
|
|
485
|
+
| `type` | `"unwrapETH"` | yes | the action |
|
|
486
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
487
|
+
| `weth` | token or contract | yes | the WETH contract ("WETH") |
|
|
488
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
489
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
490
|
+
|
|
491
|
+
### wrapStETH
|
|
492
|
+
|
|
493
|
+
Wraps stETH into wstETH; the output is the wstETH minted. Calls wstETH.wrap.
|
|
494
|
+
|
|
495
|
+
| Field | Value | Required | Meaning |
|
|
496
|
+
| --- | --- | --- | --- |
|
|
497
|
+
| `type` | `"wrapStETH"` | yes | the action |
|
|
498
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
499
|
+
| `wstETH` | token or contract | yes | the wstETH contract; it pulls the stETH, so approve it first |
|
|
500
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
501
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
502
|
+
|
|
503
|
+
### unwrapStETH
|
|
504
|
+
|
|
505
|
+
Unwraps wstETH; the output is the stETH returned. Calls wstETH.unwrap.
|
|
506
|
+
|
|
507
|
+
| Field | Value | Required | Meaning |
|
|
508
|
+
| --- | --- | --- | --- |
|
|
509
|
+
| `type` | `"unwrapStETH"` | yes | the action |
|
|
510
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
511
|
+
| `wstETH` | token or contract | yes | the wstETH contract |
|
|
512
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
513
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
514
|
+
|
|
515
|
+
### lidoStake
|
|
516
|
+
|
|
517
|
+
Stakes native ETH with Lido; the output is the stETH received. Calls stETH.submit.
|
|
518
|
+
|
|
519
|
+
| Field | Value | Required | Meaning |
|
|
520
|
+
| --- | --- | --- | --- |
|
|
521
|
+
| `type` | `"lidoStake"` | yes | the action |
|
|
522
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
523
|
+
| `stETH` | token or contract | yes | the stETH contract |
|
|
524
|
+
| `referral` | address | no | Lido's referral; default the zero address |
|
|
525
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
526
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
527
|
+
|
|
528
|
+
### lidoUnstake
|
|
529
|
+
|
|
530
|
+
Requests a Lido withdrawal of stETH; the ETH is claimed later with the withdrawal NFT. Calls WithdrawalQueueERC721.requestWithdrawals.
|
|
531
|
+
|
|
532
|
+
| Field | Value | Required | Meaning |
|
|
533
|
+
| --- | --- | --- | --- |
|
|
534
|
+
| `type` | `"lidoUnstake"` | yes | the action |
|
|
535
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
536
|
+
| `withdrawalQueue` | contract | yes | Lido's withdrawal queue; it pulls the stETH, so approve it first |
|
|
537
|
+
| `owner` | address or `"self"` | yes | receives the withdrawal NFT; `"self"` is the Pot |
|
|
538
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
539
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
540
|
+
|
|
541
|
+
### rocketPoolStake
|
|
542
|
+
|
|
543
|
+
Stakes native ETH with Rocket Pool; the output is the rETH received. Calls RocketDepositPool.deposit.
|
|
544
|
+
|
|
545
|
+
| Field | Value | Required | Meaning |
|
|
546
|
+
| --- | --- | --- | --- |
|
|
547
|
+
| `type` | `"rocketPoolStake"` | yes | the action |
|
|
548
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
549
|
+
| `depositPool` | contract | yes | the live RocketDepositPool, which upgrades move; read it from RocketStorage |
|
|
550
|
+
| `rETH` | token or contract | yes | the rETH token, whose balance delta is the output |
|
|
551
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
552
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
553
|
+
|
|
554
|
+
### rocketPoolUnstake
|
|
555
|
+
|
|
556
|
+
Burns rETH; the output is the ETH received. Calls rETH.burn.
|
|
557
|
+
|
|
558
|
+
| Field | Value | Required | Meaning |
|
|
559
|
+
| --- | --- | --- | --- |
|
|
560
|
+
| `type` | `"rocketPoolUnstake"` | yes | the action |
|
|
561
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
562
|
+
| `rETH` | token or contract | yes | the rETH token |
|
|
563
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
564
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
565
|
+
|
|
566
|
+
### etherFiStake
|
|
567
|
+
|
|
568
|
+
Stakes native ETH with ether.fi; the output is the eETH received. Calls LiquidityPool.deposit.
|
|
569
|
+
|
|
570
|
+
| Field | Value | Required | Meaning |
|
|
571
|
+
| --- | --- | --- | --- |
|
|
572
|
+
| `type` | `"etherFiStake"` | yes | the action |
|
|
573
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
574
|
+
| `liquidityPool` | contract | yes | the ether.fi LiquidityPool |
|
|
575
|
+
| `eETH` | token or contract | yes | the eETH token, whose balance delta is the output |
|
|
576
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
577
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
578
|
+
|
|
579
|
+
### aaveV3Supply
|
|
580
|
+
|
|
581
|
+
Supplies a token to Aave V3. Calls Pool.supply.
|
|
582
|
+
|
|
583
|
+
| Field | Value | Required | Meaning |
|
|
584
|
+
| --- | --- | --- | --- |
|
|
585
|
+
| `type` | `"aaveV3Supply"` | yes | the action |
|
|
586
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
587
|
+
| `pool` | contract | yes | the Aave V3 Pool; it pulls the token, so approve it first |
|
|
588
|
+
| `token` | token | yes | the asset supplied |
|
|
589
|
+
| `onBehalfOf` | address or `"self"` | yes | credited with the position; `"self"` is the Pot |
|
|
590
|
+
| `referralCode` | integer 0–65535 | no | Aave's referral code; default 0 |
|
|
591
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
592
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
593
|
+
|
|
594
|
+
### aaveV3Withdraw
|
|
595
|
+
|
|
596
|
+
Withdraws a token from Aave V3; the output is the amount withdrawn. Calls Pool.withdraw.
|
|
597
|
+
|
|
598
|
+
| Field | Value | Required | Meaning |
|
|
599
|
+
| --- | --- | --- | --- |
|
|
600
|
+
| `type` | `"aaveV3Withdraw"` | yes | the action |
|
|
601
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
602
|
+
| `pool` | contract | yes | the Aave V3 Pool |
|
|
603
|
+
| `token` | token | yes | the asset withdrawn |
|
|
604
|
+
| `recipient` | address or `"self"` | yes | receives the asset; `"self"` is the Pot |
|
|
605
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
606
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
607
|
+
|
|
608
|
+
### aaveV3Borrow
|
|
609
|
+
|
|
610
|
+
Borrows a token from Aave V3 at the variable rate, the only rate it offers. Calls Pool.borrow.
|
|
611
|
+
|
|
612
|
+
| Field | Value | Required | Meaning |
|
|
613
|
+
| --- | --- | --- | --- |
|
|
614
|
+
| `type` | `"aaveV3Borrow"` | yes | the action |
|
|
615
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
616
|
+
| `pool` | contract | yes | the Aave V3 Pool |
|
|
617
|
+
| `token` | token | yes | the asset borrowed |
|
|
618
|
+
| `onBehalfOf` | address or `"self"` | yes | whose collateral backs the debt; `"self"` is the Pot |
|
|
619
|
+
| `referralCode` | integer 0–65535 | no | Aave's referral code; default 0 |
|
|
620
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
621
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
622
|
+
|
|
623
|
+
### aaveV3Repay
|
|
624
|
+
|
|
625
|
+
Repays an Aave V3 variable-rate debt. Calls Pool.repay.
|
|
626
|
+
|
|
627
|
+
| Field | Value | Required | Meaning |
|
|
628
|
+
| --- | --- | --- | --- |
|
|
629
|
+
| `type` | `"aaveV3Repay"` | yes | the action |
|
|
630
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
631
|
+
| `pool` | contract | yes | the Aave V3 Pool; it pulls the token, so approve it first |
|
|
632
|
+
| `token` | token | yes | the asset repaid |
|
|
633
|
+
| `onBehalfOf` | address or `"self"` | yes | whose debt is repaid; `"self"` is the Pot |
|
|
634
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
635
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
636
|
+
|
|
637
|
+
### compoundV3Supply
|
|
638
|
+
|
|
639
|
+
Supplies a token to a Compound V3 (Comet) market. Calls Comet.supply.
|
|
640
|
+
|
|
641
|
+
| Field | Value | Required | Meaning |
|
|
642
|
+
| --- | --- | --- | --- |
|
|
643
|
+
| `type` | `"compoundV3Supply"` | yes | the action |
|
|
644
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
645
|
+
| `comet` | contract | yes | the Comet market; it pulls the token, so approve it first |
|
|
646
|
+
| `token` | token | yes | the asset supplied |
|
|
647
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
648
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
649
|
+
|
|
650
|
+
### compoundV3Withdraw
|
|
651
|
+
|
|
652
|
+
Withdraws a token from a Compound V3 (Comet) market. Calls Comet.withdraw.
|
|
653
|
+
|
|
654
|
+
| Field | Value | Required | Meaning |
|
|
655
|
+
| --- | --- | --- | --- |
|
|
656
|
+
| `type` | `"compoundV3Withdraw"` | yes | the action |
|
|
657
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
658
|
+
| `comet` | contract | yes | the Comet market |
|
|
659
|
+
| `token` | token | yes | the asset withdrawn |
|
|
660
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
661
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
662
|
+
|
|
663
|
+
### transfer
|
|
664
|
+
|
|
665
|
+
Transfers an ERC-20 token. Calls ERC-20 transfer, checked like SafeERC20.
|
|
666
|
+
|
|
667
|
+
| Field | Value | Required | Meaning |
|
|
668
|
+
| --- | --- | --- | --- |
|
|
669
|
+
| `type` | `"transfer"` | yes | the action |
|
|
670
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
671
|
+
| `token` | token | yes | the token |
|
|
672
|
+
| `recipient` | address or `"self"` | yes | the receiver; `"self"` is the Pot |
|
|
673
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
674
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
675
|
+
|
|
676
|
+
### approve
|
|
677
|
+
|
|
678
|
+
Approves an ERC-20 spender, resetting a non-zero allowance first. Calls ERC-20 approve, checked and reset like SafeERC20.forceApprove.
|
|
679
|
+
|
|
680
|
+
| Field | Value | Required | Meaning |
|
|
681
|
+
| --- | --- | --- | --- |
|
|
682
|
+
| `type` | `"approve"` | yes | the action |
|
|
683
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
684
|
+
| `token` | token | yes | the token |
|
|
685
|
+
| `spender` | contract | yes | the spender |
|
|
686
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
687
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
688
|
+
|
|
689
|
+
### permit2Approve
|
|
690
|
+
|
|
691
|
+
Grants a spender a Permit2 allowance; the token must also be approved to Permit2. Calls Permit2.approve(address,address,uint160,uint48).
|
|
692
|
+
|
|
693
|
+
| Field | Value | Required | Meaning |
|
|
694
|
+
| --- | --- | --- | --- |
|
|
695
|
+
| `type` | `"permit2Approve"` | yes | the action |
|
|
696
|
+
| `amount` | base-10 integer string, uint256 | no | The amount this action spends. Omit it (and amountRef) to spend the previous action's output. |
|
|
697
|
+
| `permit2` | contract | yes | Permit2 ("Permit2.Permit2") |
|
|
698
|
+
| `token` | token | yes | the token |
|
|
699
|
+
| `spender` | contract | yes | the spender, such as Balancer V3's router |
|
|
700
|
+
| `expiration` | integer 0–281474976710655 | yes | Unix seconds after which the allowance lapses |
|
|
701
|
+
| `amountRef` | name | no | Spend the output an earlier action saved under this name. |
|
|
702
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
703
|
+
|
|
704
|
+
### balanceOf
|
|
705
|
+
|
|
706
|
+
Reads the Pot's balance of a token; the output is that balance. Calls IERC20.balanceOf(pot).
|
|
707
|
+
|
|
708
|
+
| Field | Value | Required | Meaning |
|
|
709
|
+
| --- | --- | --- | --- |
|
|
710
|
+
| `type` | `"balanceOf"` | yes | the action |
|
|
711
|
+
| `token` | token | yes | the token |
|
|
712
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
713
|
+
|
|
714
|
+
### nativeBalance
|
|
715
|
+
|
|
716
|
+
Reads the Pot's native balance; the output is that balance. Calls ctx.selfBalance().
|
|
717
|
+
|
|
718
|
+
| Field | Value | Required | Meaning |
|
|
719
|
+
| --- | --- | --- | --- |
|
|
720
|
+
| `type` | `"nativeBalance"` | yes | the action |
|
|
721
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|
|
722
|
+
|
|
723
|
+
### argument
|
|
724
|
+
|
|
725
|
+
Declares a runtime argument of the compiled program; the output is the value supplied. Calls a `main` parameter.
|
|
726
|
+
|
|
727
|
+
| Field | Value | Required | Meaning |
|
|
728
|
+
| --- | --- | --- | --- |
|
|
729
|
+
| `type` | `"argument"` | yes | the action |
|
|
730
|
+
| `name` | name | yes | the argument's name; arguments are encoded in order |
|
|
731
|
+
| `saveOutputAs` | name | no | Save this action's output under a name later actions can reference. |
|