Một coding agent có thể sửa nhiều file rất nhanh, nhưng tốc độ đó ít ý nghĩa nếu nó hiểu sai yêu cầu hoặc bỏ qua một nhánh lỗi. Sau phần giới thiệu Obra Superpowers là gì, câu hỏi cần giải quyết là framework này giúp kiểm soát những sai sót nào và khi nào quy trình của nó đáng với thời gian bỏ ra.
Theo repository chính thức, Superpowers kết hợp các skill với phương pháp phát triển phần mềm cho coding agent. Những bước như làm rõ yêu cầu, thiết kế, lập kế hoạch, TDD và review tạo các điểm kiểm tra trước khi agent kết luận hoàn thành. Mức độ phù hợp cần được đánh giá trên công việc của đội, phiên bản đang dùng và quyền được cấp cho công cụ thực thi.
Định vị lại Obra Superpowers: framework quy trình, không phải mô hình AI

Cách hiểu chính xác nhất là xem Superpowers như một lớp điều phối phía trên coding agent. Mô hình ngôn ngữ vẫn là thành phần suy luận; Claude Code, Codex, Cursor hoặc Gemini CLI vẫn là harness thực thi; còn Superpowers cung cấp các skill để định hình trình tự làm việc. Vì vậy, cài framework không làm model biết thêm kiến thức về hệ thống của bạn và cũng không bảo đảm mọi đoạn code sinh ra đều đúng.
Giá trị nằm ở việc giảm bước nhảy cóc. Với yêu cầu “thêm endpoint webhook”, agent dễ sửa controller trước khi hỏi giao dịch lặp được xử lý ra sao. Các skill của Superpowers hướng cuộc trao đổi về mục tiêu, thiết kế và bằng chứng kiểm thử. Developer vẫn phải kiểm tra agent có thực hiện những bước đó hay chỉ tạo đủ tên tài liệu; cài framework không tự bảo đảm quy trình được tuân thủ.
- Framework: lớp tổ chức skill và trình tự làm việc cho coding agent.
- Skill: hướng dẫn có ngữ cảnh cho một giai đoạn như brainstorming, planning, TDD hoặc code review.
- Harness: công cụ chạy agent, quản lý file, terminal, diff và quyền truy cập.
- Developer: người phê duyệt mục tiêu, ranh giới, thiết kế và các thay đổi có tác động.
Phân biệt bốn lớp này giúp tránh kỳ vọng sai. Nếu model yếu, dữ liệu dự án thiếu hoặc test không đủ, Superpowers chỉ giúp quy trình rõ hơn; nó không thể bù toàn bộ khoảng trống kiến thức. Ngược lại, với một yêu cầu phức tạp có nhiều file, nhiều ràng buộc và rủi ro hồi quy, quy trình có checkpoint thường tạo ra giá trị rõ ràng hơn một prompt dài duy nhất.
Nếu còn mới với cách agent gọi tool và lặp qua nhiều hành động, phần AI Agents for Beginners cung cấp nền tảng cần thiết. Hiểu vòng lặp đó sẽ giúp developer xác định chỗ cần can thiệp: trước khi thay đổi dữ liệu, lúc mở rộng phạm vi hoặc khi công cụ trả kết quả chưa đủ để xác minh.
Quy trình sáu bước và điều mỗi bước kiểm soát
Sáu bước dưới đây là cách nhóm các quyết định khi triển khai một tính năng. Chúng không thay thế danh sách skill theo phiên bản: workspace riêng, debugging hay kết thúc nhánh còn có hướng dẫn tương ứng trong dự án. Điều cần giữ là đầu ra của bước trước đủ rõ để bước sau có thể kiểm chứng.
1. Làm rõ yêu cầu bằng brainstorming
Agent hỏi mục tiêu, người dùng, dữ liệu đầu vào, điều kiện lỗi và tiêu chí thành công. Đây là nơi phát hiện những câu như “tự động cập nhật thanh toán” thực ra có thể bao gồm nhận webhook, xác thực chữ ký, chống trùng, cập nhật đơn và gửi thông báo. Nếu bỏ qua bước này, phần code có thể đúng về cú pháp nhưng sai về nghiệp vụ.
2. Viết thiết kế trước khi triển khai
Thiết kế nên mô tả boundary giữa route, service, database, queue và bên thứ ba. Một bản thiết kế tốt cũng ghi rõ điều không làm trong phạm vi hiện tại. Đối với dự án nhỏ, thiết kế có thể là một trang; với luồng tiền, nó phải nêu trạng thái, retry, timeout và cách phục hồi.
3. Chia kế hoạch thành task kiểm chứng được
Thay vì một task lớn “xây webhook”, agent tách thành tạo schema, lưu raw event, xác thực, idempotency, mapping đơn hàng, test lỗi và quan sát production. Task nhỏ giúp developer review diff ngắn và giúp agent không tự mở rộng phạm vi.
4. TDD và vòng RED–GREEN–REFACTOR
TDD ở đây không phải khẩu hiệu. Agent cần viết test thể hiện hành vi mong muốn, chạy để thấy test fail, triển khai tối thiểu để test pass rồi mới refactor. Test phải bao gồm trường hợp lặp cùng event, thiếu chữ ký, amount không hợp lệ và lỗi database; không chỉ kiểm tra happy path.
5. Thực hiện theo task và giữ diff nhỏ
Mỗi task được hoàn thành, chạy test liên quan và ghi lại kết quả. Cách làm này làm giảm vùng thay đổi trong một lần review. Nếu agent cần quyền terminal hoặc đọc secret, quyền đó phải được cấp theo task và thu hồi khi không còn cần.
6. Review và xác minh trước khi kết luận
Bước review hỏi code có đúng design không, có lỗi bảo mật nào không, test có bao phủ điều kiện quan trọng không và có file nào bị thay đổi ngoài phạm vi không. “Không còn lỗi trong lần chạy hiện tại” không đồng nghĩa với “đã sẵn sàng production”.
Có thể xem thêm cách LangGraph tổ chức state và checkpoint cho agent để thấy một hướng tiếp cận khác. LangGraph thiên về trạng thái và khả năng tiếp tục; Superpowers thiên về kỷ luật phát triển phần mềm.
Case study: phát triển webhook biến động số dư từ đầu đến cuối

Tình huống giả định: một đội phát triển cần nhận sự kiện biến động số dư, kiểm tra dữ liệu và tạo bản ghi chờ đối soát. Phần này minh họa cách áp dụng workflow, không mô tả một dự án đã triển khai hay kết quả kinh doanh đạt được. Cơ chế xác thực phải lấy từ hợp đồng của nguồn sự kiện thực tế.
Yêu cầu ban đầu: “Khi hệ thống nhận giao dịch tiền vào, nếu giao dịch khớp mã tham chiếu và số tiền của đơn hàng thì chuyển đơn sang trạng thái chờ xác minh; không xử lý trùng và không tin dữ liệu do AI tự suy đoán.”
Ở bước làm rõ, agent cần xác định nguồn event là webhook hay polling, định danh duy nhất nằm ở đâu, cơ chế xác thực dùng token hay chữ ký, và giao dịch là chiều vào hay chiều ra. Khi nhà cung cấp tạm thời không phản hồi, trạng thái nào được giữ lại? Trả lời từng câu sẽ tạo được điều kiện đầu vào và kết quả mong đợi để viết test.
Ở bước thiết kế, boundary nên là: HTTP handler chỉ nhận và xác thực request; event store lưu payload đã mask cùng request_id; service đối soát áp dụng rule; database dùng khóa duy nhất để chống trùng; worker xử lý retry; cuối cùng mới có adapter cập nhật đơn. AI nếu được dùng chỉ nên tóm tắt hoặc gợi ý trường hợp nghi ngờ, không được tự quyết định giao dịch hợp lệ.
RECEIVE_EVENT
-> VERIFY_SIGNATURE
-> STORE_RAW_EVENT
-> IDEMPOTENCY_CHECK
-> MATCH_ORDER
-> APPLY_BUSINESS_RULE
-> QUEUE_REVIEW_OR_UPDATE
-> AUDIT_RESULT
Kế hoạch triển khai có thể chia thành bảy task: tạo schema event, viết test chữ ký, lưu event bất biến, thêm unique key theo event_id, xây bộ rule match, xử lý retry có giới hạn và bổ sung log/audit. Mỗi task có đầu ra cụ thể. Nếu task “xử lý retry” bắt đầu sửa đồng thời route, schema và UI, developer nên dừng lại và yêu cầu agent quay về phạm vi đã duyệt.
Bộ test tối thiểu nên thể hiện hành vi: event hợp lệ chỉ lưu một lần; chữ ký sai bị từ chối; amount không khớp đi vào hàng chờ; lỗi database có thể retry; log không chứa token. Đây là điểm Superpowers có lợi: biến tiêu chí thường bị bỏ quên thành đầu ra bắt buộc.
test('same event is idempotent', async () => {
await receiveEvent(validEvent);
await receiveEvent(validEvent);
expect(await countByEventId(validEvent.event_id)).toBe(1);
});
test('invalid signature never updates order', async () => {
await expect(receiveEvent({ ...validEvent, signature: 'bad' }))
.rejects.toThrow('invalid signature');
expect(await orderStatus(orderId)).toBe('pending');
});
Để đối chiếu cách tiếp nhận thông báo từ máy chủ, có thể đọc hướng dẫn xử lý IPN ở backend. Mẫu webhook giả định phía trên chỉ minh họa cấu trúc trách nhiệm; tên trường và cách xác thực của IPN hoặc từng API phải theo tài liệu riêng. Không mang một phép kiểm chữ ký từ luồng này áp dụng nguyên xi cho luồng khác.
Ưu điểm, giới hạn và các dấu hiệu không nên dùng
- Giúp yêu cầu mơ hồ được chuyển thành tiêu chí có thể kiểm tra.
- Giảm diff quá lớn bằng task nhỏ và review theo từng bước.
- Khuyến khích TDD, YAGNI, DRY và xác minh trước khi hoàn thành.
- Tạo ngôn ngữ chung giữa developer, technical lead và coding agent.
- Không nên dùng đầy đủ quy trình cho câu hỏi code ngắn hoặc thao tác không có side effect.
- Không giao quyền merge, deploy, đọc secret hoặc sửa dữ liệu production mặc định cho agent.
- Không coi việc test pass là bằng chứng duy nhất cho an toàn nghiệp vụ.
- Không copy skill vào mọi dự án mà không review khả năng tương thích và license.
- Không để framework che khuất việc thiếu owner chịu trách nhiệm cuối cùng.
Cách đánh giá hiệu quả sau hai tuần thử nghiệm

