좋은 프롬프트란 무엇인가

Ch.08 · Lesson 01 · Updated 2026.05.23 · 4 min read

← 바이브코딩 바이블 목차

AI가 아무리 뛰어나도 나쁜 프롬프트에는 나쁜 결과가 나와요. 반대로 좋은 프롬프트 하나가 예상보다 훨씬 좋은 결과를 만들어내기도 해요. 그렇다면 좋은 프롬프트란 무엇일까요?

프롬프트는 AI와의 대화예요

프롬프트를 검색창에 키워드 넣는 것처럼 생각하는 분들이 많아요. 그런데 AI와의 상호작용은 검색과 달라요. 대화에 더 가까워요. 상대방이 이해할 수 있도록 맥락을 주고, 원하는 것을 설명하고, 결과물의 형태를 안내하는 거예요.

좋은 프롬프트는 좋은 대화의 첫 마디예요. 명확하고, 구체적이고, 필요한 맥락이 담겨 있어요.

좋은 프롬프트의 네 가지 특징

1. 목적이 분명해요
무엇을 원하는지 처음부터 명확하게 말해요. “뭔가 만들어줘”가 아니라 “사용자 인증 기능을 만들어줘”처럼요.

2. 맥락이 있어요
지금 어떤 상황인지, 어떤 프로젝트인지 설명해요. “React로 만든 쇼핑몰 프로젝트야. 장바구니에 상품을 추가하는 기능을 만들어줘”처럼 배경을 알려줘요.

3. 제약 조건이 있어요
사용하는 기술 스택, 따라야 하는 규칙, 피해야 하는 것들을 알려줘요. “TypeScript 써야 해”, “외부 라이브러리 없이 순수 JavaScript로”, “기존 디자인 시스템에 맞춰서”처럼요.

4. 결과물의 형태가 구체적이에요
코드가 필요한지, 설명이 필요한지, 아니면 여러 옵션 중에 선택하려는 건지 알려줘요. “코드로 구현해줘”, “먼저 어떤 방법이 있는지 설명해줘”, “이 방법의 장단점을 비교해줘”처럼요.

나쁜 프롬프트 vs 좋은 프롬프트 — 실제 비교

상황: 로그인 버튼 만들기
나쁜 프롬프트: “버튼 만들어줘”
좋은 프롬프트: “로그인 버튼을 만들어줘. 파란색 배경에 흰색 글씨, 클릭하면 /login 경로로 이동해야 해. 이미 있는 Button 컴포넌트 스타일을 따라줘.”

상황: 에러 수정 요청
나쁜 프롬프트: “에러 고쳐줘”
좋은 프롬프트: “이 에러가 발생했어: [에러 메시지 붙여넣기]. user.name을 표시하려고 하는데, user가 undefined일 때 나타나는 것 같아. 어떻게 처리하면 좋을까?”

차이가 보이시나요? 좋은 프롬프트는 상황 → 목표 → 조건 순서로 설명해요.

길수록 좋은 게 아니에요

좋은 프롬프트가 꼭 긴 건 아니에요. 핵심 정보만 담겨 있다면 짧아도 충분해요. 오히려 불필요한 내용이 많으면 AI가 집중해야 할 부분을 놓칠 수 있어요.

“Next.js 앱에서 사용자 로그인 기능을 이메일/비밀번호로 구현해줘. NextAuth 사용해. 로그인 성공하면 /dashboard로 이동해야 해.”

이 정도면 충분히 좋은 프롬프트예요. 짧지만 목적, 기술 스택, 동작 조건이 모두 담겨 있어요.

한 번에 다 요청하지 마세요

처음 바이브코딩을 배울 때 자주 하는 실수가 있어요. 모든 요구사항을 한 번에 다 넣으려는 거예요. 기능 A, B, C, D를 한꺼번에 만들어달라고 하는 거죠. 이렇게 하면 AI도 처리하기 어렵고 결과의 품질이 떨어질 수 있어요.

바이브코딩의 핵심 원리처럼, 작게 나눠서 요청하는 게 훨씬 효과적이에요. 기능 하나씩 만들고, 확인하고, 다음으로 넘어가세요.

프롬프트도 연습이 필요해요

처음부터 완벽한 프롬프트를 쓸 수 있는 사람은 없어요. 써보고, 결과를 보고, 뭐가 부족했는지 파악하고, 다음에 더 잘 쓰면 돼요. 좋은 프롬프트를 쓰는 능력은 바이브코딩에서 가장 빠르게 실력이 늘어나는 영역 중 하나예요. 많이 써볼수록 나아져요.

처음엔 AI의 응답이 기대와 다를 거예요. 그때 “다시 해줘”보다 “이 부분을 이렇게 바꿔줘”처럼 구체적으로 수정 요청하는 게 훨씬 효과적이에요. 프롬프트를 수정하는 것 자체가 실력이 느는 과정이에요.

이 챕터에 대해 질문이 있으신가요? Cursor Korea 커뮤니티에서 함께 이야기해요.

질문하러 가기 →
DISCUSSION

댓글 0