solana-agent-kit-plugin-madeonsol 1.11.0 → 1.12.1

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.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
+ >
14
16
  > **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.
15
17
 
16
18
  > **New in 1.10.0** — `tokensList()` gains three new filter params: `min_liq_mc_ratio`, `max_liq_mc_ratio`, and `deployer_tier`. Response items now include `liquidity_to_mc_ratio` and `deployer_tier`. KOL leaderboard entries now include `median_hold_minutes_30d` and `percentile_early_entry_30d`. Token endpoints now return `liquidity_to_mc_ratio`, `launch_cohort_sol`, and `launch_cohort_size`.
@@ -125,6 +127,7 @@ await agent.methods.alphaLinked(agent, { wallet: "WALLET" }); // ULTRA
125
127
  await agent.methods.tokenCapTable(agent, { mint: "MINT" }); // PRO=10, ULTRA=20 first non-deployer buyers
126
128
  await agent.methods.tokenBuyerQuality(agent, { mint: "MINT" }); // 0–100 buyer-quality score (5-min cached)
127
129
  await agent.methods.tokenRisk(agent, { mint: "MINT" }); // PRO+ 0–100 rug-risk/safety score + band + factors
130
+ await agent.methods.tokenCandles(agent, { mint: "MINT", tf: "1h" }); // PRO+ OHLCV candles (1m–1d); ULTRA=+net flow, liquidity, full history
128
131
  ```
129
132
 
130
133
  ### Copy-Trade Rules (PRO/ULTRA)
@@ -134,9 +137,12 @@ Server-side rules that fire signals when a watched source wallet trades. Deliver
134
137
  ```ts
135
138
  await agent.methods.copyTradeList(agent);
136
139
  await agent.methods.copyTradeCreate(agent, {
137
- name: "Track Whale",
138
- source_wallet: "WALLET",
139
- delivery: "webhook",
140
+ name: "Track Whales",
141
+ source_wallets: ["WALLET_A", "WALLET_B"], // 1-50 wallets
142
+ sizing_mode: "fixed",
143
+ sizing_amount: 0.5, // required
144
+ only_action: "buy",
145
+ delivery_mode: "webhook",
140
146
  webhook_url: "https://you.com/hook",
141
147
  });
142
148
  await agent.methods.copyTradeSignals(agent, { limit: 50 }); // up to 7 days
@@ -0,0 +1,50 @@
1
+ import { z } from "zod";
2
+ export declare const tokenCandlesAction: {
3
+ name: string;
4
+ similes: string[];
5
+ description: string;
6
+ examples: {
7
+ input: {
8
+ mint: string;
9
+ tf: string;
10
+ };
11
+ output: {
12
+ status: string;
13
+ };
14
+ explanation: string;
15
+ }[][];
16
+ schema: z.ZodObject<{
17
+ mint: z.ZodString;
18
+ tf: z.ZodOptional<z.ZodEnum<["1m", "5m", "15m", "1h", "4h", "1d"]>>;
19
+ limit: z.ZodOptional<z.ZodNumber>;
20
+ from: z.ZodOptional<z.ZodString>;
21
+ to: z.ZodOptional<z.ZodString>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ mint: string;
24
+ limit?: number | undefined;
25
+ tf?: "1h" | "5m" | "15m" | "4h" | "1m" | "1d" | undefined;
26
+ from?: string | undefined;
27
+ to?: string | undefined;
28
+ }, {
29
+ mint: string;
30
+ limit?: number | undefined;
31
+ tf?: "1h" | "5m" | "15m" | "4h" | "1m" | "1d" | undefined;
32
+ from?: string | undefined;
33
+ to?: string | undefined;
34
+ }>;
35
+ handler: (agent: unknown, input: {
36
+ mint: string;
37
+ tf?: string;
38
+ limit?: number;
39
+ from?: string;
40
+ to?: string;
41
+ }) => Promise<{
42
+ status: string;
43
+ result: any;
44
+ message?: undefined;
45
+ } | {
46
+ status: string;
47
+ message: string;
48
+ result?: undefined;
49
+ }>;
50
+ };
@@ -0,0 +1,26 @@
1
+ import { z } from "zod";
2
+ import { tokenCandles } from "../tools/index.js";
3
+ export const tokenCandlesAction = {
4
+ name: "MADEONSOL_TOKEN_CANDLES_ACTION",
5
+ similes: ["token candles", "ohlc", "ohlcv", "price chart", "candlestick", "price history"],
6
+ description: "Get historical OHLCV price candles for a Solana token (1m/5m/15m/1h/4h/1d). 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, and full history. PRO/ULTRA only — BASIC receives HTTP 403.",
7
+ examples: [
8
+ [{ input: { mint: "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU", tf: "1h" }, output: { status: "success" }, explanation: "Get the 1h OHLCV candle history for this token." }],
9
+ ],
10
+ schema: z.object({
11
+ mint: z.string().describe("Token mint address (base58)"),
12
+ tf: z.enum(["1m", "5m", "15m", "1h", "4h", "1d"]).optional().describe("Candle timeframe (default 1h)"),
13
+ limit: z.number().min(1).max(1000).optional().describe("Number of candles to return, 1–1000 (default 200)"),
14
+ from: z.string().optional().describe("Start of range, ISO8601 timestamp"),
15
+ to: z.string().optional().describe("End of range, ISO8601 timestamp"),
16
+ }),
17
+ handler: async (agent, input) => {
18
+ try {
19
+ const data = await tokenCandles(agent, input);
20
+ return { status: "success", result: data };
21
+ }
22
+ catch (err) {
23
+ return { status: "error", message: err.message };
24
+ }
25
+ },
26
+ };
package/dist/index.d.ts CHANGED
@@ -12,7 +12,8 @@ import { kolFirstTouchesAction } from "./actions/kolFirstTouches.js";
12
12
  import { meAction } from "./actions/me.js";
