54 lines
2.1 KiB
Bash
54 lines
2.1 KiB
Bash
#!/bin/bash
|
|
# proactive_inference_check.sh — BurningTimes C47 능동적 추론·질문 생략 hook
|
|
# 2026-05-07 SKILL 동적 로딩 분할 Phase D-2 신설
|
|
# PostToolUse (Edit/Write/MultiEdit) — 관습적 되묻기·책임 회피 재질의 키워드 차단·환기
|
|
# 토큰 비용: 0
|
|
|
|
INPUT=$(cat 2>/dev/null)
|
|
BODY=$(echo "$INPUT" | grep -oE '"(new_string|content)"[[:space:]]*:[[:space:]]*"[^"]*"' | head -3)
|
|
[ -z "$BODY" ] && exit 0
|
|
|
|
HIT_LIST=""
|
|
|
|
# 그룹 1 — 응답 말미 관습적 되묻기
|
|
if echo "$BODY" | grep -qE '(도움이[[:space:]]*되셨길[[:space:]]*바랍니다|궁금한[[:space:]]*점[[:space:]]*있으시면|더[[:space:]]*필요한[[:space:]]*부분|기꺼이[[:space:]]*도와드리겠습니다|언제든[[:space:]]*물어봐주세요)'; then
|
|
HIT_LIST="${HIT_LIST}관습적 되묻기, "
|
|
fi
|
|
|
|
# 그룹 2 — 의미 없는 확인 질의
|
|
if echo "$BODY" | grep -qE '(이[[:space:]]*방향이[[:space:]]*맞으신지요|이렇게[[:space:]]*진행해도[[:space:]]*될까요|이[[:space:]]*방식이[[:space:]]*어떠신지)'; then
|
|
HIT_LIST="${HIT_LIST}의미 없는 확인 질의, "
|
|
fi
|
|
|
|
# 그룹 3 — 책임 회피 재질의
|
|
if echo "$BODY" | grep -qE '(혹시[[:space:]]*다른[[:space:]]*고려[[:space:]]*사항|제가[[:space:]]*놓친[[:space:]]*부분이[[:space:]]*있다면|혹시나[[:space:]]*다른[[:space:]]*의견)'; then
|
|
HIT_LIST="${HIT_LIST}책임 회피 재질의, "
|
|
fi
|
|
|
|
[ -z "$HIT_LIST" ] && exit 0
|
|
|
|
cat >&2 <<EOF
|
|
|
|
⚠️ [BurningTimes C47 능동적 추론·질문 생략 감지]
|
|
감지 키워드: ${HIT_LIST%, }
|
|
|
|
의무:
|
|
- 관습적 되묻기 배제
|
|
- PD 의도 명확 시 인사이트 마침표
|
|
|
|
허용 질의 (예외 4종):
|
|
1. PD 의도 진짜 모호 + 구체 선택지 동반
|
|
2. 범위 경계 불분명
|
|
3. 방향 검증 필요 (C36-2 영역)
|
|
4. C43 호칭 모호
|
|
|
|
인사이트 마침표 패턴:
|
|
- 다음 단계 명시: "본 작업 완료. 후속: {X·Y·Z}"
|
|
- 후속 권고: "본 결과 기반 후속 권고 2종"
|
|
- 주의점 명시: "본 결정 적용 시 주의: X 영역 영향"
|
|
|
|
근거: BurningTimes C47 · identity_guard 동형
|
|
|
|
EOF
|
|
exit 0
|