Cloud scheduled tasks: chạy Claude Code tự động theo lịch, API hay sự kiện GitHub
Tóm tắt
Cloud scheduled task (trước là routines) chạy Claude Code trên cloud Anthropic theo lịch, theo HTTP POST hoặc sự kiện GitHub, kể cả khi laptop tắt. Viết prompt rõ tiêu chí thành công, gỡ connector thừa, nhớ cron theo UTC.
Mỗi sáng review PR mở, mỗi tối dọn backlog, mỗi tuần kiểm tra dependency lỗi thời: những việc này đều làm được bằng Claude Code, nhưng chạy trên laptop thì phải để máy mở và nhớ bật. Cloud scheduled tasks (trước đây gọi là routines) đóng gói một prompt, một hoặc nhiều repo và các connector thành cấu hình chạy tự động trên hạ tầng cloud của Anthropic, nên vẫn chạy khi bạn gập laptop. Tính năng đang ở dạng research preview.
Ba loại trigger
| Trigger | Chạy khi | Ví dụ |
|---|---|---|
| Schedule | Theo lịch hằng giờ/ngày/tuần, cron tuỳ chỉnh, hoặc một lần vào thời điểm định trước | Dọn backlog mỗi tối ngày thường |
| API | Có HTTP POST tới endpoint riêng của task, kèm bearer token | Hệ thống cảnh báo gọi vào để điều tra sự cố |
| GitHub | Có sự kiện repo như pull request, release | Review mọi PR mới |
Một task có thể kết hợp nhiều trigger, ví dụ task review PR vừa chạy mỗi đêm, vừa được script deploy gọi, vừa phản ứng với mỗi PR mới.
Tạo task
Trên web tại claude.ai/code/routines, hoặc ngay trong CLI:
/schedule daily PR review at 9am
/schedule tomorrow at 9am, summarize yesterday's merged PRs
/schedule in 2 weeks, open a cleanup PR that removes the feature flag
Cron tuỳ chỉnh (ví dụ 0 */2 * * * cho mỗi 2 giờ) đặt trong hộp thoại sửa task. Lưu ý: cron 5 trường viết theo giờ UTC, nên 9 giờ sáng Việt Nam là 0 2 * * *.
Task chạy trong môi trường nào?
- Mỗi lần chạy là một phiên Claude Code cloud đầy đủ: chạy shell, dùng skill, gọi connector.
- Repo được clone mới mỗi lần; thay đổi được đẩy lên nhánh có tiền tố
claude/. - Môi trường mặc định có mạng "Trusted": chỉ cho phép danh sách domain mặc định (package registry, API cloud…).
- Mọi connector MCP bạn đã kết nối được đưa vào mặc định. Hãy gỡ những cái task không cần.
- Task thuộc về tài khoản cá nhân, không chia sẻ cho đồng đội, và tính vào usage của bạn.
Trigger API: nối với hệ thống cảnh báo
curl -X POST "$FIRE_URL" \
-H "Authorization: Bearer $ROUTINE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"text": "Alert: error rate 5xx tăng 3 lần ở service payments"}'
Token chỉ hiện một lần khi tạo, phải lưu vào nơi an toàn. Trường text chỉ được dùng nếu prompt của task chủ động nhắc tới payload; nếu không, task coi nó là dữ liệu chứ không phải lệnh.
Khi nào dùng cái nào?
| Công cụ | Chạy ở đâu | Hợp với |
|---|---|---|
| Cloud scheduled task | Cloud Anthropic | Việc phải chạy cả khi máy tắt; phản ứng sự kiện GitHub/API |
| Desktop scheduled task | Máy bạn | Cần file local, thay đổi chưa commit |
/loop | Phiên CLI đang mở | Thăm dò nhanh trong lúc làm việc |
| GitHub Actions | CI của bạn | Gắn với cấu hình workflow của repo |
Rủi ro và lưu ý
- Chạy tự động, không ai hỏi lại: prompt phải nói rõ "thành công là gì" và làm gì với kết quả (comment PR, nhắn Slack…).
- Quyền qua connector là quyền của bạn: mọi thứ task làm qua GitHub hay Slack đều mang danh tài khoản bạn.
- Giới hạn số lần chạy theo giờ, kể cả lần chạy một lần; sự kiện GitHub vượt giới hạn sẽ bị bỏ.
- Đang là research preview: hành vi, giới hạn và API có thể đổi.
Áp dụng thế nào?
- Dev: Bắt đầu với một task nhỏ: "9 giờ sáng tóm tắt PR được merge hôm qua", chỉ giữ connector GitHub.
- Tech Lead: Nối trigger API với hệ thống cảnh báo để Claude điều tra sơ bộ và để sẵn báo cáo khi on-call mở máy.
- PM: Lên lịch bản tin tiến độ hằng tuần từ issue tracker, thay cho việc tự tổng hợp thủ công.
Nguồn & tham khảo
- Automate work with scheduled tasks — Claude Code Docs