windowook-skills 1.0.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.
@@ -0,0 +1,83 @@
1
+ # 계획서 템플릿 (참조 대조)
2
+
3
+ 아래 구조를 그대로 따라 계획서를 작성한다. 모든 섹션은 필수.
4
+ `[...]` 안의 내용을 실제 분석 결과로 채운다.
5
+ 신규 구현 템플릿(figma-plan/TEMPLATE.md)의 모든 섹션을 포함하고, 추가로 참조 대조 섹션을 포함한다.
6
+
7
+ ---
8
+
9
+ # {페이지명} 구현 계획서
10
+
11
+ ## 메타
12
+ - Figma URL: [URL]
13
+ - 생성일: [YYYY-MM-DD]
14
+ - 스크린샷: [figma-analyzer의 get_screenshot이 반환한 이미지 URL]
15
+
16
+ ## 1. 디자인 요약
17
+
18
+ ### 레이아웃
19
+ - 전체 구조: [grid/flex, 패널 분할 방식, 비율]
20
+ - 반응형 breakpoint: [있으면 기술, 없으면 "단일 뷰포트"]
21
+
22
+ ### 디자인 토큰
23
+
24
+ | Figma 토큰 | 값 | 프로젝트 매핑 |
25
+ |---|---|---|
26
+ | [토큰명] | [값] | [기존 토큰명 또는 "신규 토큰 필요"] |
27
+
28
+ > 프로젝트 토큰 매핑은 CLAUDE.md 또는 프로젝트 규칙 파일을 참조하여 결정한다.
29
+
30
+ ### 에셋
31
+ - [이미지/아이콘 URL 목록 — localhost URL 포함]
32
+
33
+ ## 2. 참조 코드 분석
34
+
35
+ - 경로: [참조 파일 경로]
36
+ - 스타일링 방식: [참조 코드에서 파악된 방식 — 예: Emotion styled, Tailwind className 등]
37
+ - 상태관리 패턴: [참조 코드에서 파악된 방식 — 예: useState, zustand, context 등]
38
+ - 컴포넌트 구조: [참조 코드의 분해 패턴 — 예: 단일 파일, 디렉토리별 분리 등]
39
+
40
+ ## 3. 구현 전략
41
+
42
+ ### 재사용 (그대로 가져올 것)
43
+
44
+ | 항목 | 출처 파일 | 이유 |
45
+ |---|---|---|
46
+ | [컴포넌트/패턴명] | [파일 경로] | [동일 구조/역할] |
47
+
48
+ ### 변경 (수정이 필요한 것)
49
+
50
+ | 항목 | 출처 파일 | 변경 내용 | 이유 |
51
+ |---|---|---|---|
52
+ | [컴포넌트/패턴명] | [파일 경로] | [구체적 변경 사항] | [피그마 디자인과의 차이] |
53
+
54
+ ### 신규 (새로 만들 것)
55
+
56
+ | 항목 | 이유 |
57
+ |---|---|
58
+ | [컴포넌트/패턴명] | [참조 코드에 없는 이유] |
59
+
60
+ ## 4. 컴포넌트 분해
61
+
62
+ | 컴포넌트명 | 역할 | 위치(파일 경로) | 의존하는 컴포넌트 | 전략(재사용/변경/신규) |
63
+ |---|---|---|---|---|
64
+ | [이름] | [단일 책임 설명] | [정확한 파일 경로] | [의존 목록] | [재사용/변경/신규] |
65
+
66
+ ## 5. 파일 구조
67
+
68
+ [생성할 파일 트리 — 경로와 각 파일의 역할]
69
+
70
+ ## 6. 구현 순서
71
+
72
+ 1. [단계]: [파일 경로] — [무엇을 만드는지]
73
+ 2. [단계]: [파일 경로] — [무엇을 만드는지]
74
+ ...
75
+
76
+ > 의존성 역순을 따른다. 의존받는 것(공용 컴포넌트, 타입)부터 먼저.
77
+ > 프로젝트 컨벤션(스타일링, 상태관리 등)은 CLAUDE.md 또는 프로젝트 규칙 파일을 참조하여 적용한다.
78
+
79
+ ## 7. 인터랙션 & 상태
80
+
81
+ | 요소 | 이벤트 | 동작 |
82
+ |---|---|---|
83
+ | [요소명] | [이벤트] | [구체적 동작] |
@@ -0,0 +1,79 @@
1
+ ---
2
+ name: save-context
3
+ description: 현재 세션의 작업 내용을 옵시디언 볼트에 템플릿에 맞춰 저장하고 /clear로 컨텍스트를 초기화한다. 컨텍스트가 길어졌다고 느낄 때 직접 호출.
4
+ disable-model-invocation: true
5
+ hooks:
6
+ Stop:
7
+ - type: command
8
+ command: claude -p "/clear"
9
+ ---
10
+
11
+ ## 활성화 조건
12
+
13
+ 사용자가 직접 트리거할 때 실행한다. (예: "컨텍스트 저장해줘", "save context", "/save-context")
14
+
15
+ ## 워크플로우
16
+
17
+ ### Step 1. 데이터 수집
18
+
19
+ 아래 명령을 실행하여 원시 데이터를 수집한다.
20
+
21
+ ```bash
22
+ git branch --show-current
23
+ git log --oneline -20
24
+ pwd
25
+ ```
26
+
27
+ ### Step 2. 판단 기준 적용
28
+
29
+ `.claude/skills/save-context/references/guide.md`를 읽고, 대화 내용에서 아래를 분류한다.
30
+
31
+ **반드시 저장할 것:**
32
+ - 의사결정과 그 이유 (왜 A를 선택하고 B를 기각했는지)
33
+ - 암묵적 맥락 (코드에 드러나지 않는 배경)
34
+ - 미완료 작업의 구체적 현재 상태와 다음 단계
35
+ - 발견한 함정/이슈 (다음 세션에서 시간을 절약할 수 있는 정보)
36
+ - 사용자의 명시적 요구사항
37
+ - 실패한 접근과 교훈
38
+
39
+ **저장하지 않을 것:**
40
+ - 코드 자체 내용 (git diff로 확인 가능 → 파일 경로 + 변경 의도만)
41
+ - 일반적인 기술 지식 (Claude가 이미 아는 것)
42
+ - 대화의 시행착오 과정 (최종 결정만)
43
+ - 디버깅 로그/스택 트레이스 (원인과 해결책만)
44
+
45
+ ### Step 3. 문서 작성
46
+
47
+ 1. `.claude/skills/save-context/references/example.md`를 읽어 **깊이/톤/구체성 수준** 확인
48
+ 2. `.claude/skills/save-context/TEMPLATE.md`에 맞춰 작성
49
+ 3. **예시와 동일한 수준의 구체성**으로 각 섹션 작성
50
+
51
+ ### Step 4. 자가 검증
52
+
53
+ 작성 후 아래 체크리스트로 검증한다. 미충족 항목이 있으면 보완 후 저장한다.
54
+
55
+ - [ ] **작업 요약**: 한 줄로 "무엇을 했고 핵심 결과물이 뭔지" 파악 가능한가
56
+ - [ ] **배경 및 목표**: "왜 이 작업을 시작했는가"가 명확한가 (트리거 + 문제 + 기대 결과)
57
+ - [ ] **완료 태스크**: 각 항목이 독립적으로 검증 가능한가 ("~에 대해 작업함" 금지)
58
+ - [ ] **남은 태스크**: 다음 세션이 질문 없이 바로 시작할 수 있을 만큼 구체적인가
59
+ - [ ] **주요 결정**: 트레이드오프가 있었던 선택만 기록했는가 (뻔한 선택 제외)
60
+ - [ ] **이슈/주의사항**: 다음 세션에서 시간을 절약할 수 있는 정보만 포함했는가
61
+ - [ ] **파일 변경**: "무엇을 했다"가 아닌 "왜/무슨 목적으로 변경했다"로 기술했는가
62
+ - [ ] **불필요 정보 제거**: 코드 내용, 일반 기술 지식, 디버깅 로그가 포함되지 않았는가
63
+
64
+ ### Step 5. 저장 및 초기화
65
+
66
+ 파일을 옵시디언 볼트에 저장한다.
67
+
68
+ ## 저장 정보
69
+
70
+ - **경로**: `/Users/woogy/Desktop/보관함/obsidian/claude-session-memory/{지금 프로젝트명}`
71
+ - **파일명**: `yyyy.mm.dd | hh:mm.md` (현재 시각 기준, 24시간제)
72
+
73
+ ## 작성 규칙
74
+
75
+ - **구체적으로 작성**: "작업 진행함" 금지. 반드시 대상 + 행동 + 결과 포함
76
+ - **예시 수준 일치**: `references/example.md`의 각 섹션과 동일한 깊이와 분량으로 작성
77
+ - **코드 대신 의도**: 코드 내용이 아닌 변경 의도와 배경을 기록
78
+ - **결정은 대안과 함께**: "X로 결정" 뿐 아니라 "Y를 기각한 이유"까지 포함
79
+ - **남은 태스크는 실행 가능하게**: "이어서 진행"이 아닌 "구체적으로 무엇을 어떻게" 기술
@@ -0,0 +1,73 @@
1
+ ## {{yyyy.mm.dd | hh:mm}} | {{태스크 이름}}
2
+
3
+ ### 프로젝트
4
+
5
+ - **경로**: {{cwd}}
6
+ - **브랜치**: {{git branch}}
7
+
8
+ ### ⭐️ 작업 요약
9
+
10
+ {{이번 세션에서 완료한 주요 작업을 모두 포함하여 한 줄로 표현하여 요약}}
11
+
12
+ ### 🎯 작업 배경 및 목표
13
+
14
+ {{이 작업을 시작한 이유, 해결하려는 문제, 달성하려는 목표를 2~3문장으로 기술}}
15
+
16
+ ### ✅ 완료된 태스크
17
+
18
+ - [x] {{완료 태스크 1}}
19
+ - [x] {{완료 태스크 2}}
20
+ - [x] ...
21
+
22
+ ### ⏳ 남은 태스크
23
+
24
+ {{각 태스크마다 현재 진행 상태와 다음 단계를 구체적으로 기술}}
25
+
26
+ - [ ] {{미완료 태스크 1}}
27
+ - 현재 상태: {{어디까지 진행했는지}}
28
+ - 다음 단계: {{구체적으로 무엇을 해야 하는지}}
29
+ - [ ] {{미완료 태스크 2}}
30
+ - 현재 상태: {{어디까지 진행했는지}}
31
+ - 다음 단계: {{구체적으로 무엇을 해야 하는지}}
32
+
33
+ ### 🧠 주요 결정 사항
34
+
35
+ {{세션 중 내린 설계/아키텍처 결정과 그 이유. 다음 세션에서 "왜 이렇게 했지?"를 방지}}
36
+
37
+ | 결정 | 이유 | 대안 (기각됨) |
38
+ | ---- | ---- | ------------- |
39
+ | {{결정 1}} | {{이유}} | {{검토했으나 선택하지 않은 대안과 기각 사유}} |
40
+
41
+ ### ⚠️ 발견한 이슈 및 주의사항
42
+
43
+ {{작업 중 발견한 버그, 기술 부채, 다음 세션에서 주의할 점}}
44
+
45
+ - {{이슈/주의사항 1}}
46
+ - {{이슈/주의사항 2}}
47
+
48
+ ### 🔀 관련 파일 및 변경 내역
49
+
50
+ {{작업한 주요 파일 경로와 각 파일에서 무엇을 변경했는지 한 줄 설명}}
51
+
52
+ | 파일 | 변경 내용 |
53
+ | ---- | --------- |
54
+ | {{파일 경로 1}} | {{변경 설명}} |
55
+ | {{파일 경로 2}} | {{변경 설명}} |
56
+
57
+ ### 📝 커밋 히스토리
58
+
59
+ {{세션 동안 생성된 커밋 목록. 없으면 "커밋 없음"으로 표기}}
60
+
61
+ - `{{커밋 해시 (short)}}` {{커밋 메시지}}
62
+
63
+ ### 재개 방법
64
+
65
+ 다음 세션에서 아래 명령으로 컨텍스트를 복원하세요:
66
+
67
+ ```
68
+ /absorb-previous-context {{이 파일의 경로}}
69
+ ```
70
+
71
+ ### 히스토리 링크
72
+
73
+ - 세션 jsonl: `~/.claude/projects/{{project-slug}}/{{session-id}}.jsonl`
@@ -0,0 +1,74 @@
1
+ # 컨텍스트 저장 예시
2
+
3
+ > 이 예시는 작성 시 각 섹션의 깊이, 톤, 구체성 수준을 보여준다.
4
+ > 실제 작성 시 이 예시와 동일한 수준으로 작성한다.
5
+
6
+ ---
7
+
8
+ ## 2026.03.15 | 14:30 | PRD 스킬 결정성 강화
9
+
10
+ ### 프로젝트
11
+
12
+ - **경로**: /Users/woogy/Desktop/claude-masterpiece/claude-code-lab
13
+ - **브랜치**: main
14
+
15
+ ### ⭐️ 작업 요약
16
+
17
+ PRD 스킬에 실제 CafeMasters 샘플, 44항목 품질 체크리스트, 구조화된 템플릿을 추가하여 출력 결정성 강화
18
+
19
+ ### 🎯 작업 배경 및 목표
20
+
21
+ 사용자 피드백으로 PRD 스킬이 빈 템플릿만 존재하여 AI 재량에 의존한다는 문제가 제기됨. idea-plan 스킬처럼 실제 샘플과 체크리스트를 추가하여, 어떤 Claude 인스턴스가 실행해도 동일한 품질의 PRD가 나오도록 결정성을 높이는 것이 목표.
22
+
23
+ ### ✅ 완료된 태스크
24
+
25
+ - [x] `references/template.md` 생성 — 13개 섹션 구조화된 템플릿 (테이블 컬럼 가이드 포함)
26
+ - [x] `references/example.md` 생성 — CafeMasters 서비스 기반 전체 PRD 샘플
27
+ - [x] `references/checklist.md` 생성 — 44개 품질 체크리스트 + 5개 교차 검증
28
+ - [x] `SKILL.md` Step별 프로세스로 재구성 — 5단계 워크플로우 + 작성 규칙 7개
29
+ - [x] 기존 `reference.md` (빈 템플릿) 삭제
30
+
31
+ ### ⏳ 남은 태스크
32
+
33
+ - [ ] save-context 스킬 결정성 강화
34
+ - 현재 상태: 미착수
35
+ - 다음 단계: 동일한 패턴(샘플/가이드/체크리스트)으로 판단 기준 추가
36
+
37
+ ### 🧠 주요 결정 사항
38
+
39
+ | 결정 | 이유 | 대안 (기각됨) |
40
+ | ---- | ---- | ------------- |
41
+ | references/ 디렉토리로 분리 (template, example, checklist) | Progressive Disclosure 원칙: SKILL.md를 가볍게 유지하고 필요 시만 로드 | SKILL.md에 모두 인라인 → 500줄 초과, 컨텍스트 낭비 |
42
+ | CafeMasters를 PRD 예시로 사용 | 사용자의 기존 프로젝트라 도메인 이해도 높고 현실적 예시 가능 | 가상 서비스 → 비현실적 예시가 될 위험 |
43
+ | Step 5 품질 검증 단계 신설 | 작성 후 자가 검증 없이는 섹션 누락/불일치 발생 빈번 | 사용자 수동 검증 → 자동화 가능한 부분을 사람에게 위임하는 것은 비효율 |
44
+
45
+ ### ⚠️ 발견한 이슈 및 주의사항
46
+
47
+ - idea-plan 스킬의 `references/example.md`가 좋은 레퍼런스 — 향후 다른 스킬 강화 시 이 패턴(template + example + checklist) 재사용 권장
48
+ - 기존 `reference.md`를 삭제했으므로, 이전 세션에서 해당 파일을 직접 참조하는 코드가 있다면 경로 업데이트 필요
49
+
50
+ ### 🔀 관련 파일 및 변경 내역
51
+
52
+ | 파일 | 변경 내용 |
53
+ | ---- | --------- |
54
+ | `.claude/skills/prd/SKILL.md` | Step 1~5 프로세스 + 작성 규칙 7개로 전면 재작성 |
55
+ | `.claude/skills/prd/references/template.md` | 13개 섹션 구조화된 PRD 템플릿 신규 생성 |
56
+ | `.claude/skills/prd/references/example.md` | CafeMasters 전체 PRD 샘플 신규 생성 |
57
+ | `.claude/skills/prd/references/checklist.md` | 44항목 + 5교차검증 체크리스트 신규 생성 |
58
+ | `.claude/skills/prd/reference.md` | 삭제 (references/ 디렉토리로 이전) |
59
+
60
+ ### 📝 커밋 히스토리
61
+
62
+ 커밋 없음
63
+
64
+ ### 재개 방법
65
+
66
+ 다음 세션에서 아래 명령으로 컨텍스트를 복원하세요:
67
+
68
+ ```
69
+ /absorb-previous-context /Users/woogy/Desktop/보관함/obsidian/claude-session-memory/claude-code-lab/2026.03.15 | 14:30.md
70
+ ```
71
+
72
+ ### 히스토리 링크
73
+
74
+ - 세션 jsonl: `~/.claude/projects/-Users-woogy-Desktop-claude-masterpiece-claude-code-lab/{session-id}.jsonl`
@@ -0,0 +1,106 @@
1
+ # 컨텍스트 저장 판단 가이드
2
+
3
+ > 핵심 원칙: **다음 세션의 Claude가 이 문서만 읽고 작업을 이어받을 수 있어야 한다.**
4
+ > 코드에서 읽을 수 있는 정보는 최소화하고, 코드에 없는 "왜"와 "맥락"을 중심으로 저장한다.
5
+
6
+ ## 저장해야 할 것 vs 저장하지 않을 것
7
+
8
+ ### 반드시 저장
9
+
10
+ | 카테고리 | 설명 | 예시 |
11
+ | -------- | ---- | ---- |
12
+ | **의사결정과 그 이유** | 왜 A를 선택하고 B를 기각했는지 | "zustand 대신 jotai 선택: 이 프로젝트는 atom 단위 상태가 많아서" |
13
+ | **암묵적 맥락** | 코드에 드러나지 않는 배경 | "디자이너가 모바일 우선으로 요청함", "API 응답이 느려서 캐시 전략 변경" |
14
+ | **미완료 작업의 현재 상태** | 어디까지 했고 다음에 뭘 해야 하는지 | "로그인 UI 완성, API 연동은 엔드포인트 확인 후 진행" |
15
+ | **발견한 함정/이슈** | 다음 세션에서 빠질 수 있는 함정 | "Supabase RLS가 service_role에도 적용되어 테스트 시 주의" |
16
+ | **사용자의 명시적 요구사항** | 대화에서 사용자가 강조한 것 | "반드시 다크모드 지원해야 함", "성능보다 코드 가독성 우선" |
17
+ | **실패한 접근과 교훈** | 시도했다가 실패한 것과 이유 | "dynamic import로 지도 lazy load 시도 → SSR 에러, useEffect 내로 변경" |
18
+
19
+ ### 저장하지 않을 것
20
+
21
+ | 카테고리 | 이유 | 대신 할 것 |
22
+ | -------- | ---- | ---------- |
23
+ | **코드 자체 내용** | `git diff`로 확인 가능 | 파일 경로 + 변경 의도만 기록 |
24
+ | **일반적인 기술 지식** | Claude가 이미 알고 있음 | 프로젝트 특화 정보만 기록 |
25
+ | **대화의 시행착오 과정** | 최종 결정만 중요 | 결정 + 기각 사유만 기록 |
26
+ | **환경 설정/설치 과정** | 반복할 필요 없음 | 비표준 설정만 기록 |
27
+ | **디버깅 로그/스택 트레이스** | 이미 해결됨 | 원인과 해결책만 기록 |
28
+
29
+ ## 섹션별 작성 기준
30
+
31
+ ### 작업 요약 (한 줄)
32
+
33
+ - **목표**: 다음 세션 시작 시 30초 안에 맥락을 파악할 수 있는 한 줄
34
+ - **포함**: 무엇을 했는지 + 핵심 결과물
35
+ - **패턴**: "[대상]의 [작업]을 [방법/결과]로 완료"
36
+
37
+ | 나쁜 예 | 좋은 예 |
38
+ | ------- | ------- |
39
+ | "작업 진행함" | "PRD 스킬에 실제 샘플/체크리스트 추가하여 결정성 강화" |
40
+ | "버그 수정" | "북마크 토글 시 Optimistic Update 롤백 안 되는 버그 수정 (RLS 정책 충돌)" |
41
+
42
+ ### 작업 배경 및 목표 (2~3문장)
43
+
44
+ - **목표**: "왜 이 작업을 시작했는가"를 다음 Claude가 이해할 수 있도록
45
+ - **포함**: 트리거(누가/무엇이 이 작업을 발생시켰나) + 해결하려는 문제 + 기대 결과
46
+ - **금지**: 기술적 구현 디테일 (그건 완료/남은 태스크에)
47
+
48
+ | 나쁜 예 | 좋은 예 |
49
+ | ------- | ------- |
50
+ | "사용자가 요청해서 PRD 스킬을 수정했다" | "사용자 피드백: PRD 스킬이 빈 템플릿만 있어 AI 재량에 의존한다는 문제. 실제 샘플과 체크리스트를 추가하여 출력 품질의 결정성을 높이는 것이 목표" |
51
+
52
+ ### 완료된 태스크
53
+
54
+ - **목표**: 무엇이 "끝났는지" 명확히
55
+ - **기준**: 각 항목은 독립적으로 검증 가능해야 함
56
+ - **패턴**: "[파일/기능] [동사] — [핵심 결과]"
57
+ - **금지**: "~에 대해 작업함" (완료 여부 불명확)
58
+
59
+ ### 남은 태스크
60
+
61
+ - **목표**: 다음 세션이 **질문 없이** 바로 작업을 시작할 수 있도록
62
+ - **필수 포함**: 현재 상태 + 다음 단계 (구체적 행동)
63
+ - **상태 레벨**:
64
+ - `미착수` — 아직 시작하지 않음
65
+ - `진행중 (N%)` — 부분적으로 완료
66
+ - `블로킹` — 외부 의존성으로 대기 중
67
+
68
+ ### 주요 결정 사항
69
+
70
+ - **목표**: "왜 이렇게 했지?" 방지
71
+ - **포함 기준**: 다른 합리적 대안이 있었던 경우에만 기록
72
+ - 뻔한 선택(예: "React 프로젝트에서 JSX 사용")은 기록하지 않음
73
+ - 트레이드오프가 있었던 선택만 기록
74
+ - **필수 3열**: 결정 | 이유 | 기각된 대안과 그 사유
75
+
76
+ ### 발견한 이슈 및 주의사항
77
+
78
+ - **포함 기준**: 다음 세션에서 알아야 시간을 절약할 수 있는 것
79
+ - 예상과 다르게 동작한 API/라이브러리
80
+ - 숨겨진 의존성이나 부작용
81
+ - 해결 못 한 경고/에러
82
+ - 성능 병목 발견
83
+ - **패턴**: "[무엇이] [어떤 문제] — [임시/영구 해결책 또는 주의할 점]"
84
+
85
+ ### 관련 파일 및 변경 내역
86
+
87
+ - **목표**: 다음 세션이 어떤 파일을 먼저 읽어야 하는지 파악
88
+ - **포함 기준**: 새로 생성 또는 의미 있게 변경된 파일만
89
+ - 자동 생성 파일(lock, build output)은 제외
90
+ - import 순서만 바뀐 파일은 제외
91
+ - **변경 내용**: "무엇을 했다"가 아닌 "왜/무슨 목적으로 변경했다"
92
+
93
+ ### 커밋 히스토리
94
+
95
+ - `git log --oneline`으로 세션 중 커밋만 수집
96
+ - 커밋이 없으면 "커밋 없음" 명시
97
+ - 세션 시작 전 커밋은 포함하지 않음 (세션 시작 시점 판단: 첫 번째 사용자 메시지 시각 기준)
98
+
99
+ ## 분량 기준
100
+
101
+ | 세션 유형 | 예상 분량 | 설명 |
102
+ | --------- | --------- | ---- |
103
+ | 단순 버그 수정 | 30~50줄 | 배경 짧게, 결정 사항 1~2개 |
104
+ | 기능 구현 | 50~100줄 | 시나리오별 결정, 남은 태스크 상세 |
105
+ | 리팩토링/아키텍처 | 80~120줄 | 결정 사항 테이블이 핵심, 파일 변경 많음 |
106
+ | 탐색/리서치 | 40~60줄 | 결정 사항과 발견한 이슈가 핵심 |
@@ -0,0 +1,80 @@
1
+ ---
2
+ name: slack-thread
3
+ description: 슬랙 스레드 업로드를 위한 문서 정리 스킬. 원본 메모를 회의록, 건의/제안, 보고서 양식으로 구조화합니다.
4
+ argument-hint: "[원본 메모 또는 내용]"
5
+ disable-model-invocation: false
6
+ ---
7
+
8
+ # 슬랙 스레드 문서 정리
9
+
10
+ **당신은 팀 내 슬랙 커뮤니케이션을 위한 문서를 정리하는 테크니컬 라이터입니다.**
11
+ 사용자로부터 원본 메모를 받아, 유형에 맞는 템플릿을 적용하여 슬랙 스레드에 올릴 수 있는 형태로 정리합니다.
12
+
13
+ ## 실행 방법
14
+
15
+ > 이 스킬이 활성화되면 **즉시 `EnterPlanMode`를 호출**하세요.
16
+ > Plan Mode에서 원본 메모를 받고, 유형을 파악한 후 정리를 진행합니다.
17
+
18
+ ## Step 1. 원본 메모 수집
19
+
20
+ 사용자에게 다음을 요청합니다:
21
+
22
+ 1. **원본 메모**: 정리할 내용을 공유해주세요. (회의 중 기록, 건의 초안, 보고서 초안 등)
23
+ 2. **추가 컨텍스트** (선택): 참석자, 날짜, 관련 브랜치/PR 등 보충 정보
24
+
25
+ ## Step 2. 유형 분류
26
+
27
+ 원본 메모를 분석하여 유형을 분류합니다:
28
+
29
+ | 유형 | 판별 기준 | 템플릿 |
30
+ | ------------- | ---------------------------------------------- | ------------------------- |
31
+ | **회의록** | 복수 참석자, 논의/결정사항, 액션 아이템 | `templates/MEETING.md` |
32
+ | **건의/제안** | 현재 상황 → 이슈 → 질문/제안, 특정 담당자 대상 | `templates/SUGGESTION.md` |
33
+ | **보고서** | 작업 진행상황, 코드 변경사항, 리뷰 요청 | `templates/REPORT.md` |
34
+
35
+ > 유형이 모호한 경우 사용자에게 확인합니다.
36
+
37
+ ## Step 3. 유형별 처리
38
+
39
+ ### 회의록
40
+
41
+ 1. **내용 분류**: [논의 주제] > [대화 주체]별로 정리
42
+ - 주제별로 내용을 그룹핑
43
+ - '나의 기록'과 '팀원의 기록'이 분리된 경우, 주제 중심으로 통합
44
+ 2. **결정사항 추출**: 합의/확정 사항을 별도 정리
45
+ 3. **액션 아이템 추출**: 담당자 + 기한이 있는 항목을 식별
46
+ 4. **양식 적용**: `templates/MEETING.md`에 맞춰 작성
47
+
48
+ ### 건의/제안
49
+
50
+ 1. **내용 분류**: [건의 내용] > [상황] > [제안]별로 정리
51
+ - 여러 건의가 있으면 넘버링하여 각각 구분
52
+ - 각 건의마다 '상황 → 이슈 → 질문/제안' 흐름이 명확한지 확인
53
+ 2. **톤 조정**: 정중하되 간결한 톤 유지
54
+ 3. **참고 자료 정리**: 스크린샷, 링크 등을 명시적으로 구분
55
+ 4. **양식 적용**: `templates/SUGGESTION.md`에 맞춰 작성
56
+
57
+ ### 보고서
58
+
59
+ 1. **보고서 맥락 검토**: 구성의 적합성과 순서가 올바른지 확인
60
+ 2. **코드베이스 반영 여부 검증**: 보고서에 언급된 파일, 브랜치, 기능이 실제 코드베이스에 존재하는지 `Grep`, `Glob`, `Read`로 대조
61
+ - 허구(삭제됨/기획만 존재/허상)인 내용 발견 시 사용자에게 알림
62
+ 3. **코드 리뷰 사항 추가**: CTO에게 confirm 성격의 리뷰 요청 항목 제안
63
+ - 사용자가 작성한 항목을 포함하여 총 4개까지
64
+ - 설계 결정, 네이밍 컨벤션, 성능 관련 확인이 필요한 부분을 코드베이스에서 도출
65
+ 4. **양식 적용**: `templates/REPORT.md`에 맞춰 작성
66
+
67
+ ## Step 4. 사용자 검토 및 수정
68
+
69
+ 작성된 초안을 사용자에게 제시하고 수정 요청을 반영합니다.
70
+
71
+ ## Step 5. 저장
72
+
73
+ | 유형 | 저장 경로 | 파일명 패턴 |
74
+ | --------- | -------------------------- | --------------------------- |
75
+ | 회의록 | `.claude/threads/meeting/` | `meeting-{M}-{D}.md` |
76
+ | 건의/제안 | `.claude/threads/request/` | `request-{M}-{D}-{순번}.md` |
77
+ | 보고서 | `.claude/threads/report/` | `report-{M}-{D}-{순번}.md` |
78
+
79
+ - `{M}-{D}`: 월-일 (예: `2-26`)
80
+ - `{순번}`: 같은 날 동일 유형이 여러 개일 때 (예: `-1`, `-2`)
@@ -0,0 +1,39 @@
1
+ # 회의록 템플릿
2
+
3
+ ## 슬랙 스레드 양식
4
+
5
+ 📋 [회의록] {회의 제목} | {YYYY-MM-DD} {HH:MM}
6
+
7
+ 참석: {참석자 @태그 나열}
8
+
9
+ 📝 주요 논의
10
+
11
+ [{논의 주제 1}]
12
+ - {내용}
13
+ - {내용}
14
+
15
+ [{논의 주제 2}]
16
+ - {내용}
17
+
18
+ 📌 결정사항
19
+ - {확정 사항}
20
+
21
+ 🎯 액션 아이템
22
+ - {담당자} | {할 일} | {기한}
23
+
24
+ ━━━━━━━━━━━━━━━━
25
+ 다음 회의: {날짜} {시간}
26
+
27
+ ## 작성 가이드
28
+
29
+ ### 주제 정리 방법
30
+
31
+ 1. 원본에서 주제(토픽)를 식별
32
+ 2. 각 주제에 관련 내용을 모아 정리
33
+ 3. '나의 기록'과 '팀원의 기록'이 분리된 경우 주제 중심으로 통합
34
+ 4. 중복 내용은 하나로 병합
35
+
36
+ ### 결정사항 vs 액션 아이템
37
+
38
+ - **결정사항**: 합의/확정된 방향 (예: "디자인 시스템은 신규로 구축")
39
+ - **액션 아이템**: 담당자 + 기한이 있는 구체적 작업 (예: "컴포넌트 브랜치 PR 올리기 - 2/26 EOD")
@@ -0,0 +1,64 @@
1
+ # 보고서 템플릿
2
+
3
+ ## 슬랙 스레드 양식
4
+
5
+ 📊 [{보고 유형}] {보고서 제목} | {YYYY-MM-DD}
6
+
7
+ {수신자 @태그} 작업 내용 공유 및 리뷰 요청드립니다.
8
+
9
+ ━━━━━━━━━━━━━━━━
10
+
11
+ 📋 작업 개요
12
+ - 작업 브랜치: `{브랜치명}`
13
+ - 관련 PR: {PR 링크 또는 예정}
14
+ - 작업 기간: {시작일} ~ {종료일 또는 진행중}
15
+
16
+ 📝 작업 내용
17
+
18
+ [{작업 항목 1}]
19
+ - {구현/변경 내용}
20
+
21
+ [{작업 항목 2}]
22
+ - {구현/변경 내용}
23
+
24
+ 🔍 주요 변경사항
25
+ - `{파일 경로}` | {변경 설명}
26
+
27
+ 👀 리뷰 요청사항
28
+ > CTO님 확인 부탁드립니다.
29
+ 1. {리뷰 항목 1}
30
+ 2. {리뷰 항목 2}
31
+ 3. {리뷰 항목 3}
32
+ 4. {리뷰 항목 4}
33
+
34
+ 🎯 다음 작업
35
+ - {예정 작업}
36
+
37
+ ━━━━━━━━━━━━━━━━
38
+
39
+ ## 보고 유형 분류
40
+
41
+ | 유형 | 설명 |
42
+ |------|------|
43
+ | 작업 보고 | 완료/진행 중인 작업 공유 |
44
+ | 리뷰 요청 | 코드 리뷰가 필요한 브랜치/PR 공유 |
45
+ | 진행 상황 | 주기적 현황 보고 |
46
+
47
+ ## 코드베이스 검증 프로세스
48
+
49
+ 보고서 작성 시 다음을 실제 코드베이스와 대조:
50
+
51
+ 1. **파일 존재 여부**: 언급된 파일/경로가 존재하는지 `Glob`으로 확인
52
+ 2. **브랜치 존재 여부**: `git branch -a`로 확인
53
+ 3. **기능 구현 여부**: 보고된 기능이 실제 반영되었는지 `Grep`/`Read`로 확인
54
+ 4. **허구 내용 플래그**: 미구현/기획 단계 내용은 명시적으로 표기
55
+
56
+ ## 리뷰 요청 작성 가이드
57
+
58
+ - CTO에게 confirm 성격의 리뷰 요청
59
+ - 사용자가 작성한 항목 포함 총 4개까지
60
+ - 다음 관점에서 코드베이스 분석하여 도출:
61
+ - 설계 결정 (아키텍처, 패턴 선택)
62
+ - 네이밍 컨벤션 (변수명, 컴포넌트명)
63
+ - 성능 관련 (렌더링, 번들 크기)
64
+ - 확장성/유지보수성
@@ -0,0 +1,45 @@
1
+ # 건의/제안 템플릿
2
+
3
+ ## 슬랙 스레드 양식
4
+
5
+ {이모지} [{카테고리}] {제안 제목}
6
+
7
+ {수신자 @태그} 여유있으실 때 확인해주시면 감사하겠습니다 🙏
8
+
9
+ ━━━━━━━━━━━━━━━━
10
+
11
+ 📌 {번호}. {건의 항목 제목}
12
+
13
+ 🔍 상황
14
+ {현재 상태를 사실 기반으로 서술}
15
+
16
+ 💬 이슈
17
+ {왜 문제인지, 어떤 점이 개선 필요한지}
18
+
19
+ ✨ 질문 또는 제안
20
+ {구체적인 질문이나 대안 제시}
21
+
22
+ 📎 참고
23
+ {브랜치, 스크린샷, 링크 등}
24
+
25
+ (복수 건의 시 위 형식 반복)
26
+
27
+ ━━━━━━━━━━━━━━━━
28
+
29
+ ## 카테고리 이모지 규칙
30
+
31
+ | 카테고리 | 이모지 |
32
+ |----------|--------|
33
+ | UX 제안 | 💡 |
34
+ | 버그 보고 | 🐛 |
35
+ | UI 통일 | 🎨 |
36
+ | 기술 질문 | ❓ |
37
+ | 정책/기획 | 📋 |
38
+
39
+ ## 작성 가이드
40
+
41
+ - 정중하되 간결한 톤
42
+ - 사실 기반 서술 (추측과 사실을 구분)
43
+ - 제안은 질문 형태로 ("~하면 어떨까요?", "~해도 괜찮을지 여쭤봅니다")
44
+ - 적용된 사항이 있다면 해당 브랜치/버전을 명시
45
+ - 복수 건의 시 넘버링하고 관련성 높은 것끼리 인접 배치