@okclaw-build/cli 1.0.0-beta.6 → 1.0.0-beta.7

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,10 +1,5 @@
1
1
  /**
2
- * okclaw edit <target> --file <path>
3
- *
4
- * Copies a file to the openclaw workspace directory.
5
- * user → ~/.openclaw/workspace/USER.md
6
- * identity → ~/.openclaw/workspace/IDENTITY.md
7
- * soul → ~/.openclaw/workspace/SOUL.md
8
- * agents → ~/.openclaw/workspace/AGENTS.md
2
+ * 7 个受支持的编辑目标:6 markdown 位于 workspace,openclaw.json 位于 OPENCLAW_HOME。
9
3
  */
4
+ export declare const TARGETS: Record<string, string>;
10
5
  export declare function editCommand(args: string[]): Promise<void>;
@@ -1,26 +1,20 @@
1
1
  import { existsSync, mkdirSync } from 'node:fs';
2
+ import { dirname } from 'node:path';
2
3
  import { shell } from '../utils/shell.js';
3
4
  import { info, error } from '../utils/logger.js';
4
- import { OPENCLAW_WORKSPACE } from '../utils/constants.js';
5
+ import { OPENCLAW_HOME, OPENCLAW_WORKSPACE } from '../utils/constants.js';
5
6
  /**
6
- * All targets are plain files under ~/.openclaw/workspace/.
7
+ * 7 个受支持的编辑目标:6 markdown 位于 workspace,openclaw.json 位于 OPENCLAW_HOME。
7
8
  */