13
13
  import { tokensListAction } from "./actions/tokensList.js";
14
14
  import { tokenRiskAction } from "./actions/tokenRisk.js";
15
- 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, 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";
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
17
  import { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction } from "./actions/wallet.js";
17
18
  declare const MadeOnSolPlugin: {
18
19
  name: string;
@@ -42,6 +43,7 @@ declare const MadeOnSolPlugin: {
42
43
  tokenCapTable: typeof tokenCapTable;
43
44
  tokenBuyerQuality: typeof tokenBuyerQuality;
44
45
  tokenRisk: typeof tokenRisk;
46
+ tokenCandles: typeof tokenCandles;
45
47
  copyTradeList: typeof copyTradeList;
46
48
  copyTradeCreate: typeof copyTradeCreate;
47
49
  copyTradeGet: typeof copyTradeGet;
@@ -806,6 +808,54 @@ declare const MadeOnSolPlugin: {
806
808
  message: string;
807
809
  result?: undefined;
808
810
  }>;
811
+ } | {
812
+ name: string;
813
+ similes: string[];
814
+ description: string;
815
+ examples: {
816
+ input: {
817
+ mint: string;
818
+ tf: string;
819
+ };
820
+ output: {
821
+ status: string;
822
+ };
823
+ explanation: string;
824
+ }[][];
825
+ schema: import("zod").ZodObject<{
826
+ mint: import("zod").ZodString;
827
+ tf: import("zod").ZodOptional<import("zod").ZodEnum<["1m", "5m", "15m", "1h", "4h", "1d"]>>;
828
+ limit: import("zod").ZodOptional<import("zod").ZodNumber>;
829
+ from: import("zod").ZodOptional<import("zod").ZodString>;
830
+ to: import("zod").ZodOptional<import("zod").ZodString>;
831
+ }, "strip", import("zod").ZodTypeAny, {
832
+ mint: string;
833
+ limit?: number | undefined;
834
+ tf?: "1h" | "5m" | "15m" | "4h" | "1m" | "1d" | undefined;
835
+ from?: string | undefined;
836
+ to?: string | undefined;
837
+ }, {
838
+ mint: string;
839
+ limit?: number | undefined;
840
+ tf?: "1h" | "5m" | "15m" | "4h" | "1m" | "1d" | undefined;
841
+ from?: string | undefined;
842
+ to?: string | undefined;
843
+ }>;
844
+ handler: (agent: unknown, input: {
845
+ mint: string;
846
+ tf?: string;
847
+ limit?: number;
848
+ from?: string;
849
+ to?: string;
850
+ }) => Promise<{
851
+ status: string;
852
+ result: any;
853
+ message?: undefined;
854
+ } | {
855
+ status: string;
856
+ message: string;
857
+ result?: undefined;
858
+ }>;
809
859
  } | {
810
860
  name: string;
811
861
  similes: string[];
@@ -898,8 +948,8 @@ declare const MadeOnSolPlugin: {
898
948
  initialize(_agent: unknown): void;
899
949
  };
900
950
  export default MadeOnSolPlugin;
901
- 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, 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, };
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, };
902
952
  export { kolFeedAction, kolCoordinationAction, kolLeaderboardAction, deployerAlertsAction, kolPnlAction, kolTrendingTokensAction, kolTokenEntryOrderAction, kolCompareAction, kolAlertsRecentAction, kolFirstTouchesAction };
