@wecom/wecom-openclaw-cli 1.0.20 → 1.0.21

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.
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAyJA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoI9I"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AA0JA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoJ9I"}
@@ -10,6 +10,7 @@ var qrcode = require('../utils/qrcode.js');
10
10
  var update = require('./update.js');
11
11
  var constants = require('../utils/constants.js');
12
12
  var plugin = require('../utils/plugin.js');
13
+ var version = require('../utils/version.js');
13
14
 
14
15
  function _interopNamespaceDefault(e) {
15
16
  var n = Object.create(null);
@@ -205,10 +206,17 @@ async function installCommand(options) {
205
206
  console.log(chalk.blue(`正在移除插件目录: ${constants.PLUGIN_PATH}...`));
206
207
  await fs__namespace.remove(constants.PLUGIN_PATH);
207
208
  }
208
- // 步骤 3:备份并移除 channels.wecom → 安装插件 → 处理配置还原
209
+ // 步骤 3:解析兼容的插件版本
210
+ const forceResolution = version.resolvePluginVersion(options.version);
211
+ if (forceResolution.reason === 'no-match') {
212
+ console.error(chalk.red(`错误: ${forceResolution.message}`));
213
+ process.exit(1);
214
+ }
215
+ console.log(chalk.blue(forceResolution.message));
216
+ // 步骤 4:备份并移除 channels.wecom → 安装插件 → 处理配置还原
209
217
  const channelBackup = await backupAndRemoveChannelConfig();
210
218
  console.log(chalk.blue('正在安装官方 WeCom 插件...'));
211
- if (!plugin.installPluginFromRegistry(options.version, options.packageName)) {
219
+ if (!plugin.installPluginFromRegistry(forceResolution.version ?? undefined, options.packageName)) {
212
220
  process.exit(1);
213
221
  }
214
222
  await handleChannelConfigAfterInstall(channelBackup, !!options.skipConfig);
@@ -258,10 +266,17 @@ async function installCommand(options) {
258
266
  await fs__namespace.remove(conflictPath);
259
267
  }
260
268
  }
261
- // 步骤 5:备份并移除 channels.wecom → 安装插件 → 处理配置还原
269
+ // 步骤 5:解析兼容的插件版本
270
+ const resolution = version.resolvePluginVersion(options.version);
271
+ if (resolution.reason === 'no-match') {
272
+ console.error(chalk.red(`错误: ${resolution.message}`));
273
+ process.exit(1);
274
+ }
275
+ console.log(chalk.blue(resolution.message));
276
+ // 步骤 6:备份并移除 channels.wecom → 安装插件 → 处理配置还原
262
277
  const channelBackup = await backupAndRemoveChannelConfig();
263
278
  console.log(chalk.blue('正在安装官方 WeCom 插件...'));
264
- if (!plugin.installPluginFromRegistry(options.version, options.packageName)) {
279
+ if (!plugin.installPluginFromRegistry(resolution.version ?? undefined, options.packageName)) {
265
280
  process.exit(1);
266
281
  }
267
282
  await handleChannelConfigAfterInstall(channelBackup, !!options.skipConfig);
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sources":["../../src/commands/install.ts"],"sourcesContent":[null],"names":["config","readConfig","CHANNEL_NAME","writeConfig","promptRestoreChannelConfig","PLUGIN_NAME","promptConfirmBotId","promptBindMethod","scanQRCodeForBotInfo","promptBotId","promptSecret","disableConflictPlugins","removePluginConfig","CONFLICT_PLUGIN_PATHS","fs","PLUGIN_PATH","installPluginFromRegistry","updateCommand","validateVersion","getPlatformCommand","runCommandQuiet","compareVersions","path","runCommand"],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sources":["../../src/commands/install.ts"],"sourcesContent":[null],"names":["config","readConfig","CHANNEL_NAME","writeConfig","promptRestoreChannelConfig","PLUGIN_NAME","promptConfirmBotId","promptBindMethod","scanQRCodeForBotInfo","promptBotId","promptSecret","disableConflictPlugins","removePluginConfig","CONFLICT_PLUGIN_PATHS","fs","PLUGIN_PATH","resolvePluginVersion","installPluginFromRegistry","updateCommand","validateVersion","getPlatformCommand","runCommandQuiet","compareVersions","path","runCommand"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var name = "@wecom/wecom-openclaw-cli";
6
- var version = "1.0.20";
6
+ var version = "1.0.21";
7
7
  var description = "CLI for managing WeCom official plugin for OpenClaw";
8
8
  var main = "dist/index.js";
9
9
  var type = "commonjs";
@@ -0,0 +1,61 @@
1
+ /**
2
+ * 版本兼容映射表条目
3
+ */
4
+ interface VersionCompatEntry {
5
+ /** 插件版本 */
6
+ pluginVersion: string;
7
+ /** 兼容的最低 openclaw 版本 */
8
+ minOpenclawVersion: string;
9
+ /** 兼容的最高 openclaw 版本(可选,不填则无上限) */
10
+ maxOpenclawVersion?: string;
11
+ }
12
+ /**
13
+ * 版本解析结果
14
+ */
15
+ export interface VersionResolution {
16
+ /** 解析出的插件版本,null 表示使用最新版(不指定版本) */
17
+ version: string | null;
18
+ /** 解析原因 */
19
+ reason: 'exact' | 'compat' | 'check-failed' | 'no-match';
20
+ /** 描述信息 */
21
+ message: string;
22
+ }
23
+ /**
24
+ * 版本兼容映射表
25
+ *
26
+ * 根据用户本地的 openclaw 版本,自动匹配应安装的插件版本。
27
+ *
28
+ * ┌─ 映射规则 ────────────────────────────────────────────┐
29
+ * │ openclaw >= 2026.3.22 → 安装插件 2026.3.24 │
30
+ * │ openclaw < 2026.3.22 → 安装插件 2026.3.20 │
31
+ * └───────────────────────────────────────────────────────┘
32
+ *
33
+ * ┌─ 如何新增条目 ────────────────────────────────────────┐
34
+ * │ 1. 在数组首位插入新条目(保持版本降序) │
35
+ * │ 2. 填写 pluginVersion 和 minOpenclawVersion │
36
+ * │ 3. 为上一条补充 maxOpenclawVersion 以划定版本边界 │
37
+ * └───────────────────────────────────────────────────────┘
38
+ */
39
+ export declare const VERSION_MAP: VersionCompatEntry[];
40
+ /**
41
+ * 检测本地安装的 openclaw 版本
42
+ * @returns 版本号字符串(如 "2026.3.22"),检测失败返回 null
43
+ */
44
+ export declare function detectOpenclawVersion(): string | null;
45
+ /**
46
+ * 根据本地 openclaw 版本,解析应安装的插件版本
47
+ *
48
+ * ┌─ 解析流程 ────────────────────────────────────────────┐
49
+ * │ 1. 用户通过 --version 手动指定 → 直接采用 │
50
+ * │ 2. 自动检测本地 openclaw 版本 │
51
+ * │ 检测失败 → 回退到最新插件版本并输出警告 │
52
+ * │ 3. 按映射表从新到旧逐条匹配 (min <= openclaw <= max) │
53
+ * │ 4. openclaw 高于所有条目上限 → 回退到最新插件版本 │
54
+ * │ 5. openclaw 低于最低要求 → 提示用户升级 │
55
+ * └───────────────────────────────────────────────────────┘
56
+ *
57
+ * @param userSpecifiedVersion 用户通过 --version 指定的版本,undefined 表示未指定
58
+ */
59
+ export declare function resolvePluginVersion(userSpecifiedVersion?: string): VersionResolution;
60
+ export {};
61
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,UAAU,kBAAkB;IAC1B,WAAW;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,wBAAwB;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mCAAmC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,mCAAmC;IACnC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW;IACX,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,cAAc,GAAG,UAAU,CAAC;IACzD,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,WAAW,EAAE,kBAAkB,EAG3C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,IAAI,CAerD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,oBAAoB,CAAC,EAAE,MAAM,GAC5B,iBAAiB,CAsDnB"}
@@ -0,0 +1,114 @@
1
+ 'use strict';
2
+
3
+ var system = require('./system.js');
4
+ var plugin = require('./plugin.js');
5
+
6
+ /**
7
+ * 版本兼容映射表
8
+ *
9
+ * 根据用户本地的 openclaw 版本,自动匹配应安装的插件版本。
10
+ *
11
+ * ┌─ 映射规则 ────────────────────────────────────────────┐
12
+ * │ openclaw >= 2026.3.22 → 安装插件 2026.3.24 │
13
+ * │ openclaw < 2026.3.22 → 安装插件 2026.3.20 │
14
+ * └───────────────────────────────────────────────────────┘
15
+ *
16
+ * ┌─ 如何新增条目 ────────────────────────────────────────┐
17
+ * │ 1. 在数组首位插入新条目(保持版本降序) │
18
+ * │ 2. 填写 pluginVersion 和 minOpenclawVersion │
19
+ * │ 3. 为上一条补充 maxOpenclawVersion 以划定版本边界 │
20
+ * └───────────────────────────────────────────────────────┘
21
+ */
22
+ const VERSION_MAP = [
23
+ { pluginVersion: 'latest', minOpenclawVersion: '2026.3.22' },
24
+ { pluginVersion: '2026.3.20', minOpenclawVersion: '2026.2.13', maxOpenclawVersion: '2026.3.13' },
25
+ ];
26
+ /**
27
+ * 检测本地安装的 openclaw 版本
28
+ * @returns 版本号字符串(如 "2026.3.22"),检测失败返回 null
29
+ */
30
+ function detectOpenclawVersion() {
31
+ try {
32
+ const openclawCmd = system.getPlatformCommand('openclaw');
33
+ const output = system.runCommandQuiet(`${openclawCmd} --version`);
34
+ if (!output)
35
+ return null;
36
+ // openclaw --version 可能输出多行,取最后一行非空行
37
+ // 格式示例: "OpenClaw 2026.3.22 (commit)" 或 "2026.3.22"
38
+ const lines = output.split('\n').map(l => l.trim()).filter(Boolean);
39
+ const lastLine = lines[lines.length - 1];
40
+ const versionMatch = lastLine ? lastLine.match(/(?:OpenClaw\s+)?(\d+\.\d+\.\d+)/) : null;
41
+ return versionMatch ? versionMatch[1] ?? null : null;
42
+ }
43
+ catch {
44
+ return null;
45
+ }
46
+ }
47
+ /**
48
+ * 根据本地 openclaw 版本,解析应安装的插件版本
49
+ *
50
+ * ┌─ 解析流程 ────────────────────────────────────────────┐
51
+ * │ 1. 用户通过 --version 手动指定 → 直接采用 │
52
+ * │ 2. 自动检测本地 openclaw 版本 │
53
+ * │ 检测失败 → 回退到最新插件版本并输出警告 │
54
+ * │ 3. 按映射表从新到旧逐条匹配 (min <= openclaw <= max) │
55
+ * │ 4. openclaw 高于所有条目上限 → 回退到最新插件版本 │
56
+ * │ 5. openclaw 低于最低要求 → 提示用户升级 │
57
+ * └───────────────────────────────────────────────────────┘
58
+ *
59
+ * @param userSpecifiedVersion 用户通过 --version 指定的版本,undefined 表示未指定
60
+ */
61
+ function resolvePluginVersion(userSpecifiedVersion) {
62
+ // 1. 用户显式指定版本 — 直接使用
63
+ if (userSpecifiedVersion) {
64
+ return {
65
+ version: userSpecifiedVersion,
66
+ reason: 'exact',
67
+ message: `用户指定版本: ${userSpecifiedVersion}`,
68
+ };
69
+ }
70
+ // 2. 检测本地 openclaw 版本
71
+ const localVersion = detectOpenclawVersion();
72
+ if (!localVersion) {
73
+ return {
74
+ version: null,
75
+ reason: 'check-failed',
76
+ message: `无法检测 OpenClaw 版本,默认安装最新兼容插件版本`,
77
+ };
78
+ }
79
+ // 3. 遍历映射表,找到兼容的插件版本
80
+ for (const entry of VERSION_MAP) {
81
+ const meetsMin = plugin.compareVersions(localVersion, entry.minOpenclawVersion) >= 0;
82
+ const meetsMax = entry.maxOpenclawVersion
83
+ ? plugin.compareVersions(localVersion, entry.maxOpenclawVersion) <= 0
84
+ : true;
85
+ if (meetsMin && meetsMax) {
86
+ return {
87
+ version: entry.pluginVersion,
88
+ reason: 'compat',
89
+ message: `OpenClaw: ${localVersion} 插件支持的最高版本: ${entry.pluginVersion}`,
90
+ };
91
+ }
92
+ }
93
+ // 4. 未命中任何条目
94
+ // 如果 openclaw 版本 >= 最新条目的 minOpenclawVersion,说明是更新的版本,fallback 到最新
95
+ const latestEntry = VERSION_MAP[0];
96
+ if (plugin.compareVersions(localVersion, latestEntry.minOpenclawVersion) >= 0) {
97
+ return {
98
+ version: latestEntry.pluginVersion,
99
+ reason: 'compat',
100
+ message: `OpenClaw: ${localVersion} 插件支持的最高版本: ${latestEntry.pluginVersion}`,
101
+ };
102
+ }
103
+ // 5. openclaw 版本太旧,不在任何兼容范围内
104
+ return {
105
+ version: null,
106
+ reason: 'no-match',
107
+ message: `OpenClaw(${localVersion}) 版本过低、请升级到新版本OpenClaw。`,
108
+ };
109
+ }
110
+
111
+ exports.VERSION_MAP = VERSION_MAP;
112
+ exports.detectOpenclawVersion = detectOpenclawVersion;
113
+ exports.resolvePluginVersion = resolvePluginVersion;
114
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sources":["../../src/utils/version.ts"],"sourcesContent":[null],"names":["getPlatformCommand","runCommandQuiet","compareVersions"],"mappings":";;;;;AA2BA;;;;;;;;;;;;;;;AAeG;AACI,MAAM,WAAW,GAAyB;AAC/C,IAAA,EAAE,aAAa,EAAE,QAAQ,EAAE,kBAAkB,EAAE,WAAW,EAAE;IAC5D,EAAE,aAAa,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE;;AAGlG;;;AAGG;SACa,qBAAqB,GAAA;AACnC,IAAA,IAAI;AACF,QAAA,MAAM,WAAW,GAAGA,yBAAkB,CAAC,UAAU,CAAC;QAClD,MAAM,MAAM,GAAGC,sBAAe,CAAC,GAAG,WAAW,CAAA,UAAA,CAAY,CAAC;AAC1D,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,IAAI;;;QAIxB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AACxC,QAAA,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,iCAAiC,CAAC,GAAG,IAAI;AACxF,QAAA,OAAO,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,IAAI;IACtD;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,IAAI;IACb;AACF;AAEA;;;;;;;;;;;;;AAaG;AACG,SAAU,oBAAoB,CAClC,oBAA6B,EAAA;;IAG7B,IAAI,oBAAoB,EAAE;QACxB,OAAO;AACL,YAAA,OAAO,EAAE,oBAAoB;AAC7B,YAAA,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,CAAA,QAAA,EAAW,oBAAoB,CAAA,CAAE;SAC3C;IACH;;AAGA,IAAA,MAAM,YAAY,GAAG,qBAAqB,EAAE;IAE5C,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,cAAc;AACtB,YAAA,OAAO,EAAE,CAAA,6BAAA,CAA+B;SACzC;IACH;;AAGA,IAAA,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE;AAC/B,QAAA,MAAM,QAAQ,GAAGC,sBAAe,CAAC,YAAY,EAAE,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC;AAC7E,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC;cACnBA,sBAAe,CAAC,YAAY,EAAE,KAAK,CAAC,kBAAkB,CAAC,IAAI;cAC3D,IAAI;AAER,QAAA,IAAI,QAAQ,IAAI,QAAQ,EAAE;YACxB,OAAO;gBACL,OAAO,EAAE,KAAK,CAAC,aAAa;AAC5B,gBAAA,MAAM,EAAE,QAAQ;AAChB,gBAAA,OAAO,EAAE,CAAA,UAAA,EAAa,YAAY,eAAe,KAAK,CAAC,aAAa,CAAA,CAAE;aACvE;QACH;IACF;;;AAIA,IAAA,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC;IAClC,IAAIA,sBAAe,CAAC,YAAY,EAAE,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;QACtE,OAAO;YACL,OAAO,EAAE,WAAW,CAAC,aAAa;AAClC,YAAA,MAAM,EAAE,QAAQ;AAChB,YAAA,OAAO,EAAE,CAAA,UAAA,EAAa,YAAY,eAAe,WAAW,CAAC,aAAa,CAAA,CAAE;SAC7E;IACH;;IAGA,OAAO;AACL,QAAA,OAAO,EAAE,IAAI;AACb,QAAA,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE,CAAA,SAAA,EAAY,YAAY,CAAA,uBAAA,CAAyB;KAC3D;AACH;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wecom/wecom-openclaw-cli",
3
- "version": "1.0.20",
3
+ "version": "1.0.21",
4
4
  "description": "CLI for managing WeCom official plugin for OpenClaw",
5
5
  "main": "dist/index.js",
6
6
  "type": "commonjs",