Cmd. /loop
세션이 열려 있는 동안 프롬프트 또는 슬래시 명령을 주기적으로 반복 실행하는 번들 스킬
핵심 요약
- session이 열린 동안 prompt 반복 (skill,
/proactive) - 입력 위치·지원 조건을 확인한 뒤 아래 실행 예를 사용합니다.
역할
session이 열린 동안 prompt 반복 (skill, /proactive)
/loop [interval] [prompt]사용 조건
| 항목 | 기준 |
|---|---|
| 입력 위치 | 실행 중인 CLI의 입력창 |
| 종류 | 번들 스킬 |
| 상태 | 현재 공식 표 |
| 별칭 | /proactive |
| 공식 최소 버전 | 명시되지 않음 |
| 검증 기준 | 2026-09-22 · Claude Code 2.1.278 |
설치본의 명령 메뉴와 계정·조직 설정에 따라 사용할 수 있는 항목이 달라집니다.
사용 예
/loop 5m check whether the tests finished고정 주기 실행
간격과 프롬프트를 함께 주면 Claude가 cron 식으로 변환해 작업을 등록하고, 주기와 작업 ID를 알려줍니다.
/loop 5m check if the deployment finished and tell me what happened- 간격은
30m처럼 앞쪽 토큰으로 두거나every 2 hours처럼 뒤쪽 절로 둘 수 있습니다. - 지원 단위:
s(초),m(분),h(시),d(일). cron은 1분 단위이므로 초는 분으로 올림 처리됩니다. 7m,90m처럼 깔끔한 cron 스텝에 맞지 않는 간격은 가장 가까운 값으로 반올림되고, Claude가 무엇을 선택했는지 알려줍니다.- 최소 간격은 1분입니다.
다른 슬래시 명령을 반복할 수도 있습니다.
/loop 10m /statsClaude가 간격을 스스로 정하게 (self-pacing)
간격을 생략하면 Claude가 매 반복마다 1분~1시간 사이에서 간격을 동적으로 정합니다. 빌드가 끝나가거나 PR이 활발하면 짧게, 진행 중인 일이 없으면 길게 잡습니다. 고른 지연과 그 이유는 각 반복 끝에 출력됩니다.
/loop check whether CI passed and address any review comments동적 /loop에서는 Claude가 Monitor 도구를 직접 쓰기도 합니다. Monitor는 백그라운드 스크립트의 출력 라인을 스트리밍해 폴링 자체를 없애므로, 토큰 효율이 더 좋고 반응도 빠른 경우가 많습니다.
프롬프트 생략 — 내장 유지보수 프롬프트
프롬프트를 생략하면 Claude는 내장 유지보수 프롬프트를 사용합니다. 매 반복마다 순서대로 다음을 수행합니다.
- 대화에서 끝나지 않은 작업 이어서 진행
- 현재 브랜치의 PR 돌보기: 리뷰 코멘트, 실패한 CI, 머지 충돌
- 대기 중인 일이 없으면 버그 헌트·단순화 같은 정리 패스 수행
이 범위 밖의 새 작업은 시작하지 않습니다. push·삭제처럼 되돌릴 수 없는 동작은 transcript가 이미 승인한 흐름을 이어갈 때만 진행됩니다.
/loop/loop만 입력하면 동적 간격으로, /loop 15m처럼 간격을 붙이면 고정 주기로 유지보수 프롬프트를 돌립니다.
loop.md로 기본 프롬프트 커스터마이징
loop.md 파일은 내장 유지보수 프롬프트를 사용자 지정 지시문으로 대체합니다. 빈 /loop에 쓰일 단일 기본 프롬프트를 정의하는 셈이라, 커맨드라인에 프롬프트를 직접 넘기면 무시됩니다.
| 경로 | 범위 |
|---|---|
.claude/loop.md | 프로젝트 단위. 두 파일이 모두 있으면 이쪽이 우선 |
~/.claude/loop.md | 사용자 단위. 자체 파일이 없는 모든 프로젝트에 적용 |
- 정해진 구조 없는 일반 Markdown입니다.
/loop프롬프트를 직접 입력하듯 작성하면 됩니다. - 수정 사항은 다음 반복부터 반영되므로 루프가 도는 중에도 지시문을 다듬을 수 있습니다.
- 25,000바이트를 넘는 내용은 잘립니다(truncated).
선택 시점
- 배포 진행 상태를 5분마다 자동 확인 (
/loop 5m check the deploy) - CI 통과 여부와 리뷰 코멘트를 self-pacing으로 점검 (
/loop check whether CI passed) - 장기 빌드 진행률을 동적 간격으로 반복 리포트
- 패키징된 워크플로를 주기적으로 재실행 (
/loop 20m /review-pr 1234) .claude/loop.md에 정의한 팀 공통 유지보수 루틴을 빈/loop로 자동 실행
관련 명령 선택
| 명령어 | 차이점 | 언제 선택 |
|---|---|---|
/loop | 세션 내 주기적·자율 반복 실행 (스킬) | 세션 중 빠른 폴링·모니터링·정기 점검 |
/goal | 조건 충족까지 매 턴 작업을 이어감 | 간격이 아니라 목표 달성 기준으로 반복할 때 |
/schedule | Anthropic 클라우드 routine(원격 스케줄) 관리 | 머신·세션과 무관하게 항시 돌려야 할 때 |
/batch | 대규모 변경을 독립 단위로 분해해 병렬 실행 | 일회성 일괄 작업이 목적일 때 |
/tasks | 현재 세션 백그라운드 작업 목록 확인 | 진행 중인 작업 상태를 점검할 때 |
실행 결과와 유지 범위
세션이 열린 동안 프롬프트를 반복합니다. 터미널을 닫은 뒤에도 실행되는 클라우드 루틴은 /schedule에서 관리합니다.
/loop은 세션이 열려 있는 동안 프롬프트를 반복 실행하는 번들 스킬(bundled skill) 입니다. 공식 문서 설명은 이렇습니다.
Skill. Run a prompt repeatedly while the session stays open. Omit the interval and Claude self-paces between iterations. Omit the prompt and, where available, Claude runs an autonomous maintenance check or the prompt in
.claude/loop.md. Example:/loop 5m check if the deploy finished. Alias:/proactive
간격(interval)과 프롬프트(prompt)는 둘 다 선택이라, 무엇을 넘기느냐에 따라 동작이 달라집니다.
| 입력한 것 | 예시 | 동작 |
|---|---|---|
| 간격 + 프롬프트 | /loop 5m check the deploy | 프롬프트를 고정 주기(cron) 로 실행 |
| 프롬프트만 | /loop check the deploy | 매 반복마다 Claude가 선택한 간격(self-pacing) 으로 실행 |
| 간격만, 또는 아무것도 없음 | /loop, /loop 15m | 내장 유지보수 프롬프트를 실행. loop.md가 있으면 그 내용으로 대체 |
프롬프트 자리에 다른 명령을 넘겨도 됩니다. /loop 20m /review-pr 1234처럼 패키징된 워크플로를 매 반복 재실행하는 식입니다.
별칭은 /proactive입니다. 내부적으로는 CronCreate / CronList / CronDelete 도구로 동작합니다.
주의사항
- 세션 스코프입니다. 작업은 현재 대화에만 존재하고, 새 대화를 시작하면 모두 사라집니다.
claude --resume/--continue로 재개하면 만료되지 않은 작업(7일 이내 생성된 반복 작업, 아직 실행 시각이 지나지 않은 일회성)이 복원됩니다. - 7일 만료: 반복 작업은 생성 후 7일이 지나면 마지막으로 한 번만 실행되고 스스로 삭제됩니다. 더 오래 돌리려면 만료 전에 재생성하거나 Routines / Desktop scheduled tasks를 쓰세요.
- 작업은 Claude Code가 실행 중이고 idle일 때만 발화합니다. 터미널을 닫거나 세션이 종료되면 멈춥니다.
- 놓친 발화는 보충(catch-up)되지 않습니다. 긴 요청 처리 중 예정 시각이 지나면 idle이 될 때 한 번만 발화합니다.
- 스케줄러는 매초 due 작업을 검사해 낮은 우선순위로 큐에 넣으며, 프롬프트는 응답 도중이 아니라 턴 사이에 발화합니다.
- 한 세션에는 예약 작업을 최대 50개까지 둘 수 있고, 각 작업에는 8자리 ID가 붙습니다.
- 너무 짧은 간격(예: 매분)은 API 사용량 급증의 원인이 될 수 있습니다.
- 중지: 다음 반복을 대기하는 동안
Esc를 누르면 pending wakeup이 지워져 더 이상 발화하지 않습니다. self-paced 모드에서는 작업이 확실히 끝나면 Claude가 다음 wakeup을 잡지 않아 스스로 종료할 수도 있습니다. 고정 주기 루프는 직접 멈추거나 7일이 지나기 전까지 계속 돕니다. - 환경변수
CLAUDE_CODE_DISABLE_CRON=1을 설정하면 스케줄러 전체가 비활성화되어 cron 도구와/loop를 쓸 수 없게 되고, 이미 예약된 작업도 발화를 멈춥니다. - Bedrock·Vertex AI·Microsoft Foundry에서는 동작이 다릅니다. 간격 없는 프롬프트는 고정 10분 주기로 돌고, 프롬프트 없는
/loop와loop.md는 동작하지 않고 사용법 메시지만 출력됩니다. /proactive는/loop의 별칭이니 내부 문서에서는 한 이름으로 통일하는 편이 낫습니다.
공식 근거
전체 명령 목록 · 검증 범위 · 이 명령의 변경 기록