903
953
  export { walletTrackerWatchlistAction, walletTrackerAddAction, walletTrackerRemoveAction, walletTrackerTradesAction, walletTrackerSummaryAction };
904
954
  export { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction };
905
- export { meAction, tokensListAction, tokenRiskAction };
955
+ export { meAction, tokensListAction, tokenRiskAction, tokenCandlesAction };
package/dist/index.js CHANGED
@@ -12,7 +12,8 @@ import { kolFirstTouchesAction } from "./actions/kolFirstTouches.js";
12
12
  import { meAction } from "./actions/me.js";
13
13
  import { tokensListAction } from "./actions/tokensList.js";
14
14
  import { tokenRiskAction } from "./actions/tokenRisk.js";
15
- 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, 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";
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
17
  import { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction } from "./actions/wallet.js";
17
18
  const MadeOnSolPlugin = {
18
19
  name: "madeonsol",
@@ -42,6 +43,7 @@ const MadeOnSolPlugin = {
42
43
  tokenCapTable,
43
44
  tokenBuyerQuality,
44
45
  tokenRisk,
46
+ tokenCandles,
45
47
  copyTradeList,
46
48
  copyTradeCreate,
47
49
  copyTradeGet,
@@ -95,6 +97,7 @@ const MadeOnSolPlugin = {
95
97
  meAction,
96
98
  tokensListAction,
97
99
  tokenRiskAction,
100
+ tokenCandlesAction,
98
101
  walletStatsAction,
99
102
  walletPnlAction,
100
103
  walletPositionsAction,
@@ -105,8 +108,8 @@ const MadeOnSolPlugin = {
105
108
  },
106
109
  };
107
110
  export default MadeOnSolPlugin;
108
- 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, 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, };
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, };
109
112
  export { kolFeedAction, kolCoordinationAction, kolLeaderboardAction, deployerAlertsAction, kolPnlAction, kolTrendingTokensAction, kolTokenEntryOrderAction, kolCompareAction, kolAlertsRecentAction, kolFirstTouchesAction };
110
113
  export { walletTrackerWatchlistAction, walletTrackerAddAction, walletTrackerRemoveAction, walletTrackerTradesAction, walletTrackerSummaryAction };
111
114
  export { walletStatsAction, walletPnlAction, walletPositionsAction, walletTradesAction };
