Oh My ClaudeCode
Hooks

훅 시스템 개요

OMC 훅 시스템의 동작 원리와 전체 구조를 설명합니다.

훅이란?

훅(Hook)은 Claude Code의 라이프사이클 이벤트에 반응하여 자동으로 실행되는 스크립트입니다. oh-my-claudecode는 31개의 훅으로 Claude Code의 기본 동작을 확장합니다.

사용자가 프롬프트를 제출하거나, 도구가 실행되거나, 세션이 시작/종료될 때 훅이 자동으로 실행되어 추가 컨텍스트를 주입하거나, 모드를 활성화하거나, 상태를 관리합니다.

동작 원리

훅은 hooks.json 파일에 정의되며, 각 훅은 아래 구조를 따릅니다.

{
  "이벤트이름": [
    {
      "matcher": "*",
      "hooks": [
        {
          "type": "command",
          "command": "node scripts/hook-script.mjs",
          "timeout": 5
        }
      ]
    }
  ]
}
  • 이벤트이름: 훅이 반응하는 라이프사이클 이벤트
  • matcher: 훅을 실행할 조건 (*는 모든 경우)
  • command: 실행할 Node.js 스크립트
  • timeout: 최대 실행 시간 (초)

훅의 출력은 <system-reminder> 태그로 Claude에 주입됩니다. hookSpecificOutput.additionalContext를 통해 추가 컨텍스트를 전달합니다.

훅 카테고리

OMC의 훅은 크게 4가지 카테고리로 나뉩니다.

실행 모드 훅

자율 실행, 병렬 처리, 지속성 등 실행 모드를 관리합니다.

설명
autopilot아이디어부터 작동 코드까지 완전 자율 실행
ralph검증 완료까지 지속적 실행
ultrawork최대 병렬 에이전트 실행
ultraqa목표 달성까지 QA 사이클 반복
persistent-mode세션 간 모드 상태 유지

핵심 훅

오케스트레이션, 키워드 감지, 복구 등 핵심 기능을 담당합니다.

설명
keyword-detector매직 키워드 감지 (ultrawork, ralph 등)
omc-orchestrator오케스트레이터 행동과 위임 강제
recovery편집 에러, 세션, 컨텍스트 윈도우 복구

컨텍스트 관리 훅

메모리, 프로젝트 상태, 컴팩션 등을 관리합니다.

설명
notepad컴팩션 내성 메모리 시스템
project-memory프로젝트 메모리 관리
pre-compact컴팩션 전 처리
preemptive-compaction컨텍스트 사용량 모니터링

품질/검증 훅

코드 품질, 권한 관리, 서브에이전트 추적 등을 담당합니다.

설명
permission-handler권한 요청과 검증
subagent-tracker서브에이전트 스폰/완료 추적
code-simplifierStop 시 최근 수정 파일 자동 단순화 (opt-in)

훅 비활성화

전체 비활성화

export DISABLE_OMC=1

선택적 비활성화

export OMC_SKIP_HOOKS="keyword-detector,notepad"

쉼표로 구분하여 특정 훅만 건너뛸 수 있습니다.

상세 페이지

On this page