@continuumdao/ctm-mpc-defi 0.2.9 → 0.2.10

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.
Files changed (36) hide show
  1. package/dist/agent/catalog.cjs +519 -19
  2. package/dist/agent/catalog.cjs.map +1 -1
  3. package/dist/agent/catalog.d.ts +618 -14
  4. package/dist/agent/catalog.js +507 -20
  5. package/dist/agent/catalog.js.map +1 -1
  6. package/dist/agent/skills/hyperliquid/SKILL.md +34 -6
  7. package/dist/agent/skills/morpho/SKILL.md +48 -0
  8. package/dist/core/index.cjs +9 -0
  9. package/dist/core/index.cjs.map +1 -1
  10. package/dist/core/index.d.ts +3 -1
  11. package/dist/core/index.js +8 -1
  12. package/dist/core/index.js.map +1 -1
  13. package/dist/index.cjs +9 -0
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.ts +1 -1
  16. package/dist/index.js +8 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
  19. package/dist/protocols/evm/aave-v4/index.js.map +1 -1
  20. package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
  21. package/dist/protocols/evm/euler-v2/index.js.map +1 -1
  22. package/dist/protocols/evm/hyperliquid/index.cjs +407 -34
  23. package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
  24. package/dist/protocols/evm/hyperliquid/index.d.ts +168 -15
  25. package/dist/protocols/evm/hyperliquid/index.js +390 -35
  26. package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
  27. package/dist/protocols/evm/maple/index.cjs.map +1 -1
  28. package/dist/protocols/evm/maple/index.js.map +1 -1
  29. package/dist/protocols/evm/morpho/index.cjs +1971 -0
  30. package/dist/protocols/evm/morpho/index.cjs.map +1 -0
  31. package/dist/protocols/evm/morpho/index.d.ts +522 -0
  32. package/dist/protocols/evm/morpho/index.js +1918 -0
  33. package/dist/protocols/evm/morpho/index.js.map +1 -0
  34. package/dist/protocols/evm/sky/index.cjs.map +1 -1
  35. package/dist/protocols/evm/sky/index.js.map +1 -1
  36. package/package.json +6 -1
@@ -10,6 +10,8 @@ declare function hyperliquidApiBaseUrl(chainId: number): string;
10
10
  /** Stats feed used by app.hyperliquid.xyz/vaults (official vaultSummaries returns []). */
11
11
  declare function hyperliquidVaultStatsUrl(chainId: number): string | null;
12
12
  declare const HYPERLIQUID_HLP_VAULT_ADDRESS = "0xdfc24b077bc1425ad1dea75bcb6f8158e10df303";
13
+ /** HIP-3 coins use `{dex}:{symbol}` (e.g. `xyz:AAPL`). Returns dex segment when present. */
14
+ declare function hyperliquidInferDexFromCoin(coin: string): string | undefined;
13
15
 
14
16
  /** CoreWriter system contract on HyperEVM — sends actions to HyperCore. */
15
17
  declare const HYPERLIQUID_CORE_WRITER_ADDRESS: "0x3333333333333333333333333333333333333333";
@@ -23,6 +25,15 @@ declare const HYPERLIQUID_TIF: {
23
25
  readonly ioc: 3;
24
26
  };
25
27
  type HyperliquidTifKey = keyof typeof HYPERLIQUID_TIF;
28
+ /** Approximate bar duration in ms for candle window sizing. */
29
+ declare const HYPERLIQUID_INTERVAL_MS: Record<string, number>;
30
+ declare const HYPERLIQUID_DEFAULT_OHLCV_INTERVAL: "15m";
31
+ declare const HYPERLIQUID_DEFAULT_CANDLE_LIMIT = 48;
32
+ declare const HYPERLIQUID_MAX_CANDLE_LIMIT = 200;
33
+ /** Max bars for dedicated OHLCV range requests (e.g. 7d @ 15m ≈ 672). */
34
+ declare const HYPERLIQUID_MAX_OHLCV_BARS = 2000;
35
+ declare const HYPERLIQUID_DEFAULT_LOOKBACK_DAYS = 1;
36
+ declare const HYPERLIQUID_MAX_LOOKBACK_DAYS = 90;
26
37
 
