@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
package/sdk/dist/swap/types.js
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `@eco-incorp/sauce`'s `swap` module — E4.1, the universal swap adapter.
|
|
3
|
-
*
|
|
4
|
-
* Types + pool-type registry for lowering a chain-agnostic swap SPEC into a `ISauceRouter.swap`
|
|
5
|
-
* call. See `sdk/src/swap/index.ts` for the module-level overview and the E3 composition example.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* `SwapPoolType` — pinned verbatim from the engine's `IRouter.sol` `enum SwapPoolType`, whose own
|
|
9
|
-
* doc says values are APPEND-ONLY (the enum rides `SwapParams.poolType` as `uint8`, so reordering
|
|
10
|
-
* breaks the ABI of every compiled recipe). Only 0..8 are dispatchable through the unified
|
|
11
|
-
* `swap()` entry point — see {@link UndispatchablePoolType} for 9/10.
|
|
12
|
-
*/
|
|
13
|
-
export const SwapPoolType = {
|
|
14
|
-
UniV2: 0,
|
|
15
|
-
UniV3: 1,
|
|
16
|
-
UniV4: 2,
|
|
17
|
-
Curve: 3,
|
|
18
|
-
BalancerV2: 4,
|
|
19
|
-
DODOV2: 5,
|
|
20
|
-
TraderJoeLB: 6,
|
|
21
|
-
MaverickV2: 7,
|
|
22
|
-
WOOFi: 8,
|
|
23
|
-
};
|
|
24
|
-
/**
|
|
25
|
-
* Pool types that exist on the engine's `SwapPoolType` enum but are NOT dispatchable through the
|
|
26
|
-
* unified `swap()` — `Router.sol`'s `swap()` dispatch chain covers only 0..8 and falls through to
|
|
27
|
-
* `revert SwapFailed()` for anything else. PancakeInfinity's CL/Bin pools need their own
|
|
28
|
-
* `swapInfinityCL`/`swapInfinityBin` entry points (a different, 6-field `InfinityPoolKey` that
|
|
29
|
-
* `SwapParams` cannot carry) — out of scope for this first cut. Exported so the value is nameable;
|
|
30
|
-
* {@link toSwapParams} throws when handed one of these, pointing at this follow-up.
|
|
31
|
-
*/
|
|
32
|
-
export const UndispatchablePoolType = {
|
|
33
|
-
PancakeInfinityCL: 9,
|
|
34
|
-
PancakeInfinityBin: 10,
|
|
35
|
-
};
|
|
36
|
-
const CALLBACK_VENUES = new Set([
|
|
37
|
-
SwapPoolType.UniV3,
|
|
38
|
-
SwapPoolType.UniV4,
|
|
39
|
-
SwapPoolType.MaverickV2,
|
|
40
|
-
]);
|
|
41
|
-
const CALLBACK_FREE_VENUES = new Set([
|
|
42
|
-
SwapPoolType.UniV2,
|
|
43
|
-
SwapPoolType.Curve,
|
|
44
|
-
SwapPoolType.BalancerV2,
|
|
45
|
-
SwapPoolType.DODOV2,
|
|
46
|
-
SwapPoolType.TraderJoeLB,
|
|
47
|
-
SwapPoolType.WOOFi,
|
|
48
|
-
]);
|
|
49
|
-
/**
|
|
50
|
-
* True for the three pool types `Router.sol` (`~279-283`) allows a non-empty `callback` for — the
|
|
51
|
-
* pool re-enters the contract mid-swap to pull input, so servicing it requires the router's
|
|
52
|
-
* compiled code. NOT the same partition as {@link isCallbackFree}: MaverickV2 is callback-driven
|
|
53
|
-
* yet its handler still takes `abs(amountSpecified)` (see `amountSpecifiedFor`).
|
|
54
|
-
*/
|
|
55
|
-
export function isCallbackVenue(poolType) {
|
|
56
|
-
return CALLBACK_VENUES.has(poolType);
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* True for the pool types whose swap logic is callback-free (`Router.sol` reads reserves / calls a
|
|
60
|
-
* plain `pool.swap(...)`) and so MAY, as a follow-up, be replicated as direct
|
|
61
|
-
* `transfer` + `pool.swap` SauceScript instead of going through the Router. This module always
|
|
62
|
-
* routes through the unified `swap()` regardless — see `sdk/src/swap/index.ts`'s scope notes.
|
|
63
|
-
*/
|
|
64
|
-
export function isCallbackFree(poolType) {
|
|
65
|
-
return CALLBACK_FREE_VENUES.has(poolType);
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* True for the pool types where `SwapParams.poolKey` is actually consulted by the engine:
|
|
69
|
-
* UniV4 (all 5 fields, via `V4SwapParams`) and, less obviously, UniV2 (`Router.sol#_swapV2` reads
|
|
70
|
-
* `poolKey.fee` as the pair's LP fee in ppm — `0` defaults to 3000 / 0.30%, `>= 1_000_000` reverts).
|
|
71
|
-
* Every other pool type ignores `poolKey` entirely.
|
|
72
|
-
*/
|
|
73
|
-
export function usesPoolKey(poolType) {
|
|
74
|
-
return poolType === SwapPoolType.UniV4 || poolType === SwapPoolType.UniV2;
|
|
75
|
-
}
|
|
76
|
-
/** All-zero `poolKey`, used for any pool type that doesn't consult it (see {@link usesPoolKey}). */
|
|
77
|
-
export const ZERO_POOL_KEY = {
|
|
78
|
-
currency0: 0n,
|
|
79
|
-
currency1: 0n,
|
|
80
|
-
fee: 0n,
|
|
81
|
-
tickSpacing: 0n,
|
|
82
|
-
hooks: 0n,
|
|
83
|
-
};
|
|
84
|
-
/** `SwapParams`'s top-level field names, in exact ABI-declaration order (pinned against the
|
|
85
|
-
* vendored `ISauceRouter.json` artifact in `sdk/test/swap.test.ts`). */
|
|
86
|
-
export const SWAP_PARAMS_FIELDS = [
|
|
87
|
-
"poolType",
|
|
88
|
-
"pool",
|
|
89
|
-
"poolKey",
|
|
90
|
-
"tokenIn",
|
|
91
|
-
"tokenOut",
|
|
92
|
-
"amountSpecified",
|
|
93
|
-
"sqrtPriceLimitX96",
|
|
94
|
-
"payer",
|
|
95
|
-
"recipient",
|
|
96
|
-
"callback",
|
|
97
|
-
];
|
|
98
|
-
/** `SwapParams.poolKey`'s field names, in exact ABI-declaration order. */
|
|
99
|
-
export const POOL_KEY_FIELDS = [
|
|
100
|
-
"currency0",
|
|
101
|
-
"currency1",
|
|
102
|
-
"fee",
|
|
103
|
-
"tickSpacing",
|
|
104
|
-
"hooks",
|
|
105
|
-
];
|
|
106
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/swap/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,UAAU,EAAE,CAAC;IACb,MAAM,EAAE,CAAC;IACT,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,CAAC;IACb,KAAK,EAAE,CAAC;CACA,CAAC;AAIX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,iBAAiB,EAAE,CAAC;IACpB,kBAAkB,EAAE,EAAE;CACd,CAAC;AAKX,MAAM,eAAe,GAA8B,IAAI,GAAG,CAAC;IACzD,YAAY,CAAC,KAAK;IAClB,YAAY,CAAC,KAAK;IAClB,YAAY,CAAC,UAAU;CACxB,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAA8B,IAAI,GAAG,CAAC;IAC9D,YAAY,CAAC,KAAK;IAClB,YAAY,CAAC,KAAK;IAClB,YAAY,CAAC,UAAU;IACvB,YAAY,CAAC,MAAM;IACnB,YAAY,CAAC,WAAW;IACxB,YAAY,CAAC,KAAK;CACnB,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,QAAsB;IACpD,OAAO,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,QAAsB;IACnD,OAAO,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,QAAsB;IAChD,OAAO,QAAQ,KAAK,YAAY,CAAC,KAAK,IAAI,QAAQ,KAAK,YAAY,CAAC,KAAK,CAAC;AAC5E,CAAC;AAmCD,oGAAoG;AACpG,MAAM,CAAC,MAAM,aAAa,GAAY;IACpC,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,GAAG,EAAE,EAAE;IACP,WAAW,EAAE,EAAE;IACf,KAAK,EAAE,EAAE;CACV,CAAC;AAsEF;yEACyE;AACzE,MAAM,CAAC,MAAM,kBAAkB,GAAkC;IAC/D,UAAU;IACV,MAAM;IACN,SAAS;IACT,SAAS;IACT,UAAU;IACV,iBAAiB;IACjB,mBAAmB;IACnB,OAAO;IACP,WAAW;IACX,UAAU;CACX,CAAC;AAEF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,eAAe,GAA+B;IACzD,WAAW;IACX,WAAW;IACX,KAAK;IACL,aAAa;IACb,OAAO;CACR,CAAC"}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
# Aave V3
|
|
2
|
-
|
|
3
|
-
Non-custodial liquidity protocol for earning interest on deposits and borrowing assets. The most widely deployed lending protocol in DeFi.
|
|
4
|
-
|
|
5
|
-
## Category
|
|
6
|
-
|
|
7
|
-
lending | Chains: Ethereum (1), Polygon (137), Arbitrum (42161), Optimism (10), Avalanche (43114), Base (8453), BSC (56), Scroll (534352), Fantom (250), Gnosis (100), Metis (1088)
|
|
8
|
-
|
|
9
|
-
## SauceScript Functions
|
|
10
|
-
|
|
11
|
-
### supply
|
|
12
|
-
|
|
13
|
-
Supply assets to earn interest. Mints aTokens to the supplier.
|
|
14
|
-
|
|
15
|
-
```typescript
|
|
16
|
-
import { PoolABI as IPool } from "./abis";
|
|
17
|
-
|
|
18
|
-
function main(poolAddress: Address, asset: Address, amount: Uint256, onBehalfOf: Address): Uint256 {
|
|
19
|
-
const pool = IPool.at(poolAddress);
|
|
20
|
-
pool.supply(asset, amount, onBehalfOf, 0);
|
|
21
|
-
return 1;
|
|
22
|
-
}
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
- `poolAddress`: Pool contract for the target chain
|
|
26
|
-
- `asset`: ERC-20 token address to supply
|
|
27
|
-
- `amount`: Amount in token's native decimals. Use `type(uint256).max` for entire balance
|
|
28
|
-
- `onBehalfOf`: Address that receives aTokens (use msg.sender for self)
|
|
29
|
-
- Requires ERC-20 approval to the Pool before calling
|
|
30
|
-
|
|
31
|
-
### withdraw
|
|
32
|
-
|
|
33
|
-
Withdraw supplied assets by burning aTokens.
|
|
34
|
-
|
|
35
|
-
```typescript
|
|
36
|
-
import { PoolABI as IPool } from "./abis";
|
|
37
|
-
|
|
38
|
-
function main(poolAddress: Address, asset: Address, amount: Uint256, to: Address): Uint256 {
|
|
39
|
-
const pool = IPool.at(poolAddress);
|
|
40
|
-
return pool.withdraw(asset, amount, to);
|
|
41
|
-
}
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
- `amount`: Use `type(uint256).max` to withdraw entire balance
|
|
45
|
-
- Returns the actual withdrawn amount
|
|
46
|
-
|
|
47
|
-
### borrow
|
|
48
|
-
|
|
49
|
-
Borrow assets against supplied collateral.
|
|
50
|
-
|
|
51
|
-
```typescript
|
|
52
|
-
import { PoolABI as IPool } from "./abis";
|
|
53
|
-
|
|
54
|
-
function main(
|
|
55
|
-
poolAddress: Address,
|
|
56
|
-
asset: Address,
|
|
57
|
-
amount: Uint256,
|
|
58
|
-
interestRateMode: Uint256,
|
|
59
|
-
onBehalfOf: Address,
|
|
60
|
-
): Uint256 {
|
|
61
|
-
const pool = IPool.at(poolAddress);
|
|
62
|
-
pool.borrow(asset, amount, interestRateMode, 0, onBehalfOf);
|
|
63
|
-
return 1;
|
|
64
|
-
}
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
- `interestRateMode`: 1 = stable (being phased out), 2 = variable. Use 2 for variable rate
|
|
68
|
-
- Must have sufficient collateral supplied first
|
|
69
|
-
|
|
70
|
-
### repay
|
|
71
|
-
|
|
72
|
-
Repay borrowed assets to reduce debt.
|
|
73
|
-
|
|
74
|
-
```typescript
|
|
75
|
-
import { PoolABI as IPool } from "./abis";
|
|
76
|
-
|
|
77
|
-
function main(
|
|
78
|
-
poolAddress: Address,
|
|
79
|
-
asset: Address,
|
|
80
|
-
amount: Uint256,
|
|
81
|
-
interestRateMode: Uint256,
|
|
82
|
-
onBehalfOf: Address,
|
|
83
|
-
): Uint256 {
|
|
84
|
-
const pool = IPool.at(poolAddress);
|
|
85
|
-
return pool.repay(asset, amount, interestRateMode, onBehalfOf);
|
|
86
|
-
}
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
- `interestRateMode`: Must match the debt type (1 = stable, 2 = variable)
|
|
90
|
-
- `amount`: Use `type(uint256).max` to repay entire debt
|
|
91
|
-
- Requires ERC-20 approval to the Pool
|
|
92
|
-
|
|
93
|
-
## Deployed Addresses
|
|
94
|
-
|
|
95
|
-
| Chain | Contract | Address |
|
|
96
|
-
| --------- | --------------------- | -------------------------------------------- |
|
|
97
|
-
| Ethereum | pool | `0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2` |
|
|
98
|
-
| Ethereum | poolAddressesProvider | `0x2f39d218133AFaB8F2B819B1066c7E434Ad94E9e` |
|
|
99
|
-
| Polygon | pool | `0x794a61358D6845594F94dc1DB02A252b5b4814aD` |
|
|
100
|
-
| Polygon | poolAddressesProvider | `0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb` |
|
|
101
|
-
| Arbitrum | pool | `0x794a61358D6845594F94dc1DB02A252b5b4814aD` |
|
|
102
|
-
| Arbitrum | poolAddressesProvider | `0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb` |
|
|
103
|
-
| Optimism | pool | `0x794a61358D6845594F94dc1DB02A252b5b4814aD` |
|
|
104
|
-
| Optimism | poolAddressesProvider | `0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb` |
|
|
105
|
-
| Avalanche | pool | `0x794a61358D6845594F94dc1DB02A252b5b4814aD` |
|
|
106
|
-
| Avalanche | poolAddressesProvider | `0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb` |
|
|
107
|
-
| Base | pool | `0xA238Dd80C259a72e81d7e4664a9801593F98d1c5` |
|
|
108
|
-
| Base | poolAddressesProvider | `0xe20fCBdBfFC4Dd138cE8b2E6FBb6CB49777ad64D` |
|
|
109
|
-
| BSC | pool | `0x6807dc923806fE8Fd134338EABCA509979a7e0cB` |
|
|
110
|
-
| Scroll | pool | `0x11fCfe756c05AD438e312a7fd934381537D3cFfe` |
|
|
111
|
-
| Fantom | pool | `0x794a61358D6845594F94dc1DB02A252b5b4814aD` |
|
|
112
|
-
| Gnosis | pool | `0xb50201558B00496A145fE76f7424749556E326D8` |
|
|
113
|
-
| Metis | pool | `0x90df02551bB792286e8D4f13E0e357b4Bf1D6a57` |
|
|
114
|
-
|
|
115
|
-
## ABI Reference
|
|
116
|
-
|
|
117
|
-
### PoolABI
|
|
118
|
-
|
|
119
|
-
- `supply(address asset, uint256 amount, address onBehalfOf, uint16 referralCode)` - Supply asset to earn interest
|
|
120
|
-
- `withdraw(address asset, uint256 amount, address to) returns (uint256)` - Withdraw supplied asset
|
|
121
|
-
- `borrow(address asset, uint256 amount, uint256 interestRateMode, uint16 referralCode, address onBehalfOf)` - Borrow against collateral
|
|
122
|
-
- `repay(address asset, uint256 amount, uint256 interestRateMode, address onBehalfOf) returns (uint256)` - Repay borrowed debt
|
|
123
|
-
- `flashLoanSimple(address receiverAddress, address asset, uint256 amount, bytes params, uint16 referralCode)` - Single-asset flash loan (receiver must implement IFlashLoanSimpleReceiver)
|
|
124
|
-
- `liquidationCall(address collateralAsset, address debtAsset, address user, uint256 debtToCover, bool receiveAToken)` - Liquidate undercollateralized position (healthFactor < 1e18)
|
|
125
|
-
- `getUserAccountData(address user) returns (uint256 totalCollateralBase, uint256 totalDebtBase, uint256 availableBorrowsBase, uint256 currentLiquidationThreshold, uint256 ltv, uint256 healthFactor)` - Get account health data (view)
|
|
126
|
-
|
|
127
|
-
## Notes
|
|
128
|
-
|
|
129
|
-
- interestRateMode: 1 = stable (deprecated on most markets), 2 = variable
|
|
130
|
-
- referralCode is always 0 (referral program inactive)
|
|
131
|
-
- V3 introduced efficiency mode (eMode) for correlated assets, isolation mode for new assets, and siloed borrowing
|
|
132
|
-
- All supply/repay operations require prior ERC-20 approval to the Pool address
|
|
133
|
-
- healthFactor < 1e18 means position is liquidatable
|
|
134
|
-
- TVL: $40B+. Audited
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
# Aave V4
|
|
2
|
-
|
|
3
|
-
Hub-and-spoke lending. Liquidity sits in a Hub; users supply, borrow and repay through Spokes, and each Spoke addresses its assets by reserve id rather than by token address.
|
|
4
|
-
|
|
5
|
-
## Category
|
|
6
|
-
|
|
7
|
-
lending | Chains: Ethereum (1), Base (8453), Avalanche (43114), Arc (5042)
|
|
8
|
-
|
|
9
|
-
## SauceScript Functions
|
|
10
|
-
|
|
11
|
-
### supply
|
|
12
|
-
|
|
13
|
-
```typescript
|
|
14
|
-
import { AaveV4SpokeABI as ISpoke } from "./abis";
|
|
15
|
-
|
|
16
|
-
function main(
|
|
17
|
-
spokeAddress: Address,
|
|
18
|
-
reserveId: Uint256,
|
|
19
|
-
amount: Uint256,
|
|
20
|
-
onBehalfOf: Address,
|
|
21
|
-
): Uint256 {
|
|
22
|
-
const spoke = ISpoke.at(spokeAddress);
|
|
23
|
-
spoke.supply(reserveId, amount, onBehalfOf);
|
|
24
|
-
return 1;
|
|
25
|
-
}
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
- `reserveId`: the Spoke's reserve id for the asset. Resolve it with `spoke.getReserveId(hub, hub.getAssetId(token))`
|
|
29
|
-
- The underlying token must be `approve`d to the Spoke first
|
|
30
|
-
|
|
31
|
-
`withdraw`, `borrow` and `repay` take the same `(reserveId, amount, onBehalfOf)` arguments.
|
|
32
|
-
|
|
33
|
-
## Deployed Addresses
|
|
34
|
-
|
|
35
|
-
| Chain | Contract | Address |
|
|
36
|
-
| --------- | ----------------------- | -------------------------------------------- |
|
|
37
|
-
| Ethereum | Core Hub | `0xCca852Bc40e560adC3b1Cc58CA5b55638ce826c9` |
|
|
38
|
-
| Ethereum | Plus Hub | `0x06002e9c4412CB7814a791eA3666D905871E536A` |
|
|
39
|
-
| Ethereum | Prime Hub | `0x943827DCA022D0F354a8a8c332dA1e5Eb9f9F931` |
|
|
40
|
-
| Ethereum | Global Dollar Hub | `0x62d63197660c080236193CA60b70E49A08E90368` |
|
|
41
|
-
| Ethereum | Main Spoke | `0x94e7A5dCbE816e498b89aB752661904E2F56c485` |
|
|
42
|
-
| Ethereum | Forex Spoke | `0xD8B93635b8C6d0fF98CbE90b5988E3F2d1Cd9da1` |
|
|
43
|
-
| Ethereum | Bluechip Spoke | `0x973a023A77420ba610f06b3858aD991Df6d85A08` |
|
|
44
|
-
| Ethereum | Ethena Correlated Spoke | `0x58131E79531caB1d52301228d1f7b842F26B9649` |
|
|
45
|
-
| Ethereum | Ethena Ecosystem Spoke | `0xba1B3D55D249692b669A164024A838309B7508AF` |
|
|
46
|
-
| Ethereum | Gold Spoke | `0x65407b940966954b23dfA3caA5C0702bB42984DC` |
|
|
47
|
-
| Ethereum | PAXG Gold Spoke | `0xAD75cE6354f87F3135cE10621d385d8D1e2562C2` |
|
|
48
|
-
| Ethereum | Lombard BTC Spoke | `0x7EC68b5695e803e98a21a9A05d744F28b0a7753D` |
|
|
49
|
-
| Ethereum | USDG Pendle Spoke | `0x956d8e0A89cfa3744428C4641b5a53B56167a7f9` |
|
|
50
|
-
| Ethereum | ether.fi E-Spoke | `0xbF10BDfE177dE0336aFD7fcCF80A904E15386219` |
|
|
51
|
-
| Ethereum | Kelp E-Spoke | `0x3131FE68C4722e726fe6B2819ED68e514395B9a4` |
|
|
52
|
-
| Ethereum | Lido E-Spoke | `0xe1900480ac69f0B296841Cd01cC37546d92F35Cd` |
|
|
53
|
-
| Ethereum | USDG Maple E-Spoke | `0x774b9655413c34809c1f1b16b654465A89EBE989` |
|
|
54
|
-
| Base | Equities Hub | `0xa4d5947Eb727A052bae69C593FfC84247EC9864E` |
|
|
55
|
-
| Base | Mag7 Spoke | `0x17905Db0e4A3514467539956c084180616AE7B8D` |
|
|
56
|
-
| Avalanche | Core Hub | `0xd07369fAE4A5BB13c9Ce446B052c7867B1AbDf6e` |
|
|
57
|
-
| Avalanche | Main Spoke | `0x435272CefF93a1E657E8ABfdf0A13e95900A3a56` |
|
|
58
|
-
| Avalanche | Forex Spoke | `0x6a37776B5E026dBdF043b4F933c323C84DD1B514` |
|
|
59
|
-
| Avalanche | AVAX Correlated Spoke | `0x3b517594277c67307CF2d7CBE6FE1D4399B68c41` |
|
|
60
|
-
| Arc | Core Hub | `0x17288dfc86205301064577b98B02b81017e6F79C` |
|
|
61
|
-
| Arc | Main Spoke | `0xB843bdC3a87A05E77E07Df9FE48928b3A34b134d` |
|
|
62
|
-
| Arc | Forex Spoke | `0x4164EBCAF74670aa74C8D4F59de6157c0780F1bB` |
|
|
63
|
-
|
|
64
|
-
## ABI Reference
|
|
65
|
-
|
|
66
|
-
### AaveV4SpokeABI
|
|
67
|
-
|
|
68
|
-
- `supply(uint256 reserveId, uint256 amount, address onBehalfOf) returns (uint256, uint256)`
|
|
69
|
-
- `withdraw(uint256 reserveId, uint256 amount, address onBehalfOf) returns (uint256, uint256)`
|
|
70
|
-
- `borrow(uint256 reserveId, uint256 amount, address onBehalfOf) returns (uint256, uint256)`
|
|
71
|
-
- `repay(uint256 reserveId, uint256 amount, address onBehalfOf) returns (uint256, uint256)`
|
|
72
|
-
- `setUsingAsCollateral(uint256 reserveId, bool usingAsCollateral, address onBehalfOf)`
|
|
73
|
-
- `getReserveId(address hub, uint256 assetId) returns (uint256)` (view)
|
|
74
|
-
- `getReserveCount() returns (uint256)` (view)
|
|
75
|
-
- `getUserSuppliedAssets(uint256 reserveId, address user) returns (uint256)` (view)
|
|
76
|
-
- `getUserTotalDebt(uint256 reserveId, address user) returns (uint256)` (view)
|
|
77
|
-
|
|
78
|
-
### AaveV4HubABI
|
|
79
|
-
|
|
80
|
-
- `getAssetId(address underlying) returns (uint256)` (view)
|
|
81
|
-
- `getAssetCount() returns (uint256)` (view)
|
|
82
|
-
- `getAssetLiquidity(uint256 assetId) returns (uint256)` (view)
|
|
83
|
-
- `isUnderlyingListed(address underlying) returns (bool)` (view)
|
|
84
|
-
|
|
85
|
-
## Notes
|
|
86
|
-
|
|
87
|
-
- Arc's market lists USDC, EURC, WETH and cirBTC. The Main Spoke carries all four; the Forex Spoke carries USDC and EURC
|
|
88
|
-
- A chain can carry several Hubs, and a Spoke draws on one or more of them: `getReserveId(hub, assetId)` needs the Hub the asset lives in. Base carries only an equities market (tokenized stocks and USDC) with no core hub
|
|
89
|
-
- Each chain also has a Treasury Spoke, which collects fees; it is not a market and is not registered
|
|
90
|
-
- Hub, Spokes and their implementations are upgradeable (EIP-1967) proxies
|
|
91
|
-
- Addresses come from bgd-labs/aave-address-book (`AaveV4Ethereum`, `AaveV4Base`, `AaveV4Avalanche`, `AaveV4Arc`)
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
# Abracadabra
|
|
2
|
-
|
|
3
|
-
Lending protocol that lets users borrow MIM stablecoin against yield-bearing collateral via isolated Cauldron markets built on DegenBox.
|
|
4
|
-
|
|
5
|
-
## Category
|
|
6
|
-
|
|
7
|
-
cdp | Chains: Ethereum, Arbitrum
|
|
8
|
-
|
|
9
|
-
## Key Operations
|
|
10
|
-
|
|
11
|
-
- **borrow**: Borrow MIM from a Cauldron
|
|
12
|
-
- **repay**: Repay MIM debt
|
|
13
|
-
- **addCollateral**: Add collateral to a Cauldron position
|
|
14
|
-
- **removeCollateral**: Remove collateral from a Cauldron position
|
|
15
|
-
|
|
16
|
-
## SDK Usage
|
|
17
|
-
|
|
18
|
-
```typescript
|
|
19
|
-
import { protocolInfo, deployments, sauceFunctions } from "@eco-incorp/sauce/protocols/abracadabra";
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## SauceScript Examples
|
|
23
|
-
|
|
24
|
-
```typescript
|
|
25
|
-
// Borrow MIM from Cauldron
|
|
26
|
-
import { CauldronABI as ICauldron } from "./abis";
|
|
27
|
-
function main(
|
|
28
|
-
cauldronAddress: Address,
|
|
29
|
-
to: Address,
|
|
30
|
-
amount: Uint256,
|
|
31
|
-
): { part: Uint256; share: Uint256 } {
|
|
32
|
-
const cauldron = ICauldron.at(cauldronAddress);
|
|
33
|
-
return cauldron.borrow(to, amount);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
// Repay MIM debt
|
|
37
|
-
import { CauldronABI as ICauldron } from "./abis";
|
|
38
|
-
function main(cauldronAddress: Address, to: Address, part: Uint256): Uint256 {
|
|
39
|
-
const cauldron = ICauldron.at(cauldronAddress);
|
|
40
|
-
return cauldron.repay(to, 0, part);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
// Add collateral
|
|
44
|
-
import { CauldronABI as ICauldron } from "./abis";
|
|
45
|
-
function main(cauldronAddress: Address, to: Address, share: Uint256): Uint256 {
|
|
46
|
-
const cauldron = ICauldron.at(cauldronAddress);
|
|
47
|
-
cauldron.addCollateral(to, 0, share);
|
|
48
|
-
return 1;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// Remove collateral
|
|
52
|
-
import { CauldronABI as ICauldron } from "./abis";
|
|
53
|
-
function main(cauldronAddress: Address, to: Address, share: Uint256): Uint256 {
|
|
54
|
-
const cauldron = ICauldron.at(cauldronAddress);
|
|
55
|
-
cauldron.removeCollateral(to, share);
|
|
56
|
-
return 1;
|
|
57
|
-
}
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
## Key Addresses
|
|
61
|
-
|
|
62
|
-
| Chain | Contract | Address |
|
|
63
|
-
| -------- | -------- | -------------------------------------------- |
|
|
64
|
-
| Ethereum | degenBox | `0xd96f48665a1410C0cd669A88898ecA36B9Fc2cce` |
|
|
65
|
-
| Ethereum | mim | `0x99D8a9C45b2ecA8864373A26D1459e3Dff1e17F3` |
|
|
66
|
-
| Arbitrum | degenBox | `0x7C8FeF8eA9b1fE46A7689bfb8149341C90431D38` |
|
|
67
|
-
| Arbitrum | mim | `0xFEa7a6a0B346362BF88A9e4A88416B77a57D6c2A` |
|
|
68
|
-
|
|
69
|
-
## ABI Methods
|
|
70
|
-
|
|
71
|
-
### CauldronABI
|
|
72
|
-
|
|
73
|
-
- `borrow(address,uint256)` - Borrow MIM. Params: to (recipient), amount (MIM to borrow). Returns (part, share) - part is debt units, share is DegenBox shares
|
|
74
|
-
- `repay(address,bool,uint256)` - Repay MIM debt. Params: to (whose debt to repay), skim (true=use DegenBox balance), part (debt part to repay). Returns amount repaid
|
|
75
|
-
- `addCollateral(address,bool,uint256)` - Add collateral. Params: to (position owner), skim (true=use DegenBox balance), share (collateral shares to add)
|
|
76
|
-
- `removeCollateral(address,uint256)` - Remove collateral. Params: to (recipient), share (collateral shares to remove)
|
|
77
|
-
- `userCollateralShare(address)` - Query user's collateral. Params: user. Returns share amount
|
|
78
|
-
- `userBorrowPart(address)` - Query user's debt. Params: user. Returns borrow part
|
|
79
|
-
|
|
80
|
-
### DegenBoxABI
|
|
81
|
-
|
|
82
|
-
- `deposit(address,address,address,uint256,uint256)` - Deposit tokens into DegenBox. Payable. Params: token, from, to, amount (0 if using share), share (0 if using amount). Returns (amountOut, shareOut)
|
|
83
|
-
- `withdraw(address,address,address,uint256,uint256)` - Withdraw from DegenBox. Params: token, from, to, amount (0 if using share), share (0 if using amount). Returns (amountOut, shareOut)
|
|
84
|
-
- `balanceOf(address,address)` - Query balance. Params: token, user. Returns share amount
|
|
85
|
-
|
|
86
|
-
## Notes
|
|
87
|
-
|
|
88
|
-
- Isolated Cauldron markets - each has specific collateral type and risk parameters
|
|
89
|
-
- DegenBox is the underlying vault that holds all assets (BentoBox fork)
|
|
90
|
-
- Amounts use "part" (debt accounting) and "share" (DegenBox shares) - not raw token amounts
|
|
91
|
-
- skim=false means transfer tokens from caller; skim=true means use tokens already in DegenBox
|
|
92
|
-
- Deposit collateral to DegenBox first, then addCollateral to a Cauldron
|
|
93
|
-
- Common collateral: sSPELL, yv tokens, LP tokens, yield-bearing assets
|
package/sdk/src/skills/across.md
DELETED
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
# Across
|
|
2
|
-
|
|
3
|
-
Optimistic cross-chain bridge powered by UMA's optimistic oracle. Uses relayers for fast fills and canonical bridges for settlement.
|
|
4
|
-
|
|
5
|
-
## Category
|
|
6
|
-
|
|
7
|
-
bridge | Direction: L2-to-L2, L1-to-L2, L2-to-L1 | Chains: Ethereum (1), Arbitrum (42161), Optimism (10), Base (8453), Polygon (137), zkSync (324), Linea (59144), Mode (34443), Blast (81457), Scroll (534352), Arc (5042)
|
|
8
|
-
|
|
9
|
-
## SauceScript Functions
|
|
10
|
-
|
|
11
|
-
### bridge
|
|
12
|
-
|
|
13
|
-
Deposit tokens into the SpokePool for a cross-chain transfer, through `depositV3`.
|
|
14
|
-
|
|
15
|
-
```typescript
|
|
16
|
-
import { AcrossSpokePoolABI as ISpokePool } from "./abis";
|
|
17
|
-
|
|
18
|
-
function main(
|
|
19
|
-
spokePoolAddress: Address,
|
|
20
|
-
token: Address,
|
|
21
|
-
outputToken: Address,
|
|
22
|
-
amount: Uint256,
|
|
23
|
-
outputAmount: Uint256,
|
|
24
|
-
destinationChainId: Uint256,
|
|
25
|
-
recipient: Address,
|
|
26
|
-
quoteTimestamp: Uint256,
|
|
27
|
-
fillDeadline: Uint256,
|
|
28
|
-
): Uint256 {
|
|
29
|
-
const spokePool = ISpokePool.at(spokePoolAddress);
|
|
30
|
-
spokePool.depositV3(
|
|
31
|
-
ctx.msgSender(),
|
|
32
|
-
recipient,
|
|
33
|
-
token,
|
|
34
|
-
outputToken,
|
|
35
|
-
amount,
|
|
36
|
-
outputAmount,
|
|
37
|
-
destinationChainId,
|
|
38
|
-
0x0000000000000000000000000000000000000000,
|
|
39
|
-
quoteTimestamp,
|
|
40
|
-
fillDeadline,
|
|
41
|
-
0,
|
|
42
|
-
"",
|
|
43
|
-
);
|
|
44
|
-
return 1;
|
|
45
|
-
}
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
- `token` / `outputToken`: ERC-20 to bridge, and the token the recipient receives on the destination
|
|
49
|
-
- `outputAmount`: amount the relayer delivers (input minus the quoted fees)
|
|
50
|
-
- `quoteTimestamp`: the quote's timestamp; the SpokePool rejects one outside its `depositQuoteTimeBuffer`
|
|
51
|
-
- `fillDeadline`: unix time after which the deposit can no longer be filled
|
|
52
|
-
- `recipient`: Address to receive tokens on destination chain
|
|
53
|
-
- Requires ERC-20 approval to the SpokePool
|
|
54
|
-
|
|
55
|
-
## Deployed Addresses
|
|
56
|
-
|
|
57
|
-
| Chain | Contract | Address |
|
|
58
|
-
| -------- | --------- | -------------------------------------------- |
|
|
59
|
-
| Ethereum | hubPool | `0xc186fA914353c44b2E33eBE05f21846F1048bEda` |
|
|
60
|
-
| Ethereum | spokePool | `0x5c7BCd6E7De5423a257D81B442095A1a6ced35C5` |
|
|
61
|
-
| Arbitrum | spokePool | `0xe35e9842fceaCA96570B734083f4a58e8F7C5f2A` |
|
|
62
|
-
| Optimism | spokePool | `0x6f26Bf09B1C792e3228e5467807a900A503c0281` |
|
|
63
|
-
| Base | spokePool | `0x09aea4b2242abC8bb4BB78D537A67a245A7bEC64` |
|
|
64
|
-
| Polygon | spokePool | `0x9295ee1d8C5b022Be115A2AD3c30C72E34e7F096` |
|
|
65
|
-
| zkSync | spokePool | `0xE0B015E54d54fc84a6cB9B666099c46adE9335FF` |
|
|
66
|
-
| Linea | spokePool | `0x7E63A5f1a8F0B4d0934B2f2327DAED3F6bb2ee75` |
|
|
67
|
-
| Mode | spokePool | `0x3baD7AD0728f9917d1Bf08af5782dCbD516cDd96` |
|
|
68
|
-
| Blast | spokePool | `0x2D509190Ed0172ba588407D4c2df918F955Cc6E1` |
|
|
69
|
-
| Scroll | spokePool | `0x3baD7AD0728f9917d1Bf08af5782dCbD516cDd96` |
|
|
70
|
-
|
|
71
|
-
## ABI Reference
|
|
72
|
-
|
|
73
|
-
### AcrossSpokePoolABI
|
|
74
|
-
|
|
75
|
-
- `depositV3(address depositor, address recipient, address inputToken, address outputToken, uint256 inputAmount, uint256 outputAmount, uint256 destinationChainId, address exclusiveRelayer, uint32 quoteTimestamp, uint32 fillDeadline, uint32 exclusivityParameter, bytes message)` [payable] - EVM-address deposit. Supports cross-chain swaps (inputToken != outputToken), exclusive relayer, and arbitrary message passing
|
|
76
|
-
- `deposit(bytes32 depositor, bytes32 recipient, bytes32 inputToken, bytes32 outputToken, uint256 inputAmount, uint256 outputAmount, uint256 destinationChainId, bytes32 exclusiveRelayer, uint32 quoteTimestamp, uint32 fillDeadline, uint32 exclusivityParameter, bytes message)` [payable] - The same deposit with every address as `bytes32`, so it can name non-EVM recipients and tokens. The legacy address-typed `deposit` no longer exists on the deployed SpokePools
|
|
77
|
-
|
|
78
|
-
### AcrossHubPoolABI
|
|
79
|
-
|
|
80
|
-
- `liquidityUtilizationCurrent(address l1Token) returns (uint256)` - Get current utilization rate. Not a view: it syncs pool balances first
|
|
81
|
-
- `pooledTokens(address l1Token) returns (address lpToken, bool isEnabled, uint32 lastLpFeeUpdate, int256 utilizedReserves, uint256 liquidReserves, uint256 undistributedLpFees)` - Get pool token info (view)
|
|
82
|
-
|
|
83
|
-
## Notes
|
|
84
|
-
|
|
85
|
-
- Fast fills: relayers fill deposits on destination within minutes, then claim reimbursement via optimistic oracle
|
|
86
|
-
- Finality: deposit confirmation on source chain, fill within 1-10 minutes typically
|
|
87
|
-
- Requires ERC-20 approval to the SpokePool address on source chain
|
|
88
|
-
- HubPool on Ethereum only -- SpokePools on all supported L2s
|
|
89
|
-
- TVL: $500M+. Audited
|
|
90
|
-
- On Arc (5042) the SpokePool's `wrappedNativeToken()` is the zero address, so deposit ERC-20s (USDC is `0x3600000000000000000000000000000000000000`), not native value
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
# Aerodrome Slipstream
|
|
2
|
-
|
|
3
|
-
Aerodrome's concentrated-liquidity pools (Uniswap V3-style, keyed by tick spacing rather than fee), on Base and, as Aero Lite, on Arc.
|
|
4
|
-
|
|
5
|
-
## Category
|
|
6
|
-
|
|
7
|
-
dex | Chains: Base (8453), Arc (5042)
|
|
8
|
-
|
|
9
|
-
## SauceScript Functions
|
|
10
|
-
|
|
11
|
-
### getPool
|
|
12
|
-
|
|
13
|
-
```typescript
|
|
14
|
-
import { SlipstreamCLFactoryABI as ICLFactory } from "./abis";
|
|
15
|
-
|
|
16
|
-
function main(
|
|
17
|
-
factoryAddress: Address,
|
|
18
|
-
tokenA: Address,
|
|
19
|
-
tokenB: Address,
|
|
20
|
-
tickSpacing: Uint256,
|
|
21
|
-
): Address {
|
|
22
|
-
const factory = ICLFactory.at(factoryAddress);
|
|
23
|
-
return factory.getPool(tokenA, tokenB, tickSpacing);
|
|
24
|
-
}
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
- Pools are keyed by `(tokenA, tokenB, tickSpacing)`. `tickSpacingToFee(tickSpacing)` gives a spacing's default fee
|
|
28
|
-
- On Base, ask the factory of the generation the pool was created in: a pool exists under one CLFactory only (the WETH/USDC tick-spacing-100 pool is under the initial one)
|
|
29
|
-
|
|
30
|
-
## Deployed Addresses
|
|
31
|
-
|
|
32
|
-
| Chain | Contract | Address |
|
|
33
|
-
| ----- | --------------------------------------- | -------------------------------------------- |
|
|
34
|
-
| Base | CLFactory (initial) | `0x5e7BB104d84c7CB9B682AaC2F3d509f5F406809A` |
|
|
35
|
-
| Base | NonfungiblePositionManager (initial) | `0x827922686190790b37229fd06084350E74485b72` |
|
|
36
|
-
| Base | CLFactory (Gauge Caps) | `0xaDe65c38CD4849aDBA595a4323a8C7DdfE89716a` |
|
|
37
|
-
| Base | NonfungiblePositionManager (Gauge Caps) | `0xa990C6a764b73BF43cee5Bb40339c3322FB9D55F` |
|
|
38
|
-
| Base | CLFactory (Gauges V3) | `0xf8f2eB4940CFE7d13603DDDD87f123820Fc061Ef` |
|
|
39
|
-
| Base | NonfungiblePositionManager (Gauges V3) | `0xe1f8cd9AC4e4A65F54f38a5CdAfCA44f6dD68b53` |
|
|
40
|
-
| Arc | CLFactory | `0xb89Df768aF2CFE637ceB352c587Fe8edAf491d03` |
|
|
41
|
-
| Arc | NonfungiblePositionManager | `0xc84bB45D43CD25D02b83B4C085eaA4e08da8f473` |
|
|
42
|
-
| Arc | Metarouter | `0x7275FA44c67BbA8d921422e600B4ed396209c886` |
|
|
43
|
-
|
|
44
|
-
The Base roles are `clFactory`/`nonfungiblePositionManager` (initial), `clFactoryGaugeCaps`/`nonfungiblePositionManagerGaugeCaps` and `clFactoryGaugesV3`/`nonfungiblePositionManagerGaugesV3`.
|
|
45
|
-
|
|
46
|
-
## ABI Reference
|
|
47
|
-
|
|
48
|
-
- `SlipstreamCLFactoryABI`: `getPool(address,address,int24) returns (address)`, `allPoolsLength() returns (uint256)`, `tickSpacingToFee(int24) returns (uint24)`
|
|
49
|
-
- `SlipstreamPositionManagerABI`: `factory() returns (address)`, `positions(uint256)`
|
|
50
|
-
- `AeroMetarouterABI`: `execute(bytes commands, bytes[] inputs, uint256 deadline)` - Aero's command-encoded router
|
|
51
|
-
|
|
52
|
-
## Notes
|
|
53
|
-
|
|
54
|
-
- Base's addresses are from the aerodrome-finance/slipstream README. Three generations are live there, and new gauges deploy from Gauges V3. Base has no Metarouter
|
|
55
|
-
- The `aerodrome` module carries Aerodrome's basic (stable/volatile) pools on Base; this one carries only Slipstream. Velodrome's Slipstream on Optimism and the Superchain is not in either
|
|
56
|
-
- Aero publishes no address table for Arc. Each address here is Sourcify-verified from the dromos-labs/metadex-public codebase, and the position manager reports `factory() == CLFactory`
|
|
57
|
-
- No voter or gauges are deployed on Arc yet, so pools there earn swap fees only
|
package/sdk/src/skills/aevo.md
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
# Aevo
|
|
2
|
-
|
|
3
|
-
High-performance options and perpetuals exchange built on a custom OP Stack rollup. Off-chain orderbook with on-chain settlement.
|
|
4
|
-
|
|
5
|
-
## Category
|
|
6
|
-
|
|
7
|
-
options | Chains: Ethereum (deposits)
|
|
8
|
-
|
|
9
|
-
## Key Operations
|
|
10
|
-
|
|
11
|
-
- **depositERC20**: Deposit ERC-20 tokens into Aevo L2 for trading
|
|
12
|
-
|
|
13
|
-
## SDK Usage
|
|
14
|
-
|
|
15
|
-
```typescript
|
|
16
|
-
import { protocolInfo, deployments, sauceFunctions } from "@eco-incorp/sauce/protocols/aevo";
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## SauceScript Examples
|
|
20
|
-
|
|
21
|
-
```typescript
|
|
22
|
-
// Deposit ERC-20 into Aevo
|
|
23
|
-
import { DepositContractABI as IDeposit } from "./abis";
|
|
24
|
-
function main(
|
|
25
|
-
depositAddress: Address,
|
|
26
|
-
token: Address,
|
|
27
|
-
l2Token: Address,
|
|
28
|
-
amount: Uint256,
|
|
29
|
-
minGasLimit: Uint256,
|
|
30
|
-
): Uint256 {
|
|
31
|
-
const deposit = IDeposit.at(depositAddress);
|
|
32
|
-
deposit.depositERC20(token, l2Token, amount, minGasLimit, "");
|
|
33
|
-
return 1;
|
|
34
|
-
}
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
## Key Addresses
|
|
38
|
-
|
|
39
|
-
| Chain | Contract | Address |
|
|
40
|
-
| -------- | --------------- | -------------------------------------------- |
|
|
41
|
-
| Ethereum | depositContract | `0x4082C9647c098a6493Fb499EaE63b5ce3259C574` |
|
|
42
|
-
|
|
43
|
-
## ABI Methods
|
|
44
|
-
|
|
45
|
-
### DepositContractABI
|
|
46
|
-
|
|
47
|
-
The deposit contract is Aevo's OP Stack `L1StandardBridge`, so these are the standard bridge entry points.
|
|
48
|
-
|
|
49
|
-
- `depositERC20(address l1Token, address l2Token, uint256 amount, uint32 minGasLimit, bytes extraData)` - Deposit ERC-20 tokens to Aevo L2. `l2Token` is the token's Aevo L2 counterpart; `minGasLimit` is the L2 execution gas. Approve token to depositContract first
|
|
50
|
-
- `depositETH(uint32 minGasLimit, bytes extraData)` - Deposit ETH to Aevo L2. Payable (send ETH as msg.value)
|
|
51
|
-
|
|
52
|
-
## Notes
|
|
53
|
-
|
|
54
|
-
- Custom OP Stack rollup with off-chain orderbook for sub-second matching
|
|
55
|
-
- Supports options and perpetual futures trading
|
|
56
|
-
- Deposits are on Ethereum L1, trading happens on Aevo L2
|
|
57
|
-
- Withdrawals processed by the rollup bridge (takes ~7 days for L2 to L1)
|
|
58
|
-
- Approve ERC-20 tokens to depositContract before calling depositERC20
|