@noya-ai/cli 0.1.1 → 0.2.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.
Files changed (3) hide show
  1. package/dist/index.cjs +322 -159
  2. package/dist/index.js +322 -159
  3. package/package.json +4 -3
package/dist/index.cjs CHANGED
@@ -209,7 +209,7 @@ async function startLoopbackServer(bindPort) {
209
209
  pendingResolve = pendingReject = null;
210
210
  return;
211
211
  }
212
- res.setHeader("content-type", "text/html");
212
+ res.setHeader("content-type", "text/html; charset=utf-8");
213
213
  res.end(SUCCESS_PAGE);
214
214
  pendingResolve?.({ url });
215
215
  pendingResolve = pendingReject = null;
@@ -243,11 +243,65 @@ async function startLoopbackServer(bindPort) {
243
243
  return { server, port, waitForCallback, shutdown };
244
244
  }
245
245
  var SUCCESS_PAGE = `<!doctype html>
246
- <html><head><title>Logged in to Noya</title></head>
247
- <body style="font-family:-apple-system,system-ui,sans-serif;padding:2rem">
248
- <h1>\u2713 Logged in to Noya</h1>
249
- <p>You can close this tab and return to the terminal.</p>
250
- </body></html>`;
246
+ <html lang="en">
247
+ <head>
248
+ <meta charset="utf-8">
249
+ <meta name="viewport" content="width=device-width, initial-scale=1">
250
+ <title>Logged in to Noya</title>
251
+ <style>
252
+ :root { color-scheme: light dark; }
253
+ * { box-sizing: border-box; margin: 0; }
254
+ body {
255
+ min-height: 100vh;
256
+ display: flex;
257
+ align-items: center;
258
+ justify-content: center;
259
+ padding: 1.5rem;
260
+ font-family: ui-sans-serif, -apple-system, system-ui, "Segoe UI", Roboto, sans-serif;
261
+ background: #f4f5f7;
262
+ color: #1a1a1a;
263
+ }
264
+ @media (prefers-color-scheme: dark) {
265
+ body { background: #0c0d0e; color: #f4f5f7; }
266
+ .card { background: #18191b; box-shadow: none; border: 1px solid #2a2b2e; }
267
+ .sub { color: #a1a1aa; }
268
+ }
269
+ .card {
270
+ background: #fff;
271
+ border-radius: 16px;
272
+ box-shadow: 0 1px 2px rgba(0,0,0,.04), 0 8px 32px rgba(0,0,0,.08);
273
+ padding: 2.5rem 2.75rem;
274
+ text-align: center;
275
+ max-width: 24rem;
276
+ width: 100%;
277
+ }
278
+ .check {
279
+ width: 56px;
280
+ height: 56px;
281
+ margin: 0 auto 1.25rem;
282
+ display: block;
283
+ }
284
+ h1 { font-size: 1.35rem; font-weight: 650; letter-spacing: -.01em; }
285
+ .sub {
286
+ margin-top: .6rem;
287
+ font-size: .95rem;
288
+ line-height: 1.5;
289
+ color: #6b7280;
290
+ }
291
+ </style>
292
+ </head>
293
+ <body>
294
+ <main class="card">
295
+ <svg class="check" viewBox="0 0 52 52" aria-hidden="true">
296
+ <circle cx="26" cy="26" r="25" fill="#10b981"/>
297
+ <path d="M16 27 l7 7 l14 -16" fill="none" stroke="#fff"
298
+ stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
299
+ </svg>
300
+ <h1>Logged in to Noya</h1>
301
+ <p class="sub">Authentication complete. You can close this tab and return to your terminal.</p>
302
+ </main>
303
+ </body>
304
+ </html>`;
251
305
 
252
306
  // src/commands/auth/logout.ts
253
307
  var import_node_fs2 = require("fs");
@@ -361,6 +415,97 @@ function humanDuration(seconds) {
361
415
  return `${days} days remaining`;
362
416
  }
363
417
 
418
+ // src/commands/auth/refresh.ts
419
+ function trimSlash2(s) {
420
+ return s.replace(/\/+$/, "");
421
+ }
422
+ async function refreshTokens(args) {
423
+ const ctrl = new AbortController();
424
+ const timer = setTimeout(() => ctrl.abort(), args.timeoutMs ?? 8e3);
425
+ try {
426
+ const res = await args.fetch(`${trimSlash2(args.baseUrl)}/oauth/token`, {
427
+ method: "POST",
428
+ headers: { "content-type": "application/x-www-form-urlencoded" },
429
+ body: new URLSearchParams({
430
+ grant_type: "refresh_token",
431
+ refresh_token: args.refreshToken,
432
+ client_id: args.clientId
433
+ }).toString(),
434
+ signal: ctrl.signal
435
+ });
436
+ if (!res.ok) {
437
+ throw new Error(`refresh failed: ${res.status} ${await res.text()}`);
438
+ }
439
+ return await res.json();
440
+ } finally {
441
+ clearTimeout(timer);
442
+ }
443
+ }
444
+ function toStored(prev, tok, now) {
445
+ return {
446
+ clientId: prev.clientId,
447
+ accessToken: tok.access_token,
448
+ refreshToken: tok.refresh_token,
449
+ expiresAt: now + (tok.expires_in ?? 3600)
450
+ };
451
+ }
452
+ function mayNeedCredentials(argv) {
453
+ const args = argv.slice(2);
454
+ if (args.length === 0) return false;
455
+ if (args.some((a) => a === "-h" || a === "--help" || a === "-V" || a === "--version")) {
456
+ return false;
457
+ }
458
+ if (args[0] === "auth") return false;
459
+ return true;
460
+ }
461
+ async function ensureFreshCredentials(args) {
462
+ const { resolved, stored } = args;
463
+ if (resolved.source !== "file" || !stored) return resolved;
464
+ const now = args.now ?? Math.floor(Date.now() / 1e3);
465
+ const skew = args.skewSeconds ?? 60;
466
+ if (stored.expiresAt > now + skew) return resolved;
467
+ const fetch_ = args.fetch ?? globalThis.fetch;
468
+ try {
469
+ const tok = await refreshTokens({
470
+ fetch: fetch_,
471
+ baseUrl: args.baseUrl,
472
+ clientId: stored.clientId,
473
+ refreshToken: stored.refreshToken
474
+ });
475
+ const next = toStored(stored, tok, now);
476
+ saveCredentials(args.credPath, next);
477
+ return { ...resolved, credentials: { bearer: next.accessToken } };
478
+ } catch (err) {
479
+ const msg = err instanceof Error ? err.message : String(err);
480
+ args.out?.write(
481
+ `note: token refresh failed (${msg}); using existing credential \u2014 run \`noya auth login\` if calls fail.
482
+ `
483
+ );
484
+ return resolved;
485
+ }
486
+ }
487
+ async function runRefresh(opts) {
488
+ const stored = loadCredentials(opts.credPath);
489
+ if (!stored) {
490
+ opts.out.write(
491
+ "Not logged in via OAuth. Run `noya auth login` first.\n"
492
+ );
493
+ return;
494
+ }
495
+ const tok = await refreshTokens({
496
+ fetch: opts.fetch ?? globalThis.fetch,
497
+ baseUrl: opts.baseUrl,
498
+ clientId: stored.clientId,
499
+ refreshToken: stored.refreshToken
500
+ });
501
+ const now = Math.floor(Date.now() / 1e3);
502
+ const next = toStored(stored, tok, now);
503
+ saveCredentials(opts.credPath, next);
504
+ const mins = Math.floor((next.expiresAt - now) / 60);
505
+ opts.out.write(`\u2713 Token refreshed. New access token valid for ~${mins} min.
506
+ `);
507
+ }
508
+
364
509
  // src/generated-commands.ts
365
510
  var import_commander = require("commander");
366
511
  function registerCommand(root, pathSegments, description, configure) {
@@ -400,7 +545,7 @@ function setSubGroupDescription(program2, groupName, subName, description) {
400
545
  if (!sub) sub = group.command(subName);
401
546
  sub.description(description);
402
547
  }
403
- function registerGeneratedCommands(program2, sdk2) {
548
+ function registerGeneratedCommands(program2, sdk) {
404
549
  setGroupDescription(program2, "data", "Crypto markets data \u2014 prices, news, on-chain analytics, prediction markets");
405
550
  setGroupDescription(program2, "chain", "On-chain operations \u2014 transfers, swaps, approvals, lending");
406
551
  setGroupDescription(program2, "predict", "Prediction markets \u2014 search, orderbooks, order placement");
@@ -424,12 +569,12 @@ function registerGeneratedCommands(program2, sdk2) {
424
569
  "limit": opts["limit"] === void 0 ? void 0 : Number(opts["limit"])
425
570
  };
426
571
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
427
- await runAndPrint(() => sdk2.data.alternative.fearGreed(input));
572
+ await runAndPrint(() => sdk.data.alternative.fearGreed(input));
428
573
  });
429
574
  });
430
575
  registerCommand(program2, ["data", "batch", "dispatch"], "Auto-generated from sdk.data.batch.dispatch", (cmd) => {
431
576
  cmd.action(async () => {
432
- await runAndPrint(() => sdk2.data.batch.dispatch());
577
+ await runAndPrint(() => sdk.data.batch.dispatch());
433
578
  });
434
579
  });
435
580
  registerCommand(program2, ["data", "coingecko", "price"], "Auto-generated from sdk.data.coingecko.price", (cmd) => {
@@ -451,7 +596,7 @@ function registerGeneratedCommands(program2, sdk2) {
451
596
  if (opts["include24hrChange"] === void 0 ? void 0 : Boolean(opts["include24hrChange"]) === void 0) delete input["include24hrChange"];
452
597
  if (opts["includeMarketCap"] === void 0 ? void 0 : Boolean(opts["includeMarketCap"]) === void 0) delete input["includeMarketCap"];
453
598
  if (opts["include24hrVol"] === void 0 ? void 0 : Boolean(opts["include24hrVol"]) === void 0) delete input["include24hrVol"];
454
- await runAndPrint(() => sdk2.data.coingecko.price(input));
599
+ await runAndPrint(() => sdk.data.coingecko.price(input));
455
600
  });
456
601
  });
457
602
  registerCommand(program2, ["data", "coingecko", "ohlcv"], "Auto-generated from sdk.data.coingecko.ohlcv", (cmd) => {
@@ -470,7 +615,7 @@ function registerGeneratedCommands(program2, sdk2) {
470
615
  if (opts["vsCurrency"] === void 0) delete input["vsCurrency"];
471
616
  if (opts["days"] === void 0) delete input["days"];
472
617
  if (opts["interval"] === void 0) delete input["interval"];
473
- await runAndPrint(() => sdk2.data.coingecko.ohlcv(input));
618
+ await runAndPrint(() => sdk.data.coingecko.ohlcv(input));
474
619
  });
475
620
  });
476
621
  registerCommand(program2, ["data", "coingecko", "token-info"], "Auto-generated from sdk.data.coingecko.tokenInfo", (cmd) => {
@@ -480,12 +625,12 @@ function registerGeneratedCommands(program2, sdk2) {
480
625
  "tokenId": opts["tokenId"]
481
626
  };
482
627
  if (opts["tokenId"] === void 0) delete input["tokenId"];
483
- await runAndPrint(() => sdk2.data.coingecko.tokenInfo(input));
628
+ await runAndPrint(() => sdk.data.coingecko.tokenInfo(input));
484
629
  });
485
630
  });
486
631
  registerCommand(program2, ["data", "coingecko", "trending"], "Auto-generated from sdk.data.coingecko.trending", (cmd) => {
487
632
  cmd.action(async () => {
488
- await runAndPrint(() => sdk2.data.coingecko.trending());
633
+ await runAndPrint(() => sdk.data.coingecko.trending());
489
634
  });
490
635
  });
491
636
  registerCommand(program2, ["data", "coingecko", "search"], "Auto-generated from sdk.data.coingecko.search", (cmd) => {
@@ -495,7 +640,7 @@ function registerGeneratedCommands(program2, sdk2) {
495
640
  "query": opts["query"]
496
641
  };
497
642
  if (opts["query"] === void 0) delete input["query"];
498
- await runAndPrint(() => sdk2.data.coingecko.search(input));
643
+ await runAndPrint(() => sdk.data.coingecko.search(input));
499
644
  });
500
645
  });
501
646
  registerCommand(program2, ["data", "coingecko", "price-history"], "Auto-generated from sdk.data.coingecko.priceHistory", (cmd) => {
@@ -520,7 +665,7 @@ function registerGeneratedCommands(program2, sdk2) {
520
665
  if (opts["from"] === void 0) delete input["from"];
521
666
  if (opts["to"] === void 0) delete input["to"];
522
667
  if (opts["interval"] === void 0) delete input["interval"];
523
- await runAndPrint(() => sdk2.data.coingecko.priceHistory(input));
668
+ await runAndPrint(() => sdk.data.coingecko.priceHistory(input));
524
669
  });
525
670
  });
