create-openclaw-bot 5.11.0 → 5.11.1

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/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
  *Run one command → open the dashboard → your bot is live. Windows · macOS · Linux · VPS — Docker-powered, auto-installed for you.*
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/tuanminhhole/openclaw-setup/releases"><img src="https://img.shields.io/badge/RELEASE-v5.11.0-0EA5E9?style=for-the-badge" alt="Version 5.11.0" /></a>
10
+ <a href="https://github.com/tuanminhhole/openclaw-setup/releases"><img src="https://img.shields.io/badge/RELEASE-v5.11.1-0EA5E9?style=for-the-badge" alt="Version 5.11.1" /></a>
11
11
  <a href="https://github.com/tuanminhhole/openclaw-setup?tab=MIT-1-ov-file"><img src="https://img.shields.io/badge/LICENSE-MIT-success?style=for-the-badge" alt="MIT License" /></a>
12
12
  <a href="https://www.npmjs.com/package/create-openclaw-bot"><img src="https://img.shields.io/npm/v/create-openclaw-bot?style=for-the-badge&label=CLI&color=2563EB&logo=npm&logoColor=white" alt="NPM Version" /></a>
13
13
  <a href="https://github.com/tuanminhhole/openclaw-setup/stargazers"><img src="https://img.shields.io/github/stars/tuanminhhole/openclaw-setup?style=for-the-badge&color=eab308&logo=github&logoColor=white" alt="GitHub Stars" /></a>
@@ -27,12 +27,20 @@
27
27
 
28
28
  ---
29
29
 
