--- name: plan-commit description: Atomically mark a PLAN.md item as done, move it to PROGRESS.md, and optionally commit. Use when user says "완료 처리", "이 항목 done", "PLAN에서 PROGRESS로 이동", or similar phrasing about work item completion. --- # plan-commit 스킬 완료된 작업 항목을 `PLAN.md`에서 제거하고 `PROGRESS.md`에 기록하는 **원자적** 작업. ## 실행 절차 1. **확인**: 어느 항목을 완료 처리할지 사용자에게 확인한다. 애매하면 `PLAN.md` 해당 섹션을 보여주고 선택받는다. 2. **`PLAN.md` 수정**: 해당 `- [ ] ...` 또는 `- [~] ...` 라인을 **제거**. 3. **`PROGRESS.md` 수정**: 타임라인의 오늘 날짜 섹션에 한 줄 추가. - 형식: `- — <한 줄 설명>` - type 고르기: `adr|wiki|guide|meta|raw|code|infra`. 애매하면 사용자에게 묻는다. - 오늘 섹션(`### YYYY-MM-DD`)이 없으면 상단에 새로 생성. 4. **규칙 준수**: - 두 수정은 **같은 응답 내**에 일어나야 한다 (원자성). - 중간에 실패하면 rollback (Edit 실패 시 이전 상태로). 5. **커밋은 기본값 OFF.** 사용자가 "커밋까지" 또는 "commit"을 명시하면 그때만 실행. - 커밋 메시지: `plan: <완료 항목 요약>` - 스테이징: `PLAN.md` · `PROGRESS.md`만. - **푸시는 하지 않는다.** 사용자가 `push`를 명시할 때만. ## 실패 케이스 - PLAN.md에 해당 항목이 없음 → 사용자에게 알림, 중단. - 여러 항목이 패턴 매치 → 번호로 선택지 제시. - PROGRESS.md에 파일이 없음 → 파일 부재 경고, 중단. ## 예시 호출 - 사용자: "Girder Feature 정의 완료 처리해줘" - 스킬: `PLAN.md`의 "Girder Feature 정의" 라인을 제거하고, `PROGRESS.md` 오늘 섹션에 `- code — Girder Feature 정의 완료`를 추가.