@okclaw-build/cli 1.0.0-beta.6 → 1.0.0-beta.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bridge/daemon/config.d.ts +24 -0
- package/dist/bridge/daemon/config.js +96 -0
- package/dist/bridge/daemon/config.js.map +1 -0
- package/dist/bridge/daemon/daemon.d.ts +7 -0
- package/dist/bridge/daemon/daemon.js +23 -0
- package/dist/bridge/daemon/daemon.js.map +1 -0
- package/dist/bridge/daemon/event-id.d.ts +2 -0
- package/dist/bridge/daemon/event-id.js +18 -0
- package/dist/bridge/daemon/event-id.js.map +1 -0
- package/dist/bridge/daemon/frames.d.ts +81 -0
- package/dist/bridge/daemon/frames.js +64 -0
- package/dist/bridge/daemon/frames.js.map +1 -0
- package/dist/bridge/daemon/openclaw-chat-runtime.d.ts +80 -0
- package/dist/bridge/daemon/openclaw-chat-runtime.js +1222 -0
- package/dist/bridge/daemon/openclaw-chat-runtime.js.map +1 -0
- package/dist/bridge/daemon/openclaw-gateway-client.d.ts +58 -0
- package/dist/bridge/daemon/openclaw-gateway-client.js +251 -0
- package/dist/bridge/daemon/openclaw-gateway-client.js.map +1 -0
- package/dist/bridge/daemon/relay-client.d.ts +75 -0
- package/dist/bridge/daemon/relay-client.js +369 -0
- package/dist/bridge/daemon/relay-client.js.map +1 -0
- package/dist/bridge/daemon/stub-chat-runtime.d.ts +4 -0
- package/dist/bridge/daemon/stub-chat-runtime.js +91 -0
- package/dist/bridge/daemon/stub-chat-runtime.js.map +1 -0
- package/dist/bridge/service.d.ts +12 -0
- package/dist/bridge/service.js +86 -0
- package/dist/bridge/service.js.map +1 -0
- package/dist/commands/backup.d.ts +16 -0
- package/dist/commands/backup.js +99 -0
- package/dist/commands/backup.js.map +1 -0
- package/dist/commands/bridge.d.ts +7 -0
- package/dist/commands/bridge.js +100 -0
- package/dist/commands/bridge.js.map +1 -0
- package/dist/commands/check.js +22 -6
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/edit.d.ts +2 -7
- package/dist/commands/edit.js +28 -16
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/feed.js +48 -16
- package/dist/commands/feed.js.map +1 -1
- package/dist/commands/install.js +99 -18
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/migration.d.ts +1 -0
- package/dist/commands/migration.js +205 -0
- package/dist/commands/migration.js.map +1 -0
- package/dist/commands/openclaw-channel-login.d.ts +54 -0
- package/dist/commands/openclaw-channel-login.js +334 -0
- package/dist/commands/openclaw-channel-login.js.map +1 -0
- package/dist/commands/restore.d.ts +16 -0
- package/dist/commands/restore.js +94 -0
- package/dist/commands/restore.js.map +1 -0
- package/dist/commands/service.js +56 -13
- package/dist/commands/service.js.map +1 -1
- package/dist/commands/show.d.ts +13 -0
- package/dist/commands/show.js +70 -0
- package/dist/commands/show.js.map +1 -0
- package/dist/commands/skill.d.ts +1 -0
- package/dist/commands/skill.js +137 -0
- package/dist/commands/skill.js.map +1 -0
- package/dist/commands/uninstall.d.ts +1 -0
- package/dist/commands/uninstall.js +46 -0
- package/dist/commands/uninstall.js.map +1 -0
- package/dist/index.js +121 -12
- package/dist/index.js.map +1 -1
- package/dist/installers/base.d.ts +3 -1
- package/dist/installers/channel.d.ts +10 -2
- package/dist/installers/channel.js +143 -24
- package/dist/installers/channel.js.map +1 -1
- package/dist/installers/openclaw.d.ts +19 -2
- package/dist/installers/openclaw.js +186 -55
- package/dist/installers/openclaw.js.map +1 -1
- package/dist/installers/openviking-purge.d.ts +52 -0
- package/dist/installers/openviking-purge.js +380 -0
- package/dist/installers/openviking-purge.js.map +1 -0
- package/dist/installers/openviking.js +1 -2
- package/dist/installers/openviking.js.map +1 -1
- package/dist/installers/skill.d.ts +5 -2
- package/dist/installers/skill.js +67 -18
- package/dist/installers/skill.js.map +1 -1
- package/dist/migration/archive.d.ts +14 -0
- package/dist/migration/archive.js +84 -0
- package/dist/migration/archive.js.map +1 -0
- package/dist/migration/crypto.d.ts +16 -0
- package/dist/migration/crypto.js +56 -0
- package/dist/migration/crypto.js.map +1 -0
- package/dist/migration/manifest.d.ts +39 -0
- package/dist/migration/manifest.js +140 -0
- package/dist/migration/manifest.js.map +1 -0
- package/dist/openclaw-user-data.d.ts +86 -0
- package/dist/openclaw-user-data.js +422 -0
- package/dist/openclaw-user-data.js.map +1 -0
- package/dist/output/mode.d.ts +11 -0
- package/dist/output/mode.js +27 -0
- package/dist/output/mode.js.map +1 -0
- package/dist/output/ndjson.d.ts +57 -0
- package/dist/output/ndjson.js +136 -0
- package/dist/output/ndjson.js.map +1 -0
- package/dist/utils/constants.d.ts +14 -13
- package/dist/utils/constants.js +40 -21
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/deps.d.ts +34 -3
- package/dist/utils/deps.js +62 -100
- package/dist/utils/deps.js.map +1 -1
- package/dist/utils/install-safety.d.ts +25 -0
- package/dist/utils/install-safety.js +97 -0
- package/dist/utils/install-safety.js.map +1 -0
- package/dist/utils/logger.d.ts +10 -0
- package/dist/utils/logger.js +31 -4
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/mirror.js +14 -0
- package/dist/utils/mirror.js.map +1 -1
- package/dist/utils/openclaw-config-cli.d.ts +19 -0
- package/dist/utils/openclaw-config-cli.js +81 -0
- package/dist/utils/openclaw-config-cli.js.map +1 -0
- package/dist/utils/openclaw-daemon.d.ts +58 -0
- package/dist/utils/openclaw-daemon.js +154 -0
- package/dist/utils/openclaw-daemon.js.map +1 -0
- package/dist/utils/shell.d.ts +23 -2
- package/dist/utils/shell.js +138 -5
- package/dist/utils/shell.js.map +1 -1
- package/package.json +6 -4
package/dist/utils/shell.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { spawn, execFileSync } from 'node:child_process';
|
|
2
2
|
import { error as logError, info } from './logger.js';
|
|
3
|
+
import { isNdjson } from '../output/mode.js';
|
|
4
|
+
import { getActiveEmitter } from '../output/ndjson.js';
|
|
3
5
|
/**
|
|
4
6
|
* Ensure running as root. If not, re-exec with sudo and exit.
|
|
5
7
|
*/
|
|
@@ -20,19 +22,47 @@ export function ensureRoot() {
|
|
|
20
22
|
process.exit(code);
|
|
21
23
|
}
|
|
22
24
|
}
|
|
23
|
-
// Prefix to source nvm before every shell command so node/npm are on PATH
|
|
24
|
-
|
|
25
|
+
// Prefix to source nvm before every shell command so node/npm are on PATH.
|
|
26
|
+
//
|
|
27
|
+
// 关键:source nvm.sh 之后必须显式 `nvm use default`。nvm.sh 被 source 时的
|
|
28
|
+
// auto-use 只会激活"当前 PATH 上已有的那个 node"(nvm_ls_current 命中即
|
|
29
|
+
// `nvm use $NVM_CURRENT`),而不是 default。bootstrap 脚本只 source 一次 nvm、
|
|
30
|
+
// 把旧 node(如 22.16)钉进并 export 进 PATH,于是这里每个子进程继承到的都是
|
|
31
|
+
// 旧 node —— 即便 `okclaw check` 已经把 default 升到 24,`npm install openclaw`/
|
|
32
|
+
// `openclaw onboard`/`openclaw gateway` 仍跑在旧 node 上,触发 openclaw 的
|
|
33
|
+
// "Node.js vX is required" 而部署失败。强制 `nvm use default` 抵消这个行为,
|
|
34
|
+
// 让所有命令都跑在升级后的 default(24)。
|
|
35
|
+
// `command -v nvm` 守卫:全新主机只有 ensureNodeScript 写的极简 nvm.sh(无 nvm
|
|
36
|
+
// 函数,升级前),此时跳过 use default,不影响首个 node 的安装与版本判定。
|
|
37
|
+
const NVM_INIT = 'export HOME=/root; export NVM_DIR=/root/.nvm; '
|
|
38
|
+
+ '[ -s "$NVM_DIR/nvm.sh" ] && { source "$NVM_DIR/nvm.sh"; command -v nvm >/dev/null 2>&1 && nvm use default --silent >/dev/null 2>&1; }; ';
|
|
39
|
+
const NVM_EXEC_SCRIPT = `${NVM_INIT} exec "$@"`;
|
|
25
40
|
/**
|
|
26
|
-
* Run a shell command
|
|
27
|
-
*
|
|
41
|
+
* Run a shell command and wait for exit.
|
|
42
|
+
*
|
|
43
|
+
* text 模式:stdio:inherit,子进程输出直通父进程 TTY(本地交互体验不变)。
|
|
44
|
+
*
|
|
45
|
+
* ndjson 模式:捕获 stdout/stderr 并按行合成 phase="log" 事件(stdout→level=info,
|
|
46
|
+
* stderr→level=warn),通过 {@link getActiveEmitter} 拿到当前 op 的 emitter 发出。
|
|
47
|
+
* 这样像 `npm install` 这种几分钟才回一行 ndjson 的长操作,其实时进度也能通过
|
|
48
|
+
* 事件流推给 os-api / 前端,用户不会看到 UI 卡死 10 分钟。
|
|
49
|
+
*
|
|
50
|
+
* 透传是"尽力而为":emitter 缺失(理论上只有本地脚本直接 import shell() 且没走
|
|
51
|
+
* 正常 command 入口才会发生)时静默吞,不影响命令本身执行。
|
|
52
|
+
*
|
|
28
53
|
* Throws on non-zero exit.
|
|
29
54
|
*/
|
|
30
55
|
export function shell(cmd) {
|
|
31
56
|
return new Promise((resolve, reject) => {
|
|
57
|
+
const ndjson = isNdjson();
|
|
32
58
|
const child = spawn('bash', ['-c', NVM_INIT + cmd], {
|
|
33
|
-
stdio: 'inherit',
|
|
59
|
+
stdio: ndjson ? ['ignore', 'pipe', 'pipe'] : 'inherit',
|
|
34
60
|
env: { ...process.env, HOME: '/root' },
|
|
35
61
|
});
|
|
62
|
+
if (ndjson) {
|
|
63
|
+
forwardStreamAsLogEvents(child, 'stdout', 'info');
|
|
64
|
+
forwardStreamAsLogEvents(child, 'stderr', 'warn');
|
|
65
|
+
}
|
|
36
66
|
child.on('error', reject);
|
|
37
67
|
child.on('close', (code) => {
|
|
38
68
|
if (code === 0)
|
|
@@ -42,6 +72,77 @@ export function shell(cmd) {
|
|
|
42
72
|
});
|
|
43
73
|
});
|
|
44
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Run a command with argv instead of interpolating external values into a shell
|
|
77
|
+
* string. The fixed bash wrapper only initializes nvm, then `exec "$@"`.
|
|
78
|
+
*/
|
|
79
|
+
export function runCommand(cmd, args = [], options) {
|
|
80
|
+
return new Promise((resolve, reject) => {
|
|
81
|
+
const ndjson = isNdjson();
|
|
82
|
+
const child = spawn('bash', ['-c', NVM_EXEC_SCRIPT, 'okclaw-run', cmd, ...args], {
|
|
83
|
+
cwd: options?.cwd,
|
|
84
|
+
stdio: ndjson ? ['ignore', 'pipe', 'pipe'] : 'inherit',
|
|
85
|
+
env: { ...process.env, ...options?.env, HOME: '/root' },
|
|
86
|
+
});
|
|
87
|
+
if (ndjson) {
|
|
88
|
+
forwardStreamAsLogEvents(child, 'stdout', 'info');
|
|
89
|
+
forwardStreamAsLogEvents(child, 'stderr', 'warn');
|
|
90
|
+
}
|
|
91
|
+
child.on('error', reject);
|
|
92
|
+
child.on('close', (code) => {
|
|
93
|
+
if (code === 0)
|
|
94
|
+
resolve();
|
|
95
|
+
else
|
|
96
|
+
reject(new Error(`Command failed (exit ${code}): ${formatCommand(cmd, args)}`));
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* 把子进程的一个输出流按换行切分,每行合成一条 phase="log" ndjson 事件。
|
|
102
|
+
*
|
|
103
|
+
* 实现细节:
|
|
104
|
+
* - 跨 chunk 续行:`buf` 累积未看到 \n 的尾巴,下次 data 再拼
|
|
105
|
+
* - 空行丢弃(避免 npm 输出里的空白行污染事件流)
|
|
106
|
+
* - \r 尾字符剥掉(Windows / 终端控制字符常见)
|
|
107
|
+
* - close 时 flush 尾 buf,防止最后一行没 \n 漏掉
|
|
108
|
+
* - emitter 为空时整段 no-op,绝不抛异常——shell() 的主路径不能因日志透传失败而失败
|
|
109
|
+
*/
|
|
110
|
+
function forwardStreamAsLogEvents(child, streamName, level) {
|
|
111
|
+
const stream = child[streamName];
|
|
112
|
+
if (!stream)
|
|
113
|
+
return;
|
|
114
|
+
let buf = '';
|
|
115
|
+
stream.setEncoding('utf8');
|
|
116
|
+
stream.on('data', (chunk) => {
|
|
117
|
+
buf += chunk;
|
|
118
|
+
let idx = buf.indexOf('\n');
|
|
119
|
+
while (idx >= 0) {
|
|
120
|
+
emitLogLine(buf.slice(0, idx), level);
|
|
121
|
+
buf = buf.slice(idx + 1);
|
|
122
|
+
idx = buf.indexOf('\n');
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
stream.on('close', () => {
|
|
126
|
+
if (buf.length > 0) {
|
|
127
|
+
emitLogLine(buf, level);
|
|
128
|
+
buf = '';
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
function emitLogLine(line, level) {
|
|
133
|
+
const cleaned = line.endsWith('\r') ? line.slice(0, -1) : line;
|
|
134
|
+
if (cleaned.length === 0)
|
|
135
|
+
return;
|
|
136
|
+
const emitter = getActiveEmitter();
|
|
137
|
+
if (!emitter)
|
|
138
|
+
return;
|
|
139
|
+
try {
|
|
140
|
+
emitter.log(level, cleaned);
|
|
141
|
+
}
|
|
142
|
+
catch {
|
|
143
|
+
// log 事件透传失败不能影响命令本身执行;这里静默
|
|
144
|
+
}
|
|
145
|
+
}
|
|
45
146
|
/**
|
|
46
147
|
* Run a shell command with retries.
|
|
47
148
|
*/
|
|
@@ -59,6 +160,20 @@ export async function shellRetry(cmd, retries = 3, delayMs = 2000) {
|
|
|
59
160
|
}
|
|
60
161
|
}
|
|
61
162
|
}
|
|
163
|
+
export async function runCommandRetry(cmd, args = [], retries = 3, delayMs = 2000, options) {
|
|
164
|
+
for (let attempt = 1; attempt <= retries; attempt++) {
|
|
165
|
+
try {
|
|
166
|
+
await runCommand(cmd, args, options);
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
catch (err) {
|
|
170
|
+
if (attempt === retries)
|
|
171
|
+
throw err;
|
|
172
|
+
logError(`Attempt ${attempt}/${retries} failed, retrying in ${delayMs}ms...`);
|
|
173
|
+
await sleep(delayMs);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
62
177
|
/**
|
|
63
178
|
* Run a shell command and capture stdout/stderr.
|
|
64
179
|
*/
|
|
@@ -76,6 +191,21 @@ export function shellCapture(cmd) {
|
|
|
76
191
|
child.on('close', (code) => resolve({ code: code ?? -1, stdout: stdout.trim(), stderr: stderr.trim() }));
|
|
77
192
|
});
|
|
78
193
|
}
|
|
194
|
+
export function runCommandCapture(cmd, args = [], options) {
|
|
195
|
+
return new Promise((resolve) => {
|
|
196
|
+
const child = spawn('bash', ['-c', NVM_EXEC_SCRIPT, 'okclaw-run', cmd, ...args], {
|
|
197
|
+
cwd: options?.cwd,
|
|
198
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
199
|
+
env: { ...process.env, ...options?.env, HOME: '/root' },
|
|
200
|
+
});
|
|
201
|
+
let stdout = '';
|
|
202
|
+
let stderr = '';
|
|
203
|
+
child.stdout?.on('data', (chunk) => { stdout += String(chunk); });
|
|
204
|
+
child.stderr?.on('data', (chunk) => { stderr += String(chunk); });
|
|
205
|
+
child.on('error', (err) => resolve({ code: -1, stdout: '', stderr: String(err) }));
|
|
206
|
+
child.on('close', (code) => resolve({ code: code ?? -1, stdout: stdout.trim(), stderr: stderr.trim() }));
|
|
207
|
+
});
|
|
208
|
+
}
|
|
79
209
|
export async function commandExists(cmd) {
|
|
80
210
|
const result = await shellCapture(`command -v ${cmd}`);
|
|
81
211
|
return result.code === 0;
|
|
@@ -83,4 +213,7 @@ export async function commandExists(cmd) {
|
|
|
83
213
|
function sleep(ms) {
|
|
84
214
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
85
215
|
}
|
|
216
|
+
function formatCommand(cmd, args) {
|
|
217
|
+
return [cmd, ...args].map((part) => JSON.stringify(part)).join(' ');
|
|
218
|
+
}
|
|
86
219
|
//# sourceMappingURL=shell.js.map
|
package/dist/utils/shell.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@okclaw-build/cli",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
4
|
-
"description": "OKClaw deployment CLI - install and manage OpenClaw,
|
|
3
|
+
"version": "1.0.0-beta.60",
|
|
4
|
+
"description": "OKClaw deployment CLI - install and manage OpenClaw, channel plugins, and skills",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"bin": {
|
|
@@ -10,9 +10,11 @@
|
|
|
10
10
|
"scripts": {
|
|
11
11
|
"build": "tsc",
|
|
12
12
|
"dev": "tsc --watch",
|
|
13
|
-
"
|
|
13
|
+
"pretest": "rm -rf dist-test",
|
|
14
|
+
"prepublishOnly": "npm run build",
|
|
15
|
+
"test": "tsc -p tsconfig.test.json && node --test dist-test/tests/*.test.js dist-test/tests/*/*.test.js"
|
|
14
16
|
},
|
|
15
|
-
"keywords": ["openclaw", "
|
|
17
|
+
"keywords": ["openclaw", "deploy", "cli"],
|
|
16
18
|
"license": "MIT",
|
|
17
19
|
"devDependencies": {
|
|
18
20
|
"typescript": "^5.4.0",
|