526
671
  registerCommand(program2, ["data", "coingecko", "price-at-date"], "Auto-generated from sdk.data.coingecko.priceAtDate", (cmd) => {
@@ -533,7 +678,7 @@ function registerGeneratedCommands(program2, sdk2) {
533
678
  };
534
679
  if (opts["tokenId"] === void 0) delete input["tokenId"];
535
680
  if (opts["date"] === void 0) delete input["date"];
536
- await runAndPrint(() => sdk2.data.coingecko.priceAtDate(input));
681
+ await runAndPrint(() => sdk.data.coingecko.priceAtDate(input));
537
682
  });
538
683
  });
539
684
  registerCommand(program2, ["data", "coinglass", "funding-rates"], "Auto-generated from sdk.data.coinglass.fundingRates", (cmd) => {
@@ -543,7 +688,7 @@ function registerGeneratedCommands(program2, sdk2) {
543
688
  "symbol": opts["symbol"]
544
689
  };
545
690
  if (opts["symbol"] === void 0) delete input["symbol"];
546
- await runAndPrint(() => sdk2.data.coinglass.fundingRates(input));
691
+ await runAndPrint(() => sdk.data.coinglass.fundingRates(input));
547
692
  });
548
693
  });
549
694
  registerCommand(program2, ["data", "coinglass", "open-interest"], "Auto-generated from sdk.data.coinglass.openInterest", (cmd) => {
@@ -553,7 +698,7 @@ function registerGeneratedCommands(program2, sdk2) {
553
698
  "symbol": opts["symbol"]
554
699
  };
555
700
  if (opts["symbol"] === void 0) delete input["symbol"];
556
- await runAndPrint(() => sdk2.data.coinglass.openInterest(input));
701
+ await runAndPrint(() => sdk.data.coinglass.openInterest(input));
557
702
  });
558
703
  });
559
704
  registerCommand(program2, ["data", "coinglass", "liquidations"], "Auto-generated from sdk.data.coinglass.liquidations", (cmd) => {
@@ -563,7 +708,7 @@ function registerGeneratedCommands(program2, sdk2) {
563
708
  "symbol": opts["symbol"]
564
709
  };
565
710
  if (opts["symbol"] === void 0) delete input["symbol"];
566
- await runAndPrint(() => sdk2.data.coinglass.liquidations(input));
711
+ await runAndPrint(() => sdk.data.coinglass.liquidations(input));
567
712
  });
568
713
  });
569
714
  registerCommand(program2, ["data", "coinglass", "long-short-ratio"], "Auto-generated from sdk.data.coinglass.longShortRatio", (cmd) => {
@@ -576,17 +721,17 @@ function registerGeneratedCommands(program2, sdk2) {
576
721
  };
577
722
  if (opts["symbol"] === void 0) delete input["symbol"];
578
723
  if (opts["range"] === void 0) delete input["range"];
579
- await runAndPrint(() => sdk2.data.coinglass.longShortRatio(input));
724
+ await runAndPrint(() => sdk.data.coinglass.longShortRatio(input));
580
725
  });
581
726
  });
582
727
  registerCommand(program2, ["data", "coinglass", "supported-coins"], "Auto-generated from sdk.data.coinglass.supportedCoins", (cmd) => {
583
728
  cmd.action(async () => {
584
- await runAndPrint(() => sdk2.data.coinglass.supportedCoins());
729
+ await runAndPrint(() => sdk.data.coinglass.supportedCoins());
585
730
  });
586
731
  });
587
732
  registerCommand(program2, ["data", "coinglass", "supported-exchanges"], "Auto-generated from sdk.data.coinglass.supportedExchanges", (cmd) => {
588
733
  cmd.action(async () => {
589
- await runAndPrint(() => sdk2.data.coinglass.supportedExchanges());
734
+ await runAndPrint(() => sdk.data.coinglass.supportedExchanges());
590
735
  });
591
736
  });
592
737
  registerCommand(program2, ["data", "coinglass", "exchange-pairs"], "Auto-generated from sdk.data.coinglass.exchangePairs", (cmd) => {
@@ -599,7 +744,7 @@ function registerGeneratedCommands(program2, sdk2) {
599
744
  };
600
745
  if (opts["symbol"] === void 0) delete input["symbol"];
601
746
  if (opts["exchange"] === void 0) delete input["exchange"];
602
- await runAndPrint(() => sdk2.data.coinglass.exchangePairs(input));
747
+ await runAndPrint(() => sdk.data.coinglass.exchangePairs(input));
603
748
  });
604
749
  });
605
750
  registerCommand(program2, ["data", "coinglass", "liquidations-by-exchange"], "Auto-generated from sdk.data.coinglass.liquidationsByExchange", (cmd) => {
@@ -612,7 +757,7 @@ function registerGeneratedCommands(program2, sdk2) {
612
757
  };
613
758
  if (opts["symbol"] === void 0) delete input["symbol"];
614
759
  if (opts["range"] === void 0) delete input["range"];
615
- await runAndPrint(() => sdk2.data.coinglass.liquidationsByExchange(input));
760
+ await runAndPrint(() => sdk.data.coinglass.liquidationsByExchange(input));
616
761
  });
617
762
  });
618
763
  registerCommand(program2, ["data", "coinglass", "funding-rate-history"], "Auto-generated from sdk.data.coinglass.fundingRateHistory", (cmd) => {
@@ -637,7 +782,7 @@ function registerGeneratedCommands(program2, sdk2) {
637
782
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
638
783
  if (opts["startTime"] === void 0 ? void 0 : Number(opts["startTime"]) === void 0) delete input["startTime"];
639
784
  if (opts["endTime"] === void 0 ? void 0 : Number(opts["endTime"]) === void 0) delete input["endTime"];
640
- await runAndPrint(() => sdk2.data.coinglass.fundingRateHistory(input));
785
+ await runAndPrint(() => sdk.data.coinglass.fundingRateHistory(input));
641
786
  });
642
787
  });
643
788
  registerCommand(program2, ["data", "coinglass", "open-interest-history"], "Auto-generated from sdk.data.coinglass.openInterestHistory", (cmd) => {
@@ -662,7 +807,7 @@ function registerGeneratedCommands(program2, sdk2) {
662
807
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
663
808
  if (opts["startTime"] === void 0 ? void 0 : Number(opts["startTime"]) === void 0) delete input["startTime"];
664
809
  if (opts["endTime"] === void 0 ? void 0 : Number(opts["endTime"]) === void 0) delete input["endTime"];
665
- await runAndPrint(() => sdk2.data.coinglass.openInterestHistory(input));
810
+ await runAndPrint(() => sdk.data.coinglass.openInterestHistory(input));
666
811
  });
667
812
  });
668
813
  registerCommand(program2, ["data", "coinglass", "liquidation-history"], "Auto-generated from sdk.data.coinglass.liquidationHistory", (cmd) => {
@@ -687,7 +832,7 @@ function registerGeneratedCommands(program2, sdk2) {
687
832
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
688
833
  if (opts["startTime"] === void 0 ? void 0 : Number(opts["startTime"]) === void 0) delete input["startTime"];
689
834
  if (opts["endTime"] === void 0 ? void 0 : Number(opts["endTime"]) === void 0) delete input["endTime"];
690
- await runAndPrint(() => sdk2.data.coinglass.liquidationHistory(input));
835
+ await runAndPrint(() => sdk.data.coinglass.liquidationHistory(input));
691
836
  });
692
837
  });
693
838
  registerCommand(program2, ["data", "coinglass", "long-short-ratio-history"], "Auto-generated from sdk.data.coinglass.longShortRatioHistory", (cmd) => {
@@ -712,7 +857,7 @@ function registerGeneratedCommands(program2, sdk2) {
712
857
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
713
858
  if (opts["startTime"] === void 0 ? void 0 : Number(opts["startTime"]) === void 0) delete input["startTime"];
714
859
  if (opts["endTime"] === void 0 ? void 0 : Number(opts["endTime"]) === void 0) delete input["endTime"];
715
- await runAndPrint(() => sdk2.data.coinglass.longShortRatioHistory(input));
860
+ await runAndPrint(() => sdk.data.coinglass.longShortRatioHistory(input));
716
861
  });
717
862
  });
718
863
  registerCommand(program2, ["data", "composite", "market-snapshot"], "Auto-generated from sdk.data.composite.marketSnapshot", (cmd) => {
@@ -725,7 +870,7 @@ function registerGeneratedCommands(program2, sdk2) {
725
870
  };
726
871
  if (opts["coingeckoId"] === void 0) delete input["coingeckoId"];
727
872
  if (opts["coinglassSymbol"] === void 0) delete input["coinglassSymbol"];
728
- await runAndPrint(() => sdk2.data.composite.marketSnapshot(input));
873
+ await runAndPrint(() => sdk.data.composite.marketSnapshot(input));
729
874
  });
730
875
  });
731
876
  registerCommand(program2, ["data", "composite", "alpha-radar"], "Auto-generated from sdk.data.composite.alphaRadar", (cmd) => {
@@ -735,7 +880,7 @@ function registerGeneratedCommands(program2, sdk2) {
735
880
  "symbol": opts["symbol"]
736
881
  };
737
882
  if (opts["symbol"] === void 0) delete input["symbol"];
738
- await runAndPrint(() => sdk2.data.composite.alphaRadar(input));
883
+ await runAndPrint(() => sdk.data.composite.alphaRadar(input));
739
884
  });
740
885
  });
741
886
  registerCommand(program2, ["data", "composite", "wallet-xray"], "Auto-generated from sdk.data.composite.walletXray", (cmd) => {
@@ -748,12 +893,12 @@ function registerGeneratedCommands(program2, sdk2) {
748
893
  };
749
894
  if (opts["address"] === void 0) delete input["address"];
750
895
  if (opts["chain"] === void 0) delete input["chain"];
751
- await runAndPrint(() => sdk2.data.composite.walletXray(input));
896
+ await runAndPrint(() => sdk.data.composite.walletXray(input));
752
897
  });
753
898
  });
754
899
  registerCommand(program2, ["data", "composite", "health"], "Auto-generated from sdk.data.composite.health", (cmd) => {
755
900
  cmd.action(async () => {
756
- await runAndPrint(() => sdk2.data.composite.health());
901
+ await runAndPrint(() => sdk.data.composite.health());
757
902
  });
758
903
  });
759
904
  registerCommand(program2, ["data", "cryptonews", "news"], "Auto-generated from sdk.data.cryptonews.news", (cmd) => {
@@ -784,7 +929,7 @@ function registerGeneratedCommands(program2, sdk2) {
784
929
  if (opts["source"] === void 0) delete input["source"];
785
930
  if (opts["date"] === void 0) delete input["date"];
786
931
  if (opts["sort"] === void 0) delete input["sort"];
787
- await runAndPrint(() => sdk2.data.cryptonews.news(input));
932
+ await runAndPrint(() => sdk.data.cryptonews.news(input));
788
933
  });
789
934
  });
790
935
  registerCommand(program2, ["data", "cryptonews", "sentiment"], "Auto-generated from sdk.data.cryptonews.sentiment", (cmd) => {
@@ -797,7 +942,7 @@ function registerGeneratedCommands(program2, sdk2) {
797
942
  };
798
943
  if (opts["tickers"] === void 0) delete input["tickers"];
799
944
  if (opts["date"] === void 0) delete input["date"];
800
- await runAndPrint(() => sdk2.data.cryptonews.sentiment(input));
945
+ await runAndPrint(() => sdk.data.cryptonews.sentiment(input));
801
946
  });
802
947
  });
803
948
  registerCommand(program2, ["data", "cryptonews", "trending"], "Auto-generated from sdk.data.cryptonews.trending", (cmd) => {
@@ -807,7 +952,7 @@ function registerGeneratedCommands(program2, sdk2) {
807
952
  "date": opts["date"]
808
953
  };
809
954
  if (opts["date"] === void 0) delete input["date"];
810
- await runAndPrint(() => sdk2.data.cryptonews.trending(input));
955
+ await runAndPrint(() => sdk.data.cryptonews.trending(input));
811
956
  });
812
957
  });
813
958
  registerCommand(program2, ["data", "defillama", "tvl"], "Auto-generated from sdk.data.defillama.tvl", (cmd) => {
@@ -823,7 +968,7 @@ function registerGeneratedCommands(program2, sdk2) {
823
968
  if (opts["protocol"] === void 0) delete input["protocol"];
824
969
  if (opts["chain"] === void 0) delete input["chain"];
825
970
  if (opts["historical"] === void 0 ? void 0 : Boolean(opts["historical"]) === void 0) delete input["historical"];
826
- await runAndPrint(() => sdk2.data.defillama.tvl(input));
971
+ await runAndPrint(() => sdk.data.defillama.tvl(input));
827
972
  });
828
973
  });
