Lập lịch cho AI Agent thu thập content trong 5 phút, nhưng mất 3 ngày để chạy.. ổn
Tuần này mình nhờ Tiểu Cường (AI Agent mình đang xây) tự động đi gom content từ 22 creators trên mạng xã hội, chọn ra bài hay nhất, rồi gửi tóm tắt vào group Telegram. Sáng 1 lần, tối 1 lần.
Nghe đơn giản phải hôm?
“Harvest data > chọn bài > gửi group.”
Ba bước này (ai đó) nói có thể xong trong 5 phút.
Thực tế thì mình và Tiểu Cường ngồi với nhau hơn 3 ngày. Qua khoảng 5 lần viết lại format, 3 lần sửa workflow harvest, không đếm nổi bao nhiêu lần timeout, 404, permission denied.. tè lè tét lét lỗi khắp nơi..

Bài này không khoe AI Agent làm được gì như mấy bài trước nữa, lần này mình viết tại sao AI Agent có thể build được rất nhanh với GoClaw, nhưng để nó chạy ổn trong thực tế.. bạn vẫn phải có chính kiến, có kinh nghiệm, kiến thức nghiệp vụ và sẵn sàng rất rất rất chi là kiên nhẫn để.. sửa đi sửa lại nhiều lần mà.. không đập máy.
1. “Xong rồi em cứ làm đi” và timeout liên tục
Lần đầu: mình cứ prompt với Tiểu Cường: “Harvest 22 creators, chọn 1 bài phù hợp cho Founder, format đẹp đẹp gửi vào group.”
Hắn hào hứng chạy, 22 creators cùng lúc, cứ 55 giây lại timeout (lăn ra ngỏm).

Lần 2:
“Chia batch đi em, X thì 1 creator 1 lệnh, YouTube gộp chung.”
Vẫn timeout và rety hoài, xong tắt điện luôn.

Lần 3:
“Mỗi lượt chạy tối đa 3 creators thôi. Chạy xong batch nào thì lưu data batch đó vào file. Lỗi lượt này không mất dữ liệu lượt kia nhe”
Ố ồ.. Giờ thì nó chạy được khá là ngon lành luôn.

Bạn thấy sự khác biệt không?
Lần 1 và 2, Tiểu Cường AI Agent đề xuất giải pháp “tối ưu”: chạy song song, gộp cho nhanh. Nghe rất hợp lý trên giấy tờ. Nhưng thực tế server cần thời gian xử lý tuần tự, và GoClaw bash excec (tool mình đang dùng để giao việc cho agent) mặc định bị giới hạn 60 giây mỗi lệnh.
Mình giả lập lại quy trình này như những anh chị em không chuyên (non-tech) khác vẫn hay làm với AI, thuần chat và lựa chọn giải pháp nó đề xuất, cứ thế chạy. Thật ra, ban đầu có ý đồ này để soạn được giáo án đào tạo cho anh chị em non-tech dễ hơn thôi, không phải cố chấp gì.
Nhưng cuối cùng, ngày thứ 3 mình đành bỏ cuộc và lao vào làm như người làm nghề: đọc Trace Log > đặt câu hỏi sâu > đề xuất giải pháp giảm timeout > đề xuất giải pháp lưu memory theo chặng > kiểm thử vài lần rồi lựa chọn workflow phù hợp nhất cho bộ API Harvest này.
Nếu không có kinh nghiệm ngồi làm giải pháp phần mềm, cứ ngồi đó nhìn vào đề xuất của tụi AI, rồi cứ “làm đi, chạy theo đề xuất em đi”.. thì cái cron-job đó sẽ mãi không biết tới bao giờ mới xong và không ai biết tại sao.
Mình tin nhiều anh chị em non-tech sẽ bỏ cuộc sớm thôi, do cũng đi đào tạo chủ doanh nghiệp và cấp quản lý nhiều, không có hơn 10% nỗ lực tới cùng (3-6 tháng) để hoàn thiện 1 workflow đâu.
2. Bài viết “hay”.. nhưng sai đối tượng thì sao?
Tiểu Cường tự chọn được bài đầu tiên. Content về Claude Design, công cụ tạo UI prototype bằng AI. Kế tiếp thì chọn Claude Code và cách tối ưu rất sâu về hệ thống kỹ thuật..v.v…
Nó tóm tắt thế này:
“Không cần thuê nhân sự, không cần phòng ban Marketing, không tốn tiền lương, 1 người + AI = đội 5 người, tiết kiệm vài ngàn đô mỗi tháng!”


