Bài viết gốc Weixin: https://mp.weixin.qq.com/s/Jhnqeo3AAmOpMZoJk05psg · Tác giả: 计全丁哥 (Kế Toàn Đinh Ca) · WeChat · Biên dịch & Việt hóa 5 sơ đồ bởi AIHot.vn
Tóm tắt 60 giây & Sơ đồ Giải phẫu Dây chuyền Agent-Autoloop Thực chiến
🚀 Điểm nhấn thực chiến từ bài viết của Kế Toàn Đinh Ca (计全丁哥): <em>“Nêu yêu cầu trong nhóm Feishu (Lark), Claude viết code, Codex duyệt code, còn tôi chỉ bấm đúng hai lần trên Feishu.”</em><br/>Cách đây mấy hôm, <strong>Sinh Mệnh Số Khazix (数字生命卡兹克)</strong> đã mở mã nguồn hệ thống tự động hóa Agent mà anh ấy dày công mài giũa suốt một năm trời — <strong>Agent-Autoloop</strong>. Tôi đã dành hơn một ngày để kết nối nó vào dự án thực tế của chính mình (công cụ sáng tạo nội dung <strong>「Tri Lưu」 - 知流</strong>). Hiệu quả hiện tại là: tôi gửi một câu yêu cầu vào nhóm Feishu, khoảng nửa tiếng sau tính năng đã sửa xong và lên sóng, bot còn tự động trả lời ngay trong nhóm báo cáo chi tiết đã sửa những gì. Toàn bộ các khâu ở giữa từ <strong>chốt phạm vi, viết code, kiểm thử, duyệt code, gộp nhánh, triển khai cho đến nghiệm thu</strong> đều do Agent và các kịch bản (Script) tiếp sức hoàn thành — tôi chỉ gật đầu bấm duyệt ở đúng hai chỗ là <strong>“Gộp & Đẩy code lên sóng”</strong> và <strong>“Gửi phản hồi ra ngoài”</strong>.

Dưới đây là <strong>Bảng tóm tắt đối chiếu sự thay đổi trước và sau khi áp dụng Trung đài Agent-Autoloop</strong> vào quy trình phát triển sản phẩm cá nhân:
| Hạng mục đối chiếu | Trước khi có Agent-Autoloop (Thủ công canh máy) | Sau khi tích hợp Agent-Autoloop (Tiếp sức tự động) |
|---|---|---|
| Vai trò của con người | Làm 'chiếc ống truyền tin' xuyên suốt cả 8 bước: tự copy yêu cầu, ngồi canh Terminal trả lời câu hỏi, tự chạy test, tự push, tự SSH lên server deploy và tự kiểm tra. | Chuyển từ 'người thực thi' thành 'người nêu yêu cầu & ra quyết định': chỉ xuất hiện đúng 2 lần bấm nút trên thẻ Feishu (1. Gộp & Đẩy code; 2. Gửi phản hồi). |
| Phân vai giữa Script & Model | Mọi thao tác đều do người tự gõ lệnh hoặc gọi Agent lẻ tẻ, rời đi một lúc là toàn bộ dây chuyền đứng im. | Script lo các việc có quy tắc rõ ràng (nhận đơn, chạy test cô lập, merge, deploy, tuần tra 5 phút/lần, sao lưu, báo cáo sáng — tốn 0 Token); Claude Code lo chốt phạm vi, viết code & nghiệm thu; Codex lo review chỉ đọc. |
| Kiến trúc hạ tầng & Bảo mật | Phải tự đăng nhập máy chủ triển khai, dễ phát sinh rủi ro khi thao tác tay. | 2 máy Mac mini đặt tại nhà, 0 mở cổng công khai (public port): Máy A chạy Trung đài + Claude + Codex; Máy B chỉ chạy trình nhận việc qua mạng nội bộ Tailscale để kéo code từ GitLab và deploy. |
| Hiệu suất & Chi phí Token thực tế | Tốn thời gian canh chừng liên tục; nếu để Agent tự gọi nhau không kiểm soát dễ bị lặp vô tận đốt sạch Token. | Có 'phanh an toàn' tự ngắt sau 8 tầng gọi nhau; khi chờ người duyệt thì Agent tự thoát (tốn 0 Token). Trong 29 giờ chạy 1.775 vòng, chỉ có 156 vòng thực sự gọi AI, còn 1.619 vòng (91,2%) không tốn một xu! |
Bài viết này chỉ muốn nói đúng một điều: <strong>Nhờ dựa vào một bộ khung (framework) tốt và kết hợp khéo léo với nghiệp vụ của chính mình, việc một cá nhân tự xây dựng hệ thống tự động hóa AI hoàn chỉnh là hoàn toàn khả thi.</strong> Nhân bài viết này, tôi cũng muốn gửi lời cảm ơn chân thành nhất tới Khazix.
1. Trước đây: Tôi chẳng khác nào 'chiếc ống truyền tin' của Agent
Bản thân tôi đang tự phát triển một công cụ hỗ trợ sáng tạo nội dung mang tên <strong>「Tri Lưu」 (知流)</strong>, mọi yêu cầu tính năng mới cũng như phản hồi lỗi đều được gửi chung vào một nhóm chat trên Feishu (Lark).
Trước đây, mỗi lần muốn sửa một yêu cầu, quy trình của tôi diễn ra như sau: copy yêu cầu từ nhóm chat dán cho <strong>Claude Code</strong>, ngồi canh trước màn hình Terminal để trả lời các câu hỏi của nó, tự mình chạy kiểm thử (test), tự commit, tự push code lên kho, sau đó lại đăng nhập vào máy triển khai để deploy, cuối cùng mở trang web online lên tự bấm kiểm tra một lượt rồi mới quay lại nhóm chat báo một câu <em>“Xong rồi”</em>.
<strong>Agent viết code rất nhanh, nhưng sợi dây duy nhất nối liền toàn bộ mắt xích đó lại chính là tôi. Chỉ cần tôi đứng dậy đi chỗ khác một lúc là mọi việc lập tức dừng lại.</strong>

