BurningTimesAi/scripts/context_brief.sh

51 lines
1.8 KiB
Bash
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# 부서 CONTEXT_BRIEF.md 자동 갱신
# PM 허브에서 Agent로 부서 서브에이전트 호출 시 컨텍스트 단절 최소화
# 사용: 각 부서 세션에서 push 전 또는 P21 세션 갱신 시 실행
REPO_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
[ -z "$REPO_ROOT" ] && exit 0
# 현재 부서 판별
CURRENT_DIR=$(pwd)
DEPT=""
BRIEF_PATH=""
LOG_PATH=""
case "$CURRENT_DIR" in
*개발팀*) DEPT="개발팀"; BRIEF_PATH="$REPO_ROOT/개발팀/CONTEXT_BRIEF.md"; LOG_PATH="$REPO_ROOT/공유/PD_지시_트래킹/개발팀_PD_지시_로그.md" ;;
*기획팀*) DEPT="기획팀"; BRIEF_PATH="$REPO_ROOT/기획팀/CONTEXT_BRIEF.md"; LOG_PATH="$REPO_ROOT/공유/PD_지시_트래킹/기획팀_PD_지시_로그.md" ;;
*) exit 0 ;; # PM 세션은 대상 아님
esac
echo "# ${DEPT} 컨텍스트 브리프 (자동 갱신)" > "$BRIEF_PATH"
echo "> 최종 갱신: $(date +%Y-%m-%d\ %H:%M)" >> "$BRIEF_PATH"
echo "" >> "$BRIEF_PATH"
# 활성 지시 요약
echo "## 활성 지시" >> "$BRIEF_PATH"
if [ -f "$LOG_PATH" ]; then
ACTIVE=$(sed -n '/## 활성 지시/,/## 완료 아카이브/p' "$LOG_PATH" 2>/dev/null | grep -E '^\|.*\|(진행중|보류|대기)\|' | head -10)
if [ -n "$ACTIVE" ]; then
echo "$ACTIVE" >> "$BRIEF_PATH"
else
echo "활성 항목 없음" >> "$BRIEF_PATH"
fi
fi
echo "" >> "$BRIEF_PATH"
# HOLD·차단 요인
echo "## HOLD·차단 요인" >> "$BRIEF_PATH"
HOLDS=$(find "$REPO_ROOT/${DEPT}" -maxdepth 1 \( -name '🛑_*' -o -name '⚠_*' -o -name '🚨_*' \) 2>/dev/null)
if [ -n "$HOLDS" ]; then
echo "$HOLDS" | while read -r f; do echo "- $(basename "$f")" ; done >> "$BRIEF_PATH"
else
echo "없음" >> "$BRIEF_PATH"
fi
echo "" >> "$BRIEF_PATH"
# 최근 커밋
echo "## 최근 커밋 5건" >> "$BRIEF_PATH"
git log --oneline -5 >> "$BRIEF_PATH"
exit 0