27
38
  type HyperliquidPerpMarket = {
28
39
  name: string;
@@ -30,6 +41,8 @@ type HyperliquidPerpMarket = {
30
41
  szDecimals: number;
31
42
  maxLeverage: number;
32
43
  onlyIsolated?: boolean;
44
+ /** HIP-3 builder dex; omitted for native Hyperliquid perps. */
45
+ dex?: string;
33
46
  };
34
47
  type HyperliquidPerpDex = {
35
48
  name: string;
@@ -50,6 +63,39 @@ type HyperliquidOhlcvCandle = {
50
63
  close: string;
51
64
  volume: string;
52
65
  };
66
+ type HyperliquidLivePrice = {
67
+ markPx: string | null;
68
+ midPx: string | null;
69
+ oraclePx: string | null;
70
+ prevDayPx: string | null;
71
+ /** Best available live tradable price (midPx, else markPx, else allMids). */
72
+ midUsd: string;
73
+ source: 'midPx' | 'markPx' | 'allMids';
74
+ };
75
+ type HyperliquidMarketSnapshot = {
76
+ coin: string;
77
+ dex: string | null;
78
+ livePrice: HyperliquidLivePrice;
79
+ /** @deprecated Prefer livePrice.midUsd */
80
+ midUsd: string;
81
+ fetchedAtMs: number;
82
+ interval: HyperliquidOhlcvInterval;
83
+ latestCandle: HyperliquidOhlcvCandle | null;
84
+ candles: HyperliquidOhlcvCandle[];
85
+ candleCount: number;
86
+ };
87
+ type HyperliquidOhlcvRange = {
88
+ coin: string;
89
+ dex: string | null;
90
+ interval: HyperliquidOhlcvInterval;
91
+ startTimeMs: number;
92
+ endTimeMs: number;
93
+ expectedBars: number;
94
+ candleCount: number;
95
+ latestCandle: HyperliquidOhlcvCandle | null;
96
+ candles: HyperliquidOhlcvCandle[];
97
+ fetchedAtMs: number;
98
+ };
53
99
  declare function hyperliquidFetchPerpMeta(args: {
54
100
  chainId: number;
55
101
  dex?: string;
@@ -67,27 +113,60 @@ declare function hyperliquidFetchAllMids(args: {
67
113
  }): Promise<{
68
114
  mids: Record<string, string>;
69
115
  }>;
116
+ /** Resolve OHLCV window from lookback or explicit timestamps. */
117
+ declare function hyperliquidResolveOhlcvWindow(args: {
118
+ interval: HyperliquidOhlcvInterval;
119
+ lookbackDays?: number;
120
+ lookbackHours?: number;
121
+ startTimeMs?: number;
122
+ endTimeMs?: number;
123
+ }): {
124
+ startTimeMs: number;
125
+ endTimeMs: number;
126
+ expectedBars: number;
127
+ };
128
+ /** Short recent window for market snapshot (default 48 bars). */
70
129
  declare function hyperliquidFetchCandles(args: {
71
130
  chainId: number;
72
131
  coin: string;
73
132
  interval: HyperliquidOhlcvInterval;
74
133
  startTimeMs?: number;
75
134
  endTimeMs?: number;
135
+ limit?: number;
76
136
  }): Promise<{
77
137
  candles: HyperliquidOhlcvCandle[];
78
138
  }>;
79
- declare function hyperliquidFetchMarketSnapshot(args: {
139
+ /** OHLCV for an explicit time range — requests only that window from Hyperliquid (no over-fetch + filter). */
140
+ declare function hyperliquidFetchOhlcvRange(args: {
80
141
  chainId: number;
81
142
  coin: string;
82
143
  interval?: HyperliquidOhlcvInterval;
83
144
  dex?: string;
84
- }): Promise<{
145
+ lookbackDays?: number;
146
+ lookbackHours?: number;
147
+ startTimeMs?: number;
148
+ endTimeMs?: number;
149
+ }): Promise<HyperliquidOhlcvRange>;
150
+ /** Live mark/mid/oracle from metaAndAssetCtxs — authoritative for HIP-3 and native perps. */
151
+ declare function hyperliquidFetchPerpAssetContext(args: {
152
+ chainId: number;
85
153
  coin: string;
86
- midUsd: string | null;
87
- fetchedAtMs: number;
88
- interval: HyperliquidOhlcvInterval;
89
- candles: HyperliquidOhlcvCandle[];
154
+ dex?: string;
155
+ }): Promise<{
156
+ markPx: string | null;
157
+ midPx: string | null;
158
+ oraclePx: string | null;
159
+ prevDayPx: string | null;
160
+ funding: string | null;
161
+ openInterest: string | null;
90
162
  }>;
163
+ declare function hyperliquidFetchMarketSnapshot(args: {
164
+ chainId: number;
165
+ coin: string;
166
+ interval?: HyperliquidOhlcvInterval;
167
+ dex?: string;
168
+ candleLimit?: number;
169
+ }): Promise<HyperliquidMarketSnapshot>;
91
170
  type ClearinghouseState = {
92
171
  assetPositions?: Array<{
93
172
  position?: {
@@ -192,6 +271,15 @@ declare function hyperliquidFetchDexList(args: {
192
271
  }): Promise<{
193
272
  dexes: HyperliquidPerpDex[];
194
273
  }>;
274
+ type HyperliquidPerpConciseAnnotation = {
275
+ category?: string;
276
+ displayName?: string;
277
+ keywords?: string[];
278
+ };
279
+ /** Bulk metadata for HIP-3 / annotated perps (display names, keywords like "apple" for AAPL). */
280
+ declare function hyperliquidFetchPerpConciseAnnotations(args: {
281
+ chainId: number;
282
+ }): Promise<Map<string, HyperliquidPerpConciseAnnotation>>;
195
283
  declare function hyperliquidFetchDelegations(args: {
196
284
  chainId: number;
197
285
  user: string;
@@ -237,6 +325,50 @@ declare function hyperliquidResolveAsset(args: {
237
325
  }>;
238
326
  declare function hyperliquidIsSpotAssetId(asset: number): boolean;
239
327
 
328
+ type HyperliquidPerpAnnotation = {
329
+ category?: string;
330
+ displayName?: string;
331
+ keywords?: string[];
332
+ };
333
+ type HyperliquidMarketSearchHit = {
334
+ coin: string;
335
+ symbol: string;
336
+ dex?: string;
337
+ asset: number;
338
+ szDecimals: number;
339
+ maxLeverage: number;
340
+ onlyIsolated?: boolean;
341
+ displayName?: string;
342
+ category?: string;
343
+ keywords?: string[];
344
+ matchScore: number;
345
+ matchReason: string;
346
+ };
347
+ declare function hyperliquidMarketSymbol(coin: string): string;
348
+ declare function hyperliquidCollectAllPerpMarkets(args: {
349
+ chainId: number;
350
+ dex?: string;
351
+ }): Promise<{
352
+ markets: HyperliquidPerpMarket[];
353
+ dexes: Awaited<ReturnType<typeof hyperliquidFetchDexList>>['dexes'];
354
+ }>;
355
+ declare function hyperliquidSearchMarkets(args: {
356
+ chainId: number;
357
+ query: string;
358
+ dex?: string;
359
+ limit?: number;
360
+ }): Promise<{
361
+ matches: HyperliquidMarketSearchHit[];
362
+ }>;
363
+ /** Resolve a user ticker/name to a single canonical Hyperliquid coin across all dexes. */
364
+ declare function hyperliquidResolvePerpMarket(args: {
365
+ chainId: number;
366
+ coin: string;
367
+ dex?: string;
368
+ }): Promise<HyperliquidPerpMarket & {
369
+ symbol: string;
370
+ }>;
371
+
240
372
  type HyperliquidUsdClassBalances = {
241
373
  spotUsdcAvailable: string;
242
374
  perpWithdrawable: string;
@@ -292,7 +424,7 @@ declare function hyperliquidFetchOrdersForExecutor(args: {
292
424
  }): Promise<{
293
425
  orders: HyperliquidOpenOrder[];
294
426
  }>;
295
- /** MCP: perp markets + HIP-3 dex list. */
427
+ /** MCP: perp markets + HIP-3 dex list. When dex is omitted, returns native + all HIP-3 dex markets. */
296
428
  declare function hyperliquidFetchMarketsSummary(args: {
297
429
  chainId: number;
298
430
  dex?: string;
@@ -300,6 +432,15 @@ declare function hyperliquidFetchMarketsSummary(args: {
300
432
  markets: HyperliquidPerpMarket[];
301
433
  dexes: HyperliquidPerpDex[];
302
434
  }>;
435
+ /** MCP: search markets across all dexes by ticker or name (case-insensitive). */
436
+ declare function hyperliquidSearchMarketsSummary(args: {
437
+ chainId: number;
438
+ query: string;
439
+ dex?: string;
440
+ limit?: number;
441
+ }): Promise<{
442
+ matches: HyperliquidMarketSearchHit[];
443
+ }>;
303
444
  /** MCP: open positions for executor. */
304
445
  declare function hyperliquidFetchPositionsForExecutor(args: {
305
446
  chainId: number;
@@ -372,14 +513,26 @@ declare function hyperliquidFetchMarketSnapshotSummary(args: {
372
513
  coin: string;
373
514
  interval?: HyperliquidOhlcvInterval;
374
515
  dex?: string;
516
+ candleLimit?: number;
375
517
  }): Promise<{
376
- snapshot: {
377
- coin: string;
378
- midUsd: string | null;
379
- fetchedAtMs: number;
380
- interval: HyperliquidOhlcvInterval;
381
- candles: HyperliquidOhlcvCandle[];
382
- };
518
+ snapshot: HyperliquidMarketSnapshot;
519
+ resolvedCoin: string;
520
+ dex: string | null;
521
+ }>;
522
+ /** MCP: OHLCV history for an explicit lookback or time range. */
523
+ declare function hyperliquidFetchOhlcvSummary(args: {
524
+ chainId: number;
525
+ coin: string;
526
+ interval?: HyperliquidOhlcvInterval;
527
+ dex?: string;
528
+ lookbackDays?: number;
529
+ lookbackHours?: number;
530
+ startTimeMs?: number;
531
+ endTimeMs?: number;
532
+ }): Promise<{
533
+ ohlcv: HyperliquidOhlcvRange;
534
+ resolvedCoin: string;
535
+ dex: string | null;
383
536
  }>;
384
537
 
385
538
  /** Hyperliquid CoreWriter uses 1e8 fixed-point for prices and sizes. */
@@ -512,4 +665,4 @@ declare function buildEvmMultisignBodyHyperliquidUndelegateBatch(args: Omit<Hype
512
665
  declare const HYPERLIQUID_PROTOCOL_ID = "hyperliquid";
513
666
  declare const hyperliquidProtocolModule: ProtocolModule;
514
667
 
515
- export { HYPERLIQUID_CORE_WRITER_ADDRESS, HYPERLIQUID_CORE_WRITER_GAS_FALLBACK, HYPERLIQUID_HLP_VAULT_ADDRESS, HYPERLIQUID_PROTOCOL_ID, HYPERLIQUID_SPOT_ASSET_OFFSET, HYPERLIQUID_SUPPORTED_CHAIN_IDS, HYPERLIQUID_TIF, type HyperliquidActiveAssetContext, type HyperliquidCancelOrderArgs, type HyperliquidCloseOrderArgs, type HyperliquidDelegateArgs, type HyperliquidLimitOrderArgs, type HyperliquidOhlcvCandle, type HyperliquidOhlcvInterval, type HyperliquidOpenMarketContext, type HyperliquidOpenOrder, type HyperliquidPerpAccountSummary, type HyperliquidPerpDex, type HyperliquidPerpMarket, type HyperliquidPositionDisplayRow, type HyperliquidSpotMarket, type HyperliquidSupportedChainId, type HyperliquidTifKey, type HyperliquidUsdClassBalances, type HyperliquidUsdClassTransferArgs, type HyperliquidVaultDepositArgs, type HyperliquidVaultEquity, type HyperliquidVaultSummary, type HyperliquidVaultWithdrawArgs, buildCoreWriterCancelByCloidCalldata, buildCoreWriterCancelByOidCalldata, buildCoreWriterLimitOrderCalldata, buildCoreWriterStakingDepositCalldata, buildCoreWriterStakingWithdrawCalldata, buildCoreWriterTokenDelegateCalldata, buildCoreWriterUsdClassTransferCalldata, buildCoreWriterVaultTransferCalldata, buildEvmMultisignBodyHyperliquidCancelBatch, buildEvmMultisignBodyHyperliquidCloseBatch, buildEvmMultisignBodyHyperliquidDelegateBatch, buildEvmMultisignBodyHyperliquidDelegateOnlyBatch, buildEvmMultisignBodyHyperliquidLimitOrderBatch, buildEvmMultisignBodyHyperliquidStakeDepositBatch, buildEvmMultisignBodyHyperliquidStakeWithdrawBatch, buildEvmMultisignBodyHyperliquidUndelegateBatch, buildEvmMultisignBodyHyperliquidUsdClassTransferBatch, buildEvmMultisignBodyHyperliquidVaultDepositBatch, buildEvmMultisignBodyHyperliquidVaultWithdrawBatch, coreWriterStep, hyperliquidApiBaseUrl, hyperliquidEncodePx8, hyperliquidEncodeUsd6, hyperliquidEncodeWei8, hyperliquidFetchActiveAssetData, hyperliquidFetchAllMids, hyperliquidFetchCandles, hyperliquidFetchClearinghouseState, hyperliquidFetchDelegations, hyperliquidFetchDelegationsForExecutor, hyperliquidFetchDexList, hyperliquidFetchMarketSnapshot, hyperliquidFetchMarketSnapshotSummary, hyperliquidFetchMarketsSummary, hyperliquidFetchOpenContextSummary, hyperliquidFetchOpenMarketContext, hyperliquidFetchOpenOrders, hyperliquidFetchOpenOrdersSummary, hyperliquidFetchOrdersForExecutor, hyperliquidFetchPerpMeta, hyperliquidFetchPositionDisplayRows, hyperliquidFetchPositionsForExecutor, hyperliquidFetchSpotClearinghouseState, hyperliquidFetchSpotMeta, hyperliquidFetchStakingSummary, hyperliquidFetchStakingSummaryForExecutor, hyperliquidFetchUsdClassBalances, hyperliquidFetchUsdClassBalancesSummary, hyperliquidFetchUserVaultEquities, hyperliquidFetchUserVaultEquitiesSummary, hyperliquidFetchVaultCatalogSummary, hyperliquidFetchVaultSummaries, hyperliquidIsSpotAssetId, hyperliquidProtocolModule, hyperliquidResolveAsset, hyperliquidResolvePerpAsset, hyperliquidResolveSpotAsset, hyperliquidResolveTif, hyperliquidVaultStatsUrl, isHyperliquidChainSupported };
668
+ export { HYPERLIQUID_CORE_WRITER_ADDRESS, HYPERLIQUID_CORE_WRITER_GAS_FALLBACK, HYPERLIQUID_DEFAULT_CANDLE_LIMIT, HYPERLIQUID_DEFAULT_LOOKBACK_DAYS, HYPERLIQUID_DEFAULT_OHLCV_INTERVAL, HYPERLIQUID_HLP_VAULT_ADDRESS, HYPERLIQUID_INTERVAL_MS, HYPERLIQUID_MAX_CANDLE_LIMIT, HYPERLIQUID_MAX_LOOKBACK_DAYS, HYPERLIQUID_MAX_OHLCV_BARS, HYPERLIQUID_PROTOCOL_ID, HYPERLIQUID_SPOT_ASSET_OFFSET, HYPERLIQUID_SUPPORTED_CHAIN_IDS, HYPERLIQUID_TIF, type HyperliquidActiveAssetContext, type HyperliquidCancelOrderArgs, type HyperliquidCloseOrderArgs, type HyperliquidDelegateArgs, type HyperliquidLimitOrderArgs, type HyperliquidLivePrice, type HyperliquidMarketSearchHit, type HyperliquidMarketSnapshot, type HyperliquidOhlcvCandle, type HyperliquidOhlcvInterval, type HyperliquidOhlcvRange, type HyperliquidOpenMarketContext, type HyperliquidOpenOrder, type HyperliquidPerpAccountSummary, type HyperliquidPerpAnnotation, type HyperliquidPerpConciseAnnotation, type HyperliquidPerpDex, type HyperliquidPerpMarket, type HyperliquidPositionDisplayRow, type HyperliquidSpotMarket, type HyperliquidSupportedChainId, type HyperliquidTifKey, type HyperliquidUsdClassBalances, type HyperliquidUsdClassTransferArgs, type HyperliquidVaultDepositArgs, type HyperliquidVaultEquity, type HyperliquidVaultSummary, type HyperliquidVaultWithdrawArgs, buildCoreWriterCancelByCloidCalldata, buildCoreWriterCancelByOidCalldata, buildCoreWriterLimitOrderCalldata, buildCoreWriterStakingDepositCalldata, buildCoreWriterStakingWithdrawCalldata, buildCoreWriterTokenDelegateCalldata, buildCoreWriterUsdClassTransferCalldata, buildCoreWriterVaultTransferCalldata, buildEvmMultisignBodyHyperliquidCancelBatch, buildEvmMultisignBodyHyperliquidCloseBatch, buildEvmMultisignBodyHyperliquidDelegateBatch, buildEvmMultisignBodyHyperliquidDelegateOnlyBatch, buildEvmMultisignBodyHyperliquidLimitOrderBatch, buildEvmMultisignBodyHyperliquidStakeDepositBatch, buildEvmMultisignBodyHyperliquidStakeWithdrawBatch, buildEvmMultisignBodyHyperliquidUndelegateBatch, buildEvmMultisignBodyHyperliquidUsdClassTransferBatch, buildEvmMultisignBodyHyperliquidVaultDepositBatch, buildEvmMultisignBodyHyperliquidVaultWithdrawBatch, coreWriterStep, hyperliquidApiBaseUrl, hyperliquidCollectAllPerpMarkets, hyperliquidEncodePx8, hyperliquidEncodeUsd6, hyperliquidEncodeWei8, hyperliquidFetchActiveAssetData, hyperliquidFetchAllMids, hyperliquidFetchCandles, hyperliquidFetchClearinghouseState, hyperliquidFetchDelegations, hyperliquidFetchDelegationsForExecutor, hyperliquidFetchDexList, hyperliquidFetchMarketSnapshot, hyperliquidFetchMarketSnapshotSummary, hyperliquidFetchMarketsSummary, hyperliquidFetchOhlcvRange, hyperliquidFetchOhlcvSummary, hyperliquidFetchOpenContextSummary, hyperliquidFetchOpenMarketContext, hyperliquidFetchOpenOrders, hyperliquidFetchOpenOrdersSummary, hyperliquidFetchOrdersForExecutor, hyperliquidFetchPerpAssetContext, hyperliquidFetchPerpConciseAnnotations, hyperliquidFetchPerpMeta, hyperliquidFetchPositionDisplayRows, hyperliquidFetchPositionsForExecutor, hyperliquidFetchSpotClearinghouseState, hyperliquidFetchSpotMeta, hyperliquidFetchStakingSummary, hyperliquidFetchStakingSummaryForExecutor, hyperliquidFetchUsdClassBalances, hyperliquidFetchUsdClassBalancesSummary, hyperliquidFetchUserVaultEquities, hyperliquidFetchUserVaultEquitiesSummary, hyperliquidFetchVaultCatalogSummary, hyperliquidFetchVaultSummaries, hyperliquidInferDexFromCoin, hyperliquidIsSpotAssetId, hyperliquidMarketSymbol, hyperliquidProtocolModule, hyperliquidResolveAsset, hyperliquidResolveOhlcvWindow, hyperliquidResolvePerpAsset, hyperliquidResolvePerpMarket, hyperliquidResolveSpotAsset, hyperliquidResolveTif, hyperliquidSearchMarkets, hyperliquidSearchMarketsSummary, hyperliquidVaultStatsUrl, isHyperliquidChainSupported };