2. Vì sao lại là Agent-Autoloop?
Sau khi đọc xong bài viết mở mã nguồn của Khazix, tôi chợt nhận ra thứ mình đang thiếu bấy lâu nay không phải là một mô hình AI mạnh hơn, mà là <strong>một “Trung đài” (Nền tảng điều phối trung tâm) có khả năng xâu chuỗi các Agent lại với nhau</strong>. Nó giải quyết trúng phóc những vấn đề khiến tôi đau đầu nhất:
- 1. Kích hoạt bằng sự kiện (Event-driven), chứ không phải kích hoạt bằng con người : Nhóm chat có tin nhắn mới, đồng hồ điểm đến một mốc thời gian nhất định, hay hệ thống online gặp sự cố... tất cả đều biến thành một Sự kiện (Event) , và Trung đài sẽ căn cứ theo sổ quy tắc để phân phát tự động cho đúng Agent phụ trách.
- 2. Khi cần người chốt duyệt thì gửi thẻ tương tác, rồi lập tức 'tan ca' : Hễ Agent gặp phải việc cần con người ra quyết định, nó sẽ gửi một tấm thẻ tương tác lên Feishu rồi tự thoát tiến trình ngay lập tức — không chiếm dụng bộ nhớ hệ thống và không tốn một xu Token nào . Đợi đến khi tôi bấm chọn trên tấm thẻ đó, nó mới tự động nối lại đúng cuộc hội thoại cũ để làm tiếp.
- 3. Có 'phanh an toàn' (Cầu chì giới hạn vòng lặp) : Các Agent đánh thức lẫn nhau nếu vượt quá 8 tầng sẽ tự động dừng lại, tuyệt đối không xảy ra tình trạng đốt tiền vô hạn. Ngay ở đơn yêu cầu đầu tiên chạy thử, tôi đã đụng phải giới hạn trần này: khâu duyệt code (review) trả về bắt sửa lại hai vòng liên tiếp, thế là Trung đài lập tức dừng hẳn lại và gửi thẻ hỏi ý kiến tôi. Chính khoảnh khắc đó tôi mới thấm thía thiết kế này cần thiết đến nhường nào.
- 4. Ngoài hạt nhân ra, tất cả đều là Plugin (Mô-đun tháo lắp) : Từ nguồn phát sinh sự kiện, các loại Agent, kênh thông báo cho đến quy trình triển khai đều có thể thay thế bằng công cụ riêng của mình. Chính nhờ kiến trúc này mà tôi hoàn toàn không cần sửa dù chỉ một dòng code của bộ khung gốc nhưng vẫn ghép nối trơn tru toàn bộ quy trình nghiệp vụ riêng vào hệ thống.
3. Kết hợp với nghiệp vụ riêng, hệ thống được dựng lên như thế nào?
Cách tôi dựng hệ thống cũng rất đơn giản: <strong>Tôi quăng thẳng đường dẫn kho mã nguồn (GitHub repo) cho Claude Code, nói rõ tôi muốn kết quả gì, và phần việc còn lại cơ bản là do chính nó tự dựng nên.</strong> Tôi chủ yếu chỉ ngồi trả lời câu hỏi làm rõ ý, mở quyền truy cập ứng dụng trên Feishu và bấm nút <em>“Cho phép” (Allow)</em> ở những bước cần cấp quyền.
Kiến trúc triển khai cuối cùng trông như thế này: Ở nhà tôi đặt <strong>hai chiếc máy Mac mini</strong>:
- Máy Mac mini A : Chạy Trung đài Agent-Autoloop cùng với Claude Code và Codex , chịu trách nhiệm làm việc chính.
- Máy Mac mini B : Chỉ chuyên trách việc triển khai (deploy) sản phẩm 「Tri Lưu」 .
- Cả hai máy đều không mở cổng mạng công khai (public port) ; máy B tự động kết nối sang máy A thông qua mạng nội bộ (Tailscale) để nhận việc.

