evnict-kit 0.2.2 → 0.2.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/README.md +39 -2
- package/bin/cli.js +7 -1
- package/package.json +1 -1
- package/scripts/patch-workflows.js +142 -0
- package/scripts/postinstall.js +1 -1
- package/src/commands/init.js +18 -9
- package/src/commands/sync.js +317 -0
- package/src/commands/upgrade.js +7 -1
- package/src/utils/config.js +2 -2
- package/templates/GETTING-STARTED.md +23 -2
- package/templates/content/skills/evnict-kit-bug-fix/SKILL.md +1 -1
- package/templates/content/skills/evnict-kit-git-worktrees/SKILL.md +0 -2
- package/templates/content/skills/evnict-kit-onboard/SKILL.md +0 -1
- package/templates/content/skills/evnict-kit-spec/SKILL.md +1 -1
- package/templates/content/skills/evnict-kit-wiki/SKILL.md +16 -54
- package/templates/content/workflows/evnict-kit-archive-wiki.md +4 -5
- package/templates/content/workflows/evnict-kit-attt.md +1 -1
- package/templates/content/workflows/evnict-kit-bug-fix.md +1 -1
- package/templates/content/workflows/evnict-kit-feature-large.md +2 -2
- package/templates/content/workflows/evnict-kit-feature-small.md +1 -1
- package/templates/content/workflows/evnict-kit-init-wiki.md +18 -47
- package/templates/content/workflows/evnict-kit-wiki-archive-feature.md +2 -3
- package/templates/content/workflows/evnict-kit-wiki-query.md +3 -3
- package/templates/content/workflows/evnict-kit-wiki-scan-project.md +3 -4
- package/templates/skills/evnict-kit-bug-fix/SKILL.md +1 -1
- package/templates/skills/evnict-kit-create-component/SKILL.md +23 -0
- package/templates/skills/evnict-kit-create-page/SKILL.md +23 -0
- package/templates/skills/evnict-kit-frontend-design/SKILL.md +161 -0
- package/templates/skills/evnict-kit-spec/SKILL.md +1 -1
- package/templates/skills/evnict-kit-wiki/SKILL.md +16 -54
- package/templates/wiki/AGENTS.md +280 -0
- package/templates/wiki/CLAUDE.md +280 -0
- package/templates/wiki/FAQ.md +168 -0
- package/templates/wiki/README.md +272 -35
- package/templates/wiki/config.example.yaml +145 -17
- package/templates/wiki/scripts/run-wiki.sh +17 -0
- package/templates/wiki/scripts/setup-scheduler.ps1 +29 -0
- package/templates/wiki/skills/llm-wiki/SKILL.md +341 -0
- package/templates/wiki/wiki/INDEX.md +9 -0
- package/templates/wiki/wiki/INDEX.template.md +29 -0
- package/templates/wiki/wiki/LOG.md +3 -0
- package/templates/wiki/wiki/LOG.template.md +7 -0
- package/templates/wiki/wiki-viewer.html +408 -0
- package/templates/workflows/antigravity/evnict-kit-archive-wiki.md +24 -5
- package/templates/workflows/antigravity/evnict-kit-attt.md +21 -1
- package/templates/workflows/antigravity/evnict-kit-bug-fix.md +24 -1
- package/templates/workflows/antigravity/evnict-kit-feature-large.md +26 -2
- package/templates/workflows/antigravity/evnict-kit-feature-small.md +24 -1
- package/templates/workflows/antigravity/evnict-kit-handoff.md +23 -0
- package/templates/workflows/antigravity/evnict-kit-implement.md +23 -0
- package/templates/workflows/antigravity/evnict-kit-init-check.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-init-context.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-init-rules.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-init-wiki.md +26 -8
- package/templates/workflows/antigravity/evnict-kit-plan.md +24 -0
- package/templates/workflows/antigravity/evnict-kit-review.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-spec-archive.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-wiki-archive-feature.md +22 -3
- package/templates/workflows/antigravity/evnict-kit-wiki-query.md +23 -3
- package/templates/workflows/antigravity/evnict-kit-wiki-scan-project.md +23 -4
- package/templates/workflows/claude/evnict-kit-archive-wiki.md +24 -5
- package/templates/workflows/claude/evnict-kit-attt.md +21 -1
- package/templates/workflows/claude/evnict-kit-bug-fix.md +24 -1
- package/templates/workflows/claude/evnict-kit-feature-large.md +26 -2
- package/templates/workflows/claude/evnict-kit-feature-small.md +24 -1
- package/templates/workflows/claude/evnict-kit-handoff.md +23 -0
- package/templates/workflows/claude/evnict-kit-implement.md +23 -0
- package/templates/workflows/claude/evnict-kit-init-check.md +20 -0
- package/templates/workflows/claude/evnict-kit-init-context.md +20 -0
- package/templates/workflows/claude/evnict-kit-init-rules.md +20 -0
- package/templates/workflows/claude/evnict-kit-init-wiki.md +25 -7
- package/templates/workflows/claude/evnict-kit-plan.md +24 -0
- package/templates/workflows/claude/evnict-kit-review.md +20 -0
- package/templates/workflows/claude/evnict-kit-spec-archive.md +20 -0
- package/templates/workflows/claude/evnict-kit-wiki-archive-feature.md +22 -3
- package/templates/workflows/claude/evnict-kit-wiki-query.md +23 -3
- package/templates/workflows/claude/evnict-kit-wiki-scan-project.md +23 -4
- package/templates/wiki/package.json +0 -17
- package/templates/wiki/raw/notes/.gitkeep +0 -1
- package/templates/wiki/scripts/ingest.js +0 -66
package/src/utils/config.js
CHANGED
|
@@ -97,7 +97,7 @@ export const TECH_TYPE_HINTS = {
|
|
|
97
97
|
|
|
98
98
|
/**
|
|
99
99
|
* Tool-specific directory and file mapping
|
|
100
|
-
* Mỗi AI tool có cách tổ chức riêng — v0.2.
|
|
100
|
+
* Mỗi AI tool có cách tổ chức riêng — v0.2.3 Multi-Tool Support
|
|
101
101
|
*/
|
|
102
102
|
export const TOOL_MAP = {
|
|
103
103
|
antigravity: {
|
|
@@ -153,7 +153,7 @@ export const TOOL_MAP = {
|
|
|
153
153
|
};
|
|
154
154
|
|
|
155
155
|
/**
|
|
156
|
-
* Tools that have templates ready — v0.2.
|
|
156
|
+
* Tools that have templates ready — v0.2.3: ALL 5 tools supported
|
|
157
157
|
*/
|
|
158
158
|
export const SUPPORTED_TOOLS = ['antigravity', 'claude', 'cursor', 'copilot', 'codex'];
|
|
159
159
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# EVNICT-KIT — Hướng Dẫn Sử Dụng
|
|
2
|
-
> File này được tạo bởi evnict-kit v0.2.
|
|
2
|
+
> File này được tạo bởi evnict-kit v0.2.3
|
|
3
3
|
> Đọc file này để biết dùng workflow nào cho công việc nào
|
|
4
4
|
|
|
5
5
|
---
|
|
@@ -190,7 +190,28 @@ evnict-kit init → init-rules → init-context → init-check → init-wiki →
|
|
|
190
190
|
|
|
191
191
|
---
|
|
192
192
|
|
|
193
|
+
## 🔄 Cập nhật evnict-kit
|
|
194
|
+
|
|
195
|
+
Khi có phiên bản mới:
|
|
196
|
+
```bash
|
|
197
|
+
# Bước 1: Cập nhật CLI
|
|
198
|
+
evnict-kit upgrade # hoặc: npm install -g evnict-kit@latest
|
|
199
|
+
|
|
200
|
+
# Bước 2: Cập nhật templates vào project
|
|
201
|
+
cd <workspace-folder>
|
|
202
|
+
evnict-kit sync # Ghi đè workflows/skills/rules mới
|
|
203
|
+
|
|
204
|
+
# Bước 3 (tùy chọn): Kiểm tra
|
|
205
|
+
evnict-kit doctor # Verify version + workspace status
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
> **Lưu ý:** Lệnh `sync` chỉ ghi đè files evnict-kit (prefix `evnict-kit-`).
|
|
209
|
+
> Files bạn tự thêm vào workflows/skills/rules sẽ **KHÔNG bị xóa**.
|
|
210
|
+
> Context file (AGENTS.md) và project conventions cũng **KHÔNG bị ghi đè**.
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
193
214
|
## 📌 Phiên bản
|
|
194
|
-
- **evnict-kit:** v0.2.
|
|
215
|
+
- **evnict-kit:** v0.2.3
|
|
195
216
|
- **Ngày tạo:** {{DATE}}
|
|
196
217
|
- **Project:** {{PROJECT_NAME}}
|
|
@@ -23,7 +23,7 @@ compatibility: All tech stacks
|
|
|
23
23
|
### Bước 1: Query Wiki
|
|
24
24
|
Tìm trong wiki xem bug này đã được report/fix trước đó chưa:
|
|
25
25
|
```bash
|
|
26
|
-
grep -rl "{keyword}" {wiki_path}/
|
|
26
|
+
grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md"
|
|
27
27
|
```
|
|
28
28
|
Nếu đã có → đọc cách fix trước đó.
|
|
29
29
|
|
|
@@ -24,7 +24,7 @@ compatibility: Java Spring Boot, Angular, ASP.NET Core
|
|
|
24
24
|
1. Đọc `.evnict/config.yaml` → lấy project name, tech stack, wiki path
|
|
25
25
|
2. Đọc `.agent/rules/05-evnict-kit-project-conventions.md` → nắm conventions dự án
|
|
26
26
|
3. Query wiki (nếu có):
|
|
27
|
-
- Đọc index từ `{wiki_path}/
|
|
27
|
+
- Đọc index từ `{wiki_path}/wiki/`
|
|
28
28
|
- Tìm theo keyword/domain/tags từ mô tả feature
|
|
29
29
|
- Nếu tìm được context liên quan → đưa vào spec
|
|
30
30
|
4. Scan codebase:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: evnict-kit-wiki
|
|
3
3
|
description: Quản lý knowledge base dự án bằng LLM Wiki. Push tri thức, query, ingest, status, scan-code. Tích hợp sẵn vào cuối mọi workflow.
|
|
4
|
-
compatibility:
|
|
4
|
+
compatibility: AI Agent (Claude Code / Antigravity)
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# evnict-kit-wiki — Project Knowledge Base
|
|
@@ -119,21 +119,8 @@ cp {generated_file} {wiki_path}/raw/notes/{domain}-{slug}.md
|
|
|
119
119
|
```
|
|
120
120
|
|
|
121
121
|
#### Bước 4: TỰ ĐỘNG chạy ingest
|
|
122
|
-
**KHÔNG bắt user chạy npm
|
|
123
|
-
|
|
124
|
-
cd {wiki_path} && node scripts/ingest.js
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
Nếu `scripts/ingest.js` không tồn tại → thử:
|
|
128
|
-
```bash
|
|
129
|
-
cd {wiki_path} && npm run ingest
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
Nếu vẫn fail → retry 1 lần → nếu vẫn fail → báo lỗi cụ thể:
|
|
133
|
-
```
|
|
134
|
-
❌ Ingest failed: {error message}
|
|
135
|
-
Thử: cd {wiki_path} && npm install && node scripts/ingest.js
|
|
136
|
-
```
|
|
122
|
+
**KHÔNG bắt user chạy node/npm.** Agent TRỰC TIẾP chạy ingest:
|
|
123
|
+
Thực hiện ingest procedure (tiến hành theo hướng dẫn Sub-command INGEST).
|
|
137
124
|
|
|
138
125
|
#### Bước 5: Confirm
|
|
139
126
|
```
|
|
@@ -155,7 +142,7 @@ Nếu vẫn fail → retry 1 lần → nếu vẫn fail → báo lỗi cụ th
|
|
|
155
142
|
|
|
156
143
|
#### Bước 1: Đọc wiki INDEX
|
|
157
144
|
```bash
|
|
158
|
-
cat {wiki_path}/wiki/INDEX.md 2>/dev/null || cat {wiki_path}/
|
|
145
|
+
cat {wiki_path}/wiki/INDEX.md 2>/dev/null || cat {wiki_path}/wiki/INDEX.md 2>/dev/null
|
|
159
146
|
```
|
|
160
147
|
Map keywords từ input vào index.
|
|
161
148
|
|
|
@@ -163,7 +150,7 @@ Map keywords từ input vào index.
|
|
|
163
150
|
```bash
|
|
164
151
|
# Tìm trong wiki pages
|
|
165
152
|
grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md" 2>/dev/null
|
|
166
|
-
grep -rl "{keyword}" {wiki_path}/
|
|
153
|
+
grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md" 2>/dev/null
|
|
167
154
|
# Tìm trong raw notes
|
|
168
155
|
grep -rl "{keyword}" {wiki_path}/raw/notes/ --include="*.md" 2>/dev/null
|
|
169
156
|
```
|
|
@@ -193,34 +180,13 @@ grep -rl "{keyword}" {wiki_path}/raw/notes/ --include="*.md" 2>/dev/null
|
|
|
193
180
|
|
|
194
181
|
---
|
|
195
182
|
|
|
196
|
-
## Sub-command: INGEST
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
ls {wiki_path}/wiki/ | wc -l # Đếm wiki pages
|
|
204
|
-
```
|
|
205
|
-
|
|
206
|
-
#### Bước 2: Chạy ingest script
|
|
207
|
-
Agent TRỰC TIẾP chạy (KHÔNG bắt user):
|
|
208
|
-
```bash
|
|
209
|
-
cd {wiki_path} && node scripts/ingest.js
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
#### Bước 3: Verify kết quả
|
|
213
|
-
Với mỗi raw file đã xử lý:
|
|
214
|
-
- Source summary → `wiki/sources/`
|
|
215
|
-
- Entities extracted → `wiki/entities/`
|
|
216
|
-
- Concepts extracted → `wiki/concepts/`
|
|
217
|
-
- Cross-references thêm vào
|
|
218
|
-
|
|
219
|
-
#### Bước 4: Cập nhật index
|
|
220
|
-
```bash
|
|
221
|
-
cat {wiki_path}/wiki/INDEX.md # Verify index updated
|
|
222
|
-
cat {wiki_path}/wiki/LOG.md # Check log
|
|
223
|
-
```
|
|
183
|
+
## Sub-command: INGEST (từ project qua symlink)
|
|
184
|
+
1. Wiki path: {project_name}-wiki/ (symlink)
|
|
185
|
+
2. Đọc {wiki_path}/CLAUDE.md → hiểu schema
|
|
186
|
+
3. Scan {wiki_path}/raw/notes/ → tìm file chưa có trong history.json
|
|
187
|
+
4. Sinh wiki/sources/, wiki/entities/, wiki/concepts/
|
|
188
|
+
5. Cập nhật INDEX.md + LOG.md + history.json
|
|
189
|
+
→ Agent tự làm hết, KHÔNG cần mở Agent riêng
|
|
224
190
|
|
|
225
191
|
### QUAN TRỌNG
|
|
226
192
|
- **KHÔNG BAO GIỜ** sửa file trong `raw/`
|
|
@@ -281,9 +247,7 @@ Với mỗi note đã sinh → copy vào `raw/notes/`
|
|
|
281
247
|
Naming: `{domain}-{type}-{slug}.md`
|
|
282
248
|
|
|
283
249
|
#### Bước 5: Chạy ingest
|
|
284
|
-
|
|
285
|
-
cd {wiki_path} && node scripts/ingest.js
|
|
286
|
-
```
|
|
250
|
+
Thực hiện ingest procedure (tiến hành theo hướng dẫn Sub-command INGEST).
|
|
287
251
|
|
|
288
252
|
#### Bước 6: Report
|
|
289
253
|
```
|
|
@@ -392,13 +356,11 @@ B) Không — skip, tôi sẽ push thủ công sau
|
|
|
392
356
|
|
|
393
357
|
### DỪNG khi:
|
|
394
358
|
- Wiki folder không tồn tại → *"Chạy `/evnict-kit:init-wiki` trước"*
|
|
395
|
-
-
|
|
359
|
+
- Error file config → Verify `config.yaml`
|
|
396
360
|
- Frontmatter thiếu required fields → KHÔNG push, sửa trước
|
|
397
361
|
|
|
398
362
|
### Auto-recovery:
|
|
399
|
-
-
|
|
400
|
-
- scripts/ingest.js không tồn tại → thử npm run ingest
|
|
401
|
-
- npm run ingest fail → báo: "cd {wiki_path} && npm install"
|
|
363
|
+
- Agent tự động bổ sung file chưa hoàn thiện.
|
|
402
364
|
|
|
403
365
|
---
|
|
404
366
|
|
|
@@ -406,7 +368,7 @@ B) Không — skip, tôi sẽ push thủ công sau
|
|
|
406
368
|
- [ ] File markdown tạo đúng format frontmatter (llm-wiki chuẩn)
|
|
407
369
|
- [ ] Nội dung đầy đủ (API, DB, BR, files, lessons)
|
|
408
370
|
- [ ] File đã copy vào `raw/notes/` đúng naming
|
|
409
|
-
- [ ] Ingest đã
|
|
371
|
+
- [ ] Ingest đã thực hiện hoàn tất TỰ ĐỘNG
|
|
410
372
|
- [ ] Query trả về results có format rõ ràng + gap detection
|
|
411
373
|
- [ ] scan-code sinh được wiki notes từ codebase
|
|
412
374
|
- [ ] Status cho health check chính xác
|
|
@@ -29,9 +29,9 @@ Nếu không tồn tại → DỪNG VÀ BÁO LỖI:
|
|
|
29
29
|
### Check 2: Wiki Software đã setup
|
|
30
30
|
Agent thực hiện:
|
|
31
31
|
```bash
|
|
32
|
-
ls {project_name}-wiki/
|
|
32
|
+
ls {project_name}-wiki/CLAUDE.md
|
|
33
33
|
```
|
|
34
|
-
Nếu không tồn tại file
|
|
34
|
+
Nếu không tồn tại file CLAUDE.md → DỪNG VÀ BÁO LỖI:
|
|
35
35
|
*"Thư mục Wiki chưa được khởi tạo thư viện Ingestion. Vui lòng chạy `/evnict-kit:init-wiki` trước."*
|
|
36
36
|
|
|
37
37
|
### Check 3: Read/Write Permissions
|
|
@@ -55,13 +55,12 @@ Gọi skill `evnict-kit-wiki` action=push:
|
|
|
55
55
|
- Sinh markdown file với frontmatter chuẩn
|
|
56
56
|
- Copy vào `{wiki_path}/raw/notes/`
|
|
57
57
|
|
|
58
|
-
## Bước 3: Auto-ingest (THAY CHO
|
|
58
|
+
## Bước 3: Auto-ingest (THAY CHO Agent follow SKILL.md to ingest thủ công)
|
|
59
59
|
Agent TRỰC TIẾP chạy:
|
|
60
60
|
```bash
|
|
61
|
-
cd {wiki_path} &&
|
|
61
|
+
cd {wiki_path} && Agent follow SKILL.md to ingest
|
|
62
62
|
```
|
|
63
63
|
KHÔNG bắt user switch terminal hay chạy npm thủ công.
|
|
64
|
-
Nếu `scripts/ingest.js` không tồn tại → thử `npm run ingest`.
|
|
65
64
|
Nếu vẫn fail → báo: *"Chạy `/evnict-kit:init-wiki`"*
|
|
66
65
|
|
|
67
66
|
## Bước 4: Archive spec
|
|
@@ -19,7 +19,7 @@ description: Bug fix workflow — query wiki → classify → reproduce → TDD
|
|
|
19
19
|
## Bước 1: Query wiki
|
|
20
20
|
Kiểm tra bug đã được report/fix trước đó:
|
|
21
21
|
```bash
|
|
22
|
-
grep -rl "{keyword}" {wiki_path}/
|
|
22
|
+
grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md"
|
|
23
23
|
```
|
|
24
24
|
|
|
25
25
|
## Bước 2: Classify severity
|
|
@@ -44,7 +44,7 @@ TRƯỚC KHI sinh spec, Agent PHẢI áp dụng skill `evnict-kit-brainstorm`:
|
|
|
44
44
|
### Bước 1: Thu thập context
|
|
45
45
|
1. Đọc `.evnict/config.yaml` → lấy project name, tech stack, wiki path
|
|
46
46
|
2. **Query wiki** (nếu có) → tìm context liên quan đến chức năng được mô tả:
|
|
47
|
-
- Đọc index từ `{wiki_path}/
|
|
47
|
+
- Đọc index từ `{wiki_path}/wiki/`
|
|
48
48
|
- Tìm theo keyword/domain/tags từ mô tả feature
|
|
49
49
|
- Nếu tìm được → đưa vào context khi tạo spec
|
|
50
50
|
3. Đọc rules hiện tại trong `.agent/rules/` → nắm conventions dự án
|
|
@@ -365,7 +365,7 @@ Copy vào `{wiki_path}/raw/notes/{domain}-{slug}.md`
|
|
|
365
365
|
|
|
366
366
|
### Bước 3: Trigger ingest
|
|
367
367
|
```bash
|
|
368
|
-
cd {wiki_path} &&
|
|
368
|
+
cd {wiki_path} && Agent follow SKILL.md to ingest
|
|
369
369
|
```
|
|
370
370
|
⚠️ Nếu ingest chưa setup → nhắc user chạy `/evnict-kit:init-wiki`
|
|
371
371
|
|
|
@@ -19,7 +19,7 @@ description: Feature nhỏ nhanh — skip spec chi tiết, query wiki → plan n
|
|
|
19
19
|
## Bước 1: Query wiki
|
|
20
20
|
Tìm context liên quan trong wiki:
|
|
21
21
|
```bash
|
|
22
|
-
grep -rl "{keyword}" {wiki_path}/
|
|
22
|
+
grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md"
|
|
23
23
|
```
|
|
24
24
|
Đọc kết quả → áp dụng context.
|
|
25
25
|
|
|
@@ -1,18 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Setup llm-wiki — copy template
|
|
2
|
+
description: Setup llm-wiki — copy template hoặc open agent session.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
5
|
# Init Wiki — Setup LLM Wiki
|
|
6
6
|
**Command:** `/evnict-kit:init-wiki`
|
|
7
7
|
|
|
8
8
|
## Mục đích
|
|
9
|
-
Setup llm-wiki knowledge base cho dự án.
|
|
10
|
-
|
|
11
|
-
## Options
|
|
12
|
-
- `/evnict-kit:init-wiki` → Copy từ templates/wiki/ (mặc định)
|
|
13
|
-
- `/evnict-kit:init-wiki --from-github` → Clone fresh từ GitHub
|
|
14
|
-
|
|
15
|
-
---
|
|
9
|
+
Setup llm-wiki knowledge base cho dự án.
|
|
16
10
|
|
|
17
11
|
## Workflow (Default — Copy Template)
|
|
18
12
|
|
|
@@ -22,59 +16,36 @@ cat .evnict/config.yaml | grep wiki
|
|
|
22
16
|
# → wiki.folder: "{project}-wiki"
|
|
23
17
|
```
|
|
24
18
|
|
|
25
|
-
### Bước 2:
|
|
26
|
-
|
|
19
|
+
### Bước 2: Khởi tạo
|
|
20
|
+
Run CLI command:
|
|
27
21
|
```bash
|
|
28
|
-
|
|
22
|
+
evnict-kit init-wiki
|
|
29
23
|
```
|
|
30
|
-
|
|
31
|
-
### Bước 3: Install dependencies
|
|
24
|
+
Hoặc tạo Agent session trong thư mục wiki và chạy:
|
|
32
25
|
```bash
|
|
33
|
-
|
|
34
|
-
npm install
|
|
26
|
+
/llm-wiki init "{project}"
|
|
35
27
|
```
|
|
36
28
|
|
|
37
|
-
### Bước
|
|
38
|
-
|
|
39
|
-
```yaml
|
|
40
|
-
project: "{project-name}"
|
|
41
|
-
raw_path: "raw/notes"
|
|
42
|
-
processed_path: "processed"
|
|
43
|
-
index_path: "processed/index.json"
|
|
44
|
-
```
|
|
29
|
+
### Bước 3: Generate base files
|
|
30
|
+
Agent tự động copy templates (hoặc setup từ real github llm-wiki) và tạo config.
|
|
45
31
|
|
|
46
|
-
### Bước
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
32
|
+
### Bước 4: Tạo folder structure
|
|
33
|
+
Agent tạo:
|
|
34
|
+
- `wiki/` (entities, concepts, sources, syntheses)
|
|
35
|
+
- `raw/` (notes, articles, medi, assets)
|
|
36
|
+
- `.discoveries/`
|
|
51
37
|
|
|
52
|
-
### Bước
|
|
53
|
-
|
|
54
|
-
npm run ingest
|
|
55
|
-
```
|
|
38
|
+
### Bước 5: First ingest (nếu có notes sẵn)
|
|
39
|
+
Agent sẽ scan và cập nhật INDEX.
|
|
56
40
|
|
|
57
|
-
### Bước
|
|
41
|
+
### Bước 6: Verify
|
|
58
42
|
```
|
|
59
43
|
✅ Wiki setup: {project}-wiki/
|
|
60
|
-
✅ Dependencies installed
|
|
61
44
|
✅ Config created
|
|
62
45
|
✅ Folders ready
|
|
63
46
|
```
|
|
64
47
|
|
|
65
48
|
---
|
|
66
49
|
|
|
67
|
-
## Workflow (--from-github)
|
|
68
|
-
|
|
69
|
-
### Bước 1: Clone
|
|
70
|
-
```bash
|
|
71
|
-
git clone https://github.com/mduongvandinh/llm-wiki.git {project}-wiki
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### Bước 2: Install + Configure
|
|
75
|
-
Same as steps 3-7 above.
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
50
|
## Output
|
|
80
|
-
Wiki folder ready at `{project}-wiki/`
|
|
51
|
+
Wiki folder ready at `{project}-wiki/` as a standalone AI Agent knowledge base.
|
|
@@ -25,7 +25,7 @@ Nếu không tồn tại → DỪNG: *"Wiki chưa được liên kết. Chạy `
|
|
|
25
25
|
|
|
26
26
|
### Check 2: Wiki đã setup
|
|
27
27
|
```bash
|
|
28
|
-
ls {project_name}-wiki/
|
|
28
|
+
ls {project_name}-wiki/CLAUDE.md
|
|
29
29
|
```
|
|
30
30
|
Nếu không tồn tại → DỪNG: *"Wiki chưa khởi tạo. Chạy `/evnict-kit:init-wiki` trước."*
|
|
31
31
|
|
|
@@ -136,9 +136,8 @@ type: feature
|
|
|
136
136
|
## Bước 3: Push + Auto-ingest
|
|
137
137
|
```bash
|
|
138
138
|
cp {generated_file} {wiki_path}/raw/notes/{module}-{feature-slug}.md
|
|
139
|
-
cd {wiki_path} &&
|
|
139
|
+
cd {wiki_path} && Agent follow SKILL.md to ingest
|
|
140
140
|
```
|
|
141
|
-
Nếu `scripts/ingest.js` không tồn tại → thử `npm run ingest`.
|
|
142
141
|
Nếu vẫn fail → báo: *"Chạy `/evnict-kit:init-wiki`"*
|
|
143
142
|
|
|
144
143
|
## Bước 4: Confirm
|
|
@@ -25,9 +25,9 @@ description: Truy vấn tri thức từ wiki — tìm kiếm theo keyword, domai
|
|
|
25
25
|
|
|
26
26
|
## Bước 2: Search
|
|
27
27
|
1. Đọc `{wiki_path}/wiki/INDEX.md` → map keywords (nếu INDEX tồn tại)
|
|
28
|
-
2. Search trong `{wiki_path}/
|
|
28
|
+
2. Search trong `{wiki_path}/wiki/` và `{wiki_path}/raw/notes/`:
|
|
29
29
|
```bash
|
|
30
|
-
grep -rl "{keyword}" {wiki_path}/
|
|
30
|
+
grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md"
|
|
31
31
|
grep -rl "{keyword}" {wiki_path}/raw/notes/ --include="*.md"
|
|
32
32
|
```
|
|
33
33
|
3. Đọc các pages liên quan (đọc ĐỦ nội dung, không chỉ 1-2 trang)
|
|
@@ -53,7 +53,7 @@ Tìm thấy {N} trang liên quan:
|
|
|
53
53
|
{Tổng hợp nội dung liên quan từ các trang — đây là phần QUAN TRỌNG NHẤT}
|
|
54
54
|
|
|
55
55
|
## Nguồn:
|
|
56
|
-
- {wiki_path}/
|
|
56
|
+
- {wiki_path}/wiki/{page_1}.md
|
|
57
57
|
- {wiki_path}/raw/notes/{page_2}.md
|
|
58
58
|
```
|
|
59
59
|
|
|
@@ -25,7 +25,7 @@ Nếu không tồn tại → DỪNG: *"Wiki chưa được liên kết. Chạy `
|
|
|
25
25
|
|
|
26
26
|
### Check 2: Wiki đã setup
|
|
27
27
|
```bash
|
|
28
|
-
ls {project_name}-wiki/
|
|
28
|
+
ls {project_name}-wiki/CLAUDE.md
|
|
29
29
|
```
|
|
30
30
|
Nếu không tồn tại → DỪNG: *"Wiki chưa khởi tạo. Chạy `/evnict-kit:init-wiki` trước."*
|
|
31
31
|
|
|
@@ -35,7 +35,7 @@ Nếu không tồn tại → DỪNG: *"Wiki chưa khởi tạo. Chạy `/evnict-
|
|
|
35
35
|
Đang ở BE hay FE?
|
|
36
36
|
- Có `pom.xml` hoặc `build.gradle` → **Backend**
|
|
37
37
|
- Có `angular.json` → **Frontend (Angular)**
|
|
38
|
-
- Có `
|
|
38
|
+
- Có `CLAUDE.md` + react dependency → **Frontend (React)**
|
|
39
39
|
|
|
40
40
|
---
|
|
41
41
|
|
|
@@ -231,9 +231,8 @@ Append vào `.evnict/handoff/handoff.md`:
|
|
|
231
231
|
|
|
232
232
|
## Bước 6: Auto-ingest
|
|
233
233
|
```bash
|
|
234
|
-
cd {wiki_path} &&
|
|
234
|
+
cd {wiki_path} && Agent follow SKILL.md to ingest
|
|
235
235
|
```
|
|
236
|
-
Nếu `scripts/ingest.js` không tồn tại → thử `npm run ingest`.
|
|
237
236
|
Nếu vẫn fail → báo: *"Chạy `/evnict-kit:init-wiki`"*
|
|
238
237
|
|
|
239
238
|
---
|
|
@@ -23,7 +23,7 @@ compatibility: All tech stacks
|
|
|
23
23
|
### Bước 1: Query Wiki
|
|
24
24
|
Tìm trong wiki xem bug này đã được report/fix trước đó chưa:
|
|
25
25
|
```bash
|
|
26
|
-
grep -rl "{keyword}" {wiki_path}/
|
|
26
|
+
grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md"
|
|
27
27
|
```
|
|
28
28
|
Nếu đã có → đọc cách fix trước đó.
|
|
29
29
|
|
|
@@ -251,6 +251,29 @@ Thêm vào module declarations hoặc shared module exports.
|
|
|
251
251
|
|
|
252
252
|
---
|
|
253
253
|
|
|
254
|
+
> 🎨 **FE UI Quality:** Khi tạo/sửa UI component, tham khảo skill `evnict-kit-frontend-design`
|
|
255
|
+
> để đảm bảo chất lượng thiết kế cao. Áp dụng Design Thinking (Purpose → Tone → Constraints → Differentiation) trước khi code UI.
|
|
256
|
+
|
|
257
|
+
---
|
|
258
|
+
|
|
259
|
+
## ⚠️ NHẮC NHỞ: Tuân thủ Rules & Context
|
|
260
|
+
|
|
261
|
+
> **Agent dùng lâu có thể quên rules.** Trước khi bắt đầu code, tự kiểm tra:
|
|
262
|
+
|
|
263
|
+
### Quick Check (agent tự đánh giá)
|
|
264
|
+
1. ✅ Tôi đã đọc `.agent/rules/` trong phiên làm việc này chưa?
|
|
265
|
+
2. ✅ Tôi đã đọc AGENTS.md (hoặc context file) chưa?
|
|
266
|
+
3. ✅ Tôi nhớ rõ coding conventions của dự án này không?
|
|
267
|
+
|
|
268
|
+
**→ Nếu BẤT KỲ câu nào = "CHƯA" hoặc "KHÔNG CHẮC":**
|
|
269
|
+
- Đọc lại tất cả files trong `.agent/rules/` (hoặc thư mục rules tương ứng)
|
|
270
|
+
- Đọc lại AGENTS.md (hoặc context file tương ứng)
|
|
271
|
+
- Query wiki nếu có: `grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md"`
|
|
272
|
+
|
|
273
|
+
**→ Nếu TẤT CẢ = "RỒI" → tiếp tục workflow, KHÔNG cần đọc lại.**
|
|
274
|
+
|
|
275
|
+
> **NGUYÊN TẮC:** Không chắc convention → ĐỌC LẠI rule file. KHÔNG đoán.
|
|
276
|
+
|
|
254
277
|
## Tiêu chí hoàn thành
|
|
255
278
|
- [ ] Reuse check done — không tạo trùng
|
|
256
279
|
- [ ] Component files tạo đầy đủ (ts, html, scss, spec.ts)
|
|
@@ -236,6 +236,29 @@ ng build
|
|
|
236
236
|
|
|
237
237
|
---
|
|
238
238
|
|
|
239
|
+
> 🎨 **FE UI Quality:** Khi tạo/sửa UI component, tham khảo skill `evnict-kit-frontend-design`
|
|
240
|
+
> để đảm bảo chất lượng thiết kế cao. Áp dụng Design Thinking (Purpose → Tone → Constraints → Differentiation) trước khi code UI.
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## ⚠️ NHẮC NHỞ: Tuân thủ Rules & Context
|
|
245
|
+
|
|
246
|
+
> **Agent dùng lâu có thể quên rules.** Trước khi bắt đầu code, tự kiểm tra:
|
|
247
|
+
|
|
248
|
+
### Quick Check (agent tự đánh giá)
|
|
249
|
+
1. ✅ Tôi đã đọc `.agent/rules/` trong phiên làm việc này chưa?
|
|
250
|
+
2. ✅ Tôi đã đọc AGENTS.md (hoặc context file) chưa?
|
|
251
|
+
3. ✅ Tôi nhớ rõ coding conventions của dự án này không?
|
|
252
|
+
|
|
253
|
+
**→ Nếu BẤT KỲ câu nào = "CHƯA" hoặc "KHÔNG CHẮC":**
|
|
254
|
+
- Đọc lại tất cả files trong `.agent/rules/` (hoặc thư mục rules tương ứng)
|
|
255
|
+
- Đọc lại AGENTS.md (hoặc context file tương ứng)
|
|
256
|
+
- Query wiki nếu có: `grep -rl "{keyword}" {wiki_path}/wiki/ --include="*.md"`
|
|
257
|
+
|
|
258
|
+
**→ Nếu TẤT CẢ = "RỒI" → tiếp tục workflow, KHÔNG cần đọc lại.**
|
|
259
|
+
|
|
260
|
+
> **NGUYÊN TẮC:** Không chắc convention → ĐỌC LẠI rule file. KHÔNG đoán.
|
|
261
|
+
|
|
239
262
|
## Tiêu chí hoàn thành
|
|
240
263
|
- [ ] Module tạo/update đúng
|
|
241
264
|
- [ ] Routing configured (lazy-loaded)
|