829
974
  registerCommand(program2, ["data", "defillama", "yields"], "Auto-generated from sdk.data.defillama.yields", (cmd) => {
@@ -845,7 +990,7 @@ function registerGeneratedCommands(program2, sdk2) {
845
990
  if (opts["protocol"] === void 0) delete input["protocol"];
846
991
  if (opts["minTvl"] === void 0 ? void 0 : Number(opts["minTvl"]) === void 0) delete input["minTvl"];
847
992
  if (opts["poolId"] === void 0) delete input["poolId"];
848
- await runAndPrint(() => sdk2.data.defillama.yields(input));
993
+ await runAndPrint(() => sdk.data.defillama.yields(input));
849
994
  });
850
995
  });
851
996
  registerCommand(program2, ["data", "defillama", "protocol-fees"], "Auto-generated from sdk.data.defillama.protocolFees", (cmd) => {
@@ -858,7 +1003,7 @@ function registerGeneratedCommands(program2, sdk2) {
858
1003
  };
859
1004
  if (opts["protocol"] === void 0) delete input["protocol"];
860
1005
  if (opts["dataType"] === void 0) delete input["dataType"];
861
- await runAndPrint(() => sdk2.data.defillama.protocolFees(input));
1006
+ await runAndPrint(() => sdk.data.defillama.protocolFees(input));
862
1007
  });
863
1008
  });
864
1009
  registerCommand(program2, ["data", "defillama", "dex-volumes"], "Auto-generated from sdk.data.defillama.dexVolumes", (cmd) => {
@@ -871,7 +1016,7 @@ function registerGeneratedCommands(program2, sdk2) {
871
1016
  };
872
1017
  if (opts["protocol"] === void 0) delete input["protocol"];
873
1018
  if (opts["chain"] === void 0) delete input["chain"];
874
- await runAndPrint(() => sdk2.data.defillama.dexVolumes(input));
1019
+ await runAndPrint(() => sdk.data.defillama.dexVolumes(input));
875
1020
  });
876
1021
  });
877
1022
  registerCommand(program2, ["data", "defillama", "stablecoins"], "Auto-generated from sdk.data.defillama.stablecoins", (cmd) => {
@@ -884,7 +1029,7 @@ function registerGeneratedCommands(program2, sdk2) {
884
1029
  };
885
1030
  if (opts["chain"] === void 0) delete input["chain"];
886
1031
  if (opts["stablecoinId"] === void 0) delete input["stablecoinId"];
887
- await runAndPrint(() => sdk2.data.defillama.stablecoins(input));
1032
+ await runAndPrint(() => sdk.data.defillama.stablecoins(input));
888
1033
  });
889
1034
  });
890
1035
  registerCommand(program2, ["data", "defillama", "bridges"], "Auto-generated from sdk.data.defillama.bridges", (cmd) => {
@@ -897,12 +1042,12 @@ function registerGeneratedCommands(program2, sdk2) {
897
1042
  };
898
1043
  if (opts["chain"] === void 0) delete input["chain"];
899
1044
  if (opts["bridgeId"] === void 0 ? void 0 : Number(opts["bridgeId"]) === void 0) delete input["bridgeId"];
900
- await runAndPrint(() => sdk2.data.defillama.bridges(input));
1045
+ await runAndPrint(() => sdk.data.defillama.bridges(input));
901
1046
  });
902
1047
  });
903
1048
  registerCommand(program2, ["data", "defillama", "bridges-list"], "Auto-generated from sdk.data.defillama.bridgesList", (cmd) => {
904
1049
  cmd.action(async () => {
905
- await runAndPrint(() => sdk2.data.defillama.bridgesList());
1050
+ await runAndPrint(() => sdk.data.defillama.bridgesList());
906
1051
  });
907
1052
  });
908
1053
  registerCommand(program2, ["data", "geckoterminal", "token-pools"], "Auto-generated from sdk.data.geckoterminal.tokenPools", (cmd) => {
@@ -918,7 +1063,7 @@ function registerGeneratedCommands(program2, sdk2) {
918
1063
  if (opts["network"] === void 0) delete input["network"];
919
1064
  if (opts["tokenAddress"] === void 0) delete input["tokenAddress"];
920
1065
  if (opts["page"] === void 0 ? void 0 : Number(opts["page"]) === void 0) delete input["page"];
921
- await runAndPrint(() => sdk2.data.geckoterminal.tokenPools(input));
1066
+ await runAndPrint(() => sdk.data.geckoterminal.tokenPools(input));
922
1067
  });
923
1068
  });
924
1069
  registerCommand(program2, ["data", "geckoterminal", "pool-ohlcv"], "Auto-generated from sdk.data.geckoterminal.poolOhlcv", (cmd) => {
@@ -943,7 +1088,7 @@ function registerGeneratedCommands(program2, sdk2) {
943
1088
  if (opts["aggregate"] === void 0 ? void 0 : Number(opts["aggregate"]) === void 0) delete input["aggregate"];
944
1089
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
945
1090
  if (opts["beforeTimestamp"] === void 0 ? void 0 : Number(opts["beforeTimestamp"]) === void 0) delete input["beforeTimestamp"];
946
- await runAndPrint(() => sdk2.data.geckoterminal.poolOhlcv(input));
1091
+ await runAndPrint(() => sdk.data.geckoterminal.poolOhlcv(input));
947
1092
  });
948
1093
  });
949
1094
  registerCommand(program2, ["data", "geckoterminal", "pool-trades"], "Auto-generated from sdk.data.geckoterminal.poolTrades", (cmd) => {
@@ -959,12 +1104,12 @@ function registerGeneratedCommands(program2, sdk2) {
959
1104
  if (opts["network"] === void 0) delete input["network"];
960
1105
  if (opts["poolAddress"] === void 0) delete input["poolAddress"];
961
1106
  if (opts["tradeVolumeInUsdGreaterThan"] === void 0 ? void 0 : Number(opts["tradeVolumeInUsdGreaterThan"]) === void 0) delete input["tradeVolumeInUsdGreaterThan"];
962
- await runAndPrint(() => sdk2.data.geckoterminal.poolTrades(input));
1107
+ await runAndPrint(() => sdk.data.geckoterminal.poolTrades(input));
963
1108
  });
964
1109
  });
965
1110
  registerCommand(program2, ["data", "geckoterminal", "trending-pools"], "Auto-generated from sdk.data.geckoterminal.trendingPools", (cmd) => {
966
1111
  cmd.action(async () => {
967
- await runAndPrint(() => sdk2.data.geckoterminal.trendingPools());
1112
+ await runAndPrint(() => sdk.data.geckoterminal.trendingPools());
968
1113
  });
969
1114
  });
970
1115
  registerCommand(program2, ["data", "geckoterminal", "token-info"], "Auto-generated from sdk.data.geckoterminal.tokenInfo", (cmd) => {
@@ -980,7 +1125,7 @@ function registerGeneratedCommands(program2, sdk2) {
980
1125
  if (opts["network"] === void 0) delete input["network"];
981
1126
  if (opts["addresses"] === void 0 ? void 0 : String(opts["addresses"]).split(",") === void 0) delete input["addresses"];
982
1127
  if (opts["includeTopPools"] === void 0 ? void 0 : Boolean(opts["includeTopPools"]) === void 0) delete input["includeTopPools"];
983
- await runAndPrint(() => sdk2.data.geckoterminal.tokenInfo(input));
1128
+ await runAndPrint(() => sdk.data.geckoterminal.tokenInfo(input));
984
1129
  });
985
1130
  });
986
1131
  registerCommand(program2, ["data", "kaito", "entities"], "Auto-generated from sdk.data.kaito.entities", (cmd) => {
@@ -993,7 +1138,7 @@ function registerGeneratedCommands(program2, sdk2) {
993
1138
  };
994
1139
  if (opts["query"] === void 0) delete input["query"];
995
1140
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
996
- await runAndPrint(() => sdk2.data.kaito.entities(input));
1141
+ await runAndPrint(() => sdk.data.kaito.entities(input));
997
1142
  });
998
1143
  });
999
1144
  registerCommand(program2, ["data", "kaito", "narratives"], "Auto-generated from sdk.data.kaito.narratives", (cmd) => {
@@ -1006,7 +1151,7 @@ function registerGeneratedCommands(program2, sdk2) {
1006
1151
  };
1007
1152
  if (opts["query"] === void 0) delete input["query"];
1008
1153
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1009
- await runAndPrint(() => sdk2.data.kaito.narratives(input));
1154
+ await runAndPrint(() => sdk.data.kaito.narratives(input));
1010
1155
  });
1011
1156
  });
1012
1157
  registerCommand(program2, ["data", "kaito", "search"], "Auto-generated from sdk.data.kaito.search", (cmd) => {
@@ -1019,7 +1164,7 @@ function registerGeneratedCommands(program2, sdk2) {
1019
1164
  };
1020
1165
  if (opts["query"] === void 0) delete input["query"];
1021
1166
  if (opts["size"] === void 0 ? void 0 : Number(opts["size"]) === void 0) delete input["size"];
1022
- await runAndPrint(() => sdk2.data.kaito.search(input));
1167
+ await runAndPrint(() => sdk.data.kaito.search(input));
1023
1168
  });
1024
1169
  });
1025
1170
  registerCommand(program2, ["data", "kaito", "advanced-search"], "Auto-generated from sdk.data.kaito.advancedSearch", (cmd) => {
@@ -1116,7 +1261,7 @@ function registerGeneratedCommands(program2, sdk2) {
1116
1261
  if (opts["max_retweet_count"] === void 0 ? void 0 : Number(opts["max_retweet_count"]) === void 0) delete input["max_retweet_count"];
1117
1262
  if (opts["min_quote_count"] === void 0 ? void 0 : Number(opts["min_quote_count"]) === void 0) delete input["min_quote_count"];
1118
1263
  if (opts["max_quote_count"] === void 0 ? void 0 : Number(opts["max_quote_count"]) === void 0) delete input["max_quote_count"];
1119
- await runAndPrint(() => sdk2.data.kaito.advancedSearch(input));
1264
+ await runAndPrint(() => sdk.data.kaito.advancedSearch(input));
1120
1265
  });
1121
1266
  });
1122
1267
  registerCommand(program2, ["data", "kaito", "tweet-engagement"], "Auto-generated from sdk.data.kaito.tweetEngagement", (cmd) => {
@@ -1126,7 +1271,7 @@ function registerGeneratedCommands(program2, sdk2) {
1126
1271
  "tweet_id": opts["tweet_id"]
1127
1272
  };
1128
1273
  if (opts["tweet_id"] === void 0) delete input["tweet_id"];
1129
- await runAndPrint(() => sdk2.data.kaito.tweetEngagement(input));
1274
+ await runAndPrint(() => sdk.data.kaito.tweetEngagement(input));
1130
1275
  });
1131
1276
  });
1132
1277
  registerCommand(program2, ["data", "kaito", "feeds"], "Auto-generated from sdk.data.kaito.feeds", (cmd) => {
@@ -1145,7 +1290,7 @@ function registerGeneratedCommands(program2, sdk2) {
1145
1290
  if (opts["min_created_at"] === void 0) delete input["min_created_at"];
1146
1291
  if (opts["max_created_at"] === void 0) delete input["max_created_at"];
1147
1292
  if (opts["size"] === void 0 ? void 0 : Number(opts["size"]) === void 0) delete input["size"];
1148
- await runAndPrint(() => sdk2.data.kaito.feeds(input));
1293
+ await runAndPrint(() => sdk.data.kaito.feeds(input));
1149
1294
  });
1150
1295
  });
1151
1296
  registerCommand(program2, ["data", "kaito", "sentiment"], "Auto-generated from sdk.data.kaito.sentiment", (cmd) => {
@@ -1176,7 +1321,7 @@ function registerGeneratedCommands(program2, sdk2) {
1176
1321
  if (opts["gaussian"] === void 0 ? void 0 : Boolean(opts["gaussian"]) === void 0) delete input["gaussian"];
1177
1322
  if (opts["language"] === void 0) delete input["language"];
1178
1323
  if (opts["version"] === void 0) delete input["version"];
1179
- await runAndPrint(() => sdk2.data.kaito.sentiment(input));
1324
+ await runAndPrint(() => sdk.data.kaito.sentiment(input));
1180
1325
  });
1181
1326
  });