Luồng luân chuyển của một đơn yêu cầu diễn ra tuần tự như sau:
🔄 Chu trình khép kín của 1 đơn yêu cầu (Con người chỉ bấm duyệt 2 lần): <strong>Script nhận đơn</strong> → <strong>Claude chốt phạm vi & viết code</strong> → <strong>Script chạy toàn bộ bài kiểm thử (test) trong môi trường cô lập</strong> → <strong>Codex duyệt code ở chế độ chỉ đọc (read-only review)</strong> → <span class='text-[#ea580c] font-bold'>[Tôi bấm “Gộp & Đẩy code”]</span> → <strong>Máy triển khai tự động deploy & đối chiếu phiên bản online</strong> → <strong>Claude vào trang online nghiệm thu & soạn thảo câu trả lời</strong> → <span class='text-[#ea580c] font-bold'>[Tôi bấm “Gửi”]</span> → <strong>Tự động phản hồi ngay dưới tin nhắn yêu cầu gốc trong nhóm chat</strong>.<br/><em>Lưu ý: Ở bất kỳ khâu nào trong 3 bước Kiểm thử, Duyệt code hoặc Nghiệm thu, nếu không đạt tiêu chuẩn thì hệ thống sẽ tự động trả ngược về bước Lập trình để sửa lại.</em>

Ngoài việc xử lý các đơn yêu cầu tính năng, hệ thống còn <strong>thay tôi trực ca 24/7</strong>: cứ mỗi 5 phút lại ngó qua một lần xem trang web online có mở được bình thường không, mỗi ngày tự động sao lưu dữ liệu và dọn dẹp tệp rác, đúng 9 giờ sáng gửi tin nhắn riêng cho tôi một bản báo cáo sáng. <strong>Tất cả những việc này đều được viết thành Script (kịch bản lệnh), kiểm tra thấy không có chuyện gì bất thường là tự thoát ngay, không tiêu tốn một xu Token nào.</strong>
4. Hiệu quả thực tế qua 5 đơn yêu cầu & 1.775 vòng chạy trong 29 giờ
Hai ngày vừa qua, tôi đã cho chạy thử nghiệm <strong>5 đơn yêu cầu thực tế</strong>. Tôi xin chọn ra hai đơn tiêu biểu nhất để kể chi tiết:
- Đơn thứ nhất — “Giao diện cấu hình mô hình trong phần Cài đặt nhìn hơi rối” : Claude phụ trách khâu phân tích giao việc cảm thấy chữ “rối” có khá nhiều cách hiểu khác nhau, nên nó chủ động gửi một tấm thẻ lên Feishu hỏi tôi muốn chọn phương án chỉnh sửa nào trước. Sau khi tôi bấm chọn, tính từ lúc bắt đầu viết code cho đến khi lên sóng và trả lời vào nhóm tổng cộng hết đúng 32 phút , và tôi chỉ bấm đúng 3 lần (lúc đó khâu triển khai vẫn cần tôi bấm kích hoạt thủ công, ngay sau đó tôi cũng nối thẳng khâu này vào dây chuyền tự động luôn).
- Đơn thứ hai (Mã đơn ZF-5) — “Ô tìm kiếm khi bấm vào bị hiện hai lớp viền” : Phiên bản thứ nhất chỉ mất 9 phút đã lên sóng, nhưng khi tôi mở lên xem thì thấy vẫn chưa sửa triệt để. Tôi liền trả lời trực tiếp ngay bên dưới tin nhắn yêu cầu gốc trong nhóm một câu:
Vẫn chưa sửa xong đâu, sau khi bấm con trỏ chuột vào thì vẫn còn một lớp viền rất to. Cậu xem ảnh chụp màn hình đính kèm nhé.
Ngay lập tức, <strong>cùng mã đơn yêu cầu đó tự động mang theo toàn bộ hồ sơ ghi chép của vòng trước để sửa tiếp</strong>, tìm ra đúng nguyên nhân gốc rễ (do chưa cập nhật mã phiên bản bộ đệm cache của tệp định dạng CSS), <strong>18 phút sau phiên bản thứ hai chính thức lên sóng</strong> — trong đó máy triển khai từ lúc nhận được yêu cầu cho đến khi triển khai xong chỉ mất vỏn vẹn <strong>7 giây</strong>.

