Vibe coding là gì? Khi nào nên dùng, rủi ro và cách làm có kỷ luật

Vibe coding là gì? Khi nào nên dùng, rủi ro và cách làm có kỷ luật
30 Tháng 10, 2026 Lê Quốc Nghĩa 10 phút đọcHướng dẫn

Vibe coding là gì? Vibe coding là cách làm phần mềm bằng cách mô tả bằng ngôn ngữ tự nhiên cho một mô hình AI viết mã, rồi chạy thử và nhờ AI sửa tiếp, mà không đọc kỹ từng dòng mã sinh ra. Thuật ngữ do Andrej Karpathy (đồng sáng lập OpenAI, từng dẫn dắt AI tại Tesla) đặt ra trong một bài đăng trên X ngày 2/2/2025, và được Từ điển Collins chọn là Từ của năm 2025. Bài cập nhật năm 2026 gồm bốn phần:

  1. Định nghĩa gốc của Karpathy và điểm khác với lập trình có AI hỗ trợ.
  2. Khi nào hợp và không hợp để vibe coding.
  3. Rủi ro có số liệu, từ báo cáo của Veracode đến sự cố của Lovable và Replit.
  4. Quy trình làm có kỷ luật mà đội làm sản phẩm thật có thể áp dụng bằng Claude Code (Anthropic).

Ví dụ, một mẫu giao diện chạy thử trong 1 buổi chiều hợp vibe coding, còn trang thanh toán thì không.

Phổ từ vibe coding thuần đến lập trình có AI hỗ trợ và rà soát: càng nhiều rủi ro thì càng cần đọc mã, kiểm thử và sao lưu
Càng đụng đến tiền, dữ liệu cá nhân và hệ thống đang chạy, càng phải rà soát mã. Sơ đồ: OPCAIOS.

Vibe coding là gì?

Theo bài đăng gốc của Karpathy, vibe coding là "một kiểu lập trình mới" trong đó bạn "hoàn toàn buông theo cảm giác, đón nhận tốc độ tăng theo cấp số nhân, và quên rằng mã nguồn tồn tại". Ông mô tả cách làm của chính mình: nói chuyện với trợ lý trong trình soạn thảo bằng giọng nói nên gần như không chạm bàn phím; nhờ những việc nhỏ như "giảm padding của thanh bên đi một nửa"; luôn bấm "Accept All" và không đọc phần khác biệt (diff) nữa; gặp lỗi thì dán nguyên thông báo lỗi vào mà không bình luận gì. Mã "lớn hơn khả năng hiểu thông thường" của ông, và ông kết luận đây là cách "không tệ cho dự án cuối tuần dùng xong bỏ, nhưng vẫn khá thú vị".

Định nghĩa gốc có những điều kiện nào?

Định nghĩa gốc có hai điều kiện: dùng AI viết mã, và không rà soát mã. Theo Wikipedia, Merriam-Webster đưa từ này vào mục "tiếng lóng và đang thịnh hành" từ tháng 3/2025, và Collins chọn nó là Từ của năm 2025 (trang Collins chặn truy cập tự động nên chúng tôi dựa vào các bài tường thuật và Wikipedia). Collins định nghĩa vibe coding là việc dùng AI được nhắc bằng ngôn ngữ tự nhiên để hỗ trợ viết mã máy tính. Bài đăng gốc của Karpathy có hơn 7,3 triệu lượt xem theo dữ liệu của X (kiểm tra 23/10/2026). Ví dụ, nhờ Cursor (công cụ Karpathy nhắc tới) tạo một trang giới thiệu rồi bấm "Accept All" là đúng định nghĩa gốc.

Vibe coding khác lập trình có AI hỗ trợ ở đâu?

Vibe coding khác lập trình có AI hỗ trợ ở chỗ bạn có đọc, hiểu và chịu trách nhiệm về mã hay không. Lập trình viên Simon Willison, trong bài "Not all AI-assisted programming is vibe coding" (19/3/2025, đọc ngày 23/10/2026), nhấn mạnh sự phân biệt này: vibe coding là xây phần mềm bằng mô hình ngôn ngữ mà không xem lại mã đã viết. Ông lo rằng thuật ngữ đang bị dùng cho mọi kiểu viết mã có AI, làm loãng nghĩa và tạo ấn tượng sai về những gì làm được có trách nhiệm. Có hai điểm phân biệt chính:

  1. Lập trình có AI hỗ trợ: đọc, kiểm thử và hiểu kết quả, và theo Willison thì đó không phải vibe coding.
  2. Vibe coding thuần: chấp nhận kết quả theo cảm giác, ví dụ nhờ Cursor tạo một trang rồi bấm "Accept All".