1182
1327
  registerCommand(program2, ["data", "kaito", "engagement"], "Auto-generated from sdk.data.kaito.engagement", (cmd) => {
@@ -1195,7 +1340,7 @@ function registerGeneratedCommands(program2, sdk2) {
1195
1340
  if (opts["keyword"] === void 0) delete input["keyword"];
1196
1341
  if (opts["start_date"] === void 0) delete input["start_date"];
1197
1342
  if (opts["end_date"] === void 0) delete input["end_date"];
1198
- await runAndPrint(() => sdk2.data.kaito.engagement(input));
1343
+ await runAndPrint(() => sdk.data.kaito.engagement(input));
1199
1344
  });
1200
1345
  });
1201
1346
  registerCommand(program2, ["data", "kaito", "mentions"], "Auto-generated from sdk.data.kaito.mentions", (cmd) => {
@@ -1214,7 +1359,7 @@ function registerGeneratedCommands(program2, sdk2) {
1214
1359
  if (opts["keyword"] === void 0) delete input["keyword"];
1215
1360
  if (opts["start_date"] === void 0) delete input["start_date"];
1216
1361
  if (opts["end_date"] === void 0) delete input["end_date"];
1217
- await runAndPrint(() => sdk2.data.kaito.mentions(input));
1362
+ await runAndPrint(() => sdk.data.kaito.mentions(input));
1218
1363
  });
1219
1364
  });
1220
1365
  registerCommand(program2, ["data", "kaito", "mindshare"], "Auto-generated from sdk.data.kaito.mindshare", (cmd) => {
@@ -1233,7 +1378,7 @@ function registerGeneratedCommands(program2, sdk2) {
1233
1378
  if (opts["start_date"] === void 0) delete input["start_date"];
1234
1379
  if (opts["end_date"] === void 0) delete input["end_date"];
1235
1380
  if (opts["scope"] === void 0) delete input["scope"];
1236
- await runAndPrint(() => sdk2.data.kaito.mindshare(input));
1381
+ await runAndPrint(() => sdk.data.kaito.mindshare(input));
1237
1382
  });
1238
1383
  });
1239
1384
  registerCommand(program2, ["data", "kaito", "mindshare-arena"], "Auto-generated from sdk.data.kaito.mindshareArena", (cmd) => {
@@ -1261,7 +1406,7 @@ function registerGeneratedCommands(program2, sdk2) {
1261
1406
  if (opts["ex_official"] === void 0 ? void 0 : Boolean(opts["ex_official"]) === void 0) delete input["ex_official"];
1262
1407
  if (opts["weighted"] === void 0 ? void 0 : Boolean(opts["weighted"]) === void 0) delete input["weighted"];
1263
1408
  if (opts["nft"] === void 0 ? void 0 : Boolean(opts["nft"]) === void 0) delete input["nft"];
1264
- await runAndPrint(() => sdk2.data.kaito.mindshareArena(input));
1409
+ await runAndPrint(() => sdk.data.kaito.mindshareArena(input));
1265
1410
  });
1266
1411
  });
1267
1412
  registerCommand(program2, ["data", "kaito", "mindshare-delta"], "Auto-generated from sdk.data.kaito.mindshareDelta", (cmd) => {
@@ -1277,7 +1422,7 @@ function registerGeneratedCommands(program2, sdk2) {
1277
1422
  if (opts["duration"] === void 0) delete input["duration"];
1278
1423
  if (opts["sort_type"] === void 0) delete input["sort_type"];
1279
1424
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1280
- await runAndPrint(() => sdk2.data.kaito.mindshareDelta(input));
1425
+ await runAndPrint(() => sdk.data.kaito.mindshareDelta(input));
1281
1426
  });
1282
1427
  });
1283
1428
  registerCommand(program2, ["data", "kaito", "mindshare-narrative"], "Auto-generated from sdk.data.kaito.mindshareNarrative", (cmd) => {
@@ -1293,7 +1438,7 @@ function registerGeneratedCommands(program2, sdk2) {
1293
1438
  if (opts["narrative"] === void 0) delete input["narrative"];
1294
1439
  if (opts["start_date"] === void 0) delete input["start_date"];
1295
1440
  if (opts["end_date"] === void 0) delete input["end_date"];
1296
- await runAndPrint(() => sdk2.data.kaito.mindshareNarrative(input));
1441
+ await runAndPrint(() => sdk.data.kaito.mindshareNarrative(input));
1297
1442
  });
1298
1443
  });
1299
1444
  registerCommand(program2, ["data", "kaito", "kol-mindshare"], "Auto-generated from sdk.data.kaito.kolMindshare", (cmd) => {
@@ -1309,7 +1454,7 @@ function registerGeneratedCommands(program2, sdk2) {
1309
1454
  if (opts["token"] === void 0) delete input["token"];
1310
1455
  if (opts["duration"] === void 0) delete input["duration"];
1311
1456
  if (opts["top_n"] === void 0 ? void 0 : Number(opts["top_n"]) === void 0) delete input["top_n"];
1312
- await runAndPrint(() => sdk2.data.kaito.kolMindshare(input));
1457
+ await runAndPrint(() => sdk.data.kaito.kolMindshare(input));
1313
1458
  });
1314
1459
  });
1315
1460
  registerCommand(program2, ["data", "kaito", "events"], "Auto-generated from sdk.data.kaito.events", (cmd) => {
@@ -1343,7 +1488,7 @@ function registerGeneratedCommands(program2, sdk2) {
1343
1488
  if (opts["sources"] === void 0) delete input["sources"];
1344
1489
  if (opts["sort_by"] === void 0) delete input["sort_by"];
1345
1490
  if (opts["sort_order"] === void 0) delete input["sort_order"];
1346
- await runAndPrint(() => sdk2.data.kaito.events(input));
1491
+ await runAndPrint(() => sdk.data.kaito.events(input));
1347
1492
  });
1348
1493
  });
1349
1494
  registerCommand(program2, ["data", "kaito", "twitter-user-metadata"], "Auto-generated from sdk.data.kaito.twitterUserMetadata", (cmd) => {
@@ -1353,7 +1498,7 @@ function registerGeneratedCommands(program2, sdk2) {
1353
1498
  "user_id": opts["user_id"]
1354
1499
  };
1355
1500
  if (opts["user_id"] === void 0) delete input["user_id"];
1356
- await runAndPrint(() => sdk2.data.kaito.twitterUserMetadata(input));
1501
+ await runAndPrint(() => sdk.data.kaito.twitterUserMetadata(input));
1357
1502
  });
1358
1503
  });
1359
1504
  registerCommand(program2, ["data", "kaito", "market-smart-following"], "Auto-generated from sdk.data.kaito.marketSmartFollowing", (cmd) => {
@@ -1390,7 +1535,7 @@ function registerGeneratedCommands(program2, sdk2) {
1390
1535
  if (opts["user_tag_individual_or_organization"] === void 0) delete input["user_tag_individual_or_organization"];
1391
1536
  if (opts["user_type"] === void 0) delete input["user_type"];
1392
1537
  if (opts["user_web3_relevance"] === void 0) delete input["user_web3_relevance"];
1393
- await runAndPrint(() => sdk2.data.kaito.marketSmartFollowing(input));
1538
+ await runAndPrint(() => sdk.data.kaito.marketSmartFollowing(input));
1394
1539
  });
1395
1540
  });
1396
1541
  registerCommand(program2, ["data", "kaito", "smart-followers"], "Auto-generated from sdk.data.kaito.smartFollowers", (cmd) => {
@@ -1409,7 +1554,7 @@ function registerGeneratedCommands(program2, sdk2) {
1409
1554
  if (opts["username"] === void 0) delete input["username"];
1410
1555
  if (opts["date"] === void 0) delete input["date"];
1411
1556
  if (opts["mode"] === void 0) delete input["mode"];
1412
- await runAndPrint(() => sdk2.data.kaito.smartFollowers(input));
1557
+ await runAndPrint(() => sdk.data.kaito.smartFollowers(input));
1413
1558
  });
1414
1559
  });
1415
1560
  registerCommand(program2, ["data", "kaito", "smart-following"], "Auto-generated from sdk.data.kaito.smartFollowing", (cmd) => {
@@ -1425,7 +1570,7 @@ function registerGeneratedCommands(program2, sdk2) {
1425
1570
  if (opts["user_id"] === void 0) delete input["user_id"];
1426
1571
  if (opts["username"] === void 0) delete input["username"];
1427
1572
  if (opts["category"] === void 0) delete input["category"];
1428
- await runAndPrint(() => sdk2.data.kaito.smartFollowing(input));
1573
+ await runAndPrint(() => sdk.data.kaito.smartFollowing(input));
1429
1574
  });
1430
1575
  });
1431
1576
  registerCommand(program2, ["data", "moralis", "wallet"], "Auto-generated from sdk.data.moralis.wallet", (cmd) => {
@@ -1441,7 +1586,7 @@ function registerGeneratedCommands(program2, sdk2) {
1441
1586
  if (opts["address"] === void 0) delete input["address"];
1442
1587
  if (opts["chain"] === void 0) delete input["chain"];
1443
1588
  if (opts["toBlock"] === void 0 ? void 0 : Number(opts["toBlock"]) === void 0) delete input["toBlock"];
1444
- await runAndPrint(() => sdk2.data.moralis.wallet(input));
1589
+ await runAndPrint(() => sdk.data.moralis.wallet(input));
1445
1590
  });
1446
1591
  });
1447
1592
  registerCommand(program2, ["data", "moralis", "transfers"], "Auto-generated from sdk.data.moralis.transfers", (cmd) => {
@@ -1466,7 +1611,7 @@ function registerGeneratedCommands(program2, sdk2) {
1466
1611
  if (opts["fromDate"] === void 0) delete input["fromDate"];
1467
1612
  if (opts["toDate"] === void 0) delete input["toDate"];
1468
1613
  if (opts["cursor"] === void 0) delete input["cursor"];
1469
- await runAndPrint(() => sdk2.data.moralis.transfers(input));
1614
+ await runAndPrint(() => sdk.data.moralis.transfers(input));
1470
1615
  });
1471
1616
  });
1472
1617
  registerCommand(program2, ["data", "moralis", "defi-positions"], "Auto-generated from sdk.data.moralis.defiPositions", (cmd) => {
@@ -1479,7 +1624,7 @@ function registerGeneratedCommands(program2, sdk2) {
1479
1624
  };
1480
1625
  if (opts["address"] === void 0) delete input["address"];
1481
1626
  if (opts["chain"] === void 0) delete input["chain"];
1482
- await runAndPrint(() => sdk2.data.moralis.defiPositions(input));
1627
+ await runAndPrint(() => sdk.data.moralis.defiPositions(input));
1483
1628
  });
1484
1629
  });
1485
1630
  registerCommand(program2, ["data", "moralis", "nft-holdings"], "Auto-generated from sdk.data.moralis.nftHoldings", (cmd) => {
@@ -1498,7 +1643,7 @@ function registerGeneratedCommands(program2, sdk2) {
1498
1643
  if (opts["chain"] === void 0) delete input["chain"];
1499
1644
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1500
1645
  if (opts["cursor"] === void 0) delete input["cursor"];
1501
- await runAndPrint(() => sdk2.data.moralis.nftHoldings(input));
1646
+ await runAndPrint(() => sdk.data.moralis.nftHoldings(input));
1502
1647
  });
1503
1648
  });
1504
1649
  registerCommand(program2, ["data", "noya", "tokens-search"], "Auto-generated from sdk.data.noya.tokensSearch", (cmd) => {
@@ -1532,7 +1677,7 @@ function registerGeneratedCommands(program2, sdk2) {
1532
1677
  if (opts["minMarketCap"] === void 0 ? void 0 : Number(opts["minMarketCap"]) === void 0) delete input["minMarketCap"];
1533
1678
  if (opts["maxMarketCap"] === void 0 ? void 0 : Number(opts["maxMarketCap"]) === void 0) delete input["maxMarketCap"];
1534
1679
  if (opts["grades"] === void 0) delete input["grades"];
1535
- await runAndPrint(() => sdk2.data.noya.tokensSearch(input));
1680
+ await runAndPrint(() => sdk.data.noya.tokensSearch(input));
1536
1681
  });
1537
1682
  });
1538
1683
  registerCommand(program2, ["data", "noya", "tokens-similar"], "Auto-generated from sdk.data.noya.tokensSimilar", (cmd) => {
@@ -1545,7 +1690,7 @@ function registerGeneratedCommands(program2, sdk2) {
1545
1690
  };
1546
1691
  if (opts["tokenId"] === void 0) delete input["tokenId"];
1547
1692
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1548
- await runAndPrint(() => sdk2.data.noya.tokensSimilar(input));
1693
+ await runAndPrint(() => sdk.data.noya.tokensSimilar(input));
1549
1694
  });
1550
1695
  });
