BurningTimesAi/scripts/change_digest.sh

28 lines
912 B
Bash

#!/bin/bash
# SessionStart hook용 — 마지막 확인 이후 변경 요약 출력
# 세션 간 소통 부재(문제 2) 해소: 커밋 메시지 자체가 소통 채널 역할
THROTTLE_DIR="$HOME/.claude/.nerdnavis_throttle"
mkdir -p "$THROTTLE_DIR" 2>/dev/null
GIT_DIR=$(git rev-parse --git-dir 2>/dev/null)
[ -z "$GIT_DIR" ] && exit 0
REPO_HASH=$(echo "$GIT_DIR" | sha1sum 2>/dev/null | cut -d' ' -f1)
LAST_SEEN_FILE="$THROTTLE_DIR/last_seen_sha_$REPO_HASH"
CURRENT=$(git rev-parse HEAD 2>/dev/null)
LAST_SEEN=$(cat "$LAST_SEEN_FILE" 2>/dev/null)
if [ -n "$LAST_SEEN" ] && [ "$LAST_SEEN" != "$CURRENT" ]; then
DIGEST=$(git log --oneline "$LAST_SEEN".."$CURRENT" 2>/dev/null | head -10)
if [ -n "$DIGEST" ]; then
COUNT=$(echo "$DIGEST" | wc -l | tr -d ' ')
echo "📋 [변경 요약] 마지막 확인 이후 ${COUNT}건:"
echo "$DIGEST"
fi
fi
echo "$CURRENT" > "$LAST_SEEN_FILE"
exit 0