Tính năng Loop mới của Claude Code cho phép bạn lên lịch các tác vụ lặp lại trong tối đa 3 ngày. Cùng tìm hiểu cách hoạt động, giới hạn của nó và khi nào nên sử dụng tính năng này thay vì Scheduled Tasks qua bài viết sau đây!
Claude Code Loop là gì?
Claude Code Loop là một chế độ lập lịch trong Claude Code cho phép bạn cấu hình một tác vụ chạy lặp đi lặp lại theo một khoảng thời gian nhất định, tự động, trong tối đa 72 giờ.
Trong khi một lần chạy Claude Code tiêu chuẩn chỉ thực hiện một lần và thoát, thì một lần chạy Loop sẽ duy trì hoạt động giữa các chu kỳ. Claude sẽ "thức dậy" ở mỗi khoảng thời gian, thực hiện tác vụ, ghi nhật ký đầu ra và quay trở lại chế độ chờ — sau đó lại thức dậy vào thời gian đã lên lịch tiếp theo.
Đây là một mô hình thực thi hoàn toàn khác biệt, và nó thay đổi cách bạn suy nghĩ về những gì Claude Code có thể làm.

Điều gì làm cho Loop khác biệt so với một Cron job đơn giản?
Câu hỏi hiển nhiên: Tại sao không chỉ đặt lệnh Claude Code của bạn vào một cron job? Bạn có thể. Nhưng Claude Code Loop có một vài điểm khác biệt đáng kể:
- Nhận thức ngữ cảnh: Khi chạy ở chế độ Loop, agent nhận thức được rằng nó đang hoạt động trong một ngữ cảnh lặp lại. Nó có thể suy luận về những gì đã xảy ra trong các chu kỳ trước, tham chiếu những đầu ra trước đó và điều chỉnh hành vi của mình cho phù hợp. Một cron job chạy cùng một lệnh tĩnh sẽ không có ngữ cảnh đó — mỗi lần chạy đều là lần chạy đầu tiên.
- Quản lý trạng thái tích hợp: Loop xử lý việc ghi nhật ký và duy trì đầu ra giữa các chu kỳ. Bạn không cần phải xây dựng một wrapper để thu thập đầu ra, đặt tên theo timestamp và lưu trữ ở đâu đó — Loop xử lý cấu trúc đó.
- Tiếp tục có nhận biết lỗi: Khi một chu kỳ thất bại, Loop sẽ ghi lại lỗi và tiếp tục chu kỳ tiếp theo thay vì dừng hoàn toàn quá trình chạy. Một cron job thông thường sẽ thử lại vô thời hạn hoặc dừng lại, tùy thuộc vào cách bạn đã viết nó. Loop có hành vi mặc định có chủ ý ở đây.
- Không cần bảo trì cơ sở hạ tầng: Một cron job yêu cầu máy tính luôn hoạt động, một bộ lập lịch luôn chạy và giám sát để phát hiện các lỗi âm thầm. Loop chạy trong môi trường thực thi của Claude Code mà không cần các yêu cầu vận hành đó.
Góc nhìn của Agent về một chu kỳ chạy lặp
Khi Claude Code chạy ở chế độ lặp, mỗi chu kỳ sẽ diễn ra như sau:
- Claude được kích hoạt theo khoảng thời gian đã lên lịch
- Nó đọc trạng thái hiện tại của bất cứ thứ gì nó đang làm việc cùng — file, API, dữ liệu
- Nó tùy chọn xem lại nhật ký đầu ra của chu kỳ trước để hiểu những gì đã thay đổi
- Nó thực thi tác vụ như đã được định nghĩa trong cấu hình
- Nó ghi đầu ra và ghi nhật ký kết quả
- Nó tạm ngừng hoạt động cho đến khoảng thời gian tiếp theo
Agent không chạy giữa các chu kỳ — nó không tiêu thụ tài nguyên tính toán hoặc API credit trong khi chờ đợi. Điều này giúp duy trì hiệu quả sử dụng. Bạn đang trả tiền cho việc thực thi thực tế, chứ không phải thời gian nhàn rỗi.
Tại sao thời gian tối đa là 3 ngày?
Giới hạn 3 ngày (72 giờ) đối với các lần chạy Claude Code Loop là một lựa chọn thiết kế có chủ ý, chứ không chỉ là một giới hạn kỹ thuật tùy ý.
- Sự giám sát của con người: Anthropic luôn nhấn mạnh việc xây dựng các công cụ AI với sự giám sát của con người. Giới hạn cứng đối với các lần chạy tự động của agent buộc phải có một điểm xem xét tự nhiên. Nếu tác vụ của bạn vẫn cần thiết sau 72 giờ, bạn sẽ khởi động lại — và việc khởi động lại đó là cơ hội để kiểm tra những gì đã xảy ra, phát hiện bất kỳ sự cố nào và cập nhật định nghĩa tác vụ.
- Ngăn ngừa chi phí vượt tầm kiểm soát: Một vòng lặp được cấu hình sai chạy thường xuyên trên các ngữ cảnh lớn có thể nhanh chóng tiêu tốn API credit. Giới hạn 3 ngày giúp giảm thiểu chi phí tối đa cho bất kỳ lần chạy nào.
- Tích lũy lỗi: Trong các quy trình tự động chạy dài, những lỗi nhỏ có thể tích lũy. Một tác vụ chỉ hơi sai lệch vào ngày đầu tiên có thể sai lệch đáng kể vào ngày thứ bảy. Giới hạn 3 ngày ngăn chặn loại sai lệch này chạy mà không bị phát hiện.
- Bề mặt an toàn: Các agent tự động thực hiện hành động trong môi trường của bạn — ghi file, gọi API, thực thi script — có bề mặt an toàn lớn hơn so với các agent chỉ đọc. Giới hạn cửa sổ chạy sẽ giảm thiểu phạm vi ảnh hưởng nếu có điều gì đó không ổn.
Cách đúng để hiểu về giới hạn 3 ngày: Đó không phải là một hạn chế cần phải khắc phục; đó là một chu kỳ xem xét được tích hợp vào hệ thống.
Cách cấu hình và khởi chạy Claude Code Loop
Việc thiết lập một vòng lặp bao gồm việc xác định tác vụ, cấu hình lịch trình và khởi chạy. Dưới đây là cách tiếp cận từng bước.
Điều kiện tiên quyết
Trước khi thiết lập Loop:
- Claude Code đã được cài đặt: Bạn cần cài đặt Claude Code và xác thực bằng Anthropic API key hợp lệ. Chạy lệnh
claude --versionđể xác nhận thiết lập của bạn. - Đủ API credit: Các vòng lặp tích lũy việc sử dụng token qua mỗi chu kỳ. Hãy đảm bảo bạn có đủ credit cho lần chạy ước tính.
- Một tác vụ được xác định rõ ràng, có thể lặp lại: Loop hoạt động tốt nhất với các tác vụ có logic rõ ràng, có thể lặp lại. Các tác vụ không rõ ràng hoặc không xác định không phù hợp với ngữ cảnh theo lịch trình.
- Kế hoạch lưu trữ đầu ra: Biết nơi Loop sẽ ghi đầu ra của nó — một file cụ thể, một thư mục hoặc một quy trình tiếp theo.
Bước 1: Xác định nhiệm vụ một cách chính xác
Phần quan trọng nhất của việc thiết lập Loop không phải là cấu hình — mà là định nghĩa nhiệm vụ.
Một tác vụ Loop tốt cần đáp ứng các tiêu chí sau:
- Có thể lặp lại mà không gây nhầm lẫn: Cùng một lệnh phải có ý nghĩa khi thực thi vào Thứ Hai, Thứ Ba và Thứ Năm.
- Giới hạn mỗi chu kỳ: Mỗi lần thực thi có điểm bắt đầu và kết thúc rõ ràng, không phải là sự khám phá không giới hạn.
- Tính bất biến (Idempotent) nếu có thể: Chạy cùng một chu kỳ hai lần không nên gây ra các vấn đề như ghi trùng lặp hoặc ghi file dư thừa.
- Cụ thể về đầu vào và đầu ra: Hãy nêu rõ dữ liệu mà Claude đọc và kết quả được lưu trữ ở đâu.
Trước tiên, hãy viết nhiệm vụ bằng ngôn ngữ đơn giản, sau đó tinh chỉnh nó. Ví dụ: “Mỗi giờ, đọc các mục nhập trong giờ cuối cùng từ /var/log/app.log. Xác định bất kỳ dòng nào chứa ERROR hoặc FATAL. Tóm tắt những lỗi nào đã xuất hiện, mỗi lỗi xảy ra bao nhiêu lần và vào thời điểm nào. Thêm bản tóm tắt vào error-digest.md với tiêu đề timestamp. Nếu không có lỗi nào xuất hiện, hãy ghi một dòng duy nhất ghi lại việc kiểm tra thành công”.
Đó là một tác vụ Loop tốt: Cụ thể, có giới hạn, có thể dự đoán được.
Bước 2: Thiết lập khoảng thời gian
Việc lựa chọn khoảng thời gian ảnh hưởng đến cả tính hữu ích và chi phí của lần chạy Loop. Các mẫu phổ biến:
- Khoảng thời gian ngắn (10–30 phút): Dành cho các tác vụ giám sát cần phản hồi nhanh — cảnh báo bảo mật, phát hiện lỗi, kiểm tra sức khỏe. Chi phí API cao hơn mỗi ngày.
- Khoảng thời gian trung bình (1–6 giờ): Dành cho các tác vụ theo dõi cần độ chi tiết theo giờ hoặc nhiều giờ — phân tích nhật ký, thăm dò API, xử lý tăng dần.
- Khoảng thời gian dài (12–24 giờ): Dành cho các tác vụ vận hành hàng ngày — tóm tắt hàng đêm, báo cáo hàng ngày, kiểm tra dependency. Chi phí thấp nhất cho mỗi cửa sổ chạy.
Chọn khoảng thời gian dài nhất vẫn đáp ứng nhu cầu của bạn. Chạy các chu kỳ thường xuyên hơn mức cần thiết chỉ là lãng phí chi phí API.
Bước 3: Cấu hình đầu ra và hành vi lỗi
Quyết định trước khi khởi chạy:
- Nơi lưu trữ đầu ra: Một đường dẫn file cụ thể, một thư mục, hoặc đầu ra được kích hoạt đến một script hoặc service khác
- Định dạng nhật ký: Các mục nhật ký có timestamp dễ xem xét hơn so với đầu ra không được gắn nhãn
- Khi xảy ra lỗi: Lỗi chu kỳ có nên dừng quá trình chạy hay tiếp tục sang chu kỳ tiếp theo? Hành vi mặc định là ghi nhật ký và tiếp tục — hãy ghi đè lên điều này nếu tác vụ của bạn có sự phụ thuộc giữa các chu kỳ
Bước 4: Khởi chạy Loop
Sau khi cấu hình hoàn tất, hãy khởi chạy Loop từ terminal. Claude Code sẽ xác nhận thiết lập — định nghĩa tác vụ, khoảng thời gian, tổng thời lượng và thời gian thực thi theo lịch trình đầu tiên — trước khi bắt đầu.
Sau khi khởi chạy, bạn không cần phải ở lại trong phiên terminal. Các lần chạy Loop sẽ tiếp tục chạy dưới dạng một tiến trình nền. Bạn có thể đóng terminal và tác vụ sẽ tiếp tục chạy theo lịch trình của nó.
Bước 5: Giám sát một vài chu kỳ đầu tiên
Đừng rời đi ngay sau khi khởi chạy. Quan sát hai hoặc ba chu kỳ đầu tiên thực hiện để xác nhận:
- Tác vụ đang chạy đúng như đã định nghĩa
- Đầu ra đang được ghi vào đúng vị trí
- Không có lỗi bất ngờ nào xuất hiện
- Chất lượng đầu ra đúng như mong đợi
Việc xem xét chu kỳ đầu tiên rẻ hơn nhiều so với việc phát hiện lỗi cấu hình ở chu kỳ thứ 40.
Bước 6: Xem xét khi kết thúc quá trình chạy
Khi cửa sổ 72 giờ đóng lại, Loop sẽ tự động kết thúc. Tại thời điểm này:
- Xem lại toàn bộ nhật ký đầu ra của chu kỳ
- Kiểm tra xem có chu kỳ nào bị lỗi và tại sao
- Đánh giá xem định nghĩa tác vụ có cần cập nhật hay không
- Quyết định xem có nên khởi động lại Loop trong khoảng thời gian 3 ngày khác hay không
Bước xem xét này là điểm kiểm tra giám sát mà giới hạn 3 ngày được thiết kế để tạo ra. Hãy sử dụng nó!
Hướng dẫn AI
Học IT
Hàm Excel