kdyplanon - Plan Continuation Skill
Plan Mode 또는 Heavy 스킬(kdygenesis, kdynext, kdyselfreflection, kdyextract) 작업 중 토큰 한계로 중단된 작업을 새 터미널에서 이어서 수행하는 스킬입니다.
Trigger
이 스킬은 사용자가 /kdyplanon을 입력하면 활성화됩니다.
Workflow
Step 1: 이전 터미널 내용 요청
즉시 사용자에게 다음 메시지를 출력합니다:
📋 이전 터미널에서 진행하던 작업을 이어서 수행하겠습니다.
이전 터미널의 내용을 복사해서 붙여넣어 주세요.
(가능한 한 많은 내용을 포함해주세요 - 특히 마지막 작업 상태, 에러 메시지, 완료된 작업 목록)
💡 팁: 터미널에서 Ctrl+A로 전체 선택 후 Ctrl+C로 복사하세요.
붙여넣기 후 Enter를 눌러주세요.
그리고 사용자 입력을 기다립니다.
Step 2-A: Plan 파일 탐색 (기존)
사용자가 내용을 붙여넣으면:
-
키워드 추출:
- 프로젝트 경로 (예: 절대 경로 패턴)
- 프로젝트명
- 작업 유형 (modularization, refactoring, feature 등)
- 파일 경로들
-
Plan 파일 탐색:
디렉토리: ~/.claude/plans- Glob으로 모든 .md 파일 검색
- 파일명과 내용에서 추출된 키워드 매칭
- 수정 시간이 최근인 파일 우선
- 여러 개 발견 시 사용자에게 선택 요청
-
Plan 파일 완전 분석:
- 전체 계획의 목표와 범위
- Phase/단계별 작업 내용
- 체크리스트 상태 (완료/미완료)
- 의존성 및 순서
- 주의사항 및 제약조건
Step 2-B: 체크포인트 파일 탐색 (신규)
사용자가 붙여넣은 내용에서 프로젝트 경로를 추출한 뒤, 해당 프로젝트에 체크포인트 파일이 있는지 탐색합니다.
# 프로젝트 경로 추출
프로젝트 경로 = 사용자 붙여넣기에서 절대 경로 패턴 추출
# 체크포인트 탐색
Glob: {프로젝트}/docs/references/_CHECKPOINT_*.md
Glob: {프로젝트}/docs/references/_PROJECT_GENESIS.md
체크포인트 파일 발견 시:
- 메타데이터 섹션에서 스킬명, 상태(IN_PROGRESS/INTERRUPTED), 마지막 완료 Phase를 추출
- 상태가
COMPLETED인 파일은 재개 대상에서 제외
Step 2-C: 소스 선택
Step 2-A와 2-B의 결과를 종합하여 재개 소스를 결정합니다.
| 상황 | 처리 |
|---|---|
| Plan만 발견 | 기존 방식으로 Plan 파일 기반 재개 |
| 체크포인트만 발견 | 해당 스킬의 --resume 안내 + 자동 재개 |
| Plan + 체크포인트 둘 다 발견 | AskUserQuestion으로 선택: "Plan 기반 재개 / 체크포인트 기반 재개" |
| 둘 다 없음 | 기존 에러 처리 (Plan 파일을 찾을 수 없는 경우) |
체크포인트 기반 재개 시 출력:
## 체크포인트 기반 재개
| 항목 | 값 |
|------|-----|
| 스킬 | {체크포인트에서 추출한 스킬명} |
| 프로젝트 | {프로젝트 경로} |
| 마지막 완료 Phase | Phase {N} |
| 상태 | {IN_PROGRESS / INTERRUPTED} |
해당 스킬을 `--resume` 모드로 재개합니다.
→ `/{스킬명} --resume --project {프로젝트 경로}`
Step 3: 진행 상황 파악
터미널 내용 분석:
-
완료된 작업 식별:
✓,✅,completed,done등의 마커- 성공적으로 실행된 명령어
- 생성/수정된 파일 목록
- TaskUpdate로 completed된 항목
-
중단 지점 파악:
- 마지막 tool call
- 에러 메시지 유무
in_progress상태의 작업- 마지막 출력 메시지
-
현재 상태 검증 (실제 확인):
git status로 변경사항 확인- 파일 존재 여부 확인
- 빌드 상태 확인 (필요시)
Step 4: 작업 연속성 보고 및 재개
사용자에게 다음 형식으로 보고:
## 🔄 작업 연속성 보고
### 📁 Plan 파일
- **경로**: [plan 파일 경로]
- **목표**: [전체 목표 1줄 요약]
### ✅ 완료된 작업
- [x] Phase 1: ...
- [x] Phase 2: ...
- [x] 작업 A
- [x] 작업 B
### 🔶 중단 지점
- **마지막 작업**: [중단된 작업 설명]
- **상태**: [완료/진행중/에러]
- **에러 (있는 경우)**: [에러 내용]
### 📋 남은 작업
- [ ] 작업 C
- [ ] 작업 D
- [ ] Phase 3: ...
### ▶️ 이어서 수행할 작업
[다음에 수행할 구체적인 작업 설명]
---
작업을 이어서 진행합니다.
그 후 즉시 작업을 이어서 수행합니다.
Critical Guidelines
🎯 일관성 유지 (가장 중요)
- Plan 파일의 원래 의도와 방향성을 정확히 파악하고 그대로 유지
- 코딩 스타일, 네이밍 컨벤션, 아키텍처 결정을 이전 작업과 동일하게 유지
- 이전에 내린 결정들을 존중하고 임의로 변경하지 않음
- Plan에 명시된 방식대로 진행 (개선 아이디어가 있어도 Plan 우선)
🔗 끊김 없는 연속성
- 마치 같은 터미널에서 계속 작업하는 것처럼 자연스럽게 이어감
- "이전에 ~했으니까" 같은 불필요한 설명 없이 바로 진행
- 이미 완료된 작업을 다시 확인하거나 재실행하지 않음
- 컨텍스트를 완전히 이해한 상태로 작업
✔️ 상태 검증
- 작업 시작 전 실제 파일 상태가 예상과 일치하는지 확인
- Git 상태로 실제 변경사항 검증
- 불일치 발견 시 사용자에게 보고 후 조정
- 부분적으로 완료된 작업은 정리 후 진행
📝 Plan 파일 업데이트
- 작업 진행에 따라 plan 파일의 체크리스트 업데이트
- 완료된 항목
[x]로 마킹 - 새로운 발견사항이나 변경사항 기록
- 다음 연속 작업을 위한 컨텍스트 보존
Error Handling
Plan 파일을 찾을 수 없는 경우
⚠️ 관련 Plan 파일을 찾을 수 없습니다.
~/.claude/plans 디렉토리에서 검색했으나 매칭되는 파일이 없습니다.
다음 중 하나를 선택해주세요:
1. Plan 파일 경로를 직접 입력
2. 이전 터미널 내용만으로 작업 추론 후 진행
3. 작업 중단 (Plan 없이 진행 불가)
여러 Plan 파일이 매칭되는 경우
📂 여러 Plan 파일이 발견되었습니다:
1. [파일명1] - 수정: 2024-01-25 (키워드 매칭: projectA, refactor)
2. [파일명2] - 수정: 2024-01-24 (키워드 매칭: projectA)
3. [파일명3] - 수정: 2024-01-20 (키워드 매칭: refactor)
어떤 Plan 파일을 사용할까요? (번호 입력)
진행 상황 파악이 어려운 경우
⚠️ 이전 작업의 정확한 중단 지점을 파악하기 어렵습니다.
현재 파일 시스템 상태 기준:
- [확인된 상태 설명]
- Git status: [상태]
Plan 파일의 다음 미완료 단계부터 진행할까요?
→ [다음 단계 설명]
(y: 진행 / n: 특정 지점 지정)
Implementation Notes
이 스킬을 실행할 때:
- AskUserQuestion 도구를 사용하여 이전 터미널 내용을 요청
- Glob 도구로
~/.claude/plans/*.md파일 탐색 - Grep 도구로 키워드 매칭
- Read 도구로 Plan 파일 전체 내용 읽기
- **Bash (git status)**로 현재 상태 확인
- 분석 후 즉시 작업 재개
Quick Reference
/kdyplanon
↓
[이전 터미널 내용 요청]
↓
[사용자가 내용 붙여넣기]
↓
[Plan 파일 탐색: ~/.claude/plans/]
↓
[Plan 분석 + 진행상황 파악]
↓
[연속성 보고]
↓
[작업 이어서 수행] ← 마치 같은 터미널처럼!
관련 스킬/에이전트
| 도구 | 역할 | 관계 |
|---|---|---|
/cs | 세션 종료 프로토콜 | Ref (이전 세션 handover 참조) |
/kdygenesis | 메타 오케스트레이션 | Resume (체크포인트: _PROJECT_GENESIS.md) |
/kdynext | 건강 진단 오케스트레이터 | Resume (체크포인트: _CHECKPOINT_KDYNEXT.md) |
/kdyselfreflection | 자기반성 | Resume (체크포인트: _CHECKPOINT_KDYSELFREFLECTION.md) |
/kdyextract | 코드 추출 | Resume (체크포인트: _CHECKPOINT_KDYEXTRACT.md) |