Claude Code Scheduled Tasks - 예약 작업

프롬프트를 등록해두면 매일, 매주, 매시간 단위로 Claude가 자동 실행. 코딩 에이전트가 단발성 대화 도구에서 상시 가동되는 자동화 워커로 전환.

핵심 컨셉

  • 반복 실행 — 프롬프트를 등록하면 지정한 간격으로 자동 실행
  • 세션 스코프 — 현재 Claude Code 프로세스 내에서 동작, 종료 시 사라짐
  • 모든 도구 접근 — 연결된 모든 도구, 플러그인, MCP 서버에 접근 가능

/loop 명령어

가장 빠른 예약 방법:

/loop 5m check if the deployment finished and tell me what happened

Interval 문법

형식예시파싱된 간격
앞에 토큰/loop 30m check the build30분마다
뒤에 every 절/loop check the build every 2 hours2시간마다
간격 없음/loop check the build기본 10분마다

지원 단위: s (초), m (분), h (시간), d (일)

초는 분으로 반올림 (cron이 1분 단위이므로)

다른 커맨드 루프

/loop 20m /review-pr 1234

매번 /review-pr 1234를 실행한 것처럼 동작.


일회성 리마인더

자연어로 설정:

remind me at 3pm to push the release branch
in 45 minutes, check whether the integration tests passed

실행 후 자동 삭제.


작업 관리

what scheduled tasks do I have?
cancel the deploy check job

내부 도구

도구용도
CronCreate새 작업 예약 (5-field cron expression, 프롬프트, 반복 여부)
CronList모든 예약 작업 나열 (ID, 스케줄, 프롬프트)
CronDeleteID로 작업 취소
  • 각 작업은 8자리 ID
  • 세션당 최대 50개 작업

실행 방식

  • 매 초마다 due 작업 확인 → 낮은 우선순위로 큐에 추가
  • Claude가 응답 중이면 대기, 턴 사이에 실행
  • 모든 시간은 로컬 타임존 기준

Jitter

모든 세션이 동시에 API를 치는 것을 방지:

  • 반복 작업: 최대 주기의 10% (최대 15분) 늦게 실행
  • 일회성 작업: 정시(00분, 30분)에 예약된 경우 최대 90초 일찍 실행

정확한 타이밍이 필요하면 :00이나 :30 대신 :03 같이 다른 분 사용

3일 만료

반복 작업은 생성 후 3일이 지나면 자동 만료. 마지막으로 한 번 실행 후 삭제.


Cron Expression

5-field 표준: minute hour day-of-month month day-of-week

예시의미
*/5 * * * *5분마다
0 * * * *매시 정각
7 * * * *매시 7분
0 9 * * *매일 오전 9시 (로컬)
0 9 * * 1-5평일 오전 9시
30 14 15 3 *3월 15일 오후 2:30

요일: 0 또는 7 = 일요일, 6 = 토요일

L, W, ?, MON, JAN 등 확장 문법은 미지원


Remote 세션

Remote 세션을 선택하면 Anthropic Cloud에서 실행:

  • 앱을 닫거나 PC를 꺼도 작업 계속
  • 내구성 있는 스케줄링 필요 시 Desktop scheduled tasks 또는 GitHub Actions 사용

제한사항

제한설명
세션 스코프Claude Code 실행 중에만 동작, 종료 시 취소
No catch-upClaude가 바쁜 동안 놓친 실행은 보충 없음
No persistence재시작하면 모든 세션 작업 삭제

내구성 있는 스케줄링


비활성화

CLAUDE_CODE_DISABLE_CRON=1

의의

코딩 에이전트가 단발성 대화 도구에서 상시 가동되는 자동화 워커로 전환되는 흐름이 본격화.


Sources