Bảng dưới đây so sánh năm tiêu chí:

Tiêu chí Vibe coding (định nghĩa gốc) Lập trình có AI hỗ trợ
Đọc diff và hiểu mã Không đọc, "Accept All" Đọc, hiểu, sửa
Xử lý lỗi Dán lỗi cho AI, thử cho tới khi hết Tìm nguyên nhân, viết kiểm thử
Chịu trách nhiệm về mã Bạn chấp nhận kết quả theo cảm giác Bạn chịu trách nhiệm từng dòng
Hợp với Dự án thử, mẫu thử, đồ chơi cuối tuần Sản phẩm thật, hệ thống đang chạy
Rủi ro chính Lỗ hổng, mã không bảo trì được Thấp hơn nếu rà soát tốt

Quy trình vibe coding điển hình trông như thế nào?

Quy trình thường là một vòng lặp ngắn: mô tả điều muốn, để AI viết, chạy thử, rồi dán kết quả hoặc lỗi cho AI sửa tiếp. Các công cụ Karpathy nhắc tới là Cursor Composer chạy mô hình Sonnet và trình nhập giọng nói SuperWhisper; ngày nay nhiều người dùng agent như Claude Code hay Codex, hoặc các nền tảng tạo ứng dụng như Lovable và Replit (theo Wikipedia). Điểm chung: người làm chủ yếu "nhìn, nói, chạy và dán" thay vì viết cú pháp.

Vòng lặp này cực nhanh cho việc cần một giao diện, một kịch bản nhỏ hay một mẫu thử để xem ý tưởng có đáng làm không. Nó hết hiệu quả khi mã đã lớn đến mức không ai hiểu, vì khi AI kẹt, bạn không còn đủ hiểu biết để dẫn đường.

Khi nào nên và không nên vibe coding?

Nên vibe coding khi hậu quả của lỗi nhỏ và mã có thể vứt đi; không nên khi sai một chỗ là mất tiền, mất dữ liệu hoặc lộ thông tin người dùng. Theo Simon Willison (19/3/2025), ranh giới nằm ở việc bạn có xem lại mã hay không. Đầu tiên là ba trường hợp phù hợp:

  1. Mẫu thử để kiểm tra ý tưởng và giao diện, dự án cuối tuần, công cụ chỉ mình bạn dùng.
  2. Kịch bản dùng một lần để chuyển hay làm sạch dữ liệu không quan trọng, sau đó vứt đi.
  3. Học hỏi: xem AI giải một bài toán, rồi đọc để hiểu.

Tiếp theo là ba trường hợp không nên, hoặc ít nhất phải rà soát kỹ:

  1. Đăng nhập, phân quyền, thanh toán, hoá đơn. Xem cách xử lý an toàn trong Webhook là gì? và Stripe là gì?.
  2. Mọi nơi chứa dữ liệu cá nhân của khách. Với cơ sở dữ liệu, hiểu về quyền truy cập theo từng dòng (RLS) trong Supabase là gì? trước khi mở cho người dùng thật.
  3. Hệ thống đang chạy cho khách và các thao tác triển khai.

Ví dụ, nhờ Claude (Anthropic) dựng thử một trang giới thiệu là hợp lý; nhờ nó sửa mã tính tiền thì cần đọc từng dòng.

Rủi ro của vibe coding có số liệu nào?

Rủi ro của vibe coding là ba nhóm đã được ghi nhận: lỗ hổng bảo mật, sự cố do tác tử AI, và mã khó bảo trì. Nhóm đầu tiên có số liệu rõ nhất. Báo cáo GenAI Code Security 2025 của Veracode (công bố 30/7/2025) ghi nhận, theo Veracode, nhóm nghiên cứu phân tích 80 bài toán viết mã được chọn lọc trên hơn 100 mô hình ngôn ngữ lớn và ghi nhận ba kết quả:

  1. Mã AI sinh ra có lỗ hổng bảo mật trong 45% trường hợp.
  2. Khi được chọn giữa cách an toàn và không an toàn, các mô hình chọn cách không an toàn 45% số lần, và hiệu quả bảo mật không cải thiện theo thời gian dù mã đúng cú pháp ngày càng nhiều.
  3. AI bỏ sót 86% lỗi chèn script chéo trang (XSS).

