프롬프트 생성기
사용자의 요구사항을 분석하여 Claude Code에서 사용할 수 있는 고품질 프롬프트를 생성한다.
핵심 원칙
좋은 프롬프트의 3요소:
- •명확성 - 모호함 없이 구체적으로 기술
- •맥락 - 충분한 배경 정보 제공
- •실행 가능성 - 바로 실행할 수 있는 단계로 구성
워크플로우
1. 프롬프트 유형 파악
사용자 요청에서 프롬프트 유형을 파악한다:
| 유형 | 키워드/맥락 | 상세 가이드 |
|---|---|---|
| 스킬 | skill, 스킬, 기능 확장 | skill-guide.md |
| 에이전트 | agent, 에이전트, 서브에이전트 | agent-guide.md |
| MCP 서버 | mcp, 서버, 외부 연동 | mcp-guide.md |
| 일반 코딩 | 기능 구현, 버그 수정, 리팩토링 | coding-guide.md |
유형이 불명확하면 사용자에게 질문한다.
2. 요구사항 수집
필수 정보:
- •목적: 무엇을 달성하려는가?
- •맥락: 어떤 환경/프로젝트에서 사용하는가?
- •제약사항: 기술 스택, 규칙, 제한 등
선택 정보:
- •입력/출력 형식
- •예외 처리 방식
- •참고할 기존 코드/문서
정보가 부족하면 핵심 질문만 간결하게 물어본다.
3. 프롬프트 생성
유형별 가이드를 참조하여 프롬프트를 생성한다.
4. 출력
생성된 프롬프트를 다음 형식으로 출력:
code
## 생성된 프롬프트 [프롬프트 내용]
반드시 아래 스크립트를 실행하여 클립보드에 복사:
bash
cat << 'EOF' | scripts/copy_to_clipboard.sh [프롬프트 내용] EOF
좋은 프롬프트 vs 나쁜 프롬프트
예시 1: 기능 구현
나쁜 프롬프트:
code
로그인 기능 만들어줘
- •기술 스택 불명
- •요구사항 불명확
- •제약사항 없음
좋은 프롬프트:
markdown
# 기능 구현: JWT 인증 API ## 목표 JWT 기반 로그인/로그아웃 API 구현 ## 맥락 - 프로젝트: Spring Boot 4.0 REST API - 기술 스택: Java 21, Spring Security - 관련 파일: src/main/java/.../auth/ ## 요구사항 1. POST /api/auth/login - 이메일/비밀번호로 로그인, JWT 반환 2. POST /api/auth/logout - 토큰 무효화 3. Access Token 만료: 1시간, Refresh Token: 7일 ## 제약사항 - 기존 UserRepository 활용 - DDD 아키텍처 준수
예시 2: 에이전트 생성
나쁜 프롬프트:
code
코드 리뷰 에이전트 만들어줘
- •도구 지정 없음
- •출력 형식 불명
- •제약사항 없음
좋은 프롬프트:
markdown
# 코드 리뷰어 에이전트 생성 요청 ## 역할 PR 또는 코드 변경사항을 분석하여 리뷰 의견 제공 ## 사용 시나리오 - "이 PR 리뷰해줘" - "코드 변경사항 검토해줘" ## 필요 도구 - Bash: git diff, git log 실행 - Read: 변경된 파일 읽기 - Grep: 패턴 검색 ## 작업 흐름 1. 변경된 파일 목록 확인 (git diff --name-only) 2. 각 파일의 변경 내용 분석 3. 코드 품질, 버그 가능성, 개선점 도출 4. 구조화된 리뷰 의견 작성 ## 출력 형식 - 요약: 전체 변경사항 개요 - 이슈: 발견된 문제점 (심각도 표시) - 제안: 개선 사항 ## 제약사항 - 파일 수정 금지 (읽기만)
예시 3: 스킬 생성
나쁜 프롬프트:
code
PDF 스킬 만들어줘
- •기능 범위 불명
- •트리거 조건 없음
좋은 프롬프트:
markdown
# PDF 처리 스킬 생성 요청 ## 목적 PDF 파일의 텍스트 추출, 페이지 회전, 병합 기능 제공 ## 트리거 조건 - 키워드: PDF, 페이지 회전, PDF 병합, 텍스트 추출 - 맥락: 사용자가 PDF 파일 경로를 언급하거나 PDF 작업 요청 시 ## 핵심 기능 1. 텍스트 추출 (pdfplumber 사용) 2. 페이지 회전 (90/180/270도) 3. 여러 PDF 병합 ## 입력/출력 - 입력: PDF 파일 경로, 작업 유형 - 출력: 처리된 PDF 또는 추출된 텍스트 ## 제약사항 - Python 환경 필요 - 암호화된 PDF는 비밀번호 필요
예시 4: MCP 서버 생성
나쁜 프롬프트:
code
GitHub MCP 서버 만들어줘
- •도구 목록 없음
- •인증 방식 불명
좋은 프롬프트:
markdown
# GitHub MCP 서버 생성 요청 ## 목적 GitHub API와 연동하여 이슈, PR 관리 기능 제공 ## 제공할 도구 (Tools) | 도구명 | 설명 | 파라미터 | |--------|------|---------| | list_issues | 이슈 목록 조회 | repo, state, labels | | create_issue | 이슈 생성 | repo, title, body | | get_pr | PR 상세 조회 | repo, pr_number | ## 기술 스택 - 언어: Python (FastMCP) - 의존성: httpx, fastmcp ## 인증/보안 - GitHub Personal Access Token (환경변수: GITHUB_TOKEN) - 토큰 없으면 명확한 에러 메시지 반환 ## 에러 처리 - Rate limit 초과: 재시도 안내 메시지 - 401/403: 토큰 확인 안내
프롬프트 품질 체크리스트
생성 전 각 항목을 검증한다:
필수 항목
| 항목 | 기준 | 나쁜 예 | 좋은 예 |
|---|---|---|---|
| 목표 명확성 | 한 문장으로 달성 목표 설명 가능 | "기능 개선해줘" | "JWT 토큰 만료 시간을 1시간에서 30분으로 변경" |
| 맥락 충분성 | 기술 스택, 프로젝트 구조 포함 | (생략) | "Spring Boot 4.0, Java 21, DDD 아키텍처" |
| 실행 가능성 | 추가 질문 없이 작업 시작 가능 | "적절하게 처리해줘" | "UserService.login()에서 예외 발생 시 401 반환" |
| 범위 한정 | 작업 범위가 명확히 정의됨 | "전체 리팩토링해줘" | "PaymentService를 Payment/Refund로 분리" |
유형별 추가 항목
스킬 생성:
- • 트리거 키워드/맥락이 구체적인가?
- • 핵심 기능이 3-5개로 명확한가?
- • 입력/출력 형식이 정의되었는가?
에이전트 생성:
- • 필요한 도구가 나열되었는가?
- • 작업 흐름이 순서대로 기술되었는가?
- • 제약사항(하면 안 되는 것)이 명시되었는가?
MCP 서버 생성:
- • 제공할 도구(Tools) 목록이 표로 정리되었는가?
- • 각 도구의 파라미터가 명시되었는가?
- • 인증 방식이 정의되었는가?
- • 에러 처리 방식이 기술되었는가?
일반 코딩:
- • (버그) 재현 조건이 명시되었는가?
- • (리팩토링) 현재 문제와 개선 방향이 있는가?
- • (기능) 요구사항이 번호로 나열되었는가?
빠른 템플릿
기능 구현
markdown
# 기능 구현: [제목] ## 목표 [한 문장 목표] ## 맥락 - 프로젝트: [프로젝트명] - 기술 스택: [언어, 프레임워크] - 관련 파일: [파일 경로] ## 요구사항 1. [요구사항 1] 2. [요구사항 2] ## 제약사항 - [제약 1]
버그 수정
markdown
# 버그 수정: [현상] ## 재현 조건 1. [단계 1] 2. [단계 2] → 결과: [현재 결과] (예상: [기대 결과]) ## 관련 파일 - [파일:함수명] ## 예상 원인 [추정 원인]
에이전트 생성
markdown
# [에이전트명] 에이전트 생성 ## 역할 [한 문장 역할] ## 사용 시나리오 - "[예시 요청 1]" - "[예시 요청 2]" ## 필요 도구 - [도구]: [용도] ## 작업 흐름 1. [단계 1] 2. [단계 2] ## 제약사항 - [금지 사항]
스킬 생성
markdown
# [스킬명] 스킬 생성 ## 목적 [해결하려는 문제] ## 트리거 조건 - 키워드: [키워드 목록] - 맥락: [활성화 상황] ## 핵심 기능 1. [기능 1] 2. [기능 2] ## 입력/출력 - 입력: [입력 형식] - 출력: [출력 형식]
MCP 서버 생성
markdown
# [서버명] MCP 서버 생성 ## 목적 [연동할 서비스와 제공 기능] ## 제공할 도구 | 도구명 | 설명 | 파라미터 | |--------|------|---------| | [도구1] | [설명] | [파라미터] | ## 기술 스택 - 언어: [Python/TypeScript] - 의존성: [라이브러리] ## 인증/보안 - [인증 방식] ## 에러 처리 - [에러 상황]: [처리 방식]