Claude Code에서 작업 중 알림 받기: notify-summary 플러그인

TL;DR

  • Claude Code가 긴 작업 중 사용자 입력이 필요할 때 시스템 알림을 받을 수 있다
  • Stop 훅: 응답 완료 시 요약 알림
  • Notification 훅: 권한 승인, 질문 등 사용자 액션 필요 시 즉시 알림
  • macOS, Windows, Linux 크로스플랫폼 지원
  • 하이브리드 아키텍처로 공통 로직 재사용, 훅별 독립적 동작

왜 이 플러그인이 필요했나?

Claude Code로 작업하다 보면 이런 상황이 자주 발생한다.

  1. 복잡한 리팩토링을 요청하고 다른 일을 하러 간다.
  2. Claude가 열심히 작업 중…
  3. 중간에 “이 파일을 수정해도 될까요?” 같은 권한 승인이 필요하다.
  4. 사용자는 모른 채 Claude는 멈춰있다.
  5. 30분 후 돌아와서야 작업이 진행되지 않았음을 발견

이 문제를 해결하려면 Claude가 사용자 입력을 기다릴 때 알림을 보내야 한다.

스킬? 훅? 어떤 걸로 만들어야 하나

Claude Code 확장 방식에는 크게 두 가지가 있다.

구분 스킬(Skill) 훅(Hook)
호출 방식 사용자가 명시적으로 호출 (/skill-name) 이벤트에 자동 반응
용도 복잡한 워크플로우, 전문 지식 도구 실행 전/후 자동 동작
적합한 경우 사용자 주도 작업 시스템 이벤트 반응

“사용자 입력이 필요할 때 알림”은 자동으로 발생해야 하므로 훅(Hook)이 정답이다.

Claude Code는 Notification 이벤트를 제공하는데, 이 이벤트는

  • 권한 승인이 필요할 때
  • 사용자에게 질문할 때
  • 기타 사용자 액션이 필요할 때

발생한다.

 

파일 구조

plugins/notify-summary/
├── .claude-plugin/
│   └── plugin.json           # 메타데이터
├── hooks/
│   └── hooks.json            # Stop + Notification 훅 정의
├── scripts/
│   ├── notify_core.py        # 공통: 플랫폼별 알림, Haiku 요약
│   ├── notify_stop.py        # Stop 훅: 응답 완료 시 요약 알림
│   └── notify_input.py       # Notification 훅: 입력 필요 시 알림
└── README.md

사용 시나리오

시나리오 1: 작업 완료 알림

  1. 사용자: “이 프로젝트 전체 테스트 실행하고 실패하는 거 고쳐줘”
  2. Claude가 열심히 작업 (5분 소요)
  3. 작업 완료
  4. 알림: “모든 테스트 통과, 3개 파일 수정됨”

시나리오 2: 입력 필요 알림 (신규 기능)

  1. 사용자: “데이터베이스 스키마 마이그레이션 해줘”
  2. Claude가 작업 중…
  3. Claude: “프로덕션 DB에 접근해야 합니다. 승인하시겠습니까?”
  4. 알림 (Glass 사운드): “Claude Code – 권한 필요: 프로덕션 DB 접근 승인 요청”
  5. 사용자가 바로 확인하고 승인
  6. 작업 계속 진행

사운드 설정

알림 사운드를 환경변수로 제어할 수 있다. CLAUDE_PLUGIN_NOTIFY_SOUND 환경변수를 설정하면 된다.

동작
(미설정) 기본 동작 (Stop: default, Notification: Glass)
off 또는 "" 무음 (사운드 없음)
사운드 이름 지정한 사운드 사용 (예: Ping, Glass)

설정 예시

# 알림 사운드 끄기
export CLAUDE_PLUGIN_NOTIFY_SOUND=off

# 특정 사운드 사용
export CLAUDE_PLUGIN_NOTIFY_SOUND=Ping

# 기본 동작으로 복원
unset CLAUDE_PLUGIN_NOTIFY_SOUND

macOS 사운드 목록

macOS에서 사용 가능한 사운드: default, Basso, Blow, Bottle, Frog, Funk, Glass, Hero, Morse, Ping, Pop, Purr, Sosumi, Submarine, Tink

마치며

Claude Code를 백그라운드에서 돌려놓고 다른 일을 할 때, 언제 작업이 끝났는지, 중간에 뭔가 필요한 건 아닌지 확인하러 왔다갔다 하는 게 번거로웠다.

이 플러그인으로:

  • 작업 끝나면 알림이 온다
  • 중간에 뭔가 필요하면 바로 알림이 온다
  • 더 이상 “혹시 끝났나?” 하고 확인할 필요가 없다

플러그인 저장소: greeun-claude-plugins

위로 스크롤