Lưu ý: con số 45% áp dụng cho các bài toán trong nghiên cứu, không phải cho mọi mã do AI viết, và báo cáo do một hãng bán giải pháp bảo mật công bố. Ví dụ, một trang đăng nhập do AI viết vẫn cần người kiểm tra trước khi mở cho khách.

Những sự cố nào đã xảy ra khi giao quyền cho AI?

Có ba ví dụ được ghi nhận, theo Wikipedia (tổng hợp từ nguồn báo chí, kiểm tra 23/10/2026) và dưới tên mục "Vibe coding" (Wikipedia):

  1. Ứng dụng rò dữ liệu. Tháng 5/2025, nền tảng tạo ứng dụng Lovable bị báo cáo có lỗ hổng trong mã sinh ra: 170 trong 1.645 ứng dụng web do Lovable tạo có lỗi cho phép bất kỳ ai truy cập thông tin cá nhân.
  2. Tác tử làm hỏng hệ thống. Tháng 7/2025, nhà sáng lập SaaStr ghi lại việc tác tử AI của Replit xoá cơ sở dữ liệu dù đã được dặn rõ không được thay đổi gì.
  3. Mã khó bảo trì. Karpathy tự thừa nhận mã "lớn hơn khả năng hiểu thông thường"; với người phải bảo trì sau này, đó là nợ kỹ thuật.

Hai ví dụ đầu lấy từ Wikipedia nên hãy xem như ví dụ minh hoạ, không phải số liệu thống kê chung về mọi sản phẩm vibe coding.

Làm vibe coding có kỷ luật như thế nào?

Vibe coding có kỷ luật là cách giữ tốc độ của AI nhưng đặt lại những chốt chặn mà việc "Accept All" bỏ mất. Bốn thói quen đầu tiên dưới đây là kinh nghiệm thực tế của OPCAIOS khi dùng Claude Code (Anthropic) để làm website, và khớp, theo Simon Willison (19/3/2025), với tinh thần phân biệt vibe coding:

  1. Viết yêu cầu trước: một bản tóm tắt ngắn về mục tiêu, giới hạn và việc không được động tới; AI làm tốt khi có quy tắc, như trong AI viết code sai phiên bản.
  2. Làm từng bước nhỏ, có git: mỗi thay đổi một lần commit để quay lại được. Với kho dùng chung, chỉ commit đúng những tệp mình sửa.
  3. Đọc diff ở chỗ nhạy cảm: đăng nhập, quyền, thanh toán, xử lý dữ liệu cá nhân, mọi thứ đụng vào cơ sở dữ liệu.
  4. Có kiểm thử và kiểm tra tự động: để AI chạy chúng và đọc kết quả thay vì tin lời báo "đã xong".

Ví dụ, trước khi nhờ AI sửa trang thanh toán, hãy ghi rõ trong yêu cầu rằng không được động tới tệp cấu hình giá.

Bí mật, quyền và bản sao lưu cần được xử lý ra sao?

Bốn thói quen tiếp theo bảo vệ dữ liệu thật và hệ thống đang chạy, theo kinh nghiệm của OPCAIOS:

  1. Giữ bí mật ngoài mã: khoá API và mật khẩu để trong biến môi trường, không bao giờ dán vào lời nhắc hay mã chạy trên trình duyệt.
  2. Cấp quyền tối thiểu: agent chỉ cần quyền đọc thì đừng cho ghi; nếu cần kết nối công cụ, xem MCP là gì? về nguyên tắc quyền tối thiểu.
  3. Sao lưu trước khi để agent đụng vào dữ liệu thật, và thử mọi thao tác phá huỷ trên môi trường thử.
  4. Chạy thử trước khi triển khai (dry-run) và kiểm tra kết quả build: bài học thật của chúng tôi ngày 23/10/2026: một lần triển khai bằng rsync --delete từ bản sao cục bộ đã xoá một tệp mà phiên làm việc khác vừa thêm trên máy chủ, khiến bản build lỗi (website vẫn chạy bản cũ nhờ cơ chế đổi bản không gián đoạn). Từ đó chúng tôi luôn kéo bản mới nhất, chạy thử với --dry-run để xem có dòng deleting nào không, rồi mới triển khai.

