프롬프트
CLAUDE.md로 설정을 마치고, 요청을 잘하기 위해 프롬프트를 "잘" 만들어야 합니다.
이제 효과적인 프롬프트 작성법, 컨텍스트 최적화로, 클로드 협업 효율성을 높이겠습니다.
1. 프롬프트 엔지니어링 기초
프롬프트 1 : 단순히 "무엇을 해줘" → 0점입니다. 중요 맥락이 빠지면서 결과가 부정확할 수 있네요.
가령, 회원가입 기능 구현해줘는 어떨까요?
어떤 기술 스택을 사용할지
어떤 필드가 필요한지
어떤 검증 규칙이 필요한지
프론트엔드만? 백엔드도?
데이터베이스 연동은?
전부 누락되겠습니다. 이것을 보완해보면 다음과 같습니다.
React와 Node.js/Express를 사용해서 회원가입 기능을 구현해줘.
- 필드: 이메일, 비밀번호, 비밀번호 확인, 이름
- 이메일 형식 검증과 비밀번호 강도 체크 포함
- 프론트엔드 컴포넌트와 백엔드 API 엔드포인트 모두 필요
한번 더 구체화해서 프롬프트를 만들어 보겠습니다.
회원가입 시스템을 만들고 싶어. 다음 사양으로 구현해줘:
기술 스택:
- 프론트엔드: React with TypeScript
- 백엔드: Node.js + Express
- 데이터베이스: PostgreSQL
필수 기능:
1. 회원가입 폼 (이메일, 비밀번호, 이름, 전화번호)
2. 유효성 검증:
- 이메일 중복 확인
- 비밀번호: 최소 8자, 대소문자+숫자+특수문자 포함
- 전화번호 형식 검증
3. 비밀번호 해싱 (bcrypt 사용)
4. 가입 성공 시 JWT 토큰 발급
5. 에러 처리 및 사용자 피드백
추가 요청:
- 폼 제출 중 로딩 상태 표시
- 깔끔한 UI (Tailwind CSS 사용)
- API 응답 형식은 JSON
이렇게 배경지식, 출력 형식, 제약 조건을 언급하는 것이 좋습니다.
프롬프트 구성요소
1. 컨텍스트(Context) : 배경 정보로 프로젝트 환경, 기술 스택, 목표와 제약 조건 등이 해당합니다.
2. 구체적인 요구사항 : 맥락으로 부족하고, 기능과 기술 조건을 구체적으로 기술합니다.
3. 예상 결과물 : 반복 요청을 줄일 수 있습니다. 바로 활용 가능하도록 결과물을 만듭니다.
컨텍스트 최적화 전략
1. 작업 범위 명확히 제한하기
이거 보다는, 특정 디렉터리만으로 제한하여 명령합니다.
claude --add-dir 디렉터리 "해당 디렉터리 코드에서 버그를 찾아주세요"
2. 단계적 접근법(Narrow Down)
한번에 해결하지 말고, 큰 그림, 의심하는 영역, 원인 순으로 좁혀나가세요.
2-1. "전체 구조를 분석해서 문제가 있을 만한 영역을 찾아주세요"
2-2. "특정 디렉터리 API" "API 호출할 때, 성능 이슈를 찾아주세요"
2-3. "@디렉터리/특정 파일 이 파일의 메모리 누수 원인을 찾아주세요"
토큰 관리와 세션 최적화
1. 토큰 효율성 고려하기
요금제별 모델 정책을 이해하고 사용합니다. Opus, 비싸고 강력한 것은 숨겨둔 한 수로 사용합니다.
특히, 입력도 토큰 소진이 되겠죠. 괜히 길게 프롬프트 쓰지 말라는 뜻이에요. 두괄식으로 깔끔하게 갑시다.
2. 모델 쿼터 관리하기
비싼 Opus 다 쓰면, Sonnet을 쓰는 것처럼, 주어진 쿼터를 고려해서 작업하는게 좋습니다.
3. 세션 관리 명령어
대화가 길면 컨텍스트가 커지므로, /compact, /clear, /status를 조합하여 사용합니다.
/compact 는 응답이 느리면 쓰고, /clear는 다른 주제일 때 쓰고, /status는 모니터링 용도입니다.
4. Auto-Compact 모니터링
토큰 임계치 관리의 핵심 방법으로, 자동 압축을 합니다. 압축률을 관리해서 임계치에 도달했는지 볼 수도 있습니다. 이 자동 압축 수치는 성능 지표, 정보 손실 경고, 작업 효율성 측면에서 이를 고려해야 합니다.

