You are currently viewing ub-mode của Uncle Bob ép agent viết code có kỷ luật, kèm quality gate

ub-mode của Uncle Bob ép agent viết code có kỷ luật, kèm quality gate

Repo này là một “agent skill”, tức một bộ chỉ dẫn để nhét vào agent coding (kiểu Claude Code, Cursor, Grok) nhằm ép nó làm việc theo quy trình kỹ thuật nghiêm ngặt thay vì phọt code cho xong. Tác giả là Uncle Bob, người không cần giới thiệu trong giới software engineering.

Vấn đề nó giải quyết rất cụ thể: agent hiện nay viết code nhanh, nhưng thường bỏ qua test, sửa triệu chứng thay vì gốc rễ, nhồi thêm abstraction trước khi hiểu domain, và để lại đống code trùng lặp mà không ai kiểm soát. ub-mode chia việc thành hai giai đoạn rõ ràng: “First Make it Work” và “Then Make it Right”.

Nó bắt agent làm gì

Giai đoạn một gồm một loạt nguyên tắc có tên riêng: Laziness Protocol, Foundational Thinking, TDD, Redesign From First Principles, Attack the Premise, Subtract Before You Add, Outcome-Oriented Execution, Build the Lever, và phần Architecture với các mục con như Model the Domain, Boundary Discipline, Type System Discipline, Make Operations Idempotent, Separate Before Serializing Shared State.

Giai đoạn hai là Fix Root Causes, chia việc thành các đơn vị kiểm chứng được (Sequence Work into Verifiable Units), test theo behavior chứ không theo implementation, và loại bỏ “Crapper” với ngưỡng CRAP = 0.8 similarity. Đây là điểm tôi thấy đáng giá nhất: nó không dừng ở lời khuyên, mà nối với công cụ đo.

README nhắc tới hai repo đi kèm của cùng tác giả. unclebob/mutator chạy mutation testing để lộ code chưa được cover và những mutant sống sót mà test không bắt được. unclebob/uml-viewer vẽ ra component, coverage, điểm CRAP, mutation score và hướng phụ thuộc. Nói cách khác, skill này là phần “luật”, còn hai tool kia là phần “cảnh sát giao thông”.

Vì sao đang được chú ý

634 sao, và repo mới tạo ngày 2026-10-25, cập nhật cùng ngày. Con số này với một repo chưa có mô tả, chưa có topics, chưa rõ license, là khá cao. Lý do nằm ở cái tên tác giả và ở thời điểm: dev đang vật lộn với việc agent sinh code quá nhanh nhưng chất lượng trôi dạt. Một bộ rule có tên tuổi đứng sau, lại gắn với tool đo được, đúng nhu cầu.

Điểm khác biệt so với các “prompt system” lan truyền trên mạng: ub-mode tham chiếu trực tiếp tới rules của @poteto (poteto-mode / pstack), nhưng rút gọn lại và ghép với deterministic quality-gate tools. Tức là nó thừa nhận nguồn gốc thay vì tự nhận sáng tạo từ số 0. Tôi đánh giá cao chi tiết này, vì mấy bộ rule copy nhau đầy trên GitHub mà chẳng ai ghi nguồn.

Cài và chạy thử

Cách dùng đơn giản đến mức thô: copy file SKILL.md vào thư mục skills của agent, đặt trong folder ub-mode, rồi gọi /ub-mode.

Copy `SKILL.md` into your agent's skills directory as `ub-mode/SKILL.md` (for example `~/.grok/skills/ub-mode/SKILL.md`, `~/.claude/skills/ub-mode/SKILL.md`, or `~/.cursor/skills/ub-mode/SKILL.md`), then invoke `/ub-mode`.

Không có CLI, không có package manager, không có bước build. Với người quen cài bằng npm i hay pip install thì hơi lạ, nhưng đây là bản chất của agent skill: nó là văn bản, không phải binary.

Ai nên dùng

