Bỏ qua để đến nội dung

Lịch cron

Bestie có thể chạy tác vụ theo lịch mà không cần gắn trực tiếp với một kênh chat. Dùng cron schedules cho reminder chính xác, kiểm tra định kỳ và automation nền cần chạy theo thời gian định sẵn.

Cron schedules được lưu trong SQLite memory store local. Scheduler chạy mỗi job đến hạn như một Bestie chat turn riêng, dùng prompt đã lưu trong schedule.

Dùng cron schedules khi tác vụ cần thời điểm chạy rõ ràng:

  • Check-in hằng ngày hoặc hằng tuần.
  • Nhắc việc đúng giờ.
  • Kiểm tra project, inbox hoặc hệ thống định kỳ.
  • Agent turn chạy nền độc lập với Telegram, CLI hoặc web session.

Với các follow-up phụ thuộc nhiều vào ngữ cảnh chat gần đây, tương tác qua channel bình thường vẫn có thể phù hợp hơn.

Type Value Dùng khi
interval 30s, 5m, 1h, 2d Lặp theo khoảng thời gian.
cron_expr 0 8 * * * Lịch 5 trường kiểu cron.
once 2026-12-25T08:00:00Z Chạy một lần tại timestamp ISO trong tương lai.

Interval phải dương và không dài hơn 365 ngày. Cron expression dùng 5 trường: phút, giờ, ngày trong tháng, tháng, ngày trong tuần.

Interactive:

Terminal window
bestie cron add

Hoặc truyền đủ giá trị:

Terminal window
bestie cron add \
--name daily-priority-check \
--type cron_expr \
--schedule "0 9 * * *" \
--prompt "Tóm tắt ưu tiên hôm nay từ memory và project đang active."

Gửi kết quả về channel cụ thể:

Terminal window
bestie cron add \
--name morning-check-in \
--type cron_expr \
--schedule "0 8 * * *" \
--channel telegram:123456789 \
--prompt "Gửi morning check-in ngắn gọn."

Destination hợp lệ là telegram:<userId> hoặc zalo:<userId>. Nếu không đặt --channel, Bestie thử gửi về owner Telegram/Zalo đã cấu hình khi token có sẵn.

Terminal window
bestie cron list
bestie cron logs
bestie cron logs 3
bestie cron toggle 3
bestie cron remove 3
bestie cron rm 3

List hiển thị ID, tên, type/value, channel, lần chạy tiếp theo và trạng thái. Logs lưu kết quả OK hoặc ERR; output thành công được cắt ngắn trước khi lưu.

Chạy foreground:

Terminal window
bestie cron run

Scheduler dừng khi nhận Ctrl+C, SIGINT, hoặc SIGTERM. Để chạy lâu dài trong nền:

Terminal window
bestie daemon start --channel cron
bestie daemon status --channel cron

Xem thêm Chạy Bestie trong nền để chọn daemon hoặc user service theo hệ điều hành.

Mỗi sáng lúc 09:00, tóm tắt ưu tiên trong ngày.
Mỗi ngày làm việc lúc 18:00, kiểm tra task nào cần follow-up.
Mỗi 30 phút, chạy health check nhẹ.
Tới một thời điểm cụ thể, gửi reminder về kênh đã cấu hình.

Cron jobs nên tuân theo cùng mô hình approval của Bestie:

  • Các kiểm tra read-only có thể chạy tự động nếu đã cấu hình.
  • Hành động external như gửi tin nhắn, đăng công khai, tiêu tiền hoặc đổi thiết lập tài khoản vẫn nên cần approval trừ khi owner cấu hình rõ ràng khác đi.
  • Job định kỳ nên nhỏ, rõ phạm vi và dễ audit để owner biết job đã chạy gì và vì sao.

Giữ scheduled task nhỏ và cụ thể:

name: daily-priority-check
schedule: 0 9 * * *
action: yêu cầu agent tóm tắt ưu tiên hôm nay từ memory và project đang active

Với workflow rủi ro cao, chỉ schedule bước review và yêu cầu approval trước khi hành động.