@dev.sail.money/sailor 0.0.2-19 → 0.0.2-21
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/examples/permissions/BoundedApproveAndCallBatch.sol +179 -0
- package/examples/permissions/BoundedBet_Limitless_Base.sol +8 -7
- package/examples/permissions/BoundedBorrow_AaveV3_Arbitrum.sol +13 -13
- package/examples/permissions/BoundedPerp_GMXv2_Arbitrum.sol +50 -39
- package/examples/permissions/BoundedStake_Venice_Base.sol +85 -0
- package/examples/permissions/BoundedSupply_AaveV3_Arbitrum.sol +84 -0
- package/examples/permissions/BoundedSwap_UniswapV3_Base.sol +11 -9
- package/examples/permissions/BoundedSwap_UniswapV4_Unichain.sol +10 -8
- package/examples/permissions/BoundedTransfer_ERC20_Ethereum.sol +6 -6
- package/examples/permissions/BoundedVault_ERC4626_Base.sol +97 -0
- package/examples/permissions/README.md +29 -2
- package/examples/permissions/interfaces/IBatchPermission.sol +38 -0
- package/package.json +1 -1
- package/packages/cli/dist/index.cjs +1172 -588
- package/packages/cli/dist/server.cjs +139 -948
- package/packages/sdk/dist/index.d.ts +1 -1
- package/packages/sdk/dist/index.d.ts.map +1 -1
- package/packages/sdk/dist/index.js +1 -1
- package/packages/sdk/dist/index.js.map +1 -1
- package/packages/sdk/dist/intelligence.d.ts +1 -1
- package/packages/sdk/dist/intelligence.js +1 -1
- package/packages/sdk/dist/safe.d.ts +83 -0
- package/packages/sdk/dist/safe.d.ts.map +1 -1
- package/packages/sdk/dist/safe.js +92 -1
- package/packages/sdk/dist/safe.js.map +1 -1
- package/packages/ui/dist/assets/Arc-VDBY7LNS-BChRXCXW.js +1 -0
- package/packages/ui/dist/assets/Brave-BRAKJXDS-mq-Xo37j.js +1 -0
- package/packages/ui/dist/assets/Browser-76IHF3Y2-BMhRaC5Z.js +1 -0
- package/packages/ui/dist/assets/Chrome-65Q5P54Y-DR9MQEVr.js +1 -0
- package/packages/ui/dist/assets/Edge-XSPUTORV-DEoZslQE.js +1 -0
- package/packages/ui/dist/assets/Firefox-AAHGJQIP-Bp_Hm04m.js +1 -0
- package/packages/ui/dist/assets/Linux-OO4TNCLJ-B0aw93n9.js +1 -0
- package/packages/ui/dist/assets/Macos-MW4AE7LN-Vvm8Drw3.js +1 -0
- package/packages/ui/dist/assets/Opera-KQZLSACL-Cwv5MDFy.js +1 -0
- package/packages/ui/dist/assets/Safari-ZPL37GXR-C4Ggg6rz.js +1 -0
- package/packages/ui/dist/assets/Windows-PPTHQER6-BlyV2p7Y.js +1 -0
- package/packages/ui/dist/assets/add-BzRDG6go.js +15 -0
- package/packages/ui/dist/assets/all-wallets-C6juL2cm.js +6 -0
- package/packages/ui/dist/assets/apechain-SX5YFU6N-q5qBv-mp.js +1 -0
- package/packages/ui/dist/assets/app-store-DSJ1ow5G.js +17 -0
- package/packages/ui/dist/assets/apple-CUEgIX9k.js +18 -0
- package/packages/ui/dist/assets/ar_AR-LIPSOZP5-BQrIDibT.js +1519 -0
- package/packages/ui/dist/assets/arbitrum-WURIBY6W-CqVkHBr5.js +1 -0
- package/packages/ui/dist/assets/arrow-bottom-BOhBj1Je.js +8 -0
- package/packages/ui/dist/assets/arrow-bottom-circle-C4CzuHiR.js +11 -0
- package/packages/ui/dist/assets/arrow-left-BTD8zZ12.js +8 -0
- package/packages/ui/dist/assets/arrow-right-qcOukPwm.js +8 -0
- package/packages/ui/dist/assets/arrow-top-C0f2945G.js +8 -0
- package/packages/ui/dist/assets/assets-Q6ZU7ZJ5-P8HioiAD.js +1 -0
- package/packages/ui/dist/assets/avalanche-KOMJD3XY-Dsn_JPR4.js +1 -0
- package/packages/ui/dist/assets/bank-BSWzLP3R.js +14 -0
- package/packages/ui/dist/assets/base-OAXLRA4F-CoYTVIiL.js +1 -0
- package/packages/ui/dist/assets/base-QS6CYWIN-CsjdbWCf.js +1 -0
- package/packages/ui/dist/assets/basic-DGTBsmnG.js +2128 -0
- package/packages/ui/dist/assets/berachain-NJECWIVC-DumxnFvf.js +1 -0
- package/packages/ui/dist/assets/blast-V555OVXZ-BbhJh1tj.js +1 -0
- package/packages/ui/dist/assets/browser-DJNepafc.js +14 -0
- package/packages/ui/dist/assets/bsc-N647EYR2-B2nLKXWV.js +1 -0
- package/packages/ui/dist/assets/card-u08LJx43.js +14 -0
- package/packages/ui/dist/assets/ccip-DcWZjG37.js +1 -0
- package/packages/ui/dist/assets/celo-GEP4TUHG-CenIBYLU.js +1 -0
- package/packages/ui/dist/assets/checkmark-DVD-obDl.js +11 -0
- package/packages/ui/dist/assets/checkmark-bold-CSXDqIAx.js +8 -0
- package/packages/ui/dist/assets/chevron-bottom-Be7f0gi2.js +8 -0
- package/packages/ui/dist/assets/chevron-left-v8cgKRhQ.js +8 -0
- package/packages/ui/dist/assets/chevron-right-B0ux2X-3.js +8 -0
- package/packages/ui/dist/assets/chevron-top-De-a8tmA.js +8 -0
- package/packages/ui/dist/assets/chrome-store-BIIIRGPA.js +61 -0
- package/packages/ui/dist/assets/clock-8d5kvRPQ.js +8 -0
- package/packages/ui/dist/assets/close-BSSJkFv0.js +8 -0
- package/packages/ui/dist/assets/coinPlaceholder-CLJaQiUO.js +8 -0
- package/packages/ui/dist/assets/compass-CR1zP0b-.js +8 -0
- package/packages/ui/dist/assets/connect-UA7M4XW6-IY3X6Bmr.js +1 -0
- package/packages/ui/dist/assets/copy-CGkuIFo6.js +15 -0
- package/packages/ui/dist/assets/core-ea860JM2.js +907 -0
- package/packages/ui/dist/assets/create-FASO7PVG-D_rvSpre.js +1 -0
- package/packages/ui/dist/assets/cronos-HJPAQTAE-BEOvlOC4.js +1 -0
- package/packages/ui/dist/assets/cursor-DCRoxgSY.js +3 -0
- package/packages/ui/dist/assets/cursor-transparent-C8s5LY_P.js +12 -0
- package/packages/ui/dist/assets/de_DE-YE3KOFHU-BRt5ztUe.js +1519 -0
- package/packages/ui/dist/assets/degen-FQQ4XGHB-CeHTs88l.js +1 -0
- package/packages/ui/dist/assets/desktop-CQyixryE.js +9 -0
- package/packages/ui/dist/assets/disconnect-Ct0234l0.js +8 -0
- package/packages/ui/dist/assets/discord-haYPGMDl.js +17 -0
- package/packages/ui/dist/assets/es_419-7LMPU7G4-DH7rM0yQ.js +1519 -0
- package/packages/ui/dist/assets/ethereum-RGGVA4PY-SWGOlkuk.js +1 -0
- package/packages/ui/dist/assets/etherscan-BTLrS1KK.js +6 -0
- package/packages/ui/dist/assets/events-wdo_D3Zy.js +1 -0
- package/packages/ui/dist/assets/exclamation-triangle-CMlYpOat.js +4 -0
- package/packages/ui/dist/assets/extension-CNGBCbo8.js +8 -0
- package/packages/ui/dist/assets/external-link-DmYJSKcL.js +8 -0
- package/packages/ui/dist/assets/facebook-F0iMVTem.js +26 -0
- package/packages/ui/dist/assets/fallback-BqeFDEuW.js +1 -0
- package/packages/ui/dist/assets/farcaster-CYr9I6UA.js +12 -0
- package/packages/ui/dist/assets/filters-CxE97nqU.js +8 -0
- package/packages/ui/dist/assets/flow-5FQJFCTK-CUie2reO.js +1 -0
- package/packages/ui/dist/assets/fr_FR-VBJP3ZLL-B-_ocunw.js +1519 -0
- package/packages/ui/dist/assets/github-CjRht-Wv.js +18 -0
- package/packages/ui/dist/assets/gnosis-37ZC4RBL-B137OtHZ.js +1 -0
- package/packages/ui/dist/assets/google-3G0o4pR9.js +18 -0
- package/packages/ui/dist/assets/gravity-J5YQHTYH-Bj6B0uod.js +1 -0
- package/packages/ui/dist/assets/hardhat-TX56IT5N-CV1FY-wE.js +1 -0
- package/packages/ui/dist/assets/help-circle-C5gNChqZ.js +12 -0
- package/packages/ui/dist/assets/hi_IN-WBVD5XYI-D73g2UFs.js +1519 -0
- package/packages/ui/dist/assets/hyperevm-VKPAA4SA-CHwraEsx.js +1 -0
- package/packages/ui/dist/assets/id-C6_zK0Tb.js +12 -0
- package/packages/ui/dist/assets/id_ID-SBYANJ7G-Cjpa4ay6.js +1519 -0
- package/packages/ui/dist/assets/image-DsU8Irlu.js +4 -0
- package/packages/ui/dist/assets/index-BCb0Nju4.js +1775 -0
- package/packages/ui/dist/assets/index-CjvcQefO.js +1 -0
- package/packages/ui/dist/assets/index-D1lgDFZV.js +16 -0
- package/packages/ui/dist/assets/index-DDKDa0s2.css +1 -0
- package/packages/ui/dist/assets/index-DQ44LBvq.js +395 -0
- package/packages/ui/dist/assets/index-Drc17uEc.js +1 -0
- package/packages/ui/dist/assets/index-c8ZmMTds.js +1 -0
- package/packages/ui/dist/assets/index.es-BhDQmlR4.js +26 -0
- package/packages/ui/dist/assets/info-CAKKH6T2.js +3 -0
- package/packages/ui/dist/assets/info-circle-CHV1idfy.js +12 -0
- package/packages/ui/dist/assets/ink-FZMYZWHG-62p-5IK5.js +1 -0
- package/packages/ui/dist/assets/ja_JP-ZRMWJV3I-DXbifiMm.js +1519 -0
- package/packages/ui/dist/assets/kaia-65D2U3PU-JmuLQ4gC.js +1 -0
- package/packages/ui/dist/assets/ko_KR-FR54RFUG-upinSHjQ.js +1519 -0
- package/packages/ui/dist/assets/lightbulb-ew10LUMl.js +3 -0
- package/packages/ui/dist/assets/linea-QRMVQ5DY-DuI3vv0d.js +1 -0
- package/packages/ui/dist/assets/login-UP3DZBGS-Db_wM5oQ.js +1 -0
- package/packages/ui/dist/assets/mail-CACYeWXj.js +8 -0
- package/packages/ui/dist/assets/manta-SI27YFEJ-CpVOKa06.js +1 -0
- package/packages/ui/dist/assets/mantle-CKIUT334-DR2WgqzU.js +1 -0
- package/packages/ui/dist/assets/metaMaskWallet-EI6MED72-D5HFOsnz.js +1 -0
- package/packages/ui/dist/assets/metamask-sdk-BUYu4RDE.js +542 -0
- package/packages/ui/dist/assets/mobile-DX601q1y.js +9 -0
- package/packages/ui/dist/assets/monad-4KWC6TSS-DVXSkpiz.js +1 -0
- package/packages/ui/dist/assets/more-CQGeX45N.js +11 -0
- package/packages/ui/dist/assets/ms_MY-EZSGYYYQ-4cPLK-3L.js +1519 -0
- package/packages/ui/dist/assets/native-CJ5et6AR.js +1 -0
- package/packages/ui/dist/assets/network-placeholder-BQw8E4X-.js +14 -0
- package/packages/ui/dist/assets/nftPlaceholder-CifJ2CzA.js +8 -0
- package/packages/ui/dist/assets/off-B6oUArCZ.js +8 -0
- package/packages/ui/dist/assets/optimism-HAF2GUT7-ec6Nqxs9.js +1 -0
- package/packages/ui/dist/assets/parseSignature-DjWIdHkx.js +1 -0
- package/packages/ui/dist/assets/play-store-Kq51oh3r.js +32 -0
- package/packages/ui/dist/assets/plus-BxZxVpff.js +13 -0
- package/packages/ui/dist/assets/polygon-WW6ZI7PM-DXlmm4L1.js +1 -0
- package/packages/ui/dist/assets/pt_BR-JQFQ3P4L-DOHfdcA2.js +1519 -0
- package/packages/ui/dist/assets/qr-code-CSBFpyhP.js +6 -0
- package/packages/ui/dist/assets/rainbowWallet-O26YNBMX-DUhYus-9.js +1 -0
- package/packages/ui/dist/assets/recycle-horizontal-D0HyLkot.js +9 -0
- package/packages/ui/dist/assets/refresh-BAQo228i.js +8 -0
- package/packages/ui/dist/assets/refresh-S4T5V5GX-CwqIaaxK.js +1 -0
- package/packages/ui/dist/assets/reown-logo-DeUbwRp6.js +12 -0
- package/packages/ui/dist/assets/ronin-EMCPYXZT-N-QBHZdV.js +1 -0
- package/packages/ui/dist/assets/ru_RU-Z42UEJBP-Cvb2oWxQ.js +1519 -0
- package/packages/ui/dist/assets/safeWallet-5MNKTR5Z-D-5imDLD.js +1 -0
- package/packages/ui/dist/assets/sanko-RHQYXGM5-OX010CbN.js +1 -0
- package/packages/ui/dist/assets/scan-4UYSQ56Q-CjMz6-XC.js +1 -0
- package/packages/ui/dist/assets/scroll-5OBGQVOV-DJFECiai.js +1 -0
- package/packages/ui/dist/assets/search-C8Sd0Mpz.js +8 -0
- package/packages/ui/dist/assets/secp256k1-BujG3JoP.js +1 -0
- package/packages/ui/dist/assets/send-B0JwUp6Q.js +15 -0
- package/packages/ui/dist/assets/sign-A7IJEUT5-CGsRnPrd.js +1 -0
- package/packages/ui/dist/assets/superposition-HG6MMR2Y-bRkgatRO.js +1 -0
- package/packages/ui/dist/assets/swapHorizontal-B2k5yDqc.js +8 -0
- package/packages/ui/dist/assets/swapHorizontalBold-yQqq0yPi.js +8 -0
- package/packages/ui/dist/assets/swapHorizontalMedium-NafYmdDj.js +16 -0
- package/packages/ui/dist/assets/swapHorizontalRoundedBold-BUn0GwEK.js +8 -0
- package/packages/ui/dist/assets/swapVertical-Be1m6suD.js +8 -0
- package/packages/ui/dist/assets/telegram-D-u7QHT5.js +16 -0
- package/packages/ui/dist/assets/th_TH-4YB4VSB2-BUipNP-V.js +1519 -0
- package/packages/ui/dist/assets/three-dots-B6Y4DFOR.js +5 -0
- package/packages/ui/dist/assets/tr_TR-5FKHPPIO-D5jTpIm9.js +1519 -0
- package/packages/ui/dist/assets/twitch-DSy1rhWQ.js +18 -0
- package/packages/ui/dist/assets/twitterIcon-tac1plSa.js +6 -0
- package/packages/ui/dist/assets/uk_UA-ZD4IBC52-DgnQrpzl.js +1519 -0
- package/packages/ui/dist/assets/unichain-C5BWO2ZY-BfguYsnu.js +1 -0
- package/packages/ui/dist/assets/verify-6MylluBY.js +8 -0
- package/packages/ui/dist/assets/verify-filled-CZc0otb8.js +8 -0
- package/packages/ui/dist/assets/vi_VN-5EVRZKLY-x078672g.js +1519 -0
- package/packages/ui/dist/assets/w3m-modal-DbT03Pyz.js +642 -0
- package/packages/ui/dist/assets/wallet-473-ObZE.js +8 -0
- package/packages/ui/dist/assets/wallet-placeholder-B9h3WvTk.js +14 -0
- package/packages/ui/dist/assets/walletConnectWallet-YHWKVTDY-D3lyiczV.js +1 -0
- package/packages/ui/dist/assets/walletconnect-5GHIf5FR.js +30 -0
- package/packages/ui/dist/assets/warning-circle-8A009Dx3.js +12 -0
- package/packages/ui/dist/assets/x-B4jK8e8X.js +12 -0
- package/packages/ui/dist/assets/xdc-KJ3TDBYO-DNV6zchh.js +1 -0
- package/packages/ui/dist/assets/zetachain-TLDS5IPW-Udhyw16T.js +1 -0
- package/packages/ui/dist/assets/zh_CN-4XK5YJPR-Bt6Yz5Ek.js +1519 -0
- package/packages/ui/dist/assets/zh_HK-N4YN2WSI-Cvzl1V16.js +1519 -0
- package/packages/ui/dist/assets/zh_TW-CNCRXH6Z-BNelatfN.js +1519 -0
- package/packages/ui/dist/assets/zksync-DH7HK5U4-Dt4usFw6.js +1 -0
- package/packages/ui/dist/assets/zora-FYL5H3IO-iB4wygST.js +1 -0
- package/packages/ui/dist/index.html +14 -0
- package/templates/default/AGENTS.md +18 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var l="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cg%20transform%3D%22translate(0%2C0)%20scale(0.7)%22%3E%3Cg%20clip-path%3D%22url(%23a)%22%3E%3Cpath%20fill%3D%22%23000%22%20d%3D%22M0%200h40v40H0z%22%2F%3E%3Cpath%20fill%3D%22url(%23b)%22%20fill-opacity%3D%22.1%22%20d%3D%22M0%200h40v40H0z%22%2F%3E%3Cpath%20fill%3D%22%23fff%22%20fill-rule%3D%22evenodd%22%20d%3D%22m32.25%2020.005-6.954-6.922v5.066l-6.901%205.078h6.901v3.7l6.954-6.922ZM7.75%2020.005l6.954%206.923v-5.036l6.901-5.119h-6.901v-3.7L7.75%2020.004Z%22%20clip-rule%3D%22evenodd%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22b%22%20x1%3D%220%22%20x2%3D%2220%22%20y1%3D%220%22%20y2%3D%2240%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20stop-color%3D%22%23fff%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23fff%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M0%200h40v40H0z%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fg%3E%3C%2Fsvg%3E";export{l as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228%22%20height%3D%2228%22%20fill%3D%22none%22%3E%3Cg%20clip-path%3D%22url(%23a)%22%3E%3Cpath%20fill%3D%22url(%23b)%22%20d%3D%22M.943%2013.754c0%207.586%205.944%2013.755%2013.252%2013.755%207.308%200%2013.252-6.17%2013.252-13.755C27.44%206.17%2021.497%200%2014.195%200%206.887%200%20.943%206.17.943%2013.754Z%22%2F%3E%3Cpath%20fill%3D%22url(%23c)%22%20d%3D%22M.943%2013.754c0%207.586%205.944%2013.755%2013.252%2013.755%207.308%200%2013.252-6.17%2013.252-13.755C27.44%206.17%2021.497%200%2014.195%200%206.887%200%20.943%206.17.943%2013.754Z%22%2F%3E%3Cpath%20fill%3D%22url(%23d)%22%20d%3D%22M.943%2013.754c0%207.586%205.944%2013.755%2013.252%2013.755%207.308%200%2013.252-6.17%2013.252-13.755C27.44%206.17%2021.497%200%2014.195%200%206.887%200%20.943%206.17.943%2013.754Z%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CradialGradient%20id%3D%22b%22%20cx%3D%220%22%20cy%3D%220%22%20r%3D%221%22%20gradientTransform%3D%22matrix(19.9547%200%200%2020.7113%2018.16%206.7)%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%22.005%22%20stop-color%3D%22%23fff%22%2F%3E%3Cstop%20offset%3D%22.458%22%20stop-color%3D%22%23B7D8C8%22%2F%3E%3Cstop%20offset%3D%22.656%22%20stop-color%3D%22%236D9487%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234B4C3C%22%2F%3E%3C%2FradialGradient%3E%3CradialGradient%20id%3D%22c%22%20cx%3D%220%22%20cy%3D%220%22%20r%3D%221%22%20gradientTransform%3D%22matrix(19.9547%200%200%2020.7113%2018.16%206.7)%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%22.005%22%20stop-color%3D%22%23fff%22%2F%3E%3Cstop%20offset%3D%22.458%22%20stop-color%3D%22%23B5B4C6%22%2F%3E%3Cstop%20offset%3D%22.656%22%20stop-color%3D%22%239B8F8F%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234B4C3C%22%2F%3E%3C%2FradialGradient%3E%3CradialGradient%20id%3D%22d%22%20cx%3D%220%22%20cy%3D%220%22%20r%3D%221%22%20gradientTransform%3D%22matrix(19.9547%200%200%2020.7113%2018.16%206.7)%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%3Cstop%20offset%3D%22.156%22%20stop-color%3D%22%23DCC8D0%22%2F%3E%3Cstop%20offset%3D%22.302%22%20stop-color%3D%22%2378C8CF%22%2F%3E%3Cstop%20offset%3D%22.427%22%20stop-color%3D%22%234D959E%22%2F%3E%3Cstop%20offset%3D%22.557%22%20stop-color%3D%22%23305EB9%22%2F%3E%3Cstop%20offset%3D%22.797%22%20stop-color%3D%22%23311F12%22%2F%3E%3Cstop%20offset%3D%22.906%22%20stop-color%3D%22%23684232%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%232D1C13%22%2F%3E%3C%2FradialGradient%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M0%200h28v28H0z%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E";export{o as default};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en" style="color-scheme: dark">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<meta name="theme-color" content="#040b16" />
|
|
7
|
+
<title>Sail - Unlocking Personalized Money</title>
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-BCb0Nju4.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-DDKDa0s2.css">
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<div id="root"></div>
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
|
@@ -40,6 +40,8 @@ If the user's first message is an npm install command, run it, then present the
|
|
|
40
40
|
|
|
41
41
|
In the browser. Run `sailor ui start`, open the printed URL, connect your owner wallet, choose your network, and deploy your SMA. Then create your agent wallet — a separate signing key I use to submit transactions on your behalf. You need gas in both: the owner wallet to deploy and sign the mandate; the agent wallet to submit transactions once the agent is running. The owner key never leaves the browser.
|
|
42
42
|
|
|
43
|
+
**Deterministic address (salt):** every SMA deployment uses a CREATE2 salt. The CLI defaults to salt `0`, giving you a predictable address you can verify before spending gas: `sailor account predict --owner <your-wallet> --manager <agent-wallet>`. The kernel binds the salt to your owner wallet, agent (manager) wallet, and fee policy, so you need the agent wallet created first (the prediction depends on it). The salt is saved in `.sail/account.json` automatically. Note: addresses differ across chains today (Base, Arbitrum, Unichain) because the kernel salt mixes in the chain-specific fee policy and the Safe initializer encodes chain-specific contract addresses; true cross-chain same-address requires a future protocol update (deterministic kernel + safeModuleEnabler + fee policy deployment).
|
|
44
|
+
|
|
43
45
|
## Stage 2 — Define your strategy
|
|
44
46
|
|
|
45
47
|
Tell me what you want your agent to do. I'll ask the right questions, establish the on-chain bounds with you (tokens, amounts, slippage, venues), and set up your RPC endpoint once you've chosen your chain. Blank slate — you define the strategy.
|
|
@@ -54,7 +56,22 @@ Permission contracts live in `mandates/`. The user authors, reviews, and owns th
|
|
|
54
56
|
|
|
55
57
|
```bash
|
|
56
58
|
forge build
|
|
57
|
-
sailor mandate deploy --contract <Name> --
|
|
59
|
+
sailor mandate deploy --contract <Name> --sma <SMA> # deploy only — do NOT --attach yet
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Before AUTHORIZING (attaching) the permission, BACK the plain-English claims with an actual on-chain probe. `evaluate()` lives on the deployed contract, so deploy first, then — before the irreversible authorization — generate sample calls from the user's stated strategy (ones the permission MUST accept and ones it MUST reject) and run them through `sailor mandate simulate`. This is an off-chain `eth_call` (no gas, no signing) that reports what the permission's `evaluate()` returns for each call, and flags any target with no contract code (a wrong or wrong-chain address):
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
# one call inline, or a batch via JSON
|
|
66
|
+
sailor mandate simulate --address <PermissionOrName> --sma <SMA> \
|
|
67
|
+
--target <addr> --calldata <hex> --expect pass
|
|
68
|
+
sailor mandate simulate --address <PermissionOrName> --sma <SMA> --calls calls.json
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
`calls.json` is an array of `{ target, calldata, value?, expect: "pass"|"fail", label }`. A mismatch between `expect` and the actual result exits non-zero — do not authorize until every sample matches. Simulate proves what the permission DOES; it does not guarantee it is correct.
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
sailor mandate attach --address <PermissionOrName> --sma <SMA> # authorize, once simulate is clean
|
|
58
75
|
```
|
|
59
76
|
|
|
60
77
|
Registration requires the owner to sign in the browser. If the wrong wallet is connected, the CLI rejects it.
|