1551
1696
  registerCommand(program2, ["data", "noya", "tokens-recommendations"], "Auto-generated from sdk.data.noya.tokensRecommendations", (cmd) => {
@@ -1567,7 +1712,7 @@ function registerGeneratedCommands(program2, sdk2) {
1567
1712
  if (opts["maxMarketCap"] === void 0 ? void 0 : Number(opts["maxMarketCap"]) === void 0) delete input["maxMarketCap"];
1568
1713
  if (opts["query"] === void 0) delete input["query"];
1569
1714
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1570
- await runAndPrint(() => sdk2.data.noya.tokensRecommendations(input));
1715
+ await runAndPrint(() => sdk.data.noya.tokensRecommendations(input));
1571
1716
  });
1572
1717
  });
1573
1718
  registerCommand(program2, ["data", "noya", "tokens-top-score"], "Auto-generated from sdk.data.noya.tokensTopScore", (cmd) => {
@@ -1589,17 +1734,17 @@ function registerGeneratedCommands(program2, sdk2) {
1589
1734
  if (opts["minCatalystScore"] === void 0 ? void 0 : Number(opts["minCatalystScore"]) === void 0) delete input["minCatalystScore"];
1590
1735
  if (opts["minMarketCap"] === void 0 ? void 0 : Number(opts["minMarketCap"]) === void 0) delete input["minMarketCap"];
1591
1736
  if (opts["maxMarketCap"] === void 0 ? void 0 : Number(opts["maxMarketCap"]) === void 0) delete input["maxMarketCap"];
1592
- await runAndPrint(() => sdk2.data.noya.tokensTopScore(input));
1737
+ await runAndPrint(() => sdk.data.noya.tokensTopScore(input));
1593
1738
  });
1594
1739
  });
1595
1740
  registerCommand(program2, ["data", "noya", "tokens-health"], "Auto-generated from sdk.data.noya.tokensHealth", (cmd) => {
1596
1741
  cmd.action(async () => {
1597
- await runAndPrint(() => sdk2.data.noya.tokensHealth());
1742
+ await runAndPrint(() => sdk.data.noya.tokensHealth());
1598
1743
  });
1599
1744
  });
1600
1745
  registerCommand(program2, ["data", "noya", "tokens-versions"], "Auto-generated from sdk.data.noya.tokensVersions", (cmd) => {
1601
1746
  cmd.action(async () => {
1602
- await runAndPrint(() => sdk2.data.noya.tokensVersions());
1747
+ await runAndPrint(() => sdk.data.noya.tokensVersions());
1603
1748
  });
1604
1749
  });
1605
1750
  registerCommand(program2, ["data", "noya", "tokens-by-version"], "Auto-generated from sdk.data.noya.tokensByVersion", (cmd) => {
@@ -1621,7 +1766,7 @@ function registerGeneratedCommands(program2, sdk2) {
1621
1766
  if (opts["risk"] === void 0) delete input["risk"];
1622
1767
  if (opts["sort"] === void 0) delete input["sort"];
1623
1768
  if (opts["order"] === void 0) delete input["order"];
1624
- await runAndPrint(() => sdk2.data.noya.tokensByVersion(input));
1769
+ await runAndPrint(() => sdk.data.noya.tokensByVersion(input));
1625
1770
  });
1626
1771
  });
1627
1772
  registerCommand(program2, ["data", "noya", "tokens-detail"], "Auto-generated from sdk.data.noya.tokensDetail", (cmd) => {
@@ -1634,7 +1779,7 @@ function registerGeneratedCommands(program2, sdk2) {
1634
1779
  };
1635
1780
  if (opts["versionId"] === void 0 ? void 0 : Number(opts["versionId"]) === void 0) delete input["versionId"];
1636
1781
  if (opts["symbol"] === void 0) delete input["symbol"];
1637
- await runAndPrint(() => sdk2.data.noya.tokensDetail(input));
1782
+ await runAndPrint(() => sdk.data.noya.tokensDetail(input));
1638
1783
  });
1639
1784
  });
1640
1785
  registerCommand(program2, ["data", "noya", "polymarket-search"], "Auto-generated from sdk.data.noya.polymarketSearch", (cmd) => {
@@ -1647,7 +1792,7 @@ function registerGeneratedCommands(program2, sdk2) {
1647
1792
  };
1648
1793
  if (opts["q"] === void 0) delete input["q"];
1649
1794
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1650
- await runAndPrint(() => sdk2.data.noya.polymarketSearch(input));
1795
+ await runAndPrint(() => sdk.data.noya.polymarketSearch(input));
1651
1796
  });
1652
1797
  });
1653
1798
  registerCommand(program2, ["data", "noya", "polymarket-similar"], "Auto-generated from sdk.data.noya.polymarketSimilar", (cmd) => {
@@ -1663,7 +1808,7 @@ function registerGeneratedCommands(program2, sdk2) {
1663
1808
  if (opts["conditionId"] === void 0) delete input["conditionId"];
1664
1809
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1665
1810
  if (opts["type"] === void 0) delete input["type"];
1666
- await runAndPrint(() => sdk2.data.noya.polymarketSimilar(input));
1811
+ await runAndPrint(() => sdk.data.noya.polymarketSimilar(input));
1667
1812
  });
1668
1813
  });
1669
1814
  registerCommand(program2, ["data", "noya", "polymarket-recommendations"], "Auto-generated from sdk.data.noya.polymarketRecommendations", (cmd) => {
@@ -1697,7 +1842,7 @@ function registerGeneratedCommands(program2, sdk2) {
1697
1842
  if (opts["minVolume24h"] === void 0 ? void 0 : Number(opts["minVolume24h"]) === void 0) delete input["minVolume24h"];
1698
1843
  if (opts["query"] === void 0) delete input["query"];
1699
1844
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1700
- await runAndPrint(() => sdk2.data.noya.polymarketRecommendations(input));
1845
+ await runAndPrint(() => sdk.data.noya.polymarketRecommendations(input));
1701
1846
  });
1702
1847
  });
1703
1848
  registerCommand(program2, ["data", "noya", "polymarket-top-ev"], "Auto-generated from sdk.data.noya.polymarketTopEv", (cmd) => {
@@ -1716,7 +1861,7 @@ function registerGeneratedCommands(program2, sdk2) {
1716
1861
  if (opts["minLiquidity"] === void 0 ? void 0 : Number(opts["minLiquidity"]) === void 0) delete input["minLiquidity"];
1717
1862
  if (opts["minVolume24h"] === void 0 ? void 0 : Number(opts["minVolume24h"]) === void 0) delete input["minVolume24h"];
1718
1863
  if (opts["tags"] === void 0) delete input["tags"];
1719
- await runAndPrint(() => sdk2.data.noya.polymarketTopEv(input));
1864
+ await runAndPrint(() => sdk.data.noya.polymarketTopEv(input));
1720
1865
  });
1721
1866
  });
1722
1867
  registerCommand(program2, ["data", "noya", "polymarket-filter"], "Auto-generated from sdk.data.noya.polymarketFilter", (cmd) => {
@@ -1744,7 +1889,7 @@ function registerGeneratedCommands(program2, sdk2) {
1744
1889
  if (opts["active"] === void 0 ? void 0 : Boolean(opts["active"]) === void 0) delete input["active"];
1745
1890
  if (opts["minLiquidity"] === void 0 ? void 0 : Number(opts["minLiquidity"]) === void 0) delete input["minLiquidity"];
1746
1891
  if (opts["minVolume24h"] === void 0 ? void 0 : Number(opts["minVolume24h"]) === void 0) delete input["minVolume24h"];
1747
- await runAndPrint(() => sdk2.data.noya.polymarketFilter(input));
1892
+ await runAndPrint(() => sdk.data.noya.polymarketFilter(input));
1748
1893
  });
1749
1894
  });
1750
1895
  registerCommand(program2, ["data", "noya", "polymarket-events"], "Auto-generated from sdk.data.noya.polymarketEvents", (cmd) => {
@@ -1754,7 +1899,7 @@ function registerGeneratedCommands(program2, sdk2) {
1754
1899
  "limit": opts["limit"] === void 0 ? void 0 : Number(opts["limit"])
1755
1900
  };
1756
1901
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1757
- await runAndPrint(() => sdk2.data.noya.polymarketEvents(input));
1902
+ await runAndPrint(() => sdk.data.noya.polymarketEvents(input));
1758
1903
  });
1759
1904
  });
1760
1905
  registerCommand(program2, ["data", "noya", "polymarket-by-event"], "Auto-generated from sdk.data.noya.polymarketByEvent", (cmd) => {
@@ -1767,7 +1912,7 @@ function registerGeneratedCommands(program2, sdk2) {
1767
1912
  };
1768
1913
  if (opts["eventSlug"] === void 0) delete input["eventSlug"];
1769
1914
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1770
- await runAndPrint(() => sdk2.data.noya.polymarketByEvent(input));
1915
+ await runAndPrint(() => sdk.data.noya.polymarketByEvent(input));
1771
1916
  });
1772
1917
  });
1773
1918
  registerCommand(program2, ["data", "noya", "polymarket-tags"], "Auto-generated from sdk.data.noya.polymarketTags", (cmd) => {
@@ -1777,12 +1922,12 @@ function registerGeneratedCommands(program2, sdk2) {
1777
1922
  "type": opts["type"]
1778
1923
  };
1779
1924
  if (opts["type"] === void 0) delete input["type"];
1780
- await runAndPrint(() => sdk2.data.noya.polymarketTags(input));
1925
+ await runAndPrint(() => sdk.data.noya.polymarketTags(input));
1781
1926
  });
1782
1927
  });
1783
1928
  registerCommand(program2, ["data", "noya", "polymarket-health"], "Auto-generated from sdk.data.noya.polymarketHealth", (cmd) => {
1784
1929
  cmd.action(async () => {
1785
- await runAndPrint(() => sdk2.data.noya.polymarketHealth());
1930
+ await runAndPrint(() => sdk.data.noya.polymarketHealth());
1786
1931
  });
1787
1932
  });
1788
1933
  registerCommand(program2, ["data", "noya", "polymarket-analysis-versions"], "Auto-generated from sdk.data.noya.polymarketAnalysisVersions", (cmd) => {
@@ -1795,12 +1940,12 @@ function registerGeneratedCommands(program2, sdk2) {
1795
1940
  };
1796
1941
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1797
1942
  if (opts["offset"] === void 0 ? void 0 : Number(opts["offset"]) === void 0) delete input["offset"];
1798
- await runAndPrint(() => sdk2.data.noya.polymarketAnalysisVersions(input));
1943
+ await runAndPrint(() => sdk.data.noya.polymarketAnalysisVersions(input));
1799
1944
  });
1800
1945
  });
1801
1946
  registerCommand(program2, ["data", "noya", "polymarket-analysis-latest"], "Auto-generated from sdk.data.noya.polymarketAnalysisLatest", (cmd) => {
1802
1947
  cmd.action(async () => {
1803
- await runAndPrint(() => sdk2.data.noya.polymarketAnalysisLatest());
1948
+ await runAndPrint(() => sdk.data.noya.polymarketAnalysisLatest());
1804
1949
  });
1805
1950
  });
1806
1951
  registerCommand(program2, ["data", "noya", "polymarket-analysis-events"], "Auto-generated from sdk.data.noya.polymarketAnalysisEvents", (cmd) => {
@@ -1822,7 +1967,7 @@ function registerGeneratedCommands(program2, sdk2) {
1822
1967
  if (opts["signal"] === void 0) delete input["signal"];
1823
1968
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1824
1969
  if (opts["offset"] === void 0 ? void 0 : Number(opts["offset"]) === void 0) delete input["offset"];
1825
- await runAndPrint(() => sdk2.data.noya.polymarketAnalysisEvents(input));
1970
+ await runAndPrint(() => sdk.data.noya.polymarketAnalysisEvents(input));
1826
1971
  });
1827
1972
  });
1828
1973
  registerCommand(program2, ["data", "noya", "polymarket-analysis-event-history"], "Auto-generated from sdk.data.noya.polymarketAnalysisEventHistory", (cmd) => {
@@ -1832,7 +1977,7 @@ function registerGeneratedCommands(program2, sdk2) {
1832
1977
  "eventId": opts["eventId"]
1833
1978
  };
1834
1979
  if (opts["eventId"] === void 0) delete input["eventId"];
1835
- await runAndPrint(() => sdk2.data.noya.polymarketAnalysisEventHistory(input));
1980
+ await runAndPrint(() => sdk.data.noya.polymarketAnalysisEventHistory(input));
1836
1981
  });
1837
1982
  });
