피드로 돌아가기
How I Built a Background English Coach into Claude Code
Dev.toDev.to
Backend

개발자가 Claude Code의 UserPromptSubmit 훅과 백그라운드 claude --print 프로세스를 활용해 매일 50개 이상의 프롬프트에서 문법 오류를 자동 감지 및 기록

How I Built a Background English Coach into Claude Code

Kamal Thennakoon2026년 3월 24일9intermediate

Context

개발자가 하루에 50개 이상의 프롬프트를 Claude Code에 작성하지만, 문법 오류나 부자연스러운 표현을 실시간으로 수정할 시간이 없어 사후 개선이 이루어지지 않는 문제가 있었다.

Technical Solution

  • UserPromptSubmit 훅을 ~/.claude/hooks/grammar-check.py에 구현해 프롬프트 제출 시점에 자동 트리거
  • GRAMMAR_COACH_ACTIVE 환경 변수를 부모-자식 프로세스 간 신호로 사용해 무한 재귀 방지 (hook이 다시 발동되는 것 차단)
  • 백그라운드 프로세스를 /tmp 디렉토리에서 실행해 프로젝트 컨텍스트(CLAUDE.md 등) 제외
  • 5단어 미만, 슬래시 커맨드, 순수 코드 등 분석 대상 제외 조건 구현
  • 문법 분석 결과를 grammar-log.md 파일에 누적 기록해 나중에 패턴 분석 가능하도록 설계

Key Takeaway

환경 변수를 프로세스 간 신호로 활용한 재귀 방지 패턴(CI, NODE_ENV 등과 동일 원리)은 Claude Code 훅 같은 체인 형태의 자동화에서 무한 루프를 효과적으로 차단하는 설계 원칙이다.


Claude Code를 사용하는 개발자는 UserPromptSubmit 훅에 Python 스크립트를 작성하고 환경 변수 플래그로 재귀를 차단한 후 백그라운드 프로세스를 격리된 디렉토리에서 실행하면, 코딩 세션에 영향 없이 매일의 프롬프트를 학습 데이터로 수집할 수 있다.

원문 읽기