Hợp nhất với dev đang dùng agent để sửa codebase có sẵn, nơi một thay đổi ẩu có thể làm sập thứ khác. Ví dụ: bạn nhờ agent fix một bug trong service thanh toán, nó sửa xong nhưng nhét luôn một abstraction mới và không viết test. ub-mode sẽ ép nó đi theo TDD trước, rồi mới được thêm code.

Cũng hợp với team lead muốn chuẩn hóa cách agent làm việc trong team, thay vì mỗi người một kiểu prompt. Một file SKILL.md commit vào repo là cả team dùng chung.

Không hợp với người cần agent viết nhanh script một lần rồi vứt. Mấy nguyên tắc như “Subtract Before You Add” hay “Attack the Premise” sẽ làm agent chậm lại đáng kể, và với script 20 dòng thì không đáng.

Ưu điểm và hạn chế

Ưu điểm rõ: rule có cấu trúc, không phải mớ lời khuyên chung chung. Có tên gọi cho từng nguyên tắc nên dễ tham chiếu khi review. Gắn với tool đo cụ thể (mutator, uml-viewer) thay vì chỉ nói suông “hãy viết test”. Và tác giả có uy tín thật trong giới, không phải influencer công nghệ.

Hạn chế thì phải nói thẳng. README không có mô tả repo, không có topics, không ghi license. Với một dự án định đưa vào workflow team, thiếu license là vấn đề pháp lý thật, không phải chuyện nhỏ. Repo mới tạo và cập nhật trong cùng một ngày, nên chưa có dấu hiệu gì về việc nó sẽ được duy trì lâu dài hay chỉ là một lần đăng rồi thôi. Tài liệu hiện chỉ có README rút gọn, chưa thấy hướng dẫn chi tiết cho từng nguyên tắc.

Cũng cần lưu ý: hiệu quả của skill phụ thuộc vào agent bạn dùng. README liệt kê Grok, Claude, Cursor, nhưng không nói agent nào tuân thủ rule tốt hơn. Tự thử là cách duy nhất.

Kết luận thực dụng

Nếu bạn đang thấy agent sửa code xong mà test vẫn đỏ hoặc coverage tụt, thử copy SKILL.md vào, chạy vài task thật trong một tuần rồi so số mutant sống sót trước và sau. Đó là phép đo cụ thể hơn mọi lời khen. Repo ở đây: unclebob/ub-mode.

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

ub-mode là gì và của ai?

ub-mode là một “agent skill”, tức bộ chỉ dẫn dạng văn bản để nhét vào agent coding như Claude Code, Cursor hay Grok, ép agent làm việc theo quy trình kỹ thuật nghiêm ngặt. Tác giả là Uncle Bob, và repo nằm ở unclebob/ub-mode.

Cài ub-mode như thế nào?

Chỉ cần copy file SKILL.md vào thư mục skills của agent, đặt trong folder ub-mode, ví dụ ~/.claude/skills/ub-mode/SKILL.md hay ~/.cursor/skills/ub-mode/SKILL.md, rồi gọi /ub-mode. Không có CLI, không có package manager, không có bước build vì đây là văn bản chứ không phải binary.

ub-mode khác gì các prompt system lan truyền trên mạng?

Nó tham chiếu trực tiếp tới rules của @poteto (poteto-mode / pstack) thay vì tự nhận sáng tạo từ số 0, rồi rút gọn lại và ghép với deterministic quality-gate tools. Cụ thể là gắn với unclebob/mutator để chạy mutation testing và unclebob/uml-viewer để vẽ coverage, điểm CRAP, mutation score, cùng ngưỡng CRAP = 0.8 similarity để loại bỏ “Crapper”.

Chia sẻ bài này

TelegramXFacebookZalo
Đăng ngày 27/10/2026
Giang Na
Về tác giả: Giang Na
Người lập ra blog từ 2015 với những bài về Blogspot. Giờ tập trung vào cách đưa AI vào việc thường ngày, theo hướng thực dụng và dễ làm theo.

Giang Na

Người lập ra blog từ 2015 với những bài về Blogspot. Giờ tập trung vào cách đưa AI vào việc thường ngày, theo hướng thực dụng và dễ làm theo.