Commit b1ce9b30 authored by Le The Phong's avatar Le The Phong

v1.1

parent b601030c
...@@ -19,8 +19,6 @@ ...@@ -19,8 +19,6 @@
**Dependencies**: Chỉ install khi cần. Pin version cho production. **Dependencies**: Chỉ install khi cần. Pin version cho production.
**Ưu tiên**: Workspace Rules > Global Rules khi có xung đột.
### 2. Testing ### 2. Testing
- Viết unit test trong quá trình implement - Viết unit test trong quá trình implement
- AI phải tự động viết test, không chờ được yêu cầu - AI phải tự động viết test, không chờ được yêu cầu
...@@ -38,120 +36,64 @@ ...@@ -38,120 +36,64 @@
- Commit: {taskId} - {Nội dung Tiếng Việt} - Commit: {taskId} - {Nội dung Tiếng Việt}
### 5. Claude Code Rules ### 5. Claude Code Rules
**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
**Model Selection:** **Model Selection:**
BẮT BUỘC phải chọn model theo hướng dẫn sau: | Phase | Model khuyến nghị | Ghi chú |
|-------|-------|---------|
| Bước | Model | Cách thực hiện | | Xác định taskId | Haiku | Quick check, simple |
|------|-------|----------------| | Planning (EnterPlanMode) | Sonnet | Main context, Design & Plan |
| 0. Xác định taskId | Sonnet | Main assistant xử lý | | └─ Phase 1 (Context scan) | Haiku (Task/Explore) | Delegate qua Task tool |
| 1. Context Discovery | Haiku | Delegate qua Task tool | | Implementation + Verification | Haiku | Delegate qua Task tool |
| 2-3. Design + Plan | Sonnet* | Main assistant xử lý |
| 4-6. Implement + Test | Haiku | Delegate qua Task tool |
*User có thể chọn Opus nếu cần (xem escalation flow) 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ẮT BUỘC:** Trước mỗi bước/phase/task, thông báo model THỰC TẾ đang chạy (lấy từ system prompt)
- "Bước 1 với Sonnet model" Ví dụ:
- "Task(Explore) với Haiku model" - "Bước 1: Xác định taskId (Haiku)"
- "Planning Phase - EnterPlanMode (Opus)"
- "Phase 1: Context scan - Task(Explore, Sonnet)"
--- ---
## II. Workflows (Tuần tự & Bắt buộc) ## II. Workflows (Tuần tự & Bắt buộc)
### 0. Xác định taskId ### Bước 1: Xác định taskId
- Xác định {taskId} từ yêu cầu (format: xem Global Rules) - Xác định {taskId} từ yêu cầu (format: xem Global Rules)
**🛑 DỪNG NGAY TẠI ĐÂY** nếu chưa có {taskId}: 🛑 **DỪNG NGAY** nếu chưa có {taskId}:
- Không làm công việc nào khác - Không làm công việc nào khác
- Yêu cầu user bổ sung {taskId} - Yêu cầu user bổ sung {taskId}
### 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
### Planning Phase (Bước 2-3 gộp chung)
**🔵 EnterPlanMode - BẮT ĐẦU NGAY TẠI ĐÂY**
### 2. High-level Plan
**Mục tiêu**: Xác định hướng đi & lựa chọn giải pháp
**Nội dung**:
- Phân tích, làm rõ những điểm còn mơ hồ, thắc mắc trong yêu cầu
- Đề xuất các phương án với ưu/nhược điểm
- Trade-offs giữa các phương án
**Cách trình bày**:
- **ƯU TIÊN:** AskUserQuestion (2-4 options) | Manual text
**🛑 DỪNG NGAY TẠI ĐÂY**:
- KHÔNG ĐƯỢC tiếp tục sang Bước 3
- 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. Technical Design (TIẾP TỤC trong Plan Mode)
**Mục tiêu**: Thiết kế chi tiết phương án đã chọn
**Nội dung**: Tùy theo đặc thù project, đưa ra các tài liệu thiết kế phù hợp
- Ưu tiên sử dụng diagram, data flow, business logic, pseudo code hơn là text thông thường
- KHÔNG có implementation details
- Sẽ bổ sung chi tiết hơn khi đi vào từng loại project
**🛑 DỪNG NGAY TẠI ĐÂY**:
- Chờ user approve design
- User có thể yêu cầu điều chỉnh thiết kế
**SAU KHI APPROVE:** ### Bước 2: Planning Phase (Plan mode của Claude)
- **→ ExitPlanMode**
- Tiếp tục Bước 4
### 4. Implementation ### Bước 3: Implementation + Verification
**1. Phân tích Implementation** **BẮT BUỘC:**
- Quét codebase tìm references phù hợp - Git Checkout nhánh mới: `git checkout -b {tên-nhánh-hiện-tại}-{taskId}`
- Liệt kê references với lý do (similarity, patterns, priority)
- List files cần tạo/sửa
- Xác định thư viện cần cài
**2. Breakdown Tasks** **Execution:**
- Các bước thực hiện chi tiết (step-by-step) - Thực thi theo implementation plan từ Planning Phase
- Dependencies giữa các bước
- **BẮT BUỘC:** TodoWrite (tạo todo list)
**3. Execute Implementation** **Verification Loop:**
- Git Checkout nhánh mới: `git checkout -b {tên-nhánh-hiện-tại}-{taskId}` - Chạy test: `dotnet test`, `npm test`, `pytest`, etc.
- Thực thi theo Design từ bước 3 và TodoList - **Nếu FAIL:** Đọc log → Sửa lỗi → TodoWrite update → Chạy lại
- Follow references và patterns đã xác định - **Đếm tổng số lần fail** (kể cả lỗi khác nhau)
- **BẮT BUỘC:** Read trước Edit/Write
- **BẮT BUỘC:** TodoWrite update (`in_progress``completed`)
### 5. Verification Loop 🛑 **DỪNG sau 3 lần fail:**
- Chạy test (Bash: dotnet test, npm test, pytest...) - KHÔNG tự tiếp tục fix
- **Nếu FAIL:** Đọc log → Sửa lỗi → TodoWrite update → Chạy lại - Báo cáo cho user: lỗi gì, đã fix gì
- **Đếm tổng số lần fail** (kể cả lỗi khác nhau) - User quyết định: Escalate / Về Planning Phase / Tiếp tục fix
- Nếu escalate: Hỏi user có muốn chuyển lên Opus không (mặc định Sonnet)
**🛑 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)
### 6. Finalize ### Bước 4: Finalize
- TodoWrite: Mark all completed
- Tạo thư mục: `mkdir implementation_plan_{taskId}` - Tạo thư mục: `mkdir implementation_plan_{taskId}`
- Tạo 2 file summary (markdown) trong thư mục: - Tạo summary files trong thư mục 'implementation_plan_{taskId}' vừa tạo
- `plan.md` - Tóm tắt Requirements Analysis & Solution Selection từ Bước 2 - `implementation_plan.md` - Tóm tắt implementation_plan ở bước design
- `design.md` - Tóm tắt Technical Design từ Bước 3 - api docs nếu có public api thay đổi
- `implementation.md` - Tóm tắt Implementation Plan từ Bước 4 - Các tài liệu thiết kế khác nếu cần thiết
- Commit: `git add [files] && git commit -m "{taskId} - {Nội dung Tiếng Việt}"` - **Commit:**
\ No newline at end of file ```
git add [files] && git commit -m "{taskId} - {Nội dung Tiếng Việt}"
```
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