blueprints/skills/lean-prd/SKILL.md
프로젝트 기획 문서(Lean PRD)를 Markdown으로 생성·관리하는 스킬. 7개 섹션 (Overview / Background / Goals / Non-goals / Scope / Later / Constraints) 으로 구성된 한 페이지 분량의 가벼운 기획서를 생성한다. 개인/사내/상용 3종 프로젝트 유형에 따라 톤과 예시를 조정하며, 유형은 나중에 전환할 수 있다. 대화형 인터뷰로 섹션을 채우고, 기간·지표를 관리할지 여부도 인터뷰로 반영한다. "PRD 만들어줘", "기획서 초안", "프로젝트 기획서", "lean PRD", "린 기획서", "product brief", "제품 요구사항 문서", "프로젝트 문서 작성", "기획 문서" 등의 요청에 트리거한다.
npx skillsauth add dev-goraebap/skills lean-prdInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Lean PRD는 한 페이지에 담기는 가벼운 기획서다. 풀스펙 PRD와 달리 NFR·일정·이해관계자 표 같은 무거운 섹션을 빼고, **"왜 만드는가 + 이 버전의 범위 + 다음에 할 것"**만 남긴다. 개인 프로젝트·사내 도구·상용 서비스에 모두 쓰인다.
references/에 유형별 완성 예제 3종이 있다. 인터뷰에서 유형이 정해지면 해당 레퍼런스만 로드해 톤·어휘·예시 밀도를 맞춘다.
| 유형 | 파일 | 특징 |
|------|------|------|
| 개인 프로젝트 | references/example-personal.md | 정성 목표 허용, 가벼운 어휘 |
| 사내 프로젝트 | references/example-internal.md | 팀 생산성·운영 지표 중심 |
| 상용 서비스 | references/example-product.md | 사용자 지표·비즈니스 목표 중심 |
다음 유형의 요청에 스킬을 발동한다.
.md 기획서를 주면서 "섹션 채워줘" / "톤 바꿔줘"사용자가 이미 기획 초안을 손으로 쓰고 있으면 기존 내용을 덮지 말고 비어 있는 섹션만 인터뷰로 채운다.
| # | 섹션 | 용도 | 분량 가이드 | |---|------|------|------------| | 1 | Overview | 이 프로젝트가 한 눈에 뭔지 | 2~3문장 | | 2 | Background | 왜 만드는가 (맥락·pain·동기) | 2~3문장 | | 3 | Goals | 이 버전에서 달성할 것 | 불릿 3~5개 | | 4 | Non-goals | 이번에도 나중에도 안 할 것 | 불릿 2~4개 | | 5 | Scope | 이 버전의 핵심 기능 목록 | 불릿, 가능하면 하위 문서 링크 | | 6 | Later | 지금은 아니지만 나중에 할 것 | 불릿, 버전 힌트 선택 | | 7 | Constraints / Open Questions | 제약·미정 사안 | 불릿, 없으면 생략 가능 |
두 섹션을 혼동하면 다음 버전에서 "안 하기로 했는데 왜 지금 해?" 혼선이 생긴다. 다음 원칙을 강제한다.
| | Non-goals | Later | |---|-----------|-------| | 의미 | 의도적 영구 배제 | 단지 지금 버전 제외 | | 시간축 | 이 제품의 정체성상 안 함 | 로드맵 후보 | | 예시 | "다국어 지원은 하지 않음" | "소셜 로그인은 v2에서 검토" |
인터뷰 중 사용자가 "나중엔 할 수도 있어"라고 말하면 반드시 Later로 옮긴다. Non-goals는 "영영 안 할 것"만.
스킬은 두 개의 짧은 인터뷰를 먼저 수행한 뒤 섹션을 채운다. 인터뷰를 건너뛰면 톤이 어긋나 재작성 비용이 커지므로 생략하지 않는다.
질문 — "이 프로젝트는 어떤 성격이에요?
(1) 개인 프로젝트 — 혼자 쓰거나 취미
(2) 사내 프로젝트 — 팀·회사 내부 도구
(3) 상용 서비스 — 외부 사용자에게 제공"
답에 따라 한 개의 레퍼런스만 로드한다. 복수 해당이면 주 용도를 택한다. 판단이 애매할 때는 개인/사내를 먼저 두고 나중에 전환한다(§5 참조).
질문 — "Goals 섹션을 어떻게 관리할까요?
(A) 기간·수치를 박고 엄격히 추적 (예: '3개월 내 DAU 1000')
(B) 정성 목표 허용, 프리한 스타일 (예: '수동 배포 작업 제거')"
두 스타일을 섞어도 된다 — 기한이 있는 Goal 2개 + 정성 Goal 1개처럼.
두 인터뷰 결과를 바탕으로 7개 섹션을 순서대로 대화하며 채운다. 각 섹션에서 다음 원칙을 지킨다.
인터뷰가 끝나면 전체 초안을 한 번에 보여주고 사용자 확인을 받는다.
| 쓰지 말 것 | 대체어 | |-----------|--------| | Product | Project (상용 서비스일 때만 Product 허용) | | Customer | User (상용일 때만 Customer 허용) | | Launch | Ship 또는 Release | | Problem (섹션명) | Background |
"Product"·"Customer" 같은 단어는 세일즈 톤을 유발한다. 개인·사내 프로젝트에서는 반드시 중립 용어로 치환한다.
3개월 내 주문 실패율 2% 이하 / 2026-Q3까지 응답 시간 p95 < 200ms수동 배포 작업을 완전히 제거 / 신규 팀원 온보딩을 하루 안에두 스타일 모두 동사로 시작하고 검증 가능한 형태를 권장하되, B에서는 강제하지 않는다.
Scope의 각 불릿은 나중에 시퀀스 다이어그램·기능 명세 같은 하위 문서가 붙을 자리다. 현재 이 저장소에 해당 스킬이 없어도 링크 플레이스홀더를 비워둔다.
## Scope
- 주문 생성 — <!-- link: SEQ-001 -->
- 결제 승인 — <!-- link: SEQ-002 -->
나중에 시퀀스 스킬이 붙으면 주석을 실제 링크로 교체한다.
총 분량은 화면 한 스크롤(대략 60~120 라인)을 넘지 않게 유지한다. 초과 조짐이 보이면:
프로젝트는 "개인 → 사내 → 상용"처럼 진화할 수 있다. 사용자가 전환을 요청하면:
| 전환 | 스킬이 하는 일 | |------|----------------| | 개인 → 사내 | "User"를 "팀원·운영자"로, Goals에 팀 단위 지표 제안 | | 사내 → 상용 | "Project"→"Product" 허용, Background에 시장·사용자 맥락 추가 제안 | | 상용 → 사내 | "Customer"를 "User"로, 비즈니스 지표 → 운영 지표로 재프레이밍 | | 모든 역방향 | 어휘 중립화, 세일즈 톤 제거 |
전환 시 기존 Goals·Non-goals는 건드리지 않고 추가 제안만 한다. 사용자가 수락한 것만 반영한다.
{project-slug}-lean-prd.md
예: blog-bot-lean-prd.md, deploy-cli-lean-prd.md, order-service-lean-prd.md
사용자가 경로를 지정하면 그곳에, 지정하지 않으면 질문한다:
"Lean PRD 파일을 어디에 저장할까요?
(예: ./docs/, ./, 프로젝트 루트)"
폴더가 없으면 생성한다.
---
name: 주문 서비스
type: product # personal | internal | product
goals_style: strict # strict | free
status: draft # draft | active | archived
version: v1
---
type·goals_style은 §3 인터뷰 결과를 기록하는 자리다. 유형 전환 시 이 필드만 바꾸면 스킬이 톤을 재조정한다.
.md 파일을 지정 경로에 쓴다.status: archived로 표시한다. 삭제하지 않는다.testing
도메인 일반 패턴을 강의 모드로 가르치는 인지과학 기반 학습 스킬. AI가 가상 도메인 전문가(선생님) 역할을 하고 사용자가 학생으로 낯선 도메인을 차근차근 배운다. 메뉴로 시작해서 페이즈를 골라 잠수 → 능동 회상 Q&A → 자기 설명(Feynman) 순서로 진행. Dunlosky 메타분석 기반 인지과학 8원칙(Cognitive Load, Practice Testing, 정교화 질문, Self-Explanation, Schema 연결, Dual Coding, Desirable Difficulty, 분산 학습)을 본문에 명시 적용. 도메인의 법령·산업 표준·인증을 학습 본문에 정식 통합 (출처 인용이 아니라 학습 대상). AI가 판단해 보편적이고 자료 풍부한 도메인은 자료 요청 없이 진행, 좁고 깊은 도메인일 때만 사용자에게 자료 있는지 묻기. 산출물은 학습 노트 스타일 (진도 체크박스 + 페이즈별 일관 구조 + 출처 링크). 페르소나 강요 없이 보편 액터 표현("사원 A", "관리자 A"). bigpicture의 이전 단계로 작동하거나 단독 사용 가능. Triggers — "도메인 학습", "낯선 도메인 가르쳐줘", "이 산업 어떻게 굴러가요", "선생님 모드", "1:1 강의", "도메인 입문", "도메인 일반 패턴", "HR 플랫폼이 뭔지", "이커머스 흐름", "domain classroom", "/domain-classroom".
development
빅픽처 이벤트스토밍의 1:1 분석 도구. 학습 단계(domain-classroom)에서 머리에 박힌 도메인 일반 패턴을 클라이언트 시스템에 매핑해 빅픽처 산출물(시간순 도메인 이벤트·페이즈·액터·외부시스템·핫스팟·피벗)을 누적한다. domain-classroom의 학습 노트(docs/learning-notes/{도메인}- classroom.md)와 클라이언트 자료(RFP·요구사항정의서·기존 시스템 스키마)를 입력으로 받아 페이즈 단위로 진행. 페르소나·서사 없는 분석 톤. 도메인 이벤트 판별 4기준(도메인 전문가 관심·비즈니스 상태 변화·법적 의미·다른 흐름 트리거)을 명시 적용해 UI/Telemetry 이벤트 혼입 방지. 이벤트는 한국어 자연어 + Code Identifier 이중 표기. 핫스팟에 ID·답할 위치·확신도 태그 부여. 산출물은 docs/eventstorming.md 단일 파일로 시작, 후속 단계 스킬(process-modeling·software-design)이 추가될 때 폴더로 자연 분기. Initial/Update/Cycle 모드 지원 — 코드 작성 후에도 다시 사이클 가능. Triggers — "빅픽처", "빅픽처 만들어줘", "이벤트스토밍", "도메인 이벤트 정리", "Big Picture EventStorming", "페이즈 매핑", "도메인 산출물 정리", "/bigpicture".
data-ai
빅픽처 이벤트스토밍의 1:1 학습 친화 변형. 그룹 워크샵에서 도메인 전문가가 던지는 이벤트를 받아 적는 대신, AI가 가상 도메인 전문가 역할을 하고 사용자가 학습자로 1:1 인터뷰하며 빅픽처를 누적한다. 산출물(시간순 도메인 이벤트·액터· 외부시스템·핫스팟·피벗)은 빅픽처 이벤트스토밍과 거의 동일하지만, 한 보드에 한 번에 펼치는 방식이 아니라 **한 액터·한 챕터씩 시간순 서사로 누적**한다. 각 장면마다 "왜 이게 필요한가?" 설명을 곁들여 학습자가 따라올 수 있게 한다. RFP·요구사항정의서·기존 도메인 자료를 입력으로 받거나, 자료가 없으면 AI 사전 리서치(보편 사례·법령·산업 표준)로 보충해 진행. 페르소나 시점의 챕터 단위 (5~7개 장면) + 확신도 태그 [확실/일반론/추측]로 검증 지점 명시 + 사용자 인터랙션 + 액터 전환으로 빅픽처를 점진적으로 채운다. 산출물 저장은 옵셔널 — 이해 자체가 목적이다. Triggers — "낯선 도메인 이해", "도메인 차근차근 알려줘", "1:1 빅픽처", "솔로 이벤트스토밍", "RFP 분석", "비즈니스 흐름 이해", "액터 시나리오", "신규 프로젝트 도메인 파악", "빅픽처 스토리타임", "bigpicture storytime", "/bigpicture-storytime".
databases
PostgreSQL DB에 직접 접근하는 스킬. DB 조회, 테이블 구조 확인, 데이터 검증이 필요할 때 사용한다. Node.js 스크립트로 직접 연결하며 접속 정보는 환경변수 또는 credentials 파일에서 읽는다. "postgres 조회", "DB 확인", "테이블 구조", "pg-query", "쿼리 실행", "데이터 검증", "PostgreSQL 접속" 같은 요청에 트리거한다.