create-openclaw-bot 5.3.0 → 5.3.4

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/test-path.bat ADDED
@@ -0,0 +1,4 @@
1
+ @echo off
2
+ set "PROJECT_DIR=D:\test"
3
+ echo Path1: "%PROJECT_DIR%\.env"
4
+ echo Path2: "%PROJECT_DIR%\\.env"
@@ -269,7 +269,7 @@ checks.push(() => expectMatch(
269
269
 
270
270
  checks.push(() => expectMatch(
271
271
  cli,
272
- /function resolveNative9RouterDesktopLaunch\(\) \{[\s\S]*resolveCommandOnPath\('9router'\)[\s\S]*command: routerBin[\s\S]*args: \['-n', '-l', '-H', '0\.0\.0\.0', '-p', '20128', '--skip-update'\][\s\S]*PORT: '20128'[\s\S]*HOSTNAME: '0\.0\.0\.0'/s,
272
+ /function resolveNative9RouterDesktopLaunch\(\) \{[\s\S]*resolveCommandOnPath\('9router'\)[\s\S]*command: routerBin[\s\S]*args: \['-n', '-H', '0\.0\.0\.0', '-p', '20128', '--skip-update'\][\s\S]*PORT: '20128'[\s\S]*HOSTNAME: '0\.0\.0\.0'/s,
273
273
  'Native desktop 9Router launch must use the 9router CLI binary directly with server args to bypass the interactive menu'
274
274
  ));
275
275
 
@@ -391,13 +391,11 @@ checks.push(() => expect(
391
391
  && setup.includes('function native9RouterServerEntryLookup() {')
392
392
  && setup.includes('return "node -e ')
393
393
  && !setup.includes('return "node -p ')
394
- && setup.includes('function windowsHiddenNodeLaunch(targetPath, extraEnv = {}) {')
395
- && setup.includes('NINE_ROUTER_ENTRY=%%I')
396
- && setup.includes("windowsHiddenNodeLaunch('%NINE_ROUTER_ENTRY%', { PORT: '20128', HOSTNAME: '0.0.0.0', DATA_DIR: '%DATA_DIR%' })")
397
- && setup.includes('NINE_ROUTER_ENTRY="$(${native9RouterServerEntryLookup()})"')
394
+ && setup.includes("oc-start9r.ps1") // Windows: writes temp PS1 launcher to avoid CMD→PS quoting issues
395
+ && setup.includes('NINE_ROUTER_BIN="$(command -v 9router)"')
396
+ && setup.includes('"$NINE_ROUTER_BIN" -n -H 0.0.0.0 -p 20128 --skip-update')
398
397
  && setup.includes("const p=path.join(process.env.DATA_DIR||'.9router','db.json');")
399
- && setup.includes('nohup env PORT=20128 HOSTNAME=0.0.0.0 DATA_DIR="$PWD/.9router" node "$NINE_ROUTER_ENTRY" >/tmp/9router.log 2>&1 &')
400
- && setup.includes('nohup env DATA_DIR="$PWD/.9router" node ./.openclaw/9router-smart-route-sync.js >/tmp/9router-sync.log 2>&1 &')
398
+ && setup.includes('nohup env DATA_DIR="$PWD/.9router" node ./.9router/9router-smart-route-sync.js > /tmp/9router-sync.log 2>&1 &')
401
399
  && setup.includes('set "PROJECT_DIR=')
402
400
  && setup.includes('set "OPENCLAW_HOME=%PROJECT_DIR%\\\\.openclaw"')
403
401
  && setup.includes('set "OPENCLAW_STATE_DIR=%PROJECT_DIR%\\\\.openclaw"')
@@ -423,9 +421,9 @@ checks.push(() => expect(
423
421
  && setup.includes("state.bots[state.activeBotIndex].model = p.models[0].id;")
424
422
  && setup.includes("state.bots[state.activeBotIndex].provider = state.config.provider;")
425
423
  && setup.includes("state.bots[state.activeBotIndex].model = state.config.model;")
426
- && setup.includes("if (state.botCount <= 1 && state.bots[state.activeBotIndex]) {")
427
- && setup.includes("state.bots[state.activeBotIndex].token = botTokenEl.value;")
428
- && setup.includes("state.bots[state.activeBotIndex].apiKey = apiKeyEl.value;")
424
+ && setup.includes("if (state.botCount <= 1 && state.bots[0]) {")
425
+ && setup.includes("state.bots[0].token = botTokenEl.value;")
426
+ && setup.includes("state.bots[0].apiKey = apiKeyEl.value;")
429
427
  && setup.includes("const authProviderName = provider.isProxy ? '9router' : state.config.provider;")
430
428
  && setup.includes("const authProviderName = botProvider.isProxy ? '9router' : (bot.provider || state.config.provider);")
431
429
  && setup.includes("const nativeSkillConfigs = state.config.skills")
@@ -435,8 +433,8 @@ checks.push(() => expect(
435
433
  && setup.includes("lines.push('echo Cai skills...');")
436
434
  && setup.includes("const openClawRuntimePackages = 'grammy @grammyjs/runner @grammyjs/transformer-throttler @buape/carbon @larksuiteoapi/node-sdk @slack/web-api';")
437
435
  && setup.includes("memory: 'none'")
438
- && setup.includes("workspace: 'workspace'")
439
- && setup.includes("workspace: meta.workspaceDir")
436
+ && setup.includes("workspace-\${agentId}\`")
437
+ && setup.includes("workspace: '.openclaw/' + meta.workspaceDir")
440
438
  && !setup.includes("const authProviderName = provider.isProxy ? '9router' : provider.id;")
441
439
  && !setup.includes("const authProviderName = botProvider.isProxy ? '9router' : botProvider.id;"),
442
440
  'Wizard native config generation must keep gateway loopback-local, preserve concrete auth provider ids, disable memory search by default, and sync single-bot provider/model selections into bot state'
@@ -480,7 +478,7 @@ checks.push(() => expect(
480
478
 
481
479
  checks.push(() => expectMatch(
482
480
  setup,
483
- /\.openclaw\/9router-smart-route-sync\.js[\s\S]*pm2 start --name openclaw-9router-sync/s,
481
+ /\.9router\/9router-smart-route-sync\.js[\s\S]*pm2 start --name openclaw-9router-sync/s,
484
482
  'VPS native script generation must write and run the 9Router smart-route sync loop'
485
483
  ));
486
484
 
@@ -538,8 +536,8 @@ checks.push(() => expectMatch(
538
536
 
539
537
  checks.push(() => expectMatch(
540
538
  setup,
541
- /Native setup now auto-runs the login flow and copies the QR into the project folder[\s\S]*docker compose exec -it ai-bot openclaw channels login --channel zalouser --verbose[\s\S]*docker compose cp ai-bot:\/tmp\/openclaw\/openclaw-zalouser-qr-default\.png \.\/zalo-login-qr\.png/s,
542
- 'Wizard copy must mention native auto-login and still show the dedicated Docker QR login command'
539
+ /docker compose exec -it ai-bot openclaw channels login --channel zalouser[\s\S]*docker compose cp ai-bot:\/tmp\/openclaw\/openclaw-zalouser-qr-default\.png \.\/zalo-login-qr\.png/s,
540
+ 'Wizard must show dedicated Docker Zalo login and QR copy commands'
543
541
  ));
544
542
 
545
543
  checks.push(() => expect(
@@ -568,6 +566,17 @@ checks.push(() => expectMatch(
568
566
  'Web wizard Docker patch command must add interface-based control UI allowed origins'
569
567
  ));
570
568
 
569
+ checks.push(() => expect(
570
+ setup.includes("echo [OK] OpenClaw da duoc cai dat thanh cong.")
571
+ && setup.includes("echo [OK] 9Router da duoc cai dat thanh cong."),
572
+ 'Windows BAT must print install success messages after openclaw and 9router are installed'
573
+ ));
574
+
575
+ checks.push(() => expect(
576
+ setup.includes("openclaw gateway stop 2>nul"),
577
+ 'Windows Zalo flow must clear stale gateway lock (from channels login mini-runtime) before starting the main gateway'
578
+ ));
579
+
571
580
  for (const check of checks) {
572
581
  check();
573
582
  }
@@ -1,54 +0,0 @@
1
- # 1.0.0 - 2016-01-07
2
-
3
- - Removed: unused speed test
4
- - Added: Automatic routing between previously unsupported conversions
5
- ([#27](https://github.com/Qix-/color-convert/pull/27))
6
- - Removed: `xxx2xxx()` and `xxx2xxxRaw()` functions
7
- ([#27](https://github.com/Qix-/color-convert/pull/27))
8
- - Removed: `convert()` class
9
- ([#27](https://github.com/Qix-/color-convert/pull/27))
10
- - Changed: all functions to lookup dictionary
11
- ([#27](https://github.com/Qix-/color-convert/pull/27))
12
- - Changed: `ansi` to `ansi256`
13
- ([#27](https://github.com/Qix-/color-convert/pull/27))
14
- - Fixed: argument grouping for functions requiring only one argument
15
- ([#27](https://github.com/Qix-/color-convert/pull/27))
16
-
17
- # 0.6.0 - 2015-07-23
18
-
19
- - Added: methods to handle
20
- [ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) 16/256 colors:
21
- - rgb2ansi16
22
- - rgb2ansi
23
- - hsl2ansi16
24
- - hsl2ansi
25
- - hsv2ansi16
26
- - hsv2ansi
27
- - hwb2ansi16
28
- - hwb2ansi
29
- - cmyk2ansi16
30
- - cmyk2ansi
31
- - keyword2ansi16
32
- - keyword2ansi
33
- - ansi162rgb
34
- - ansi162hsl
35
- - ansi162hsv
36
- - ansi162hwb
37
- - ansi162cmyk
38
- - ansi162keyword
39
- - ansi2rgb
40
- - ansi2hsl
41
- - ansi2hsv
42
- - ansi2hwb
43
- - ansi2cmyk
44
- - ansi2keyword
45
- ([#18](https://github.com/harthur/color-convert/pull/18))
46
-
47
- # 0.5.3 - 2015-06-02
48
-
49
- - Fixed: hsl2hsv does not return `NaN` anymore when using `[0,0,0]`
50
- ([#15](https://github.com/harthur/color-convert/issues/15))
51
-
52
- ---
53
-
54
- Check out commit logs for older releases