Draft a PRD (Product Requirements Document) based on a template, validate the required format, and guide the user through the GitHub PR submission process.
Terminology
Key terms used in this skill:
| Term | Description |
|---|---|
| PRD | Product Requirements Document. A document that organizes "what this project solves and what it builds" |
| GitHub | An online service for managing and sharing code and documents together. The code version of Google Docs |
| GitHub ID | The name that identifies me on the GitHub site. The last part of the profile URL (github.com/here) |
| Repository (Repo) | A folder where project files are gathered. Similar to a shared folder in Google Drive |
| Branch | Creating a separate workspace for yourself without touching the original. Similar to "Save a copy" |
| Commit | Saving changes. The Git version of Ctrl+S |
| Push | Uploading what you saved on your computer to the online (GitHub) |
| PR (Pull Request) | A review request sent to the organizers saying "Please check my work." Equivalent to the submit button |
| gh CLI | A tool that lets you operate GitHub from the terminal |
Prerequisites
This skill assumes the following environment is in place. It is automatically checked in Step 0.
gitmust be installedghCLI must be installed and authenticated- The target repo must be cloned
- You must have push permission (collaborator) on the repo
Estimated Time Guide
| Step | Topic | Estimated Time |
|---|---|---|
| 0 | Environment check | ~1분 |
| 1 | Check GitHub ID | ~1분 |
| 2 | PRD writing + validation | ~10분 |
| 3 | Submission (git + PR) | ~3분 |
| Total | ~15분 |
If the environment is set up, it can be completed within 15 minutes. If environment issues occur, add +5–10 minutes.
PRD Template
# [프로젝트 제목]
## 문제
> 한 줄: 누구의, 어떤 불편을, 어떻게 해결하는가
- **현재 상태**: (구체적 수치 — 몇 건, 몇 분, 몇 명)
- **원하는 상태**: (1주 후 돌아가고 있을 모습)
- **성공 기준**: (숫자로 판단 가능한 것 1~2개)
## 스킬
| # | 스킬명 | 한 줄 설명 | 상태 |
|---|--------|-----------|------|
| 1 | `/my-skill-1` | 입력 → 출력 | ✅ 동작 / 🔨 진행중 |
| 2 | `/my-skill-2` | 입력 → 출력 | ✅ 동작 / 🔨 진행중 |
## 변화 기록
- **Day 1**: "처음 정의" →
- **Day 6**: "지금 정의" →
- **가장 크게 달라진 점**:
Execution Flow
Step 0 Step 1 Step 2 Step 3
환경 체크 → GitHub ID 확인 → PRD 작성/검증 → 제출 (git + PR)
Step 0: Environment Pre-check
At skill start, before proceeding, automatically check the following:
git --version
gh --version
gh auth status
git remote -v
Show the results to the participant:
=== 환경 체크 ===
✅ git: 설치됨
✅ gh CLI: 설치됨
✅ GitHub 로그인: 완료 (사용자: {detected-id})
✅ 프로젝트 폴더: 연결됨 ({repo-url})
환경 준비가 완료되었습니다!
If even one fails guide the solution for that item, and check again after it is resolved. Do not proceed to the next Step until all items pass.
| Failed Item | Guidance |
|---|---|
| git not installed | "git is not installed. Please ask the organizers for help." |
| gh CLI not installed | "brew install ghPlease enter this in the terminal." (macOS based). If it fails, call the organizers |
| gh not authenticated | "gh auth loginPlease enter this and follow the instructions that appear. You can log in with your GitHub account." |
| repo not connected | "You haven't downloaded the project to your computer yet. Please enter the following in the terminal: gh repo clone {owner/repo}" |
Step 1: Check GitHub ID
In Step 0, gh auth statusshow the GitHub ID detected as and only get confirmation:
AskUserQuestion: "GitHub 사용자명이 '{detected-id}'가 맞나요?"
- 네, 맞습니다
- 아니요, 다른 ID입니다 (직접 입력)
ID format validation: Check whether the entered ID contains only English letters, numbers, and hyphens (-). It must not contain special characters, spaces, slashes, etc. If it does, provide guidance and receive input again.
Normalize the entered ID to lowercase.
This ID will be used in subsequent file paths and branch names:
- File:
{github-id}/PRD.md - Branch:
prd/{github-id}
Step 2: Write or validate PRD
Ask about the current status with AskUserQuestion:
| Option | Action |
|---|---|
| Write a new PRD | Step 2-A: Template-based writing guide |
| Validate an already written PRD | Step 2-B: Validate existing file |
Step 2-A: PRD writing guide
- Show the above PRD template
- Ask about the project topic with AskUserQuestion:
"어떤 프로젝트의 PRD를 작성할까요?"
- 캠프에서 만든 스킬 기반 (이번 주에 만든 스킬을 프로젝트로 발전)
- 업무 자동화 아이디어 (실제 업무에서 자동화하고 싶은 것)
- 직접 입력
If "based on skills made at camp" is selected, .claude/skills/ scan the directory, show the list of skills made by the participant, and have them select one.
-
Generate a PRD draft based on the participant's answers
-
Output the draft to the terminal and AskUserQuestion:
| Option | Action |
|---|---|
| Proceed as is | {github-id}/PRD.mdSave to and go to Step 2-B |
| I want to edit it | Ask which part to edit (problem definition / skill list / change log), apply it, and output again |
- Important: The PRD content must reflect the participant's actual experience and project. Guide them to include skills made at camp and real work problems, not generic examples.
Step 2-B: PRD format validation
{github-id}/PRD.md Read the file and validate it with the checklist below.
Validation checklist
| # | Item | Validation method | Required |
|---|---|---|---|
| 1 | Project title | #Does the first line (large heading) starting with exist |
Required |
| 2 | Problem section | ## 문제 Does the heading exist |
Required |
| 3 | Current state | 현재 상태 Does the text exist and is it at least 10 characters |
Required |
| 4 | Desired state | 원하는 상태 Does the text exist and is it at least 10 characters |
Required |
| 5 | Success criteria | 성공 기준 Does the text exist and is it at least 10 characters |
Required |
| 6 | Skill section | ## 스킬 Does the heading exist |
Required |
| 7 | At least 2 skills | In the skill table, ` | 1 |
| 8 | Change log | ## 변화 기록 Does the heading exist |
Required |
Output verification results
=== PRD 형식 검증 결과 ===
[PASS] 또는 [보완 필요]
✅ 프로젝트 제목: 있음
✅ 문제 섹션: 있음
✅ 현재 상태: 있음
✅ 원하는 상태: 있음
✅ 성공 기준: 있음
✅ 스킬 섹션: 있음
✅ 스킬 2개 이상: 있음 (N개)
✅ 변화 기록: 있음
결과: 8/8 통과 → PASS
If supplementation is needed, specifically guide the missing items:
❌ 성공 기준: 내용이 너무 짧습니다. 구체적인 숫자를 포함해주세요.
예) "주 3회 사용, 건당 처리 시간 30분 → 5분"
Step 3: Submission (git + PR)
After verification PASS, AskUserQuestion:
"PRD 검증을 통과했습니다! GitHub에 제출할까요?"
- 네, 제출해주세요 (권장)
- 나중에 할게요
If "I'll do it later" is selected: After guiding "Please run this skill again when you are ready," exit.
If "Yes, please submit" is selected, execute the following. For each step, output the progress status in Korean:
[1/5] 최신 상태로 동기화하는 중...
git checkout main && git pull origin main
[2/5] 제출용 공간을 만드는 중...
git checkout -b prd/{github-id}
If the branch already exists,
git checkout prd/{github-id}switch to it.
[3/5] PRD 파일을 등록하는 중...
git add {github-id}/PRD.md
git statusCheck that there is only{github-id}/PRD.md1 file staged with . If other files are included, unstage those files.
[4/5] 저장하는 중...
git commit -m "feat: {github-id} PRD 초안 제출"
[5/5] GitHub에 올리는 중...
git push origin prd/{github-id}
After push is complete, create a PR with the gh CLI:
gh pr create --repo {owner/repo} --title "PRD: {github-id}" --body "$(cat <<'EOF'
## PRD 초안 제출
- 작성자: {github-id}
- 파일: {github-id}/PRD.md
검증 결과: PASS (8/8)
EOF
)"
Output the PR URL and guide completion.
Completion report
=== Day 6 PRD 제출 완료 ===
GitHub ID: {github-id}
파일: {github-id}/PRD.md
브랜치: prd/{github-id}
검증: PASS (8/8)
PR: {PR URL}
축하합니다! GitHub에 첫 PR을 올렸습니다.
운영진이 확인 후 승인할 예정입니다.
Error handling
| Situation | Response |
|---|---|
| git not installed | "git is not installed. Please ask the operators for help." |
| gh CLI not installed | "brew install gh." If it fails, guide to call the operators |
| gh not authenticated | "gh auth loginand log in with your GitHub account." |
| PRD.md file not found | "There is no PRD file yet. Shall we write it first?" |
| Verification supplementation needed | Guide missing items + specific examples + help with corrections |
| git branch already exists | Automatically switch to the existing branch |
| push failed (authentication) | "GitHub login is required. gh auth login." |
| push failed (permission) | "You do not have permission to submit to this project. Please send a message to the operators (@zoon) on Slack saying 'I need permission.'" |
| repo clone 안 됨 | "You need to download the project first. In the terminal, gh repo clone {owner/repo}." |
| GitHub ID format error | "GitHub IDs can only use letters, numbers, and hyphens (-)." |
Output location
| Path | Content |
|---|---|
{github-id}/PRD.md |
Participant PRD document |