최적의 전략은, 50% 이상 압축률은 /clear로 새롭게 하고, 완전 낮으면 /compact로 컨텍스트를 간소화합니다. 적절한 압축률이면 /status를 보면서 넘어가는거죠.
5. 권한 모드 --permission-mode
이 명령어는 여러 가지가 속합니다. permission mode, acceptEdits, plan, bypassPermission
반복 작업을 빠르게 자동화(acceptEdits, bypass 등)하거나 단계적 실행(plan)에 유용한데, 신뢰성 및 안전성을 고려해서 사용해야 합니다.
6. 언어 선택도 전략적으로 합니다. 한글은 토큰을 많이 쓰고, 영어는 기술 정확성과 효율성이 높습니다.
그러면 한글은 안 쓰는게 좋을까요? 그렇지 않습니다.
한글은, 한국인이라면 자연스럽게 의도를 전달하고, 복잡한 비즈니스 로직도 쉽게 설명할 수 있습니다.
영어는 기술 정확성과 우수한 토큰 사용량, 간결한 표현에서 좋습니다. 요금제가 낮은 클로드를 사용하시면, 영어를 권장합니다.
특수 문자 숏컷: 프롬프트 효율화
1. @ - 파일 참조 : 파일 내용 직접 가져와서 프롬프트에 넣어 명령할 수 있습니다.
2. ! 시스템 명령어 실행 : 사용자 터미널에서 직접 실행
여러 줄 입력
\ 엔터키가 일반적이고,
일부 맥 터미널은 옵션 + 엔터,
itemr2, vscode 터미널 /terminal-setup 설정으로 쉬프트 + 엔터로 여러 줄 입력을 할 수 있습니다.
더 길어진다면, 별도 파일로 프롬프트 작성하고 @파일 숏컷을 사용합시다.
그 외에도, 작업 디렉터리별로 명령어 히스토리를 사용합니다. 방향키 위/아래를 사용합니다.
계층적 질문 전략
큰 그림 파악 > 세부 기능 구현 > 세부 튜닝
복잡한 task는 이렇게 좁혀가며 활용하는 것이 좋습니다.
실전 프롬프트 템플릿
교재에는 전용 템플릿이 있어, 상황별로 적절히 수정할 수 있도록 제공하고 있습니다.
실습: 프로젝트 기획
1. 프로젝트 기획서 작성
프로젝트로 개발할 웹 애플리케이션을 기획해줘.
조건:
- 주제: 지방소멸위험 알리미 서비스
- 기간: 3개월 (2025.03 - 2025.05)
- 팀: 2명 (풀스택 개발자 1명, 디자이너 1명)
- 예산: 1000만원 이내
고려사항:
- 실용성과 편의성
- 유지보수 및 확장 가능성
결과물:
- 프로젝트 개요
- 주요 기능 3개
- 기술 스택 추천
- 주차별 개발 일정
- 예산 분배 방안
2. 기술 스택 선정
앞에서 기획한 프로젝트에 적합한 기술 스택을 추천해줘.
고려사항:
개발 속도 (빠른 프로토타이핑)
클라이언트 요구사항
개발 생산성
배포 및 유지보수
비용 효율성
비교 기준:
프론트엔드: React vs Vue vs Angular
백엔드: Node.js vs Python vs Java
데이터베이스: PostgreSQL vs MongoDB vs Firebase
배포: AWS vs Netlify vs Vercel
상태관리: Redux vs Zustand vs Context API
결과물:
추천 기술 스택 (이유 포함)
단계별 가이드
대안 기술 스택
마이그레이션 기획
3. 개발 환경 세팅
선정한 기술 스택으로 개발 환경을 세팅해주세요.
요구사항:
팀 협업 환경 (Git, EsLint, Prettier)
개발 효율성 (Hot reload, 디버깅)
코드 품질 (TypeScript, 테스트)
CI/CD 파이프라인 기초
단계별 가이드:
프로젝트 초기화 패키지 설치 및 설정 디렉터리 구조 생성 기본 컴포넌트 생성 Git 설정 배포 준비
결과물:
완전한 세팅 명령어
설정 파일
팀 공유용 README
트러블슈팅 가이드
각 단계별로 환경을 세팅하고, 정리하면 아래와 같습니다.
고급 프롬프트 기법
1. 롤플레잉 기법
- 이전에 페르소나를 부여해서 작업하는 방식과 동일합니다.
- 전문가 역할을 넣어 답변의 깊이를 높이네요.
2. 단계별 사고 유도
- 이전에 CoT라고 하는, 복잡한 과제를 단계별로 작은 단위 분해해서 체계적으로 접근하게 만드는 방법입니다.
- Chain of Thought
문제 해결 팁
실수 1: 너무 모호한 요청
ex) 웹 사이트 예쁘게 만들어 줘 > 어떤 페이지를 개선해주고, 개선할 기능 요구사항을 명확히 합니다.
실수 2: 컨텍스트 정보 부족
ex) 버그 고쳐줘 > 이거보다는 해당 버그 메시지를 가져오는 게 좋습니다.
'Challenge > Inflearn' 카테고리의 다른 글
[Do it LLM] 챌린지 2주차 - 스트림 출력 (0) | 2025.10.04 |
---|---|
[클로드코드] 챌린지 기록 2주차 1일 - CLAUDE.md (0) | 2025.09.29 |
[Do it LLM] 챌린지 2주차 - 오픈 AI GPT API 활용한 업무 자동화 (1) | 2025.09.29 |
[Do It LLM] 챌린지 기록 1주차: 스트림릿 챗봇 (0) | 2025.09.28 |
[Do It LLM] 챌린지 기록 1주차: 오픈AI API 챗봇(2) (0) | 2025.09.26 |