create-openclaw-bot 5.1.14 → 5.2.0
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/CHANGELOG.md +185 -158
- package/CHANGELOG.vi.md +279 -252
- package/README.md +12 -11
- package/README.vi.md +12 -11
- package/cli.js +416 -233
- package/package.json +1 -1
- package/setup.js +636 -318
- package/style.css +168 -37
- package/tests/smoke-cli-logic.mjs +123 -24
- package/upgrade.ps1 +90 -0
- package/upgrade.sh +93 -0
package/CHANGELOG.vi.md
CHANGED
|
@@ -1,402 +1,428 @@
|
|
|
1
|
-
# Changelog (Tiếng Việt)
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
## [5.
|
|
5
|
-
|
|
6
|
-
###
|
|
7
|
-
|
|
8
|
-
- Pin lại OpenClaw về `openclaw@2026.4.5` vì bản cập nhật ngày `08/04/2026` đang lỗi.
|
|
9
|
-
- Sửa Dockerfile cho các case Docker trên Windows để tránh lỗi startup do escape command sai và lỗi `allowedOrigins`.
|
|
10
|
-
- Thêm ghi chú khuyên dùng `Node.js 20` đến `24`, tạm tránh `Node.js 25` để ổn định hơn với OpenClaw.
|
|
1
|
+
# Changelog (Tiếng Việt)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
## [5.2.0] — 2026-04-09
|
|
5
|
+
|
|
6
|
+
### Upgrade 1 Lệnh (Không Cần Chạy Lại Wizard)
|
|
11
7
|
|
|
12
|
-
|
|
8
|
+
- Thêm subcommand `upgrade` vào CLI: `npx create-openclaw-bot@latest upgrade`. Tự nhận diện Docker hay Native/PM2 và cập nhật OpenClaw mà không cần chạy lại wizard.
|
|
9
|
+
- Thêm `upgrade.ps1` cho Windows — nhấp đúp trong thư mục bot là tự động upgrade. Không cần biết terminal.
|
|
10
|
+
- Thêm `upgrade.sh` cho Linux / macOS / Ubuntu — `bash upgrade.sh` hoặc pipe trực tiếp qua `curl`/`wget` từ GitHub.
|
|
11
|
+
- Toàn bộ dữ liệu người dùng giữ nguyên: `.env`, `.openclaw/memory/`, sessions, credentials, OAuth token 9Router không bao giờ bị xoá.
|
|
12
|
+
- Docker mode: vá `Dockerfile` (cập nhật `OPENCLAW_NPM_SPEC` + `CACHEBUST`) → `docker compose build --no-cache` + `docker compose up -d`.
|
|
13
|
+
- Native/PM2 mode: cài lại `openclaw` + `9router` global → `pm2 restart all`.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
## [5.1.15] — 2026-04-08
|
|
17
|
+
|
|
18
|
+
### Dong Bo Native Setup & Sua Loi Wizard Windows
|
|
19
|
+
|
|
20
|
+
- Sua wizard HTML tren Windows native de file `.bat` tai ve luon duoc regenerate theo state moi nhat truoc khi download.
|
|
21
|
+
- Sua toan bo runtime path tren Windows native theo project dir nguoi dung nhap: `.env`, `.openclaw` va `.9router` khong con roi ve home/AppData.
|
|
22
|
+
- Them `OPENCLAW_STATE_DIR` vao native runtime env de OpenClaw doc dung config duoc sinh trong thu muc project.
|
|
23
|
+
- Chong format config legacy `gateway.bind: "0.0.0.0"` va chuyen sang `bind: "custom"` + `customBindHost: "0.0.0.0"`.
|
|
24
|
+
- Sua luong single-bot tren Windows native de provider, model, API key va Telegram bot token tu wizard duoc sync dung vao `.env` va `openclaw.json`.
|
|
25
|
+
- Sua native Windows 9Router path resolution va doi helper sync `smart-route` sang lay active providers tu API song cua `9Router`, khop voi logic Docker.
|
|
26
|
+
- Bu native parity cho skill/runtime tren Windows: skill duoc cai tu dong, browser automation tu cai runtime can thiet, va `skills.entries` dung dung `slug`.
|
|
27
|
+
- Cap nhat native script cho macOS, Linux Desktop va Ubuntu/VPS de chay tu `PROJECT_DIR` duoc chon va export `OPENCLAW_HOME`, `OPENCLAW_STATE_DIR`, `DATA_DIR` theo project-local.
|
|
28
|
+
- Mo rong smoke test cho runtime path native, 9Router sync, provider/token sync, browser install va luong startup project-local tren Unix.
|
|
29
|
+
|
|
30
|
+
## [5.1.14] — 2026-04-08
|
|
31
|
+
|
|
32
|
+
### Sá»a lá»—i ổn định OpenClaw và Docker
|
|
33
|
+
|
|
34
|
+
- Pin lại OpenClaw vá» `openclaw@2026.4.5` vì bản cáºp nháºt ngà y `08/04/2026` Ä‘ang lá»—i.
|
|
35
|
+
- Sá»a Dockerfile cho các case Docker trên Windows để tránh lá»—i startup do escape command sai và lá»—i `allowedOrigins`.
|
|
36
|
+
- Thêm ghi chú khuyên dùng `Node.js 20` đến `24`, tạm tránh `Node.js 25` để ổn định hơn với OpenClaw.
|
|
37
|
+
|
|
38
|
+
## [5.1.13] — 2026-04-08
|
|
13
39
|
|
|
14
|
-
###
|
|
40
|
+
### 🛠Sá»a lá»—i cà i macOS & ổn định Wizard
|
|
15
41
|
|
|
16
|
-
- **
|
|
17
|
-
- **
|
|
18
|
-
- **
|
|
19
|
-
- **
|
|
20
|
-
- **
|
|
21
|
-
- **
|
|
22
|
-
- **
|
|
42
|
+
- **Sá»a lá»—i `mkdir: : No such file or directory` trên macOS**: `generateSetupScript` dùng `\${dir}` / `\${path}` (escaped) tạo ra biến bash rá»—ng — giá» dùng JS interpolation đúÌng nên đưá»ng dẫn thá»±c tế được ghi và o script.
|
|
43
|
+
- **Sá»a script Docker macOS**: Thêm kiểm tra Docker daemon `docker info` trước khi chạy `docker compose up`; chế độ Docker giá» gá»i đúÌng `docker compose up` thay vì `openclaw gateway run`.
|
|
44
|
+
- **Sá»a npm prefix macOS Native**: Bá» `npm config set prefix` gây xung đột vá»›i Homebrew Node.js. Giá» dùng `export npm_config_prefix` (env var cho session hiện tại) và fallback `sudo npm install -g`.
|
|
45
|
+
- **Sá»a `window.__saveBotTabPersona is not a function`**: Thêm hà m `__saveBotTabPersona` bị thiếu — HTML gá»i nhưng JS chưa định nghÄ©a.
|
|
46
|
+
- **Sá»a nút Tiếp theo Step 3 chế độ 1 bot**: `bindFormEvents` giá» sync `cfg-name` và o `state.config.botName` và `state.bots[0].name` ngay khi gõ, rồi gá»i `updateNavButtons()` — nút Tiếp phản hồi ngay không cần chuyển bước.
|
|
47
|
+
- **Sá»a persona riêng từng bot**: `saveBotTabMeta` và `syncBotTabMeta` giá» save/restore field `cfg-bot-tab-persona` cho từng bot. Chuyển tab hiển thị đúÌng ná»™i dung persona tương ứng; giá trị lưu và o `state.bots[i].persona` và được dùng chÃnh xác khi tạo file `.md`.
|
|
48
|
+
- **Sá»a cli.js npm macOS**: `ensureUserWritableGlobalNpm` bá» `npm config set prefix` trên darwin; `installGlobalPackage` thêm `sudo npm install -g` là m fallback.
|
|
23
49
|
|
|
24
|
-
## [5.1.12]
|
|
50
|
+
## [5.1.12] — 2026-04-07
|
|
25
51
|
|
|
26
|
-
###
|
|
52
|
+
### 🧠Thêm Skills & Tá»± động chá»n Plugin Relay
|
|
27
53
|
|
|
28
|
-
- **Grid Skills 3
|
|
29
|
-
- **7 Skills
|
|
30
|
-
- **Plugin Telegram Multi-Bot Relay
|
|
31
|
-
- **Plugin selections
|
|
32
|
-
- **Fix Step 3 "
|
|
33
|
-
- **Fix Step 4 multi-bot token**: Validate `key-bot-token-0` thay
|
|
34
|
-
- **Fix AGENTS.md native multi-bot
|
|
54
|
+
- **Grid Skills 3 cá»™t**: Layout má»›i 3 card/hà ng thay vì 4, card rá»™ng rãi hÆ¡n, dá»… Ä‘á»c hÆ¡n.
|
|
55
|
+
- **7 Skills mới từ ClawHub**: Bổ sung đầy đủ `Web Search`, `GitHub`, `Notion`, `Slack` — phủ khắp các tác vụ năng suất phổ biến nhất trên OpenClaw dashboard.
|
|
56
|
+
- **Plugin Telegram Multi-Bot Relay tá»± động**: Khi chá»n nhiá»u bot Telegram (botCount ≥ 2), plugin `telegram-multibot-relay` được tá»± động tick chá»n và ghi và o `openclaw.json → plugins.entries`. Khi quay vá» 1 bot, plugin bị bá» chá»n.
|
|
57
|
+
- **Plugin selections → openclaw.json**: Tất cả plugin được user chá»n (Voice Call, Matrix, MS Teams, Nostr...) Ä‘á»u được inject và o `plugins.entries` để Dashboard OpenClaw nháºn trạng thái `enabled` đúng. Không chá»n = không báºt.
|
|
58
|
+
- **Fix Step 3 "Tiếp theo" bị disabled**: Bá» yêu cầu bắt buá»™c `cfg-user-info` (optional), sá»a multi-bot check dùng `cfg-bot-tab-name`.
|
|
59
|
+
- **Fix Step 4 multi-bot token**: Validate `key-bot-token-0` thay vì `key-bot-token` khi multi-bot Telegram.
|
|
60
|
+
- **Fix AGENTS.md native multi-bot thiếu quy tắc bảo máºt**: Inject `securityRules` và o cuối AGENTS.md cá»§a từng bot trong native multi-bot deployment.
|
|
35
61
|
|
|
36
|
-
###
|
|
62
|
+
### 🌟 Äổi ChÃnh Sách Bảo Máºt Zalo Personal
|
|
37
63
|
|
|
38
|
-
- **
|
|
64
|
+
- **Thả Ga Inbox Zalo Cầm Tay**: Lược bá» rà o cản duyệt bảo máºt cá»§a Zalo Personal. Thông số `dmPolicy` trên cà i đặt Zalo cá nhân đã được chuyển mặc định từ `pairing` sang `open`. Bây giá» bất cứ ai trên mạng lưới Zalo nhắn tin và o tà i khoản cá»§a Bot Ä‘á»u sẽ được AI tá»± động tiếp đón ngay láºp tức thay vì bị chặn lại chá» bạn duyệt lệnh kết nối E2E!
|
|
39
65
|
|
|
40
|
-
## [5.1.10]
|
|
66
|
+
## [5.1.10] — 2026-04-07
|
|
41
67
|
|
|
42
|
-
###
|
|
68
|
+
### 🌟 Tự động Auto-Approve Thiết Bị cho Native VPS
|
|
43
69
|
|
|
44
|
-
- **
|
|
70
|
+
- **Bá» Nháºp Lệnh Thá»§ Công Trải Nghiệm PM2**: Cảnh báo `pairing required` (chá» duyệt thiết bị ghép nối E2E) trên giao diện Web buá»™c ngưá»i dùng phải gõ lệnh đồng ý dưới Terminal. Ở luồng Docker, tÃnh năng nà y đã được vô hiệu hóa bằng má»™t Ä‘oạn script chạy ngầm tá»± gáºt đầu. Nhưng ở Native thì chưa! Phiên bản nà y chÃnh thức nhúng thêm 1 tiến trình PM2 `auto-approve` siêu nhẹ chạy kẹp vá»›i các lệnh chÃnh, giúp tá»± động gáºt đầu phê duyệt kết nối web má»—i 5 giây. Äảm bảo trải nghiệm "Click là và o" trên Native VPS mượt mà y hệt Docker!
|
|
45
71
|
|
|
46
|
-
## [5.1.9]
|
|
72
|
+
## [5.1.9] — 2026-04-07
|
|
47
73
|
|
|
48
|
-
###
|
|
74
|
+
### 🌟 Trả lại Schema Chuẩn & Cải thiện UX WebCrypto
|
|
49
75
|
|
|
50
|
-
- **
|
|
51
|
-
- **
|
|
76
|
+
- **Sá»a lá»—i sáºp Gateway do sai lầm Config**: OpenClaw bản má»›i nhất dùng Zod để khóa chặt Schema cấu hình. Cá» `requireDeviceIdentity` chêm và o bản 5.1.8 đã bị Backend từ chối thẳng thừng (`Unrecognized key`), dẫn đến server không thể khởi động vòng lặp. Bản 5.1.9 đã gỡ sạch cá» nà y, trả lại môi trưá»ng sạch để PM2 hoạt động 100%.
|
|
77
|
+
- **Trợ lý SSH Tunnel Tá»± Äá»™ng**: Bù lại sá»± khắt khe cá»§a WebCrypto khi dùng VPS/IP ngoà i, Console giỠđây sẽ tá»± động in sẵn thần chú lệnh bẻ khóa `ssh -L ...` y hệt IP và Username tháºt cá»§a bạn. Bạn chỉ cần copy-paste để thông luồng má»™t cách ngầu lòi, bảo máºt tuyệt đối mà không cần mua Tên miá»n HTTPS.
|
|
52
78
|
|
|
53
|
-
## [5.1.8]
|
|
79
|
+
## [5.1.8] — 2026-04-07
|
|
54
80
|
|
|
55
|
-
###
|
|
81
|
+
### 🌟 Sá»a lá»—i Äăng nháºp Token (1008) & Cải tiến IP hiển thị trên VPS
|
|
56
82
|
|
|
57
|
-
- **
|
|
58
|
-
- **
|
|
83
|
+
- **Tắt `requireDeviceIdentity` để vượt tưá»ng WebCrypto**: Do cÆ¡ chế bảo máºt má»›i cá»§a Control UI bắt buá»™c trình duyệt phải dùng môi trưá»ng HTTPS (hoặc localhost) thì má»›i cấp quyá»n khởi tạo key mã hóa thiết bị E2E. Nếu dùng IP thưá»ng (HTTP) thì Dashboard sẽ báo lá»—i đỠ`code=1008`. Bản setup má»›i nhất đã tá»± động chÃch cá» `requireDeviceIdentity: false` để tắt cÆ¡ chế ép buá»™c nà y Ä‘i, giúp bạn và o thẳng Dashboard bằng IP cá»§a VPS.
|
|
84
|
+
- **Hiển thị Link Public ở Terminal**: Cấu trúc báo cáo cá»§a PM2 đã được viết lại để tá»± động tìm và sinh ra các đưá»ng dẫn kèm IPv4 Public (thay vì chỉ in má»—i `localhost`). GiỠđây bạn chỉ việc soi console và bấm/copy thẳng link và o trình duyệt mà không cần phải tá»± chế nữa.
|
|
59
85
|
|
|
60
|
-
## [5.1.7]
|
|
86
|
+
## [5.1.7] — 2026-04-07
|
|
61
87
|
|
|
62
|
-
###
|
|
88
|
+
### 🌟 Sá»a lá»—i CORS Control UI & ÄÆ°á»ng dẫn 9Router Native
|
|
63
89
|
|
|
64
|
-
- **
|
|
65
|
-
- **
|
|
90
|
+
- **Sá»a lá»—i dá»™i ngược CORS khi và o Control UI**: OpenClaw v2026.3.x siết chặt policy CORS khiến việc truy cáºp dashboard từ IP ngoà i bị block. Các script tạo config và vá Docker giỠđã tá»± động quét toà n bá»™ IPv4 hiện có cá»§a server (`os.networkInterfaces()`) để nhúng và o mảng `gateway.controlUi.allowedOrigins`. Äảm bảo ngưá»i dùng VPS và o được thẳng Control UI mà không bị lá»—i mạng.
|
|
91
|
+
- **Tối ưu đưá»ng dẫn PM2 Native**: Äể tránh trưá»ng hợp tÃnh năng PM2 không nháºn diện đúng môi trưá»ng (lá»—i `\$PATH` khi dùng `nvm`), bá»™ cà i giá» bá» qua file thá»±c thi `9router` cá»§a HÄH. Thay và o đó, bá»™ cà i tá»± tÃnh toán đưá»ng dẫn tuyệt đối `\$(npm root -g)/9router/app/server.js` và truyá»n thẳng và o trình thông dịch Node, đảm bảo PM2 100% tìm thấy file khởi chạy 9Router.
|
|
66
92
|
|
|
67
|
-
## [5.1.6]
|
|
93
|
+
## [5.1.6] — 2026-04-07
|
|
68
94
|
|
|
69
|
-
###
|
|
95
|
+
### 🞠Khắc phục lỗi PM2 ngắt cà i đặt (SIGKILL) trên VPS
|
|
70
96
|
|
|
71
|
-
- **
|
|
72
|
-
- **
|
|
97
|
+
- **Sá»a lá»—i `PM2 SIGKILL`**: Loại bá» cá» `-t` (chế độ giao diện terminal) khá»i tất cả các lệnh gá»i `9router` chạy ngầm. Trên các VPS không giao diện (headless), cá» nà y có thể khiến PM2 bị treo và ném ra lá»—i SIGKILL là m chết toà n bá»™ quá trình cà i đặt.
|
|
98
|
+
- **Tối ưu Sync Helper chạy ngầm**: Bổ sung cÆ¡ chế dá»± phòng 2 lá»›p cho script tá»± động đồng bá»™ (sync helper). Nếu PM2 bị giá»›i hạn RAM hoặc quá tải gây lá»—i SIGKILL, script sẽ không văng lá»—i sáºp Setup nữa mà tá»± động fallback xuống chạy ẩn bằng `nohup node ... &`. Trong trưá»ng hợp xấu nhất, bá»™ cà i chỉ báo cảnh báo và ng và rẽ nhánh cho phép tiến trình Setup tiếp tục tá»›i bước cuối cùng thà nh công.
|
|
73
99
|
|
|
74
|
-
## [5.1.5]
|
|
100
|
+
## [5.1.5] — 2026-04-06
|
|
75
101
|
|
|
76
|
-
###
|
|
102
|
+
### 🞠Sá»a lá»—i PM2 khởi động 9Router trên Native
|
|
77
103
|
|
|
78
|
-
- **Fix**:
|
|
79
|
-
- **
|
|
104
|
+
- **Fix**: Chuyển từ việc chạy chuá»—i bash (`execSync`) sang truyá»n mảng tham số rõ rà ng (`execFileSync`) khi khởi động 9Router và script đồng bá»™ (sync) qua PM2. Äảm bảo PM2 luôn chạy được ứng dụng ổn định trên cả Linux (VPS) và Windows mà không bị vướng lá»—i phân tÃch cú pháp dấu ngoặc kép hay khoảng trắng trong đưá»ng dẫn.
|
|
105
|
+
- **Tối ưu**: PM2 giỠđây sẽ phân tách rạch ròi bằng cách gá»i file thá»±c thi `9router` vá»›i tham số `--interpreter none`, và luôn chạy sync script bằng đúng phiên bản NodeJS ná»™i tại thông qua `--interpreter process.execPath`.
|
|
80
106
|
|
|
81
|
-
## [5.1.4]
|
|
107
|
+
## [5.1.4] — 2026-04-06
|
|
82
108
|
|
|
83
|
-
###
|
|
109
|
+
### 🞠Sá»a lá»—i BOM khởi động CLI & Tối ưu luồng vá Timeout trên Docker
|
|
84
110
|
|
|
85
|
-
- **
|
|
86
|
-
- **
|
|
111
|
+
- **Sá»a file CLI (BOM)**: Xóa tá»± động chèn BOM (`\uFEFF`) ở đầu file `cli.js`. Ký tá»± thừa nà y vốn là m há»ng shebang `#!/usr/bin/env node` và gây `SyntaxError: Unexpected token` trong nhiá»u môi trưá»ng khi chạy npx
|
|
112
|
+
- **Cải thiện Docker Timeout Patch**: Quá trình can thiệp timeout (`300s`) trong lúc build Docker giỠchuyển sang scan quét toà n bộ các file `.js` trong thư mục `openclaw/dist` thay vì cố tìm file trùng hash `gateway-cli-*`. Giúp bản vá luôn áp dụng thà nh công trên các phiên bản backend khác biệt mà không in ra warning rác trên console
|
|
87
113
|
|
|
88
|
-
## [5.1.3]
|
|
114
|
+
## [5.1.3] — 2026-04-06
|
|
89
115
|
|
|
90
|
-
###
|
|
116
|
+
### 🜠Lá»—i lá»t biến ná»™i suy và o giao diện Docker Compose
|
|
91
117
|
|
|
92
|
-
|
|
118
|
+
Bản vá lá»—i base64 trước đó đã gây ra lá»—i má»›i (regression) do dùng ngoặc `${Buffer.from(...)}` bên trong chuá»—i string sinh ra docker-compose. Äiá»u nà y là m lá»t nguyên Ä‘oạn text ná»™i suy và o `docker-compose.yml` thay vì sinh ra chuá»—i base64 tháºt.
|
|
93
119
|
|
|
94
|
-
- **Fix**:
|
|
95
|
-
-
|
|
96
|
-
-
|
|
120
|
+
- **Fix**: Thực hiện tạo mã base64 hoà n chỉnh qua JavaScript (`const syncScriptBase64 = encodeBase64Utf8(syncScript)`) ngay từ ban đầu trước khi ghép chuỗi và o file compose
|
|
121
|
+
- Äảm bảo file compose tạo thà nh nháºn chÃnh xác mã base64 thuần túy mà không bị lá»t biến môi trưá»ng
|
|
122
|
+
- Dá»n dẹp lại script test tương ứng
|
|
97
123
|
|
|
98
|
-
## [5.1.2]
|
|
124
|
+
## [5.1.2] — 2026-04-06
|
|
99
125
|
|
|
100
|
-
###
|
|
126
|
+
### 🛠Fix Shell Injection: Sync Script Dùng Base64
|
|
101
127
|
|
|
102
|
-
Approach node -e JSON.stringify
|
|
128
|
+
Approach node -e JSON.stringify gây lỗi /bin/sh: Syntax error "(" unexpected vì JSON.stringify sinh chuỗi double-quoted phá vỡ shell argument.
|
|
103
129
|
|
|
104
|
-
- **Fix**:
|
|
105
|
-
- Entrypoint sinh ra
|
|
106
|
-
- Base64
|
|
107
|
-
-
|
|
130
|
+
- **Fix**: ná»™i dung sync script nay được **base64-encode tại thá»i Ä‘iểm gen compose** bằng Buffer.from(script).toString base64
|
|
131
|
+
- Entrypoint sinh ra dạng: node -e writeFileSync Buffer.from b64 base64 toString
|
|
132
|
+
- Base64 chỉ chứa [A-Za-z0-9+/=] — không có ký tự đặc biệt, hoạt động đúng trong YAML block
|
|
133
|
+
- Ãp dụng cho tất cả luồng gen compose: Docker web wizard (setup.js x2) và Docker CLI (cli.js x2)
|
|
108
134
|
|
|
109
|
-
## [5.1.1]
|
|
135
|
+
## [5.1.1] — 2026-04-06
|
|
110
136
|
|
|
111
|
-
###
|
|
137
|
+
### 🔧 9Router Smart-Route Sync — Ổn định qua API
|
|
112
138
|
|
|
113
|
-
|
|
139
|
+
Sá»a lá»—i nghiêm trá»ng khiến sync script không nháºn ra provider Ä‘ang active, là m tất cả request fallback vá» `openai` (lá»—i `404 No active credentials`).
|
|
114
140
|
|
|
115
|
-
- **
|
|
116
|
-
- **Fix**: script
|
|
117
|
-
- **Fix**: thay heredoc `cat << 'CLAWEOF'` (
|
|
118
|
-
- **Fix**: `build9RouterSmartRouteSyncScript()` trong CLI docker flow
|
|
119
|
-
-
|
|
141
|
+
- **Nguyên nhân**: script Ä‘á»c `db.providerConnections` từ `db.json` nhưng field nà y không tồn tại trong 9Router v0.3.79+ — connections chỉ có qua REST API
|
|
142
|
+
- **Fix**: script giá» gá»i `fetch('http://localhost:20128/api/providers')` → `d.connections[]` để detect provider Ä‘ang active
|
|
143
|
+
- **Fix**: thay heredoc `cat << 'CLAWEOF'` (gây ra `const p=undefined`) bằng `node -e require('fs').writeFileSync(...)` — không còn lỗi escaping trong YAML+shell
|
|
144
|
+
- **Fix**: `build9RouterSmartRouteSyncScript()` trong CLI docker flow giá» truyá»n đúng `'/root/.9router/db.json'` là m db path
|
|
145
|
+
- Ãp dụng cho cả 3 vị trÃ: Docker web wizard (`setup.js`), Docker CLI (`cli.js`), và native (`cli.js`)
|
|
120
146
|
|
|
121
|
-
###
|
|
147
|
+
### 📱 Zalo Pairing — Tá»± Äá»™ng Approve Khi Gateway Äang Chạy
|
|
122
148
|
|
|
123
|
-
-
|
|
124
|
-
- **Fix**: `openclaw gateway run`
|
|
149
|
+
- Trước đây, auto-approve chỉ chạy trong login flow ban đầu; pairing request mới khi gateway đang chạy bị bỠqua
|
|
150
|
+
- **Fix**: `openclaw gateway run` vá»›i Zalo Personal giá» pipe stdout/stderr và tá»± gá»i `openclaw pairing approve zalouser <code>` khi phát hiện pairing code má»›i
|
|
125
151
|
|
|
126
|
-
###
|
|
152
|
+
### 🧹 Output Docker CLI Gá»n HÆ¡n
|
|
127
153
|
|
|
128
|
-
-
|
|
154
|
+
- Xóa các hướng dẫn thừa sau khi Docker build xong (`docker compose build`, `openclaw gateway`, PM2) — Docker mode tự chạy hoà n toà n, không cần thao tác thủ công thêm
|
|
129
155
|
|
|
130
|
-
## [5.1.0]
|
|
156
|
+
## [5.1.0] — 2026-04-07
|
|
131
157
|
|
|
132
|
-
###
|
|
158
|
+
### 🤖 Zalo Personal Login Improvements
|
|
133
159
|
|
|
134
|
-
- Zalo Personal
|
|
135
|
-
- Setup in ra
|
|
136
|
-
- QR login Docker
|
|
160
|
+
- Zalo Personal giá» sá» dụng luồng đăng nháºp `zalouser` trá»±c tiếp trên cả native và Docker.
|
|
161
|
+
- Setup in ra đưá»ng dẫn QR cùng các lệnh login/copy chÃnh xác, giúp ngưá»i dùng đăng nháºp nhanh mà không cần `openclaw onboard`.
|
|
162
|
+
- QR login Docker giá» nhắm và o service compose `ai-bot` đã sinh ra thay vì các tên container cÅ© dá»… há»ng.
|
|
137
163
|
|
|
138
|
-
## [5.0.9]
|
|
164
|
+
## [5.0.9] — 2026-04-06
|
|
139
165
|
|
|
140
|
-
###
|
|
166
|
+
### 🚀 Chế độ Native Install — Không cần Docker
|
|
141
167
|
|
|
142
|
-
OpenClaw
|
|
168
|
+
OpenClaw giỠhỗ trợ **cà i đặt native (không dùng Docker)** trên Windows, Linux, macOS, VPS và shared hosting.
|
|
143
169
|
|
|
144
|
-
- **CLI native mode**
|
|
145
|
-
- **Script
|
|
146
|
-
-
|
|
147
|
-
-
|
|
148
|
-
-
|
|
149
|
-
-
|
|
150
|
-
- **Web Wizard
|
|
151
|
-
- **URL host
|
|
170
|
+
- **CLI native mode** — thêm chá»n chế độ: `docker` (mặc định) hoặc `native`
|
|
171
|
+
- **Script khởi động sinh tự động theo OS:**
|
|
172
|
+
- 🪟 **Windows** → `setup-openclaw-win.bat` (double-click cà i ngay)
|
|
173
|
+
- 🧠**Linux / macOS** → `setup-openclaw-linux.sh`
|
|
174
|
+
- ðŸ–¥ï¸ **VPS / Ubuntu** → `setup-openclaw-vps.sh` (PM2 chạy ná»n)
|
|
175
|
+
- ðŸ **Shared Hosting / cPanel** → `setup-openclaw-hosting.sh` + `ecosystem.config.cjs`
|
|
176
|
+
- **Web Wizard cáºp nháºt** — Thêm toggle Deploy Mode (Docker / Native) + chá»n OS
|
|
177
|
+
- **URL host động** — Ollama và 9Router URL tự chuyển:
|
|
152
178
|
- Docker: `http://ollama:11434` / `http://9router:20128/v1`
|
|
153
179
|
- Native: `http://localhost:11434` / `http://localhost:20128/v1`
|
|
154
|
-
- **
|
|
155
|
-
- **Test scripts**
|
|
180
|
+
- **Kiểm tra Node.js 18+** — Native mode yêu cầu Node.js 18+ trước khi chạy
|
|
181
|
+
- **Test scripts** — `test-native-install.bat` (Windows) và `test-native-install.sh` (Linux/macOS)
|
|
156
182
|
|
|
157
|
-
###
|
|
183
|
+
### 🤖 Cáºp nháºt Gemma 4
|
|
158
184
|
|
|
159
|
-
- **4
|
|
160
|
-
-
|
|
161
|
-
-
|
|
162
|
-
-
|
|
185
|
+
- **4 biến thể Gemma 4** qua Ollama: `gemma4:e2b` (~4-6 GB), `gemma4:e4b` (~8-10 GB), `gemma4:26b` (~18-24 GB), `gemma4:31b` (~24+ GB)
|
|
186
|
+
- Tự pull model Gemma 4 khi `docker compose up` lần đầu (timeout container tăng lên 15 phút)
|
|
187
|
+
- Nâng timeout Ollama lên **300 giây** để xỠlý model lớn
|
|
188
|
+
- Thêm `OLLAMA_NUM_PARALLEL=1` và `OLLAMA_KEEP_ALIVE=24h` và o Docker sidecar
|
|
163
189
|
|
|
164
|
-
###
|
|
190
|
+
### 🤖 Multi-Bot Deployment (tối đa 5 bot Telegram trên mỗi workspace)
|
|
165
191
|
|
|
166
|
-
OpenClaw
|
|
192
|
+
OpenClaw giá» há»— trợ triển khai **nhiá»u bot Telegram độc láºp** từ má»™t setup duy nhất — má»—i bot có identity, slash command, AI personality và thư mục workspace riêng biệt.
|
|
167
193
|
|
|
168
|
-
- **
|
|
169
|
-
- **Workspace
|
|
170
|
-
- **
|
|
171
|
-
- **Docker Compose
|
|
172
|
-
- **Department Room Model**
|
|
173
|
-
-
|
|
174
|
-
-
|
|
175
|
-
-
|
|
176
|
-
- **
|
|
194
|
+
- **Triển khai 1–5 bot cùng lúc** — Web Wizard và CLI Ä‘á»u há»— trợ cấu hình multi-bot
|
|
195
|
+
- **Workspace riêng biệt** — mỗi bot có thư mục `botN/` riêng với `.env` và cấu hình `.openclaw/` riêng, không gây xung đột token hay cấu hình
|
|
196
|
+
- **Tự động gán cổng** — cổng bắt đầu từ `18791` và tăng dần cho mỗi bot (`18791`, `18792`, ...) để tránh xung đột binding host
|
|
197
|
+
- **Docker Compose đa-service** — tự động sinh `docker-compose.yml` với một service cho mỗi bot, cộng thêm một container provider chung (9Router hoặc Ollama)
|
|
198
|
+
- **Department Room Model** — khi các bot chia sẻ chung một nhóm Telegram, chúng hoạt động như một đội ngũ chuyên nghiệp:
|
|
199
|
+
- 🤫 **Mặc định im lặng** — bot phản hồi bằng emoji (👠â¤ï¸) vá»›i tin nhắn thông thưá»ng nhưng không bao giá» spam reply
|
|
200
|
+
- 📣 **Trigger bằng @mention hoặc /slash** — chỉ bot được nhắc tên hoặc được gá»i lệnh má»›i phản hồi, giống như gá»i tên đồng nghiệp trong phòng há»p
|
|
201
|
+
- ðŸ—ƒï¸ **Workspace chung** — tất cả bot Ä‘á»c từ má»™t thư mục workspace chung và có thể cá»™ng tác trên các tác vụ, tệp và báo cáo
|
|
202
|
+
- **Cấu hình botGroup** được inject và o `openclaw.json` của mỗi bot để chúng biết tên và lệnh slash của nhau khi runtime
|
|
177
203
|
|
|
178
|
-
###
|
|
204
|
+
### 🔗 Trợ giúp lấy Telegram Group ID
|
|
179
205
|
|
|
180
|
-
|
|
206
|
+
Lấy Group ID giỠtrở nên cực kỳ đơn giản:
|
|
181
207
|
|
|
182
|
-
- **Web Wizard**: card "
|
|
183
|
-
- **CLI**:
|
|
208
|
+
- **Web Wizard**: card "Äã có group" giá» hiển thị nút inline `Lấy Group ID` mở thẳng **@userinfobot**, kèm hướng dẫn từng bước (forward tin nhắn nhóm → bot trả vá» Chat ID)
|
|
209
|
+
- **CLI**: chá»n "existing group" sẽ in ra hướng dẫn tương tác vá»›i các bước đánh số và link trá»±c tiếp đến `https://t.me/userinfobot`
|
|
184
210
|
|
|
185
|
-
###
|
|
211
|
+
### 🎨 Tinh chỉnh UI
|
|
186
212
|
|
|
187
|
-
- **
|
|
188
|
-
-
|
|
189
|
-
-
|
|
213
|
+
- **Bá»™ chá»n tùy chá»n nhóm** được thiết kế dạng **hai thẻ tương tác** vá»›i icon, mô tả, hiệu ứng hover glow và dấu tick chá»n động
|
|
214
|
+
- Trạng thái active cá»§a thẻ: mà u xanh lá + viá»n cho "tạo sau", mà u xanh chà m + viá»n cho "nhóm đã có"
|
|
215
|
+
- Hà ng nháºp Group ID bao gồm nút trợ giúp inline — không cần tìm kiếm tà i liệu nữa
|
|
190
216
|
|
|
191
|
-
## [5.0.0]
|
|
217
|
+
## [5.0.0] — 2026-04-04
|
|
192
218
|
|
|
193
|
-
###
|
|
219
|
+
### 🚀 Hỗ trợ Gemma 4 — Model mới nhất của Google
|
|
194
220
|
|
|
195
|
-
OpenClaw v5.0.0
|
|
221
|
+
OpenClaw v5.0.0 cáºp nháºt **Gemma 4** — dòng model open-weights má»›i cá»§a Google DeepMind, ra mắt 02/04/2026.
|
|
196
222
|
|
|
197
|
-
- **Gemma 4
|
|
198
|
-
- **
|
|
199
|
-
- **OLLAMA_HOST
|
|
200
|
-
- **
|
|
223
|
+
- **Gemma 4 có sẵn 3 size qua Ollama** — `gemma4:4b` (~6 GB RAM), `gemma4` mặc định (~10 GB), `gemma4:27b` (~18 GB)
|
|
224
|
+
- **Không cần cà i Ollama thá»§ công** — Khi chá»n Local Ollama + Gemma 4, setup tá»± động sinh **service `ollama` sát cạnh trong `docker-compose.yml`**. Docker tá»± pull model khi `docker compose up`. Không cần cà i Ollama trước.
|
|
225
|
+
- **OLLAMA_HOST tự cấu hình** — TrỠthẳng và o sidecar container (`http://ollama:11434`).
|
|
226
|
+
- **Cáºp nháºt danh sách model** — Thêm `gemma4`, `gemma4:27b`, `gemma4:4b` và o Ollama provider trên cả CLI và Web Wizard.
|
|
201
227
|
|
|
202
|
-
###
|
|
228
|
+
### 💻 Yêu cầu phần cứng cho Gemma 4
|
|
203
229
|
|
|
204
|
-
| Model | RAM/VRAM
|
|
230
|
+
| Model | RAM/VRAM tối thiểu (4-bit) | Phù hợp |
|
|
205
231
|
| ------------------- | -------------------------- | ------------------------------ |
|
|
206
|
-
| `gemma4:4b` | ~6 GB | Laptop
|
|
207
|
-
| `gemma4` (
|
|
232
|
+
| `gemma4:4b` | ~6 GB | Laptop thông thưá»ng, Mac M1/M2 |
|
|
233
|
+
| `gemma4` (mặc định) | ~10 GB | PC 16 GB RAM |
|
|
208
234
|
| `gemma4:27b` | ~18 GB | Workstation 32 GB / GPU 24 GB |
|
|
209
235
|
|
|
210
|
-
> Gemma 4 **
|
|
236
|
+
> Gemma 4 **miá»…n phÃ, open-weights, giấy phép Apache 2.0**. Không cần API key — chạy 100% local qua Docker.
|
|
211
237
|
|
|
212
|
-
## [4.1.4]
|
|
238
|
+
## [4.1.4] — 2026-04-03
|
|
213
239
|
|
|
214
|
-
###
|
|
240
|
+
### ✨ Cải tiến
|
|
215
241
|
|
|
216
|
-
- CLI/Wizard
|
|
217
|
-
- Browser Automation:
|
|
218
|
-
-
|
|
219
|
-
- Skills install
|
|
220
|
-
- TOOLS.md
|
|
221
|
-
-
|
|
222
|
-
-
|
|
223
|
-
-
|
|
224
|
-
- Single-source version qua `bump-version.mjs`
|
|
242
|
+
- CLI/Wizard đồng bộ đầy đủ skills (Browser Automation, Memory, RAG, Code Interpreter, v.v.)
|
|
243
|
+
- Browser Automation: chá»n chế độ Desktop (Host Chrome) hoặc Server (Headless Chromium) cho Linux/Ubuntu
|
|
244
|
+
- Sá»a lá»—i Dockerfile WORKDIR gây lá»—i build trên Linux
|
|
245
|
+
- Skills install tại **runtime** container (không phải lúc build) để tránh lỗi ClawHub auth
|
|
246
|
+
- TOOLS.md động: tá»± sinh theo danh sách skills đã chá»n
|
|
247
|
+
- Tự tạo `browser-tool.js` (Desktop mode) và `BROWSER.md`
|
|
248
|
+
- Tự đăng ký skills và o `openclaw.json → skills.entries`
|
|
249
|
+
- Bổ sung prompt cấu hình Email SMTP và inject và o `.env`
|
|
250
|
+
- Single-source version qua `bump-version.mjs` — 1 lệnh cáºp nháºt tất cả file
|
|
225
251
|
|
|
226
|
-
## [4.1.3]
|
|
252
|
+
## [4.1.3] — 2026-04-02
|
|
227
253
|
|
|
228
|
-
###
|
|
254
|
+
### ✨ Cải tiến
|
|
229
255
|
|
|
230
|
-
- CLI/Wizard
|
|
231
|
-
- Browser Automation:
|
|
232
|
-
-
|
|
233
|
-
- TOOLS.md
|
|
234
|
-
-
|
|
235
|
-
-
|
|
236
|
-
-
|
|
256
|
+
- CLI/Wizard đồng bộ đầy đủ skills (Browser Automation, Memory, RAG, Code Interpreter, v.v.)
|
|
257
|
+
- Browser Automation: chá»n chế độ Desktop (Host Chrome) hoặc Server (Headless Chromium)
|
|
258
|
+
- Sá»a lá»—i Dockerfile WORKDIR trên Linux
|
|
259
|
+
- TOOLS.md động: tá»± sinh theo skills đã chá»n
|
|
260
|
+
- Tự tạo browser-tool.js (Desktop mode) và BROWSER.md
|
|
261
|
+
- Tự đăng ký skills và o `openclaw.json → skills.entries`
|
|
262
|
+
- Bổ sung prompt cấu hình Email SMTP
|
|
237
263
|
|
|
238
|
-
|
|
264
|
+
Tất cả những thay đổi nổi báºt cá»§a dá»± án sẽ được ghi chép trong file nà y.
|
|
239
265
|
|
|
240
|
-
## [4.1.2]
|
|
266
|
+
## [4.1.2] — 2026-04-01
|
|
241
267
|
|
|
242
|
-
###
|
|
268
|
+
### Khắc phục
|
|
243
269
|
|
|
244
|
-
- **CLI setup**:
|
|
270
|
+
- **CLI setup**: Khắc phục lỗi sinh file `docker-compose.yml` định dạng sai khi dùng 9Router (lỗi báo `yaml: while scanning a simple key`) bằng cách đổi cách escape string `syncComboScript` sang kiểu heredoc block scalars của bash để tránh xung đột nháy kép/nháy đơn trong YAML.
|
|
245
271
|
|
|
246
|
-
## [4.1.0]
|
|
272
|
+
## [4.1.0] — 2026-04-01
|
|
247
273
|
|
|
248
|
-
###
|
|
274
|
+
### 🚀 Stable 9Router Smart Routing
|
|
249
275
|
|
|
250
|
-
- **
|
|
251
|
-
- **
|
|
276
|
+
- **Khởi tạo Database tinh gá»n**: Combo mặc định cá»§a 9Router hiện tại sạch 100% (chỉ lưu `smart-route`). Äã loại bá» việc tá»± động tiêm GPT-4o/Claude/Gemini như các rác hệ thống để ưu tiên 100% sức mạnh định tuyến động.
|
|
277
|
+
- **Tối giản Giao diện Toggling**: Cả web Setup Wizard và CLI Ä‘á»u được tinh giản, không còn liệt kê mảng models dư thừa khi chá»n 9Router. Hệ thống mặc định chốt cứng Auto Route (`smart-route`) và giao hoà n toà n phán quyết chuyển đổi cho thuáºt toán `PREF`.
|
|
252
278
|
|
|
253
|
-
## [4.0.9]
|
|
279
|
+
## [4.0.9] — 2026-04-01
|
|
254
280
|
|
|
255
|
-
###
|
|
281
|
+
### 🔄 Dynamic Smart Route (Äồng bá»™ Provider Realtime)
|
|
256
282
|
|
|
257
|
-
- **Routing
|
|
258
|
-
- **
|
|
259
|
-
- **Mapping
|
|
283
|
+
- **Routing Thông Minh**: Combo `smart-route` không còn là danh sách cứng 100+ model. Script đồng bá»™ chạy ngầm má»—i 30 giây sẽ tá»± động quét `/api/providers` cá»§a 9Router và chỉ đưa và o combo **những provider đã kết nối VÀ Ä‘ang báºt**. Triệt tiêu hoà n toà n lá»—i `404 No active credentials`.
|
|
284
|
+
- **Báºt/Tắt Tức Thì**: Báºt hoặc tắt provider trên Dashboard 9Router — combo tá»± cáºp nháºt trong vòng 30 giây, không cần restart container.
|
|
285
|
+
- **Mapping Äầy Äá»§**: Há»— trợ 25+ provider (Codex, Claude Code, GitHub Copilot, Cursor, Kilo, Cline, Gemini CLI, iFlow, Qwen, Kiro, Ollama, GLM, MiniMax, DeepSeek, xAI, Mistral, Groq...).
|
|
260
286
|
|
|
261
|
-
###
|
|
287
|
+
### 🳠Tá»± Äá»™ng Cà i Docker
|
|
262
288
|
|
|
263
|
-
- **Zero-Prerequisite**: `npx create-openclaw-bot`
|
|
264
|
-
- **
|
|
289
|
+
- **Zero-Prerequisite**: `npx create-openclaw-bot` tá»± phát hiện Docker chưa cà i → tá»± tải + cà i qua `winget` (Windows), `brew` (macOS), hoặc script chÃnh thức Docker (Linux).
|
|
290
|
+
- **Hướng Dẫn Rõ Rà ng**: Nếu cà i tự động thất bại, hiển thị link tải trực tiếp kèm hướng dẫn chi tiết.
|
|
265
291
|
|
|
266
|
-
## [4.0.8]
|
|
292
|
+
## [4.0.8] — 2026-03-31
|
|
267
293
|
|
|
268
|
-
###
|
|
294
|
+
### ✨ Tối ưu 9Router & Mở rộng Ollama Cloud
|
|
269
295
|
|
|
270
|
-
- **
|
|
271
|
-
- **
|
|
272
|
-
- **
|
|
296
|
+
- **TÃch hợp 9Router cá»±c kỳ á»”n định (Zero Config)**: Proxy 9Router hiện được tá»± động kÃch hoạt bảo máºt bên trong mạng Docker network qua cổng `sk-no-key`. Toà n bá»™ thiết đặt API keys thá»§ công và định tuyến models được gỡ bá» khá»i `.env` để nhưá»ng chá»— cho hệ thống quản lý táºp trung và thông minh hÆ¡n qua [9Router Dashboard](http://localhost:20128/dashboard).
|
|
297
|
+
- **Mở Rá»™ng Kết Nối Models**: ÄÆ°a và o danh sách há»— trợ trá»n bá»™ hệ sinh thái Ollama Cloud (_Qwen 3.5, GLM-5, MiniMax, GPT-OSS_), Kiro Haiku, Qwen Flash, cùng toà n bá»™ iFlow models hoà n toà n miá»…n phÃ.
|
|
298
|
+
- **Tự động Inject Smart Routing**: Cấu hình tự động gà i sẵn combo luân chuyển linh hoạt `smart-route` giúp cân bằng tải công việc qua lại mượt mà giữa Codex, Claude Code, Gemini, và iFlow.
|
|
273
299
|
|
|
274
|
-
###
|
|
300
|
+
### 🧹 Clean Workspace & Auto-Setup Äa Ná»n Tảng
|
|
275
301
|
|
|
276
|
-
- **Zero-Clutter Generation**:
|
|
277
|
-
- **Auto Browser
|
|
278
|
-
- **Auto Prompt CLI**: `npx create-openclaw-bot`
|
|
302
|
+
- **Zero-Clutter Generation**: Dá»n sạch hoà n toà n các template là m mẫu như `.env.example` hay các file cấu hình `docker-compose` tÄ©nh dư thừa. Script setup sẽ tá»± khởi tạo linh động các file thá»±c thụ ngay lúc chạy cho má»™t workspace gá»n gà ng nhất.
|
|
303
|
+
- **Auto Browser Äa Ná»n Tảng**: Bổ sung `start-chrome-debug.sh` má»›i đét cho macOS/Linux đồng bá»™ hoà n hảo vá»›i file `.bat` thiết láºp chạy Automation trên Windows, mở ra ká»· nguyên Auto-Browser tiện lợi.
|
|
304
|
+
- **Auto Prompt CLI**: `npx create-openclaw-bot` hiện đã hoà n chỉnh vá» feature-parity vá»›i Web UI, há»— trợ tra vấn thông tin thiết láºp User Identity và Persona cá»§a Bot trá»±c tiếp ở bảng console.
|
|
279
305
|
|
|
280
|
-
## [4.0.1]
|
|
306
|
+
## [4.0.1] — 2026-03-31
|
|
281
307
|
|
|
282
|
-
###
|
|
308
|
+
### ✨ Tá»± Äá»™ng Hoá (Tá»± tạo thư mục cà i đặt gốc) & NPM CLI
|
|
283
309
|
|
|
284
|
-
- **One-Command Install (npx)**:
|
|
285
|
-
- **
|
|
286
|
-
- **Improved UI Setup**:
|
|
287
|
-
- **Safety First**:
|
|
310
|
+
- **One-Command Install (npx)**: Gói CLI `create-openclaw-bot` được tải lên NPM. Ngưá»i dùng Windows, Linux, Mac chỉ cần mở Terminal gõ lệnh `npx create-openclaw-bot` để setup tá»± động từ A-Z qua giao diện tương tác.
|
|
311
|
+
- **Tá»± động Setup & Khởi động Docker**: Quy trình tạo `.bat`/CLI được viết lại, thiết láºp xong sẽ mở Docker compose tá»± động tải và kÃch hoạt Bot ngay.
|
|
312
|
+
- **Improved UI Setup**: Gá»n gà ng hoá file preview, đổi layout UI cho Zalo Bot API để dùng official vector SVG, nổi mà u xanh chá»§ đạo Zalo thay vì logo trong suốt.
|
|
313
|
+
- **Safety First**: Lược bá» tuỳ chá»n mô hình Antigravity (AG) khá»i 9router Proxy Models và thêm cảnh báo đỠtrên UI để tránh rá»§i ro ngưá»i dùng bị khoá account Google AI Ultra do lạm dụng quá mức. Cáºp nháºt icon credit cho thesvg.org.
|
|
288
314
|
|
|
289
|
-
## [4.0.0]
|
|
315
|
+
## [4.0.0] — 2026-03-30
|
|
290
316
|
|
|
291
|
-
###
|
|
317
|
+
### ✨ New Features & Updates
|
|
292
318
|
|
|
293
|
-
- **Full English Localization**
|
|
294
|
-
- **Language Toggle Relocation**
|
|
295
|
-
- **Setup UI/UX fixes**
|
|
296
|
-
- **Reference Error Fixes**
|
|
319
|
+
- **Full English Localization** — Äã hoà n thiện toà n bá»™ bản dịch tiếng Anh cho Setup Wizard (Button, Label, Step 4 Output).
|
|
320
|
+
- **Language Toggle Relocation** — Di chuyển công tắc ngôn ngữ (VI/EN) sang vị trà dễ nhìn và thao tác hơn.
|
|
321
|
+
- **Setup UI/UX fixes** — Cải thiện giao diện Setup Wizard cho Browser Automation và sá»a các lá»—i hiển thị (như undefined model badge).
|
|
322
|
+
- **Reference Error Fixes** — Khắc phục một số lỗi Reference Error trong quá trình chạy setup.
|
|
297
323
|
|
|
298
|
-
## [3.0.2]
|
|
324
|
+
## [3.0.2] — 2026-03-29
|
|
299
325
|
|
|
300
|
-
###
|
|
326
|
+
### ✨ 9Router Smart Proxy Expansion
|
|
301
327
|
|
|
302
|
-
- **9Router db.json Stability**
|
|
303
|
-
- **Flagship Fallback Proxy**
|
|
304
|
-
- **
|
|
328
|
+
- **9Router db.json Stability** — Cáºp nháºt logic inject db.json cá»§a 9router qua entrypoint để tránh lá»—i báo mất file "No such file or directory, lstat db.json".
|
|
329
|
+
- **Flagship Fallback Proxy** — Cấu hình "Smart Proxy" để có danh sách luân chuyển các LLMs Flagship mạnh mẽ nhất hiện tại của Codex, Antigravity, Claude Code, và Github Copilot.
|
|
330
|
+
- **Tùy chỉnh Setup Wizard** — Khi cà i đặt hiện tại sẽ thấy danh sách provider/model hoà n chỉnh, và Smart Proxy được đặt là m chuẩn ưu tiên để tự fix lỗi "404 No Active Credentials".
|
|
305
331
|
|
|
306
|
-
## [3.0.1]
|
|
332
|
+
## [3.0.1] — 2026-03-29
|
|
307
333
|
|
|
308
|
-
###
|
|
334
|
+
### ✨ New Features
|
|
309
335
|
|
|
310
|
-
- **Wizard UI Redesign (Step 2)**
|
|
311
|
-
- **User Info textarea**
|
|
312
|
-
- **Editable Security Rules**
|
|
313
|
-
- **Section dividers**
|
|
336
|
+
- **Wizard UI Redesign (Step 2)** — AI Provider/Model lên đầu, sau đó Identity, Personality, Security Rules, Extensions
|
|
337
|
+
- **User Info textarea** — User tá»± nháºp thông tin vá» mình → sinh và o `USER.md` để bot cá nhân hóa
|
|
338
|
+
- **Editable Security Rules** — Hiển thị quy tắc bảo máºt mặc định, user có thể sá»a → inject và o `AGENTS.md`
|
|
339
|
+
- **Section dividers** — Icon dividers giữa các nhóm config (🤖 🔠🧩)
|
|
314
340
|
|
|
315
|
-
###
|
|
341
|
+
### 🛠Bug Fixes
|
|
316
342
|
|
|
317
|
-
- **Skills auto-enable**
|
|
318
|
-
- **Skills env injection**
|
|
343
|
+
- **Skills auto-enable** — Khi chá»n skill, giá» tá»± động khai báo trong `openclaw.json` → `skills.entries` (enabled: true). Trước đây chỉ cà i Dockerfile nhưng không register → bot không nháºn skill
|
|
344
|
+
- **Skills env injection** — Skills cần API key (Tavily, SMTP…) tự động inject env vars và o `skills.entries`
|
|
319
345
|
|
|
320
|
-
###
|
|
346
|
+
### 🎨 UI/UX
|
|
321
347
|
|
|
322
|
-
- Identity grid 3
|
|
323
|
-
- Emoji input fix: `form-input--emoji` class,
|
|
324
|
-
- Label System Prompt
|
|
348
|
+
- Identity grid 3 cột (Tên, Vai trò, Emoji) — bỠVibe (gộp và o System Prompt)
|
|
349
|
+
- Emoji input fix: `form-input--emoji` class, cùng height với input khác
|
|
350
|
+
- Label System Prompt → "TÃnh cách, Vibe & Quy tắc trả lá»i"
|
|
325
351
|
- Responsive mobile: Name full width, Role + Emoji side-by-side
|
|
326
|
-
- Security textarea readonly
|
|
352
|
+
- Security textarea readonly mặc định, nút "âœï¸ Sá»a" / "🔒 Khóa" toggle
|
|
327
353
|
|
|
328
|
-
###
|
|
354
|
+
### 🔧 Technical
|
|
329
355
|
|
|
330
|
-
- `state.config.userInfo`
|
|
331
|
-
- `state.config.securityRules`
|
|
356
|
+
- `state.config.userInfo` — new field, saved from `cfg-user-info` textarea
|
|
357
|
+
- `state.config.securityRules` — editable, defaults per language (vi/en)
|
|
332
358
|
- `DEFAULT_SECURITY_RULES` constant with vi/en templates
|
|
333
359
|
- `clawConfig.skills.entries` generated from selected skills
|
|
334
360
|
- Language toggle updates both prompt and security rules
|
|
335
361
|
|
|
336
362
|
---
|
|
337
363
|
|
|
338
|
-
## [3.0.0]
|
|
364
|
+
## [3.0.0] — 2026-03-28
|
|
339
365
|
|
|
340
|
-
###
|
|
366
|
+
### ✨ New Features
|
|
341
367
|
|
|
342
|
-
- **9Router Integration**
|
|
343
|
-
- **Skills System (ClawHub)**
|
|
344
|
-
- **Plugins System (npm)**
|
|
345
|
-
- **Browser Automation**
|
|
346
|
-
- **Task Scheduler**
|
|
347
|
-
- **Skill-aware .env**
|
|
348
|
-
- **Post-setup Management**
|
|
368
|
+
- **9Router Integration** — AI proxy, không cần API key, multi-container Docker (`docker-compose.yml` 2 service)
|
|
369
|
+
- **Skills System (ClawHub)** — 8 agent capabilities: Web Search, Browser Automation, Memory, RAG, Image Gen, Bot Scheduler, Code Interpreter, Email Assistant
|
|
370
|
+
- **Plugins System (npm)** — 4 runtime extensions: Voice Call, Matrix, MS Teams, Nostr
|
|
371
|
+
- **Browser Automation** — Full Chrome Debug Mode support (socat proxy, agent-browser, Playwright engine)
|
|
372
|
+
- **Task Scheduler** — Windows Scheduled Task auto-starts Chrome Debug khi logon (delay 10s)
|
|
373
|
+
- **Skill-aware .env** — `.env` template tự động thêm env vars cho skills cần API key (Tavily, SMTP, Flux...)
|
|
374
|
+
- **Post-setup Management** — Hướng dẫn thêm/bỠskills/plugins sau khi setup qua `docker exec`
|
|
349
375
|
|
|
350
|
-
###
|
|
376
|
+
### 🎨 UI/UX
|
|
351
377
|
|
|
352
|
-
-
|
|
353
|
-
- Skill cards
|
|
354
|
-
- Browser Automation notice card
|
|
355
|
-
- Management guide card (
|
|
378
|
+
- Tách Skills (4-column grid) và Plugins (riêng biệt) — rõ rà ng hơn
|
|
379
|
+
- Skill cards hiện notes (âš™ï¸) cho skills cần setup thêm
|
|
380
|
+
- Browser Automation notice card ở Step 4 với `.bat` + `.ps1` scripts
|
|
381
|
+
- Management guide card (🔧) với `docker exec` commands
|
|
356
382
|
|
|
357
|
-
###
|
|
383
|
+
### 📚 Documentation
|
|
358
384
|
|
|
359
|
-
- `docs/browser-automation-guide.md`
|
|
360
|
-
- `docs/skills-plugins-guide.md`
|
|
361
|
-
- README.md / README.vi.md
|
|
385
|
+
- `docs/browser-automation-guide.md` — Hướng dẫn sỠdụng Browser Automation cho user
|
|
386
|
+
- `docs/skills-plugins-guide.md` — Tổng hợp toà n bộ skills/plugins + setup + env vars
|
|
387
|
+
- README.md / README.vi.md — Thêm 9Router, Skills/Plugins, FAQs mới
|
|
362
388
|
|
|
363
|
-
###
|
|
389
|
+
### 🔧 Technical
|
|
364
390
|
|
|
365
|
-
- `state.config.skills[]` + `state.config.plugins[]`
|
|
391
|
+
- `state.config.skills[]` + `state.config.plugins[]` quản lý độc láºp
|
|
366
392
|
- `openclaw.json` inject `browser` config khi Browser skill selected
|
|
367
|
-
- Dockerfile conditional: socat, agent-browser
|
|
368
|
-
- docker-compose: `extra_hosts` cho
|
|
393
|
+
- Dockerfile conditional: socat, agent-browser chỉ khi cần
|
|
394
|
+
- docker-compose: `extra_hosts` cho cả 9Router lẫn non-9Router
|
|
369
395
|
|
|
370
396
|
---
|
|
371
397
|
|
|
372
|
-
## [2.0.0]
|
|
398
|
+
## [2.0.0] — 2026-03-27
|
|
373
399
|
|
|
374
|
-
###
|
|
400
|
+
### ✨ New Features
|
|
375
401
|
|
|
376
|
-
- **Setup Wizard UI**
|
|
377
|
-
- **Multi-Channel Support**
|
|
378
|
-
- **Multi-Provider AI**
|
|
379
|
-
- **Plugin System**
|
|
380
|
-
- **Config Generation**
|
|
381
|
-
- **Language Toggle**
|
|
382
|
-
- **Brand Logos**
|
|
402
|
+
- **Setup Wizard UI** — Interactive web wizard (`index.html`) to configure OpenClaw bots visually
|
|
403
|
+
- **Multi-Channel Support** — Telegram, Zalo Bot API, Zalo Personal channel selection
|
|
404
|
+
- **Multi-Provider AI** — Google Gemini, Anthropic Claude, OpenAI/Codex, OpenRouter, Ollama (local)
|
|
405
|
+
- **Plugin System** — Modular plugin grid: Browser Automation, Scheduler, Memory, Web Search, RAG, Image Gen
|
|
406
|
+
- **Config Generation** — Auto-generates `openclaw.json`, `agent.yaml`, `Dockerfile`, `docker-compose.yml`
|
|
407
|
+
- **Language Toggle** — VI/EN toggle switch with SVG flag icons
|
|
408
|
+
- **Brand Logos** — Real SVG logos from [thesvg.org](https://thesvg.org) for all providers and channels
|
|
383
409
|
|
|
384
|
-
###
|
|
410
|
+
### 🎨 Design
|
|
385
411
|
|
|
386
412
|
- Dark-themed glassmorphism UI with animated multi-layer gradients
|
|
387
413
|
- Provider cards with unique colored icon backgrounds (Gemini purple, Claude orange, OpenAI green, OpenRouter violet, Ollama cyan)
|
|
388
414
|
- Auto-expanding System Prompt textarea (no internal scroll)
|
|
389
415
|
- Shimmer animation on title, glow effects on selected cards
|
|
390
416
|
|
|
391
|
-
###
|
|
417
|
+
### 📚 Documentation
|
|
392
418
|
|
|
393
|
-
- `README.md` / `README.vi.md`
|
|
394
|
-
- `SETUP.md` / `SETUP.vi.md`
|
|
419
|
+
- `README.md` / `README.vi.md` — Full bilingual docs with multi-provider table
|
|
420
|
+
- `SETUP.md` / `SETUP.vi.md` — Technical setup guide for AI agents
|
|
395
421
|
- Security notice: System Prompt = personality only, framework enforces security rules
|
|
396
422
|
|
|
397
423
|
---
|
|
398
424
|
|
|
399
|
-
## [1.0.0]
|
|
425
|
+
## [1.0.0] — 2026-03-26
|
|
400
426
|
|
|
401
427
|
### Initial Release
|
|
402
428
|
|
|
@@ -405,3 +431,4 @@ Tất cả những thay đổi nổi bật của dự án sẽ được ghi ché
|
|
|
405
431
|
- Google Gemini single provider support
|
|
406
432
|
- Manual config file instructions
|
|
407
433
|
|
|
434
|
+
|