2026-05-21 OpenClaw 내장 cron: 격리 세션, 작업별 Webhook 전달, 게이트웨이 재시작 스태거 — 헤드리스 임대 Apple Silicon 클라우드 Mac (HK / JP / KR / SG / US)
홍콩·도쿄·서울·싱가포르·미국에서 Mac mini M4를 임대하고 헤드리스 SSH로 OpenClaw를 운영하는 팀은 대화형 지원에서 예약 자동화로 넘어간다—야간 저장소 다이제스트, 스탠드업 요약, 인증서 만료 스캔, CI 실패를 Slack 또는 내부 Webhook으로 보내기. OpenClaw 내장 cron은 게이트웨이 프로세스 안에서 동작하며 ~/.openclaw/cron/jobs.json에 저장하고 격리 세션 또는 메인 세션 하트비트로 에이전트를 깨운다. 본 2026-05-21 가이드 정책: 도구를 많이 쓰는 백그라운드는 격리 cron, 가벼운 알림은 메인, 일정은 최소 2–5분 분산, 작업별 Webhook POST는 TLS+공유 시크릿만(공유 임대에서 평문 HTTP 금지). 세션 결정표, 일정+Webhook 표, 재시작 스태거, 8단계, 트리아지를 제공하며 onboard + doctor, launchd cron 기준, MCP 도구 정책과 연결한다.
임대 헤드리스 Mac에서 게이트웨이 cron이 필요한 경우
macOS launchd만으로는 셸은 실행되지만 에이전트 맥락·모델 라우팅·채널 전달까지 조율할 수 없다. OpenClaw cron은 그 간극을 메운다—일정은 게이트웨이와 함께하고 jobs.json이 온전하면 재시작 후 복구되며 출력은 채팅 또는 HTTP로 간다. 임대 호스트의 전형적 실패는 운영 사고—배포 직후 같은 분에 다섯 작업, 복구 시 연체 일괄 실행, 스테이징 Webhook이 프로덕션 티켓을 변경.
- 플랫폼 SRE는 별도 스케줄러 VM 없이 JSON을 내부 수집기로 POST하고 싶다.
- 엔지니어링 매니저는 APAC 저장소에 가까운 도쿄·싱가포르에서 ripgrep+이슈 요약이 필요하다.
- 보안은 cron이 사람 메인 세션의 도구 승인을 물려받지 않도록 격리를 요구한다.
MacXCode 홈 지역 맵에서 Webhook VPC RTT가 최소인 곳에 게이트웨이를 두고 쓰기 도구 허용 여부를 문서화한다.
격리·메인·이름 있는 cron 대상
격리는 전용 cron 턴—파일 도구·MCP·셸 래퍼. 메인은 다음 하트비트에 실리는 가벼운 알림. 이름 있는 영속 세션은 주간 운영 일지처럼 이력 축적. 잘못 고르면 무출력(격리 디스패치 버그) 또는 사람 채팅 오염.
| 대상 | 적합 | 피할 때 | 임대 메모 |
|---|---|---|---|
| 격리 세션 | 야간 다이제스트, MCP 스캔 | 같은 스레드 즉시 응답 | 한 대 M4에서병렬 격리 ≤2 |
| 메인+하트비트 | 리마인더, 캘린더 | xcodebuild·대규모 ripgrep |
입력약 2k token |
| 이름 있는 영속 | 다주 운영 일지 | 일회성 맥락 컴플라이언스 | 주간 OPENCLAW_STATE_DIR 스냅샷 |
--cron은2–5분분산. 동시 시작은 429—API 백프레셔 참고.
일정 유형·Webhook·전달 매트릭스
게이트웨이 cron은 --at(1회 ISO 또는 20m 등), --every, --cron(5/6필드+IANA TZ). 1회 성공 후 자동 삭제는 감사 전 확인. 작업별 Webhook 전달(2026.2.x+)는 HTTPS로 실행 요약 POST—인바운드 OpenClaw Webhook과 동일 TLS/HMAC.
| 일정 | 예 | 전달 | 헤드리스 체크 |
|---|---|---|---|
--cron+TZ |
0 9 * * 1-5 Asia/Tokyo |
Slack+webhook | 호스트 TZ와 --tz |
--every |
4h 헬스 |
webhook만 | 멱등, runId |
--at |
배포 후 45m |
격리 | 종료 코드를 launchd 로그에 |
게이트웨이 재시작·연체·jobs.json
Cron은게이트웨이 내부—launchctl kickstart -k는 스케줄러 재시작이기도 하다. 중단 중 연체 격리 작업은 기동 시 함께 큐—신규 빌드는 스태거하지만 재시작 구간은 사고로 본다. 업그레이드 전 jobs.json·상태 트리 복사(세션 체크포인트). 같은 초에 많은 cron ID는 429 전조.
npm 후 openclaw doctor. 격리만 큐되고 출력 없으면 일시 메인, 쓰기 도구 중단, 프로덕션 임대에 조용한 일정 남기지 말 것.
EnvironmentVariables.
Apple Silicon 임대에서 cron 8단계
openclaw doctor·launchctl print gui/$(id -u)/com.openclaw.gateway.- 첫 변경 전
jobs.json·OPENCLAW_STATE_DIR백업. - 읽기 전용 다이제스트를격리로, 분 오프셋(예 7분).
- HMAC HTTPS webhook, 스테이징 2xx.
--at 15m스모크, 자동 삭제 감사 적합성.- 유지보수 창 재시작, 스태거 로그.
- 킬 스위치: 작업 비활성, kickstart, webhook 중단 확인.
- 7일 후 token 텔레메트리로 용량 조정 또는 두 번째 임대.
스태거 예(도쿄 평일 아침, 격리):
openclaw cron add --cron "12 9 * * 1-5" --tz Asia/Tokyo --session isolated --message "야간 CI 실패 요약. 읽기 전용 도구." --webhook https://hooks.internal.example/ci-digest
헤드리스 임대에서 cron 오작동
| 증상 | 원인 | 다음 |
|---|---|---|
| 한 번도 안 돎 | 게이트웨이 다운·TZ 불일치 | launchd, --tz vs date |
| 기동 시 몰림 | 연체 백로그 | 분산·업그레이드·스태거 로그 |
| webhook 401/403 | plist 키 미반영 | 환경 변수·kickstart |
| 격리 큐만 | 디스패치 회귀 | 일시 메인·doctor·upstream |
FAQ
저장 위치? ~/.openclaw/cron/jobs.json—업그레이드 전 백업.
야간 보고? 도구 많으면 격리, 가벼우면 메인+하트비트.
재시작 후 홍수? 연체 일괄 추격—분산·기동 스태거 빌드 확인.
프로덕션 webhook 전 블로그·도움말에서 SSH 확인.
Mac mini M4 임대가 cron+webhook에 맞는 이유
M4는 게이트웨이+격리 cron 2개를 예측 가능한 통합 메모리에—ripgrep 시 x86 VM처럼 스왑하기 어렵다. 홍콩·도쿄는 APAC webhook RTT, 미국은 미국 시간대. 두 번째 데스크 Mac 없이 24/7, 텔레메트리로 두 번째 임대 분할.요금 비교, 도움말에서 게이트웨이 리허설, GUI만 VNC.