draft
Meeting-to-Develop: Notion 티켓의 미팅 노트/요구사항을 자동 분석하여 개발 초안 작성 & Notion 페이지에 반영
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Meeting-to-Develop: Notion 티켓의 미팅 노트/요구사항을 자동 분석하여 개발 초안 작성 & Notion 페이지에 반영
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
로컬 개발 서버 전체 기동 (BE + FE, hot-reload)
초기 워크스페이스 세팅 — GitHub Token, Figma MCP, Notion MCP 연결 + 레포 클론 + Cursor 워크스페이스 구성
모든 repo를 main 브랜치로 체크아웃 & pull하여 최신화
풀스택 구현 오케스트레이션 (BE→FE→APP → 리뷰→테스트→PR)
크로스 레포 리서치 오케스트레이션 (BE→FE→APP 순서 위임)
프로젝트 지식 축적 & 관리 — learn(교훈 추출), ingest(소스 학습), query(질의), lint(건강성 ��사), status(현황)
| name | draft |
| description | Meeting-to-Develop: Notion 티켓의 미팅 노트/요구사항을 자동 분석하여 개발 초안 작성 & Notion 페이지에 반영 |
회의 노트 또는 Notion 티켓을 자동 분석하여 /orchestrate 호환 개발 초안을 작성한다.
/orchestrate 호환: 분석 초안 완료 후 바로 파이프라인 실행 가능/draft DEVS-3 ← 이슈 트래킹 Unique ID (권장)
/draft 12345678-1234-1234-1234-123456789abc ← Notion 페이지 UUID
/draft "목표 생성 기능 추가" ← 페이지 제목 검색
/draft
인터뷰로 요구사항을 수집한 뒤 새 Notion 페이지를 생성한다. 하단 "부록: 모드 B 인터뷰 플로우" 참조.
DEVS-N (Unique ID) 형식인 경우 (권장):
DEVS-{N} 패턴 매칭 시 (대소문자 무시, 예: DEVS-3, devs-3):
mcp__notion__API-post-search(
query: "",
filter: { "property": "object", "value": "page" }
)
parent.database_id === "34ce8349-9ccf-807d-b092-c5a6621792af" (이슈 트래킹 DB)properties.ID.unique_id.number === Npage_id로 상세 조회:mcp__notion__API-retrieve-a-page(page_id: "{찾은 PAGE_ID}")
mcp__notion__API-get-block-children(block_id: "{찾은 PAGE_ID}")
페이지 UUID가 주어진 경우:
mcp__notion__API-retrieve-a-page(page_id: "{PAGE_ID}")
mcp__notion__API-get-block-children(block_id: "{PAGE_ID}")
페이지 제목이 주어진 경우:
mcp__notion__API-post-search(query: "{페이지 제목}", filter: { "property": "object", "value": "page" })
검색 결과에서 가장 관련성 높은 페이지를 선택한다. 여러 개 매칭되면 사용자에게 확인.
Notion MCP 미연결 fallback:
Notion MCP를 사용할 수 없으면 사용자에게 직접 내용을 요청한다:
티켓 내용을 붙여넣어주세요. (제목 + 본문)
분석 입력 = Notion 페이지 제목 + Notion 페이지 본문 (blocks)
페이지 내용을 분석하여 다음 5가지를 자동 판별한다:
| 순서 | 판별 기준 |
|---|---|
| 1 | Notion property에 타입 필드 → 그대로 사용 |
| 2 | 제목/본문에 "버그", "bug", "fix", "오류" → bug |
| 3 | Figma 링크 포함 → feature |
| 4 | "추가", "신규", "새로운" → feature |
| 5 | "변경", "수정", "개선" → modify |
| 6 | "## 현재 동작" 또는 "## 변경 내용" → modify |
| 7 | 불확실 → 사용자에게 확인 |
| Repo | 판별 기준 |
|---|---|
| BE | API, 엔드포인트, 로직, 서버, DB, 엔터티, 도메인 관련 |
| FE | UI, 화면, 페이지, 컴포넌트, 웹 관련 |
| APP | 모바일, 앱, 네이티브, 푸시 알림 관련 |
GROWIT BE 도메인 목록에서 매칭:
| 도메인 | 키워드 |
|---|---|
| goal | 목표, 행성, 플래닛, 기간, 진행률 |
| todo | 할일, 투두, 루틴, 일정, 미션 |
| user | 회원, 로그인, 가입, 인증, OAuth, 프로필, 사주 |
| advice | 조언, 멘토, AI, 그로롱, 채팅, 운세 |
| retrospect | 회고, KPT, 되돌아보기, 분석 |
| mission | 미션, 보상, 달성 |
| resource | 명언, 초대, 알림, 디스코드 |
본문에서 Figma URL을 자동 추출:
figma.com/design/ → 디자인 링크figma.com/file/ → 기획 링크type이 feature 또는 modify (BE 포함)인 경우:
코드베이스를 참조하여 DDD Aggregate Root 기반으로 분석:
분석 참조 소스:
com.growit.app.{domain}/ 패키지 구조type이 bug인 경우:
분석 결과를 사용자에게 보여주고 확인을 받는다:
## 📋 분석 초안
### 기본 정보
- **Type**: feature
- **Domain**: goal
- **Affected Repos**: BE, FE
- **Figma**: {URL 또는 TBD}
### 개발 사항 요약
{요구사항에서 추출한 핵심 요약}
### 도메인 분석 (BE)
#### Aggregate Root
| Entity | 변경 | 필드 | 비고 |
|--------|------|------|------|
| Goal | 수정 | newField: String | 새 필드 추가 |
#### API Endpoints
| Method | Path | 설명 |
|--------|------|------|
| POST | /goals | 목표 생성 |
| GET | /goals/{id} | 목표 조회 |
#### Business Rules
- {규칙 1}
- {규칙 2}
#### Migration
- V{next}__description.sql 필요 여부
### 영향도
- BE: {상세}
- FE: {상세}
- APP: {상세}
사용자가 확인하면 분석 초안을 기존 페이지 하단에 append한다.
mcp__notion__API-patch-block-children로 페이지 하단에 블록을 추가한다:
mcp__notion__API-patch-block-children(
block_id: "{PAGE_ID}",
children: [
{ "type": "paragraph", "paragraph": { "rich_text": [{ "type": "text", "text": { "content": "---" } }] } },
{ "type": "paragraph", "paragraph": { "rich_text": [{ "type": "text", "text": { "content": "## 개발 초안 (AI 분석)" } }] } },
{ "type": "paragraph", "paragraph": { "rich_text": [{ "type": "text", "text": { "content": "타입: {type} | 도메인: {domain} | 영향: {repos}" } }] } },
{ "type": "paragraph", "paragraph": { "rich_text": [{ "type": "text", "text": { "content": "{분석 초안 본문}" } }] } }
]
)
append할 내용 구조:
---
## 개발 초안 (AI 분석) — {YYYY-MM-DD HH:mm}
### 입력
- 타입: {type}
- 도메인: {domain}
- 영향 Repo: {BE, FE, APP}
- 기획: {Figma URL 또는 TBD}
- 디자인: {Figma URL 또는 TBD}
### 한줄 요약
{개발 사항 핵심 요약}
### AI 도메인 분석
#### Aggregates
{Entity별 필드 테이블}
#### API Endpoints
{Command + Query 엔드포인트 테이블}
#### Business Rules
{Policy 목록}
#### Migration
{필요한 Flyway 마이그레이션}
### 영향도
- BE: {상세}
- FE: {상세}
- APP: {상세}
### 비고
{추가 맥락, 주의사항}
페이지가 "이슈 트래킹" Database 소속이면 properties를 업데이트한다:
mcp__notion__API-patch-page(
page_id: "{PAGE_ID}",
properties: {
"상태": { "status": { "name": "미해결" } },
"우선순위": { "select": { "name": "{높음|보통|낮음}" } }
}
)
우선순위 판별 기준:
| 우선순위 | 조건 |
|---|---|
| 높음 | 장애/버그, 핵심 기능 블로커, 마감 임박 |
| 보통 | 일반 기능 개발, 개선 |
| 낮음 | 리팩토링, 부가 기능, 기술 부채 |
Database 소속이 아닌 단독 페이지면 이 단계를 스킵.
분석 결과를 .draft/ 에 로컬 저장한다:
mkdir -p .draft/{PAGE_ID}
.draft/{PAGE_ID}/draft.md — 분석 초안 전문 (Notion에 올린 것과 동일)
.draft/{PAGE_ID}/context.json — 구조화된 메타데이터:
{
"notion": {
"pageId": "{PAGE_ID}",
"title": "{페이지 제목}",
"url": "https://notion.so/{PAGE_ID}"
},
"ticket": {
"type": "feature",
"domain": "goal",
"summary": "{한줄 요약}"
},
"execution": {
"affectedRepos": ["be", "fe"],
"branchName": "feat/GROWIT-{N}-{kebab-summary}"
},
"analysis": {
"aggregates": [],
"endpoints": [],
"migrations": [],
"businessRules": []
}
}
/draft {PAGE_ID 또는 제목}
│
├── Phase 1: Notion 페이지 조회 (MCP)
├── Phase 2: AI 자동 분석
│ ├── type 판별 (feature/modify/bug)
│ ├── affected repos 판별 (BE/FE/APP)
│ ├── domain 판별 (goal/todo/user/...)
│ ├── Figma 링크 추출
│ ├── 개발 사항 요약
│ └── 도메인 분석 (Aggregate/API/Rules/Migration)
├── Phase 3: 분석 초안 미리보기 → 사용자 확인
├── Phase 4: Notion 페이지에 초안 append (MCP)
├── Phase 5: 로컬 .draft/ 저장
└── 완료 → /orchestrate {PAGE_ID} 으로 개발 시작
후속 작업 (사람):
├── 분석 초안 리뷰 + 필요 시 수정
├── Figma 기획/디자인 작업 (TBD 링크 채우기)
└── /orchestrate {PAGE_ID} 실행
| 항목 | 값 |
|---|---|
| DB 이름 | 이슈 트래킹 |
| DB ID | 34ce83499ccf807db092c5a6621792af |
| ID Prefix | DEVS |
| Property | Type | 옵션 | 용도 |
|---|---|---|---|
이슈 | title | (필수) | 이슈 제목 — [{domain}] {한줄 요약} |
상태 | status | 백로그, 미해결, 진행 중, 검토 중, 테스트 중, 수정하지 않기로 결정함, 해결 | 새 이슈 → 백로그 |
우선순위 | select | 높음, 보통, 낮음 | 인터뷰 or 분석에서 결정 |
배정 대상 | people | - | (선택) 사용자 지정 시 설정 |
마감일 | date | - | (선택) 사용자 지정 시 설정 |
ID | unique_id | DEVS-N (자동) | Notion 자동 부여 |
생성 일시 | created_time | (자동) | Notion 자동 부여 |
모드 B에서 새 이슈 생성 시 이 DB에 페이지를 추가한다. 모드 A Phase 4-2에서 기존 이슈의
상태,우선순위를 업데이트한다.
| 용도 | MCP 도구 |
|---|---|
| 페이지 검색 | mcp__notion__API-post-search |
| 페이지 조회 | mcp__notion__API-retrieve-a-page |
| 페이지 본문 조회 | mcp__notion__API-get-block-children |
| 본문 append | mcp__notion__API-patch-block-children |
| 페이지 properties 수정 | mcp__notion__API-patch-page |
| 새 페이지 생성 | mcp__notion__API-post-page |
| Domain | Aggregate Root | 하위 Aggregate |
|---|---|---|
| goal | Goal | Planet, GoalAnalysis |
| todo | ToDo | Routine |
| user | User | UserToken, Promotion, UserAdviceStatus, UserStats |
| advice | ChatAdvice, MentorAdvice | Grorong |
| retrospect | Retrospect | GoalRetrospect |
| mission | Mission | - |
| resource | Saying | - |
/draft 단독 실행 시 (페이지 ID 없음), 인터뷰로 요구사항을 수집한다.
어떤 유형의 작업인가요?
- feature: 신규 기능 추가
- modify: 기존 기능 변경/개선
- bug: 버그 수정
어떤 도메인인가요?
- goal: 목표 관리
- todo: 할 일 관리
- user: 회원/인증
- advice: AI 조언
- retrospect: 회고
- mission: 미션
- resource: 리소스/알림
구현하고자 하는 내용을 상세히 설명해주세요.
우선순위를 선택해주세요.
- 높음: 장애/버그, 핵심 기능 블로커, 마감 임박
- 보통: 일반 기능 개발, 개선
- 낮음: 리팩토링, 부가 기능, 기술 부채
영향을 미치는 영역을 선택해주세요. (복수 선택 가능)
- BE (API/로직)
- FE (웹 UI)
- APP (모바일)
참고 Figma 링크가 있나요? (없으면 생략)
마감일이 있나요? (없으면 생략)
- 예: 2026-05-01
수집된 정보로 Phase 2~5를 동일하게 실행하되, Phase 4에서 이슈 트래킹 Database에 새 페이지를 생성한다.
Database ID:
34ce83499ccf807db092c5a6621792af(이슈 트래킹)
mcp__notion__API-post-page(
parent: { "database_id": "34ce83499ccf807db092c5a6621792af" },
properties: {
"이슈": { "title": [{ "text": { "content": "[{domain}] {한줄 요약}" } }] },
"상태": { "status": { "name": "백로그" } },
"우선순위": { "select": { "name": "{높음|보통|낮음}" } },
"마감일": { "date": { "start": "{YYYY-MM-DD}" } } // 마감일 있을 때만
},
children: [
// 분석 초안 블록들
]
)
생성 후: 생성된 페이지의 ID(DEVS-N)를 사용자에게 안내하고, 로컬 .draft/ 산출물의 context.json에 기록한다.