jaysnote
3분

쉽게 배우는 Claude Code ⑮ /goal — 목표를 정해두면 알아서 반복

완료 조건만 정해두면 Claude가 그 조건을 만족할 때까지 스스로 고치고 돌려보며 반복하는 /goal 명령어를 알아봅니다.

작업을 시키다 보면 “이렇게 한 번 해줘”보다 “이 상태가 될 때까지 해줘”라고 맡기고 싶을 때가 있습니다. 테스트가 전부 통과할 때까지, API가 명세대로 응답할 때까지처럼요. 이럴 때 한 줄 한 줄 다시 시키지 않아도 되게 해주는 게 /goal입니다.

이번 편에서는 /goal이 무엇이고, 언제 쓰면 좋은지, 그리고 비슷해 보이는 /loop와는 어떻게 다른지 정리해 보겠습니다.


한 줄로

/goal완료 조건(목표)을 정해두면, Claude가 그 조건을 만족할 때까지 스스로 반복해서 작업하게 하는 명령어입니다. 한 번 걸어두고 자리를 비워도, 목표에 도달할 때까지 알아서 시도합니다.


언제 쓰나

“결과가 이렇게 될 때까지”를 통째로 맡기고 싶을 때 잘 맞습니다. 몇 가지 예를 보겠습니다.

테스트를 전부 초록으로 만들기

“이 테스트들이 전부 통과할 때까지”를 목표로 걸어둡니다. 그러면 Claude가 코드를 고치고 → 테스트를 돌려보고 → 실패한 게 있으면 또 고치고, 이걸 전부 통과할 때까지 반복합니다. 그 사이 여러분은 다른 일을 해도 됩니다.

API를 명세대로 맞추기

“이 API가 명세대로 응답할 때까지” 구현과 수정을 반복하게 합니다. 응답이 명세와 어긋나면 다시 고쳐 보고, 맞을 때까지 시도합니다. 검증할 기준(명세)이 분명할수록 잘 동작합니다.

잔손이 많이 가는 수렴 작업 맡겨두기

조금씩 고쳐서 원하는 상태로 점점 다가가는 작업(이른바 수렴 작업)은 사람이 붙어 있기 번거롭습니다. 이런 일을 /goal로 걸어두고 다른 일을 하다가, 도달했을 때 결과만 확인하는 식으로 쓸 수 있습니다.


어떻게

기본 사용법은 다음과 같습니다.

/goal 이 테스트들이 전부 통과할 때까지

이렇게 완료 조건을 적어두면, Claude가 그 조건을 만족할 때까지 작업을 반복합니다.

사용법동작
/goal [조건]완료 조건을 설정하고, 만족할 때까지 반복 작업
/goal인자 없이 쓰면 현재(또는 마지막) 목표를 보여줌
/goal clear설정한 목표를 일찍 해제 (stop/off 등도 가능)

목표를 걸어둔 뒤 자리를 비워도, Claude가 알아서 시도하다가 조건에 도달하면 멈춥니다. 중간에 더 이상 진행할 필요가 없어졌다면 /goal clear로 해제하면 됩니다.


팁 & 함정

  • 목표는 ‘검증 가능하게, 명확하게’ 적으세요. Claude가 도달 여부를 스스로 판단할 수 있어야 멈출 수 있습니다. “테스트가 전부 통과”처럼 참/거짓을 가릴 수 있는 조건이 좋습니다.
  • 모호한 목표는 끝없이 헤맬 수 있습니다. “더 좋아질 때까지”처럼 기준이 애매하면 Claude가 도달했는지 판단하기 어려워, 계속 시도만 할 수 있습니다. 이럴 때를 대비해 /goal clear로 해제하는 법을 꼭 알아두세요.
  • /goal/loop를 헷갈리지 마세요. 둘 다 “반복”이라 비슷해 보이지만 기준이 다릅니다.
구분무엇을 기준으로 멈추나성격
/goal목표(완료 조건)를 충족하면 멈춤결과 지향
/loop정해둔 간격으로 반복 (다음 편에서 다룹니다)스케줄 지향

“이렇게 될 때까지”는 /goal, “몇 분마다 한 번씩”은 /loop라고 기억하면 쉽습니다.


한 장 정리

  • /goal [조건]: 완료 조건을 정해두면, 충족할 때까지 Claude가 스스로 반복해서 작업합니다.
  • /goal: 현재(마지막) 목표를 보여줍니다.
  • /goal clear: 목표를 일찍 해제합니다.
  • 목표는 검증 가능하고 명확하게 적어야 합니다. 모호하면 헤맬 수 있으니 해제법을 알아두세요.
  • /goal은 ‘목표 충족까지’(결과 지향), /loop는 ‘일정 간격 반복’(스케줄 지향)입니다.

다음 편: /loop — 일정 간격으로 반복 실행하기.

관련 글

← 목록으로