Once your OpenClaw Gateway is healthy, the next reliability layer is scheduled work: channel probes, housekeeping, and recurring reports. This guide defines pre-flight gates, a minimal openclaw cron loop (when your CLI exposes it), UTC-first timezone rules, and a cold-start checklist after restarts, including why a dedicated remote Mac is a better home for always-on automation.
Make “ready to schedule” an explicit gate, not a default.
| Check | Pass | If fail |
|---|---|---|
| Gateway | openclaw gateway status healthy | fix bind/service first |
| Disk | >20% free on log volume | rotate or expand |
| Doctor | no blocking findings | resolve tokens/config drift |
| Channels | probe succeeds | do not schedule channel-dependent jobs yet |
Assume your build ships openclaw cron subcommands aligned with community docs (cron list, cron status). Order: list → status → enable one job → watch one fire → document. Capture stdout for upgrades.
Store schedules in UTC; print offsets in logs. For “09:00 weekday” rules, name the city whose 09:00 you mean.
Tip: snapshot openclaw cron list before and after each upgrade.
Verify process, registrations, and last-fired timestamps. If timestamps stall, inspect disk and permissions before blaming the scheduler. Cross-read the Gateway troubleshooting runbook.
Laptops sleep; servers should not. Colocating Gateway and scheduled jobs on dedicated Apple Silicon removes power-policy noise. See the unattended launchd/systemd checklist.
Use OS cron for machine hygiene; use OpenClaw schedulers for tasks that need session context and channel credentials. Serialize with locks if both touch the same script.
openclaw gateway status openclaw doctor openclaw cron list || true openclaw cron status || true openclaw logs --follow
OS cron lacks first-class awareness of OpenClaw session state and channel tokens; upgrades can silently break wrapper scripts. MACCOME dedicated remote Macs give stable power, disks, and regions so Gateway plus schedules stay boringly correct.
프로브는 저비용·멱등이며 수동 작업과 병행 가능해야 합니다. 하우스키핑은 로그 로테이션·캐시 정리 등으로 한정하고 사용자 가변 상태와 공유하지 않습니다. 업무 플로우(일일 요약 등)에는 owner·재시도 예산·멱등 키가 필요합니다.
외부 API에는 지수 백오프와 지터를 적용하고 작업명별 HTTP 분포를 기록해 429 증가를 조기에 감지합니다. 모델 프로바이더는 대화형과 배치를 분리합니다.
「UTC 기준 일일 다이제스트는 예정 시각 +15분 이내」 같은 SLO를 두고, 성공 로그 부재도 알립니다.
관리자 CLI와 분리된 최소 권한 자격증명, 좁은 채널 권한, 업그레이드 전 동일 볼륨 백업을 요구합니다.
신규 작업을 반주기로 돌리며 구 타이머 지표와 비교한 뒤 이주 후 종료합니다. 동일 SQLite/JSON 이중 쓰기 금지.
enqueue·픽업·채널 전송·모델 호출·영속화까지 run_id로 상관관계를 유지하고, 큐 깊이·가장 오래된 대기 시간을 함께 기록합니다. CPU는 평온한데 깊이만 증가하면 외부 API나 파일 잠금을 의심합니다.
노트북 수면·VM 일시정지는 분 경계 작업을 놓칩니다. 권위 스케줄러는 상시 가동 호스트로 옮기고, 누락 허용 시 보강 정책을 문서화합니다. NTP 상태를 주간 점검에 포함합니다.
공유 개발기에서는 재시작이 협상 비용이 됩니다. Gateway+cron을 전용 원격 Mac으로 분리하면 유지보수 창과 스냅샷 전략이 단순해집니다. MACCOME 6개 리전 독점 노드는 변동성을 줄이기 위한 인프라입니다.
영향 범위, 롤백, 의존 서비스, 드라이런 가능 여부를 분기별로 갱신합니다.
FAQ
Jobs vanished after upgrade?
Diff config volumes and re-run doctor. Public entry: home.
Conflict with systemd timers?
Partition scripts or add file locks; keep business semantics in OpenClaw.
Disk full, no logs?
Fix log rotation and mounts before raising cadence.