Hands-on experience with AI coding agents: Cursor, Copilot, Claude Code and more - strengths, weaknesses, and how to pick the right tool for the job.

Table of Contents

Lưu ý: Hình ảnh trong bài viết đang được cập nhật

Bàn làm việc của dev với nhiều tab AI

Chào anh em, mình viết bài này để kể lại hành trình “chơi hệ AI agents” của một đứa làm dev đúng nghĩa: thử đủ kiểu tool, trả phí đủ nơi, bị limit đủ lần, rồi cuối cùng rút ra được một kết luận khá thực dụng: mỗi model/tool có điểm mạnh – yếu riêng, dùng đúng bài mới thấy đáng tiền.

Bài này mình kể theo trải nghiệm thật, và có kèm một bảng tổng hợp cuối bài để anh em dễ chọn.

1) From ChatGPT to the era of unpaid labour, and the first paid seat#

Dòng thời gian các AI tools mình từng dùng

Mình bắt đầu với ChatGPT ngay từ lúc nó vừa ra mắt. Lúc đó quá đã: hỏi gì cũng trả lời, viết email, tóm tắt, brainstorm… đủ thứ. Sau này nhu cầu tăng (và giới hạn cũng tăng), mình bắt đầu bước qua các tool chuyên code.

Có giai đoạn mình “cày” bản free của Cursor bằng cách dùng… 5 email. Anh em nào từng trải chắc hiểu cảm giác hit limit rồi phải đổi account nó “hề” thế nào. Cuối cùng mình cũng xuống tiền $20/tháng cho Cursor.

2) As projects grow, I need AI to do real work#

Một repo lớn: nhiều module, nhiều service

Mình không chỉ code mấy repo CRUD nhỏ. Công việc/side project của mình đi qua đủ loại mức độ phức tạp:

  • CRUD/Monolith: API + DB + auth/roles + migration.
  • EDA (Event-Driven Architecture): Kafka/NATS/RabbitMQ, retry, idempotency, message schema.
  • MCP/MPC/Crypto: luồng ký/verify, chia sẻ bí mật, xử lý key material.
  • PKI: certificate chain, CSR, rotation, trust store, policy.

Càng lên mấy tầng này, mình càng quan tâm 3 thứ:

  • Quality: code ra có đúng không, có “hợp não” không.
  • Cycle prompt: bao nhiêu vòng hỏi-đáp để hoàn thành task.
  • Stability/Quota: đang chạy mà bị limit thì mất flow cực kỳ.

3) Cursor + Opus 4.5: the most stable on quality and prompt cycle (but rate limited)#

Cursor editor + AI chat

Nếu nói thuần về “độ chắc tay” khi làm project lớn (đọc codebase rộng, bám ngữ cảnh dài, đụng nhiều ngôn ngữ), thì Cursor + Opus 4.5 là combo mình đánh giá ổn định nhất.

Ví dụ kiểu task mình hay giao:

  • “Quét hết repo, tìm luồng auth hiện tại, thêm mTLS cho service-to-service”
  • “Refactor module payment thành event-driven, đảm bảo idempotency và retry”
  • “Đọc code crypto đang dùng, viết thêm verify path + test vectors”

Với mấy task này, Opus thường giúp mình giảm số vòng prompt rất rõ: hỏi ít hơn, sửa ít hơn, và ít bị “lạc ngữ cảnh”.

Nhưng… điểm đau duy nhất: limit quá nhiều. Dùng kiểu dev cày 4–6 tiếng/ngày là sẽ dính cap, và mình không muốn mỗi lần vào guồng lại bị ngắt.

4) Because of limits, I moved to GitHub Copilot + Antigravity (Google)#

Copilot trong IDE

Hiện tại mình dùng song song:

  • GitHub Copilot: với cách tính credit cho Opus “dễ thở hơn” (mình đang dùng ở mức Opus chỉ tầm 3x credit) nên tổng chi phí dễ kiểm soát hơn.
  • Antigravity (Google): mình dùng như một agent phụ trợ mạnh, nhưng kiểu limit theo chu kỳ 5h nên cần “xếp lịch” lúc nào dùng cho đáng.