112
- export { meAction, tokensListAction, tokenRiskAction };
115
+ export { meAction, tokensListAction, tokenRiskAction, tokenCandlesAction };
@@ -171,6 +171,14 @@ export declare function tokenBuyerQuality(agent: Agent, params: {
171
171
  export declare function tokenRisk(agent: Agent, params: {
172
172
  mint: string;
173
173
  }): Promise<any>;
174
+ /** Historical OHLCV candles (1m/5m/15m/1h/4h/1d) aggregated from the trade firehose. PRO=OHLCV 30d; ULTRA=+net flow, liquidity delta, full history. PRO/ULTRA only. */
175
+ export declare function tokenCandles(agent: Agent, params: {
176
+ mint: string;
177
+ tf?: string;
178
+ limit?: number;
179
+ from?: string;
180
+ to?: string;
181
+ }): Promise<any>;
174
182
  /** Bulk buyer-quality scoring for up to 50 mints. Shares the 5-min LRU cache with the single-mint endpoint. */
175
183
  export declare function tokenBuyerQualityBatch(agent: Agent, params: {
176
184
  mints: string[];
@@ -185,12 +193,18 @@ export declare function tokenBatch(agent: Agent, params: {
185
193
  }): Promise<any>;
186
194
  export declare function copyTradeList(agent: Agent): Promise<any>;
187
195
  export declare function copyTradeCreate(agent: Agent, params: {
188
- name: string;
189
- source_wallet: string;
190
- is_active?: boolean;
196
+ /** 1-50 wallets to copy trades from. */
197
+ source_wallets: string[];
198
+ /** Required. Fixed SOL amount, proportional multiplier, or percent of source — per sizing_mode. */
199
+ sizing_amount: number;
200
+ name?: string;
201
+ min_trade_sol?: number;
202
+ only_action?: "buy" | "sell" | "both";
203
+ sizing_mode?: "fixed" | "proportional" | "percent_source";
204
+ delivery_mode?: "webhook" | "websocket" | "both";
191
205
  webhook_url?: string;
192
- delivery?: "webhook" | "websocket" | "both";
193
- filters?: Record<string, unknown>;
206
+ min_mc_usd?: number | null;
207
+ max_mc_usd?: number | null;
194
208
  }): Promise<any>;
195
209
  export declare function copyTradeGet(agent: Agent, params: {
196
210
  rule_id: string;
@@ -264,6 +264,20 @@ export async function tokenBuyerQuality(agent, params) {
264
264
  export async function tokenRisk(agent, params) {
265
265
  return restQuery(agent, "GET", `/tokens/${encodeURIComponent(params.mint)}/risk`);
266
266
  }
267
+ /** Historical OHLCV candles (1m/5m/15m/1h/4h/1d) aggregated from the trade firehose. PRO=OHLCV 30d; ULTRA=+net flow, liquidity delta, full history. PRO/ULTRA only. */
268
+ export async function tokenCandles(agent, params) {
269
+ const qs = new URLSearchParams();
270
+ if (params.tf !== undefined)
271
+ qs.set("tf", params.tf);
272
+ if (params.limit !== undefined)
273
+ qs.set("limit", String(params.limit));
274
+ if (params.from !== undefined)
275
+ qs.set("from", params.from);
276
+ if (params.to !== undefined)
277
+ qs.set("to", params.to);
278
+ const query = qs.toString() ? `?${qs.toString()}` : "";
279
+ return restQuery(agent, "GET", `/tokens/${encodeURIComponent(params.mint)}/candles${query}`);
280
+ }
267
281
  /** Bulk buyer-quality scoring for up to 50 mints. Shares the 5-min LRU cache with the single-mint endpoint. */
268
282
  export async function tokenBuyerQualityBatch(agent, params) {
269
283
  return restQuery(agent, "POST", "/tokens/batch/buyer-quality", { mints: params.mints });
@@ -279,19 +293,19 @@ export async function tokenBatch(agent, params) {
279
293
  }
280
294
  // ── Copy-Trade Rules (PRO/ULTRA) ──
281
295
  export async function copyTradeList(agent) {
282
- return restQuery(agent, "GET", "/copy-trade/rules");
296
+ return restQuery(agent, "GET", "/copytrade/subscriptions");
283
297
  }
284
298
  export async function copyTradeCreate(agent, params) {
285
- return restQuery(agent, "POST", "/copy-trade/rules", params);
299
+ return restQuery(agent, "POST", "/copytrade/subscriptions", params);
286
300
  }
287
301
  export async function copyTradeGet(agent, params) {
288
- return restQuery(agent, "GET", `/copy-trade/rules/${encodeURIComponent(params.rule_id)}`);
302
+ return restQuery(agent, "GET", `/copytrade/subscriptions/${encodeURIComponent(params.rule_id)}`);
289
303
  }
290
304
  export async function copyTradeUpdate(agent, params) {
291
- return restQuery(agent, "PATCH", `/copy-trade/rules/${encodeURIComponent(params.rule_id)}`, params.updates);
305
+ return restQuery(agent, "PATCH", `/copytrade/subscriptions/${encodeURIComponent(params.rule_id)}`, params.updates);
292
306
  }
293
307
  export async function copyTradeDelete(agent, params) {
294
- return restQuery(agent, "DELETE", `/copy-trade/rules/${encodeURIComponent(params.rule_id)}`);
308
+ return restQuery(agent, "DELETE", `/copytrade/subscriptions/${encodeURIComponent(params.rule_id)}`);
295
309
  }
296
310
  // ── Coordination Alerts (PRO/ULTRA, v1.1) ──
297
311
  export async function coordinationAlertsList(agent) {
@@ -364,7 +378,7 @@ export async function copyTradeSignals(agent, params = {}) {
364
378
  qs.set(k, String(v));
365
379
  }
366
380
  const query = qs.toString() ? `?${qs.toString()}` : "";
367
- return restQuery(agent, "GET", `/copy-trade/signals${query}`);
381
+ return restQuery(agent, "GET", `/copytrade/signals${query}`);
368
382
  }
369
383
  // ── Price Alerts (PRO/ULTRA, v1.9) ──
370
384
  export async function priceAlertsList(agent) {
package/package.json CHANGED
@@ -1,54 +1,54 @@
1
- {
2
- "name": "solana-agent-kit-plugin-madeonsol",
3
- "version": "1.11.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.12.1",
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
+ }