1838
1983
  registerCommand(program2, ["data", "noya", "polymarket-analysis-market-history"], "Auto-generated from sdk.data.noya.polymarketAnalysisMarketHistory", (cmd) => {
@@ -1842,7 +1987,7 @@ function registerGeneratedCommands(program2, sdk2) {
1842
1987
  "conditionId": opts["conditionId"]
1843
1988
  };
1844
1989
  if (opts["conditionId"] === void 0) delete input["conditionId"];
1845
- await runAndPrint(() => sdk2.data.noya.polymarketAnalysisMarketHistory(input));
1990
+ await runAndPrint(() => sdk.data.noya.polymarketAnalysisMarketHistory(input));
1846
1991
  });
1847
1992
  });
1848
1993
  registerCommand(program2, ["data", "noya", "polymarket-analysis-top"], "Auto-generated from sdk.data.noya.polymarketAnalysisTop", (cmd) => {
@@ -1861,22 +2006,22 @@ function registerGeneratedCommands(program2, sdk2) {
1861
2006
  if (opts["by"] === void 0) delete input["by"];
1862
2007
  if (opts["signal"] === void 0) delete input["signal"];
1863
2008
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
1864
- await runAndPrint(() => sdk2.data.noya.polymarketAnalysisTop(input));
2009
+ await runAndPrint(() => sdk.data.noya.polymarketAnalysisTop(input));
1865
2010
  });
1866
2011
  });
1867
2012
  registerCommand(program2, ["data", "noya", "polymarket-analysis-health"], "Auto-generated from sdk.data.noya.polymarketAnalysisHealth", (cmd) => {
1868
2013
  cmd.action(async () => {
1869
- await runAndPrint(() => sdk2.data.noya.polymarketAnalysisHealth());
2014
+ await runAndPrint(() => sdk.data.noya.polymarketAnalysisHealth());
1870
2015
  });
1871
2016
  });
1872
2017
  registerCommand(program2, ["account", "polymarket-address"], "Derive the Polymarket Safe address (CREATE2) for the user's EOA. Mirrors `noya_get_polymarket_address` MCP tool \u2014 pure local derivation, no network call beyond the one /api/me to resolve the EOA", (cmd) => {
1873
2018
  cmd.action(async () => {
1874
- await runAndPrint(() => sdk2.account.polymarketAddress());
2019
+ await runAndPrint(() => sdk.account.polymarketAddress());
1875
2020
  });
1876
2021
  });
1877
2022
  registerCommand(program2, ["account", "address"], "Resolved Ethereum address from /api/me. Throws if anonymous", (cmd) => {
1878
2023
  cmd.action(async () => {
1879
- await runAndPrint(() => sdk2.account.address());
2024
+ await runAndPrint(() => sdk.account.address());
1880
2025
  });
1881
2026
  });
1882
2027
  registerCommand(program2, ["account", "sign-message"], "Auto-generated from sdk.account.signMessage", (cmd) => {
@@ -1886,7 +2031,7 @@ function registerGeneratedCommands(program2, sdk2) {
1886
2031
  "message": opts["message"]
1887
2032
  };
1888
2033
  if (opts["message"] === void 0) delete input["message"];
1889
- await runAndPrint(() => sdk2.account.signMessage(input));
2034
+ await runAndPrint(() => sdk.account.signMessage(input));
1890
2035
  });
1891
2036
  });
1892
2037
  registerCommand(program2, ["account", "sign-transaction"], "Auto-generated from sdk.account.signTransaction", (cmd) => {
@@ -1926,7 +2071,7 @@ function registerGeneratedCommands(program2, sdk2) {
1926
2071
  if (opts["maxFeePerGas"] === void 0 ? void 0 : JSON.parse(String(opts["maxFeePerGas"])) === void 0) delete input["maxFeePerGas"];
1927
2072
  if (opts["maxPriorityFeePerGas"] === void 0 ? void 0 : JSON.parse(String(opts["maxPriorityFeePerGas"])) === void 0) delete input["maxPriorityFeePerGas"];
1928
2073
  if (opts["accessList"] === void 0 ? void 0 : String(opts["accessList"]).split(",") === void 0) delete input["accessList"];
1929
- await runAndPrint(() => sdk2.account.signTransaction(input));
2074
+ await runAndPrint(() => sdk.account.signTransaction(input));
1930
2075
  });
1931
2076
  });
1932
2077
  registerCommand(program2, ["account", "sign-typed-data"], "Auto-generated from sdk.account.signTypedData", (cmd) => {
@@ -1945,12 +2090,12 @@ function registerGeneratedCommands(program2, sdk2) {
1945
2090
  if (opts["types"] === void 0 ? void 0 : JSON.parse(String(opts["types"])) === void 0) delete input["types"];
1946
2091
  if (opts["primaryType"] === void 0) delete input["primaryType"];
1947
2092
  if (opts["message"] === void 0 ? void 0 : JSON.parse(String(opts["message"])) === void 0) delete input["message"];
1948
- await runAndPrint(() => sdk2.account.signTypedData(input));
2093
+ await runAndPrint(() => sdk.account.signTypedData(input));
1949
2094
  });
1950
2095
  });
1951
2096
  registerCommand(program2, ["account", "to-viem"], "Returns a viem `LocalAccount` whose signing methods POST to signer. Memoized \u2014 same Account instance always returns the same viem account", (cmd) => {
1952
2097
  cmd.action(async () => {
1953
- await runAndPrint(() => sdk2.account.toViem());
2098
+ await runAndPrint(() => sdk.account.toViem());
1954
2099
  });
1955
2100
  });
1956
2101
  registerCommand(program2, ["chain", "wallet", "get-wallet-details"], "Auto-generated from sdk.chain.wallet.getWalletDetails", (cmd) => {
@@ -1960,7 +2105,7 @@ function registerGeneratedCommands(program2, sdk2) {
1960
2105
  "chainId": opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"])
1961
2106
  };
1962
2107
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
1963
- await runAndPrint(() => sdk2.chain.wallet.getWalletDetails(input));
2108
+ await runAndPrint(() => sdk.chain.wallet.getWalletDetails(input));
1964
2109
  });
1965
2110
  });
1966
2111
  registerCommand(program2, ["chain", "wallet", "native-transfer"], "Auto-generated from sdk.chain.wallet.nativeTransfer", (cmd) => {
@@ -1976,7 +2121,7 @@ function registerGeneratedCommands(program2, sdk2) {
1976
2121
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
1977
2122
  if (opts["to"] === void 0) delete input["to"];
1978
2123
  if (opts["value"] === void 0) delete input["value"];
1979
- await runAndPrint(() => sdk2.chain.wallet.nativeTransfer(input));
2124
+ await runAndPrint(() => sdk.chain.wallet.nativeTransfer(input));
1980
2125
  });
1981
2126
  });
1982
2127
  registerCommand(program2, ["chain", "erc20", "get-balance"], "Auto-generated from sdk.chain.erc20.getBalance", (cmd) => {
@@ -1989,7 +2134,7 @@ function registerGeneratedCommands(program2, sdk2) {
1989
2134
  };
1990
2135
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
1991
2136
  if (opts["contractAddress"] === void 0) delete input["contractAddress"];
1992
- await runAndPrint(() => sdk2.chain.erc20.getBalance(input));
2137
+ await runAndPrint(() => sdk.chain.erc20.getBalance(input));
1993
2138
  });
1994
2139
  });
1995
2140
  registerCommand(program2, ["chain", "erc20", "get-allowance"], "Auto-generated from sdk.chain.erc20.getAllowance", (cmd) => {
@@ -2005,7 +2150,7 @@ function registerGeneratedCommands(program2, sdk2) {
2005
2150
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2006
2151
  if (opts["contractAddress"] === void 0) delete input["contractAddress"];
2007
2152
  if (opts["spender"] === void 0) delete input["spender"];
2008
- await runAndPrint(() => sdk2.chain.erc20.getAllowance(input));
2153
+ await runAndPrint(() => sdk.chain.erc20.getAllowance(input));
2009
2154
  });
2010
2155
  });
2011
2156
  registerCommand(program2, ["chain", "erc20", "get-erc20-token-address"], "Auto-generated from sdk.chain.erc20.getErc20TokenAddress", (cmd) => {
@@ -2018,7 +2163,7 @@ function registerGeneratedCommands(program2, sdk2) {
2018
2163
  };
2019
2164
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2020
2165
  if (opts["symbol"] === void 0) delete input["symbol"];
2021
- await runAndPrint(() => sdk2.chain.erc20.getErc20TokenAddress(input));
2166
+ await runAndPrint(() => sdk.chain.erc20.getErc20TokenAddress(input));
2022
2167
  });
2023
2168
  });
2024
2169
  registerCommand(program2, ["chain", "erc20", "transfer"], "Auto-generated from sdk.chain.erc20.transfer", (cmd) => {
@@ -2037,7 +2182,7 @@ function registerGeneratedCommands(program2, sdk2) {
2037
2182
  if (opts["contractAddress"] === void 0) delete input["contractAddress"];
2038
2183
  if (opts["destination"] === void 0) delete input["destination"];
2039
2184
  if (opts["amount"] === void 0) delete input["amount"];
2040
- await runAndPrint(() => sdk2.chain.erc20.transfer(input));
2185
+ await runAndPrint(() => sdk.chain.erc20.transfer(input));
2041
2186
  });
2042
2187
  });
2043
2188
  registerCommand(program2, ["chain", "erc20", "approve"], "Auto-generated from sdk.chain.erc20.approve", (cmd) => {
@@ -2056,7 +2201,7 @@ function registerGeneratedCommands(program2, sdk2) {
2056
2201
  if (opts["contractAddress"] === void 0) delete input["contractAddress"];
2057
2202
  if (opts["spender"] === void 0) delete input["spender"];
2058
2203
  if (opts["amount"] === void 0) delete input["amount"];
2059
- await runAndPrint(() => sdk2.chain.erc20.approve(input));
2204
+ await runAndPrint(() => sdk.chain.erc20.approve(input));
2060
2205
  });
2061
2206
  });
2062
2207
  registerCommand(program2, ["chain", "erc721", "get-balance"], "Auto-generated from sdk.chain.erc721.getBalance", (cmd) => {
@@ -2069,7 +2214,7 @@ function registerGeneratedCommands(program2, sdk2) {
2069
2214
  };
2070
2215
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2071
2216
  if (opts["contractAddress"] === void 0) delete input["contractAddress"];
2072
- await runAndPrint(() => sdk2.chain.erc721.getBalance(input));
2217
+ await runAndPrint(() => sdk.chain.erc721.getBalance(input));
2073
2218
  });
2074
2219
  });
2075
2220
  registerCommand(program2, ["chain", "erc721", "mint"], "Auto-generated from sdk.chain.erc721.mint", (cmd) => {
@@ -2085,7 +2230,7 @@ function registerGeneratedCommands(program2, sdk2) {
2085
2230
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2086
2231
  if (opts["contractAddress"] === void 0) delete input["contractAddress"];
2087
2232
  if (opts["destination"] === void 0) delete input["destination"];
2088
- await runAndPrint(() => sdk2.chain.erc721.mint(input));
2233
+ await runAndPrint(() => sdk.chain.erc721.mint(input));
2089
2234
  });
2090
2235
  });
2091
2236
  registerCommand(program2, ["chain", "erc721", "transfer"], "Auto-generated from sdk.chain.erc721.transfer", (cmd) => {
@@ -2104,7 +2249,7 @@ function registerGeneratedCommands(program2, sdk2) {
2104
2249
  if (opts["contractAddress"] === void 0) delete input["contractAddress"];
2105
2250
  if (opts["tokenId"] === void 0) delete input["tokenId"];
2106
2251
  if (opts["destination"] === void 0) delete input["destination"];
2107
- await runAndPrint(() => sdk2.chain.erc721.transfer(input));
2252
+ await runAndPrint(() => sdk.chain.erc721.transfer(input));
2108
2253
  });
2109
2254
  });
2110
2255
  registerCommand(program2, ["chain", "weth", "wrap-eth"], "Auto-generated from sdk.chain.weth.wrapEth", (cmd) => {
@@ -2117,7 +2262,7 @@ function registerGeneratedCommands(program2, sdk2) {
2117
2262
  };
2118
2263
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2119
2264
  if (opts["amountToWrap"] === void 0) delete input["amountToWrap"];
2120
- await runAndPrint(() => sdk2.chain.weth.wrapEth(input));
2265
+ await runAndPrint(() => sdk.chain.weth.wrapEth(input));
2121
2266
  });
2122
2267
  });
2123
2268
  registerCommand(program2, ["chain", "weth", "unwrap-eth"], "Auto-generated from sdk.chain.weth.unwrapEth", (cmd) => {
@@ -2130,7 +2275,7 @@ function registerGeneratedCommands(program2, sdk2) {
2130
2275
  };
2131
2276
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2132
2277
  if (opts["amountToUnwrap"] === void 0) delete input["amountToUnwrap"];
2133
- await runAndPrint(() => sdk2.chain.weth.unwrapEth(input));
2278
+ await runAndPrint(() => sdk.chain.weth.unwrapEth(input));
2134
2279
  });