Thói quen của mình là:

  • Task cần hoàn thành nhanh, có deadline, repo lớn: ưu tiên Cursor/Opus (nếu quota đủ).
  • Khi quota gắt: đẩy qua Copilot để giữ nhịp code.
  • Những đoạn cần agent đọc/điều phối nhiều bước (setup, thay config, chạy chuỗi thay đổi): dùng Antigravity (Google).

5) Claude Code: many plugins and features, but hard limits push team cost up#

Một màn hình plugin/extension

Mình vẫn công nhận hệ Claude có nhiều điểm hay: ecosystem plugin/support khá rộng, trải nghiệm “nói chuyện để code” mượt. Nhưng vấn đề lớn nhất khiến mình không gắn bó lâu là limit usage mạnh, dẫn đến khi quy ra chi phí/khả năng cày, thì cảm giác đắt hơn các nhà khác (vì mình bị buộc phải tiết kiệm lượt).

6) Small repos, simple tasks: GLM 4.7 is what I use most#

Đoạn code nhỏ, sửa nhanh

Với những tác vụ kiểu:

  • repo ít file
  • thay đổi nhỏ
  • thêm endpoint CRUD
  • viết script migration đơn giản

…thì mình luôn ưu tiên GLM 4.7. Lý do là nó nhanh, ra kết quả gọn, và mình không cần “đốt” Opus cho những việc không đòi hỏi chất lượng quá cao.

7) Writing and research: give the right job to the right agent#

Viết blog và mail

Mình chia use-case khá rõ:

  • Viết email, viết blog, soạn nội dung: mình dùng GPT vì văn phong linh hoạt, dễ chỉnh tone.
  • Research/nghiên cứu: mình thường dùng Gemini và Grok vì nhanh, hợp kiểu quét thông tin nhiều hướng.

8) Summary table: which tool for which job#

Use caseTool/model mình hay dùngVì sao hợpĐiểm cần lưu ý
Project lớn, đa ngôn ngữ, độ phức tạp cao (CRUD → EDA → MCP/MPC → PKI)Cursor + Opus 4.5Chất lượng ổn định, ít vòng prompt, bám ngữ cảnh dàiLimit dễ đứt mạch
Giữ nhịp code hằng ngày, teamwork, IDE integrationGitHub Copilot (Opus ~3x credit)Ổn định, tích hợp tốt, cost dễ kiểm soát hơnVẫn cần prompt rõ khi làm kiến trúc
Agent chạy đa bước, hỗ trợ điều phối taskAntigravity (Google)Mạnh về agent flow, phù hợp việc dài hơiLimit theo chu kỳ 5h
Repo nhỏ, task đơn giảnGLM 4.7Nhanh, gọn, đủ tốt cho việc nhẹKhông phải lúc nào cũng “deep” được
Viết lách (mail/blog)GPTDễ điều chỉnh giọng văn, bố cục tốtCần fact-check kỹ
Research đa chiềuGemini, GrokQuét nhanh, gợi ý hướng tìmCần kiểm tra nguồn

9) Conclusion: to judge fairly, benchmark the same task#

Cuối cùng, cách mình thấy “công bằng” nhất để chọn tool/model là:

  • lấy đúng một tác vụ, ví dụ “thêm auth + RBAC + audit log cho API”
  • chạy lần lượt trên các model
  • so sánh đầu ra: độ đúng, độ sạch, tốc độ, số vòng prompt

Nói chung, mình không tin vào “model nào bá nhất” cho mọi thứ. Mình tin vào việc chọn đúng model cho đúng bài, và sẵn sàng đổi tool nếu bài toán đổi.

Nếu bạn muốn, bạn đưa mình 2–3 task bạn hay làm nhất, mình giúp bạn thiết kế một checklist benchmark để test các model một cách khách quan.