logo

Claude Code Desktop에서 반복 작업 예약하기

예약된 작업은 선택한 시간과 빈도에 따라 새 세션을 자동으로 시작합니다. 일일 코드 리뷰, 종속성 업데이트 확인 또는 캘린더와 받은편지함에서 정보를 가져오는 아침 브리핑과 같은 반복 작업에 사용합니다.

Desktop 앱의 루틴(Routines) 페이지를 통해 로컬 예약된 작업과 원격 루틴을 모두 만들 수 있습니다. 로컬 작업은 사용자의 머신에서 실행되며 파일과 도구에 직접 접근할 수 있지만, 앱이 열려 있고 컴퓨터가 깨어 있을 때만 실행됩니다. 원격 루틴은 컴퓨터가 꺼져 있어도 Anthropic 관리 클라우드 인프라에서 실행되며, API 호출이나 GitHub 이벤트에 대해서도 실행될 수 있습니다. 이 페이지는 로컬 예약된 작업을 다룹니다. 원격 루틴과 해당 트리거 옵션에 대해서는 루틴을 참조하세요.

예약 옵션 비교

Claude Code는 반복 작업이나 일회성 작업을 예약하는 세 가지 방법을 제공합니다:

클라우드Desktop/loop
실행 위치Anthropic 클라우드내 머신내 머신
컴퓨터가 켜져 있어야 함아니요
열린 세션 필요아니요아니요
재시작 후 지속만료되지 않은 경우 --resume에서 복원
로컬 파일 접근아니요(새 클론)
MCP 서버작업별로 구성한 커넥터설정 파일 및 커넥터세션에서 상속
권한 프롬프트아니요(자율 실행)작업별로 구성 가능세션에서 상속
사용자 지정 일정CLI에서 /schedule 사용
최소 간격1시간1분1분

머신 없이도 안정적으로 실행되어야 하는 작업에는 클라우드 작업을 사용합니다. 로컬 파일과 도구에 접근해야 할 때는 Desktop 작업을 사용합니다. 세션 중 빠르게 폴링해야 할 때는 /loop 를 사용합니다.

기본적으로 예약된 작업은 커밋되지 않은 변경 사항을 포함하여 작업 디렉토리의 현재 상태에 대해 실행됩니다. 작업을 만들 때 worktree 토글을 활성화하여 각 실행이 자신의 격리된 Git worktree를 갖도록 하면, 병렬 세션과 동일한 방식으로 작동합니다.

예약된 작업 만들기

사이드바에서 루틴(Routines) 을 클릭한 다음 새 루틴(New routine) 을 클릭하고 로컬(Local) 을 선택합니다. 다음 필드를 구성합니다:

필드설명
이름작업의 식별자입니다. 소문자 kebab-case로 변환되며 디스크의 폴더 이름으로 사용됩니다. 작업 전체에서 고유해야 합니다.
설명작업 목록에 표시되는 짧은 요약입니다.
지침작업이 실행될 때 Claude가 수행해야 할 작업입니다. 프롬프트 상자의 다른 메시지를 작성하는 것과 동일한 방식으로 작성합니다. 지침 입력에는 권한 모드 및 모델에 대한 선택기가 포함되어 있으며, 아래에서 작업 폴더를 선택하고 격리된 worktree에서 실행할지 여부를 선택합니다.
일정작업이 실행되는 빈도입니다. 아래의 예약 옵션을 참조하세요.

작업을 저장하기 전에 폴더가 필요합니다. 아직 해당 폴더를 신뢰하지 않은 경우 Desktop은 저장하기 전에 폴더를 신뢰하도록 요청합니다.

모든 세션에서 원하는 작업을 설명하여 작업을 만들 수도 있습니다. 예를 들어, "매일 아침 9시에 실행되는 일일 코드 리뷰 설정"은 반복 작업을 만들고, "내일 오후 3시에 배포 확인을 상기시켜 줘"는 실행 후 자신을 비활성화하는 일회성 작업을 만듭니다.

