@continuumdao/ctm-mpc-defi 0.2.34 → 0.2.36
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/dist/agent/catalog.cjs +1562 -45
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.d.ts +5995 -2960
- package/dist/agent/catalog.js +1502 -46
- package/dist/agent/catalog.js.map +1 -1
- package/dist/agent/skills/aave-v4/SKILL.md +19 -4
- package/dist/agent/skills/aerodrome/SKILL.md +2 -2
- package/dist/agent/skills/compound-v3/SKILL.md +2 -2
- package/dist/agent/skills/curve-dao/SKILL.md +14 -0
- package/dist/agent/skills/ethena/SKILL.md +3 -1
- package/dist/agent/skills/euler-v2/SKILL.md +1 -1
- package/dist/agent/skills/gmx/SKILL.md +1 -1
- package/dist/agent/skills/hyperliquid/SKILL.md +7 -5
- package/dist/agent/skills/lido/SKILL.md +3 -0
- package/dist/agent/skills/maple-syrup/SKILL.md +35 -3
- package/dist/agent/skills/morpho/SKILL.md +1 -1
- package/dist/agent/skills/pendle/SKILL.md +63 -0
- package/dist/agent/skills/sky/SKILL.md +2 -0
- package/dist/agent/skills/yield-compare/SKILL.md +81 -0
- package/dist/core/index.cjs +2 -1
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.js +2 -1
- package/dist/core/index.js.map +1 -1
- package/dist/index.cjs +257 -29
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +257 -28
- package/dist/index.js.map +1 -1
- package/dist/protocols/evm/aave-v4/index.cjs +170 -0
- package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/aave-v4/index.d.ts +59 -1
- package/dist/protocols/evm/aave-v4/index.js +164 -1
- package/dist/protocols/evm/aave-v4/index.js.map +1 -1
- package/dist/protocols/evm/aerodrome/index.cjs +1308 -901
- package/dist/protocols/evm/aerodrome/index.cjs.map +1 -1
- package/dist/protocols/evm/aerodrome/index.d.ts +69 -2
- package/dist/protocols/evm/aerodrome/index.js +1217 -807
- package/dist/protocols/evm/aerodrome/index.js.map +1 -1
- package/dist/protocols/evm/compound-v3/index.cjs +82 -6
- package/dist/protocols/evm/compound-v3/index.cjs.map +1 -1
- package/dist/protocols/evm/compound-v3/index.d.ts +89 -1
- package/dist/protocols/evm/compound-v3/index.js +80 -7
- package/dist/protocols/evm/compound-v3/index.js.map +1 -1
- package/dist/protocols/evm/curve-dao/index.cjs +447 -18
- package/dist/protocols/evm/curve-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/curve-dao/index.d.ts +108 -1
- package/dist/protocols/evm/curve-dao/index.js +440 -19
- package/dist/protocols/evm/curve-dao/index.js.map +1 -1
- package/dist/protocols/evm/ethena/index.cjs +89 -0
- package/dist/protocols/evm/ethena/index.cjs.map +1 -1
- package/dist/protocols/evm/ethena/index.d.ts +17 -1
- package/dist/protocols/evm/ethena/index.js +89 -2
- package/dist/protocols/evm/ethena/index.js.map +1 -1
- package/dist/protocols/evm/euler-v2/index.cjs +29 -0
- package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
- package/dist/protocols/evm/euler-v2/index.d.ts +21 -1
- package/dist/protocols/evm/euler-v2/index.js +29 -1
- package/dist/protocols/evm/euler-v2/index.js.map +1 -1
- package/dist/protocols/evm/gmx/index.cjs +83 -1
- package/dist/protocols/evm/gmx/index.cjs.map +1 -1
- package/dist/protocols/evm/gmx/index.d.ts +22 -2
- package/dist/protocols/evm/gmx/index.js +80 -2
- package/dist/protocols/evm/gmx/index.js.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.cjs +67 -11
- package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.d.ts +39 -2
- package/dist/protocols/evm/hyperliquid/index.js +64 -12
- package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
- package/dist/protocols/evm/lido/index.cjs +13 -0
- package/dist/protocols/evm/lido/index.cjs.map +1 -1
- package/dist/protocols/evm/lido/index.d.ts +9 -1
- package/dist/protocols/evm/lido/index.js +13 -1
- package/dist/protocols/evm/lido/index.js.map +1 -1
- package/dist/protocols/evm/maple/index.cjs +129 -1
- package/dist/protocols/evm/maple/index.cjs.map +1 -1
- package/dist/protocols/evm/maple/index.d.ts +45 -1
- package/dist/protocols/evm/maple/index.js +124 -3
- package/dist/protocols/evm/maple/index.js.map +1 -1
- package/dist/protocols/evm/morpho/index.cjs +34 -7
- package/dist/protocols/evm/morpho/index.cjs.map +1 -1
- package/dist/protocols/evm/morpho/index.d.ts +23 -1
- package/dist/protocols/evm/morpho/index.js +34 -8
- package/dist/protocols/evm/morpho/index.js.map +1 -1
- package/dist/protocols/evm/pendle/index.cjs +1530 -0
- package/dist/protocols/evm/pendle/index.cjs.map +1 -0
- package/dist/protocols/evm/pendle/index.d.ts +463 -0
- package/dist/protocols/evm/pendle/index.js +1463 -0
- package/dist/protocols/evm/pendle/index.js.map +1 -0
- package/dist/protocols/evm/sky/index.cjs +52 -0
- package/dist/protocols/evm/sky/index.cjs.map +1 -1
- package/dist/protocols/evm/sky/index.d.ts +16 -1
- package/dist/protocols/evm/sky/index.js +50 -1
- package/dist/protocols/evm/sky/index.js.map +1 -1
- package/package.json +6 -1
|
@@ -257,6 +257,21 @@ declare function readSusdsPreviewRedeemAssetsWei(args: {
|
|
|
257
257
|
}): Promise<bigint>;
|
|
258
258
|
declare function formatSusdsSharesHuman(sharesWei: bigint, decimals: number): string;
|
|
259
259
|
|
|
260
|
+
declare function skySsrRayToApyPercent(ssrRay: bigint): number | null;
|
|
261
|
+
declare function formatSkyApyPercentLabel(pct: number | null): string;
|
|
262
|
+
declare function skyFetchSusdsRateSummary(args: {
|
|
263
|
+
rpcUrl: string;
|
|
264
|
+
}): Promise<{
|
|
265
|
+
chainId: number;
|
|
266
|
+
vault: string;
|
|
267
|
+
asset: string;
|
|
268
|
+
assetSymbol: string;
|
|
269
|
+
apyPercent: string;
|
|
270
|
+
apy: number | null;
|
|
271
|
+
usdsPerSusdsShare: string;
|
|
272
|
+
notes: string;
|
|
273
|
+
}>;
|
|
274
|
+
|
|
260
275
|
/** CoinGecko simple token price for SKY on Ethereum (USD). */
|
|
261
276
|
declare function fetchSkyUsdFromCoinGecko(): Promise<number | null>;
|
|
262
277
|
|
|
@@ -269,4 +284,4 @@ declare function loadSkyLockstakeSupportedChainIds(): ReadonlySet<number>;
|
|
|
269
284
|
declare const SKY_PROTOCOL_ID = "sky";
|
|
270
285
|
declare const skyProtocolModule: ProtocolModule;
|
|
271
286
|
|
|
272
|
-
export { SKY_ETHEREUM_MAINNET, SKY_ETHEREUM_MAINNET_CHAIN_ID, SKY_LOCKSTAKE_DEFAULT_FARM_MAINNET, SKY_LOCKSTAKE_DEFAULT_FARM_REF, SKY_LOCKSTAKE_ENGINE_MAINNET, SKY_LOCKSTAKE_MULTICALL_FALLBACK_GAS, SKY_LOCKSTAKE_UI_COLLATERAL_FACTOR, SKY_LS_SKY_ERC20_MAINNET, SKY_PROTOCOL_ID, SKY_TOKEN_DECIMALS, SUSDS_VAULT_ERC4626_MAINNET, type SkyLockstakePositionRow, type SkyMultisignBatchStep, type SkyMultisignChainDetailRow, USDS_DECIMALS, USDS_ETHEREUM_MAINNET, appendSerializedSkyBatch, buildSkyLockstakeCloseBatch, buildSkyLockstakeDrawBatch, buildSkyLockstakeGetRewardBatch, buildSkyLockstakeStakePositionBatch, buildSkyLockstakeWipeBatch, buildSkySusdsDepositFromUsdsBatch, buildSkySusdsRedeemToUsdsBatch, fetchSkyUsdFromCoinGecko, formatSusdsSharesHuman, isSkyLockstakeIsolationEstimateGasFragileBatchStep, loadSkyLockstakePositions, loadSkyLockstakeSupportedChainIds, readSkyLockstakeFarmRewardsToken, readSusdsPreviewRedeemAssetsWei, readSusdsVaultDecimals, readSusdsVaultShareBalanceWei, resolveSkyLockstakeBatchStepGasFromSignRequest, skyProtocolModule, skyUsdsDebtWeiFromUrnArt };
|
|
287
|
+
export { SKY_ETHEREUM_MAINNET, SKY_ETHEREUM_MAINNET_CHAIN_ID, SKY_LOCKSTAKE_DEFAULT_FARM_MAINNET, SKY_LOCKSTAKE_DEFAULT_FARM_REF, SKY_LOCKSTAKE_ENGINE_MAINNET, SKY_LOCKSTAKE_MULTICALL_FALLBACK_GAS, SKY_LOCKSTAKE_UI_COLLATERAL_FACTOR, SKY_LS_SKY_ERC20_MAINNET, SKY_PROTOCOL_ID, SKY_TOKEN_DECIMALS, SUSDS_VAULT_ERC4626_MAINNET, type SkyLockstakePositionRow, type SkyMultisignBatchStep, type SkyMultisignChainDetailRow, USDS_DECIMALS, USDS_ETHEREUM_MAINNET, appendSerializedSkyBatch, buildSkyLockstakeCloseBatch, buildSkyLockstakeDrawBatch, buildSkyLockstakeGetRewardBatch, buildSkyLockstakeStakePositionBatch, buildSkyLockstakeWipeBatch, buildSkySusdsDepositFromUsdsBatch, buildSkySusdsRedeemToUsdsBatch, fetchSkyUsdFromCoinGecko, formatSkyApyPercentLabel, formatSusdsSharesHuman, isSkyLockstakeIsolationEstimateGasFragileBatchStep, loadSkyLockstakePositions, loadSkyLockstakeSupportedChainIds, readSkyLockstakeFarmRewardsToken, readSusdsPreviewRedeemAssetsWei, readSusdsVaultDecimals, readSusdsVaultShareBalanceWei, resolveSkyLockstakeBatchStepGasFromSignRequest, skyFetchSusdsRateSummary, skyProtocolModule, skySsrRayToApyPercent, skyUsdsDebtWeiFromUrnArt };
|
|
@@ -1385,6 +1385,55 @@ async function readSusdsPreviewRedeemAssetsWei(args) {
|
|
|
1385
1385
|
function formatSusdsSharesHuman(sharesWei, decimals) {
|
|
1386
1386
|
return formatUnits(sharesWei, decimals);
|
|
1387
1387
|
}
|
|
1388
|
+
var susdsRateAbi = parseAbi([
|
|
1389
|
+
"function ssr() view returns (uint256)",
|
|
1390
|
+
"function previewRedeem(uint256 shares) view returns (uint256 assets)"
|
|
1391
|
+
]);
|
|
1392
|
+
var RAY2 = 1e27;
|
|
1393
|
+
var SECONDS_PER_YEAR = 365.25 * 24 * 60 * 60;
|
|
1394
|
+
function skySsrRayToApyPercent(ssrRay) {
|
|
1395
|
+
const rate = Number(ssrRay) / RAY2;
|
|
1396
|
+
if (!Number.isFinite(rate) || rate <= 0) return null;
|
|
1397
|
+
const apy = rate ** SECONDS_PER_YEAR - 1;
|
|
1398
|
+
if (!Number.isFinite(apy) || apy < 0) return null;
|
|
1399
|
+
return apy * 100;
|
|
1400
|
+
}
|
|
1401
|
+
function formatSkyApyPercentLabel(pct) {
|
|
1402
|
+
if (pct == null) return "\u2014";
|
|
1403
|
+
return `${pct.toFixed(2)}%`;
|
|
1404
|
+
}
|
|
1405
|
+
async function skyFetchSusdsRateSummary(args) {
|
|
1406
|
+
const rpc = args.rpcUrl.trim();
|
|
1407
|
+
if (!rpc) throw new Error("rpcUrl is required.");
|
|
1408
|
+
const ch = defineChain({
|
|
1409
|
+
id: 1,
|
|
1410
|
+
name: "Ethereum",
|
|
1411
|
+
nativeCurrency: { decimals: 18, name: "Ether", symbol: "ETH" },
|
|
1412
|
+
rpcUrls: { default: { http: [rpc] } }
|
|
1413
|
+
});
|
|
1414
|
+
const client = createPublicClient({ chain: ch, transport: http(rpc) });
|
|
1415
|
+
const vault = getAddress(SUSDS_VAULT_ERC4626_MAINNET);
|
|
1416
|
+
const [ssr, assets] = await Promise.all([
|
|
1417
|
+
client.readContract({ address: vault, abi: susdsRateAbi, functionName: "ssr" }),
|
|
1418
|
+
client.readContract({
|
|
1419
|
+
address: vault,
|
|
1420
|
+
abi: susdsRateAbi,
|
|
1421
|
+
functionName: "previewRedeem",
|
|
1422
|
+
args: [10n ** 18n]
|
|
1423
|
+
})
|
|
1424
|
+
]);
|
|
1425
|
+
const apy = skySsrRayToApyPercent(ssr);
|
|
1426
|
+
return {
|
|
1427
|
+
chainId: 1,
|
|
1428
|
+
vault,
|
|
1429
|
+
asset: getAddress(USDS_ETHEREUM_MAINNET),
|
|
1430
|
+
assetSymbol: "USDS",
|
|
1431
|
+
apyPercent: formatSkyApyPercentLabel(apy),
|
|
1432
|
+
apy,
|
|
1433
|
+
usdsPerSusdsShare: formatUnits(assets, 18),
|
|
1434
|
+
notes: "Sky Savings Rate from on-chain sUSDS.ssr() (ray). APY = (ssr/1e27)^(seconds/year) \u2212 1. Ethereum mainnet. Do not web-search Sky rates."
|
|
1435
|
+
};
|
|
1436
|
+
}
|
|
1388
1437
|
|
|
1389
1438
|
// src/core/defiProxy.ts
|
|
1390
1439
|
var coingeckoProxyUrl;
|
|
@@ -1441,6 +1490,6 @@ var skyProtocolModule = {
|
|
|
1441
1490
|
};
|
|
1442
1491
|
registerProtocolModule(skyProtocolModule);
|
|
1443
1492
|
|
|
1444
|
-
export { SKY_ETHEREUM_MAINNET, SKY_ETHEREUM_MAINNET_CHAIN_ID, SKY_LOCKSTAKE_DEFAULT_FARM_MAINNET, SKY_LOCKSTAKE_DEFAULT_FARM_REF, SKY_LOCKSTAKE_ENGINE_MAINNET, SKY_LOCKSTAKE_MULTICALL_FALLBACK_GAS, SKY_LOCKSTAKE_UI_COLLATERAL_FACTOR, SKY_LS_SKY_ERC20_MAINNET, SKY_PROTOCOL_ID, SKY_TOKEN_DECIMALS, SUSDS_VAULT_ERC4626_MAINNET, USDS_DECIMALS, USDS_ETHEREUM_MAINNET, appendSerializedSkyBatch, buildSkyLockstakeCloseBatch, buildSkyLockstakeDrawBatch, buildSkyLockstakeGetRewardBatch, buildSkyLockstakeStakePositionBatch, buildSkyLockstakeWipeBatch, buildSkySusdsDepositFromUsdsBatch, buildSkySusdsRedeemToUsdsBatch, fetchSkyUsdFromCoinGecko, formatSusdsSharesHuman, isSkyLockstakeIsolationEstimateGasFragileBatchStep, loadSkyLockstakePositions, loadSkyLockstakeSupportedChainIds, readSkyLockstakeFarmRewardsToken, readSusdsPreviewRedeemAssetsWei, readSusdsVaultDecimals, readSusdsVaultShareBalanceWei, resolveSkyLockstakeBatchStepGasFromSignRequest, skyProtocolModule, skyUsdsDebtWeiFromUrnArt };
|
|
1493
|
+
export { SKY_ETHEREUM_MAINNET, SKY_ETHEREUM_MAINNET_CHAIN_ID, SKY_LOCKSTAKE_DEFAULT_FARM_MAINNET, SKY_LOCKSTAKE_DEFAULT_FARM_REF, SKY_LOCKSTAKE_ENGINE_MAINNET, SKY_LOCKSTAKE_MULTICALL_FALLBACK_GAS, SKY_LOCKSTAKE_UI_COLLATERAL_FACTOR, SKY_LS_SKY_ERC20_MAINNET, SKY_PROTOCOL_ID, SKY_TOKEN_DECIMALS, SUSDS_VAULT_ERC4626_MAINNET, USDS_DECIMALS, USDS_ETHEREUM_MAINNET, appendSerializedSkyBatch, buildSkyLockstakeCloseBatch, buildSkyLockstakeDrawBatch, buildSkyLockstakeGetRewardBatch, buildSkyLockstakeStakePositionBatch, buildSkyLockstakeWipeBatch, buildSkySusdsDepositFromUsdsBatch, buildSkySusdsRedeemToUsdsBatch, fetchSkyUsdFromCoinGecko, formatSkyApyPercentLabel, formatSusdsSharesHuman, isSkyLockstakeIsolationEstimateGasFragileBatchStep, loadSkyLockstakePositions, loadSkyLockstakeSupportedChainIds, readSkyLockstakeFarmRewardsToken, readSusdsPreviewRedeemAssetsWei, readSusdsVaultDecimals, readSusdsVaultShareBalanceWei, resolveSkyLockstakeBatchStepGasFromSignRequest, skyFetchSusdsRateSummary, skyProtocolModule, skySsrRayToApyPercent, skyUsdsDebtWeiFromUrnArt };
|
|
1445
1494
|
//# sourceMappingURL=index.js.map
|
|
1446
1495
|
//# sourceMappingURL=index.js.map
|