Mình đọc xong đoạn đầu thì.. chán luôn, không muốn đọc tiếp.
Đây không phải tóm tắt content cho chủ doanh nghiệp và quản lý
→ đây là văn “lùa gà” điển hình mà.
Mình phải ngồi chỉnh lại:
“Viết lại. Cấm không được dùng ngôn ngữ [lùa gà] nhé. Trung thực và thực tế đi, làm gì có chuyện không cần nhân sự, không cần phòng marketing. Em tập trung vào outcome cụ thể công cụ này giải quyết việc gì, bài học rút ra là gì, tiết kiệm bao nhiêu tiền, ROI ra sao.. kèm ví dụ cụ thể dễ hiểu”

Bonus: thật ra trước đó nó còn viết như vầy luôn, cực kỳ chán, vậy mà nó cho là tối ưu đó, đọc xong không hiểu cái gì luôn.
Lần 2 nó đã làm tốt hơn. Nhưng vẫn thiếu link nguồn cuối bài theo format.
Toàn là kiểu làm rồi báo cáo “xong hết rồi anh, em đã ghi nhớ và làm đúng những gì anh mô tả, luôn kèm link nguồn bài viết, anh cứ an tâm chờ sáng mai em sẽ thực hiện nhé…”

AI nó không tuân thủ như nó hứa hẹn đâu, mọi người đừng có tin. Cứ phải kiểm tra lại tận mắt tới lui vài lần rồi hẵng chốt tiếp.


Lần 3: thiếu divider đúng chỗ, thanh divider dài ơi là dài
Mình lại tiếp tục phải sửa cho nó từng chút một, thiếu điều muốn gõ và đếm từng ký tự cho nó hiểu để.. đỡ ngáo đi.

Lần 4: format tác giả/tương tác gộp chung 1 dòng.
Y chang như trên, nó cứ làm theo ý nó thôi, hoặc là ngu quá.. hoặc là tự tin quá mà làm theo format của nó luôn chứ không theo mẫu mình đã gõ.

Lần 5: Đúng. Thật ra chắ hơn 20 lần, tại viết dài kể hông nổi nên tạm vậy đi.
Mỗi lần Tiểu Cường “gần đúng”.. nhưng “gần đúng” không đủ.
Trong doanh nghiệp, một email gửi khách hàng sai 1 con số, một báo cáo thiếu 1 link nguồn, một proposal dùng ngôn ngữ sales quá đà.. tất cả đều là “gần đúng” và đều gây hậu quả thật.
Cũng may là cái này mình làm workflow này cho cộng đồng sử dụng thôi, nên du di đại đại, sai tới đâu sửa tới đó.
Vậy nên anh em làm nghề như mình cũng không hiểu tại sao mọi người vẫn cứ tin là có AI thì có thể đuổi hết phòng marketing, phòng bán hàng.. mà còn là mảng B2B nữa, người làm kiểm tra tới lui còn làm khách nổi khùng nói gì mấy con AI. Mà thôi, đây chắc cũng là mong muốn thầm kín của tất cả mọi người, các ‘khầy” chỉ cần viết tiêu đề bài viết như vậy là auto triệu view.. haiz…
Rồi giả sử thay luôn đi, vậy giờ ông CEO lại phải đi audit kết quả của tất cả phòng ban, thời gian đâu mà làm chiến lược kinh doanh, đi gặp khách hàng, đi lo trăm công ngàn việc khác (chưa kể pháp lý nhe).
3. YouTube 404 và bài học đừng tin mù quáng AI
6 kênh YouTube trong watchlist của mình thì nó báo toàn bộ không tìm thấykhi đi thu thập tin tức (tức là lỗi 404) .
Tiểu Cường sau nhiều lần bị mình vặn thì lại lý do lý trấu thêm:
“YouTube RSS feed bị lỗi, có thể YouTube đã deprecated.”