8
- const TARGETS = {
9
+ export const TARGETS = {
9
10
  user: `${OPENCLAW_WORKSPACE}/USER.md`,
10
11
  identity: `${OPENCLAW_WORKSPACE}/IDENTITY.md`,
11
12
  soul: `${OPENCLAW_WORKSPACE}/SOUL.md`,
12
13
  agents: `${OPENCLAW_WORKSPACE}/AGENTS.md`,
13
14
  memory: `${OPENCLAW_WORKSPACE}/MEMORY.md`,
15
+ tools: `${OPENCLAW_WORKSPACE}/TOOLS.md`,
16
+ 'openclaw-json': `${OPENCLAW_HOME}/openclaw.json`,
14
17
  };
15
- /**
16
- * okclaw edit <target> --file <path>
17
- *
18
- * Copies a file to the openclaw workspace directory.
19
- * user → ~/.openclaw/workspace/USER.md
20
- * identity → ~/.openclaw/workspace/IDENTITY.md
21
- * soul → ~/.openclaw/workspace/SOUL.md
22
- * agents → ~/.openclaw/workspace/AGENTS.md
23
- */
24
18
  export async function editCommand(args) {
25
19
  const target = args[0];
26
20
  if (!target || !TARGETS[target]) {
@@ -38,7 +32,7 @@ export async function editCommand(args) {
38
32
  process.exit(1);
39
33
  }
40
34
  const dest = TARGETS[target];
41
- mkdirSync(OPENCLAW_WORKSPACE, { recursive: true });
35
+ mkdirSync(dirname(dest), { recursive: true });
42
36
  await shell(`cp -f '${filePath}' '${dest}'`);
43
37
  info(`Written to ${dest}`);
44
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;GAEG;AACH,MAAM,OAAO,GAA2B;IACtC,IAAI,EAAM,GAAG,kBAAkB,UAAU;IACzC,QAAQ,EAAE,GAAG,kBAAkB,cAAc;IAC7C,IAAI,EAAM,GAAG,kBAAkB,UAAU;IACzC,MAAM,EAAI,GAAG,kBAAkB,YAAY;IAC3C,MAAM,EAAI,GAAG,kBAAkB,YAAY;CAC5C,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAc;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,uBAAuB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC9E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,MAAM,KAAK,CAAC,UAAU,QAAQ,MAAM,IAAI,GAAG,CAAC,CAAC;IAC7C,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE1E;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAA2B;IAC7C,IAAI,EAAa,GAAG,kBAAkB,UAAU;IAChD,QAAQ,EAAS,GAAG,kBAAkB,cAAc;IACpD,IAAI,EAAa,GAAG,kBAAkB,UAAU;IAChD,MAAM,EAAW,GAAG,kBAAkB,YAAY;IAClD,MAAM,EAAW,GAAG,kBAAkB,YAAY;IAClD,KAAK,EAAY,GAAG,kBAAkB,WAAW;IACjD,eAAe,EAAE,GAAG,aAAa,gBAAgB;CAClD,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAc;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,uBAAuB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC9E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,KAAK,CAAC,UAAU,QAAQ,MAAM,IAAI,GAAG,CAAC,CAAC;IAC7C,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * okclaw show <target>
3
+ *
4
+ * 把 target 对应的文件内容原样输出到 stdout。
5
+ * - 文件存在 → 输出文件内容,exit 0
6
+ * - 文件不存在 → 输出空内容,exit 0(视为尚未创建)
7
+ * - target 非法 → stderr 提示,exit 1
8
+ *
9
+ * `targets` 参数用于测试注入;生产调用不传第二个参数,使用 edit.ts 导出的 TARGETS。
10
+ */
11
+ export declare function showCommand(args: string[], targets?: Record<string, string>): Promise<void>;
@@ -0,0 +1,27 @@
1
+ import { existsSync, readFileSync } from 'node:fs';
2
+ import { error } from '../utils/logger.js';
3
+ import { TARGETS as DEFAULT_TARGETS } from './edit.js';
4
+ /**
5
+ * okclaw show <target>
6
+ *
7
+ * 把 target 对应的文件内容原样输出到 stdout。
8
+ * - 文件存在 → 输出文件内容,exit 0
9
+ * - 文件不存在 → 输出空内容,exit 0(视为尚未创建)
10
+ * - target 非法 → stderr 提示,exit 1
11
+ *
12
+ * `targets` 参数用于测试注入;生产调用不传第二个参数,使用 edit.ts 导出的 TARGETS。
13
+ */
14
+ export async function showCommand(args, targets = DEFAULT_TARGETS) {
15
+ const target = args[0];
16
+ if (!target || !targets[target]) {
17
+ error(`Usage: okclaw show <${Object.keys(targets).join('|')}>`);
18
+ process.exit(1);
19
+ }
20
+ const path = targets[target];
21
+ if (!existsSync(path)) {
22
+ return;
23
+ }
24
+ const content = readFileSync(path, 'utf8');
25
+ process.stdout.write(content);
26
+ }
27
+ //# sourceMappingURL=show.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,WAAW,CAAC;AAEvD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAc,EACd,UAAkC,eAAe;IAEjD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,uBAAuB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC"}
package/dist/index.js CHANGED
@@ -2,6 +2,7 @@ import { readFileSync } from 'node:fs';
2
2
  import { installCommand } from './commands/install.js';
3
3
  import { checkCommand } from './commands/check.js';
4
4
  import { editCommand } from './commands/edit.js';
5
+ import { showCommand } from './commands/show.js';
5
6
  import { feedCommand } from './commands/feed.js';
6
7
  import { startCommand, stopCommand, restartCommand, statusCommand } from './commands/service.js';
7
8
  import { ensureRoot } from './utils/shell.js';
@@ -34,6 +35,9 @@ async function main() {
34
35
  case 'edit':
35
36
  await editCommand(args);
36
37
  break;
38
+ case 'show':
39
+ await showCommand(args);
40
+ break;
37
41
  case 'feed':
38
42
  await feedCommand(args);
39
43
  break;
@@ -66,7 +70,8 @@ Usage: okclaw <command> [args...]
66
70
  okclaw stop Stop openclaw gateway
67
71
  okclaw restart Restart openclaw gateway
68
72
  okclaw status Show gateway status
69
- okclaw edit <target> --file <path> Write config file (user/identity/soul/agents)
73
+ okclaw edit <target> --file <path> Write config file (user/identity/soul/agents/memory/tools/openclaw-json)
74
+ okclaw show <target> Read config file content to stdout (user/identity/soul/agents/memory/tools/openclaw-json)
70
75
  okclaw feed --file <path> Feed file into knowledge base
71
76
 
72
77
  Components:
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEjD,KAAK,UAAU,IAAI;IACjB,2CAA2C;IAC3C,IAAI,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACvG,UAAU,EAAE,CAAC;IACf,CAAC;IAED,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM;QACR,KAAK,OAAO;YACV,MAAM,YAAY,EAAE,CAAC;YACrB,MAAM;QACR,KAAK,OAAO;YACV,MAAM,YAAY,EAAE,CAAC;YACrB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,WAAW,EAAE,CAAC;YACpB,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,cAAc,EAAE,CAAC;YACvB,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,aAAa,EAAE,CAAC;YACtB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1F,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM;QACR,CAAC;QACD,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI,CAAC;QACV,KAAK,SAAS;YACZ,SAAS,EAAE,CAAC;YACZ,MAAM;QACR;YACE,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YACrC,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCb,CAAC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEjD,KAAK,UAAU,IAAI;IACjB,2CAA2C;IAC3C,IAAI,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACvG,UAAU,EAAE,CAAC;IACf,CAAC;IAED,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM;QACR,KAAK,OAAO;YACV,MAAM,YAAY,EAAE,CAAC;YACrB,MAAM;QACR,KAAK,OAAO;YACV,MAAM,YAAY,EAAE,CAAC;YACrB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,WAAW,EAAE,CAAC;YACpB,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,cAAc,EAAE,CAAC;YACvB,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,aAAa,EAAE,CAAC;YACtB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,MAAM;YACT,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM;QACR,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1F,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM;QACR,CAAC;QACD,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI,CAAC;QACV,KAAK,SAAS;YACZ,SAAS,EAAE,CAAC;YACZ,MAAM;QACR;YACE,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YACrC,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCb,CAAC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@okclaw-build/cli",
3
- "version": "1.0.0-beta.6",
3
+ "version": "1.0.0-beta.7",
4
4
  "description": "OKClaw deployment CLI - install and manage OpenClaw, OpenViking, and channel plugins",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -10,7 +10,8 @@
10
10
  "scripts": {
11
11
  "build": "tsc",
12
12
  "dev": "tsc --watch",
13
- "prepublishOnly": "npm run build"
13
+ "prepublishOnly": "npm run build",
14
+ "test": "tsc -p tsconfig.test.json && node --test dist-test/tests/**/*.test.js"
14
15
  },
15
16
  "keywords": ["openclaw", "openviking", "deploy", "cli"],
16
17
  "license": "MIT",