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
|
|
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
|
-
"
|
|
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:
|
|
669
|
+
heartbeatMs: 30_000,
|
|
669
670
|
heartbeatText:
|
|
670
|
-
"npm still installing OpenClaw —
|
|
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
|
-
|
|
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:
|
|
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
|
-
|
|
1376
|
-
|
|
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.
|
|
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.
|
|
20
|
+
"solana-traderclaw": "^1.0.123"
|
|
21
21
|
},
|
|
22
22
|
"keywords": [
|
|
23
23
|
"traderclaw",
|