From context-planner
Wiki URL·문서·텍스트 요구사항을 인터뷰로 수집하여 plan.md 컨텍스트 패키지를 생성하고, 선택적으로 기획서(PPTX)까지 만든다
How this skill is triggered — by the user, by Claude, or both
Slash command
/context-planner:context-plannerThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
기획 스킬. Wiki·화면 캡처·요구사항 텍스트에 흩어진 컨텍스트를 `plan.md`로 컴파일하고, 선택적으로 한국 기업형 기획서(PPTX)까지 생성한다.
기획 스킬. Wiki·화면 캡처·요구사항 텍스트에 흩어진 컨텍스트를 plan.md로 컴파일하고, 선택적으로 한국 기업형 기획서(PPTX)까지 생성한다.
전통적 기획서(PRD) 대신 에이전트를 위한 컨텍스트 패키지(plan.md)를 만드는 것이 목표.
"기획서를 창작하지 마세요. 컨텍스트를 결합하세요."
Context(기존 문서 수집) → plan.md(맥락 구조화) → Prototype(즉시 검증) — 완벽한 기획서는 없고, 완벽한 흐름만 있을 뿐.Codex는 /context-planner 슬래시 명령을 지원하지 않습니다.
대신 아래 프롬프트를 그대로 입력하세요:
.claude/skills/context-planner/SKILL.md 를 읽고, context-planner 스킬을 실행해줘.
입력: [wiki URL 또는 요구사항 설명]
MCP 연결 시 wiki URL → [A] 경로 자동 진행, 미연결 시 내용 붙여넣기([B] 경로)로 전환합니다.
references/plan-template-lite.md — L1 요구사항 Lite 템플릿 (10섹션)references/plan-template-full.md — L2/L3 Full 템플릿 (14섹션)references/context-pack-spec.md — 성숙도 레벨 L0~L3 정의references/prompt-pack.md — 핵심 프롬프트references/playbook.md — 운영 플레이북, 품질 게이트목적: 사용자가 가진 자료 형태에 맞는 수집 방식을 먼저 결정한다.
시작 인사 (스킬 시작 시 항상 실행):
안녕하세요! 흩어진 요구사항을 plan.md로 정리해드리는 context-planner입니다 😊
Wiki URL, 기획 문서, 또는 말로 설명해주시면 바로 시작하겠습니다!
자동 감지 규칙 (Phase 0 질문을 건너뜀):
http:// 또는 https://)이 포함 → [A] 경로 즉시 진행입력 방식 선택 (자료가 없을 때만 질문):
어떤 방식으로 요구사항을 제공하시겠어요?
[A] Wiki URL 제공
→ 입력한 URL의 하위 페이지까지 자동 탐색하여 컨텍스트 수집
→ Confluence MCP 연결 시 자동 읽기 / 미연결 시 내용 직접 붙여넣기 안내
[B] 기획서 / 문서 붙여넣기
→ 기존 기획서, 요구사항 문서, 회의록 등을 대화창에 직접 복붙
[C] 텍스트로 설명
→ 요구사항을 직접 입력하거나 설명
→ AI가 인터뷰 질문으로 컨텍스트를 채워 나감
[A] Wiki URL 선택 시:
⚠️
list_mcp_resources/list_resources사전 탐색 금지. 도구를 바로 호출하면 된다.
mcp__mcp-atlassian__confluence_get_page({"page_id": "{pageId}"})mcp__mcp-atlassian__confluence_get_page_children({"page_id": "{pageId}"})위키 자동 읽기를 시도했지만 접근이 안 됩니다.
🔌 추천: MCP 한 번만 설정하면 앞으로 URL만 주면 자동으로 됩니다!
【Confluence MCP 설정 방법】
STEP 1. 개인용 액세스 토큰 발급 (Confluence 화면에서)
1. Confluence 오른쪽 상단 본인 프로필 아이콘 클릭 → 프로필 페이지 이동
2. 상단 탭 "환경설정" 클릭
3. 왼쪽 사이드바 "개인용 액세스 토큰" 클릭
4. 오른쪽 상단 "토큰 만들기" 버튼 클릭
→ 이름: mcp, 만료일: 1년 권장
5. 생성된 토큰 즉시 복사 (창 닫으면 다시 볼 수 없음!)
※ Atlassian Cloud 사용자: https://id.atlassian.com/manage-profile/security/api-tokens
STEP 2. 환경변수 설정 (~/.zshrc 또는 ~/.bashrc 에 추가 후 source 재실행)
export CONFLUENCE_URL="https://wiki.yourcompany.com"
export CONFLUENCE_PERSONAL_TOKEN="복사한-토큰"
STEP 3. mcp-atlassian 설치 (터미널에서 한 번만)
uv tool install "mcp-atlassian==0.21.0" --with "fastmcp==2.14.0" --force
STEP 4. AI 도구별 설정 파일에 등록
┌─ Claude Code: ~/.claude/settings.json
├─ Gemini CLI: ~/.gemini/settings.json ← 동일 포맷!
└─ Codex: ~/.codex/config.toml ← mcpServers 블록 동일!
추가할 내용 (세 곳 모두 동일):
"mcpServers": {
"mcp-atlassian": {
"command": "/Users/{username}/.local/bin/mcp-atlassian",
"env": { "CONFLUENCE_URL": "...", "CONFLUENCE_PERSONAL_TOKEN": "..." }
}
}
STEP 5. AI 도구 재시작 후 연결 확인
· Claude Code: /mcp 명령으로 mcp-atlassian ✓ Connected 확인
· Gemini CLI: /mcp 또는 재시작 후 동작 확인
✋ 지금 당장만 진행하려면 (임시):
위키 본문을 브라우저에서 전체 선택(Ctrl+A) → 복사(Ctrl+C) → 여기에 붙여넣기
(요구사항 페이지만으로도 시작 가능. 개발분석 페이지가 있으면 추가로 주세요.)
cases/{case_name}/images/에 수동 저장 안내
Confluence Server의
/download/attachments/경로는 Bearer PAT 인증 미지원 — 브라우저에서 수동 다운로드 후 images/ 폴더에 배치
[B] 문서 붙여넣기 선택 시:
[C] 텍스트 설명 선택 시:
목적: 7개 필수 필드를 채워 context-input.json 생성.
Phase 0에서 수집된 내용을 기반으로 미채워진 필드만 추가 질문한다.
필수 7개 필드:
1. case_name — 케이스 식별자 (영문 kebab-case, 예: cohort-management)
2. intent — 왜 이 작업을 하는가? (비즈니스 의도)
3. scope — 이번에 다룰 범위
4. out_of_scope — 절대 건드리지 않을 범위
5. source_urls — 원문 위치 (아래 계층 순서로 최대한 수집)
① 요구사항 페이지 (AS-IS/TO-BE 화면, 기능 목록)
② 의사결정사항 페이지: 트래픽 데이터, 옵션 확정, OQ 해소 근거
③ 개발분석 페이지 (QA 케이스, URL 패턴, 기술 스펙)
④ 상위 과제/프로젝트 페이지
⑤ Figma, Slack 스레드 (있는 경우)
→ 개발 분석 페이지가 있으면 반드시 포함. URL 패턴·옵션 목록이 거기 있을 수 있음
→ 의사결정사항 페이지를 포함하면 OQ 해소율이 크게 높아짐
6. constraints — 디자인·통합·권한·보안 제약
7. owner — 담당자 이름
권장 추가 필드 (입력할수록 plan.md 품질 향상):
resolved_questions — 이미 확정된 질문과 답변 (key: value 형식)
→ plan.md 5번(업무 규칙)으로 직접 변환됨
remaining_questions — 아직 미해소된 질문 목록
→ plan.md 8번(확인 필요 사항)으로 변환됨
deferred_bugs — 이번 scope에서 제외하는 기존 운영 버그 목록
→ plan.md 3번(제외 항목)에 명시됨
ui_guidance — TO-BE 화면 안내 문구, placeholder 텍스트 등
→ plan.md 7번(완료 기준) AC와 6번(제약 조건)에 반영됨
known_issues — 환경별 동작 차이, 알려진 기술 제약 등
→ plan.md 9번(위험 요소)으로 변환됨
source_page_ids — wiki pageId 목록 (source_urls와 쌍으로)
→ plan.md YAML frontmatter의 source_wikis 필드로 변환됨
자동 수집 옵션 (Confluence MCP 연결 시):
--from-confluence {page-id}: mcp__mcp-atlassian__confluence_get_page로 위키 페이지 내용 추출mcp__mcp-atlassian__confluence_get_page_children으로 하위 페이지 자동 탐색기존 케이스 감지 규칙 (case_name 결정 전 반드시 실행):
cases/ 폴더를 조회하여 source_wikis 또는 source_urls에 동일 pageId가 포함된 기존 케이스가 있는지 확인출력: cases/{case_name}/context-input.json
목적: 7개 필드 수집 후, 과제 유형을 판단하여 plan.md 품질에 결정적인 추가 컨텍스트를 확보. source_urls를 읽거나 intent를 분석하여 과제 유형을 먼저 판단한 후, 해당 유형에 맞는 질문만 선별하여 질문한다.
과제 유형별 핵심 질문:
| 유형 | 판단 키워드 | 반드시 확인할 것 |
|---|---|---|
| URL/링크 생성 | "URL 생성", "링크", "bridge", "deeplink" | ① 실제 URL 예시 또는 테스트 케이스 붙여넣기 요청, ② 파라미터 조합 규칙, ③ 빈 파라미터 처리 방식 |
| 조회/목록 화면 | "조회", "목록", "그리드", "검색" | ① 그리드 컬럼 목록, ② 검색 조건, ③ 페이징/정렬 규칙 |
| 등록/수정 폼 | "등록", "생성", "수정", "저장" | ① 필수/선택 필드 목록과 validation, ② 저장 API 계약, ③ 중복 방지 방법 |
| 외부 시스템 연동 | "연동", "외부", "새 탭" | ① 외부 시스템 URL/파라미터, ② 완료 후 처리 방식 |
| 권한/정책 변경 | "권한", "접근 제한", "등록자" | ① 현재 권한 구조, ② 변경 범위와 승인 주체 |
공통 추가 질문 (항상 물어볼 것):
인터뷰 규칙:
출력: context-input.json 보완 + 인터뷰 답변 메모
목적: Phase A+에서 수집된 컨텍스트가 의미 있는 plan.md를 만들기에 충분한지 판단. 정보가 부족하면 바로 생성하지 않고 보완을 요청한다.
판정 기준 (4개 항목 — 2개 이상 ❌이면 보완 요청):
| # | 항목 | 기준 |
|---|---|---|
| 1 | 이번 범위 구체성 | scope 필드가 "TBD" / "검토 중" 같은 미결로만 채워져 있지 않은가 |
| 2 | 업무 규칙 도출 가능성 | 수집된 내용에서 구체적 업무 규칙을 최소 3개 도출할 수 있는가 |
| 3 | 완료 기준 테스트 가능성 | 테스트 가능한 AC를 최소 2개 도출할 수 있는가 |
| 4 | OQ 집중도 | 핵심 필드(범위 / 업무 규칙 / 완료 기준)가 전부 미확정은 아닌가 |
판정 결과 — 충분한 경우:
판정 결과 — 부족한 경우:
수집된 정보만으로는 구체적인 plan.md를 만들기 어렵습니다.
부족한 항목:
- [예: 업무 규칙을 도출할 수 있는 기능 상세가 없습니다]
- [예: 완료 기준을 정의할 수 있는 요구사항 수준이 불명확합니다]
다음 중 하나를 선택해주세요:
[1] 추가 위키 URL 제공 → 개발 분석 페이지나 상세 요구사항 페이지를 주세요
[2] 텍스트로 보완 → 위에서 부족하다고 한 항목을 직접 설명해주세요
[3] 그래도 초안 생성 → 현재 정보로만 L0 초안을 만듭니다
(maturity_level: L0 — 보완 후 재컴파일 권장)
maturity_level: L0 명시출력: QG 판정 결과 (충분 / 보완 요청)
목적: 수집된 컨텍스트를 plan.md로 컴파일. 확정 사실과 미확정 질문을 분리.
사용할 프롬프트 (references/prompt-pack.md Prompt 01):
역할: 엔터프라이즈 환경의 시니어 Technical PM 규칙:
- 제공된 문서에 없는 API 이름, DB 컬럼, 권한 규칙을 추측해서 만들지 말 것
- 확정 사실과 추정/미확정을 명확히 분리할 것
- 이번 범위, 제외 항목, 완료 기준, 확인 필요 사항, 위험 요소를 반드시 채울 것
적용 템플릿:
references/plan-template-lite.md (10섹션)references/plan-template-full.md (14섹션)YAML frontmatter 자동 설정:
case_name: {case_name}
version: 0.1
maturity_level: L1
owner: {owner}
last_updated: {오늘 날짜}
source_wikis:
- pageId: {id} # source_page_ids가 있으면 자동 변환
품질 게이트 1+2 (하드스톱): 컴파일 완료 후 아래 항목을 자동 체크. 미통과 시 어떤 섹션이 부족한지 명시하고 중단.
출력: cases/{case_name}/plan.md (초안)
Phase F 자동 질의 (plan.md 신규 생성 OR 기존 케이스 갱신 직후 — 항상 반드시 실행):
⚠️ 기존 케이스를 업데이트한 경우에도 이 질의를 건너뛰지 않는다.
plan.md가 완성되었습니다.
이 내용을 기반으로 기획서(spec.pptx)도 생성할까요?
※ 기획서 원본이 없는 경우, 이 파이프라인이 기획서를 새로 만드는 방법입니다.
[Y] 네, 기획서도 만들어주세요 → Phase F 즉시 실행
[N] 아니요 → Phase B+ (Open Questions 즉시 해소 인터뷰) 진행
목적: plan.md 초안의 Open Questions를 사용자에게 보여주고, 지금 바로 해소 가능한 항목을 즉시 반영.
실행 순서:
초안 Open Questions 표시
plan.md 초안을 생성했습니다. Open Questions {N}개가 남아 있습니다.
지금 바로 답할 수 있는 항목이 있으면 알려주세요.
모르는 항목은 그냥 넘어가면 됩니다.
[Open Questions 목록]
#1. {질문}
#2. {질문}
...
답변 수집 및 plan.md 즉시 반영
해소율 보고
Open Questions {N}개 중 {M}개 해소되었습니다.
남은 {N-M}개: #{번호} 목록
→ L2 진행을 위해 #{번호} 항목을 PM/개발자와 확인하세요.
규칙:
출력: cases/{case_name}/plan.md (인터뷰 반영 최종본)
목적: 구현 직전 반드시 확인해야 할 Missing Context와 Risk 추출.
사용할 프롬프트 (references/prompt-pack.md Prompt 03):
역할: Risk Reviewer 우선 점검 항목: 권한, 보안, 외부 연동, 디자인 재사용 범위, 데이터 정합성, Idempotency, Error Handling
출력 형식:
## Missing Context
- {구현 전 반드시 확인이 필요한 항목}
## Implementation Risk
- {코드 레벨 리스크}
## Business Risk
- {비즈니스/운영 레벨 리스크}
## Questions for PM
- {개발자가 PM에게 확인해야 할 질문}
확인 필요 사항 작성 규칙:
품질 게이트 3 체크:
출력: cases/{case_name}/risk-guardrails.md
목적: 케이스 완료 후 발견 사항을 정리하고, 다음 케이스에 적용할 개선점을 도출한다.
실행 조건: plan.md + (선택) spec.pptx 완료 후 실행.
표준 retro 템플릿:
---
case_name: {case_name}
retro_date: {오늘 날짜}
phases_covered: {실행한 Phase 범위}
skill_version: {SKILL.md 버전}
---
필수 섹션:
□ 형식품질 게이트 4:
출력: cases/{case_name}/retro.md
목적: plan.md + wiki 이미지를 한국 기업형 기획서(PPTX)로 변환. 경영진/유관부서 보고용.
트리거:
실행 조건: Phase B 완료 (plan.md 존재, maturity_level L1 이상) + 사용자 확인
섹션 매핑 (plan.md 10섹션 → 기획서 최소 9슬라이드, 콘텐츠에 따라 최대 15슬라이드):
| 슬라이드 | 기획서 섹션 | plan.md 소스 |
|---|---|---|
| 1 | 표지 | YAML frontmatter (case_name, version, owner, last_updated) |
| 2 | 프로젝트 개요 | YAML + 문서 성격 |
| 3 | 추진 배경/목적 | 1. 추진 배경 |
| 4 | 현황 분석 (AS-IS) + 개선 방안 (TO-BE) | wiki 이미지 + 2. 이번 범위 |
| 5 | 변경사항 요약 | AS-IS→TO-BE 핵심 변경 목록 |
| 6 | 이번 범위 / 제외 항목 | 2. 이번 범위 + 3. 제외 항목 |
| 7 | 업무 규칙/프로세스 | 5. 업무 규칙 (표 형식 변환) |
| 8 | 제약 조건 | 6. 제약 조건 |
| 9 | 완료 기준 (DoD) | 7. 완료 기준 |
| 10 | QA 테스트 케이스 | 8. 확인 필요 사항 OQ 테이블 |
| 11 | 일정 계획 | [ESTIMATE] 범위 기반 WBS 자동 생성 |
| 12 | 기대 효과 | [ESTIMATE] 추진 배경에서 역추론 |
| 13 | 리스크/대응 방안 | 9. 위험 요소 |
| 14 | 착수 판단 / 관련 부서 협의사항 | 10. 착수 판단 + OQ 담당 그룹핑 |
| 15 | 기준 문서 / 부록 | 4. 기준 문서 + source_wikis |
디자인 지침 (한국 기업형 기획서 표준):
#0070C0)실행 순서:
F-0. 사전 확인 — plan.md 존재, maturity_level L1+
F-1. 이미지 수집
① cases/{case_name}/images/ 에 PNG 파일 있으면 → 자동 삽입
② 없으면 → **바로 플레이스홀더로 진행** (이미지 자동 다운로드 시도 금지)
> ⚠️ `confluence_get_page_images` 사용 금지 — 이미지 바이너리를 컨텍스트로 반환해 에러 유발
> ⚠️ `confluence_download_attachment` 도 직접 저장 불가 — 수동 다운로드 안내로 대체
③ 완료 후 수동 교체 안내: "images/ 폴더에 PNG 배치 후 재실행"
F-2. 보충 콘텐츠 — 일정(WBS)/기대효과 자동 생성, [ESTIMATE] 마커 표시
F-3. 섹션 매핑 — plan.md 파싱 + 기획서 9~15슬라이드 조립
F-4. PPTX 생성
① pptxgenjs 설치 확인: cases/{case_name}/에 node_modules/pptxgenjs 없으면
`cd cases/{case_name} && npm install pptxgenjs`
② 프로젝트 루트에서 실행:
`node generate-spec.js cases/{case_name}`
F-5. 품질 확인 — 슬라이드 구조 검증 (최소 9개)
F-6. 완료 보고 — 출력 경로 + 이미지 교체 안내
이미지 처리:
cases/{case_name}/images/ 에 PNG가 있으면 자동 삽입confluence_get_page_images 금지 — 이미지 바이너리를 AI 컨텍스트로 전달해 에러 유발images/ 폴더 배치 → node generate-spec.js 재실행사용할 프롬프트 (references/prompt-pack.md Prompt 05)
품질 게이트 5:
출력: cases/{case_name}/spec.pptx
| 레벨 | 상태 | 다음 단계 |
|---|---|---|
| L0 수집중 | Raw Context만 있음 | Phase 0 → Phase A 실행 |
| L1 요구사항 | 확정/미확정 분리 완료 | 확인 필요 사항 해소 |
| L2 규칙확정 | 권한·연동·디자인 제약 확정 | 구현 가능 영역 착수 |
| L3 착수준비 | 개발 에이전트 즉시 투입 가능 | 구현 핸드오프 |
generate-spec.js # 루트 공통 PPTX 생성 스크립트 (모든 케이스 공유)
cases/{case_name}/
context-input.json # Phase A 출력: 7개 필수 필드
plan.md # Phase B 출력: canonical plan (YAML frontmatter 포함)
risk-guardrails.md # Phase C 출력: Missing Context + Risk
retro.md # Phase E(회고) 출력 (케이스 완료 후)
spec.pptx # Phase F(기획서 역생성) 출력
images/ # Phase F wiki 이미지 (수동 다운로드)
# 새 케이스 시작 (Phase 0부터 인터랙티브)
/context-planner
# Confluence 위키에서 컨텍스트 가져와 시작
/context-planner --from-confluence {page-id}
# 기존 케이스 Phase C만 실행
/context-planner cohort-management --phase gap-review
# Phase F: plan.md → 기획서 PPTX 생성
/context-planner external-link-generation --phase spec-gen
legacy-app, new-platform 등 비즈니스 컨텍스트에서 필요한 명칭), 비즈니스 제약이 된 기술 조건(IE11 지원 필수, 모바일 전용)(React/Next.js + Spring Boot), REST API, 프론트엔드 개발ready-for-dev로 처리하지 않는다사람이 결정: Intent, Priority, Trade-off, Permission 경계 AI가 담당: 정리, 분해, 초안, 검증 질문, 형식화, 기획서 생성
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Applies a firm's KYC/AML rules grid to parsed onboarding records: assigns risk rating, checks required documents, outputs rule outcomes with citations, and routes for escalation.
Generates daily or weekly digests of activity from connected sources (chat, email, docs, tasks, CRM), highlighting action items, decisions, mentions, and project updates.
npx claudepluginhub goddaehee/context-planner-skill --plugin context-planner