Commit 48eecad0 authored by Le The Phong's avatar Le The Phong

Update CLAUDE.md

parent 5beb13d5
......@@ -42,7 +42,6 @@
**Tools Policy:**
- **BẮT BUỘC:**
- Read trước khi Edit/Write
- TodoWrite khi task ≥3 steps: Update real-time, exactly 1 in_progress
- Edit > Write cho file đã tồn tại
- **CẤM:**
- ❌ bash cat/grep/find/sed/echo cho file operations
......@@ -54,16 +53,17 @@ BẮT BUỘC phải chọn model theo hướng dẫn sau:
| Bước | Model | Cách thực hiện |
|------|-------|----------------|
| 0. Xác định taskId | Sonnet | Main assistant xử lý |
| 0. Xác định taskId | Haiku | Main assistant xử lý |
| 1. Context Discovery | Haiku | Delegate qua Task tool |
| 2-3. Design + Plan | Sonnet* | Main assistant xử lý |
| 4-6. Implement + Test | Haiku | Delegate qua Task tool |
| 2-3. Planning Phase | Sonnet* | EnterPlanMode (gộp Design + Plan) |
| 4-6. Implement + Test + Finalize | Haiku | Main assistant xử lý |
*User có thể chọn Opus nếu cần (xem escalation flow)
**Thông báo:** Phải thông báo model trước mỗi bước, ở mỗi task. Ví dụ :
- "Bước 1 với Sonnet model"
- "Task(Explore) với Haiku model"
**Thông báo:** Phải thông báo model trước mỗi bước, ở mỗi task. Ví dụ:
- "Bước 0 với Haiku model"
- "Bước 1: Task(Explore) với Haiku model"
- "Planning Phase với Sonnet model (Plan Mode)"
---
......@@ -80,11 +80,14 @@ BẮT BUỘC phải chọn model theo hướng dẫn sau:
### 1. Context Discovery
- Quét cấu trúc dự án, hiểu tech stack
- Scan các file liên quan để hiểu patterns và conventions
- **ƯU TIÊN:** Task(Explore) cho broad exploration | Glob/Grep cho needle queries
### 2. High-level Design
### Planning Phase (Bước 2-3 gộp chung)
**BẮT BUỘC EnterPlanMode (Sonnet)**
#### Bước 2: High-level Design
- Đề xuất các phương án với ưu/nhược điểm
- **ƯU TIÊN:** AskUserQuestion (2-4 options) | Manual text
......@@ -93,9 +96,7 @@ BẮT BUỘC phải chọn model theo hướng dẫn sau:
- Chờ user xác nhận phương án được chọn
- User có thể yêu cầu điều chỉnh hoặc xem xét phương án khác
### 3. Implementation Plan
**Xác định (>3 files):** BẮT BUỘC vào EnterPlanMode, ngược lại thì tiếp tục Manual planning
#### Bước 3: Implementation Plan
**Scan References & Planning:**
- Quét codebase tìm references phù hợp
......@@ -107,30 +108,42 @@ BẮT BUỘC phải chọn model theo hướng dẫn sau:
**🛑 DỪNG:** Chờ user approve plan
**SAU KHI APPROVE:**
- **Nếu Plan Mode:** Viết final plan gọn (files, refs, deps, steps. KHÔNG: explore logs, scan details) → ExitPlanMode
- **BẮT BUỘC:** TodoWrite (tạo todo list)
- Tiếp tục Bước 4
**BẮT BUỘC:**
- Git checkout nhánh mới: `git checkout -b {tên-nhánh-hiện-tại}-{taskId}`
- Tạo thư mục `implementation_plan_{taskId}` trong root project
- Ghi file `planning_summary.md` với nội dung:
- Phương án đã chọn (2-3 câu)
- Files cần tạo/sửa
- References (patterns/examples tương tự)
- Dependencies (nếu có)
- Steps thực hiện (chi tiết từng bước)
**→ ExitPlanMode**
→ Tiếp tục Bước 4
### 4. Implementation
- Git checkout nhánh mới
- Thực thi theo Plan
- Thực thi theo **Steps** trong `planning_summary.md`
- Follow references và patterns đã xác định
- **BẮT BUỘC:** Read trước Edit/Write, TodoWrite update (`in_progress``completed`)
- **BẮT BUỘC:** Read trước Edit/Write
### 5. Verification Loop
- Chạy test (Bash: dotnet test, npm test, pytest...)
- **Nếu FAIL:** Đọc log → Sửa lỗi → TodoWrite update → Chạy lại
- **Nếu FAIL:** Đọc log → Sửa lỗi → Chạy lại
- **Đếm tổng số lần fail** (kể cả lỗi khác nhau)
**🛑 DỪNG NGAY sau 3 lần fail**:
- KHÔNG ĐƯỢC tự tiếp tục fix
- Báo cáo tình trạng cho user (lỗi gì, đã fix gì)
- Chờ user quyết định: Escalate / Về Bước 2 / Về Bước 3
- Nếu về Bước 2/3: Hỏi user có muốn chuyển lên Opus không (mặc định Sonnet)
- Chờ user quyết định:
* **Về Planning Phase (Bước 2)**: EnterPlanMode, đọc `planning_summary.md` để recovery context, phân tích lỗi, đề xuất phương án mới
* **Tiếp tục fix**: Nếu lỗi đơn giản và có hướng giải quyết rõ ràng
- Nếu về Planning Phase: Hỏi user có muốn chuyển lên Opus không (mặc định Sonnet)
### 6. Finalize
- TodoWrite: Mark all completed
- Cập nhật các docs bao gồm : Plan và Implemention Plan, API docs nếu có thay đổi.
Tất cả các docs đưa vào thư mục `implementation_plan_{taskId}` trong root project
- Commit: `git add [files] && git commit -m "{taskId} - {Nội dung Tiếng Việt}"`
- Update `planning_summary.md` nếu có thay đổi so với plan ban đầu
- Update API docs trong `implementation_plan_{taskId}/` nếu có thay đổi API
- Commit: `git add [files] && git commit -m "{taskId} - {Nội dung Tiếng Việt}"`
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment