Bài 15 trong bộ onboarding AgentKit v3. Đọc khoảng 6 phút.
AI giờ được train để làm ra thứ ổn định hơn, nên tụi nó viết test rất nhiều. Tốt, cho tới khi có vài nghìn cái test và bill CI nhảy tưng tưng, mà app gãy vẫn cứ gãy. Trong đống đó có cả "test hiển nhiên" (tautological test, kiểu true == true): test để làm chứng cho thứ nó vừa viết, chứ không chứng minh app hổng gãy. Tệ hơn là test chỉ để CI xanh: sửa test thành hiển nhiên, hoặc comment test fail lại kèm câu "không liên quan, để xử lý sau". Sau là bao giờ? 😂
Skill ak-test sinh ra để trị đúng mấy trò đó.
1/ Nó làm gì?
Viết test có lý do. Trước khi tạo test, agent phải trả lời 5 câu: hành vi nào thực sự đổi, cái gì có thể gãy, test hiện có nào đã chứng minh điều này, tầng đáng tin thấp nhất để kiểm chứng là gì, có thật sự cần thêm test không.
Test fail thì điều tra trước. Không làm yếu assertion cho qua, không comment test lại khi chưa giải thích được nguyên nhân, không skip nếu bạn chưa cho phép.
Dọn test cho có. Vô nghĩa, hiển nhiên, trùng lặp thì bỏ.
Chạy theo blast radius. Chia test thành nhiều lane, mỗi lần push chỉ chạy lane mà thay đổi ảnh hưởng tới. Full suite để dành cho lúc lên bản release stable.
Kết quả tui đo trên chính AK: thời gian CI từ khoảng 35 phút xuống khoảng 9 phút sau khi audit và optimize. Đây là số của một dự án (AK), không phải lời hứa cho repo của bạn.
2/ Khi nào dùng
Vừa implement xong, cần kiểm chứng.
Suite phình to, CI chậm và đắt.
Không tin được bộ test hiện có (nghi có test skip, test cho có).
Bootstrapping test cho repo chưa có gì.
Test UI trên một trang web (
ui [url]).
Đừng dùng khi bạn chỉ muốn "cho CI xanh". Skill này sinh ra để cản đúng cái đó.
3/ Các chế độ
Theo SKILL.md của ak-test (v1.3.0) trong kit, cú pháp là [context] OR ui [url] OR create|optimize|audit [scope] [--advice] [--ultra] [--interview]:
| Lệnh | Làm gì |
|---|---|
/ak-test + ngữ cảnh |
Chạy unit/integration/e2e cho phạm vi đó |
/ak-test ui <url> |
Test UI trên website |
/ak-test create <scope> |
Scout dự án và codebase, lập ma trận coverage, tạo test bám hành vi thật |
/ak-test audit <scope> |
Tìm test yếu, trùng, lỗi thời, bị skip, hoặc đáng ngờ; báo cáo xếp hạng, chưa tự sửa |
/ak-test optimize <scope> |
Làm CI nhanh hơn, rẻ hơn dựa trên số đo thực, không cảm tính |
Ghi chú: bài gốc của tui viết dạng /ak:test, trong v3 tên skill là ak-test nên gõ /ak-test. Gọi không kèm tham số thì skill hỏi bạn chọn thao tác.
Cờ bổ sung:
--advice: chạy dưới sự giám sát củakongming(agent cố vấn).--ultra: bước phân tích/thiết kế chạy dạng best-of-5 rồi một verifier chọn hướng mạnh nhất (cơ chế mô tả trong tài liệu củaak-brainstorm).--interview: liệt kê mọi thay đổi định làm, chờ bạn duyệt rồi mới áp dụng. Không có cờ này,createvàoptimizeáp dụng thẳng rồi báo cáo danh sách thay đổi, cònauditchỉ báo cáo.
Với manifest do repo quản lý, SKILL.md còn nhắc tới ak test optimize để chọn test theo thứ tự xếp hạng tất định. Lệnh này có thật trong ak 3.0.0; ví dụ trong phần help là ak test optimize --base origin/dev --json. Các cờ khác tui chưa thử, xem ak test optimize --help.
4/ Dùng từng bước
Chạy
audittrước để biết suite đang bệnh ở đâu:
/ak-test audit packages/apiĐọc báo cáo. Audit không tự sửa, bạn quyết định cái nào sửa.
Muốn giảm thời gian CI, chạy
optimize, nên kèm--interviewlần đầu để duyệt từng thay đổi:
/ak-test optimize .github/workflows --interviewThiếu coverage ở chỗ quan trọng thì
create:
/ak-test create modules/billingMuốn nhiều hướng cân nhắc thì thêm
--ultra.
Nguyên tắc tui giữ: chúng ta là người trả bill, không phải agent. Cứ gắt vào.
5/ Trạng thái
| Tính năng | Nhãn |
|---|---|
Chạy test, create, audit, optimize, ui |
✅ có trong ak-test v1.3.0 của kit |
--advice, --ultra, --interview |
✅ khai báo trong SKILL.md |
| Lane theo blast radius cho repo của bạn | 🧪 phụ thuộc vào việc skill thiết kế lane hợp với repo; hãy đo trước và sau |
| Con số 35 phút còn 9 phút | Số đo trên repo AK, không áp tự động cho repo khác |
Tóm lại
1/ Test đúng chỗ quan trọng hơn nhiều test.
2/ Test fail thì tìm nguyên nhân, không làm yếu, không comment, không skip khi chưa được phép.
3/ audit để biết bệnh, optimize để giảm bill, create để vá lỗ hổng coverage.
4/ Đo trước và sau. Thời gian và tiền CI mới là bằng chứng.
Nguồn
Giới thiệu skill /ak:test: bớt test cho có, test đúng chỗ (09/10/2026)
SKILL.mdcủa skillak-testv1.3.0 trong kitak 3.0.0