Chọn mô hình cũng ảnh hưởng: tác vụ khó, nhiều tệp cần mô hình mạnh; việc nhỏ có thể dùng mô hình rẻ hơn. Xem Nên chọn model AI nào?.

Người không biết lập trình có vibe coding được không?

Được, với các sản phẩm nhỏ và dùng cho chính mình. Wikipedia ghi những người ủng hộ cho rằng vibe coding giúp lập trình viên nghiệp dư tạo phần mềm mà không cần đào tạo kỹ nghệ phần mềm dài, trong khi những người phê bình lo về thiếu trách nhiệm giải trình, khó bảo trì và rủi ro bảo mật. Một cách đi thực tế là làm một mẫu thử bằng vibe coding để kiểm chứng ý tưởng, rồi nếu muốn đưa cho khách thật thì nhờ người có chuyên môn rà soát bảo mật, hoặc học đủ để tự rà soát. Dạng việc nên giao cho chuyên gia hoặc kiểm tra kỹ nhất là đăng nhập, thanh toán và dữ liệu cá nhân.

Đọc thêm: Claude Code (hoặc tác tử lập trình) cho người không biết code; Hướng dẫn dùng Cursor AI và Lovable để tự build Micro-SaaS/Landing Page mà không cần biết code.

Câu hỏi thường gặp

Vibe coding là gì?

Là cách làm phần mềm bằng cách mô tả bằng ngôn ngữ tự nhiên cho AI viết mã, rồi chạy thử và nhờ AI sửa, mà không đọc kỹ mã. Thuật ngữ do Andrej Karpathy đặt ra ngày 2/2/2025 và là Từ của năm 2025 của Collins.

Vibe coding khác gì lập trình có AI hỗ trợ?

Vibe coding theo định nghĩa gốc là không rà soát mã AI viết. Lập trình có AI hỗ trợ thì lập trình viên đọc, kiểm thử và hiểu mã, rồi chịu trách nhiệm về nó.

Vibe coding có an toàn không?

Không tự động an toàn. Theo báo cáo Veracode 2025, mã do AI viết có lỗ hổng bảo mật trong 45% số bài toán được thử, và hiệu quả bảo mật không cải thiện theo thời gian. Với mọi thứ đụng đến đăng nhập, thanh toán hay dữ liệu cá nhân, cần rà soát mã.

Khi nào nên dùng vibe coding?

Khi hậu quả lỗi nhỏ và mã có thể bỏ: mẫu thử, dự án cuối tuần, công cụ cá nhân. Đừng dùng thuần vibe coding cho hệ thống chạy thật với tiền hoặc dữ liệu khách.

Muốn dùng AI viết mã cho sản phẩm thật thì làm thế nào?

Giữ tốc độ của AI nhưng thêm yêu cầu rõ ràng, commit từng bước, đọc diff ở chỗ nhạy cảm, có kiểm thử, giữ bí mật ngoài mã, sao lưu và chạy thử trước khi triển khai. Muốn học quy trình này, xem khoá đào tạo ứng dụng AI của OPCAIOS.

Nguồn: bài đăng gốc của Andrej Karpathy trên X (2/2/2025); bài "Not all AI-assisted programming is vibe coding" của Simon Willison (19/3/2025); thông cáo báo chí báo cáo GenAI Code Security 2025 của Veracode (30/7/2025); Wikipedia "Vibe coding" (Collins, Merriam-Webster, các sự cố Lovable và Replit, tổng hợp từ nguồn báo chí; kiểm tra 23/10/2026); Collins chặn truy cập tự động nên thông tin về Từ của năm dựa trên các bài tường thuật. Kinh nghiệm quy trình là của OPCAIOS. Số liệu có thể thay đổi theo thời gian.

Lê Quốc Nghĩa
Lê Quốc Nghĩa
Người xây dựng OPCAIOS

Để lại bình luận

Email của bạn sẽ không hiển thị công khai. Bình luận sẽ hiển thị sau khi được duyệt.