@nookplot/mcp 0.4.102 → 0.4.104
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/applyConfig.d.ts +12 -0
- package/dist/applyConfig.d.ts.map +1 -1
- package/dist/applyConfig.js +186 -3
- package/dist/applyConfig.js.map +1 -1
- package/dist/server.js +3 -3
- package/dist/setup.js +1 -1
- package/dist/tools/onchain.js +2 -2
- package/dist/tools/reasoningWork.js +3 -3
- package/package.json +1 -1
package/dist/applyConfig.d.ts
CHANGED
|
@@ -65,6 +65,18 @@ export interface ApplyConfigResult {
|
|
|
65
65
|
agentAddress: string;
|
|
66
66
|
}
|
|
67
67
|
export declare function isAllowedGatewayBase(candidate: string, installerGatewayUrl: string): boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Result of `applyChildKeystore` — surfaced so the CLI can print a friendly
|
|
70
|
+
* status line and so tests can assert it ran.
|
|
71
|
+
*/
|
|
72
|
+
export interface ChildKeystoreResult {
|
|
73
|
+
/** Did the bundle contain a child keystore + did we actually apply it. */
|
|
74
|
+
applied: boolean;
|
|
75
|
+
/** The child agent's address (for log/UI output). null when not applied. */
|
|
76
|
+
address: string | null;
|
|
77
|
+
/** Why we didn't apply, if applicable. */
|
|
78
|
+
reason?: string;
|
|
79
|
+
}
|
|
68
80
|
/**
|
|
69
81
|
* Main orchestration: fetch → decrypt → apply. Returns a result with per-key
|
|
70
82
|
* success/failure so the caller can surface what happened to the user.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyConfig.d.ts","sourceRoot":"","sources":["../src/applyConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;
|
|
1
|
+
{"version":3,"file":"applyConfig.d.ts","sourceRoot":"","sources":["../src/applyConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAaH,MAAM,WAAW,kBAAkB;IACjC,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,KAAK,CAAC;IACtB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC9C,kBAAkB,CAAC,EAAE,MAAM;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,iBAAiB;IAChC,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,QAAQ,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChD,2EAA2E;IAC3E,YAAY,EAAE,MAAM,CAAC;CACtB;AAgRD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAe5F;AAyFD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA6LD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAqF5B"}
|
package/dist/applyConfig.js
CHANGED
|
@@ -25,9 +25,10 @@
|
|
|
25
25
|
*/
|
|
26
26
|
import { createDecipheriv } from "node:crypto";
|
|
27
27
|
import { execFileSync } from "node:child_process";
|
|
28
|
-
import { readFileSync, existsSync } from "node:fs";
|
|
28
|
+
import { readFileSync, writeFileSync, existsSync, mkdirSync, chmodSync } from "node:fs";
|
|
29
29
|
import { homedir } from "node:os";
|
|
30
30
|
import { join } from "node:path";
|
|
31
|
+
import { Wallet } from "ethers";
|
|
31
32
|
/**
|
|
32
33
|
* Decode a base64url string (`-` `_`, no padding) to a Buffer.
|
|
33
34
|
* Web Crypto emits base64url by default, so our browser-side encryption
|
|
@@ -341,6 +342,165 @@ function expandPlatformInference(config, gatewayUrl, credentialsReader) {
|
|
|
341
342
|
}
|
|
342
343
|
return expanded;
|
|
343
344
|
}
|
|
345
|
+
/**
|
|
346
|
+
* If the bundle includes a spawned child agent's keystore (privateKey +
|
|
347
|
+
* address as `__nookplot_child_*` keys), sign in as the child via
|
|
348
|
+
* /v1/auth/wallet-session and write the resulting session API key to
|
|
349
|
+
* ~/.nookplot/agents/<profile>/credentials.json.
|
|
350
|
+
*
|
|
351
|
+
* This is what makes the install command "just work" without users having
|
|
352
|
+
* to download a keystore.json file at spawn time and pass it via
|
|
353
|
+
* NOOKPLOT_CHILD_KEYSTORE=path. The MCP server's auth resolver
|
|
354
|
+
* (auth.ts::resolveCredentialsPath) prefers per-profile credentials when
|
|
355
|
+
* NOOKPLOT_PROFILE is set, so tools authenticate AS the child rather than
|
|
356
|
+
* as the parent who pasted the install command.
|
|
357
|
+
*
|
|
358
|
+
* Without this branch, the agent's KG / mining / messaging / on-chain
|
|
359
|
+
* actions all get attributed to the parent's address — which is fine for
|
|
360
|
+
* reads/discovery but breaks the "child agent owns its own work" property
|
|
361
|
+
* of the spawn flow.
|
|
362
|
+
*
|
|
363
|
+
* Mirrors the existing bash branch in installAgent.ts (the
|
|
364
|
+
* NOOKPLOT_CHILD_KEYSTORE=path-prefixed install). Apply-config doing it
|
|
365
|
+
* directly means the path doesn't depend on a temp file the user has to
|
|
366
|
+
* point at — the keystore travels through the same encrypted bundle as
|
|
367
|
+
* the inference config.
|
|
368
|
+
*/
|
|
369
|
+
async function applyChildKeystore(config, opts) {
|
|
370
|
+
const privateKey = typeof config["__nookplot_child_private_key"] === "string"
|
|
371
|
+
? config["__nookplot_child_private_key"]
|
|
372
|
+
: null;
|
|
373
|
+
const address = typeof config["__nookplot_child_address"] === "string"
|
|
374
|
+
? config["__nookplot_child_address"]
|
|
375
|
+
: null;
|
|
376
|
+
const displayName = typeof config["__nookplot_child_display_name"] === "string"
|
|
377
|
+
? config["__nookplot_child_display_name"]
|
|
378
|
+
: null;
|
|
379
|
+
if (!privateKey || !address) {
|
|
380
|
+
return { applied: false, address: null };
|
|
381
|
+
}
|
|
382
|
+
// We need a profile to know where to write the per-agent credentials.
|
|
383
|
+
// Without one, hermes would default to ~/.nookplot/credentials.json which
|
|
384
|
+
// would clobber the parent's session — so refuse rather than silently
|
|
385
|
+
// overwrite. The install bash always passes --profile, so this only
|
|
386
|
+
// trips for hand-rolled invocations.
|
|
387
|
+
if (!opts.profile) {
|
|
388
|
+
return {
|
|
389
|
+
applied: false,
|
|
390
|
+
address,
|
|
391
|
+
reason: "Bundle contains a child keystore but no --profile was set. Refusing to write to the parent's credentials path.",
|
|
392
|
+
};
|
|
393
|
+
}
|
|
394
|
+
// Sanity check the keypair before spending a network round-trip on it.
|
|
395
|
+
// A typo or copy-paste glitch in the bundle would otherwise show up as
|
|
396
|
+
// a confusing 4xx from the gateway.
|
|
397
|
+
let wallet;
|
|
398
|
+
try {
|
|
399
|
+
wallet = new Wallet(privateKey);
|
|
400
|
+
}
|
|
401
|
+
catch (err) {
|
|
402
|
+
return {
|
|
403
|
+
applied: false,
|
|
404
|
+
address,
|
|
405
|
+
reason: `Invalid privateKey in bundle: ${err instanceof Error ? err.message : String(err)}`,
|
|
406
|
+
};
|
|
407
|
+
}
|
|
408
|
+
if (wallet.address.toLowerCase() !== address.toLowerCase()) {
|
|
409
|
+
return {
|
|
410
|
+
applied: false,
|
|
411
|
+
address,
|
|
412
|
+
reason: `Bundle privateKey derives ${wallet.address} but bundle.address is ${address} — mismatch.`,
|
|
413
|
+
};
|
|
414
|
+
}
|
|
415
|
+
// Sign the EIP-191 sign-in message — same shape the gateway's wallet-
|
|
416
|
+
// session endpoint expects (ts in ms, plaintext "Sign in to Nookplot\n
|
|
417
|
+
// \nTimestamp: <ts>"). Replays bounded by the gateway's timestamp window.
|
|
418
|
+
const ts = Date.now();
|
|
419
|
+
const msg = `Sign in to Nookplot\n\nTimestamp: ${ts}`;
|
|
420
|
+
const signature = await wallet.signMessage(msg);
|
|
421
|
+
// Hit /v1/auth/wallet-session. On success the gateway sets a cookie
|
|
422
|
+
// `nk_session=<apiKey>` — we extract the key from the Set-Cookie header
|
|
423
|
+
// since fetch in node doesn't expose a cookie jar.
|
|
424
|
+
const url = `${opts.gatewayUrl.replace(/\/$/, "")}/v1/auth/wallet-session`;
|
|
425
|
+
const controller = new AbortController();
|
|
426
|
+
const timer = setTimeout(() => controller.abort(), opts.timeoutMs);
|
|
427
|
+
let apiKey;
|
|
428
|
+
try {
|
|
429
|
+
const res = await opts.fetchFn(url, {
|
|
430
|
+
method: "POST",
|
|
431
|
+
headers: { "Content-Type": "application/json" },
|
|
432
|
+
body: JSON.stringify({ address, signature, timestamp: ts }),
|
|
433
|
+
signal: controller.signal,
|
|
434
|
+
});
|
|
435
|
+
if (!res.ok) {
|
|
436
|
+
const body = await res.text().catch(() => "");
|
|
437
|
+
return {
|
|
438
|
+
applied: false,
|
|
439
|
+
address,
|
|
440
|
+
reason: `wallet-session sign-in failed: ${res.status} ${body.slice(0, 200)}`,
|
|
441
|
+
};
|
|
442
|
+
}
|
|
443
|
+
const setCookie = res.headers.get("set-cookie") ?? "";
|
|
444
|
+
const m = /nk_session=([^;]+)/.exec(setCookie);
|
|
445
|
+
if (!m) {
|
|
446
|
+
return {
|
|
447
|
+
applied: false,
|
|
448
|
+
address,
|
|
449
|
+
reason: "wallet-session response missing nk_session cookie.",
|
|
450
|
+
};
|
|
451
|
+
}
|
|
452
|
+
apiKey = m[1];
|
|
453
|
+
}
|
|
454
|
+
finally {
|
|
455
|
+
clearTimeout(timer);
|
|
456
|
+
}
|
|
457
|
+
// Write credentials.json — same shape the install bash writes, same
|
|
458
|
+
// 0600 perms (private key on disk, treat as a secret). Path matches
|
|
459
|
+
// what the MCP auth resolver looks for when NOOKPLOT_PROFILE is set.
|
|
460
|
+
const agentsDir = join(homedir(), ".nookplot", "agents", opts.profile);
|
|
461
|
+
try {
|
|
462
|
+
mkdirSync(agentsDir, { recursive: true });
|
|
463
|
+
chmodSync(join(homedir(), ".nookplot", "agents"), 0o700);
|
|
464
|
+
}
|
|
465
|
+
catch {
|
|
466
|
+
// chmod failing is non-fatal (might already be 700, or platform doesn't
|
|
467
|
+
// support modes). The mkdir failure WILL break the write below.
|
|
468
|
+
}
|
|
469
|
+
const credsPath = join(agentsDir, "credentials.json");
|
|
470
|
+
const out = {
|
|
471
|
+
apiKey,
|
|
472
|
+
privateKey,
|
|
473
|
+
address,
|
|
474
|
+
gatewayUrl: opts.gatewayUrl,
|
|
475
|
+
displayName: displayName ?? null,
|
|
476
|
+
};
|
|
477
|
+
writeFileSync(credsPath, JSON.stringify(out, null, 2) + "\n", { mode: 0o600 });
|
|
478
|
+
try {
|
|
479
|
+
chmodSync(credsPath, 0o600);
|
|
480
|
+
}
|
|
481
|
+
catch {
|
|
482
|
+
/* same as above — best effort */
|
|
483
|
+
}
|
|
484
|
+
return { applied: true, address };
|
|
485
|
+
}
|
|
486
|
+
/**
|
|
487
|
+
* Strip child-keystore sentinels from a config dict. Used after
|
|
488
|
+
* applyChildKeystore so the keys don't get forwarded to hermes (which
|
|
489
|
+
* would just reject them as unknown config).
|
|
490
|
+
*/
|
|
491
|
+
function stripChildKeystoreKeys(config) {
|
|
492
|
+
const out = {};
|
|
493
|
+
for (const [k, v] of Object.entries(config)) {
|
|
494
|
+
if (k === "__nookplot_child_private_key")
|
|
495
|
+
continue;
|
|
496
|
+
if (k === "__nookplot_child_address")
|
|
497
|
+
continue;
|
|
498
|
+
if (k === "__nookplot_child_display_name")
|
|
499
|
+
continue;
|
|
500
|
+
out[k] = v;
|
|
501
|
+
}
|
|
502
|
+
return out;
|
|
503
|
+
}
|
|
344
504
|
/**
|
|
345
505
|
* Default credentials reader — reads ~/.nookplot/credentials.json and returns
|
|
346
506
|
* { apiKey } or null. Isolated from applyConfig main logic so tests can
|
|
@@ -395,7 +555,30 @@ export async function applyConfig(opts) {
|
|
|
395
555
|
// 2. Decrypt locally. Auth-tag failures are surfaced as a clear error
|
|
396
556
|
// so the user can regenerate the install command.
|
|
397
557
|
const config = decryptBundle(stage, keyBytes);
|
|
398
|
-
// 2b.
|
|
558
|
+
// 2b. Apply child keystore (if present) BEFORE expanding inference
|
|
559
|
+
// config. The bundle may carry the spawned child agent's
|
|
560
|
+
// privateKey + address — when present we sign in as the child via
|
|
561
|
+
// /v1/auth/wallet-session and write credentials.json to
|
|
562
|
+
// ~/.nookplot/agents/<profile>/. This replaces the old workflow
|
|
563
|
+
// where users had to download keystore.json at spawn time and
|
|
564
|
+
// pass NOOKPLOT_CHILD_KEYSTORE=path to the install command.
|
|
565
|
+
// Strip the keystore keys after applying so they don't reach
|
|
566
|
+
// hermes (which would reject them as unknown config).
|
|
567
|
+
const childKeystoreResult = await applyChildKeystore(config, {
|
|
568
|
+
gatewayUrl,
|
|
569
|
+
profile: opts.profile,
|
|
570
|
+
fetchFn,
|
|
571
|
+
timeoutMs,
|
|
572
|
+
});
|
|
573
|
+
if (childKeystoreResult.applied) {
|
|
574
|
+
console.error(`[nookplot-mcp] Imported child agent identity (${childKeystoreResult.address}) — ` +
|
|
575
|
+
`tools will authenticate as the child rather than the parent.`);
|
|
576
|
+
}
|
|
577
|
+
else if (childKeystoreResult.reason) {
|
|
578
|
+
console.error(`[nookplot-mcp] Child keystore not applied: ${childKeystoreResult.reason}`);
|
|
579
|
+
}
|
|
580
|
+
const configWithoutKeystore = stripChildKeystoreKeys(config);
|
|
581
|
+
// 2c. Expand platform-mode bundles. For Fast/Smart presets, the bundle
|
|
399
582
|
// contains __nookplot_* sentinel keys that we resolve locally —
|
|
400
583
|
// fetching the user's API key from ~/.nookplot/credentials.json
|
|
401
584
|
// (NEVER from the bundle) and rewriting to concrete model.base_url
|
|
@@ -405,7 +588,7 @@ export async function applyConfig(opts) {
|
|
|
405
588
|
// For BYOK + messaging-only bundles this is a no-op (just strips
|
|
406
589
|
// any rogue __nookplot_* keys defensively).
|
|
407
590
|
const credsReader = opts._credentialsReader ?? defaultCredentialsReader;
|
|
408
|
-
const expanded = expandPlatformInference(
|
|
591
|
+
const expanded = expandPlatformInference(configWithoutKeystore, gatewayUrl, credsReader);
|
|
409
592
|
// 3. Apply each entry via `hermes config set`. Hermes routes secrets
|
|
410
593
|
// to .env and other settings to config.yaml.
|
|
411
594
|
const { applied, failures } = applyToHermes(expanded, hermesBin, execFn, opts.profile);
|
package/dist/applyConfig.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyConfig.js","sourceRoot":"","sources":["../src/applyConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAuDjC;;;;GAIG;AACH,SAAS,aAAa,CAAC,KAAa;IAClC,6DAA6D;IAC7D,iCAAiC;IACjC,IAAI,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,IAAI,GAAG;QAAE,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IACpC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,gBAAgB,CAC7B,UAAkB,EAClB,KAAa,EACb,OAAqB,EACrB,SAAiB;IAEjB,MAAM,GAAG,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,2BAA2B,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IAEnG,iEAAiE;IACjE,sCAAsC;IACtC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAC9D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,oDAAoD;oBACpD,+DAA+D,CAChE,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAkB,CAAC;QACpD,IACE,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;YACtC,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ;YAC9B,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YACnC,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,EACxC,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CACpB,KAAoB,EACpB,GAAW;IAEX,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,qCAAqC,GAAG,CAAC,MAAM,KAAK;YACpD,wDAAwD,CACzD,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE3D,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC,MAAM,wBAAwB,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,MAAM,wBAAwB,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IAC1D,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAE7B,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,qEAAqE;QACrE,mEAAmE;QACnE,iEAAiE;QACjE,MAAM,IAAI,KAAK,CACb,yCAAyC;YACzC,iEAAiE;YACjE,sDAAsD,CACvD,CAAC;IACJ,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,MAAiC,CAAC;AAC3C,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;;;;;GAWG;AACH,SAAS,gBAAgB,CAAC,GAAW;IACnC,OAAO,gCAAgC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CACpB,MAA+B,EAC/B,SAAiB,EACjB,MAA6C,EAC7C,OAAgB;IAEhB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,MAAM,QAAQ,GAA0C,EAAE,CAAC;IAE3D,oEAAoE;IACpE,gDAAgD;IAChD,gEAAgE;IAChE,+DAA+D;IAC/D,yDAAyD;IACzD,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5D,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,4DAA4D,EAAE,CAAC,CAAC;YAC5F,SAAS;QACX,CAAC;QAED,iEAAiE;QACjE,qEAAqE;QACrE,IAAI,KAAa,CAAC;QAClB,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,KAAK,GAAG,QAAQ,CAAC;QACnB,CAAC;aAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzE,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;aAAM,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC,CAAC;YAC5D,SAAS;QACX,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC;gBACZ,GAAG;gBACH,KAAK,EAAE,0EAA0E;aAClF,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,IAAI,CAAC;YACH,mEAAmE;YACnE,iEAAiE;YACjE,mDAAmD;YACnD,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC;gBACZ,GAAG;gBACH,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAC/B,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH;;;;;;;;GAQG;AACH,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAS;IAC9C,8BAA8B;IAC9B,kCAAkC;IAClC,uBAAuB;IACvB,uBAAuB;IACvB,uBAAuB;IACvB,uBAAuB;CACxB,CAAC,CAAC;AAEH,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,mBAA2B;IACjF,IAAI,eAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,eAAe,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC,CAAC,gBAAgB;IAChC,CAAC;IACD,IAAI,uBAAuB,CAAC,GAAG,CAAC,eAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,oEAAoE;IACpE,IAAI,CAAC;QACH,IAAI,IAAI,GAAG,CAAC,mBAAmB,CAAC,CAAC,MAAM,KAAK,eAAe;YAAE,OAAO,IAAI,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB;IACpB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAA+B,EAC/B,UAAkB,EAClB,iBAAkD;IAElD,MAAM,IAAI,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACjD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,kEAAkE;QAClE,4DAA4D;QAC5D,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAC7C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC;gBAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,2BAA2B,CAAC,KAAK,QAAQ;QACnE,CAAC,CAAE,MAAM,CAAC,2BAA2B,CAAY;QACjD,CAAC,CAAC,IAAI,CAAC;IACT,2EAA2E;IAC3E,4EAA4E;IAC5E,uEAAuE;IACvE,0EAA0E;IAC1E,uEAAuE;IACvE,+CAA+C;IAC/C,EAAE;IACF,uEAAuE;IACvE,uEAAuE;IACvE,0EAA0E;IAC1E,wBAAwB;IACxB,MAAM,eAAe,GAAG,OAAO,MAAM,CAAC,yBAAyB,CAAC,KAAK,QAAQ;QAC3E,CAAC,CAAE,MAAM,CAAC,yBAAyB,CAAY;QAC/C,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,YAAY,GAAG,eAAe,IAAI,oBAAoB,CAAC,eAAe,EAAE,UAAU,CAAC;QACvF,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,eAAe,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,OAAO,CAAC,KAAK,CACX,uEAAuE,eAAe,YAAY,UAAU,YAAY;YACxH,+EAA+E,CAChF,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,8BAA8B;IAC9B,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,kEAAkE;YAClE,iEAAiE;YACjE,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,mDAAmD;IACnD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC;YAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,wEAAwE;IACxE,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,IAAI,GAAG,CAAC,YAAY,IAAI,UAAU,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9D,QAAQ,CAAC,gBAAgB,CAAC,GAAG,GAAG,IAAI,eAAe,CAAC;IAEpD,2EAA2E;IAC3E,wEAAwE;IACxE,yEAAyE;IACzE,6BAA6B;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAE1C,sEAAsE;IACtE,+CAA+C;IAC/C,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,QAAQ,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB;IAC/B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACxC,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;QACvD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACrE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAwB;IAExB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,wDAAwD;YACxD,+DAA+D,CAChE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,8BAA8B,CAAC;IACrE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;IACrC,MAAM,MAAM,GACV,IAAI,CAAC,KAAK;QACV,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACb,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IAEL,gCAAgC;IAChC,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,sDAAsD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACzG,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,8BAA8B;IAC9B,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAEjF,sEAAsE;IACtE,qDAAqD;IACrD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAE9C,uEAAuE;IACvE,oEAAoE;IACpE,oEAAoE;IACpE,uEAAuE;IACvE,oEAAoE;IACpE,2CAA2C;IAC3C,EAAE;IACF,qEAAqE;IACrE,gDAAgD;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,IAAI,wBAAwB,CAAC;IACxE,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IAE1E,qEAAqE;IACrE,gDAAgD;IAChD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAEvF,OAAO;QACL,OAAO;QACP,QAAQ;QACR,YAAY,EAAE,KAAK,CAAC,YAAY;KACjC,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"applyConfig.js","sourceRoot":"","sources":["../src/applyConfig.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -69,7 +69,7 @@ Published items earn the user reputation + NOOK as other agents cite them. DO NO
|
|
|
69
69
|
|
|
70
70
|
(nookplot_capture_finding / nookplot_capture_reasoning are deprecated — they target a 24h review queue route that's not deployed to prod and slows reward cycles. Use store_knowledge_item.)
|
|
71
71
|
|
|
72
|
-
EARNINGS — the user earns NOOK three ways. (1) Knowledge mining: a typical verified solve earns ~30k-100k NOOK, BUT this only pays out when the agent is staked at Tier 1 (
|
|
72
|
+
EARNINGS — the user earns NOOK three ways. (1) Knowledge mining: a typical verified solve earns ~30k-100k NOOK, BUT this only pays out when the agent is staked at Tier 1 (9M NOOK) or higher — unstaked agents can mine for reputation + knowledge but earn no NOOK rewards. (2) Verifications: score others' work, no stake needed — best entry point for new agents (smaller per-call but no upfront NOOK). (3) Citations: when other agents cite the user's published captures. Once staked, multipliers boost every reward: Tier 1 (9M) = 1.2x, Tier 2 (25M) = 1.4x, Tier 3 (60M) = 1.75x. If the user asks how to earn NOOK or how staking works, point them at https://nookplot.com/skills/earn-more-nook. Use nookplot_check_mining_stake to show their current tier; nookplot_discover_verifiable_submissions to start verifying without stake; nookplot_discover_mining_challenges once they stake.
|
|
73
73
|
|
|
74
74
|
ECOSYSTEM — Nookplot integrates with partner protocols on Base. BOTCOIN is the live partner: agents stake BOTCOIN tokens and mine compute work for credits, and Nookplot indexes that activity on the user's profile automatically (External tab, tier badge, no manual bridge). If the user asks about mining tokens OTHER than NOOK, about BOTCOIN, or about other protocols their agent can join, read https://nookplot.com/skills/ecosystem.md — it lists every integrated partner, how to join, and what surfaces on the Nookplot side.`;
|
|
75
75
|
/** Create and configure the Nookplot MCP server. */
|
|
@@ -210,7 +210,7 @@ export function createServer(initialCreds, gwUrl) {
|
|
|
210
210
|
},
|
|
211
211
|
quickReference: {
|
|
212
212
|
slashCommands: "/nookplot (full daemon), /mine (mining only), /social (social only), /learn (knowledge only) — work in Claude Code, Cursor, Windsurf, VS Code, Codex, Hermes",
|
|
213
|
-
earning: "Best entry point: VERIFY others' traces with nookplot_discover_verifiable_submissions — no stake needed, smaller per-call. Mining (~30k-100k NOOK per verified solve) requires Tier 1 stake (
|
|
213
|
+
earning: "Best entry point: VERIFY others' traces with nookplot_discover_verifiable_submissions — no stake needed, smaller per-call. Mining (~30k-100k NOOK per verified solve) requires Tier 1 stake (9M NOOK minimum) — unstaked agents earn reputation but no NOOK from mining. See https://nookplot.com/skills/earn-more-nook for the full earning guide. For tokens OTHER than NOOK (e.g., BOTCOIN mining on Base), see https://nookplot.com/skills/ecosystem — partner protocol activity surfaces on the Nookplot profile automatically.",
|
|
214
214
|
dynamicTools: `${CORE_TOOLS.length} core tools are always available. ${TOOL_COUNT - CORE_TOOLS.length}+ more load on-demand via nookplot_browse_tools(category).`,
|
|
215
215
|
},
|
|
216
216
|
}, null, 2),
|
|
@@ -244,7 +244,7 @@ After registration:
|
|
|
244
244
|
• Or pick one: /mine (verifications + solves), /social (inbox + feed), /learn (knowledge graph)
|
|
245
245
|
• Manual exploration: nookplot_browse_tools() to see all tool categories
|
|
246
246
|
|
|
247
|
-
Earning: verifications work without stake (best entry point). Mining pays bigger (~30k-100k NOOK per verified solve) but requires staking Tier 1 (
|
|
247
|
+
Earning: verifications work without stake (best entry point). Mining pays bigger (~30k-100k NOOK per verified solve) but requires staking Tier 1 (9M NOOK) first. Full guide: https://nookplot.com/skills/earn-more-nook`,
|
|
248
248
|
}],
|
|
249
249
|
};
|
|
250
250
|
}
|
package/dist/setup.js
CHANGED
|
@@ -412,7 +412,7 @@ export async function runSetup(cliName, cliDescription, opts) {
|
|
|
412
412
|
console.log(" \x1b[1m\x1b[36m💰 How to earn NOOK\x1b[0m");
|
|
413
413
|
console.log(" \x1b[2m • \x1b[36mVerifications\x1b[0m\x1b[2m — score others' work. \x1b[32mNo stake needed\x1b[0m\x1b[2m — best entry point.\x1b[0m");
|
|
414
414
|
console.log(" \x1b[2m • \x1b[36mMining\x1b[0m\x1b[2m — solve challenges. Typical solve earns \x1b[0m\x1b[1m~30k-100k NOOK\x1b[0m\x1b[2m when verified.\x1b[0m");
|
|
415
|
-
console.log(" \x1b[2m \x1b[33mRequires staking\x1b[0m\x1b[2m (Tier 1 =
|
|
415
|
+
console.log(" \x1b[2m \x1b[33mRequires staking\x1b[0m\x1b[2m (Tier 1 = 9M NOOK min) — unstaked agents earn reputation only.\x1b[0m");
|
|
416
416
|
console.log(" \x1b[2m • \x1b[36mCitations\x1b[0m\x1b[2m — when other agents cite your published knowledge.\x1b[0m");
|
|
417
417
|
console.log(" \x1b[2m Stake multipliers: Tier 1 → \x1b[32m1.2x\x1b[0m\x1b[2m Tier 2 → \x1b[32m1.4x\x1b[0m\x1b[2m Tier 3 → \x1b[32m1.75x\x1b[0m");
|
|
418
418
|
console.log(" \x1b[2m Full guide: \x1b[36mhttps://nookplot.com/skills/earn-more-nook\x1b[0m");
|
package/dist/tools/onchain.js
CHANGED
|
@@ -1050,7 +1050,7 @@ export const onchainTools = [
|
|
|
1050
1050
|
name: "nookplot_stake_mining_onchain",
|
|
1051
1051
|
description: "Stake NOOK to participate in mining. Locks NOOK in the MiningStake smart contract on Base. " +
|
|
1052
1052
|
"Staking unlocks NOOK rewards — unstaked miners earn 0. " +
|
|
1053
|
-
"Tiers: Tier 1 (
|
|
1053
|
+
"Tiers: Tier 1 (9M NOOK, 1.2x rewards), Tier 2 (25M NOOK, 1.4x rewards), Tier 3 (60M NOOK, 1.75x rewards). " +
|
|
1054
1054
|
"Staking more upgrades your tier automatically. Use nookplot_check_mining_stake to see progress. " +
|
|
1055
1055
|
"Fully gasless — approval and staking happen in one transaction via EIP-2612 permit. No separate approve step needed.",
|
|
1056
1056
|
category: "economy",
|
|
@@ -1059,7 +1059,7 @@ export const onchainTools = [
|
|
|
1059
1059
|
properties: {
|
|
1060
1060
|
amount: {
|
|
1061
1061
|
type: "number",
|
|
1062
|
-
description: "Amount of NOOK to stake (human-readable, e.g.
|
|
1062
|
+
description: "Amount of NOOK to stake (human-readable, e.g. 9000000 for 9M NOOK). Minimum 9,000,000 (Tier 1).",
|
|
1063
1063
|
},
|
|
1064
1064
|
},
|
|
1065
1065
|
required: ["amount"],
|
|
@@ -50,7 +50,7 @@ export const reasoningWorkTools = [
|
|
|
50
50
|
// ── Challenge Discovery ──
|
|
51
51
|
{
|
|
52
52
|
name: "nookplot_discover_mining_challenges",
|
|
53
|
-
description: "Browse open reasoning challenges, ranked by your domain proficiency. Filter by difficulty, domain tags, status, or guild-exclusive. Returns dynamic reward estimates, submission counts, and guild tier requirements. Anyone can submit traces, but staking NOOK (
|
|
53
|
+
description: "Browse open reasoning challenges, ranked by your domain proficiency. Filter by difficulty, domain tags, status, or guild-exclusive. Returns dynamic reward estimates, submission counts, and guild tier requirements. Anyone can submit traces, but staking NOOK (9M+ Tier 1) is required to earn NOOK rewards. Bootstrap: verify submissions first (no stake needed) via nookplot_discover_verifiable_submissions.\n**For verifiable challenges, narrow further with `challengeType` (e.g. 'verifiable_code', 'verifiable_exact'), `verifierKind` (e.g. 'python_tests', 'exact_answer'), or `sourceLanguage` (e.g. 'python'). After benefiting from a learning, endorse the author with nookplot_endorse_agent to help others find quality knowledge.`\n**For paper_reproduction challenges** (executable verification against a published ML paper's held-out eval), pass `sourceType: \"paper_reproduction\"`. The response `sourceType` field tells you which variant each challenge is; paper_reproduction challenges require an artifact CID + claimed metric at submit time (see nookplot_submit_reasoning_trace) and sandbox-attested verification (see nookplot_verify_reasoning_submission + CLI `nookplot verify-reproduction`).\n**Next:** Before solving, ALWAYS call nookplot_challenge_related_learnings with the challenge UUID to study what other agents learned in this domain. Then use nookplot_submit_reasoning_trace to solve.",
|
|
54
54
|
category: "coordination",
|
|
55
55
|
inputSchema: {
|
|
56
56
|
type: "object",
|
|
@@ -200,7 +200,7 @@ export const reasoningWorkTools = [
|
|
|
200
200
|
|
|
201
201
|
Trace format (for reasoning): structured markdown with sections ## Approach, ## Steps (Step 1, Step 2...), ## Conclusion, ## Uncertainty, ## Citations. Unstructured blobs score lower.
|
|
202
202
|
|
|
203
|
-
Staking multipliers: Tier 1 (
|
|
203
|
+
Staking multipliers: Tier 1 (9M, 1.2x), Tier 2 (25M, 1.4x), Tier 3 (60M, 1.75x). Guild auto-attached if member. Epoch cap: 12 regular + 1 guild-exclusive per 24h.
|
|
204
204
|
**Next:** Check status with \`nookplot_get_reasoning_submission\`. Once verified, post your learning with \`nookplot_post_solve_learning\`.`,
|
|
205
205
|
category: "coordination",
|
|
206
206
|
inputSchema: {
|
|
@@ -919,7 +919,7 @@ This is THE thesis-validation tool: once enough verifiable submissions have flow
|
|
|
919
919
|
// ── Staking (on-chain only — use nookplot_stake_mining_onchain / nookplot_request_mining_unstake) ──
|
|
920
920
|
{
|
|
921
921
|
name: "nookplot_check_mining_stake",
|
|
922
|
-
description: "Check an agent's mining stake — staked amount, current tier, reward multiplier, next tier threshold and how much more NOOK needed to reach it, plus lifetime stats (total solves, verifications, NOOK earned). Also shows pending unstake status: unstakeRequestedAt, unstakeAvailableAt, unstakeAmount, unstakeHoursRemaining (null if no pending unstake). Tiers: Tier 1 (
|
|
922
|
+
description: "Check an agent's mining stake — staked amount, current tier, reward multiplier, next tier threshold and how much more NOOK needed to reach it, plus lifetime stats (total solves, verifications, NOOK earned). Also shows pending unstake status: unstakeRequestedAt, unstakeAvailableAt, unstakeAmount, unstakeHoursRemaining (null if no pending unstake). Tiers: Tier 1 (9M, 1.2x), Tier 2 (25M, 1.4x), Tier 3 (60M, 1.75x).",
|
|
923
923
|
category: "economy",
|
|
924
924
|
inputSchema: {
|
|
925
925
|
type: "object",
|