Đừng đo hiệu quả bằng số dòng code agent viết. Hãy chọn một nhóm task tương tự và so sánh trước/sau theo các chỉ số có thể quan sát: số lần phải làm lại vì hiểu sai yêu cầu, thời gian từ yêu cầu đến review, số lỗi lọt qua test, kích thước diff trung bình, tỷ lệ task có test và số lần agent chạm file ngoài phạm vi.
- Chọn ba đến năm task đại diện, không chọn toàn task dễ.
- Ghi lại baseline: thời gian, số vòng review, lỗi và phạm vi file thay đổi.
- Dùng Superpowers với design và plan được developer phê duyệt.
- Chấm cùng một checklist về correctness, security, maintainability và test.
- Giữ lại skill tạo giá trị, rút gọn bước gây ma sát và ghi rõ giới hạn.
Kết quả tốt là ít lỗi hiểu sai và review dễ hơn, dù phiên đầu có thể lâu hơn. Nếu agent chỉ tạo thêm tài liệu mà chất lượng code không cải thiện, team nên rút gọn workflow. Mục tiêu là feedback nhanh và thay đổi an toàn, không biến mọi task thành một buổi họp thiết kế.
Nếu muốn mở rộng sang các ví dụ ứng dụng AI, OpenAI Cookbook phù hợp để tham khảo recipe và chuyển chúng thành test case của đội. Với bài toán tài chính, phần recipe chỉ là điểm bắt đầu; contract API, secret, quyền truy cập và quyết định nghiệp vụ vẫn phải nằm trong service được kiểm soát.
Kết luận: nên dùng Superpowers như một lớp kỷ luật
Superpowers đáng thử khi yêu cầu thường xuyên bị hiểu lệch, diff khó review hoặc agent kết luận hoàn thành mà thiếu bằng chứng. Hãy bắt đầu với một tính năng có phạm vi vừa đủ, dùng cùng tiêu chí review trước và sau, rồi giữ lại những bước giúp phát hiện lỗi sớm. Kết quả cần nhìn thấy trong thay đổi và kiểm thử của dự án.
Một nhóm có test tốt nhưng mất thời gian thống nhất yêu cầu có thể hưởng lợi nhiều từ brainstorming và thiết kế. Nhóm đã có quy trình rõ nhưng review chậm nên xem cách chia task và thời điểm phản biện. Chọn điểm nghẽn cụ thể sẽ giúp đánh giá framework công bằng hơn việc buộc mọi sửa đổi nhỏ đi qua toàn bộ quy trình.
Nguồn: Obra Superpowers trên GitHub. Các nhận xét về phạm vi triển khai và tiêu chí đánh giá là phân tích kỹ thuật của bài viết trên hoadontudong.com.vn.