예약 옵션

일정 컨트롤에서 사전 설정을 선택합니다:

  • 수동(Manual): 일정이 없으며, 지금 실행(Run now) 을 클릭할 때만 실행됩니다. 요청 시 트리거하는 프롬프트를 저장하는 데 유용합니다.
  • 매시간(Hourly): 매시간 실행됩니다.
  • 매일(Daily): 시간 선택기를 표시하며, 기본값은 현지 시간 오전 9:00입니다.
  • 평일(Weekdays): 매일(Daily)과 동일하지만 토요일과 일요일을 건너뜁니다.
  • 매주(Weekly): 시간 선택기와 요일 선택기를 표시합니다.

15분마다, 매월 1일, 또는 특정 미래 시간의 일회성 실행과 같이 선택기가 제공하지 않는 간격의 경우, Desktop의 모든 세션에서 Claude에게 일정을 설정하도록 요청합니다. 일반 언어를 사용합니다. 예를 들어, "6시간마다 모든 테스트를 실행하는 작업을 예약해 줘"입니다.

예약된 작업이 실행되는 방식

예약된 작업은 사용자의 머신에서 실행됩니다. Desktop은 앱이 열려 있는 동안 매분 일정을 확인하고 열려 있는 수동 세션과 독립적으로 작업이 만료되면 새 세션을 시작합니다. 각 작업은 API 트래픽을 분산하기 위해 예약된 시간 이후 몇 분의 작은 지연을 받습니다. 지연은 결정론적입니다: 동일한 작업은 항상 동일한 오프셋에서 시작됩니다.

작업이 실행되면 데스크톱 알림을 받고 새 세션이 사이드바의 예약됨(Scheduled) 섹션 아래에 나타납니다. 이를 열어 Claude가 수행한 작업을 확인하고, 변경 사항을 검토하거나, 권한 프롬프트에 응답합니다. 세션은 다른 세션처럼 작동합니다: Claude는 파일을 편집하고, 명령을 실행하고, 커밋을 만들고, 풀 요청을 열 수 있습니다.

작업은 Desktop 앱이 실행 중이고 컴퓨터가 깨어 있을 때만 실행됩니다. 컴퓨터가 예약된 시간을 통해 절전 모드로 전환되면 실행이 건너뜁니다. 유휴 절전을 방지하려면 설정(Settings)의 데스크톱 앱(Desktop app) → 일반(General) 아래에서 컴퓨터 깨우기 유지(Keep computer awake) 를 활성화합니다. 노트북 뚜껑을 닫으면 여전히 절전 모드로 전환됩니다. 컴퓨터가 꺼져 있어도 실행되어야 하거나 API 호출이나 GitHub 이벤트에 대해 트리거되어야 하는 작업의 경우, 대신 원격 루틴을 만듭니다.

놓친 실행

앱이 시작되거나 컴퓨터가 깨어나면 Desktop은 지난 7일 동안 각 작업이 놓친 실행이 있는지 확인합니다. 있으면 Desktop은 가장 최근에 놓친 시간에 대해 정확히 하나의 따라잡기 실행을 시작하고 더 오래된 것은 버립니다. 6일을 놓친 일일 작업은 깨어날 때 한 번 실행됩니다. Desktop은 따라잡기 실행이 시작될 때 알림을 표시합니다.

프롬프트를 작성할 때 이를 염두에 두세요. 오전 9시에 예약된 작업은 컴퓨터가 하루 종일 절전 모드였다면 오후 11시에 실행될 수 있습니다. 타이밍이 중요한 경우 프롬프트 자체에 보호 장치를 추가합니다. 예를 들어, "오늘의 커밋만 검토합니다. 오후 5시 이후이면 검토를 건너뛰고 놓친 내용의 요약만 게시합니다."

예약된 작업에 대한 권한

