traderclaw-cli 1.0.121 → 1.0.123

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.
@@ -11,7 +11,7 @@ const CONFIG_DIR = join(homedir(), ".openclaw");
11
11
  const CONFIG_FILE = join(CONFIG_DIR, "openclaw.json");
12
12
 
13
13
  /** Pinned openclaw platform version — bump deliberately after testing, never use "latest". */
14
- export const OPENCLAW_VERSION = "2026.4.29";
14
+ export const OPENCLAW_VERSION = "2026.5.4";
15
15
 
16
16
  /** Directory containing solana-traderclaw (openclaw.plugin.json) — works for plugin layout or traderclaw-cli + dependency. */
17
17
  const PLUGIN_PACKAGE_ROOT = resolvePluginPackageRoot(import.meta.url);
@@ -654,8 +654,9 @@ async function installOpenClawPlatform(onEvent) {
654
654
  "--ignore-scripts",
655
655
  "--no-audit",
656
656
  "--no-fund",
657
+ "--prefer-offline",
657
658
  "--loglevel",
658
- "info",
659
+ "warn",
659
660
  "--registry",
660
661
  "https://registry.npmjs.org/",
661
662
  `openclaw@${OPENCLAW_VERSION}`,
@@ -665,9 +666,9 @@ async function installOpenClawPlatform(onEvent) {
665
666
  cwd: npmCwd,
666
667
  shell: false,
667
668
  timeoutMs: effectiveTimeout,
668
- heartbeatMs: 60_000,
669
+ heartbeatMs: 30_000,
669
670
  heartbeatText:
670
- "npm still installing OpenClaw — if this repeats for a long time, check disk space, DNS, and outbound HTTPS to registry.npmjs.org",
671
+ "npm still installing OpenClaw (extract/link phase — this is normal silence). Check disk space and outbound HTTPS to registry.npmjs.org if this repeats many times",
671
672
  env: {
672
673
  ...process.env,
673
674
  // Non-interactive / fewer slow npm side trips (fundraising prompts, audit).
@@ -676,12 +677,17 @@ async function installOpenClawPlatform(onEvent) {
676
677
  },
677
678
  },
678
679
  );
680
+ if (typeof onEvent === "function") {
681
+ onEvent({ type: "stdout", text: "npm install -g openclaw completed. Verifying binary on PATH…\n", urls: [] });
682
+ }
679
683
  const available = commandExists("openclaw");
680
- let version = available ? getCommandOutput("openclaw --version", { timeoutMs: OPENCLAW_CLI_VERSION_TIMEOUT_MS }) : null;
684
+ // Version check is informational only cap it tightly so a blocking CLI startup never stalls the step.
685
+ const VERSION_TIMEOUT_MS = 8_000;
686
+ let version = available ? getCommandOutput("openclaw --version", { timeoutMs: VERSION_TIMEOUT_MS }) : null;
681
687
  if (available && !version && typeof onEvent === "function") {
682
688
  onEvent({
683
689
  type: "stderr",
684
- text: "openclaw is on PATH but --version timed out; treating install as successful.\n",
690
+ text: `openclaw is on PATH but --version did not respond within ${VERSION_TIMEOUT_MS}ms; treating install as successful.\n`,
685
691
  urls: [],
686
692
  });
687
693
  version = "(version check timed out)";
@@ -1372,8 +1378,16 @@ function configureGatewayScheduling(modeConfig, configPath = CONFIG_FILE) {
1372
1378
  if (!config.channels.telegram || typeof config.channels.telegram !== "object") {
1373
1379
  config.channels.telegram = {};
1374
1380
  }
1375
- if (config.channels.telegram.streaming === undefined) {
1376
- config.channels.telegram.streaming = "partial";
1381
+ // OpenClaw ≥2026.5 expects channels.telegram.streaming as an object ({ mode, chunkMode, preview, block }).
1382
+ // Legacy scalar ("partial"|"off"|...) was valid briefly but now fails validation ("must be object").
1383
+ const tgStream = config.channels.telegram.streaming;
1384
+ const telegramStreamingModes = new Set(["off", "partial", "block", "progress"]);
1385
+ if (tgStream === undefined) {
1386
+ config.channels.telegram.streaming = { mode: "partial" };
1387
+ } else if (typeof tgStream === "string") {
1388
+ config.channels.telegram.streaming = telegramStreamingModes.has(tgStream)
1389
+ ? { mode: tgStream }
1390
+ : { mode: "partial" };
1377
1391
  }
1378
1392
 
1379
1393
  if (!config.commands || typeof config.commands !== "object") config.commands = {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "traderclaw-cli",
3
- "version": "1.0.121",
3
+ "version": "1.0.123",
4
4
  "description": "Global TraderClaw CLI (install --wizard, setup, precheck). Installs solana-traderclaw as a dependency for OpenClaw plugin files.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -17,7 +17,7 @@
17
17
  "node": ">=22"
18
18
  },
19
19
  "dependencies": {
20
- "solana-traderclaw": "^1.0.121"
20
+ "solana-traderclaw": "^1.0.123"
21
21
  },
22
22
  "keywords": [
23
23
  "traderclaw",