Claude Code 끝났을 때·승인 대기 알림 받기
터미널을 계속 지켜보지 않아도 되게. 직접 훅으로 하는 법과, 휴대폰까지 받는 법.
훅으로 직접 하기
Claude Code는 작업이 끝날 때(Stop)와 사용자 입력·승인을 기다릴 때(Notification) 정해 둔 명령을 실행할 수 있습니다. ~/.claude/settings.json에 아래처럼 넣으면 macOS 알림이 뜹니다.
{
"hooks": {
"Stop": [{ "hooks": [{ "type": "command",
"command": "osascript -e 'display notification \"Claude Code finished\" with title \"Claude Code\"'" }] }],
"Notification": [{ "hooks": [{ "type": "command",
"command": "osascript -e 'display notification \"Claude Code needs you\" with title \"Claude Code\"'" }] }]
}
}이미 설정 파일이 있다면 hooks 항목만 합치세요. 새로 시작한 세션부터 적용됩니다.
‘승인 대기’만 따로 받기
Notification은 여러 경우에 옵니다. 훅이 받는 입력의 notification_type으로 나눌 수 있는데, 정말 내가 답해야 멈춰 있는 것은 permission_prompt(권한 요청), elicitation_dialog(MCP 질문), agent_needs_input(입력 요청)입니다. idle_prompt는 작업이 끝나고 1분쯤 지나 오는 알림이라 사실상 두 번째 ‘끝났어요’예요.
# Notification hook command: alert only when the session is blocked
jq -e '.notification_type | IN("permission_prompt","elicitation_dialog","agent_needs_input")' >/dev/null \
&& osascript -e 'display notification "Waiting on you" with title "Claude Code" sound name "Ping"'이렇게 하면 여러 세션을 돌릴 때 ‘끝난 것’과 ‘나를 기다리는 것’이 섞이지 않습니다. 끝난 알림은 Stop에 조용히 두세요.
이 방법의 한계
Mac 앞에 있을 때만 보이고, 무엇을 승인해야 하는지는 터미널로 돌아가야 알 수 있습니다. Mac이 잠들면 작업 자체가 멈춥니다.
Lidnight로
설정 › AI 연동에서 Claude Code를 켜면 같은 훅을 대신 설치하고(원래 설정은 백업), 작업이 끝나거나 승인이 필요할 때 알려 줍니다. 승인 요청은 무엇을 하려는지와 함께 보여 주고, 알림·메뉴바·노치 옆 토끼에서 바로 허용·거부할 수 있습니다.
Pro에서는 휴대폰으로도 받고 휴대폰에서 답합니다. 그동안 뚜껑을 닫아도 Mac은 깨어 있습니다. 휴대폰 승인 자세히
Lidnight 무료로 써 보기
Apple Silicon Mac · macOS 13 이상. 받으면 7일 동안 Pro 기능을 모두 써 볼 수 있고 결제 정보는 필요 없습니다. Pro는 한 번 결제(1대 $9.99 · 3대 $14.99, 10월 31일까지 출시 기념 50%), 14일 안 환불.