@dev.sail.money/sailor 0.0.2-28 → 0.0.2-30
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/AGENTS.md +31 -2
- package/README.md +77 -12
- package/package.json +9 -3
- package/packages/cli/dist/index.cjs +285 -127
- package/packages/cli/dist/server.cjs +586 -1401
- package/packages/sdk/dist/chains.d.ts +12 -0
- package/packages/sdk/dist/chains.d.ts.map +1 -0
- package/packages/sdk/dist/chains.js +94 -0
- package/packages/sdk/dist/chains.js.map +1 -0
- package/packages/sdk/dist/index.d.ts +1 -0
- package/packages/sdk/dist/index.d.ts.map +1 -1
- package/packages/sdk/dist/index.js +1 -0
- 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/types.d.ts +2 -0
- package/packages/sdk/dist/types.d.ts.map +1 -1
- package/packages/sdk/package.json +27 -0
- package/packages/ui/dist/assets/{add-Cj0EIUcG.js → add-BtPPKW_S.js} +1 -1
- package/packages/ui/dist/assets/{all-wallets-DlyRsWoN.js → all-wallets-CliTUt-P.js} +1 -1
- package/packages/ui/dist/assets/{app-store-CXP08sks.js → app-store-Dn-qzfPP.js} +1 -1
- package/packages/ui/dist/assets/{apple-B62K6dJr.js → apple-CCxYFT90.js} +1 -1
- package/packages/ui/dist/assets/{arrow-bottom-BTuC5-tQ.js → arrow-bottom-Bo24o32F.js} +1 -1
- package/packages/ui/dist/assets/{arrow-bottom-circle-dlgFXE0q.js → arrow-bottom-circle-DEnDTNB2.js} +1 -1
- package/packages/ui/dist/assets/{arrow-left-Uohbz9c6.js → arrow-left-ufrfqGG4.js} +1 -1
- package/packages/ui/dist/assets/{arrow-right-CH0vSHgl.js → arrow-right-BkX5DoAK.js} +1 -1
- package/packages/ui/dist/assets/{arrow-top-CxY6BKDT.js → arrow-top-CtvgpoOn.js} +1 -1
- package/packages/ui/dist/assets/{bank-Dz6PlF79.js → bank-CfyC7KhE.js} +1 -1
- package/packages/ui/dist/assets/{basic-CTV3Ph_S.js → basic-GLsmxA9Q.js} +1 -1
- package/packages/ui/dist/assets/{browser-DBRTpG2H.js → browser-BXl5SSvD.js} +1 -1
- package/packages/ui/dist/assets/{card-DWA4Ne8q.js → card-BwTrNMXe.js} +1 -1
- package/packages/ui/dist/assets/{ccip-CJCerfkJ.js → ccip-BMqD_Aug.js} +1 -1
- package/packages/ui/dist/assets/{checkmark-Cx-ePFrg.js → checkmark-Dv3bs_r-.js} +1 -1
- package/packages/ui/dist/assets/{checkmark-bold-BhDIlGHD.js → checkmark-bold-v3XYVY9B.js} +1 -1
- package/packages/ui/dist/assets/{chevron-bottom-2uFzesS3.js → chevron-bottom-BtuSFYmE.js} +1 -1
- package/packages/ui/dist/assets/{chevron-left-BoKXXZ4E.js → chevron-left-Bj0j6Cyx.js} +1 -1
- package/packages/ui/dist/assets/{chevron-right-EUp-RhYw.js → chevron-right-QsZgfMHX.js} +1 -1
- package/packages/ui/dist/assets/{chevron-top-D51M78MN.js → chevron-top-B2LmuCUs.js} +1 -1
- package/packages/ui/dist/assets/{chrome-store-DrRbU0Rc.js → chrome-store-Be1HnDGs.js} +1 -1
- package/packages/ui/dist/assets/{clock-9mIuX-1G.js → clock-CCcblz1f.js} +1 -1
- package/packages/ui/dist/assets/{close-BvuXlx8s.js → close-rdnFQxXT.js} +1 -1
- package/packages/ui/dist/assets/{coinPlaceholder-Bi7hJj5a.js → coinPlaceholder-fRMoMI0y.js} +1 -1
- package/packages/ui/dist/assets/{compass-C623d6DE.js → compass-CSPR58D9.js} +1 -1
- package/packages/ui/dist/assets/{copy-CFhZQkfE.js → copy-C5WgEU7N.js} +1 -1
- package/packages/ui/dist/assets/{core-BGl4d2YS.js → core-CVXQL7tu.js} +3 -3
- package/packages/ui/dist/assets/cursor-C04TRGDh.js +3 -0
- package/packages/ui/dist/assets/{cursor-transparent-FBFMyBY2.js → cursor-transparent-zEBpsOE4.js} +1 -1
- package/packages/ui/dist/assets/{desktop-Cco6Py8z.js → desktop-CdkiOqLx.js} +1 -1
- package/packages/ui/dist/assets/{disconnect-GkX8GhOW.js → disconnect-B8I112zP.js} +1 -1
- package/packages/ui/dist/assets/{discord-BNJe-HNX.js → discord-x2BbO6cW.js} +1 -1
- package/packages/ui/dist/assets/{etherscan-CoY2RMWw.js → etherscan-C2OxN9Au.js} +1 -1
- package/packages/ui/dist/assets/{events-DlxPGhin.js → events-DwmWfwqa.js} +1 -1
- package/packages/ui/dist/assets/{exclamation-triangle-9thkvaBf.js → exclamation-triangle-IY-Iojhj.js} +1 -1
- package/packages/ui/dist/assets/{extension-BshOJ_bn.js → extension-Clnc3k0E.js} +1 -1
- package/packages/ui/dist/assets/{external-link-97rok_V_.js → external-link-DKjw-POo.js} +1 -1
- package/packages/ui/dist/assets/{facebook-BsiLEVlU.js → facebook-DA_F9Z5R.js} +1 -1
- package/packages/ui/dist/assets/{fallback-DlWsoHyh.js → fallback-CWZLJXZ9.js} +1 -1
- package/packages/ui/dist/assets/{farcaster-CmRL47La.js → farcaster-CulNjKFL.js} +1 -1
- package/packages/ui/dist/assets/{filters-DXAWgNLO.js → filters-BpETqr4_.js} +1 -1
- package/packages/ui/dist/assets/{github-bCBJUbbe.js → github-DywjW1rE.js} +1 -1
- package/packages/ui/dist/assets/{google-CYTI0KrI.js → google-DH_kH7BK.js} +1 -1
- package/packages/ui/dist/assets/{help-circle-LNgEbcGY.js → help-circle-DsMbG4i7.js} +1 -1
- package/packages/ui/dist/assets/{id-ChJn0Ugg.js → id-O5zOjYCk.js} +1 -1
- package/packages/ui/dist/assets/{image--Y7maC5b.js → image-BBJ-S1oj.js} +1 -1
- package/packages/ui/dist/assets/{index-BONuaN6W.js → index-9Als8Pk1.js} +1 -1
- package/packages/ui/dist/assets/{index-5MkegeeB.js → index-BP0G8SWV.js} +3 -3
- package/packages/ui/dist/assets/{index-BlU0aZ21.js → index-C9Q98LC_.js} +1 -1
- package/packages/ui/dist/assets/{index-CZMzzRJU.js → index-CMLePJSP.js} +1 -1
- package/packages/ui/dist/assets/{index-O4l6CrZ0.js → index-CkNlzfQa.js} +1 -1
- package/packages/ui/dist/assets/{index-BN0O-ZFZ.js → index-EVUMkF7X.js} +4 -4
- package/packages/ui/dist/assets/{index.es-CXlLR_xG.js → index.es-BS-p_sCc.js} +4 -4
- package/packages/ui/dist/assets/{info-DUq1c6sJ.js → info-CD3CYp-i.js} +1 -1
- package/packages/ui/dist/assets/{info-circle-UobJ0GGG.js → info-circle-CXbPnDro.js} +1 -1
- package/packages/ui/dist/assets/{lightbulb-BI4WR-IB.js → lightbulb-Bz1DT8Ju.js} +1 -1
- package/packages/ui/dist/assets/{mail-BSN2fVMe.js → mail-Lj8n2gbA.js} +1 -1
- package/packages/ui/dist/assets/{metamask-sdk-B7CK8pn-.js → metamask-sdk-DwS0o7ov.js} +1 -1
- package/packages/ui/dist/assets/{mobile-BfuUs9p7.js → mobile-O_sAbq2l.js} +1 -1
- package/packages/ui/dist/assets/{more-C1zkGuE3.js → more-DdiT_mbp.js} +1 -1
- package/packages/ui/dist/assets/{network-placeholder-CtiEl1UM.js → network-placeholder-Dx9MDHLN.js} +1 -1
- package/packages/ui/dist/assets/{nftPlaceholder-C_B9PGkr.js → nftPlaceholder-K9kW2r88.js} +1 -1
- package/packages/ui/dist/assets/{off-B93fIkKw.js → off-BOYfR8XB.js} +1 -1
- package/packages/ui/dist/assets/{parseSignature-BKzLunwo.js → parseSignature-NiLF290o.js} +1 -1
- package/packages/ui/dist/assets/{play-store-DfDTySLA.js → play-store-DRuPz3YP.js} +1 -1
- package/packages/ui/dist/assets/{plus-_EYE7Soi.js → plus-BhHn5k_7.js} +1 -1
- package/packages/ui/dist/assets/{qr-code-CSklhafe.js → qr-code-XQgVWw1M.js} +1 -1
- package/packages/ui/dist/assets/{recycle-horizontal-CoH2EBIZ.js → recycle-horizontal-B3DKBHl3.js} +1 -1
- package/packages/ui/dist/assets/{refresh-COGV5RR9.js → refresh-Bdt5zEiy.js} +1 -1
- package/packages/ui/dist/assets/{reown-logo-YYxIj6hm.js → reown-logo-B3-LoRif.js} +1 -1
- package/packages/ui/dist/assets/{search-CpoWhaNF.js → search-CT85WnLr.js} +1 -1
- package/packages/ui/dist/assets/{secp256k1-ZWo-L7nJ.js → secp256k1-CSD4IkAn.js} +1 -1
- package/packages/ui/dist/assets/{send-CjEG2p8N.js → send-DFlOyILV.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontal-3V6lypqD.js → swapHorizontal-BnJarCPM.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontalBold-7swnGG5R.js → swapHorizontalBold-BdXwQcVw.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontalMedium-zPdpOjAy.js → swapHorizontalMedium-DruY4Nll.js} +1 -1
- package/packages/ui/dist/assets/{swapHorizontalRoundedBold-2Mxr5XPm.js → swapHorizontalRoundedBold-BmU0rX2_.js} +1 -1
- package/packages/ui/dist/assets/{swapVertical-D9KAlnz7.js → swapVertical-BDYBLaB-.js} +1 -1
- package/packages/ui/dist/assets/{telegram-DztV38YW.js → telegram-Dj0PC8gI.js} +1 -1
- package/packages/ui/dist/assets/{three-dots-DWOvYMr0.js → three-dots-DCjLXmgH.js} +1 -1
- package/packages/ui/dist/assets/{twitch-B3UH6j0S.js → twitch-DtF7PahJ.js} +1 -1
- package/packages/ui/dist/assets/{twitterIcon-C2lA-xQv.js → twitterIcon-D5fHAEXR.js} +1 -1
- package/packages/ui/dist/assets/{verify-BP_uBvwh.js → verify-CvDrZusr.js} +1 -1
- package/packages/ui/dist/assets/{verify-filled-DLByZnlA.js → verify-filled-CPKWSwyP.js} +1 -1
- package/packages/ui/dist/assets/{w3m-modal-C2-cKwor.js → w3m-modal-DdzuRc6-.js} +1 -1
- package/packages/ui/dist/assets/{wallet-Bc7LMFHM.js → wallet-BDKdLwf0.js} +1 -1
- package/packages/ui/dist/assets/{wallet-placeholder-DsjujZQW.js → wallet-placeholder-DjYKf3de.js} +1 -1
- package/packages/ui/dist/assets/{walletconnect-i_fC7jz3.js → walletconnect-DtsEmRsg.js} +1 -1
- package/packages/ui/dist/assets/{warning-circle-DIxNhxFp.js → warning-circle-vXvip1Eh.js} +1 -1
- package/packages/ui/dist/assets/{x-BamJJInV.js → x-CIVAuGSw.js} +1 -1
- package/packages/ui/dist/index.html +1 -1
- package/templates/default/.env.example +15 -1
- package/templates/default/examples/dca/agent.ts +1 -1
- package/templates/default/examples/dca/mandate.ts +1 -1
- package/templates/default/src/agent.ts +1 -1
- package/templates/default/tsconfig.json +5 -2
- package/templates/lifi-permissions/README.md +1 -1
- package/packages/ui/dist/assets/cursor-CUSm3LCL.js +0 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as l}from"./core-
|
|
1
|
+
import{F as l}from"./core-CVXQL7tu.js";import"./index-EVUMkF7X.js";import"./events-DwmWfwqa.js";import"./index.es-BS-p_sCc.js";import"./fallback-CWZLJXZ9.js";const o=l`<svg fill="none" viewBox="0 0 96 67">
|
|
2
2
|
<path
|
|
3
3
|
fill="currentColor"
|
|
4
4
|
d="M25.32 18.8a32.56 32.56 0 0 1 45.36 0l1.5 1.47c.63.62.63 1.61 0 2.22l-5.15 5.05c-.31.3-.82.3-1.14 0l-2.07-2.03a22.71 22.71 0 0 0-31.64 0l-2.22 2.18c-.31.3-.82.3-1.14 0l-5.15-5.05a1.55 1.55 0 0 1 0-2.22l1.65-1.62Zm56.02 10.44 4.59 4.5c.63.6.63 1.6 0 2.21l-20.7 20.26c-.62.61-1.63.61-2.26 0L48.28 41.83a.4.4 0 0 0-.56 0L33.03 56.21c-.63.61-1.64.61-2.27 0L10.07 35.95a1.55 1.55 0 0 1 0-2.22l4.59-4.5a1.63 1.63 0 0 1 2.27 0L31.6 43.63a.4.4 0 0 0 .57 0l14.69-14.38a1.63 1.63 0 0 1 2.26 0l14.69 14.38a.4.4 0 0 0 .57 0l14.68-14.38a1.63 1.63 0 0 1 2.27 0Z"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as r}from"./core-
|
|
1
|
+
import{F as r}from"./core-CVXQL7tu.js";import"./index-EVUMkF7X.js";import"./events-DwmWfwqa.js";import"./index.es-BS-p_sCc.js";import"./fallback-CWZLJXZ9.js";const a=r`<svg fill="none" viewBox="0 0 20 20">
|
|
2
2
|
<path
|
|
3
3
|
fill="currentColor"
|
|
4
4
|
d="M11 6.67a1 1 0 1 0-2 0v2.66a1 1 0 0 0 2 0V6.67ZM10 14.5a1.25 1.25 0 1 0 0-2.5 1.25 1.25 0 0 0 0 2.5Z"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{F as l}from"./core-
|
|
1
|
+
import{F as l}from"./core-CVXQL7tu.js";import"./index-EVUMkF7X.js";import"./events-DwmWfwqa.js";import"./index.es-BS-p_sCc.js";import"./fallback-CWZLJXZ9.js";const a=l`<svg fill="none" viewBox="0 0 41 40">
|
|
2
2
|
<g clip-path="url(#a)">
|
|
3
3
|
<path fill="#000" d="M.8 0h40v40H.8z" />
|
|
4
4
|
<path
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<meta name="theme-color" content="#040b16" />
|
|
7
7
|
<title>Sail - Unlocking Personalized Money</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-EVUMkF7X.js"></script>
|
|
9
9
|
<link rel="stylesheet" crossorigin href="/assets/index-n8bp1ZEc.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body>
|
|
@@ -1,6 +1,20 @@
|
|
|
1
1
|
# Sailor agent environment
|
|
2
|
+
#
|
|
3
|
+
# RPC configuration — two patterns, pick one:
|
|
4
|
+
#
|
|
5
|
+
# Option A: single active chain (simplest)
|
|
2
6
|
RPC_URL=https://your-rpc-endpoint
|
|
3
7
|
CHAIN_ID=8453
|
|
8
|
+
#
|
|
9
|
+
# Option B: per-chain endpoints (multi-chain projects, or if you prefer explicit names)
|
|
10
|
+
# Set CHAIN_ID to the chain sailor run uses; omit RPC_URL if all chains have a specific var.
|
|
11
|
+
# CHAIN_ID=8453
|
|
12
|
+
# BASE_RPC_URL=https://your-base-endpoint
|
|
13
|
+
# ARBITRUM_RPC_URL=https://your-arbitrum-endpoint
|
|
14
|
+
# UNICHAIN_RPC_URL=https://your-unichain-endpoint
|
|
15
|
+
# ETH_MAINNET_RPC_URL=https://your-mainnet-endpoint
|
|
16
|
+
# BASE_SEPOLIA_RPC_URL=https://your-base-sepolia-endpoint
|
|
17
|
+
# SEPOLIA_RPC_URL=https://your-sepolia-endpoint
|
|
4
18
|
|
|
5
|
-
# Optional
|
|
19
|
+
# Optional: non-interactive passphrase (CI, GitHub Actions, launchd, systemd)
|
|
6
20
|
# SAIL_PASSPHRASE=change-me-to-a-strong-passphrase
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Shows: a complete DCA tick loop — USDC→WETH via Uniswap V3 on Base mainnet.
|
|
3
3
|
// To adapt: replace token addresses, protocol ABIs, and swap logic with your target strategy.
|
|
4
4
|
|
|
5
|
-
import type { Agent, AgentContext, Call, Dispatch } from "@sail/sdk";
|
|
5
|
+
import type { Agent, AgentContext, Call, Dispatch } from "@sail.money/sailor/sdk";
|
|
6
6
|
import { encodeFunctionData, type PublicClient } from "viem";
|
|
7
7
|
import {
|
|
8
8
|
ALLOWED_TOKENS,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Reference example — not the user's strategy. Consult for patterns; author the user's own in src/.
|
|
2
2
|
// Shows: token addresses, swap parameters, and contract addresses for a USDC→WETH DCA on Base mainnet.
|
|
3
3
|
|
|
4
|
-
import type { Address } from "@sail/sdk";
|
|
4
|
+
import type { Address } from "@sail.money/sailor/sdk";
|
|
5
5
|
|
|
6
6
|
// ── Token addresses (Base mainnet) ────────────────────────────────────────────
|
|
7
7
|
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* see examples/dca/agent.ts and examples/dca/mandate.ts
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
|
-
import type { Agent, AgentContext, Dispatch } from "@sail/sdk";
|
|
15
|
+
import type { Agent, AgentContext, Dispatch } from "@sail.money/sailor/sdk";
|
|
16
16
|
|
|
17
17
|
export const agent: Agent = {
|
|
18
18
|
name: "my-agent",
|
|
@@ -7,8 +7,11 @@
|
|
|
7
7
|
"esModuleInterop": true,
|
|
8
8
|
"skipLibCheck": true,
|
|
9
9
|
"resolveJsonModule": true,
|
|
10
|
-
"
|
|
11
|
-
"
|
|
10
|
+
"noEmit": true,
|
|
11
|
+
"baseUrl": ".",
|
|
12
|
+
"paths": {
|
|
13
|
+
"@sail.money/sailor/sdk": ["../../packages/sdk/src/index.ts"]
|
|
14
|
+
}
|
|
12
15
|
},
|
|
13
16
|
"include": ["src"]
|
|
14
17
|
}
|
|
@@ -17,7 +17,7 @@ These follow the `CloneInitializable` pattern: the constructor calls
|
|
|
17
17
|
> no Foundry build. Build/deploy happens in that project via
|
|
18
18
|
> `scripts/deploy-clone-templates.ts`.
|
|
19
19
|
|
|
20
|
-
> **Note:** The kernels bundled in `@sail/sdk` (Base, Base Sepolia, Arbitrum, Unichain) now all run the **selective** dispatch model — verified on-chain against each kernel's `DISPATCH_TYPEHASH`. These templates were written for the older conjunctive model and include pass-through logic (`return true` for calls outside their domain) that is not required on selective kernels. Review before deploying against a selective kernel; the pass-through logic is harmless but unnecessary.
|
|
20
|
+
> **Note:** The kernels bundled in `@sail.money/sailor/sdk` (Base, Base Sepolia, Arbitrum, Unichain) now all run the **selective** dispatch model — verified on-chain against each kernel's `DISPATCH_TYPEHASH`. These templates were written for the older conjunctive model and include pass-through logic (`return true` for calls outside their domain) that is not required on selective kernels. Review before deploying against a selective kernel; the pass-through logic is harmless but unnecessary.
|
|
21
21
|
|
|
22
22
|
## Contracts
|
|
23
23
|
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{F as o}from"./core-BGl4d2YS.js";import"./index-BN0O-ZFZ.js";import"./events-DlxPGhin.js";import"./index.es-CXlLR_xG.js";import"./fallback-DlWsoHyh.js";const l=o` <svg fill="none" viewBox="0 0 13 4">
|
|
2
|
-
<path fill="currentColor" d="M.5 0h12L8.9 3.13a3.76 3.76 0 0 1-4.8 0L.5 0Z" />
|
|
3
|
-
</svg>`;export{l as cursorSvg};
|