solana-agent-kit-plugin-madeonsol 1.12.0 → 1.13.0

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 CHANGED
@@ -11,6 +11,8 @@
11
11
 
12
12
  > Real-time Solana trading intelligence: track 1,069 KOL wallets with <3s latency, score 23,000+ Pump.fun deployers, surface deshred deploy signals ~500ms before on-chain confirmation, detect multi-KOL coordination, and stream every DEX trade. Free tier: 200 requests/day at [madeonsol.com/pricing](https://madeonsol.com/pricing) — no credit card required.
13
13
 
14
+ > **New in 1.13.0** — **Token net flow.** New tool `tokenFlow()` + action `MADEONSOL_TOKEN_FLOW_ACTION` — net buy/sell flow over a rolling window (`1h` default, or `24h`): `unique_wallets`, `unique_buyers`, `unique_sellers`, `buy_count`, `sell_count`, `total_trades`, `buy_sol`, `sell_sol`, `net_sol`, `trades_per_wallet`. PRO/ULTRA only. Deployer alerts now also surface `deployer_sol_balance` — the deployer wallet's SOL balance at alert time (`null` for historical rows).
15
+ >
14
16
  > **New in 1.12.0** — **Token OHLCV candles.** New tool `tokenCandles()` + action `MADEONSOL_TOKEN_CANDLES_ACTION` — historical price candles (1m/5m/15m/1h/4h/1d) aggregated from the on-chain trade firehose. Each candle has `t/open/high/low/close/volume_usd/trades/market_cap_usd`. PRO returns OHLCV for the last 30 days; ULTRA adds buy/sell volume + count splits, net flow, MEV volume, open/close liquidity, high/low MC, and full history. PRO/ULTRA only.
15
17
  >
16
18
  > **New in 1.11.0** — **Token risk score.** New tool `tokenRisk()` + action `MADEONSOL_TOKEN_RISK_ACTION` — a transparent 0–100 rug-risk/safety score (higher = riskier) with a `band` (safe/caution/danger), an explainable `factors[]` array, and the raw `inputs` (mint/freeze authority, liquidity, liq-to-MC ratio, transfer fee, launch cohort, deployer bond rate, KOL signal, blacklist). PRO/ULTRA only.
@@ -106,6 +108,7 @@ const events = await agent.methods.walletTrackerTrades(agent, { limit: 50 });
106
108
  | `MADEONSOL_WALLET_PNL_ACTION` | **New 1.8** · "wallet pnl", "wallet profit", "wallet performance" — FIFO cost-basis PnL with profit factor, drawdown, daily curve, closed + open positions (PRO+) |
107
109
  | `MADEONSOL_WALLET_POSITIONS_ACTION` | **New 1.8** · "wallet positions", "wallet bags", "open positions" — open lots with live unrealized SOL (PRO+) |
108
110
  | `MADEONSOL_WALLET_TRADES_ACTION` | **New 1.8** · "wallet trades", "wallet history" — cursor-paginated raw trades with filters (PRO+) |
111
+ | `MADEONSOL_TOKEN_FLOW_ACTION` | **New 1.13** · "token flow", "net flow", "buy/sell pressure" — net buy/sell flow over a 1h/24h window (PRO+) |
109
112
 
110
113
  ## Additional methods (v1.0+)
111
114
 
@@ -128,8 +131,11 @@ await agent.methods.tokenCapTable(agent, { mint: "MINT" }); // PRO=1
128
131
  await agent.methods.tokenBuyerQuality(agent, { mint: "MINT" }); // 0–100 buyer-quality score (5-min cached)
129
132
  await agent.methods.tokenRisk(agent, { mint: "MINT" }); // PRO+ 0–100 rug-risk/safety score + band + factors
130
133
  await agent.methods.tokenCandles(agent, { mint: "MINT", tf: "1h" }); // PRO+ OHLCV candles (1m–1d); ULTRA=+net flow, liquidity, full history
134
+ await agent.methods.tokenFlow(agent, { mint: "MINT", window: "24h" }); // PRO+ net buy/sell flow (1h/24h): unique wallets, buy/sell/net SOL, trades-per-wallet
131
135
  ```
132
136
 
137
+ > Deployer alerts (`MADEONSOL_DEPLOYER_ALERTS_ACTION` / `agent.methods.deployerAlerts()`) now include `deployer_sol_balance` — the deployer wallet's SOL balance at alert time (`null` for historical rows).
138
+
133
139
  ### Copy-Trade Rules (PRO/ULTRA)
134
140
 
135
141
  Server-side rules that fire signals when a watched source wallet trades. Delivered via webhook (HMAC-signed) and/or WebSocket.
@@ -137,9 +143,12 @@ Server-side rules that fire signals when a watched source wallet trades. Deliver
137
143
  ```ts
138
144
  await agent.methods.copyTradeList(agent);
139
145
  await agent.methods.copyTradeCreate(agent, {
140
- name: "Track Whale",
141
- source_wallet: "WALLET",
142
- delivery: "webhook",
146
+ name: "Track Whales",
147
+ source_wallets: ["WALLET_A", "WALLET_B"], // 1-50 wallets
148
+ sizing_mode: "fixed",
149
+ sizing_amount: 0.5, // required
150
+ only_action: "buy",
151
+ delivery_mode: "webhook",
143
152
  webhook_url: "https://you.com/hook",
144
153
  });
145
154
  await agent.methods.copyTradeSignals(agent, { limit: 50 }); // up to 7 days
@@ -20,13 +20,13 @@ export declare const kolAlertsRecentAction: {
20
20
  limit: z.ZodDefault<z.ZodNumber>;
21
21
  }, "strip", z.ZodTypeAny, {
22
22
  limit: number;
23
- window: "24h" | "1h" | "6h" | "5m" | "15m";
23
+ window: "1h" | "24h" | "6h" | "5m" | "15m";
24
24
  types?: ("consensus_cluster" | "fresh_token_kol_buy" | "heating_up")[] | undefined;
25
25
  min_severity?: "high" | "medium" | "low" | undefined;
26
26
  }, {
27
27
  limit?: number | undefined;
28
28
  types?: ("consensus_cluster" | "fresh_token_kol_buy" | "heating_up")[] | undefined;
29
- window?: "24h" | "1h" | "6h" | "5m" | "15m" | undefined;
29
+ window?: "1h" | "24h" | "6h" | "5m" | "15m" | undefined;
30
30
  min_severity?: "high" | "medium" | "low" | undefined;
31
31
  }>;
32
32
  handler: (agent: unknown, input: {
@@ -18,11 +18,11 @@ export declare const kolCoordinationAction: {
18
18
  min_kols: z.ZodDefault<z.ZodNumber>;
19
19
  limit: z.ZodDefault<z.ZodNumber>;
20
20
  }, "strip", z.ZodTypeAny, {
21
- period: "24h" | "1h" | "6h" | "7d";
21
+ period: "1h" | "24h" | "6h" | "7d";
22
22
  min_kols: number;
23
23
  limit: number;
24
24
  }, {
25
- period?: "24h" | "1h" | "6h" | "7d" | undefined;
25
+ period?: "1h" | "24h" | "6h" | "7d" | undefined;
26
26
  min_kols?: number | undefined;
27
27
  limit?: number | undefined;
28
28
  }>;
@@ -0,0 +1,38 @@
1
+ import { z } from "zod";
2
+ export declare const tokenFlowAction: {
3
+ name: string;
4
+ similes: string[];
5
+ description: string;
6
+ examples: {
7
+ input: {
8
+ mint: string;
9
+ window: string;
10
+ };
11
+ output: {
12
+ status: string;
13
+ };
14
+ explanation: string;
15
+ }[][];
16
+ schema: z.ZodObject<{
17
+ mint: z.ZodString;
18
+ window: z.ZodOptional<z.ZodEnum<["1h", "24h"]>>;
19
+ }, "strip", z.ZodTypeAny, {
20
+ mint: string;
21
+ window?: "1h" | "24h" | undefined;
22
+ }, {
23
+ mint: string;
24
+ window?: "1h" | "24h" | undefined;
25
+ }>;
26
+ handler: (agent: unknown, input: {
27
+ mint: string;
28
+ window?: "1h" | "24h";
29
+ }) => Promise<{
30
+ status: string;
31
+ result: any;
32
+ message?: undefined;
33
+ } | {
34
+ status: string;
35
+ message: string;
36
+ result?: undefined;
37
+ }>;
38
+ };
@@ -0,0 +1,23 @@
1
+ import { z } from "zod";
2
+ import { tokenFlow } from "../tools/index.js";
3
+ export const tokenFlowAction = {
4
+ name: "MADEONSOL_TOKEN_FLOW_ACTION",
5
+ similes: ["token flow", "net flow", "buy sell flow", "buy pressure", "sell pressure", "net sol flow"],
6
+ description: "Get net buy/sell flow for a Solana token over a rolling window (1h or 24h). Returns unique wallet/buyer/seller counts, buy/sell trade counts, buy/sell/net SOL, and trades-per-wallet. Default window is 1h. PRO/ULTRA only — BASIC receives HTTP 403.",
7
+ examples: [
8
+ [{ input: { mint: "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU", window: "24h" }, output: { status: "success" }, explanation: "Get the 24h net buy/sell flow for this token." }],
9
+ ],
10
+ schema: z.object({
11
+ mint: z.string().describe("Token mint address (base58)"),
12
+ window: z.enum(["1h", "24h"]).optional().describe("Rolling window (default 1h)"),
13
+ }),
14
+ handler: async (agent, input) => {
15
+ try {
16
+ const data = await tokenFlow(agent, input);
17
+ return { status: "success", result: data };
18
+ }
19
+ catch (err) {
20
+ return { status: "error", message: err.message };
21
+ }
22
+ },
23
+ };
package/dist/index.d.ts CHANGED
@@ -13,7 +13,8 @@ import { meAction } from "./actions/me.js";
13
13
  import { tokensListAction } from "./actions/tokensList.js";
14
14
  import { tokenRiskAction } from "./actions/tokenRisk.js";
15
15
  import { tokenCandlesAction } from "./actions/tokenCandles.js";
16
- import { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList } from "./tools/index.js";
16
+ import { tokenFlowAction } from "./actions/tokenFlow.js";
17
+ import { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, tokenFlow, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList } from "./tools/index.js";
17
18
  import { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction } from "./actions/wallet.js";
18
19
  declare const MadeOnSolPlugin: {
19
20
  name: string;
@@ -44,6 +45,7 @@ declare const MadeOnSolPlugin: {
44
45
  tokenBuyerQuality: typeof tokenBuyerQuality;
45
46
  tokenRisk: typeof tokenRisk;
46
47
  tokenCandles: typeof tokenCandles;
48
+ tokenFlow: typeof tokenFlow;
47
49
  copyTradeList: typeof copyTradeList;
48
50
  copyTradeCreate: typeof copyTradeCreate;
49
51
  copyTradeGet: typeof copyTradeGet;
@@ -137,11 +139,11 @@ declare const MadeOnSolPlugin: {
137
139
  min_kols: import("zod").ZodDefault<import("zod").ZodNumber>;
138
140
  limit: import("zod").ZodDefault<import("zod").ZodNumber>;
139
141
  }, "strip", import("zod").ZodTypeAny, {
140
- period: "24h" | "1h" | "6h" | "7d";
142
+ period: "1h" | "24h" | "6h" | "7d";
141
143
  min_kols: number;
142
144
  limit: number;
143
145
  }, {
144
- period?: "24h" | "1h" | "6h" | "7d" | undefined;
146
+ period?: "1h" | "24h" | "6h" | "7d" | undefined;
145
147
  min_kols?: number | undefined;
146
148
  limit?: number | undefined;
147
149
  }>;
@@ -550,13 +552,13 @@ declare const MadeOnSolPlugin: {
550
552
  limit: import("zod").ZodDefault<import("zod").ZodNumber>;
551
553
  }, "strip", import("zod").ZodTypeAny, {
552
554
  limit: number;
553
- window: "24h" | "1h" | "6h" | "5m" | "15m";
555
+ window: "1h" | "24h" | "6h" | "5m" | "15m";
554
556
  types?: ("consensus_cluster" | "fresh_token_kol_buy" | "heating_up")[] | undefined;
555
557
  min_severity?: "high" | "medium" | "low" | undefined;
556
558
  }, {
557
559
  limit?: number | undefined;
558
560
  types?: ("consensus_cluster" | "fresh_token_kol_buy" | "heating_up")[] | undefined;
559
- window?: "24h" | "1h" | "6h" | "5m" | "15m" | undefined;
561
+ window?: "1h" | "24h" | "6h" | "5m" | "15m" | undefined;
560
562
  min_severity?: "high" | "medium" | "low" | undefined;
561
563
  }>;
562
564
  handler: (agent: unknown, input: {
@@ -856,6 +858,42 @@ declare const MadeOnSolPlugin: {
856
858
  message: string;
857
859
  result?: undefined;
858
860
  }>;
861
+ } | {
862
+ name: string;
863
+ similes: string[];
864
+ description: string;
865
+ examples: {
866
+ input: {
867
+ mint: string;
868
+ window: string;
869
+ };
870
+ output: {
871
+ status: string;
872
+ };
873
+ explanation: string;
874
+ }[][];
875
+ schema: import("zod").ZodObject<{
876
+ mint: import("zod").ZodString;
877
+ window: import("zod").ZodOptional<import("zod").ZodEnum<["1h", "24h"]>>;
878
+ }, "strip", import("zod").ZodTypeAny, {
879
+ mint: string;
880
+ window?: "1h" | "24h" | undefined;
881
+ }, {
882
+ mint: string;
883
+ window?: "1h" | "24h" | undefined;
884
+ }>;
885
+ handler: (agent: unknown, input: {
886
+ mint: string;
887
+ window?: "1h" | "24h";
888
+ }) => Promise<{
889
+ status: string;
890
+ result: any;
891
+ message?: undefined;
892
+ } | {
893
+ status: string;
894
+ message: string;
895
+ result?: undefined;
896
+ }>;
859
897
  } | {
860
898
  name: string;
861
899
  similes: string[];
@@ -948,8 +986,8 @@ declare const MadeOnSolPlugin: {
948
986
  initialize(_agent: unknown): void;
949
987
  };
950
988
  export default MadeOnSolPlugin;
951
- export { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList, };
989
+ export { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, tokenFlow, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList, };
952
990
  export { kolFeedAction, kolCoordinationAction, kolLeaderboardAction, deployerAlertsAction, kolPnlAction, kolTrendingTokensAction, kolTokenEntryOrderAction, kolCompareAction, kolAlertsRecentAction, kolFirstTouchesAction };
953
991
  export { walletTrackerWatchlistAction, walletTrackerAddAction, walletTrackerRemoveAction, walletTrackerTradesAction, walletTrackerSummaryAction };
954
992
  export { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction };
955
- export { meAction, tokensListAction, tokenRiskAction, tokenCandlesAction };
993
+ export { meAction, tokensListAction, tokenRiskAction, tokenCandlesAction, tokenFlowAction };
package/dist/index.js CHANGED
@@ -13,7 +13,8 @@ import { meAction } from "./actions/me.js";
13
13
  import { tokensListAction } from "./actions/tokensList.js";
14
14
  import { tokenRiskAction } from "./actions/tokenRisk.js";
15
15
  import { tokenCandlesAction } from "./actions/tokenCandles.js";
16
- import { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList, } from "./tools/index.js";
16
+ import { tokenFlowAction } from "./actions/tokenFlow.js";
17
+ import { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, tokenFlow, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList, } from "./tools/index.js";
17
18
  import { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction } from "./actions/wallet.js";
18
19
  const MadeOnSolPlugin = {
19
20
  name: "madeonsol",
@@ -44,6 +45,7 @@ const MadeOnSolPlugin = {
44
45
  tokenBuyerQuality,
45
46
  tokenRisk,
46
47
  tokenCandles,
48
+ tokenFlow,
47
49
  copyTradeList,
48
50
  copyTradeCreate,
49
51
  copyTradeGet,
@@ -98,6 +100,7 @@ const MadeOnSolPlugin = {
98
100
  tokensListAction,
99
101
  tokenRiskAction,
100
102
  tokenCandlesAction,
103
+ tokenFlowAction,
101
104
  walletStatsAction,
102
105
  walletPnlAction,
103
106
  walletPositionsAction,
@@ -108,8 +111,8 @@ const MadeOnSolPlugin = {
108
111
  },
109
112
  };
110
113
  export default MadeOnSolPlugin;
111
- export { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList, };
114
+ export { kolFeed, kolCoordination, kolLeaderboard, deployerAlerts, kolPnl, kolTrendingTokens, kolTokenEntryOrder, kolCompare, kolAlertsRecent, createWebhook, listWebhooks, deleteWebhook, testWebhook, getStreamToken, walletTrackerWatchlist, walletTrackerAdd, walletTrackerRemove, walletTrackerTrades, walletTrackerSummary, alphaLeaderboard, alphaWallet, alphaLinked, tokenCapTable, tokenBuyerQuality, tokenRisk, tokenCandles, tokenFlow, copyTradeList, copyTradeCreate, copyTradeGet, copyTradeUpdate, copyTradeDelete, copyTradeSignals, coordinationAlertsList, coordinationAlertsCreate, coordinationAlertsGet, coordinationAlertsUpdate, coordinationAlertsDelete, kolFirstTouches, firstTouchSubscriptionsList, firstTouchSubscriptionsCreate, firstTouchSubscriptionsGet, firstTouchSubscriptionsUpdate, firstTouchSubscriptionsDelete, priceAlertsList, priceAlertsCreate, priceAlertsGet, priceAlertsUpdate, priceAlertsDelete, priceAlertsEvents, scoutLeaderboard, coordinationHistory, kolConsensus, peakHistory, walletStats, walletPnl, walletPositions, walletTrades, me, tokensList, };
112
115
  export { kolFeedAction, kolCoordinationAction, kolLeaderboardAction, deployerAlertsAction, kolPnlAction, kolTrendingTokensAction, kolTokenEntryOrderAction, kolCompareAction, kolAlertsRecentAction, kolFirstTouchesAction };
113
116
  export { walletTrackerWatchlistAction, walletTrackerAddAction, walletTrackerRemoveAction, walletTrackerTradesAction, walletTrackerSummaryAction };
114
117
  export { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction };
115
- export { meAction, tokensListAction, tokenRiskAction, tokenCandlesAction };
118
+ export { meAction, tokensListAction, tokenRiskAction, tokenCandlesAction, tokenFlowAction };
@@ -179,6 +179,14 @@ export declare function tokenCandles(agent: Agent, params: {
179
179
  from?: string;
180
180
  to?: string;
181
181
  }): Promise<any>;
182
+ /**
183
+ * Net buy/sell flow for a token over a rolling window (`1h` default, or `24h`). Returns unique
184
+ * wallet/buyer/seller counts, buy/sell trade counts, buy/sell/net SOL, and trades-per-wallet. PRO/ULTRA only.
185
+ */
186
+ export declare function tokenFlow(agent: Agent, params: {
187
+ mint: string;
188
+ window?: "1h" | "24h";
189
+ }): Promise<any>;
182
190
  /** Bulk buyer-quality scoring for up to 50 mints. Shares the 5-min LRU cache with the single-mint endpoint. */
183
191
  export declare function tokenBuyerQualityBatch(agent: Agent, params: {
184
192
  mints: string[];
@@ -193,12 +201,18 @@ export declare function tokenBatch(agent: Agent, params: {
193
201
  }): Promise<any>;
194
202
  export declare function copyTradeList(agent: Agent): Promise<any>;
195
203
  export declare function copyTradeCreate(agent: Agent, params: {
196
- name: string;
197
- source_wallet: string;
198
- is_active?: boolean;
204
+ /** 1-50 wallets to copy trades from. */
205
+ source_wallets: string[];
206
+ /** Required. Fixed SOL amount, proportional multiplier, or percent of source — per sizing_mode. */
207
+ sizing_amount: number;
208
+ name?: string;
209
+ min_trade_sol?: number;
210
+ only_action?: "buy" | "sell" | "both";
211
+ sizing_mode?: "fixed" | "proportional" | "percent_source";
212
+ delivery_mode?: "webhook" | "websocket" | "both";
199
213
  webhook_url?: string;
200
- delivery?: "webhook" | "websocket" | "both";
201
- filters?: Record<string, unknown>;
214
+ min_mc_usd?: number | null;
215
+ max_mc_usd?: number | null;
202
216
  }): Promise<any>;
203
217
  export declare function copyTradeGet(agent: Agent, params: {
204
218
  rule_id: string;
@@ -278,6 +278,14 @@ export async function tokenCandles(agent, params) {
278
278
  const query = qs.toString() ? `?${qs.toString()}` : "";
279
279
  return restQuery(agent, "GET", `/tokens/${encodeURIComponent(params.mint)}/candles${query}`);
280
280
  }
281
+ /**
282
+ * Net buy/sell flow for a token over a rolling window (`1h` default, or `24h`). Returns unique
283
+ * wallet/buyer/seller counts, buy/sell trade counts, buy/sell/net SOL, and trades-per-wallet. PRO/ULTRA only.
284
+ */
285
+ export async function tokenFlow(agent, params) {
286
+ const qs = params.window !== undefined ? `?window=${params.window}` : "";
287
+ return restQuery(agent, "GET", `/tokens/${encodeURIComponent(params.mint)}/flow${qs}`);
288
+ }
281
289
  /** Bulk buyer-quality scoring for up to 50 mints. Shares the 5-min LRU cache with the single-mint endpoint. */
282
290
  export async function tokenBuyerQualityBatch(agent, params) {
283
291
  return restQuery(agent, "POST", "/tokens/batch/buyer-quality", { mints: params.mints });
@@ -293,19 +301,19 @@ export async function tokenBatch(agent, params) {
293
301
  }
294
302
  // ── Copy-Trade Rules (PRO/ULTRA) ──
295
303
  export async function copyTradeList(agent) {
296
- return restQuery(agent, "GET", "/copy-trade/rules");
304
+ return restQuery(agent, "GET", "/copytrade/subscriptions");
297
305
  }
298
306
  export async function copyTradeCreate(agent, params) {
299
- return restQuery(agent, "POST", "/copy-trade/rules", params);
307
+ return restQuery(agent, "POST", "/copytrade/subscriptions", params);
300
308
  }
301
309
  export async function copyTradeGet(agent, params) {
302
- return restQuery(agent, "GET", `/copy-trade/rules/${encodeURIComponent(params.rule_id)}`);
310
+ return restQuery(agent, "GET", `/copytrade/subscriptions/${encodeURIComponent(params.rule_id)}`);
303
311
  }
304
312
  export async function copyTradeUpdate(agent, params) {
305
- return restQuery(agent, "PATCH", `/copy-trade/rules/${encodeURIComponent(params.rule_id)}`, params.updates);
313
+ return restQuery(agent, "PATCH", `/copytrade/subscriptions/${encodeURIComponent(params.rule_id)}`, params.updates);
306
314
  }
307
315
  export async function copyTradeDelete(agent, params) {
308
- return restQuery(agent, "DELETE", `/copy-trade/rules/${encodeURIComponent(params.rule_id)}`);
316
+ return restQuery(agent, "DELETE", `/copytrade/subscriptions/${encodeURIComponent(params.rule_id)}`);
309
317
  }
310
318
  // ── Coordination Alerts (PRO/ULTRA, v1.1) ──
311
319
  export async function coordinationAlertsList(agent) {
@@ -378,7 +386,7 @@ export async function copyTradeSignals(agent, params = {}) {
378
386
  qs.set(k, String(v));
379
387
  }
380
388
  const query = qs.toString() ? `?${qs.toString()}` : "";
381
- return restQuery(agent, "GET", `/copy-trade/signals${query}`);
389
+ return restQuery(agent, "GET", `/copytrade/signals${query}`);
382
390
  }
383
391
  // ── Price Alerts (PRO/ULTRA, v1.9) ──
384
392
  export async function priceAlertsList(agent) {
package/package.json CHANGED
@@ -1,54 +1,54 @@
1
- {
2
- "name": "solana-agent-kit-plugin-madeonsol",
3
- "version": "1.12.0",
4
- "description": "Solana Agent Kit plugin for MadeOnSol — KOL intelligence and deployer analytics via x402 micropayments",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
- "files": [
9
- "dist",
10
- "README.md"
11
- ],
12
- "scripts": {
13
- "build": "tsc",
14
- "preflight": "bash ../../scripts/preflight-publish.sh",
15
- "prepublishOnly": "npm run preflight && npm run build"
16
- },
17
- "keywords": [
18
- "solana",
19
- "agent-kit",
20
- "solana-agent-kit",
21
- "sendaifun",
22
- "plugin",
23
- "ai-agent",
24
- "x402",
25
- "kol",
26
- "kol-tracker",
27
- "trading",
28
- "memecoin",
29
- "memecoin-tracker",
30
- "pumpfun",
31
- "deployer-hunter",
32
- "alpha",
33
- "alpha-bot",
34
- "smart-money",
35
- "copy-trading",
36
- "madeonsol"
37
- ],
38
- "license": "MIT",
39
- "repository": {
40
- "type": "git",
41
- "url": "https://github.com/LamboPoewert/solana-agent-kit-plugin-madeonsol"
42
- },
43
- "peerDependencies": {
44
- "solana-agent-kit": ">=2.0.0",
45
- "@x402/fetch": ">=0.1.0",
46
- "@x402/core": ">=0.1.0",
47
- "@x402/svm": ">=0.1.0",
48
- "@solana/kit": ">=2.0.0",
49
- "@scure/base": ">=1.0.0"
50
- },
51
- "dependencies": {
52
- "zod": "^3.24.0"
53
- }
54
- }
1
+ {
2
+ "name": "solana-agent-kit-plugin-madeonsol",
3
+ "version": "1.13.0",
4
+ "description": "Solana Agent Kit plugin for MadeOnSol — KOL intelligence and deployer analytics via x402 micropayments",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "files": [
9
+ "dist",
10
+ "README.md"
11
+ ],
12
+ "scripts": {
13
+ "build": "tsc",
14
+ "preflight": "bash ../../scripts/preflight-publish.sh",
15
+ "prepublishOnly": "npm run preflight && npm run build"
16
+ },
17
+ "keywords": [
18
+ "solana",
19
+ "agent-kit",
20
+ "solana-agent-kit",
21
+ "sendaifun",
22
+ "plugin",
23
+ "ai-agent",
24
+ "x402",
25
+ "kol",
26
+ "kol-tracker",
27
+ "trading",
28
+ "memecoin",
29
+ "memecoin-tracker",
30
+ "pumpfun",
31
+ "deployer-hunter",
32
+ "alpha",
33
+ "alpha-bot",
34
+ "smart-money",
35
+ "copy-trading",
36
+ "madeonsol"
37
+ ],
38
+ "license": "MIT",
39
+ "repository": {
40
+ "type": "git",
41
+ "url": "https://github.com/LamboPoewert/solana-agent-kit-plugin-madeonsol"
42
+ },
43
+ "peerDependencies": {
44
+ "solana-agent-kit": ">=2.0.0",
45
+ "@x402/fetch": ">=0.1.0",
46
+ "@x402/core": ">=0.1.0",
47
+ "@x402/svm": ">=0.1.0",
48
+ "@solana/kit": ">=2.0.0",
49
+ "@scure/base": ">=1.0.0"
50
+ },
51
+ "dependencies": {
52
+ "zod": "^3.24.0"
53
+ }
54
+ }