@nalvietnam/avatar-cli 2.0.0 → 3.0.0-beta.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.
@@ -10,52 +10,29 @@ Workspace có **team-ai-pack** active — bộ skills, agents, slash commands, h
10
10
 
11
11
  → Khi user yêu cầu việc gì khớp với skill/command/agent có sẵn, **ưu tiên dùng pack** thay vì làm thủ công. Xem `.claude/pack/` để biết catalog đầy đủ.
12
12
 
13
- ### ⚠️ COMMIT CONVENTIONS — BẮT BUỘC TUÂN THỦ
13
+ ### 📁 CẤU TRÚC WORKSPACE
14
14
 
15
- Workspace này **2 git repos riêng biệt**:
15
+ - **Workspace root** folder cài đồ, **KHÔNG phải git repo**. Chứa `.claude/` (pack + config) + `src/` + `notes/`.
16
+ - **`src/<tên-repo>/`** → mỗi repo code là **git repo độc lập** (clone từ remote riêng), push/pull bình thường như mọi dự án.
16
17
 
17
- - `src/` (submodule) **code khách của bạn** push lên **client remote**
18
- - workspace root → **Avatar state team-shared** (`.claude/`, `CLAUDE.md`, knowledge, hooks) → CHỈ admin team sync
18
+ Workspace có thể chứa **nhiều repo** (vd `src/frontend/`, `src/backend/`, `src/service-1/`). Mỗi repo git + remote riêng. Thêm repo bằng `avatar add repo`.
19
19
 
20
- Bạn **member dev** **CHỈ ĐƯỢC** commit code trong `src/`. Workspace state là responsibility của **team admin** sync cho cả team, **KHÔNG được** commit/push trực tiếp từ máy bạn.
20
+ ### COMMITgit thường trong từng repo
21
21
 
22
- **Lệnh DUY NHẤT bạn được dùng để commit:**
22
+ Mỗi `src/<repo>` git độc lập commit/push như bình thường:
23
23
 
24
24
  ```bash
25
- avatar commit src -m "feat: ..." # Commit code → client remote
26
- avatar commit src -m "fix: ..." --push # Commit + push luôn
25
+ cd src/frontend
26
+ git add . && git commit -m "feat: ..."
27
+ git push
27
28
  ```
28
29
 
29
- **TUYỆT ĐỐI KHÔNG:**
30
+ **Lưu ý cho AI assistant (Claude Code agent):**
30
31
 
