@nookplot/cli 0.6.53 → 0.6.55
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/commands/discover.js +0 -306
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/guilds.js +0 -36
- package/dist/commands/guilds.js.map +1 -1
- package/dist/commands/inbox.js +0 -83
- package/dist/commands/inbox.js.map +1 -1
- package/dist/commands/listen.js +58 -29
- package/dist/commands/listen.js.map +1 -1
- package/dist/commands/marketplace.js +0 -32
- package/dist/commands/marketplace.js.map +1 -1
- package/dist/commands/rewards.d.ts +2 -3
- package/dist/commands/rewards.js +24 -186
- package/dist/commands/rewards.js.map +1 -1
- package/dist/utils/agentLoop.js +60 -28
- package/dist/utils/agentLoop.js.map +1 -1
- package/package.json +1 -1
- package/dist/commands/cliques.d.ts +0 -21
- package/dist/commands/cliques.js +0 -408
- package/dist/commands/cliques.js.map +0 -1
- package/dist/utils/__tests__/updateCheck.test.d.ts +0 -1
- package/dist/utils/__tests__/updateCheck.test.js +0 -40
- package/dist/utils/__tests__/updateCheck.test.js.map +0 -1
package/dist/commands/rewards.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `nookplot rewards` — Check weekly reward earnings and
|
|
2
|
+
* `nookplot rewards` — Check weekly reward earnings and epoch info.
|
|
3
3
|
*
|
|
4
4
|
* Usage:
|
|
5
|
-
* nookplot rewards — Show your weekly reward earnings
|
|
6
|
-
* nookplot rewards claim — Claim accrued Merkle NOOK reward on-chain
|
|
5
|
+
* nookplot rewards — Show your weekly reward earnings
|
|
7
6
|
* nookplot rewards info — Current epoch info (time remaining, pool size)
|
|
8
7
|
* nookplot rewards leaderboard — Weekly reward leaderboard
|
|
9
8
|
*
|
|
@@ -11,77 +10,13 @@
|
|
|
11
10
|
*/
|
|
12
11
|
import chalk from "chalk";
|
|
13
12
|
import ora from "ora";
|
|
14
|
-
import { ethers } from "ethers";
|
|
15
13
|
import { loadConfig, validateConfig } from "../config.js";
|
|
16
14
|
import { gatewayRequest, isGatewayError } from "../utils/http.js";
|
|
17
|
-
// ── Helpers ──────────────────────────────────────────────────
|
|
18
|
-
function requireWallet(config) {
|
|
19
|
-
if (!config.privateKey) {
|
|
20
|
-
console.error(chalk.red(" \u2717 Private key required. Set NOOKPLOT_AGENT_PRIVATE_KEY."));
|
|
21
|
-
process.exit(1);
|
|
22
|
-
}
|
|
23
|
-
try {
|
|
24
|
-
return new ethers.Wallet(config.privateKey);
|
|
25
|
-
}
|
|
26
|
-
catch {
|
|
27
|
-
console.error(chalk.red(" \u2717 Invalid private key."));
|
|
28
|
-
process.exit(1);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
async function prepareSignRelay(config, wallet, preparePath, body, spinner, actionLabel) {
|
|
32
|
-
const attempt = async () => {
|
|
33
|
-
// 1. Prepare
|
|
34
|
-
const prepareResult = await gatewayRequest(config.gateway, "POST", preparePath, { apiKey: config.apiKey, body });
|
|
35
|
-
if (isGatewayError(prepareResult)) {
|
|
36
|
-
throw new Error(prepareResult.error);
|
|
37
|
-
}
|
|
38
|
-
// 2. Sign
|
|
39
|
-
const { forwardRequest, domain, types } = prepareResult.data;
|
|
40
|
-
const sig = await wallet.signTypedData(domain, types, forwardRequest);
|
|
41
|
-
// 3. Relay
|
|
42
|
-
const relayResult = await gatewayRequest(config.gateway, "POST", "/v1/relay", { apiKey: config.apiKey, body: { ...forwardRequest, signature: sig } });
|
|
43
|
-
if (isGatewayError(relayResult)) {
|
|
44
|
-
throw new Error(relayResult.error);
|
|
45
|
-
}
|
|
46
|
-
return relayResult.data;
|
|
47
|
-
};
|
|
48
|
-
try {
|
|
49
|
-
return await attempt();
|
|
50
|
-
}
|
|
51
|
-
catch (err) {
|
|
52
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
53
|
-
if (message.includes("signature verification failed") || message.includes("nonce")) {
|
|
54
|
-
spinner.text = `Nonce conflict on ${actionLabel}, retrying\u2026`;
|
|
55
|
-
return await attempt();
|
|
56
|
-
}
|
|
57
|
-
throw err;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Format a raw 18-decimal token amount into a human-readable string.
|
|
62
|
-
* e.g. "173678874000000000000000" → "173,678.874"
|
|
63
|
-
*/
|
|
64
|
-
function formatTokenAmount(raw) {
|
|
65
|
-
try {
|
|
66
|
-
const formatted = ethers.formatEther(raw);
|
|
67
|
-
const [whole, decimals] = formatted.split(".");
|
|
68
|
-
const wholeFormatted = Number(whole).toLocaleString("en-US");
|
|
69
|
-
if (!decimals || decimals === "0")
|
|
70
|
-
return wholeFormatted;
|
|
71
|
-
// Trim trailing zeros, keep up to 4 decimal places
|
|
72
|
-
const trimmed = decimals.slice(0, 4).replace(/0+$/, "");
|
|
73
|
-
return trimmed ? `${wholeFormatted}.${trimmed}` : wholeFormatted;
|
|
74
|
-
}
|
|
75
|
-
catch {
|
|
76
|
-
return raw;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
// ── Command Registration ─────────────────────────────────────
|
|
80
15
|
export function registerRewardsCommand(program) {
|
|
81
16
|
const cmd = program
|
|
82
17
|
.command("rewards")
|
|
83
|
-
.description("Check weekly reward earnings
|
|
84
|
-
// Default: show my rewards
|
|
18
|
+
.description("Check weekly reward earnings and epoch info");
|
|
19
|
+
// Default: show my rewards
|
|
85
20
|
cmd.action(async () => {
|
|
86
21
|
try {
|
|
87
22
|
await runMyRewards(program.opts());
|
|
@@ -92,22 +27,6 @@ export function registerRewardsCommand(program) {
|
|
|
92
27
|
process.exit(1);
|
|
93
28
|
}
|
|
94
29
|
});
|
|
95
|
-
// Subcommand: claim on-chain NOOK
|
|
96
|
-
cmd
|
|
97
|
-
.command("claim")
|
|
98
|
-
.description("Claim accrued Merkle NOOK reward on-chain (prepare \u2192 sign \u2192 relay)")
|
|
99
|
-
.option("--pool <pool>", "Reward pool: nook or weth", "nook")
|
|
100
|
-
.option("--json", "Output raw JSON")
|
|
101
|
-
.action(async (opts) => {
|
|
102
|
-
try {
|
|
103
|
-
await runClaim(program.opts(), opts);
|
|
104
|
-
}
|
|
105
|
-
catch (err) {
|
|
106
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
107
|
-
console.error(chalk.red(`\nFailed: ${msg}`));
|
|
108
|
-
process.exit(1);
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
30
|
// Subcommand: epoch info
|
|
112
31
|
cmd
|
|
113
32
|
.command("info")
|
|
@@ -140,7 +59,6 @@ export function registerRewardsCommand(program) {
|
|
|
140
59
|
}
|
|
141
60
|
});
|
|
142
61
|
}
|
|
143
|
-
// ── Subcommand Implementations ───────────────────────────────
|
|
144
62
|
async function runMyRewards(globalOpts) {
|
|
145
63
|
const config = loadConfig({
|
|
146
64
|
configPath: globalOpts.config,
|
|
@@ -150,108 +68,28 @@ async function runMyRewards(globalOpts) {
|
|
|
150
68
|
const errors = validateConfig(config);
|
|
151
69
|
if (errors.length > 0) {
|
|
152
70
|
for (const e of errors)
|
|
153
|
-
console.error(chalk.red(`
|
|
71
|
+
console.error(chalk.red(` ✗ ${e}`));
|
|
154
72
|
process.exit(1);
|
|
155
73
|
}
|
|
156
|
-
const spinner = ora("Loading rewards...").start();
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
const [weeklyResult, merkleResult] = await Promise.all([
|
|
162
|
-
gatewayRequest(config.gateway, "GET", "/v1/rewards/weekly/me?limit=10", { apiKey: config.apiKey }),
|
|
163
|
-
address
|
|
164
|
-
? gatewayRequest(config.gateway, "GET", `/v1/rewards/merkle/claimable/${address}`, { apiKey: config.apiKey })
|
|
165
|
-
: Promise.resolve(null),
|
|
166
|
-
]);
|
|
167
|
-
spinner.succeed("Rewards");
|
|
168
|
-
// ── On-chain NOOK claimable ──
|
|
169
|
-
const merkle = merkleResult && !isGatewayError(merkleResult) ? merkleResult.data : null;
|
|
170
|
-
const hasNook = merkle?.nook && merkle.nook.cumulativeAmount !== "0";
|
|
171
|
-
const hasWeth = merkle?.weth && merkle.weth.cumulativeAmount !== "0";
|
|
172
|
-
if (hasNook || hasWeth) {
|
|
173
|
-
console.log(chalk.bold("\n On-Chain Claimable:"));
|
|
174
|
-
if (hasNook) {
|
|
175
|
-
const amt = formatTokenAmount(merkle.nook.cumulativeAmount);
|
|
176
|
-
console.log(` NOOK: ${chalk.green.bold(amt)} $NOOK`);
|
|
177
|
-
}
|
|
178
|
-
if (hasWeth) {
|
|
179
|
-
const amt = formatTokenAmount(merkle.weth.cumulativeAmount);
|
|
180
|
-
console.log(` WETH: ${chalk.green.bold(amt)} WETH`);
|
|
181
|
-
}
|
|
182
|
-
console.log(chalk.dim(` Claim with: ${chalk.white("nookplot rewards claim")}`));
|
|
183
|
-
}
|
|
184
|
-
// ── Off-chain weekly credits ──
|
|
185
|
-
if (isGatewayError(weeklyResult)) {
|
|
186
|
-
console.log(chalk.dim("\n Weekly credit epochs: unable to load.\n"));
|
|
187
|
-
}
|
|
188
|
-
else {
|
|
189
|
-
const { rewards } = weeklyResult.data;
|
|
190
|
-
if (rewards.length === 0) {
|
|
191
|
-
if (!hasNook && !hasWeth) {
|
|
192
|
-
console.log(chalk.dim("\n No reward epochs found yet.\n"));
|
|
193
|
-
}
|
|
194
|
-
else {
|
|
195
|
-
console.log("");
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
else {
|
|
199
|
-
console.log(chalk.bold("\n Weekly Credit Rewards:"));
|
|
200
|
-
for (const r of rewards) {
|
|
201
|
-
const status = r.claimed ? chalk.dim("claimed") : chalk.green("claimable");
|
|
202
|
-
const amount = chalk.bold(`${r.rewardDisplay} credits`);
|
|
203
|
-
const tier = chalk.cyan(r.tier);
|
|
204
|
-
console.log(` Epoch ${r.epoch} ${tier} ${amount} (score: ${r.score}) ${status}`);
|
|
205
|
-
}
|
|
206
|
-
console.log("");
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
if (!hasNook && !hasWeth && !isGatewayError(weeklyResult) && weeklyResult.data.rewards.length > 0) {
|
|
210
|
-
console.log("");
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
async function runClaim(globalOpts, cmdOpts) {
|
|
214
|
-
const config = loadConfig({
|
|
215
|
-
configPath: globalOpts.config,
|
|
216
|
-
gatewayOverride: globalOpts.gateway,
|
|
217
|
-
apiKeyOverride: globalOpts.apiKey,
|
|
218
|
-
});
|
|
219
|
-
const errors = validateConfig(config);
|
|
220
|
-
if (errors.length > 0) {
|
|
221
|
-
for (const e of errors)
|
|
222
|
-
console.error(chalk.red(` \u2717 ${e}`));
|
|
223
|
-
process.exit(1);
|
|
224
|
-
}
|
|
225
|
-
const pool = cmdOpts.pool ?? "nook";
|
|
226
|
-
if (pool !== "nook" && pool !== "weth") {
|
|
227
|
-
console.error(chalk.red(` \u2717 Invalid pool "${pool}". Must be "nook" or "weth".`));
|
|
228
|
-
process.exit(1);
|
|
229
|
-
}
|
|
230
|
-
const wallet = requireWallet(config);
|
|
231
|
-
const spinner = ora(`Checking ${pool.toUpperCase()} claimable amount...`).start();
|
|
232
|
-
// Check claimable first
|
|
233
|
-
const claimable = await gatewayRequest(config.gateway, "GET", `/v1/rewards/merkle/claimable/${wallet.address}`, { apiKey: config.apiKey });
|
|
234
|
-
if (isGatewayError(claimable)) {
|
|
235
|
-
spinner.fail("Failed to check claimable amount");
|
|
236
|
-
console.error(chalk.red(` ${claimable.error}`));
|
|
74
|
+
const spinner = ora("Loading weekly rewards...").start();
|
|
75
|
+
const result = await gatewayRequest(config.gateway, "GET", "/v1/rewards/weekly/me?limit=10", { apiKey: config.apiKey });
|
|
76
|
+
if (isGatewayError(result)) {
|
|
77
|
+
spinner.fail("Failed to load rewards");
|
|
78
|
+
console.error(chalk.red(` ${result.error}`));
|
|
237
79
|
process.exit(1);
|
|
238
80
|
}
|
|
239
|
-
const
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
console.log(chalk.dim("
|
|
243
|
-
|
|
244
|
-
}
|
|
245
|
-
const amt = formatTokenAmount(poolData.cumulativeAmount);
|
|
246
|
-
spinner.text = `Claiming ${amt} $${pool.toUpperCase()} on-chain...`;
|
|
247
|
-
// Prepare → Sign → Relay
|
|
248
|
-
const result = await prepareSignRelay(config, wallet, "/v1/prepare/reward/claim", { pool }, spinner, "reward-claim");
|
|
249
|
-
spinner.succeed(`Claimed ${chalk.green.bold(amt)} $${pool.toUpperCase()}`);
|
|
250
|
-
if (cmdOpts.json) {
|
|
251
|
-
console.log(JSON.stringify(result, null, 2));
|
|
81
|
+
const { rewards } = result.data;
|
|
82
|
+
spinner.succeed("Weekly Rewards");
|
|
83
|
+
if (rewards.length === 0) {
|
|
84
|
+
console.log(chalk.dim("\n No reward epochs found yet.\n"));
|
|
85
|
+
return;
|
|
252
86
|
}
|
|
253
|
-
|
|
254
|
-
|
|
87
|
+
console.log("");
|
|
88
|
+
for (const r of rewards) {
|
|
89
|
+
const status = r.claimed ? chalk.dim("claimed") : chalk.green("claimable");
|
|
90
|
+
const amount = chalk.bold(`${r.rewardDisplay} credits`);
|
|
91
|
+
const tier = chalk.cyan(r.tier);
|
|
92
|
+
console.log(` Epoch ${r.epoch} ${tier} ${amount} (score: ${r.score}) ${status}`);
|
|
255
93
|
}
|
|
256
94
|
console.log("");
|
|
257
95
|
}
|
|
@@ -264,7 +102,7 @@ async function runEpochInfo(globalOpts, cmdOpts) {
|
|
|
264
102
|
const errors = validateConfig(config);
|
|
265
103
|
if (errors.length > 0) {
|
|
266
104
|
for (const e of errors)
|
|
267
|
-
console.error(chalk.red(`
|
|
105
|
+
console.error(chalk.red(` ✗ ${e}`));
|
|
268
106
|
process.exit(1);
|
|
269
107
|
}
|
|
270
108
|
const spinner = ora("Loading epoch info...").start();
|
|
@@ -297,7 +135,7 @@ async function runLeaderboard(globalOpts, cmdOpts) {
|
|
|
297
135
|
const errors = validateConfig(config);
|
|
298
136
|
if (errors.length > 0) {
|
|
299
137
|
for (const e of errors)
|
|
300
|
-
console.error(chalk.red(`
|
|
138
|
+
console.error(chalk.red(` ✗ ${e}`));
|
|
301
139
|
process.exit(1);
|
|
302
140
|
}
|
|
303
141
|
const limit = Math.min(Math.max(parseInt(cmdOpts.limit ?? "25", 10) || 25, 1), 100);
|
|
@@ -321,7 +159,7 @@ async function runLeaderboard(globalOpts, cmdOpts) {
|
|
|
321
159
|
console.log("");
|
|
322
160
|
for (let i = 0; i < entries.length; i++) {
|
|
323
161
|
const e = entries[i];
|
|
324
|
-
const name = e.display_name ?? e.agent_id.slice(0, 10) + "
|
|
162
|
+
const name = e.display_name ?? e.agent_id.slice(0, 10) + "…";
|
|
325
163
|
const reward = ((e.reward_credits || 0) / 100).toFixed(2);
|
|
326
164
|
console.log(` ${chalk.dim(`#${i + 1}`)} ${chalk.bold(name)} ${chalk.cyan(e.tier)} ${e.score} pts ${chalk.green(reward + " credits")}`);
|
|
327
165
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewards.js","sourceRoot":"","sources":["../../src/commands/rewards.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rewards.js","sourceRoot":"","sources":["../../src/commands/rewards.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/agentLoop.js
CHANGED
|
@@ -357,8 +357,8 @@ export function getAvailableActions(signalType) {
|
|
|
357
357
|
"link_project_to_guild", "propose_guild", "deploy_preview",
|
|
358
358
|
"egress_request", "execute_tool", "call_mcp_tool", "register_webhook",
|
|
359
359
|
"workspace_create", "publish_insight",
|
|
360
|
-
"create_intent", "browse_intents",
|
|
361
|
-
"
|
|
360
|
+
"create_intent", "browse_intents",
|
|
361
|
+
"launch_token", "preview_token_launch",
|
|
362
362
|
"search_skills", "install_skill", "store_memory", "recall_memory",
|
|
363
363
|
"propose_teaching", "search_teachers",
|
|
364
364
|
"credit_hire",
|
|
@@ -373,7 +373,7 @@ export function getAvailableActions(signalType) {
|
|
|
373
373
|
"create_task", "link_project_to_guild", "propose_guild",
|
|
374
374
|
"egress_request", "execute_tool", "call_mcp_tool",
|
|
375
375
|
"workspace_create", "publish_insight",
|
|
376
|
-
"create_intent", "browse_intents",
|
|
376
|
+
"create_intent", "browse_intents",
|
|
377
377
|
"search_skills", "install_skill", "store_memory",
|
|
378
378
|
"ignore",
|
|
379
379
|
];
|
|
@@ -385,7 +385,7 @@ export function getAvailableActions(signalType) {
|
|
|
385
385
|
return ["endorse_agent", "attest_back", "send_dm", "ignore"];
|
|
386
386
|
case "files_committed":
|
|
387
387
|
case "pending_review":
|
|
388
|
-
return ["review", "comment", "request_ai_review", "ignore"];
|
|
388
|
+
return ["review", "comment", "request_ai_review", "list_project_files", "read_project_file", "list_commits", "get_commit_detail", "ignore"];
|
|
389
389
|
case "review_submitted":
|
|
390
390
|
return ["reply", "ignore"];
|
|
391
391
|
case "collaborator_added":
|
|
@@ -417,9 +417,9 @@ export function getAvailableActions(signalType) {
|
|
|
417
417
|
"deposit_treasury", "withdraw_treasury", "fund_bounty_from_treasury", "distribute_revenue",
|
|
418
418
|
"create_swarm", "claim_subtask", "submit_swarm_result", "aggregate_swarm",
|
|
419
419
|
"record_gap", "update_proficiency", "generate_recommendations",
|
|
420
|
-
"create_intent", "browse_intents", "
|
|
420
|
+
"create_intent", "browse_intents", "submit_proposal", "accept_proposal", "reject_proposal",
|
|
421
421
|
"cancel_intent", "complete_intent", "withdraw_proposal", "query_oracle",
|
|
422
|
-
"
|
|
422
|
+
"launch_token", "preview_token_launch", "claim_clawnch_fees", "get_token_analytics",
|
|
423
423
|
"create_search_subscription",
|
|
424
424
|
"send_email", "reply_email", "check_email", "create_email_inbox",
|
|
425
425
|
"search_skills", "publish_skill", "install_skill", "review_skill", "update_skill", "trending_skills",
|
|
@@ -430,6 +430,7 @@ export function getAvailableActions(signalType) {
|
|
|
430
430
|
"claim_reward",
|
|
431
431
|
"endorse_agent", "revoke_endorsement",
|
|
432
432
|
"block_agent", "unblock_agent",
|
|
433
|
+
"list_project_files", "read_project_file", "list_commits", "get_commit_detail",
|
|
433
434
|
"ignore",
|
|
434
435
|
];
|
|
435
436
|
case "collab_request":
|
|
@@ -786,6 +787,42 @@ export async function executeAgentAction(runtime, action, signal, log) {
|
|
|
786
787
|
}
|
|
787
788
|
break;
|
|
788
789
|
}
|
|
790
|
+
case "list_project_files": {
|
|
791
|
+
const projId = (action.projectId || signal.projectId);
|
|
792
|
+
if (projId) {
|
|
793
|
+
const files = await runtime.projects.listFiles(projId);
|
|
794
|
+
log(`[reactive] Listed ${files.length} files in project ${projId}`);
|
|
795
|
+
}
|
|
796
|
+
break;
|
|
797
|
+
}
|
|
798
|
+
case "read_project_file": {
|
|
799
|
+
const projId = (action.projectId || signal.projectId);
|
|
800
|
+
const filePath = action.filePath;
|
|
801
|
+
if (projId && filePath) {
|
|
802
|
+
const fileContent = await runtime.projects.readFile(projId, filePath);
|
|
803
|
+
log(`[reactive] Read file ${filePath} from project ${projId}`);
|
|
804
|
+
}
|
|
805
|
+
break;
|
|
806
|
+
}
|
|
807
|
+
case "list_commits": {
|
|
808
|
+
const projId = (action.projectId || signal.projectId);
|
|
809
|
+
if (projId) {
|
|
810
|
+
const limit = action.limit ?? 20;
|
|
811
|
+
const offset = action.offset ?? 0;
|
|
812
|
+
const commits = await runtime.projects.listCommits(projId, limit, offset);
|
|
813
|
+
log(`[reactive] Listed ${commits.length} commits in project ${projId}`);
|
|
814
|
+
}
|
|
815
|
+
break;
|
|
816
|
+
}
|
|
817
|
+
case "get_commit_detail": {
|
|
818
|
+
const projId = (action.projectId || signal.projectId);
|
|
819
|
+
const commitId = action.commitId;
|
|
820
|
+
if (projId && commitId) {
|
|
821
|
+
const commit = await runtime.projects.getCommit(projId, commitId);
|
|
822
|
+
log(`[reactive] Got commit detail ${commitId} from project ${projId}`);
|
|
823
|
+
}
|
|
824
|
+
break;
|
|
825
|
+
}
|
|
789
826
|
case "add_collaborator": {
|
|
790
827
|
const projId = (action.projectId || signal.projectId);
|
|
791
828
|
const collabAddr = (action.collaboratorAddress || target);
|
|
@@ -1466,20 +1503,6 @@ export async function executeAgentAction(runtime, action, signal, log) {
|
|
|
1466
1503
|
log(`[reactive] Found ${browseRes.total} intents`);
|
|
1467
1504
|
break;
|
|
1468
1505
|
}
|
|
1469
|
-
case "browse_feed": {
|
|
1470
|
-
const feedRes = await runtime.discovery.browseFeed({
|
|
1471
|
-
community: action.community,
|
|
1472
|
-
sort: (action.sort || "hot"),
|
|
1473
|
-
limit: action.limit || 20,
|
|
1474
|
-
followingOnly: action.followingOnly === true,
|
|
1475
|
-
minScore: action.minScore,
|
|
1476
|
-
minReputation: action.minReputation,
|
|
1477
|
-
excludeTags: action.excludeTags,
|
|
1478
|
-
raw: action.raw === true,
|
|
1479
|
-
});
|
|
1480
|
-
log(`[reactive] Loaded feed: ${feedRes.contents ? feedRes.contents.length : 0} posts`);
|
|
1481
|
-
break;
|
|
1482
|
-
}
|
|
1483
1506
|
case "submit_proposal": {
|
|
1484
1507
|
const spIntentId = action.intentId;
|
|
1485
1508
|
if (spIntentId) {
|
|
@@ -1572,14 +1595,23 @@ export async function executeAgentAction(runtime, action, signal, log) {
|
|
|
1572
1595
|
break;
|
|
1573
1596
|
}
|
|
1574
1597
|
// ── Clawnch Token Launching ──
|
|
1575
|
-
case "
|
|
1576
|
-
const
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
});
|
|
1582
|
-
|
|
1598
|
+
case "preview_token_launch": {
|
|
1599
|
+
const prevRes = await runtime.connection.request("POST", "/v1/clawnch/preview", { tokenName: action.tokenName, tokenTicker: action.tokenTicker, description: action.description || action.content, imageUrl: action.imageUrl });
|
|
1600
|
+
log(`[reactive] Token preview: ${prevRes?.launch ? "OK" : "done"}`);
|
|
1601
|
+
break;
|
|
1602
|
+
}
|
|
1603
|
+
case "launch_token": {
|
|
1604
|
+
const launchRes = await runtime.connection.request("POST", "/v1/clawnch/launch", { tokenName: action.tokenName, tokenTicker: action.tokenTicker, description: action.description || action.content, imageUrl: action.imageUrl });
|
|
1605
|
+
const tokenAddr = launchRes?.launch;
|
|
1606
|
+
log(`[reactive] Launched token ${tokenAddr?.token_address ?? "pending"}`);
|
|
1607
|
+
break;
|
|
1608
|
+
}
|
|
1609
|
+
case "claim_clawnch_fees": {
|
|
1610
|
+
const claimAddr = action.tokenAddress;
|
|
1611
|
+
if (claimAddr) {
|
|
1612
|
+
const claimRes = await runtime.connection.request("POST", "/v1/clawnch/claim-fees", { tokenAddress: claimAddr });
|
|
1613
|
+
log(`[reactive] Claimed fees for ${claimAddr.slice(0, 10)}...`);
|
|
1614
|
+
}
|
|
1583
1615
|
break;
|
|
1584
1616
|
}
|
|
1585
1617
|
case "get_token_analytics": {
|