Vibe coding có một chi phí ít được nói tới: hóa đơn maintenance thường không nằm ở người prompt.

Một app AI-built có thể kéo về 40 package, copy pattern từ Stack Overflow cũ, dùng SDK sai phiên bản, gọi API theo hallucinated docs, rồi khi lỗi xảy ra thì mở issue ở open-source repo:

It doesn't work. Please fix.

Người trả tiền lúc đó là maintainer.

AI làm giảm chi phí dùng code của người khác

Open source vốn đã là nền cho phần lớn software. AI làm việc dùng open source còn dễ hơn:

  • Người không rành package vẫn cài được library.
  • Agent tự thêm dependency.
  • Agent tự tìm API usage.
  • Agent tự ghép nhiều package thành app.
  • Agent tự tạo wrapper quanh SDK.

Điều này có mặt tốt. Nhiều người build được prototype nhanh hơn. Nhiều library có thêm user. Nhiều bug thật có thể được phát hiện.

Nhưng nếu người dùng không hiểu dependency mình đang dùng, feedback loop với maintainer yếu đi.

Maintainer nhận issue, không nhận context

Issue tốt thường có:

  • Version.
  • Minimal reproduction.
  • Expected vs actual behavior.
  • Environment.
  • Relevant logs.
  • What changed recently.
  • Confirmation đã đọc docs.

Issue vibe-coded thường thiếu các thứ đó vì người mở issue không biết app của họ đang gọi gì. Họ chỉ biết AI nói dùng library này và app bị lỗi.

Kết quả là maintainer phải làm việc ngược:

  1. Đoán toolchain.
  2. Hỏi lại version.
  3. Yêu cầu reproduction.
  4. Phân biệt bug của library với bug do AI dùng sai.
  5. Dọn issue không actionable.
  6. Gánh kỳ vọng support miễn phí.

Đây không phải productivity gain. Đây là cost shifting.

”Vibe Coding Kills Open Source” là cảnh báo về feedback loop

Một paper năm 2026 đặt vấn đề rằng vibe coding có thể làm yếu vòng tương tác giữa người dùng và maintainers. Khi AI giúp người dùng build nhanh hơn trên nền code có sẵn, open-source projects có thể nhận thêm usage nhưng không nhận thêm engagement chất lượng tương ứng.

Nói đời thường: nhiều người dùng hơn không tự động tạo nhiều contributor hơn.

Nếu AI đứng giữa user và code, user có thể không biết mình đang phụ thuộc vào package nào, không đọc docs, không hiểu license, không biết cách report bug, và không quay lại đóng góp.

Maintainer vẫn phải trả lời issue.

Dependency không phải vật liệu miễn phí

Mỗi package trong app là một quan hệ bảo trì:

  • Ai update khi package đổi API?
  • Ai xử lý CVE?
  • Ai đọc changelog?
  • Ai kiểm license?
  • Ai debug conflict?
  • Ai quyết định bỏ package khi không cần?

AI có xu hướng thêm dependency vì đó là đường nhanh để app chạy. Nhưng app chạy được hôm nay không trả lời câu hỏi maintenance ngày mai.

Prompt nên ép agent giải thích:

Before adding any new dependency:
- Explain why existing code cannot do this.
- Explain maintenance risk.
- Check license.
- Check package activity.
- Propose a no-new-dependency alternative.
Do not install until approved.

Cách mở issue không làm khổ maintainers

Nếu app vibe-coded hỏng ở một open-source package, đừng ném transcript AI vào issue tracker.

Làm tối thiểu:

  1. Xác định package và version.
  2. Reproduce bằng project nhỏ nhất có thể.
  3. Xóa code không liên quan.
  4. Ghi command đã chạy.
  5. Ghi expected vs actual.
  6. Nói rõ phần nào do AI generated nếu có.
  7. Hỏi agent kiểm docs chính thức trước khi mở issue.

Prompt hữu ích:

Prepare a maintainer-friendly bug report.
First, reduce this to a minimal reproduction.
Do not blame the library unless we can reproduce outside our app.
List exact versions, commands, logs, and expected behavior.

Nếu không tạo được minimal reproduction, issue có thể chưa nên mở.

Vibe coding có thể giúp open source nếu dùng đúng

AI không nhất thiết làm hại open source.

Nó có thể giúp:

  • Tạo reproduction nhỏ.
  • Viết failing test.
  • Đọc docs trước khi hỏi.
  • Tìm duplicate issue.
  • Draft PR fix nhỏ.
  • Viết migration note.
  • Dọn warning trong app của mình thay vì đẩy lỗi lên upstream.

Khác biệt nằm ở thái độ: dùng AI để giảm tải cho maintainer, hay dùng AI để gửi thêm noise cho maintainer.

Chốt lại

Vibe coding không chỉ ảnh hưởng app của bạn. Nó ảnh hưởng cả hệ sinh thái package mà app đang đứng lên.

Nếu agent thêm dependency mà bạn không hiểu, hóa đơn maintenance chưa biến mất. Nó chỉ chưa tới.

Vibe coding có kiểm soát cần một nguyên tắc đơn giản: trước khi mở issue upstream, chứng minh đó là bug upstream. Trước khi thêm dependency, hiểu chi phí giữ nó. Trước khi nói AI làm nhanh hơn, hỏi xem ai đang trả phần review, support, và maintenance.

Tham khảo