Skill: generate-plan
요구사항을 분석하여 plan.md와 작업 문서(feature/bug/chore)를 자동 생성한다.
메타데이터
yaml
name: generate-plan version: 1.0.0 agent: planner trigger: /new-feature, /new-bug, /new-chore
입력
| 파라미터 | 필수 | 설명 |
|---|---|---|
| requirement | O | 사용자 요구사항 (자연어) |
| type | X | 작업 유형 (feature/bug/chore), 자동 감지 |
출력
| 파일 | 설명 |
|---|---|
specs/plan.md | 프로젝트 계획 (갱신) |
specs/{type}.md | 작업 정의서 |
실행 흐름
code
1. 입력 파싱
└─ requirement에서 핵심 요구사항 추출
2. 작업 유형 결정
├─ "추가", "구현", "만들어" → feature
├─ "버그", "오류", "안됨" → bug
└─ "정리", "리팩터", "업데이트" → chore
3. 기존 plan.md 로드
└─ 없으면 새로 생성
4. 작업 분해
├─ 요구사항을 세부 작업으로 분해
├─ 각 작업에 완료 조건 정의
└─ 의존성 및 순서 결정
5. 문서 생성
├─ plan.md에 마일스톤 추가
└─ {type}.md 생성
6. 검증
└─ 필수 섹션 존재 확인
프롬프트
code
## 역할
당신은 프로젝트 계획 전문가입니다.
## 입력
요구사항: {{requirement}}
## 작업
1. 요구사항을 분석하여 작업 유형을 결정하세요 (feature/bug/chore)
2. 요구사항을 실행 가능한 세부 작업으로 분해하세요
3. 각 작업에 테스트 가능한 완료 조건을 정의하세요
4. 리스크와 의존성을 식별하세요
## 출력 형식
### plan.md 추가 내용
```markdown
## [작업명]
- 목적: [왜 이 작업을 하는가]
- 범위: [포함/제외 사항]
- 마일스톤:
1. [ ] [단계1]
2. [ ] [단계2]
- 리스크: [식별된 리스크]
- 검증: [완료 확인 방법]
{type}.md 내용
[해당 타입의 템플릿에 맞게 작성]
code
--- ## 예시 ### 입력
requirement: "사용자가 할 일을 추가하고 완료 처리할 수 있는 기능"
code
### 출력 **specs/plan.md** (추가) ```markdown ## Task CRUD 기능 - 목적: 사용자가 할 일을 관리할 수 있도록 함 - 범위: - 포함: 생성, 조회, 상태 변경, 삭제 - 제외: 카테고리, 태그, 공유 기능 - 마일스톤: 1. [ ] API 설계 2. [ ] 백엔드 구현 3. [ ] 프론트엔드 구현 4. [ ] 테스트 - 리스크: 없음 (단순 CRUD) - 검증: 모든 CRUD 동작이 UI에서 확인됨
specs/feature.md
markdown
# 기능: Task CRUD ## 요구사항 사용자가 할 일(Task)을 추가하고, 목록을 보고, 완료 처리하고, 삭제할 수 있다. ## 완료 조건 - [ ] Task 생성 API 동작 - [ ] Task 목록 조회 API 동작 - [ ] Task 상태 변경 API 동작 - [ ] Task 삭제 API 동작 - [ ] UI에서 모든 동작 가능 ## 영향 범위 - 파일: apps/backend/src/routes/task.ts (신규) - API: POST/GET/PATCH/DELETE /api/tasks - UI: TaskList 컴포넌트 (신규) ## 테스트 계획 - 단위: 각 API 핸들러 - 통합: API 엔드포인트 - E2E: Task 생성 → 조회 → 완료 → 삭제 시나리오
에러 처리
| 에러 | 처리 |
|---|---|
| 요구사항 불명확 | 사용자에게 명확화 요청 |
| 기존 plan.md 충돌 | 기존 내용 유지하고 추가 |
연결
- •이전 스킬: (없음 - 시작점)
- •다음 스킬:
generate-api-spec(API 필요 시)