Files
detectelectronpole/.claude/hooks/stop_progress_reminder.sh
minsung 417f880a87 Setup RailPose3D harness (Planner/Generator/Evaluator)
Name the project RailPose3D and stand up a multi-agent harness
following the Anthropic harness-design blog principles
(decomposition, separation of concerns, file-based handoff,
sprint contracts, context-reset over compaction).

- CLAUDE.md / PLAN.md / PROGRESS.md as the file-based handoff
  surface; every agent must read PLAN+PROGRESS before acting.
- 7 sub-agents under .claude/agents/: plan-architect (Planner),
  pole-detector-builder, rail-detector-builder, triangulation-
  builder, data-pipeline-builder (Generators), module-evaluator
  (Evaluator), dataset-explorer (read-only helper).
- 6 skills under .claude/skills/: /start /sprint /eval /progress
  /handoff /contract.
- SessionStart and Stop hooks to inject the PLAN/PROGRESS
  briefing and remind about PROGRESS.md updates.
- docs/plan.md captures the user-approved detailed plan;
  docs/research.md is the prior tech survey.
- .gitignore excludes data/, .usage/, model checkpoints, and
  local Claude overrides.

Tracking: closes #1

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 08:32:05 +09:00

22 lines
706 B
Bash

#!/usr/bin/env bash
# RailPose3D Stop hook: 세션 종료 시 PROGRESS.md 갱신 여부 점검.
# PROGRESS.md 의 mtime 이 세션 시작 이전이면 사용자에게 한 줄 알림.
set -e
PROJECT_DIR="${CLAUDE_PROJECT_DIR:-$(pwd)}"
PROG="$PROJECT_DIR/PROGRESS.md"
[ ! -f "$PROG" ] && exit 0
# 최근 1시간 안에 변경되었는지 검사 (간단 판정).
NOW=$(date +%s)
MTIME=$(stat -c %Y "$PROG" 2>/dev/null || stat -f %m "$PROG" 2>/dev/null || echo 0)
DIFF=$(( NOW - MTIME ))
if [ "$DIFF" -gt 3600 ]; then
printf '{"systemMessage":"[RailPose3D] PROGRESS.md 가 1시간 이상 갱신되지 않았습니다. 세션 종료 전 /progress 또는 /handoff 호출을 고려하세요."}'
fi
exit 0