Mình kiểm tra lại: kênh vẫn còn sống, video vẫn đăng đều, cũng không phải vấn đề ở YouTube RSS như trên luôn.
Vấn đề là server không resolve được @handle sang Channel ID qua RSS.
Nó còn làm mình thấy lỗi ngứa mắt và đề xuất:
“Xóa 6 channels này khỏi danh sách cho anh.”
Đúng bị thao túng luôn.
Nhưng mình chợt tỉnh lại: “Không. Channels vẫn tồn tại, video vẫn có. Lỗi là ở cách mày gọi. Tìm Channel ID đúng, add lại, test tiếp.”
Kết quả: sau khi chuyển đổi và tìm đúng Channel ID (UCxxxxxxx), harvest chạy bình thường. 60 videos từ 6 channels.

Kinh nghiệm là.. khi tool báo lỗi, đừng vội kết luận “platform kia chết”. Hãy kiểm tra lại từ gốc, truy trace log chi tiết vô. Xác thực tool lỗi gì rồi tính tiếp, còn AI nó đọc lỗi xong nó hay.. nói xạo lắm.
Thật ra không khác con người là mấy, trong quá khứ mình cũng gặp trường hợp này khi làm với một bạn freelancer nọ. Cứ đụng lỗi xíu thì lại bảo “nó không làm được, nó không cho phép”, mình mà bận rộn không để ý thì chắc bỏ qua luôn, nhưng truy lại lịch sử email trao đổi với đối tác thì chỉ cần gửi email nhờ họ trả lời lại API xíu là xong.
4. Cron job chạy nội dung chả giống với kế hoạch
Mình tạo cron job (lập lịch chạy tự động) để Tiểu Cường tự gửi báo cáo mỗi sáng 6h30 và tối 18h30.
Lần chạy đầu tiên: hắn gửi bài vào group, nhưng format sai hoàn toàn. Divider ở cuối thay vì giữa sections. Thừa câu “Đã lưu vào weekly report nhé anh chị!” ở cuối. Tác giả/tương tác/nguồn gộp chung 1 dòng.
Tại sao? Vì cron job chạy như một isolated agent turn, nó không “nhớ” những gì mình đã dặn trong session chat. Nó chỉ đọc cái message trong cron job payload.
Giải pháp: mình nhét toàn bộ template + rules + batch plan vào cron job message. Chi tiết đến mức “copy-paste template này, điền nội dung vào”.

Nghe hình như thừa đúng hôm? Không đâu.
Vì nếu không làm vậy hắn sẽ lại “sáng tạo” theo cách của hắn mỗi lần chạy. Kết quả sẽ khác nhau mỗi ngày.
Trong doanh nghiệp, bạn không muốn nhân viên “sáng tạo” quy trình báo cáo mỗi ngày. Bạn muốn SOP rõ ràng, ai làm cũng ra kết quả giống nhau.
Cron job message chính là SOP cho AI agent.
--> Có lẽ đây là điểm nhiều người mới làm AI Automation hay bỏ qua nhất. Cứ tưởng “chat với AI một lần thì lần sau nó nhớ”, không có đâu.
5. Incremental save, vì thực tế không bao giờ hoàn hảo
Giải pháp cuối cùng mình chốt cho workflow harvest:
1. Chia 8 batches, mỗi batch tối đa 3 creators
2. Sau mỗi batch, lưu kết quả vào file
3. Batch nào lỗi thì retry 1 lần, skip nếu vẫn fail, qua batch tiếp
4. Khi xong hết thì đọc file tổng hợp để chọn bài