31
- - `git commit` raw ở workspace root commit nhầm Avatar state lên client remote (leak knowledge nội bộ NAL)
32
- - `git commit` raw trong `src/` bypass Avatar audit, miss hooks validation
33
- - `git push` raw luôn dùng `avatar commit src --push`
34
-
35
- **Nếu workspace root (`.claude/`, `CLAUDE.md`, file backup, untracked...) có changes:**
36
-
37
- Đây là Avatar tự update hoặc bạn lỡ edit. **Mặc định: ĐỂ NGUYÊN, KHÔNG đụng vào.** Avatar sẽ tự sync khi cần, hoặc admin pull về share cho team.
38
-
39
- → Chỉ commit/push **trong `src/`**, **bỏ qua hoàn toàn** các file ở workspace root khi commit.
40
-
41
- Nếu bạn cố tình muốn share knowledge cập nhật (vd ADR mới, gotcha mới) → báo team admin qua Slack, admin sẽ sync cho cả team.
42
-
43
- > ⚠️ **Hướng dẫn dành riêng cho AI assistant (Claude Code agent):**
44
- >
45
- > Khi user yêu cầu commit code:
46
- >
47
- > 1. **CHỈ stage + commit file trong `src/`**. KHÔNG `git add -A` ở workspace root.
48
- > 2. **KHÔNG tự ý chạy** `git restore`, `git clean`, `git checkout --`, hoặc bất kỳ lệnh nào xóa/discard workspace root files — kể cả untracked file.
49
- > 3. Nếu thấy workspace root có changes (`.claude/`, `CLAUDE.md`, file backup, untracked...) → **ignore, để nguyên**. Đó là Avatar state, không phải rác.
50
- > 4. Sau khi `avatar commit src` xong → **dừng**. Không "dọn dẹp" thêm gì ở root.
51
- > 5. Nếu user explicit yêu cầu discard workspace changes → hỏi confirm trước (`AskUserQuestion`) rồi mới chạy.
52
-
53
- **Tại sao strict thế?**
54
-
55
- - Workspace remote team-shared: 1 member push nhầm → toàn team pull về phải resolve conflict
56
- - Avatar state có hooks, MCP config, knowledge nhạy cảm — chỉ admin verify trước khi share
57
- - `git commit` raw không biết 2-repo layout → dễ commit nhầm vào wrong remote
58
- - AI agent tự discard untracked files = **mất data im lặng** (file backup, ADR draft, gotcha note user đang viết dở)
32
+ - Workspace root KHÔNG gitđừng `git init`, `git commit`, `git add` root.
33
+ - Commit code `cd src/<repo>` rồi dùng git thường trong repo đó.
34
+ - `.claude/` là config Avatar (pack symlink, settings) — KHÔNG commit vào repo code; nếu lỡ thấy trong `git status` của repo thì đã được `.gitignore` xử lý.
35
+ - Cập nhật team-ai-pack mới → `avatar sync` (không commit gì).
59
36
 
60
37
  ### 🧰 Team AI Pack
61
38
 
@@ -109,4 +86,3 @@ ls -la .claude/skills # Verify symlink → pack/skills
109
86
  - Avatar version: {{avatarVersion}}
110
87
  - Pack version: {{packVersion}}
111
88
  - Last scan: {{lastScan}}
