- Cursor là công cụ phát triển có năng suất rất cao, đủ để xây dựng micro SaaS nhanh chóng nên nhất định nên dùng
- Tuy nhiên, mã do AI tạo ra thiếu tính nhất quán và có thể phát sinh lỗ hổng bảo mật
1. Không khuyến nghị dùng gói miễn phí hoặc các model Premium
- Việc lập trình cùng Cursor giống như lập trình cùng một lập trình viên junior
- Kết quả sẽ thành kiểu "bằng cách nào đó vẫn chạy được nhưng là đống spaghetti code mà không ai muốn đụng vào", và cuối cùng phải refactor mọi thứ
- Ngoại lệ: nếu cần nhập ảnh thì có thể dùng gpt-4o (ví dụ: triển khai dựa trên thiết kế)
2. Model đắt nhất là chatGPT 4.5-preview
- Tốn 2 euro cho mỗi yêu cầu qua Cursor
- Hiệu năng không tương xứng với chi phí nên ở thời điểm hiện tại không khuyến nghị
3. Khuyến nghị dùng model o1
- Không nằm trong gói Free hoặc Premium
- Cần bật tính năng "Enable usage-based pricing" trong phần cài đặt tài khoản Cursor
- Tốn 40 cent cho mỗi yêu cầu
- Có thể cảm thấy đắt, nhưng nếu một yêu cầu giúp tiết kiệm 15 phút thì trên thực tế vẫn có thể là có lợi
4. Khuyến nghị dùng API key riêng của OpenAI
- Có thể sử dụng rẻ hơn nhiều so với đi qua Cursor
- Một số người dùng còn có khuyến mãi miễn phí 10 triệu token mỗi ngày (với điều kiện chia sẻ dữ liệu, có hiệu lực đến ngày 30/04/2025)
- Nếu tận dụng điều kiện này thì gần như có thể phát triển miễn phí cho hầu hết công việc
5. Bật thiết lập cho phép ngữ cảnh lớn (Large Context)
- Dù dùng nhiều token hơn cho mỗi yêu cầu, nhưng rất hiệu quả trong việc cải thiện chất lượng và tính nhất quán của kết quả
- Trong Cursor có thể thiết lập tại Settings → Features → Chat & Composer
6. Tận dụng triệt để Default Instructions
- Hãy ghi rõ các thư viện thường dùng trong Rules for AI và Project rules trong phần cài đặt của Cursor
- Ví dụ: nếu đã quyết định dùng HeroIcons thì nên thêm điều đó vào chỉ thị mặc định để duy trì kết quả nhất quán
- Nếu không, có thể AI sẽ trộn lẫn lucide-icon, HeroIcons hoặc các biểu tượng SVG ngẫu nhiên
7. Cung cấp các file hiện có làm tham chiếu để đảm bảo tính nhất quán
- Ví dụ, nếu đã có sẵn một API endpoint thì khi yêu cầu endpoint mới, hãy cung cấp kèm file hiện có
- Câu ví dụ:
"Tạo CRUD API endpoint cho resource theo cách tương tự projects/routes"
- Làm như vậy rất hiệu quả để giữ sự nhất quán về style code và cách triển khai
8. Nhất định phải tự mình review PR
- Cursor đôi khi xóa mất mã quan trọng hoặc đưa vào lỗ hổng bảo mật
- Đặc biệt cần cẩn trọng với các dự án phức tạp lưu trữ dữ liệu người dùng
- Nếu bản thân chưa thể hiểu hoàn toàn đoạn mã, thì nên hạn chế dùng Cursor
9. Nên tránh các thư viện trả phí hoặc mới phát hành
- AI hoạt động dựa trên dữ liệu huấn luyện công khai, nên trong đa số trường hợp sẽ quen với vanilla JavaScript hơn
- Các thư viện trả phí có ít trường hợp sử dụng hơn và tài liệu cũng hạn chế, nên AI thường dùng sai
- Ngược lại, chỉ với mã JS cơ bản cũng có thể triển khai tính năng rất nhanh
10. Hãy tập trung vào việc cung cấp ngữ cảnh (context) chính xác
- Nghe có vẻ là mẹo rất cơ bản, nhưng trên thực tế đây là yếu tố ảnh hưởng lớn nhất đến chất lượng kết quả
- Nếu ngữ cảnh sai, AI sẽ cố giải quyết nhầm vấn đề
- Khi không ra được kết quả mong muốn, điều quan trọng là tái cấu trúc ngữ cảnh rồi thử lại
7 bình luận
Mình lại có cảm giác Cursor phát huy hiệu năng tốt nhất khi chạy cùng Claude,
khác với cảm nhận của mình thì lại đang khuyến nghị o1 nhỉ..!
Sau khi đọc bài đó rồi tìm hiểu đủ thứ, mình đã thử thiết lập
vscode+claude.dev(openai api)+continue.dev(ollama+llama 3 8B)để phát triển, và có vẻ kinh tế hơn gói thuê bao tháng của Cursor. (Vì thời gian phát triển thực tế mới chỉ khoảng hơn 3 tiếng nên hiện tại mình vẫn chưa cảm thấy có bất tiện gì lớn...)Nếu ai tò mò thì có thể tìm các từ khóa liên quan rồi tự thử thiết lập xem sao.
Nếu bảo Cursor tìm trong dự án này những thứ như dùng module này module kia hoặc triển khai theo cách này cách nọ thì nó tìm khá tốt. Nhưng chiếc M1 có vẻ sắp cất cánh rồi...
Sau bản cập nhật gần đây của Cursor, có phải nó ngốn CPU rất nhiều không?
Tôi đang cố định ở 0.45.17.. chỉ dùng chế độ chat thôi. Khi phiên bản tăng lên thì các agent hay bị lỗi và trở nên ngớ ngẩn hơn, đặc biệt ở 0.48 từng xảy ra một lỗi nghiêm trọng là bỏ qua
.cursorignorekhiến cả secret key trong.envcũng bị gửi lên máy chủ của Cursor, nên tôi khá hoài nghi về việc nâng cấp phiên bản..Nhìn cái này xong tôi thử tìm tùy chọn
Enable usage-basedtrong Cursor mà mãi vẫn không thấy..Trên trang chủ chính thức của Cursor, sau khi đăng nhập, có một tùy chọn trong Account Setting.