30
- ## 🆕 What's New in v5.11.0
30
+ ## 🆕 What's New in v5.11.1
31
+
32
+ - 📄 **Workspace defaults, rebuilt on OpenClaw's canonical files**: new bots get all 7 upstream default workspace files (`AGENTS`/`BOOTSTRAP`/`HEARTBEAT`/`IDENTITY`/`SOUL`/`TOOLS`/`USER.md`) as the base, with this project's extra rules appended as clearly-marked add-ons — VI + EN, every bot variant.
33
+ - 🗄️ **SQLite "disk I/O error" on Docker Desktop — fixed**: `.openclaw/state` now lives in a named volume on macOS/Windows (WAL locking doesn't survive virtiofs); Linux/VPS keeps the bind mount.
34
+
35
+ <details>
36
+ <summary><b>Previous: What's new in v5.11.0</b></summary>
31
37
 
32
38
  - 🚀 **Facebook Messenger, 1-click**: the `fb-messenger` plugin is now **public on ClawHub** and installs straight from the dashboard — create a Messenger bot, open **Bot → Plugins**, and hit **Install** on the `openclaw-fb-messenger` card. Webhook + Graph API, auto User→Page token, HMAC verify.
33
39
  - 🐳 **Docker-only, rock-solid**: dropped the native (non-Docker) install path to focus on the Docker flow that runs flawlessly and stably across Windows / macOS / Linux / VPS, with cross-OS Docker auto-install.
34
40
  - 🖥️ **Chrome-debug on headless VPS**: the browser-automation Chrome-debug relay now works on a headless VPS (bridge-IP-scoped, auto-opens ufw); the bot file editor also saves non-`.md` text files.
35
41
 
42
+ </details>
43
+
36
44
  <details>
37
45
  <summary><b>Previous: What's new in v5.10.1</b></summary>
38
46
 
package/README.vi.md CHANGED
@@ -7,7 +7,7 @@
7
7
  *Chạy một lệnh → mở dashboard → bot lên sóng. Windows · macOS · Linux · VPS — chạy trên Docker, tự cài giúp bạn.*
8
8
 
9
9
  <p align="center">
10
- <a href="https://github.com/tuanminhhole/openclaw-setup/releases"><img src="https://img.shields.io/badge/RELEASE-v5.11.0-0EA5E9?style=for-the-badge" alt="Version 5.11.0" /></a>
10
+ <a href="https://github.com/tuanminhhole/openclaw-setup/releases"><img src="https://img.shields.io/badge/RELEASE-v5.11.1-0EA5E9?style=for-the-badge" alt="Version 5.11.1" /></a>
11
11
  <a href="https://github.com/tuanminhhole/openclaw-setup?tab=MIT-1-ov-file"><img src="https://img.shields.io/badge/LICENSE-MIT-success?style=for-the-badge" alt="MIT License" /></a>
12
12
  <a href="https://www.npmjs.com/package/create-openclaw-bot"><img src="https://img.shields.io/npm/v/create-openclaw-bot?style=for-the-badge&label=CLI&color=2563EB&logo=npm&logoColor=white" alt="NPM Version" /></a>
13
13
  <a href="https://github.com/tuanminhhole/openclaw-setup/stargazers"><img src="https://img.shields.io/github/stars/tuanminhhole/openclaw-setup?style=for-the-badge&color=eab308&logo=github&logoColor=white" alt="GitHub Stars" /></a>
@@ -27,12 +27,20 @@
27
27
 
28
28
  ---
29
29
 
30
- ## 🆕 Có gì mới trong v5.11.0
30
+ ## 🆕 Có gì mới trong v5.11.1
31
+
32
+ - 📄 **Workspace mặc định dựng lại theo bộ file chuẩn OpenClaw**: bot tạo mới nhận đủ 7 file workspace gốc (`AGENTS`/`BOOTSTRAP`/`HEARTBEAT`/`IDENTITY`/`SOUL`/`TOOLS`/`USER.md`) làm khung, quy tắc riêng của dự án gắn thành mục bổ sung đánh dấu rõ — đủ VI + EN, mọi kiểu bot.
33
+ - 🗄️ **Hết lỗi SQLite "disk I/O error" trên Docker Desktop**: `.openclaw/state` chuyển sang named volume trên macOS/Windows (khóa WAL không sống nổi qua virtiofs); Linux/VPS vẫn bind mount như cũ.
34
+
35
+ <details>
36
+ <summary><b>Trước đó: Có gì mới trong v5.11.0</b></summary>
31
37
 
32
38
  - 🚀 **Facebook Messenger, cài 1 chạm**: plugin `fb-messenger` giờ đã **public trên ClawHub** và cài ngay trên dashboard — tạo bot Messenger, mở **Bot → Plugins**, bấm **Cài** ở thẻ `openclaw-fb-messenger`. Webhook + Graph API, tự đổi User→Page token, xác minh HMAC.
33
39
  - 🐳 **Chỉ còn Docker, cực ổn định**: loại bỏ kiểu cài native (không Docker) để tập trung cho luồng Docker chạy hoàn hảo & ổn định trên Windows / macOS / Linux / VPS, kèm tự cài Docker đa hệ điều hành.
34
40
  - 🖥️ **Chrome-debug trên VPS headless**: relay Chrome-debug của browser-automation giờ chạy được trên VPS headless (giới hạn theo bridge-IP, tự mở ufw); trình sửa file bot cũng lưu được file text không phải `.md`.
35
41
 
42
+ </details>
43
+
36
44
  <details>
37
45
  <summary><b>Trước đó: Có gì mới trong v5.10.1</b></summary>
38
46
 
@@ -231,6 +231,16 @@ if(touched){console.log('[patch-9router] Applied Codex compatibility patch.');}e
231
231
  const useExtensionsVolume = osChoice === 'win';
232
232
  const extVolMount = useExtensionsVolume ? '\n - openclaw-extensions:/home/node/project/.openclaw/extensions' : '';
233
233
  const extVolDecl = useExtensionsVolume ? '\n openclaw-extensions:' : '';
234
+ // SQLite state on Docker Desktop (macOS/Windows): the host bind mount goes through a
235
+ // virtualized file share (virtiofs/gRPC-FUSE) whose locking/mmap semantics break SQLite WAL —
236
+ // OpenClaw crashes with `Error: disk I/O error` on write (e.g. when a Zalo message arrives).
237
+ // Keep `.openclaw/state` on a named volume (the Linux VM's native filesystem) instead; the
238
+ // rest of `.openclaw` stays bind-mounted so workspaces/config remain visible on the host.
239
+ // Linux/VPS bind mounts are native ext4 — unchanged there (and state stays host-visible).
240
+ const useStateVolume = osChoice === 'macos' || osChoice === 'win';
241
+ const stateVolMount = useStateVolume ? '\n - openclaw-state:/home/node/project/.openclaw/state' : '';
242
+ const stateVolDecl = useStateVolume ? '\n openclaw-state:' : '';
243
+ const stateVolBlock = useStateVolume ? '\n\nvolumes:\n openclaw-state:' : '';
234
244
  const skillLines = dockerfileSkillInstallMode === 'build' && allSkills.length > 0
235
245
  ? `\n# Install skills (ClawHub)\n${allSkills.map((skill) => `RUN openclaw skills install ${skill} || echo "Warning: Failed to install ${skill} due to rate limits."`).join('\n')}\n`
236
246
  : '';
@@ -395,7 +405,7 @@ services:
395
405
  env_file:
396
406
  - ../../.env
397
407
  ${appEnvironmentBlock}${dependsOn}${extraHosts} volumes:
398
- - ${volumeMount}
408
+ - ${volumeMount}${stateVolMount}
399
409
  ports:
400
410
  - "127.0.0.1:${gatewayPort}:${gatewayPort}"
401
411
 
@@ -420,7 +430,7 @@ ${indentBlock(docker9RouterEntrypointScript, 8)}
420
430
  - "127.0.0.1:${routerPort}:${routerPort}"
421
431
 
422
432
  volumes:
423
- 9router-data:`;
433
+ 9router-data:${stateVolDecl}`;
424
434
  } else if (isLocal) {
425
435
  const ollamaModelTag = String(selectedModel || 'ollama/gemma4:e2b').replace('ollama/', '');
426
436
  compose = `name: ${multiComposeName}
@@ -432,7 +442,7 @@ services:
432
442
  env_file:
433
443
  - ../../.env
434
444
  ${appEnvironmentBlock}${dependsOn}${extraHosts} volumes:
435
- - ${volumeMount}
445
+ - ${volumeMount}${stateVolMount}
436
446
  ports:
437
447
  - "127.0.0.1:${gatewayPort}:${gatewayPort}"
438
448
 
@@ -461,7 +471,7 @@ ${appEnvironmentBlock}${dependsOn}${extraHosts} volumes:
461
471
  start_period: 30s
462
472
 
463
473
  volumes:
464
- ollama-data:`;
474
+ ollama-data:${stateVolDecl}`;
465
475
  } else {
466
476
  compose = `name: ${multiComposeName}
467
477
  services:
@@ -472,9 +482,9 @@ services:
472
482
  env_file:
473
483
  - ../../.env
474
484
  ${appEnvironmentBlock}${extraHosts} volumes:
475
- - ${volumeMount}
485
+ - ${volumeMount}${stateVolMount}
476
486
  ports:
477
- - "127.0.0.1:${gatewayPort}:${gatewayPort}"`;
487
+ - "127.0.0.1:${gatewayPort}:${gatewayPort}"${stateVolBlock}`;
478
488
  }
