처음으로
4알아 두기

막을까, 물을까, 알리기만 할까

훅을 만들기 전에 결정부터 골라요. 같은 위험이라도 무엇을 고르느냐에 따라 작업이 서기도 하고 계속 가기도 해요.

막기·묻기·알리기 세 갈래의 기준과 결과를 나란히 놓은 그림.
막기·묻기·알리기 세 갈래의 기준과 결과를 나란히 놓은 그림.

여섯 개를 이 기준으로 나누면 이래요.

훅 도는 때 하는 일 결정
grep 폭주 막기 PreToolUse grep 식의 반복이 100 이상이거나 드라이브 전체를 뒤지면 실행하지 않아요 막기
남은 grep 정리 Stop · SessionStart 10분 넘게 돌았거나 메모리 4GB를 넘은 grep만 꺼요 알리기
Chrome 끄기 확인 PreToolUse Chrome을 끄는 명령일 때만 승인 창을 띄워요 묻기
코덱스 지킴이 PreToolUse · Stop · SessionStart 일하는 코덱스가 있으면 새 호출을 막고, 부모가 죽었거나 40분 넘게 돌며 멈춘 것은 꺼요 막기 · 알리기
폴더 신뢰 맞추기 SessionStart 대소문자만 다른 같은 폴더의 신뢰 설정을 맞춰요 조용히 고치기
점검 밀림 알림(이 저장소만) SessionStart 밀린 주간·월간 점검, 다시 볼 날이 지난 결정, 늦어진 AI 소식을 알려요 알리기

기계가 숫자나 상태로 판단할 수 있으면 막고, 사람의 뜻을 들어야 하면 묻고, 멈출 까닭이 없으면 알리기만 해요. 묻기는 사람이 자리를 비운 동안 작업 전체를 세워 두기 때문에, 이 운영에서는 Chrome 하나에만 써요.

훅 스크립트 자체가 오류로 죽을 때도 정해 둘 수 있어요. 10월 8일 Claude Code 2.1.295에서 명령형 훅에 onFailure: "block" 설정이 생겼고, 켜면 훅이 실패했을 때 작업을 막아요(10월 둘째 주 AI 소식). 막는 훅은 스크립트가 죽으면 위험한 명령이 그대로 지나갈 수 있고, 알리는 훅은 죽어도 작업이 서지 않아야 해요. 그래서 이 설정은 막는 훅에 어울린다고 봐요. 운영자의 훅은 아직 이 설정을 쓰지 않아요.

차례로 돌아가기