Code chạy được chưa có nghĩa là code sẵn sàng commit. AI có thể sửa đúng chức năng nhưng vô tình đổi cấu hình, bỏ kiểm tra lỗi hoặc thêm tệp không cần thiết. Quy trình review tốt tách người “tạo thay đổi” và góc nhìn “kiểm toán thay đổi”, rồi dùng Git như dây an toàn chứ không phải nút lưu.
Kết quả sau bài học: Bạn sẽ biết đọc git diff theo thứ tự, dùng Codex tìm rủi ro, kiểm tra tệp mới và tạo một commit nhỏ có thể hoàn tác.
Tư duy quan trọng trước khi bắt đầu
AI coding agent là cộng sự có khả năng thao tác, không phải nguồn chân lý. Bạn vẫn chịu trách nhiệm về mã được đưa vào dự án. Hãy giữ nhiệm vụ nhỏ, cung cấp bối cảnh vừa đủ, yêu cầu bằng chứng và không phê duyệt điều mình chưa hiểu.
Hướng dẫn từng bước
Bước 1: Bắt đầu từ trạng thái repository
Chạy git status và ghi nhận thay đổi có sẵn trước phiên. Không để Codex nhận nhầm chỉnh sửa của bạn là phần nó vừa tạo. Nếu worktree bẩn, nêu rõ tệp nào thuộc phạm vi và cấm ghi đè thay đổi không liên quan.
Bước 2: Đọc diff theo ba lượt
Lượt một xem danh sách tệp và độ lớn; lượt hai đọc logic; lượt ba tìm dữ liệu nhạy cảm, dependency, cấu hình và mã chết. Với tệp lock, xác minh thay đổi xuất phát từ dependency đã được duyệt.
Bước 3: Yêu cầu review dựa trên bằng chứng
Dùng chế độ review hoặc prompt yêu cầu ưu tiên bug, bảo mật, regression và thiếu test. Mỗi nhận xét phải trỏ tới tệp/đoạn, tình huống gây lỗi và cách kiểm chứng; bỏ qua nhận xét chỉ là sở thích.
Bước 4: Chạy cổng chất lượng
Theo thứ tự: test phạm vi hẹp, toàn bộ test phù hợp, lint, type-check, build. Nếu dự án thiếu một cổng, ghi rõ chứ không suy diễn là đã qua. Kiểm tra thủ công hành trình người dùng chính.
Bước 5: Commit nhỏ và có thông điệp nói “vì sao”
Chỉ stage tệp đã duyệt. Xem staged diff lần cuối, rồi commit một mục tiêu. Không cho agent force-push, ghi đè lịch sử hay đẩy thẳng nhánh chính. Khi cần hoàn tác, commit nhỏ giúp xác định tác động.
Bài thực hành có đầu ra rõ ràng
Bài tập: yêu cầu Codex thêm validation cho form, sau đó cố ý để một console.log và một file tạm trong worktree. Dùng status/diff phát hiện, loại chúng khỏi commit và viết thông điệp commit mô tả lý do.
Tiêu chuẩn nộp bài: lưu prompt đã dùng, ảnh hoặc log kết quả trước/sau, diff cuối cùng, lệnh kiểm tra và ba điều bạn tự học được từ mã. Nếu test không chạy được, ghi lý do thay vì coi như đã đạt.
Prompt mẫu có thể sao chép
Review toàn bộ thay đổi chưa commit. Ưu tiên lỗi hành vi, bảo mật, regression và test thiếu. Mỗi phát hiện cần tình huống tái hiện; không sửa code.
Đối chiếu diff với mục tiêu ban đầu. Liệt kê tệp hoặc dòng thay đổi ngoài phạm vi và đề xuất cách thu nhỏ.
Tóm tắt các lệnh kiểm tra đã chạy và kết quả. Nêu rõ kiểm tra nào chưa chạy được. Chưa commit cho tới khi tôi duyệt staged diff.
Lỗi người mới thường gặp
- Stage bằng git add tất cả mà không xem tệp mới
- Cho agent sửa trong lúc review khiến dấu vết thay đổi lẫn lộn
- Tin câu “tests pass” nhưng không có kết quả lệnh
- Gộp tính năng, refactor và nâng dependency vào một commit
Checklist hoàn thành
- Đã biết trạng thái ban đầu
- Đã đọc diff và staged diff
- Không có secret/file tạm
- Các cổng chất lượng phù hợp đã qua
- Commit nhỏ, không đẩy thẳng main
Cách tự học để không phụ thuộc AI
- Trước khi hỏi, tự dự đoán tệp và nguyên nhân trong năm phút.
- Sau câu trả lời, yêu cầu giải thích một khái niệm bạn chưa hiểu bằng ví dụ nhỏ.
- Tự viết lại phần cốt lõi hoặc test mà không nhìn câu trả lời.
- Lưu lỗi và bài học vào ghi chú dự án, không lưu bí mật.
- Một tuần sau, làm lại bài tập với yêu cầu hơi khác.
Kết luận: dùng tác nhân AI tốt không nằm ở việc tạo nhiều code, mà ở khả năng đặt mục tiêu rõ, kiểm soát phạm vi và chứng minh kết quả. Nếu giữ được vòng lặp đọc → kế hoạch → thay đổi nhỏ → test → review, người mới vừa đi nhanh hơn vừa thực sự tiến bộ.
Nguồn tham khảo chính thức: tài liệu sản phẩm dành cho nhà phát triển. Giao diện và tính năng có thể thay đổi; hãy đối chiếu tài liệu hiện hành khi cài đặt.