📊 Con số thống kê tôi tâm đắc nhất sau 29 giờ vận hành: Còn một con số nữa mà tôi cực kỳ thích: Trong suốt <strong>29 tiếng đồng hồ</strong> kể từ khi dựng xong Trung đài, hệ thống đã chạy tổng cộng <strong>1.775 vòng</strong>, nhưng <strong>số vòng thực sự gọi Agent làm việc chỉ có đúng 156 vòng (8,8%)</strong>. Toàn bộ <strong>1.619 vòng còn lại (91,2%)</strong> đều là các kịch bản <em>“ngó qua một cái, không có việc gì thì tự thoát”</em> — <strong>không tốn dù chỉ một xu tiền Token!</strong>
5. Vài đúc kết tâm đắc khi vận hành dây chuyền Agent
- 1. Việc gì dùng được Script thì tuyệt đối không đánh thức Mô hình AI : Kiểm thử (test), hợp nhất nhánh (merge), triển khai (deploy), tuần tra định kỳ... những công việc đã có quy tắc rõ ràng như vậy hãy giao toàn bộ cho Script xử lý. Chỉ những chỗ nào thực sự cần đến tư duy phán đoán thì mới giao cho Agent. Làm vậy vừa tiết kiệm tiền bạc, vừa ổn định và chuẩn xác hơn nhiều.
- 2. Viết code và Duyệt code phải giao cho hai mô hình khác nhau : Tôi để Claude viết code , còn Codex duyệt code ở chế độ chỉ đọc (read-only) . Bởi vì nếu để cùng một mô hình tự kiểm tra thứ do chính tay nó viết ra thì lúc nào cũng rất dễ 'nương tay' bỏ qua lỗi.
- 3. Con người phải đứng giữ ở những chốt chặn then chốt nhất : Việc hợp nhất code đưa lên sóng (merge to production) và việc gửi tin nhắn phản hồi ra bên ngoài bắt buộc phải do chính tôi gật đầu; những thao tác nhạy cảm như dừng dịch vụ hay thay đổi cấu hình hệ thống, dù Agent có muốn làm cũng sẽ bị chặn lại, bắt buộc chính tay tôi phải nhấn phím Enter xác nhận. Hơn nữa, khâu nghiệm thu của Agent vẫn tồn tại những 'điểm mù' nhất định — chẳng hạn như nó không nhìn thấy được các trang giao diện nằm sau bước đăng nhập — cho nên ánh mắt kiểm tra cuối cùng vẫn cần đến con người. May mắn là giờ đây, chi phí cho 'ánh mắt cuối cùng' ấy chỉ nhẹ nhàng bằng việc trả lời một câu tin nhắn mà thôi.
6. Lời kết: Từ 'người thực thi' trở thành 'người nêu yêu cầu và ra quyết định'
Ngoảnh đầu nhìn lại, trong hai ngày qua năng lực bản thân của Claude và Codex thực chất không hề thay đổi — <strong>thứ thay đổi chính là phương thức tổ chức</strong>. Trước đây là tôi phải cầm từng yêu cầu đi tìm từng Agent một; còn bây giờ là <strong>yêu cầu tự động tìm đến Agent, các Agent tự động chuyền gậy tiếp sức cho nhau, và chỉ khi nào thực sự cần đến tôi thì chúng mới quay sang tìm tôi</strong>.
<strong>Tôi đã chuyển mình từ một “người thực thi” (Executor) trở thành một “người nêu yêu cầu và ra quyết định” (Decision Maker).</strong>
Thực lòng cảm ơn Khazix. Việc anh ấy đem một hệ thống mà mình đã dày công mài giũa suốt một năm trời mở mã nguồn hoàn toàn không giấu giếm chút nào, lại còn viết tài liệu hướng dẫn chi tiết đến mức ngay cả Agent đọc vào cũng tự cài đặt theo được, đã giúp những nhà phát triển cá nhân như tôi chỉ trong vòng một hai ngày có thể đưa tự động hóa AI vào vận hành thực chất trên chính sản phẩm của mình.
Nếu bạn cũng muốn tự mình trải nghiệm, địa chỉ kho mã nguồn dự án nằm ở đây:
🔗 Kho mã nguồn mở chính thức của dự án Agent-Autoloop: <a href='https://github.com/KKKKhazix/agent-autoloop' target='_blank' rel='noopener noreferrer' class='text-[#3370ff] hover:underline font-mono font-semibold'>https://github.com/KKKKhazix/agent-autoloop</a><br/>Hãy quăng địa chỉ này cho <strong>Claude Code</strong> hoặc <strong>Codex</strong> của bạn, nói rõ cho nó biết bạn muốn bàn giao những công việc nào ra ngoài — phần còn lại, nó sẽ tự dẫn dắt bạn làm từng bước một.<br/><em>Nếu thấy bài viết hữu ích, hoan nghênh bạn thả tim, chia sẻ và ghé qua kho dự án của Khazix tặng một ngôi sao (Star) nhé!</em>