dw-kit 1.0.0 → 1.0.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.
@@ -22,9 +22,7 @@ except:
22
22
  [ -z "$FILE_PATH" ] && exit 0
23
23
 
24
24
  # ── Đọc lint command từ config ────────────────────────────────────────────────
25
- CONFIG_FILE="${CLAUDE_PROJECT_DIR:-$PWD}/config/dw.config.yml"
26
- # Fallback sang old config nếu chưa migrate
27
- [ ! -f "$CONFIG_FILE" ] && CONFIG_FILE="${CLAUDE_PROJECT_DIR:-$PWD}/config/dw.config.yml"
25
+ CONFIG_FILE="${CLAUDE_PROJECT_DIR:-$PWD}/.dw/config/dw.config.yml"
28
26
  [ ! -f "$CONFIG_FILE" ] && exit 0
29
27
 
30
28
  LINT_CMD=$(grep -m1 "lint_command:" "$CONFIG_FILE" 2>/dev/null \
@@ -6,52 +6,42 @@ argument-hint: ""
6
6
 
7
7
  # Upgrade dv-workflow-kit
8
8
 
9
- ## Điều Kiện Tiên Quyết
9
+ ## Điều Kiện tiên quyết
10
10
 
11
- Skill này yêu cầu toolkit được cài qua git submodule tại `.dw-module/`.
11
+ Toolkit được cài theo luồng chuẩn v1 trong project hiện tại (thường là `npm install -g dw-kit` + `dw init`).
12
+ Các tùy chỉnh của team được đặt tại:
13
+ - overrides: `.dw/adapters/claude-cli/overrides/`
14
+ - extensions (skills mới): `.dw/adapters/claude-cli/extensions/`
12
15
 
13
- ## Bước 1: Kiểm tra setup
16
+ ## Bước 1: Preview upgrade (khuyến nghị)
14
17
 
15
- Kiểm tra `.dw-module/` có tồn tại và là git repo:
16
18
  ```bash
17
- ls .dw-module/.git
19
+ dw upgrade --check
20
+ dw upgrade --dry-run
18
21
  ```
19
22
 
20
- Nếu không có → thông báo: "Toolkit chưa được cài dạng git submodule. Xem `examples/integration-guide/README.md`."
21
-
22
- ## Bước 2: Pull version mới nhất
23
+ ## Bước 2: Backup config (tùy chọn nhưng nên làm)
23
24
 
24
- ```bash
25
- cd .dv-workflow && git fetch origin && git log origin/main --oneline -5
26
- ```
27
-
28
- Hiển thị 5 commits mới nhất của upstream để user biết có gì thay đổi.
29
-
30
- ## Bước 3: Backup config
31
-
32
- Trước khi update, backup config hiện tại:
33
25
  ```bash
34
26
  cp .dw/config/dw.config.yml .dw/config/dw.config.yml.backup-$(date +%Y%m%d)
35
27
  ```
36
28
 
37
- Thông báo: "Config đã backup tại `.dw/config/dw.config.yml.backup-[date]`"
38
-
39
- ## Bước 4: Update submodule
29
+ ## Bước 3: Chạy upgrade
40
30
 
41
31
  ```bash
42
- cd .dv-workflow && git pull origin main
32
+ dw upgrade
43
33
  ```
44
34
 
45
- ## Bước 5: So sánhupdate files
35
+ `dw upgrade` sẽ update toolkit files theo version mới **tôn trọng overrides** của team (không ghi đè override).
36
+
37
+ ## Bước 4: Validate & health check
46
38
 
47
- Chạy setup script với mode update (không overwrite):
48
39
  ```bash
49
- bash .dw-module/examples/integration-guide/setup.sh
40
+ dw validate
41
+ dw doctor
50
42
  ```
51
43
 
52
- Script dùng `cp -n` (no-clobber) chỉ copy files MỚI, không overwrite files đã customize.
53
-
54
- ## Bước 6: Báo cáo kết quả
44
+ ## Bước 5: Báo cáo kết quả
55
45
 
56
46
  ```
57
47
  === Upgrade Report ===
@@ -64,7 +54,7 @@ Files mới (đã copy):
64
54
  + .claude/templates/en/task-context.md
65
55
 
66
56
  Files đã thay đổi trong toolkit (KHÔNG tự động update vì bạn có thể đã customize):
67
- ~ .claude/skills/dw-task-init/SKILL.md — xem diff: git diff .dw-module/.claude/skills/dw-task-init/SKILL.md
57
+ ~ .claude/skills/dw-task-init/SKILL.md — xem diff: git diff .claude/skills/dw-task-init/SKILL.md
68
58
  ~ .claude/agents/planner.md
69
59
 
70
60
  Files của bạn (giữ nguyên):
@@ -72,11 +62,11 @@ Files của bạn (giữ nguyên):
72
62
 
73
63
  Lưu ý:
74
64
  - Review các files "đã thay đổi" và merge thủ công nếu cần
75
- - Xem CHANGELOG tại .dw-module/CHANGELOG.md để biết breaking changes
65
+ - Xem CHANGELOG của release (nếu cần) để biết breaking changes
76
66
  - Chạy /dw-config-validate sau khi upgrade để kiểm tra config
77
67
  ```
78
68
 
79
- ## Bước 7: Cleanup backup (tùy chọn)
69
+ ## Cleanup backup (tùy chọn)
80
70
 
81
71
  Hỏi user: "Bạn có muốn xóa file backup config không? (y/n)"
82
72
  Nếu y: `rm .dw/config/dw.config.yml.backup-*`
@@ -1,4 +1,4 @@
1
- # .dw/adapters/claude-cli/extensions/
1
+ # .dw/adapters/claude-cli/extensions/
2
2
 
3
3
  > **NET-NEW TEAM SKILLS — Không conflict với generated, không bị overwrite.**
4
4
 
@@ -15,7 +15,7 @@ extensions/
15
15
  └── README.md ← optional: mô tả skill
16
16
  ```
17
17
 
18
- `setup.sh` copy tất cả skills trong thư mục này vào `.claude/skills/`.
18
+ `dw upgrade` copy tất cả skills trong thư mục này vào `.claude/skills/` (extensions không ghi đè skills đã customize).
19
19
 
20
20
  ## Ví dụ Skills Phù Hợp
21
21
 
@@ -1,7 +1,7 @@
1
- # .dw/adapters/claude-cli/generated/
1
+ # .dw/adapters/claude-cli/generated/
2
2
 
3
3
  > **AUTO-GENERATED — Không edit tay.**
4
- > Thư mục này được overwrite khi chạy `scripts/upgrade.sh` hoặc `setup.sh`.
4
+ > Thư mục này được overwrite khi nâng cấp toolkit trong quá trình build/generation nội bộ.
5
5
 
6
6
  ## Nội dung
7
7
 
@@ -16,7 +16,7 @@ generated/
16
16
 
17
17
  ## Cách hoạt động
18
18
 
19
- `setup.sh` copy `generated/` → `.claude/`, với overrides từ `overrides/` thắng.
19
+ `dw init`/`dw upgrade` → populate `.claude/`, áp dụng overrides từ `overrides/` (override thắng).
20
20
 
21
21
  ## Nếu muốn customize
22
22
 
@@ -1,4 +1,4 @@
1
- # .dw/adapters/claude-cli/overrides/
1
+ # .dw/adapters/claude-cli/overrides/
2
2
 
3
3
  > **TEAM CUSTOMIZATIONS — KHÔNG BAO GIỜ bị overwrite khi upgrade.**
4
4
 
@@ -19,11 +19,13 @@ overrides/
19
19
  └── reviewer.md ← override generated/agents/reviewer.md
20
20
  ```
21
21
 
22
- Khi upgrade, `scripts/upgrade.sh` sẽ:
22
+ Khi chạy `dw upgrade`, luồng sẽ:
23
23
  1. Update `generated/` từ toolkit mới
24
24
  2. Apply overrides từ thư mục này (overrides thắng generated)
25
25
  3. Copy kết quả vào `.claude/`
26
26
 
27
+ Trong v1, luồng chuẩn là `dw upgrade`: nó tôn trọng overrides khi cập nhật `.claude/`.
28
+
27
29
  ## Khi nào nên override?
28
30
 
29
31
  - Team có domain-specific review rules
package/README.md CHANGED
@@ -1,183 +1,124 @@
1
- # dw-kit
1
+ # dw-kit
2
2
 
3
- > Bộ workflow toolkit cho dev team sử dụng Claude Code Agenttừ requirements đến dashboard.
3
+ > An AI development workflow toolkit for teams using agentic IDEs (Claude Code, Cursor)from idea to review-ready commits.
4
4
 
5
- **v1.0** · `npm install -g dw-kit` · [Docs](docs/README.md) · [Cheatsheet](docs/cheatsheet.md) · [Migration v0.3→v1](scripts/migrate-v03-to-v1.sh)
5
+ **v1.0** · `npm install -g dw-kit` · [Docs](docs/README.md) · [Get started](docs/get-started.md) · [Cheatsheet](docs/cheatsheet.md)
6
6
 
7
7
  ---
8
8
 
9
- ## Toolkit Này Làm Gì?
9
+ ## What is dw-kit?
10
10
 
11
- Thay để Claude tự do code, dw-kit tạo ra **rails cấu trúc**:
11
+ dw-kit helps your team run AI-assisted development with a **repeatable workflow** and clear checkpoints:
12
12
 
13
13
  ```
14
- Research Plan Execute (TDD) Review Commit
14
+ Initialize Understand → Plan Execute (TDD) Verify Close
15
15
  ```
16
16
 
17
- Với đầy đủ hỗ trợ cho các roles trong team: BA · TL · Dev · QC · PM.
17
+ ```mermaid
18
+ %%{init: {'flowchart': {'nodeSpacing': 10, 'rankSpacing': 18}}}%%
19
+ flowchart LR
20
+ classDef extra fill:#f3f4f6,stroke:#9ca3af,stroke-width:1px,color:#111;
18
21
 
19
- ---
22
+ D[Init + Understand] --> P[Plan (approve)]
23
+ P -->|approved| E[Execute (TDD)]
24
+ P -->|revise| P
20
25
 
21
- ## Quick Start
26
+ E --> V[Verify (gates)]
27
+ V -->|sign-off| C[Close (handoff + archive)]
28
+ V -->|revise (fix)| E
22
29
 
23
- ### Option A — npm (recommended)
30
+ subgraph Extra[Depth=thorough]
31
+ R[Req] --> Est[Est] --> AR[Arch] --> P
32
+ P -.-> TP[Test] -.-> E
33
+ E -.-> DU[Docs] --> LW[Log] -.-> C
34
+ end
24
35
 
25
- ```bash
26
- npm install -g dw-kit
36
+ class R,Est,AR,TP,DU,LW extra
27
37
  ```
28
38
 
29
- Then in your project directory:
39
+ ### 6 phases (full workflow)
40
+ - **Initialize**: clarify task scope and set up the workspace + task docs.
41
+ - **Understand**: survey the codebase, dependencies, patterns, and test coverage (no implementation).
42
+ - **Plan**: design the solution and subtasks; **pause for your approval**.
43
+ - **Execute**: implement using **TDD**; each subtask produces a commit.
44
+ - **Verify**: run quality gates + review sign-off to ensure correctness and safety.
45
+ - **Close**: handoff notes, finalize progress, and archive when done.
30
46
 
31
- ```bash
32
- dw init
33
- ```
47
+ It’s designed for collaboration (Dev / Tech Lead / QA / PM) and keeps work auditable via lightweight task docs.
34
48
 
35
- Interactive wizard asks 3 questions (project, depth, language) and auto-selects roles by depth. Or use presets:
49
+ ---
50
+
51
+ ## Install
36
52
 
37
53
  ```bash
38
- dw init --preset small-team # skip wizard
39
- dw init --preset solo-quick # solo dev, minimal ceremony
40
- dw init --preset enterprise # full team, all features
54
+ npm install -g dw-kit
41
55
  ```
42
56
 
43
- Zero-install (one-time use):
57
+ ---
44
58
 
45
- ```bash
46
- npx dw-kit init
47
- ```
59
+ ## Quick start
48
60
 
49
- ### Option B — Git submodule (legacy)
61
+ From your project directory:
50
62
 
51
63
  ```bash
52
- git submodule add https://github.com/dv-workflow/dv-workflow.git .dw-module
53
- bash .dw-module/setup.sh
64
+ dw init
54
65
  ```
55
66
 
56
- `setup.sh` luồng legacy/fallback. Luồng khuyến nghị cho v1 `npm install -g dw-kit` + `dw init`.
57
-
58
- ### Start working
59
-
60
- Open Claude Code in your project directory:
67
+ Then in **Claude Code** (Update for Cursor/Antigravity/... in the next version):
61
68
 
62
69
  ```
63
- /dw-task-init tên-feature
70
+ /dw-flow new-feature
64
71
  ```
65
72
 
66
- ### CLI Commands
67
-
68
- ```bash
69
- dw init # Setup wizard
70
- dw upgrade # Update toolkit files (override-aware)
71
- dw upgrade --dry-run # Preview changes
72
- dw upgrade --check # Check for updates only
73
- dw validate # Validate config against schema
74
- dw doctor # Check installation health
75
- dw migrate # Migrate from v0.3 to v1
76
- ```
77
-
78
- ---
73
+ ## Workflow overview
79
74
 
80
- ## Depth System (thay thế Level 1/2/3)
75
+ `dw` runs a 6-phase process (all phases for `standard` and `thorough`):
81
76
 
82
- | Depth | Dành cho | Workflow |
83
- |-------|----------|----------|
84
- | `quick` | Solo dev, hotfix, familiar code | Understand → Execute → Close |
85
- | `standard` | Team nhỏ, feature mới | Tất cả 6 phases |
86
- | `thorough` | Enterprise, API/DB/security changes | Full workflow + arch-review + test-plan |
87
-
88
- Cấu hình trong `.dw/config/dw.config.yml`:
89
- ```yaml
90
- workflow:
91
- default_depth: "standard"
92
- ```
77
+ Initialize Understand Plan (stops for approval) → Execute (TDD; 1 commit per subtask) → Verify (quality gates + review sign-off) → Close (handoff + archive when done).
93
78
 
94
- `default_depth` là baseline. Với task cụ thể, bạn có thể override sang `thorough` khi scope/risk tăng (API/DB/security), kể cả project nhỏ.
95
79
 
96
80
  ---
97
81
 
98
- ## Kiến Trúc v1 (4 Layers)
82
+ ## CLI commands
99
83
 
100
- ```
101
- Layer 0: core/ ← Portable methodology (platform-agnostic)
102
- Layer 1: .claude/ ← Claude Code execution (agents, hooks, skills)
103
- Layer 2: config/claude: ← Model-specific features (extended thinking, MCP)
104
- Layer 3: adapters/overrides/ Team customizations (never overwritten by upgrade)
84
+ ```bash
85
+ dw init # setup wizard / presets
86
+ dw validate # validate .dw/config/dw.config.yml
87
+ dw doctor # installation health check
88
+ dw upgrade # update toolkit files (override-aware)
89
+ dw upgrade --check # check for updates only
90
+ dw upgrade --dry-run # preview changes
105
91
  ```
106
92
 
107
93
  ---
108
94
 
109
- ## Cấu Trúc Sau Khi Setup
95
+ ## Depth system
110
96
 
111
- ```
112
- dự-án-của-bạn/
113
- ├── .dw-module/ ← toolkit (git submodule, read-only)
114
- ├── core/ ← portable methodology
115
- │ ├── WORKFLOW.md ← 6-phase workflow
116
- │ ├── THINKING.md ← thinking framework
117
- │ ├── QUALITY.md ← 4-layer quality strategy
118
- │ └── ROLES.md ← team role definitions
119
- ├── config/
120
- │ ├── dw.config.yml ← config (~45 lines)
121
- │ ├── config.schema.json ← validation schema
122
- │ └── presets/ ← solo-quick, small-team, enterprise
123
- ├── adapters/
124
- │ ├── claude-cli/overrides/ ← team customizations (upgrade-safe)
125
- │ ├── claude-cli/extensions/ ← net-new team skills
126
- │ └── generic/AGENT.md ← for Cursor/Windsurf/Copilot
127
- ├── .claude/ ← skills, agents, rules, hooks
128
- ├── .dw/ ← tasks, docs, metrics, reports
129
- └── scripts/
130
- ├── upgrade.sh ← upgrade toolkit (--dry-run)
131
- └── migrate-v03-to-v1.sh ← migration từ v0.3
132
- ```
97
+ Pick a default depth for your project, then override per task when risk increases.
133
98
 
134
- ---
99
+ | Depth | Best for | Workflow |
100
+ |-------|----------|----------|
101
+ | `quick` | Solo dev, hotfix, familiar code | Understand → Execute → Close |
102
+ | `standard` | Small teams, new features | Full 6 phases |
103
+ | `thorough` | Risky changes (API/DB/security) | Full workflow + arch-review + test-plan |
135
104
 
136
- ## Skills Có Sẵn
105
+ Configured in `.dw/config/dw.config.yml`:
137
106
 
138
- Xem [docs/cheatsheet.md](docs/cheatsheet.md) để có bảng tham chiếu nhanh.
107
+ ```yaml
108
+ workflow:
109
+ default_depth: "standard"
110
+ ```
139
111
 
140
112
  ---
141
113
 
142
- ## Migrating từ v0.3
114
+ ## What gets added to your repo?
143
115
 
144
- ```bash
145
- dw migrate --dry-run # preview changes
146
- dw migrate # apply migration
147
116
  ```
148
-
149
- Or via bash (legacy):
150
-
151
- ```bash
152
- bash scripts/migrate-v03-to-v1.sh --dry-run
153
- bash scripts/migrate-v03-to-v1.sh
117
+ .dw/ # methodology, config, adapters, task docs
118
+ .claude/ # Claude Code: skills, hooks, agents, rules
119
+ CLAUDE.md # project context for the agent
154
120
  ```
155
121
 
156
- `scripts/upgrade.sh` và `scripts/migrate-v03-to-v1.sh` được giữ cho backward-compat; ưu tiên dùng `dw upgrade` và `dw migrate`.
157
-
158
- Migration sẽ:
159
- - Map `level: 2` → `default_depth: standard`
160
- - Preserve customized skills vào `.dw/adapters/claude-cli/overrides/`
161
- - Backup old config, create new `.dw/config/dw.config.yml`
162
-
163
- ---
164
-
165
- ## Demo
166
-
167
- - [Demo A](examples/demo-A-bug-fix/) — Bug fix workflow (quick depth)
168
- - [Demo B](examples/demo-B-new-feature/) — Full team feature workflow (BA → PM)
169
-
170
- ---
171
-
172
- ## Tài Liệu
173
-
174
- | Tài liệu | Nội dung |
175
- |----------|---------|
176
- | [docs/README.md](docs/README.md) | Hướng dẫn đầy đủ, setup, tips |
177
- | [docs/cheatsheet.md](docs/cheatsheet.md) | Bảng tham chiếu nhanh tất cả skills |
178
- | [docs/custom-skills.md](docs/custom-skills.md) | Hướng dẫn tạo custom skills |
179
- | [CHANGELOG.md](CHANGELOG.md) | Lịch sử thay đổi |
180
-
181
122
  ---
182
123
 
183
- > Maintainer: [huygdv](mailto:huygdv19@gmail.com)
124
+ Maintainer: [huygdv](mailto:huygdv19@gmail.com)
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "dw-kit",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "AI development workflow toolkit — structured, quality-assured, team-ready. From requirements to dashboard.",
5
5
  "type": "module",
6
6
  "bin": {
7
- "dw": "./bin/dw.mjs"
7
+ "dw": "bin/dw.mjs"
8
8
  },
9
9
  "files": [
10
10
  "bin/",
@@ -14,8 +14,7 @@
14
14
  ".dw/adapters/",
15
15
  "scripts/",
16
16
  ".claude/",
17
- "CLAUDE.md",
18
- "setup.sh"
17
+ "CLAUDE.md"
19
18
  ],
20
19
  "engines": {
21
20
  "node": ">=18"
@@ -40,7 +39,7 @@
40
39
  "license": "MIT",
41
40
  "repository": {
42
41
  "type": "git",
43
- "url": "https://github.com/dv-workflow/dv-workflow.git"
42
+ "url": "git+https://github.com/dv-workflow/dv-workflow.git"
44
43
  },
45
44
  "homepage": "https://github.com/dv-workflow/dv-workflow#readme",
46
45
  "dependencies": {
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/bin/bash
2
2
  # scripts/e2e-local-check.sh
3
3
  # End-to-end local publish check (pack -> install -> run CLI)
4
4
 
@@ -60,7 +60,6 @@ npx dw init --preset small-team
60
60
  npx dw validate
61
61
  npx dw doctor
62
62
  npx dw upgrade --check
63
- npx dw migrate --dry-run
64
63
 
65
64
  info "Step 6: Verify task-depth override guidance artifacts"
66
65
  grep -q "Task-Level Depth Override" ".dw/core/WORKFLOW.md"
package/src/cli.mjs CHANGED
@@ -55,14 +55,5 @@ export function run(argv) {
55
55
  await doctorCommand();
56
56
  });
57
57
 
58
- program
59
- .command('migrate')
60
- .description('Migrate project from dw-kit v0.3 to v1')
61
- .option('-n, --dry-run', 'Preview migration without applying')
62
- .action(async (opts) => {
63
- const { migrateCommand } = await import('./commands/migrate.mjs');
64
- await migrateCommand(opts);
65
- });
66
-
67
58
  program.parse(argv);
68
59
  }
@@ -72,7 +72,7 @@ test('--version returns semver', () => {
72
72
 
73
73
  test('--help lists all commands', () => {
74
74
  const out = dw('--help', TEMP_BASE);
75
- for (const cmd of ['init', 'upgrade', 'validate', 'doctor', 'migrate']) {
75
+ for (const cmd of ['init', 'upgrade', 'validate', 'doctor']) {
76
76
  assert(out.includes(cmd), `Missing command: ${cmd}`);
77
77
  }
78
78
  });
@@ -288,16 +288,6 @@ test('upgrade fails on project without config', () => {
288
288
  }
289
289
  });
290
290
 
291
- // ── Test: dw migrate ─────────────────────────────────────────────────────────
292
- console.log();
293
- console.log('▶ dw migrate');
294
-
295
- test('migrate on v1 project reports no v0.3 config', () => {
296
- const dir = join(TEMP_BASE, 'init-solo');
297
- const out = dw('migrate', dir);
298
- assert(out.includes('Already on v1') || out.includes('No v0.3'), 'Should report no migration needed');
299
- });
300
-
301
291
  // ── Cleanup ──────────────────────────────────────────────────────────────────
302
292
  rmSync(TEMP_BASE, { recursive: true });
303
293