#!/bin/bash # skill_trigger_audit.sh — BurningTimes SKILL 동적 로딩 트리거 감사 hook # 2026-05-07 SKILL 동적 로딩 분할 Phase D-2 신설 # PostToolUse (Edit/Write/MultiEdit) — 작업 영역 키워드 감지 + SKILL 활성화 권고 환기 # 목적: false negative 차단 안전망 (SKILL description 매칭 누락 시 환기) # 토큰 비용: 0 INPUT=$(cat 2>/dev/null) BODY=$(echo "$INPUT" | grep -oE '"(new_string|content)"[[:space:]]*:[[:space:]]*"[^"]*"' | head -3) FILE_PATH=$(echo "$INPUT" | grep -oE '"file_path"[[:space:]]*:[[:space:]]*"[^"]*"' | head -1 | sed 's/.*"\([^"]*\)"$/\1/') [ -z "$BODY" ] && exit 0 SUGGESTED="" # bt-commit-rules 영역 if echo "$BODY" | grep -qE '(commit|push|main|merge|rebase|force[[:space:]]*push|tag[[:space:]]*release)' \ && ! echo "$FILE_PATH" | grep -qE '(\.gitignore|\.git/)'; then SUGGESTED="${SUGGESTED}bt-commit-rules, " fi # bt-data-protection 영역 if echo "$BODY" | grep -qE '(백업|backup|복원|복구|롤백|rollback|프로덕션|production|밸런싱[[:space:]]*수치|\.csv|\.xlsm|\.json[[:space:]])' \ && ! echo "$FILE_PATH" | grep -qE 'SKILL\.md'; then SUGGESTED="${SUGGESTED}bt-data-protection, " fi # bt-task-delegation 영역 if echo "$BODY" | grep -qE '(Task[[:space:]]*위임|서브에이전트|sub-agent|팀장[[:space:]]*호출|delegation)'; then SUGGESTED="${SUGGESTED}bt-task-delegation, " fi # bt-pd-tracking 영역 if echo "$BODY" | grep -qE '(PD[[:space:]]*지시[[:space:]]*로그|활성[[:space:]]*지시[[:space:]]*테이블|완료[[:space:]]*아카이브[[:space:]]*이동|현황[[:space:]]*보고)'; then SUGGESTED="${SUGGESTED}bt-pd-tracking, " fi [ -z "$SUGGESTED" ] && exit 0 cat >&2 <