2135
2280
  });
2136
2281
  registerCommand(program2, ["chain", "compound", "supply"], "Auto-generated from sdk.chain.compound.supply", (cmd) => {
@@ -2146,7 +2291,7 @@ function registerGeneratedCommands(program2, sdk2) {
2146
2291
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2147
2292
  if (opts["assetId"] === void 0) delete input["assetId"];
2148
2293
  if (opts["amount"] === void 0) delete input["amount"];
2149
- await runAndPrint(() => sdk2.chain.compound.supply(input));
2294
+ await runAndPrint(() => sdk.chain.compound.supply(input));
2150
2295
  });
2151
2296
  });
2152
2297
  registerCommand(program2, ["chain", "compound", "withdraw"], "Auto-generated from sdk.chain.compound.withdraw", (cmd) => {
@@ -2162,7 +2307,7 @@ function registerGeneratedCommands(program2, sdk2) {
2162
2307
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2163
2308
  if (opts["assetId"] === void 0) delete input["assetId"];
2164
2309
  if (opts["amount"] === void 0) delete input["amount"];
2165
- await runAndPrint(() => sdk2.chain.compound.withdraw(input));
2310
+ await runAndPrint(() => sdk.chain.compound.withdraw(input));
2166
2311
  });
2167
2312
  });
2168
2313
  registerCommand(program2, ["chain", "compound", "borrow"], "Auto-generated from sdk.chain.compound.borrow", (cmd) => {
@@ -2178,7 +2323,7 @@ function registerGeneratedCommands(program2, sdk2) {
2178
2323
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2179
2324
  if (opts["assetId"] === void 0) delete input["assetId"];
2180
2325
  if (opts["amount"] === void 0) delete input["amount"];
2181
- await runAndPrint(() => sdk2.chain.compound.borrow(input));
2326
+ await runAndPrint(() => sdk.chain.compound.borrow(input));
2182
2327
  });
2183
2328
  });
2184
2329
  registerCommand(program2, ["chain", "compound", "repay"], "Auto-generated from sdk.chain.compound.repay", (cmd) => {
@@ -2194,7 +2339,7 @@ function registerGeneratedCommands(program2, sdk2) {
2194
2339
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2195
2340
  if (opts["assetId"] === void 0) delete input["assetId"];
2196
2341
  if (opts["amount"] === void 0) delete input["amount"];
2197
- await runAndPrint(() => sdk2.chain.compound.repay(input));
2342
+ await runAndPrint(() => sdk.chain.compound.repay(input));
2198
2343
  });
2199
2344
  });
2200
2345
  registerCommand(program2, ["chain", "compound", "get-portfolio"], "Auto-generated from sdk.chain.compound.getPortfolio", (cmd) => {
@@ -2204,7 +2349,7 @@ function registerGeneratedCommands(program2, sdk2) {
2204
2349
  "chainId": opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"])
2205
2350
  };
2206
2351
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2207
- await runAndPrint(() => sdk2.chain.compound.getPortfolio(input));
2352
+ await runAndPrint(() => sdk.chain.compound.getPortfolio(input));
2208
2353
  });
2209
2354
  });
2210
2355
  registerCommand(program2, ["chain", "morpho", "deposit"], "Auto-generated from sdk.chain.morpho.deposit", (cmd) => {
@@ -2220,7 +2365,7 @@ function registerGeneratedCommands(program2, sdk2) {
2220
2365
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2221
2366
  if (opts["vaultAddress"] === void 0) delete input["vaultAddress"];
2222
2367
  if (opts["assets"] === void 0) delete input["assets"];
2223
- await runAndPrint(() => sdk2.chain.morpho.deposit(input));
2368
+ await runAndPrint(() => sdk.chain.morpho.deposit(input));
2224
2369
  });
2225
2370
  });
2226
2371
  registerCommand(program2, ["chain", "morpho", "withdraw"], "Auto-generated from sdk.chain.morpho.withdraw", (cmd) => {
@@ -2236,7 +2381,7 @@ function registerGeneratedCommands(program2, sdk2) {
2236
2381
  if (opts["chainId"] === void 0 ? void 0 : Number(opts["chainId"]) === void 0) delete input["chainId"];
2237
2382
  if (opts["vaultAddress"] === void 0) delete input["vaultAddress"];
2238
2383
  if (opts["assets"] === void 0) delete input["assets"];
2239
- await runAndPrint(() => sdk2.chain.morpho.withdraw(input));
2384
+ await runAndPrint(() => sdk.chain.morpho.withdraw(input));
2240
2385
  });
2241
2386
  });
2242
2387
  registerCommand(program2, ["chain", "enso", "route"], "Auto-generated from sdk.chain.enso.route", (cmd) => {
@@ -2258,7 +2403,7 @@ function registerGeneratedCommands(program2, sdk2) {
2258
2403
  if (opts["tokenOut"] === void 0) delete input["tokenOut"];
2259
2404
  if (opts["amountIn"] === void 0) delete input["amountIn"];
2260
2405
  if (opts["slippage"] === void 0 ? void 0 : Number(opts["slippage"]) === void 0) delete input["slippage"];
2261
- await runAndPrint(() => sdk2.chain.enso.route(input));
2406
+ await runAndPrint(() => sdk.chain.enso.route(input));
2262
2407
  });
2263
2408
  });
2264
2409
  registerCommand(program2, ["chain", "enso", "bridge"], "Auto-generated from sdk.chain.enso.bridge", (cmd) => {
@@ -2280,7 +2425,7 @@ function registerGeneratedCommands(program2, sdk2) {
2280
2425
  if (opts["tokenIn"] === void 0) delete input["tokenIn"];
2281
2426
  if (opts["tokenOut"] === void 0) delete input["tokenOut"];
2282
2427
  if (opts["amountIn"] === void 0) delete input["amountIn"];
2283
- await runAndPrint(() => sdk2.chain.enso.bridge(input));
2428
+ await runAndPrint(() => sdk.chain.enso.bridge(input));
2284
2429
  });
2285
2430
  });
2286
2431
  registerCommand(program2, ["chain", "pyth", "fetch-price-feed"], "Auto-generated from sdk.chain.pyth.fetchPriceFeed", (cmd) => {
@@ -2290,7 +2435,7 @@ function registerGeneratedCommands(program2, sdk2) {
2290
2435
  "tokenSymbol": opts["tokenSymbol"]
2291
2436
  };
2292
2437
  if (opts["tokenSymbol"] === void 0) delete input["tokenSymbol"];
2293
- await runAndPrint(() => sdk2.chain.pyth.fetchPriceFeed(input));
2438
+ await runAndPrint(() => sdk.chain.pyth.fetchPriceFeed(input));
2294
2439
  });
2295
2440
  });
2296
2441
  registerCommand(program2, ["chain", "pyth", "fetch-price"], "Auto-generated from sdk.chain.pyth.fetchPrice", (cmd) => {
@@ -2300,7 +2445,7 @@ function registerGeneratedCommands(program2, sdk2) {
2300
2445
  "priceFeedId": opts["priceFeedId"]
2301
2446
  };
2302
2447
  if (opts["priceFeedId"] === void 0) delete input["priceFeedId"];
2303
- await runAndPrint(() => sdk2.chain.pyth.fetchPrice(input));
2448
+ await runAndPrint(() => sdk.chain.pyth.fetchPrice(input));
2304
2449
  });
2305
2450
  });
2306
2451
  registerCommand(program2, ["chain", "defillama", "find-protocol"], "Auto-generated from sdk.chain.defillama.findProtocol", (cmd) => {
@@ -2310,7 +2455,7 @@ function registerGeneratedCommands(program2, sdk2) {
2310
2455
  "query": opts["query"]
2311
2456
  };
2312
2457
  if (opts["query"] === void 0) delete input["query"];
2313
- await runAndPrint(() => sdk2.chain.defillama.findProtocol(input));
2458
+ await runAndPrint(() => sdk.chain.defillama.findProtocol(input));
2314
2459
  });
2315
2460
  });
2316
2461
  registerCommand(program2, ["chain", "defillama", "get-protocol"], "Auto-generated from sdk.chain.defillama.getProtocol", (cmd) => {
@@ -2320,7 +2465,7 @@ function registerGeneratedCommands(program2, sdk2) {
2320
2465
  "protocolId": opts["protocolId"]
2321
2466
  };
2322
2467
  if (opts["protocolId"] === void 0) delete input["protocolId"];
2323
- await runAndPrint(() => sdk2.chain.defillama.getProtocol(input));
2468
+ await runAndPrint(() => sdk.chain.defillama.getProtocol(input));
2324
2469
  });
2325
2470
  });
2326
2471
  registerCommand(program2, ["chain", "defillama", "get-token-prices"], "Auto-generated from sdk.chain.defillama.getTokenPrices", (cmd) => {
@@ -2330,7 +2475,7 @@ function registerGeneratedCommands(program2, sdk2) {
2330
2475
  "tokens": opts["tokens"] === void 0 ? void 0 : String(opts["tokens"]).split(",")
2331
2476
  };
2332
2477
  if (opts["tokens"] === void 0 ? void 0 : String(opts["tokens"]).split(",") === void 0) delete input["tokens"];
2333
- await runAndPrint(() => sdk2.chain.defillama.getTokenPrices(input));
2478
+ await runAndPrint(() => sdk.chain.defillama.getTokenPrices(input));
2334
2479
  });
2335
2480
  });
2336
2481
  registerCommand(program2, ["chain", "x402", "make-http-request"], "Auto-generated from sdk.chain.x402.makeHttpRequest", (cmd) => {
@@ -2349,7 +2494,7 @@ function registerGeneratedCommands(program2, sdk2) {
2349
2494
  if (opts["method"] === void 0) delete input["method"];
2350
2495
  if (opts["headers"] === void 0 ? void 0 : JSON.parse(String(opts["headers"])) === void 0) delete input["headers"];
2351
2496
  if (opts["body"] === void 0 ? void 0 : JSON.parse(String(opts["body"])) === void 0) delete input["body"];
2352
- await runAndPrint(() => sdk2.chain.x402.makeHttpRequest(input));
2497
+ await runAndPrint(() => sdk.chain.x402.makeHttpRequest(input));
2353
2498
  });
2354
2499
  });
2355
2500
  registerCommand(program2, ["chain", "x402", "discover-services"], "Auto-generated from sdk.chain.x402.discoverServices", (cmd) => {
@@ -2359,7 +2504,7 @@ function registerGeneratedCommands(program2, sdk2) {
2359
2504
  "query": opts["query"]
2360
2505
  };
2361
2506
  if (opts["query"] === void 0) delete input["query"];
2362
- await runAndPrint(() => sdk2.chain.x402.discoverServices(input));
2507
+ await runAndPrint(() => sdk.chain.x402.discoverServices(input));
2363
2508
  });
2364
2509
  });
2365
2510
  registerCommand(program2, ["predict", "search-markets"], "Auto-generated from sdk.predict.searchMarkets", (cmd) => {
@@ -2375,7 +2520,7 @@ function registerGeneratedCommands(program2, sdk2) {
2375
2520
  if (opts["query"] === void 0) delete input["query"];
2376
2521
  if (opts["venue"] === void 0) delete input["venue"];
2377
2522
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
2378
- await runAndPrint(() => sdk2.predict.searchMarkets(input));
2523
+ await runAndPrint(() => sdk.predict.searchMarkets(input));
2379
2524
  });
2380
2525
  });
2381
2526
  registerCommand(program2, ["predict", "search-events"], "Auto-generated from sdk.predict.searchEvents", (cmd) => {
@@ -2391,7 +2536,7 @@ function registerGeneratedCommands(program2, sdk2) {
2391
2536
  if (opts["query"] === void 0) delete input["query"];
2392
2537
  if (opts["venue"] === void 0) delete input["venue"];
2393
2538
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
2394
- await runAndPrint(() => sdk2.predict.searchEvents(input));
2539
+ await runAndPrint(() => sdk.predict.searchEvents(input));
2395
2540
  });
2396
2541
  });
2397
2542
  registerCommand(program2, ["predict", "get-market"], "Auto-generated from sdk.predict.getMarket", (cmd) => {
@@ -2404,7 +2549,7 @@ function registerGeneratedCommands(program2, sdk2) {
2404
2549
  };
2405
2550
  if (opts["venue"] === void 0) delete input["venue"];
2406
2551
  if (opts["marketId"] === void 0) delete input["marketId"];
2407
- await runAndPrint(() => sdk2.predict.getMarket(input));
2552
+ await runAndPrint(() => sdk.predict.getMarket(input));
2408
2553
  });
