@madeonsol/plugin-madeonsol 0.3.3 → 0.4.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
@@ -22,8 +22,8 @@ Gives your ElizaOS agent access to MadeOnSol's Solana intelligence API.
22
22
  |--------|----------|
23
23
  | `GET_KOL_FEED` | Real-time KOL trade feed (1,000+ wallets) |
24
24
  | `GET_KOL_COORDINATION` | Multi-KOL convergence signals |
25
- | `GET_KOL_LEADERBOARD` | KOL PnL/win-rate rankings |
26
- | `GET_DEPLOYER_ALERTS` | Pump.fun elite deployer alerts |
25
+ | `GET_KOL_LEADERBOARD` | KOL PnL/win-rate rankings (180 days of history, periods: today/7d/30d/90d/180d) |
26
+ | `GET_DEPLOYER_ALERTS` | Pump.fun deployer alerts. PRO/ULTRA: filter by deployer tier (elite/good/moderate/rising/cold). |
27
27
  | `GET_TOKEN_INFO` | Token intelligence — price, market cap, deployer, KOL activity |
28
28
 
29
29
  ## Install
@@ -21,7 +21,12 @@ export const deployerAlertsAction = {
21
21
  const client = getClient(runtime);
22
22
  const text = (message.content?.text || "").toLowerCase();
23
23
  const limit = text.match(/\b(\d+)\s*(alert|token|launch)/)?.[1] || "10";
24
- const result = await client.getDeployerAlerts({ limit });
24
+ // Best-effort tier inference from the user's prompt — only sent to the API
25
+ // when the user explicitly mentioned a tier. The tier filter requires
26
+ // PRO/ULTRA on the caller's API key.
27
+ const tierMatch = text.match(/\b(elite|good|moderate|rising|cold)\b/);
28
+ const tier = tierMatch?.[1];
29
+ const result = await client.getDeployerAlerts(tier ? { limit, tier } : { limit });
25
30
  if (result.error) {
26
31
  callback?.({ text: result.status === 402
27
32
  ? "Authentication required. Set MADEONSOL_API_KEY (free at madeonsol.com/developer), RAPIDAPI_KEY, or SVM_PRIVATE_KEY."
@@ -5,7 +5,7 @@ function getClient(runtime) {
5
5
  }
6
6
  export const kolFeedAction = {
7
7
  name: "GET_KOL_FEED",
8
- description: "Get the real-time Solana KOL trade feed from MadeOnSol. Shows latest buys and sells from 946 tracked KOL wallets with deployer enrichment.",
8
+ description: "Get the real-time Solana KOL trade feed from MadeOnSol. Shows latest buys and sells from 1,000+ tracked KOL wallets with deployer enrichment.",
9
9
  similes: [
10
10
  "kol trades",
11
11
  "what are kols buying",
package/dist/client.d.ts CHANGED
@@ -48,10 +48,15 @@ export declare class MadeOnSolClient {
48
48
  error?: string;
49
49
  status: number;
50
50
  }>;
51
+ /**
52
+ * Get deployer alerts. The `tier` filter (elite/good/moderate/rising/cold)
53
+ * is PRO/ULTRA only — BASIC callers passing it receive HTTP 403.
54
+ */
51
55
  getDeployerAlerts(params?: {
52
56
  since?: string;
53
57
  limit?: string;
54
58
  offset?: string;
59
+ tier?: string;
55
60
  }): Promise<{
56
61
  data?: unknown;
57
62
  error?: string;
package/dist/client.js CHANGED
@@ -62,6 +62,10 @@ export class MadeOnSolClient {
62
62
  getKolLeaderboard(params) {
63
63
  return this.query("/api/x402/kol/leaderboard", params);
64
64
  }
65
+ /**
66
+ * Get deployer alerts. The `tier` filter (elite/good/moderate/rising/cold)
67
+ * is PRO/ULTRA only — BASIC callers passing it receive HTTP 403.
68
+ */
65
69
  getDeployerAlerts(params) {
66
70
  return this.query("/api/x402/deployer-hunter/alerts", params);
67
71
  }
package/dist/index.js CHANGED
@@ -7,7 +7,7 @@ import { MadeOnSolClient } from "./client.js";
7
7
  export const MADEONSOL_CLIENT_KEY = "madeonsol:client";
8
8
  export const madeOnSolPlugin = {
9
9
  name: "madeonsol",
10
- description: "Query Solana KOL trading intelligence and deployer analytics from MadeOnSol. Tracks 946 KOL wallets and 4000+ Pump.fun deployers.",
10
+ description: "Query Solana KOL trading intelligence and deployer analytics from MadeOnSol. Tracks 1,000+ KOL wallets and 4000+ Pump.fun deployers.",
11
11
  actions: [
12
12
  kolFeedAction,
13
13
  kolCoordinationAction,
package/package.json CHANGED
@@ -1,49 +1,49 @@
1
- {
2
- "name": "@madeonsol/plugin-madeonsol",
3
- "version": "0.3.3",
4
- "description": "ElizaOS plugin for MadeOnSol Solana KOL intelligence and deployer analytics via x402 micropayments",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
- "scripts": {
9
- "build": "tsc",
10
- "dev": "tsc --watch"
11
- },
12
- "peerDependencies": {
13
- "@elizaos/core": ">=1.0.0",
14
- "@scure/base": ">=1.0.0",
15
- "@solana/kit": ">=2.0.0",
16
- "@x402/core": ">=0.1.0",
17
- "@x402/fetch": ">=0.1.0",
18
- "@x402/svm": ">=0.1.0"
19
- },
20
- "agentConfig": {
21
- "pluginType": "elizaos:plugin:1.0.0",
22
- "pluginParameters": {
23
- "MADEONSOL_API_URL": {
24
- "type": "string",
25
- "description": "MadeOnSol API base URL",
26
- "required": false,
27
- "default": "https://madeonsol.com"
28
- },
29
- "SVM_PRIVATE_KEY": {
30
- "type": "string",
31
- "description": "Solana private key (base58) for automatic x402 USDC payments",
32
- "required": true,
33
- "sensitive": true
34
- }
35
- }
36
- },
37
- "keywords": [
38
- "elizaos",
39
- "plugin",
40
- "solana",
41
- "kol",
42
- "x402",
43
- "madeonsol"
44
- ],
45
- "license": "MIT",
46
- "devDependencies": {
47
- "@elizaos/core": "^2.0.0-alpha.77"
48
- }
49
- }
1
+ {
2
+ "name": "@madeonsol/plugin-madeonsol",
3
+ "version": "0.4.0",
4
+ "description": "ElizaOS plugin for MadeOnSol \u00e2\u20ac\u201d Solana KOL intelligence and deployer analytics via x402 micropayments",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "scripts": {
9
+ "build": "tsc",
10
+ "dev": "tsc --watch"
11
+ },
12
+ "peerDependencies": {
13
+ "@elizaos/core": ">=1.0.0",
14
+ "@scure/base": ">=1.0.0",
15
+ "@solana/kit": ">=2.0.0",
16
+ "@x402/core": ">=0.1.0",
17
+ "@x402/fetch": ">=0.1.0",
18
+ "@x402/svm": ">=0.1.0"
19
+ },
20
+ "agentConfig": {
21
+ "pluginType": "elizaos:plugin:1.0.0",
22
+ "pluginParameters": {
23
+ "MADEONSOL_API_URL": {
24
+ "type": "string",
25
+ "description": "MadeOnSol API base URL",
26
+ "required": false,
27
+ "default": "https://madeonsol.com"
28
+ },
29
+ "SVM_PRIVATE_KEY": {
30
+ "type": "string",
31
+ "description": "Solana private key (base58) for automatic x402 USDC payments",
32
+ "required": true,
33
+ "sensitive": true
34
+ }
35
+ }
36
+ },
37
+ "keywords": [
38
+ "elizaos",
39
+ "plugin",
40
+ "solana",
41
+ "kol",
42
+ "x402",
43
+ "madeonsol"
44
+ ],
45
+ "license": "MIT",
46
+ "devDependencies": {
47
+ "@elizaos/core": "^2.0.0-alpha.77"
48
+ }
49
+ }
@@ -33,8 +33,13 @@ export const deployerAlertsAction: Action = {
33
33
  const client = getClient(runtime);
34
34
  const text = (message.content?.text || "").toLowerCase();
35
35
  const limit = text.match(/\b(\d+)\s*(alert|token|launch)/)?.[1] || "10";
36
+ // Best-effort tier inference from the user's prompt — only sent to the API
37
+ // when the user explicitly mentioned a tier. The tier filter requires
38
+ // PRO/ULTRA on the caller's API key.
39
+ const tierMatch = text.match(/\b(elite|good|moderate|rising|cold)\b/);
40
+ const tier = tierMatch?.[1];
36
41
 
37
- const result = await client.getDeployerAlerts({ limit });
42
+ const result = await client.getDeployerAlerts(tier ? { limit, tier } : { limit });
38
43
 
39
44
  if (result.error) {
40
45
  callback?.({ text: result.status === 402
package/src/client.ts CHANGED
@@ -83,7 +83,11 @@ export class MadeOnSolClient {
83
83
  return this.query("/api/x402/kol/leaderboard", params);
84
84
  }
85
85
 
86
- getDeployerAlerts(params?: { since?: string; limit?: string; offset?: string }) {
86
+ /**
87
+ * Get deployer alerts. The `tier` filter (elite/good/moderate/rising/cold)
88
+ * is PRO/ULTRA only — BASIC callers passing it receive HTTP 403.
89
+ */
90
+ getDeployerAlerts(params?: { since?: string; limit?: string; offset?: string; tier?: string }) {
87
91
  return this.query("/api/x402/deployer-hunter/alerts", params);
88
92
  }
89
93