create-claude-pipeline 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +359 -0
- package/package.json +32 -0
- package/template/.claude/agents/be-developer.md +218 -0
- package/template/.claude/agents/designer.md +192 -0
- package/template/.claude/agents/fe-developer.md +175 -0
- package/template/.claude/agents/infra-developer.md +270 -0
- package/template/.claude/agents/planner.md +126 -0
- package/template/.claude/agents/pm.md +130 -0
- package/template/.claude/agents/qa-engineer.md +270 -0
- package/template/.claude/agents/security-reviewer.md +281 -0
- package/template/.claude/settings.json +5 -0
- package/template/.claude/skills/analyze-requirements/SKILL.md +166 -0
- package/template/.claude/skills/api-integration/SKILL.md +354 -0
- package/template/.claude/skills/assemble-context/SKILL.md +192 -0
- package/template/.claude/skills/db-migration/SKILL.md +228 -0
- package/template/.claude/skills/explore-be-codebase/SKILL.md +260 -0
- package/template/.claude/skills/explore-codebase/SKILL.md +190 -0
- package/template/.claude/skills/explore-design-system/SKILL.md +150 -0
- package/template/.claude/skills/explore-fe-codebase/SKILL.md +209 -0
- package/template/.claude/skills/explore-implementation/SKILL.md +147 -0
- package/template/.claude/skills/explore-infra/SKILL.md +242 -0
- package/template/.claude/skills/implement-api/SKILL.md +477 -0
- package/template/.claude/skills/implement-components/SKILL.md +217 -0
- package/template/.claude/skills/review-auth/SKILL.md +175 -0
- package/template/.claude/skills/scan-vulnerabilities/SKILL.md +200 -0
- package/template/.claude/skills/write-cicd/SKILL.md +293 -0
- package/template/.claude/skills/write-design-spec/SKILL.md +363 -0
- package/template/.claude/skills/write-dockerfile/SKILL.md +269 -0
- package/template/.claude/skills/write-plan-doc/SKILL.md +164 -0
- package/template/.claude/skills/write-plan-doc/assets/plan_template.html +251 -0
- package/template/.claude/skills/write-qa-report/SKILL.md +151 -0
- package/template/.claude/skills/write-security-report/SKILL.md +185 -0
- package/template/.claude/skills/write-test-cases/SKILL.md +234 -0
- package/template/.claude-pipeline/dashboard/.env.example +1 -0
- package/template/.claude-pipeline/dashboard/.eslintrc.json +3 -0
- package/template/.claude-pipeline/dashboard/README.md +36 -0
- package/template/.claude-pipeline/dashboard/next.config.mjs +6 -0
- package/template/.claude-pipeline/dashboard/package-lock.json +8148 -0
- package/template/.claude-pipeline/dashboard/package.json +36 -0
- package/template/.claude-pipeline/dashboard/postcss.config.mjs +8 -0
- package/template/.claude-pipeline/dashboard/server.ts +24 -0
- package/template/.claude-pipeline/dashboard/src/app/api/pipelines/[id]/checkpoint/route.ts +23 -0
- package/template/.claude-pipeline/dashboard/src/app/api/pipelines/[id]/outputs/[...filepath]/route.ts +18 -0
- package/template/.claude-pipeline/dashboard/src/app/api/pipelines/[id]/route.ts +10 -0
- package/template/.claude-pipeline/dashboard/src/app/api/pipelines/route.ts +64 -0
- package/template/.claude-pipeline/dashboard/src/app/favicon.ico +0 -0
- package/template/.claude-pipeline/dashboard/src/app/fonts/GeistMonoVF.woff +0 -0
- package/template/.claude-pipeline/dashboard/src/app/fonts/GeistVF.woff +0 -0
- package/template/.claude-pipeline/dashboard/src/app/globals.css +52 -0
- package/template/.claude-pipeline/dashboard/src/app/layout.tsx +33 -0
- package/template/.claude-pipeline/dashboard/src/app/page.tsx +49 -0
- package/template/.claude-pipeline/dashboard/src/app/pipeline/[id]/page.tsx +84 -0
- package/template/.claude-pipeline/dashboard/src/components/agent-card.tsx +40 -0
- package/template/.claude-pipeline/dashboard/src/components/agent-logs.tsx +65 -0
- package/template/.claude-pipeline/dashboard/src/components/artifact-viewer.tsx +130 -0
- package/template/.claude-pipeline/dashboard/src/components/checkpoint-banner.tsx +59 -0
- package/template/.claude-pipeline/dashboard/src/components/new-pipeline-modal.tsx +63 -0
- package/template/.claude-pipeline/dashboard/src/components/output-list.tsx +57 -0
- package/template/.claude-pipeline/dashboard/src/components/phase-dots.tsx +37 -0
- package/template/.claude-pipeline/dashboard/src/components/pipeline-card.tsx +53 -0
- package/template/.claude-pipeline/dashboard/src/components/resizable-panels.tsx +91 -0
- package/template/.claude-pipeline/dashboard/src/hooks/use-pipeline-detail.ts +65 -0
- package/template/.claude-pipeline/dashboard/src/hooks/use-pipelines.ts +60 -0
- package/template/.claude-pipeline/dashboard/src/hooks/use-websocket.ts +58 -0
- package/template/.claude-pipeline/dashboard/src/lib/agents.ts +30 -0
- package/template/.claude-pipeline/dashboard/src/lib/checkpoint.ts +37 -0
- package/template/.claude-pipeline/dashboard/src/lib/pipelines.ts +91 -0
- package/template/.claude-pipeline/dashboard/src/lib/watcher.ts +90 -0
- package/template/.claude-pipeline/dashboard/src/lib/ws-server.ts +123 -0
- package/template/.claude-pipeline/dashboard/src/types/pipeline.ts +61 -0
- package/template/.claude-pipeline/dashboard/tailwind.config.ts +31 -0
- package/template/.claude-pipeline/dashboard/tsconfig.json +26 -0
- package/template/CLAUDE.md +301 -0
- package/template/references/context-structure.md +34 -0
- package/template/references/pm-context-assembly.md +34 -0
- package/template/references/task-context-template.md +65 -0
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
이 파일은 Claude Code가 이 저장소에서 작업할 때 따르는 파이프라인 가이드다.
|
|
4
|
+
|
|
5
|
+
## 필수 사전 설정
|
|
6
|
+
|
|
7
|
+
이 워크플로우는 **superpowers 플러그인**이 설치되어 있어야 정상 동작한다.
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
claude plugin add superpowers
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
superpowers가 제공하는 skill(brainstorming, writing-plans, executing-plans,
|
|
14
|
+
dispatching-parallel-agents 등)을 각 Phase에서 활용한다.
|
|
15
|
+
플러그인 미설치 시 Agent 병렬 실행, 플랜 작성 등 핵심 기능이 제한된다.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 개요
|
|
20
|
+
|
|
21
|
+
사용자의 기능 요청을 5단계 파이프라인으로 처리한다.
|
|
22
|
+
**각 Phase의 체크포인트에서 반드시 사용자 승인을 받은 후 다음 단계로 진행한다.**
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Agent 구성
|
|
27
|
+
|
|
28
|
+
| Agent | 모델 | 역할 | 사용 Skill |
|
|
29
|
+
|-------|------|------|-----------|
|
|
30
|
+
| PM (Alex) | Opus | 전체 오케스트레이터, 컨텍스트 조립 | `analyze-requirements` `assemble-context` |
|
|
31
|
+
| 기획자 (Mina) | Opus | 기능 명세, 화면 목록, API 초안 작성 | `explore-codebase` `write-plan-doc` |
|
|
32
|
+
| 디자이너 (Lena) | Sonnet | UI/UX 명세, 디자인 토큰, 컴포넌트 설계 | `explore-design-system` `write-design-spec` |
|
|
33
|
+
| FE 개발자 (Jay) | Sonnet | 컴포넌트 구현, 상태 관리, API 연동 | `explore-fe-codebase` `implement-components` `api-integration` |
|
|
34
|
+
| BE 개발자 (Sam) | Sonnet | API 구현, DB 마이그레이션, 인증 | `explore-be-codebase` `implement-api` `db-migration` |
|
|
35
|
+
| 인프라 (Dex) | Sonnet | Docker, CI/CD, 환경변수 관리 | `explore-infra` `write-dockerfile` `write-cicd` |
|
|
36
|
+
| QA 엔지니어 (Eva) | Sonnet | 기능 테스트, 엣지케이스, E2E 검증 | `explore-implementation` `write-test-cases` `write-qa-report` |
|
|
37
|
+
| 보안 리뷰어 (Rex) | Opus | OWASP 기준 취약점 검토, 보안 감사 | `scan-vulnerabilities` `review-auth` `write-security-report` |
|
|
38
|
+
| 코드 리뷰어 (Nora) | Sonnet | 코드 품질, 컨벤션, 기획 대비 구현 검토 | `explore-implementation` |
|
|
39
|
+
|
|
40
|
+
> **모델 선택 기준:**
|
|
41
|
+
> - `Opus` → 깊은 추론과 판단이 필요한 역할 (PM, 기획자, 보안 리뷰어)
|
|
42
|
+
> - `Sonnet` → 구조화된 구현과 문서 작성 역할 (나머지 모두)
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## 참고 문서
|
|
47
|
+
|
|
48
|
+
| 문서 | 설명 |
|
|
49
|
+
|------|------|
|
|
50
|
+
| [references/context-structure.md](references/context-structure.md) | `context/`, `reports/` 디렉토리 구조 및 파일 번호 규칙 |
|
|
51
|
+
| [references/task-context-template.md](references/task-context-template.md) | `04_task_*.md` 작성 템플릿 (Section 1~3 공통, 4~5 Agent별 차이) |
|
|
52
|
+
| [references/pm-context-assembly.md](references/pm-context-assembly.md) | PM이 Phase 산출물을 조합하여 Task Context를 생성하는 절차 |
|
|
53
|
+
| [references/agents/pm.md](references/agents/pm.md) | PM Agent 상세 설계 |
|
|
54
|
+
| [references/agents/planner.md](references/agents/planner.md) | 기획자 Agent 상세 설계 |
|
|
55
|
+
| [references/agents/designer.md](references/agents/designer.md) | 디자이너 Agent 상세 설계 |
|
|
56
|
+
| [references/agents/fe-developer.md](references/agents/fe-developer.md) | FE 개발자 Agent 상세 설계 |
|
|
57
|
+
| [references/agents/be-developer.md](references/agents/be-developer.md) | BE 개발자 Agent 상세 설계 |
|
|
58
|
+
| [references/agents/infra-developer.md](references/agents/infra-developer.md) | 인프라 Agent 상세 설계 |
|
|
59
|
+
| [references/agents/qa-engineer.md](references/agents/qa-engineer.md) | QA 엔지니어 Agent 상세 설계 |
|
|
60
|
+
| [references/agents/security-reviewer.md](references/agents/security-reviewer.md) | 보안 리뷰어 Agent 상세 설계 |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## PHASE 0: 인풋 수신
|
|
65
|
+
|
|
66
|
+
사용자가 요구사항을 입력하면 **PM Agent(Alex)** 가 분석한다.
|
|
67
|
+
→ **`analyze-requirements` skill을 사용하여** 코드베이스를 탐색하고 영향 범위를 파악한다.
|
|
68
|
+
|
|
69
|
+
**수행 작업:**
|
|
70
|
+
1. 신규 기능인지 기존 기능 수정인지 판단
|
|
71
|
+
2. 영향 범위 파악 (FE / BE / Infra / 전체)
|
|
72
|
+
3. 필요한 Agent 역할 목록 결정
|
|
73
|
+
4. 예상 작업 순서 설계 (순차 / 병렬 / 팀)
|
|
74
|
+
|
|
75
|
+
**출력물:** `context/00_requirements.md`
|
|
76
|
+
```
|
|
77
|
+
포함 내용:
|
|
78
|
+
- 요청 내용 요약
|
|
79
|
+
- 작업 유형 (신규 기능 / 기능 수정 / 버그 수정)
|
|
80
|
+
- 영향 범위 (FE / BE / DB / Infra)
|
|
81
|
+
- 투입 Agent 목록
|
|
82
|
+
- 예상 실행 순서
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
> ✅ **체크포인트 1**: 사용자에게 작업 범위를 제시하고 확인받는다.
|
|
86
|
+
> 승인 전까지 다음 Phase로 넘어가지 않는다.
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## PHASE 1: 기획 (순차, 단일 Agent)
|
|
91
|
+
|
|
92
|
+
**기획자 Agent(Mina)** 가 요구사항 + 기존 서비스 컨텍스트를 바탕으로 기획안을 작성한다.
|
|
93
|
+
→ **`explore-codebase` skill** 으로 기존 서비스 현황을 파악한 후
|
|
94
|
+
→ **`write-plan-doc` skill** 의 포맷 기준으로 기획안을 작성한다.
|
|
95
|
+
|
|
96
|
+
**공통 인풋:**
|
|
97
|
+
- `context/00_requirements.md`
|
|
98
|
+
- 기존 서비스 코드베이스 (있는 경우)
|
|
99
|
+
|
|
100
|
+
**출력물 — `context/01_plan.md` + `context/01_plan.html`:**
|
|
101
|
+
```
|
|
102
|
+
포함 내용:
|
|
103
|
+
1. 개요 (목적, 핵심 가치, 작업 범위)
|
|
104
|
+
2. 유저 스토리
|
|
105
|
+
3. 기능 명세 (표 형식)
|
|
106
|
+
4. 화면 목록 (표 형식)
|
|
107
|
+
5. API 초안 (Method / Path / 설명 / 인증 여부)
|
|
108
|
+
6. 엣지케이스 & 예외 처리
|
|
109
|
+
7. 비기능 요구사항 (성능, 보안, 접근성)
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
> ✅ **체크포인트 2**: 기획안을 사용자에게 제시하고 검토/승인받는다.
|
|
113
|
+
> 이 기획안이 이후 모든 Agent의 공통 기준이 된다.
|
|
114
|
+
> 승인 전까지 다음 Phase로 넘어가지 않는다.
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## PHASE 2: 설계 (병렬 Sub-agents)
|
|
119
|
+
|
|
120
|
+
승인된 기획안을 공통 인풋으로 두 Agent가 **병렬로** 설계를 수행한다.
|
|
121
|
+
|
|
122
|
+
**공통 인풋 (양쪽 동일):**
|
|
123
|
+
- `context/00_requirements.md`
|
|
124
|
+
- `context/01_plan.md`
|
|
125
|
+
|
|
126
|
+
| Agent | 사용 Skill | 출력물 |
|
|
127
|
+
|-------|-----------|--------|
|
|
128
|
+
| 디자이너 (Lena) | `explore-design-system` → `write-design-spec` | `context/02_design_spec.md` |
|
|
129
|
+
| BE 설계자 (Sam) | `explore-be-codebase` → `implement-api` | `context/03_api_spec.md` + `context/03_erd.md` |
|
|
130
|
+
|
|
131
|
+
**디자이너 산출물 — `context/02_design_spec.md`:**
|
|
132
|
+
```
|
|
133
|
+
포함 내용:
|
|
134
|
+
1. 디자인 토큰 (색상 hex / 타이포 / 간격 / 반경 / 그림자)
|
|
135
|
+
2. 공통 컴포넌트 (Props 타입 + 상태별 스타일)
|
|
136
|
+
3. 화면별 레이아웃 (ASCII 박스 + 반응형 3단계)
|
|
137
|
+
4. 인터랙션 & 애니메이션
|
|
138
|
+
5. 접근성 가이드
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**BE 설계자 산출물 — `context/03_api_spec.md` + `context/03_erd.md`:**
|
|
142
|
+
```
|
|
143
|
+
포함 내용:
|
|
144
|
+
- ERD (테이블 & 관계)
|
|
145
|
+
- API 명세 상세 (request / response 타입)
|
|
146
|
+
- 인증/권한 설계
|
|
147
|
+
- 의존성 & 서비스 경계
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
**실행 방법:** Agent 도구를 사용하여 두 Agent를 동시에 실행한다.
|
|
151
|
+
|
|
152
|
+
> ✅ **체크포인트 3**: 디자인 명세 + API 명세를 사용자에게 제시하고 검토받는다.
|
|
153
|
+
> 여기서 방향을 수정하면 구현 비용을 절감할 수 있다.
|
|
154
|
+
> 승인 전까지 다음 Phase로 넘어가지 않는다.
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## PHASE 3: 구현 (Agent Teams)
|
|
159
|
+
|
|
160
|
+
**PM Agent(Alex)** 가 Phase 0~2 산출물을 조합하여 Agent별 Task Context를 생성한다.
|
|
161
|
+
→ **`assemble-context` skill을 사용하여** `04_task_*.md` 파일을 조립한다.
|
|
162
|
+
→ 조립 상세: [references/pm-context-assembly.md](references/pm-context-assembly.md) 참조
|
|
163
|
+
|
|
164
|
+
**Task 파일 구조 (모든 파일 동일한 5개 섹션):**
|
|
165
|
+
```
|
|
166
|
+
## 1. 프로젝트 현황 ← 모든 Agent 동일
|
|
167
|
+
## 2. 이번 요구사항 ← 모든 Agent 동일
|
|
168
|
+
## 3. 기획안 요약 ← 모든 Agent 동일
|
|
169
|
+
## 4. 네 역할과 작업 지시 ← Agent별로 다름
|
|
170
|
+
## 5. 참고 파일 ← Agent별로 다름
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
| Agent | Task 파일 | 사용 Skill | 담당 |
|
|
174
|
+
|-------|-----------|-----------|------|
|
|
175
|
+
| FE (Jay) | `context/04_task_FE.md` | `explore-fe-codebase` `implement-components` `api-integration` | UI 구현, 상태 관리, API 연동 |
|
|
176
|
+
| BE (Sam) | `context/04_task_BE.md` | `explore-be-codebase` `implement-api` `db-migration` | API 구현, DB 마이그레이션, 인증 |
|
|
177
|
+
| Infra (Dex) | `context/04_task_INFRA.md` | `explore-infra` `write-dockerfile` `write-cicd` | Docker, CI/CD, 환경변수 |
|
|
178
|
+
|
|
179
|
+
**Agent Teams 소통 규칙:**
|
|
180
|
+
```
|
|
181
|
+
FE ↔ BE: API 응답 형식 변경, 필드 추가/제거 시 직접 메시지
|
|
182
|
+
FE ↔ Infra: 환경변수 이름, 포트 번호 확정 시 직접 메시지
|
|
183
|
+
BE ↔ Infra: DB 연결 설정, 포트 노출 범위 협의 시 직접 메시지
|
|
184
|
+
|
|
185
|
+
메시지 형식:
|
|
186
|
+
[발신→수신 공지]
|
|
187
|
+
변경 내용: ...
|
|
188
|
+
수신 Agent에서 수정 필요한 것: ...
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
**실행 원칙:**
|
|
192
|
+
- 독립적인 작업은 병렬로 동시 실행
|
|
193
|
+
- 의존성이 있는 작업은 순차 실행
|
|
194
|
+
(예: BE API 완성 → FE 연동 순서)
|
|
195
|
+
- 파일 충돌 방지: 각 Agent는 자신의 담당 파일만 수정
|
|
196
|
+
|
|
197
|
+
> ✅ **체크포인트 4** (선택적): 대형 기능은 50% 시점에
|
|
198
|
+
> 사용자에게 진행 상황을 공유하고 중간 리뷰를 받는다.
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## PHASE 4: QA + 통합 (Agent Teams)
|
|
203
|
+
|
|
204
|
+
**PM Agent(Alex)** 가 **`assemble-context` skill을 사용하여**
|
|
205
|
+
QA/보안/코드리뷰 Agent 각각의 task 파일을 생성하고 전달한다.
|
|
206
|
+
|
|
207
|
+
**공통 인풋 (세 Agent 동일):**
|
|
208
|
+
- `context/01_plan.md` (검증 기준)
|
|
209
|
+
- `context/02_design_spec.md`
|
|
210
|
+
- `context/03_api_spec.md`
|
|
211
|
+
- 구현된 FE/BE/Infra 코드 전체
|
|
212
|
+
|
|
213
|
+
| Agent | Task 파일 | 사용 Skill | 담당 |
|
|
214
|
+
|-------|-----------|-----------|------|
|
|
215
|
+
| QA (Eva) | `context/04_task_QA.md` | `explore-implementation` `write-test-cases` `write-qa-report` | 기능 테스트, 엣지케이스, E2E 검증 |
|
|
216
|
+
| 보안 리뷰어 (Rex) | `context/04_task_SEC.md` | `scan-vulnerabilities` `review-auth` `write-security-report` | OWASP 기준 취약점 검토 |
|
|
217
|
+
| 코드 리뷰어 (Nora) | `context/04_task_REVIEW.md` | `explore-implementation` | 코드 품질, 컨벤션, 기획 대비 검토 |
|
|
218
|
+
|
|
219
|
+
**산출물:**
|
|
220
|
+
```
|
|
221
|
+
context/qa_report.md ← QA 최종 보고서
|
|
222
|
+
context/security_report.md ← 보안 리뷰 보고서
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
**버그/취약점 발견 시 처리 흐름:**
|
|
226
|
+
```
|
|
227
|
+
발견 → 해당 Agent(FE/BE/Infra)에게 직접 보고
|
|
228
|
+
→ 수정 완료 통보 받음
|
|
229
|
+
→ 동일 시나리오로 재검증
|
|
230
|
+
→ 통과 시 완료 처리
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**심각도별 배포 차단 기준:**
|
|
234
|
+
```
|
|
235
|
+
Critical → 반드시 수정 후 배포 (QA + 보안 모두)
|
|
236
|
+
High → 반드시 수정 후 배포 (QA + 보안 모두)
|
|
237
|
+
Medium → PM/사용자가 배포 여부 판단
|
|
238
|
+
Low → 배포 후 처리 가능
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
> ✅ **체크포인트 5**: QA 보고서 + 보안 보고서를 사용자에게 제시한다.
|
|
242
|
+
> Critical/High 미해결 항목이 없을 때만 배포를 권고한다.
|
|
243
|
+
> 사용자 최종 승인 후 Infra Agent(Dex)가 배포를 실행한다.
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
## 컨텍스트 파일 누적 구조
|
|
248
|
+
|
|
249
|
+
각 Phase 산출물은 `context/` 폴더에 번호순으로 쌓인다:
|
|
250
|
+
|
|
251
|
+
```
|
|
252
|
+
context/
|
|
253
|
+
├── 00_requirements.md ← PHASE 0: PM 분석 결과
|
|
254
|
+
├── 01_plan.md ← PHASE 1: 기획안 (Agent용)
|
|
255
|
+
├── 01_plan.html ← PHASE 1: 기획안 (사람용 보고서)
|
|
256
|
+
├── 02_design_spec.md ← PHASE 2: 디자인 명세
|
|
257
|
+
├── 03_api_spec.md ← PHASE 2: API 명세
|
|
258
|
+
├── 03_erd.md ← PHASE 2: ERD
|
|
259
|
+
├── 04_task_FE.md ← PHASE 3: FE Agent 작업 지시
|
|
260
|
+
├── 04_task_BE.md ← PHASE 3: BE Agent 작업 지시
|
|
261
|
+
├── 04_task_INFRA.md ← PHASE 3: Infra Agent 작업 지시
|
|
262
|
+
├── 04_task_QA.md ← PHASE 4: QA Agent 작업 지시
|
|
263
|
+
├── 04_task_SEC.md ← PHASE 4: 보안 리뷰어 작업 지시
|
|
264
|
+
├── 04_task_REVIEW.md ← PHASE 4: 코드 리뷰어 작업 지시
|
|
265
|
+
├── qa_report.md ← PHASE 4: QA 최종 보고서
|
|
266
|
+
└── security_report.md ← PHASE 4: 보안 리뷰 보고서
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
|
|
271
|
+
## 핵심 원칙
|
|
272
|
+
|
|
273
|
+
1. **체크포인트 필수**
|
|
274
|
+
모든 Phase 전환 시 사용자 승인이 있다. 절대 건너뛰지 않는다.
|
|
275
|
+
|
|
276
|
+
2. **공통 인풋 공유**
|
|
277
|
+
병렬 Agent들은 동일한 문서를 인풋으로 받아 일관성을 유지한다.
|
|
278
|
+
|
|
279
|
+
3. **컨텍스트 자족성**
|
|
280
|
+
각 Agent는 자신의 `04_task_*.md` 하나만 읽으면
|
|
281
|
+
작업에 필요한 모든 정보가 있어야 한다.
|
|
282
|
+
|
|
283
|
+
4. **직접 소통 (Agent Teams)**
|
|
284
|
+
구현/QA Phase에서 Agent 간 이슈는 중앙 조율 없이 직접 전달한다.
|
|
285
|
+
변경 내용은 반드시 해당 명세 파일에도 반영한다.
|
|
286
|
+
|
|
287
|
+
5. **병렬 우선**
|
|
288
|
+
독립적인 작업은 항상 병렬 Agent로 동시 실행한다.
|
|
289
|
+
의존성이 있을 때만 순차 실행한다.
|
|
290
|
+
|
|
291
|
+
6. **산출물 누적**
|
|
292
|
+
각 Phase 산출물은 `context/` 폴더에 번호순으로 쌓여 히스토리를 형성한다.
|
|
293
|
+
파일을 덮어쓰지 않는다.
|
|
294
|
+
|
|
295
|
+
7. **배포는 사람이 결정한다**
|
|
296
|
+
Infra Agent는 사용자의 최종 승인(CP5) 이후에만 배포를 실행한다.
|
|
297
|
+
Critical/High 미해결 항목이 있으면 배포를 실행하지 않는다.
|
|
298
|
+
|
|
299
|
+
8. **모호하면 질문한다**
|
|
300
|
+
어떤 Agent도 요구사항이 불명확할 때 임의로 가정하지 않는다.
|
|
301
|
+
반드시 PM을 통해 사용자에게 질문하고 확인 후 진행한다.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# 컨텍스트 파일 구조
|
|
2
|
+
|
|
3
|
+
## 디렉토리 레이아웃
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
project/
|
|
7
|
+
├── context/
|
|
8
|
+
│ ├── 00_requirements.md ← 원본 요구사항 (Phase 0 산출물)
|
|
9
|
+
│ ├── 01_plan.md ← 기획자 산출물 (Phase 1, 체크포인트 2 승인 후 확정)
|
|
10
|
+
│ ├── 02_design_spec.md ← 디자이너 산출물 (Phase 2, 체크포인트 3 승인 후 확정)
|
|
11
|
+
│ ├── 03_api_spec.md ← BE 설계 산출물 (Phase 2, 체크포인트 3 승인 후 확정)
|
|
12
|
+
│ ├── 04_task_FE.md ← FE Agent용 최종 컨텍스트
|
|
13
|
+
│ ├── 04_task_BE.md ← BE Agent용 최종 컨텍스트
|
|
14
|
+
│ ├── 04_task_INFRA.md ← Infra Agent용 최종 컨텍스트
|
|
15
|
+
│ └── 04_task_QA.md ← QA Agent용 최종 컨텍스트
|
|
16
|
+
└── reports/
|
|
17
|
+
└── *.html ← 사람이 보는 버전 (context/ 파일에서 자동 변환)
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## 파일 번호 규칙
|
|
21
|
+
|
|
22
|
+
| 번호 | Phase | 파일 | 확정 시점 |
|
|
23
|
+
|------|-------|------|-----------|
|
|
24
|
+
| 00 | Phase 0 | `00_requirements.md` | 체크포인트 1 승인 후 |
|
|
25
|
+
| 01 | Phase 1 | `01_plan.md` | 체크포인트 2 승인 후 |
|
|
26
|
+
| 02 | Phase 2 | `02_design_spec.md` | 체크포인트 3 승인 후 |
|
|
27
|
+
| 03 | Phase 2 | `03_api_spec.md` | 체크포인트 3 승인 후 |
|
|
28
|
+
| 04 | Phase 3~4 | `04_task_*.md` | PM이 조립 후 배포 |
|
|
29
|
+
|
|
30
|
+
## 핵심 규칙
|
|
31
|
+
|
|
32
|
+
- 체크포인트마다 `context/` 파일이 누적되어 히스토리가 보존된다.
|
|
33
|
+
- 각 Agent는 자신의 `04_task_*.md` 하나만 읽으면 필요한 컨텍스트가 전부 포함되어 있다.
|
|
34
|
+
- 사람은 `reports/` 폴더의 HTML을 통해 검토한다.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# PM 컨텍스트 조립 가이드
|
|
2
|
+
|
|
3
|
+
PM Agent의 핵심 역할 중 하나는 각 Phase 산출물을 누적 조합하여 실행 Agent용 Task Context를 생성하는 것이다.
|
|
4
|
+
|
|
5
|
+
## 조립 흐름
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
00_requirements.md (Phase 0 산출물)
|
|
9
|
+
+
|
|
10
|
+
01_plan.md (Phase 1 기획자 산출물)
|
|
11
|
+
+
|
|
12
|
+
02_design_spec.md (Phase 2 디자이너 산출물)
|
|
13
|
+
+
|
|
14
|
+
03_api_spec.md (Phase 2 BE 설계 산출물)
|
|
15
|
+
↓
|
|
16
|
+
PM이 합쳐서 → 04_task_FE.md 생성
|
|
17
|
+
04_task_BE.md 생성
|
|
18
|
+
04_task_INFRA.md 생성
|
|
19
|
+
04_task_QA.md 생성
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## 조립 절차
|
|
23
|
+
|
|
24
|
+
1. `00_requirements.md`에서 프로젝트 현황과 요구사항을 추출 → Section 1, 2에 배치
|
|
25
|
+
2. `01_plan.md`에서 기획안 내용을 추출 → Section 3에 배치
|
|
26
|
+
3. Agent 역할에 맞는 작업 지시를 작성 → Section 4에 배치
|
|
27
|
+
4. `02_design_spec.md`, `03_api_spec.md` 등에서 해당 Agent에 필요한 참고 자료를 선별 → Section 5에 배치
|
|
28
|
+
|
|
29
|
+
## 조립 규칙
|
|
30
|
+
|
|
31
|
+
- **Section 1~3은 복사**: 모든 `04_task_*.md`에 동일하게 들어간다.
|
|
32
|
+
- **Section 4~5는 맞춤 작성**: Agent의 역할과 필요한 참고 자료에 따라 다르게 작성한다.
|
|
33
|
+
- **자족성 보장**: 각 Agent가 자신의 파일 하나만 읽으면 작업에 필요한 모든 정보가 포함되어야 한다. 외부 파일을 추가로 읽어야 하는 상황을 만들지 않는다.
|
|
34
|
+
- **참고 자료 선별**: FE Agent에게 ERD 전체를 줄 필요는 없다. 각 Agent에게 실제로 필요한 부분만 포함한다.
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Task Context 템플릿 (04_task_*.md)
|
|
2
|
+
|
|
3
|
+
각 Agent에게 전달되는 최종 컨텍스트 파일의 표준 구조.
|
|
4
|
+
|
|
5
|
+
## 템플릿
|
|
6
|
+
|
|
7
|
+
```markdown
|
|
8
|
+
# TASK CONTEXT
|
|
9
|
+
|
|
10
|
+
## 1. 프로젝트 현황
|
|
11
|
+
- 서비스명: ...
|
|
12
|
+
- 현재 단계: ...
|
|
13
|
+
- 기술 스택: ...
|
|
14
|
+
|
|
15
|
+
## 2. 이번 요구사항
|
|
16
|
+
(PM이 정리한 작업 범위)
|
|
17
|
+
|
|
18
|
+
## 3. 기획안
|
|
19
|
+
(기획자 Agent 산출물)
|
|
20
|
+
|
|
21
|
+
## 4. 내 역할 및 작업 지시
|
|
22
|
+
- 역할: (예: 프론트엔드 개발자)
|
|
23
|
+
- 해야 할 일: ...
|
|
24
|
+
- 산출물 형식: ...
|
|
25
|
+
- 건드리면 안 되는 것: ...
|
|
26
|
+
|
|
27
|
+
## 5. 참고 자료
|
|
28
|
+
- API 명세: (링크 or 인라인)
|
|
29
|
+
- 디자인 시안: (파일 경로)
|
|
30
|
+
- 관련 기존 코드: (파일 경로)
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## 작성 규칙
|
|
34
|
+
|
|
35
|
+
- **Section 1~3**: 모든 Agent 동일한 내용을 공유한다.
|
|
36
|
+
- **Section 4~5**: Agent별로 다르게 작성한다.
|
|
37
|
+
|
|
38
|
+
## Agent별 Section 4 작성 예시
|
|
39
|
+
|
|
40
|
+
### FE Agent
|
|
41
|
+
```markdown
|
|
42
|
+
## 4. 내 역할 및 작업 지시
|
|
43
|
+
- 역할: 프론트엔드 개발자
|
|
44
|
+
- 해야 할 일: 로그인/회원가입 UI 구현, 토큰 기반 상태 관리
|
|
45
|
+
- 산출물 형식: React 컴포넌트 + 페이지 라우팅
|
|
46
|
+
- 건드리면 안 되는 것: API 서버 코드, DB 스키마
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### BE Agent
|
|
50
|
+
```markdown
|
|
51
|
+
## 4. 내 역할 및 작업 지시
|
|
52
|
+
- 역할: 백엔드 개발자
|
|
53
|
+
- 해야 할 일: /auth/* API 구현, DB 마이그레이션
|
|
54
|
+
- 산출물 형식: REST API 엔드포인트 + DB 마이그레이션 파일
|
|
55
|
+
- 건드리면 안 되는 것: 프론트엔드 코드, CI/CD 설정
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### QA Agent
|
|
59
|
+
```markdown
|
|
60
|
+
## 4. 내 역할 및 작업 지시
|
|
61
|
+
- 역할: QA 엔지니어
|
|
62
|
+
- 해야 할 일: 인증 플로우 전체 테스트, 엣지케이스 검증
|
|
63
|
+
- 산출물 형식: 테스트 결과 리포트 + 버그 목록
|
|
64
|
+
- 건드리면 안 되는 것: 프로덕션 코드 직접 수정
|
|
65
|
+
```
|