112
- - Mode: {{mode}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nalvietnam/avatar-cli",
3
- "version": "2.0.0",
3
+ "version": "3.0.0-beta.0",
4
4
  "description": "AI harness CLI for NAL Vietnam engineering",
5
5
  "type": "module",
6
6
  "bin": {
@@ -10,52 +10,29 @@ Workspace có **team-ai-pack** active — bộ skills, agents, slash commands, h
10
10
 
11
11
  → Khi user yêu cầu việc gì khớp với skill/command/agent có sẵn, **ưu tiên dùng pack** thay vì làm thủ công. Xem `.claude/pack/` để biết catalog đầy đủ.
12
12
 
13
- ### ⚠️ COMMIT CONVENTIONS — BẮT BUỘC TUÂN THỦ
13
+ ### 📁 CẤU TRÚC WORKSPACE
14
14
 
15
- Workspace này **2 git repos riêng biệt**:
15
+ - **Workspace root** folder cài đồ, **KHÔNG phải git repo**. Chứa `.claude/` (pack + config) + `src/` + `notes/`.
16
+ - **`src/<tên-repo>/`** → mỗi repo code là **git repo độc lập** (clone từ remote riêng), push/pull bình thường như mọi dự án.
16
17
 
17
- - `src/` (submodule) **code khách của bạn** push lên **client remote**
18
- - workspace root → **Avatar state team-shared** (`.claude/`, `CLAUDE.md`, knowledge, hooks) → CHỈ admin team sync
18
+ Workspace có thể chứa **nhiều repo** (vd `src/frontend/`, `src/backend/`, `src/service-1/`). Mỗi repo git + remote riêng. Thêm repo bằng `avatar add repo`.
19
19
 
20
- Bạn **member dev** **CHỈ ĐƯỢC** commit code trong `src/`. Workspace state là responsibility của **team admin** sync cho cả team, **KHÔNG được** commit/push trực tiếp từ máy bạn.
20
+ ### COMMITgit thường trong từng repo
21
21
 
22
- **Lệnh DUY NHẤT bạn được dùng để commit:**
22
+ Mỗi `src/<repo>` git độc lập commit/push như bình thường:
23
23
 
24
24
  ```bash
25
- avatar commit src -m "feat: ..." # Commit code → client remote
26
- avatar commit src -m "fix: ..." --push # Commit + push luôn
25
+ cd src/frontend
26
+ git add . && git commit -m "feat: ..."
27
+ git push
27
28
  ```
28
29
 
29
- **TUYỆT ĐỐI KHÔNG:**
30
+ **Lưu ý cho AI assistant (Claude Code agent):**
30
31
 
31
- - `git commit` raw ở workspace root commit nhầm Avatar state lên client remote (leak knowledge nội bộ NAL)
32
- - `git commit` raw trong `src/` bypass Avatar audit, miss hooks validation
33
- - `git push` raw luôn dùng `avatar commit src --push`
34
-
35
- **Nếu workspace root (`.claude/`, `CLAUDE.md`, file backup, untracked...) có changes:**
36
-
37
- Đây là Avatar tự update hoặc bạn lỡ edit. **Mặc định: ĐỂ NGUYÊN, KHÔNG đụng vào.** Avatar sẽ tự sync khi cần, hoặc admin pull về share cho team.
38
-
39
- → Chỉ commit/push **trong `src/`**, **bỏ qua hoàn toàn** các file ở workspace root khi commit.
40
-
41
- Nếu bạn cố tình muốn share knowledge cập nhật (vd ADR mới, gotcha mới) → báo team admin qua Slack, admin sẽ sync cho cả team.
42
-
43
- > ⚠️ **Hướng dẫn dành riêng cho AI assistant (Claude Code agent):**
44
- >
45
- > Khi user yêu cầu commit code:
46
- >
47
- > 1. **CHỈ stage + commit file trong `src/`**. KHÔNG `git add -A` ở workspace root.
48
- > 2. **KHÔNG tự ý chạy** `git restore`, `git clean`, `git checkout --`, hoặc bất kỳ lệnh nào xóa/discard workspace root files — kể cả untracked file.
49
- > 3. Nếu thấy workspace root có changes (`.claude/`, `CLAUDE.md`, file backup, untracked...) → **ignore, để nguyên**. Đó là Avatar state, không phải rác.
50
- > 4. Sau khi `avatar commit src` xong → **dừng**. Không "dọn dẹp" thêm gì ở root.
51
- > 5. Nếu user explicit yêu cầu discard workspace changes → hỏi confirm trước (`AskUserQuestion`) rồi mới chạy.
52
-
53
- **Tại sao strict thế?**
54
-
55
- - Workspace remote team-shared: 1 member push nhầm → toàn team pull về phải resolve conflict
56
- - Avatar state có hooks, MCP config, knowledge nhạy cảm — chỉ admin verify trước khi share
57
- - `git commit` raw không biết 2-repo layout → dễ commit nhầm vào wrong remote
58
- - AI agent tự discard untracked files = **mất data im lặng** (file backup, ADR draft, gotcha note user đang viết dở)
32
+ - Workspace root KHÔNG gitđừng `git init`, `git commit`, `git add` root.
33
+ - Commit code `cd src/<repo>` rồi dùng git thường trong repo đó.
34
+ - `.claude/` là config Avatar (pack symlink, settings) — KHÔNG commit vào repo code; nếu lỡ thấy trong `git status` của repo thì đã được `.gitignore` xử lý.
35
+ - Cập nhật team-ai-pack mới → `avatar sync` (không commit gì).
59
36
 
60
37
  ### 🧰 Team AI Pack
61
38
 
@@ -109,4 +86,3 @@ ls -la .claude/skills # Verify symlink → pack/skills
109
86
  - Avatar version: {{avatarVersion}}
110
87
  - Pack version: {{packVersion}}
111
88
  - Last scan: {{lastScan}}
112
- - Mode: {{mode}}