2409
2554
  });
2410
2555
  registerCommand(program2, ["predict", "get-orderbook"], "Auto-generated from sdk.predict.getOrderbook", (cmd) => {
@@ -2417,7 +2562,7 @@ function registerGeneratedCommands(program2, sdk2) {
2417
2562
  };
2418
2563
  if (opts["venue"] === void 0) delete input["venue"];
2419
2564
  if (opts["marketId"] === void 0) delete input["marketId"];
2420
- await runAndPrint(() => sdk2.predict.getOrderbook(input));
2565
+ await runAndPrint(() => sdk.predict.getOrderbook(input));
2421
2566
  });
2422
2567
  });
2423
2568
  registerCommand(program2, ["predict", "strategy-playbook"], "Auto-generated from sdk.predict.strategyPlaybook", (cmd) => {
@@ -2427,7 +2572,7 @@ function registerGeneratedCommands(program2, sdk2) {
2427
2572
  "strategy": opts["strategy"]
2428
2573
  };
2429
2574
  if (opts["strategy"] === void 0) delete input["strategy"];
2430
- await runAndPrint(() => sdk2.predict.strategyPlaybook(input));
2575
+ await runAndPrint(() => sdk.predict.strategyPlaybook(input));
2431
2576
  });
2432
2577
  });
2433
2578
  registerCommand(program2, ["predict", "create-order"], "Auto-generated from sdk.predict.createOrder", (cmd) => {
@@ -2455,7 +2600,7 @@ function registerGeneratedCommands(program2, sdk2) {
2455
2600
  if (opts["size"] === void 0) delete input["size"];
2456
2601
  if (opts["price"] === void 0) delete input["price"];
2457
2602
  if (opts["type"] === void 0) delete input["type"];
2458
- await runAndPrint(() => sdk2.predict.createOrder(input));
2603
+ await runAndPrint(() => sdk.predict.createOrder(input));
2459
2604
  });
2460
2605
  });
2461
2606
  registerCommand(program2, ["predict", "cancel-order"], "Auto-generated from sdk.predict.cancelOrder", (cmd) => {
@@ -2468,7 +2613,7 @@ function registerGeneratedCommands(program2, sdk2) {
2468
2613
  };
2469
2614
  if (opts["venue"] === void 0) delete input["venue"];
2470
2615
  if (opts["orderId"] === void 0) delete input["orderId"];
2471
- await runAndPrint(() => sdk2.predict.cancelOrder(input));
2616
+ await runAndPrint(() => sdk.predict.cancelOrder(input));
2472
2617
  });
2473
2618
  });
2474
2619
  registerCommand(program2, ["predict", "positions"], "Auto-generated from sdk.predict.positions", (cmd) => {
@@ -2478,7 +2623,7 @@ function registerGeneratedCommands(program2, sdk2) {
2478
2623
  "venue": opts["venue"]
2479
2624
  };
2480
2625
  if (opts["venue"] === void 0) delete input["venue"];
2481
- await runAndPrint(() => sdk2.predict.positions(input));
2626
+ await runAndPrint(() => sdk.predict.positions(input));
2482
2627
  });
2483
2628
  });
2484
2629
  registerCommand(program2, ["predict", "open-orders"], "Auto-generated from sdk.predict.openOrders", (cmd) => {
@@ -2491,7 +2636,7 @@ function registerGeneratedCommands(program2, sdk2) {
2491
2636
  };
2492
2637
  if (opts["venue"] === void 0) delete input["venue"];
2493
2638
  if (opts["marketId"] === void 0) delete input["marketId"];
2494
- await runAndPrint(() => sdk2.predict.openOrders(input));
2639
+ await runAndPrint(() => sdk.predict.openOrders(input));
2495
2640
  });
2496
2641
  });
2497
2642
  registerCommand(program2, ["predict", "my-trades"], "Auto-generated from sdk.predict.myTrades", (cmd) => {
@@ -2510,7 +2655,7 @@ function registerGeneratedCommands(program2, sdk2) {
2510
2655
  if (opts["marketId"] === void 0) delete input["marketId"];
2511
2656
  if (opts["limit"] === void 0 ? void 0 : Number(opts["limit"]) === void 0) delete input["limit"];
2512
2657
  if (opts["since"] === void 0 ? void 0 : Number(opts["since"]) === void 0) delete input["since"];
2513
- await runAndPrint(() => sdk2.predict.myTrades(input));
2658
+ await runAndPrint(() => sdk.predict.myTrades(input));
2514
2659
  });
2515
2660
  });
2516
2661
  registerCommand(program2, ["predict", "get-order"], "Auto-generated from sdk.predict.getOrder", (cmd) => {
@@ -2523,12 +2668,12 @@ function registerGeneratedCommands(program2, sdk2) {
2523
2668
  };
2524
2669
  if (opts["venue"] === void 0) delete input["venue"];
2525
2670
  if (opts["orderId"] === void 0) delete input["orderId"];
2526
- await runAndPrint(() => sdk2.predict.getOrder(input));
2671
+ await runAndPrint(() => sdk.predict.getOrder(input));
2527
2672
  });
2528
2673
  });
2529
2674
  registerCommand(program2, ["threads", "list"], "GET /api/threads \u2192 returns the list of threads for the authed user", (cmd) => {
2530
2675
  cmd.action(async () => {
2531
- await runAndPrint(() => sdk2.threads.list());
2676
+ await runAndPrint(() => sdk.threads.list());
2532
2677
  });
2533
2678
  });
2534
2679
  registerCommand(program2, ["threads", "search"], "GET /api/threads/search?q=", (cmd) => {
@@ -2538,7 +2683,7 @@ function registerGeneratedCommands(program2, sdk2) {
2538
2683
  "query": opts["query"]
2539
2684
  };
2540
2685
  if (opts["query"] === void 0) delete input["query"];
2541
- await runAndPrint(() => sdk2.threads.search(input));
2686
+ await runAndPrint(() => sdk.threads.search(input));
2542
2687
  });
2543
2688
  });
2544
2689
  registerCommand(program2, ["threads", "get-messages"], "GET /api/threads/:id/messages", (cmd) => {
@@ -2548,7 +2693,7 @@ function registerGeneratedCommands(program2, sdk2) {
2548
2693
  "threadId": opts["threadId"]
2549
2694
  };
2550
2695
  if (opts["threadId"] === void 0) delete input["threadId"];
2551
- await runAndPrint(() => sdk2.threads.getMessages(input));
2696
+ await runAndPrint(() => sdk.threads.getMessages(input));
2552
2697
  });
2553
2698
  });
2554
2699
  registerCommand(program2, ["threads", "summary"], "GET /api/threads/:id/summary \u2014 compact summary for voice agent context", (cmd) => {
@@ -2558,7 +2703,7 @@ function registerGeneratedCommands(program2, sdk2) {
2558
2703
  "threadId": opts["threadId"]
2559
2704
  };
2560
2705
  if (opts["threadId"] === void 0) delete input["threadId"];
2561
- await runAndPrint(() => sdk2.threads.summary(input));
2706
+ await runAndPrint(() => sdk.threads.summary(input));
2562
2707
  });
2563
2708
  });
2564
2709
  registerCommand(program2, ["threads", "delete"], "DELETE /api/threads/:id", (cmd) => {
@@ -2568,7 +2713,7 @@ function registerGeneratedCommands(program2, sdk2) {
2568
2713
  "threadId": opts["threadId"]
2569
2714
  };
2570
2715
  if (opts["threadId"] === void 0) delete input["threadId"];
2571
- await runAndPrint(() => sdk2.threads.delete(input));
2716
+ await runAndPrint(() => sdk.threads.delete(input));
2572
2717
  });
2573
2718
  });
2574
2719
  registerCommand(program2, ["threads", "send-message"], "POST /api/messages", (cmd) => {
@@ -2581,30 +2726,31 @@ function registerGeneratedCommands(program2, sdk2) {
2581
2726
  };
2582
2727
  if (opts["threadId"] === void 0) delete input["threadId"];
2583
2728
  if (opts["content"] === void 0) delete input["content"];
2584
- await runAndPrint(() => sdk2.threads.sendMessage(input));
2729
+ await runAndPrint(() => sdk.threads.sendMessage(input));
2585
2730
  });
2586
2731
  });
2587
2732
  registerCommand(program2, ["threads", "generate-id"], "Pure local UUID v4. Mirrors `noya_generate_thread_id` MCP tool \u2014 useful for generating a stable threadId before sending the first message", (cmd) => {
2588
2733
  cmd.action(async () => {
2589
- await runAndPrint(() => sdk2.threads.generateId());
2734
+ await runAndPrint(() => sdk.threads.generateId());
2590
2735
  });
2591
2736
  });
2592
2737
  registerCommand(program2, ["threads", "agent-summary"], "GET /api/agents/summarize \u2014 list of agents and their specialties", (cmd) => {
2593
2738
  cmd.action(async () => {
2594
- await runAndPrint(() => sdk2.threads.agentSummary());
2739
+ await runAndPrint(() => sdk.threads.agentSummary());
2595
2740
  });
2596
2741
  });
2597
2742
  registerCommand(program2, ["portfolio", "get"], "GET /api/user/summary \u2014 wraps `noya_get_portfolio` MCP semantics by returning the user's identity + holdings + DCA + polymarket data in one shot. Falls back to the raw response if `data` is missing", (cmd) => {
2598
2743
  cmd.action(async () => {
2599
- await runAndPrint(() => sdk2.portfolio.get());
2744
+ await runAndPrint(() => sdk.portfolio.get());
2600
2745
  });
2601
2746
  });
2602
2747
  }
2603
2748
 
2604
2749
  // src/index.ts
2605
2750
  var NOYA_AGENT_API_URL = process.env.NOYA_AGENT_API_URL ?? "https://agent-api.noya.ai";
2751
+ var NOYA_SIGNER_URL = process.env.NOYA_SIGNER_URL ?? "https://agentic.noya.ai/signer";
2606
2752
  var program = new import_commander2.Command();
2607
- program.name("noya").description("Noya agentic toolkit CLI").version("0.0.0");
2753
+ program.name("noya").description("Noya agentic toolkit CLI").version("0.2.0");
2608
2754
  var auth = program.command("auth").description("Manage Noya authentication");
2609
2755
  auth.command("login").description("Authorize the CLI via your browser (OAuth)").option(
2610
2756
  "--with-token <key>",
@@ -2644,17 +2790,34 @@ auth.command("status").description("Show the active credential and verify it aga
2644
2790
  auth.command("logout").description("Wipe the stored OAuth credentials").action(async () => {
2645
2791
  await logout({ credPath: CRED_PATH, out: process.stdout });
2646
2792
  });
2647
- var resolved = resolveCredentials({
2648
- env: process.env,
2649
- stored: loadCredentials(CRED_PATH)
2650
- });
2651
- var sdk = new import_sdk.NoyaSDK({
2652
- ...resolved.credentials,
2653
- noyaAgentApiUrl: NOYA_AGENT_API_URL,
2654
- ...process.env.NOYA_SIGNER_URL ? { signer: { url: process.env.NOYA_SIGNER_URL } } : {}
2793
+ auth.command("refresh").description("Force-rotate the stored OAuth access token now").action(async () => {
2794
+ await runRefresh({
2795
+ credPath: CRED_PATH,
2796
+ baseUrl: NOYA_AGENT_API_URL,
2797
+ out: process.stdout
2798
+ });
2655
2799
  });
2656
- registerGeneratedCommands(program, sdk);
2657
- program.parseAsync(process.argv).catch((err) => {
2800
+ async function main() {
2801
+ const stored = loadCredentials(CRED_PATH);
2802
+ let resolved = resolveCredentials({ env: process.env, stored });
2803
+ if (mayNeedCredentials(process.argv)) {
2804
+ resolved = await ensureFreshCredentials({
2805
+ resolved,
2806
+ stored,
2807
+ credPath: CRED_PATH,
2808
+ baseUrl: NOYA_AGENT_API_URL,
2809
+ out: process.stderr
2810
+ });
2811
+ }
2812
+ const sdk = new import_sdk.NoyaSDK({
2813
+ ...resolved.credentials,
2814
+ noyaAgentApiUrl: NOYA_AGENT_API_URL,
2815
+ signer: { url: NOYA_SIGNER_URL }
2816
+ });
2817
+ registerGeneratedCommands(program, sdk);
2818
+ await program.parseAsync(process.argv);
2819
+ }
2820
+ main().catch((err) => {
2658
2821
  process.stderr.write(`Error: ${err instanceof Error ? err.message : String(err)}
2659
2822
  `);
2660
2823
  process.exit(1);