479
489
  } else if (is9Router) {
480
490
  compose = `name: ${singleComposeName}
@@ -488,7 +498,7 @@ services:
488
498
  depends_on:
489
499
  - 9router
490
500
  ${appEnvironmentBlock}${extraHostsBlock}\n volumes:
491
- - ${volumeMount}
501
+ - ${volumeMount}${stateVolMount}
492
502
  - openclaw-plugins:/home/node/project/.openclaw/npm${extVolMount}
493
503
  ports:
494
504
  - "127.0.0.1:${gatewayPort}:${gatewayPort}"
@@ -515,7 +525,7 @@ ${indentBlock(docker9RouterEntrypointScript, 8)}
515
525
 
516
526
  volumes:
517
527
  9router-data:
518
- openclaw-plugins:${extVolDecl}`;
528
+ openclaw-plugins:${extVolDecl}${stateVolDecl}`;
519
529
  } else if (isLocal) {
520
530
  const ollamaModelTag = String(selectedModel || 'ollama/gemma4:e2b').replace('ollama/', '');
521
531
  compose = `name: ${singleComposeName}
@@ -531,7 +541,7 @@ ${appEnvironmentBlock} depends_on:
531
541
  ${extraHostsBlock}\n ports:
532
542
  - "127.0.0.1:${gatewayPort}:${gatewayPort}"
533
543
  volumes:
534
- - ${volumeMount}
544
+ - ${volumeMount}${stateVolMount}
535
545
 
536
546
  ollama:
537
547
  image: ollama/ollama:latest
@@ -558,7 +568,7 @@ ${extraHostsBlock}\n ports:
558
568
  start_period: 30s
559
569
 
560
570
  volumes:
561
- ollama-data:`;
571
+ ollama-data:${stateVolDecl}`;
562
572
  } else {
563
573
  compose = `name: ${singleComposeName}
564
574
  services:
@@ -569,9 +579,9 @@ services:
569
579
  env_file:
570
580
  - ../../.env
571
581
  ${appEnvironmentBlock}${plainSingleExtraHosts ? `${extraHostsBlock}\n` : ''} volumes:
572
- - ${volumeMount}
582
+ - ${volumeMount}${stateVolMount}
573
583
  ports:
574
- - "127.0.0.1:${gatewayPort}:${gatewayPort}"`;
584
+ - "127.0.0.1:${gatewayPort}:${gatewayPort}"${stateVolBlock}`;
575
585
  }
576
586
 
577
587
  return {