#!/bin/bash # SessionStart hook 확장: 자기 inbox 신규·미처리 파일 자동 알림 # Phase 2 (2026-04-15 PD님 승인) — 공유/소통/ 6축 통신 허브 연동 # # 부서 판단 규칙 (cwd 기반): # - /기획팀/ 경로 포함 → 기획팀 # - /개발팀/ 경로 포함 → 개발팀 # - 그 외 → PM (루트) # 각 부서는 자기 수신 inbox 2개를 스캔하며, YAML `status: 완료` 가 아닌 파일만 보고한다. REPO_ROOT=$(git rev-parse --show-toplevel 2>/dev/null) [ -z "$REPO_ROOT" ] && exit 0 CWD=$(pwd -W 2>/dev/null || pwd) if [[ "$CWD" == *"/기획팀/"* ]] || [[ "$CWD" == *"/기획팀" ]]; then ROLE="기획팀" INBOXES=("$REPO_ROOT/공유/소통/PM→기획팀" "$REPO_ROOT/공유/소통/개발팀→기획팀") elif [[ "$CWD" == *"/개발팀/"* ]] || [[ "$CWD" == *"/개발팀" ]]; then ROLE="개발팀" INBOXES=("$REPO_ROOT/공유/소통/PM→개발팀" "$REPO_ROOT/공유/소통/기획팀→개발팀") else ROLE="PM" INBOXES=("$REPO_ROOT/공유/소통/개발팀→PM" "$REPO_ROOT/공유/소통/기획팀→PM") fi TOTAL=0 LINES="" for INBOX in "${INBOXES[@]}"; do [ ! -d "$INBOX" ] && continue CHANNEL=$(basename "$INBOX") for f in "$INBOX"/*.md; do [ -e "$f" ] || continue STATUS=$(grep -m1 "^status:" "$f" 2>/dev/null | sed 's/status:[[:space:]]*//;s/[[:space:]]*$//') [ "$STATUS" = "완료" ] && continue SUBJECT=$(grep -m1 "^subject:" "$f" 2>/dev/null | sed 's/subject:[[:space:]]*//;s/[[:space:]]*$//') FROM=$(grep -m1 "^from:" "$f" 2>/dev/null | sed 's/from:[[:space:]]*//;s/[[:space:]]*$//') PRIORITY=$(grep -m1 "^priority:" "$f" 2>/dev/null | sed 's/priority:[[:space:]]*//;s/[[:space:]]*$//') BASENAME=$(basename "$f") [ -z "$SUBJECT" ] && SUBJECT="(제목 없음)" [ -z "$FROM" ] && FROM="(발신자 없음)" [ -z "$PRIORITY" ] && PRIORITY="normal" [ -z "$STATUS" ] && STATUS="대기" LINES+=" • [$CHANNEL] $FROM → $SUBJECT (prio:$PRIORITY, status:$STATUS) — $BASENAME " TOTAL=$((TOTAL + 1)) done done if [ $TOTAL -gt 0 ]; then echo "📬 [Inbox:$ROLE] 미처리 통신 $TOTAL 건 (공유/소통/):" printf "%b" "$LINES" echo "→ 처리 후 status: 완료 갱신 + git mv 공유/소통/완료/ + commit·push" else echo "📭 [Inbox:$ROLE] 미처리 통신 없음" fi