각 작업에는 자신의 권한 모드가 있으며, 이는 작업을 만들거나 편집할 때 설정합니다. ~/.claude/settings.json의 허용(Allow) 규칙도 예약된 작업 세션에 적용됩니다. 작업이 요청(Ask) 모드에서 실행되고 권한이 없는 도구를 실행해야 하는 경우, 승인할 때까지 실행이 정지됩니다. 세션은 사이드바에 열려 있으므로 나중에 답변할 수 있습니다.

정지를 방지하려면 작업을 만든 후 지금 실행(Run now) 을 클릭하고 권한 프롬프트를 확인한 다음 각 프롬프트에 대해 "항상 허용(always allow)"을 선택합니다. 해당 작업의 향후 실행은 프롬프트 없이 동일한 도구를 자동으로 승인합니다. 작업의 세부 정보 페이지에서 이러한 승인을 검토하고 취소할 수 있습니다.

예약된 작업 관리

루틴(Routines) 목록에서 작업을 클릭하여 세부 정보 페이지를 엽니다. 여기에서 다음을 수행할 수 있습니다:

  • 지금 실행(Run now): 다음 예약된 시간을 기다리지 않고 작업을 즉시 시작합니다.
  • 상태(Status): 활성(Active)과 일시 중지(Paused) 사이를 전환하여 작업을 삭제하지 않고 예약된 실행을 일시 중지하거나 재개합니다.
  • 편집(Edit): 지침, 일정, 폴더 또는 기타 설정을 변경합니다.
  • 기록 검토(Review history): 건너뛴 실행을 포함하여 모든 과거 실행을 확인합니다. 건너뛴 항목 위에 마우스를 올려 이유를 확인합니다: 컴퓨터가 절전 모드였거나, 이전 실행이 여전히 진행 중이거나, 다른 예약된 작업이 이미 실행 중입니다. 더 보기(Show more) 를 클릭하여 더 오래된 항목을 로드합니다.
  • 허용된 권한 검토(Review allowed permissions): 항상 허용(Always allowed) 패널에서 이 작업에 대해 저장된 도구 승인을 확인하고 취소합니다.
  • 삭제(Delete): 작업을 제거하고 생성한 모든 세션을 보관합니다. 확인 대화 상자에 디스크의 파일도 삭제(Also delete files on disk) 확인란이 나타납니다. 이를 확인하여 작업의 SKILL.md 파일과 ~/.claude/scheduled-tasks/의 관련 데이터도 제거합니다.

Desktop의 모든 세션에서 Claude에게 요청하여 작업을 나열, 만들, 편집 및 일시 중지할 수도 있습니다. 예를 들어, "내 dependency-audit 작업을 일시 중지해 줘" 또는 "내 예약된 작업을 보여 줘"입니다. 작업을 삭제하려면 세부 정보 페이지의 삭제(Delete) 버튼을 사용합니다.

예약된 작업은 실행 중인 세션 내에서 update_scheduled_task MCP 도구를 사용하여 자신의 일정이나 프롬프트를 수정할 수도 있습니다. 이를 통해 작업은 발견한 내용에 따라 자신을 재예약할 수 있습니다. 예를 들어, 릴리스 브랜치가 생성되었음을 감지할 때 코드 리뷰를 더 일찍 실행하도록 재예약합니다.

디스크에서 작업의 프롬프트를 편집하려면 ~/.claude/scheduled-tasks/<task-name>/SKILL.md를 엽니다 (설정된 경우 CLAUDE_CONFIG_DIR 아래). 파일은 namedescription에 대해 YAML 프런트매터를 사용하며, 프롬프트는 본문입니다. 변경 사항은 다음 실행에 적용됩니다. 일정, 폴더, 모델 및 활성화 상태는 이 파일에 없습니다: 편집 양식을 통해 변경하거나 Claude에게 요청합니다.

Previous
환경 구성