Tại sao phức tạp vậy?
Vì trong thực tế, network chập chờn, server quá tải, API thay đổi, rate limit đánh đủ thứ. Bạn không thể giả định mọi thứ sẽ chạy smooth 100%.
Nếu harvest 22 creators cùng lúc và timeout ở creator thứ 15, bạn mất hết 14 content trước đó. Trắng tay.
Nếu harvest incremental, timeout ở batch 5, bạn vẫn có data từ batch 1-4 (~12 creators). Đủ để chọn bài.
Đó là tư duy vận hành và kinh nghiệm làm thực tế, không phải kiểu làm cho có rồi đi lùa đã xong.
Demo chỉ cần chạy được 1 lần đẹp. Vận hành cần chạy được 1000 lần, trong đó 200 lần có lỗi, và hệ thống vẫn cho ra kết quả chấp nhận được.
Giống như nấu cơm gia đình thôi. Bạn nấu 1 nồi cơm khoe Instagram thì dễ, làm tỉ mỉ từng hạt. Nấu cơm cho cả nhà ăn 365 ngày/năm thì khác, phải có quy trình, có “plan B” khi nồi cơm điện hỏng, có cách xử lý khi cơm hơi nhão.
AI mạnh thiệt, nhưng không thay được kinh nghiệm & nghiệp vụ riêng cho từng tổ chức
Sau 3 ngày, cron-job chạy ổn. Mỗi ngày 2 lần, tự động harvest 22 creators, chọn 1 bài phù hợp, format đẹp, gửi vào group.
Nhưng để đạt được điều đó, mình đã phải:
Sửa workflow harvest 3 lần: từ “chạy tất cả” thành “chia batch” rồi “incremental save”
Sửa format bài viết 5 lần: từ “lùa gà” thành “thiếu link” rồi “sai divider” rồi “đúng chuẩn”
Debug YouTube 404: không xóa channels, mà tìm root cause
Viết SOP chi tiết cho cron job: vì agent không “nhớ” context giữa các lần chạy
Tiểu Cường AI Agent không làm sai đâu. Hắn làm đúng những gì hắn biết.
Nhưng “đúng những gì bả biết” khác xa “đủ tốt cho thực tế”.
Và khoảng cách đó.. chính là nơi kinh nghiệm, chính kiến, và tư duy vận hành của con người tạo ra khác biệt.
Nếu bạn đang xem AI như một công cụ để “build nhanh”, mình đồng ý. Nó build nhanh thiệt, giờ ai cũng có thể dùng Claude, Antigravity, Codex có sẵn hoặc dùng GoClaw để build chạy đa kênh.
Nhưng nếu bạn muốn AI “vận hành được”, chạy ổn mỗi ngày, trong môi trường thật, với dữ liệu thật, lỗi thật.. thì bạn cần nhiều hơn là một prompt đẹp ăn ngay trên mạng chia sẻ.
Bạn cần một người đã từng vá lỗ thủng trên con thuyền thật.

Tiện tay.. tiện tay.. mình để ý cái này:
Mấy bạn mới vào nghề khi gặp lỗi thường có 2 phản ứng:
- “Tool/platform có vấn đề, mình bỏ qua đi”
Người lâu năm ăn hành thì:
- “Khoan, kiểm tra lại từ gốc đã”
AI agent hiện tại đang ở mức phản ứng A.
Người vận hành lâu năm ở mức phản ứng B vì họ quan tâm nhiều hơn tính phù hợp và linh hoạt của từng tổ chức chứ không phải lý thuyết suông từ sách ra.
Khoảng cách giữa A và B chính là khoảng cách giữa “demo đẹp” và “production ổn”.
- Còn bạn, khi giao việc cho AI, bạn đang ở mức A hay B?
#voquoccuong #cuonghoaai #aiautomation
Nguồn tham khảo: Case study nội bộ EGANY, workflow harvest content sử dụng GoClaw + Telegram + cron job. Đội quân AI agent của mình gồm Tiểu Cường, Song Nhi, Bảng Đôn..v.v..
Xem sơ vài Use Case mình có cập nhật cho anh chị Doanh Chủ xem tại:
Bài viết đăng lần đầu trên Substack →


