dev.syw

무엇을 만들지 구체적으로 설명하고 목표·제약·예시를 함께 주어 에이전트의 오해를 줄이는 요청법을 배운다.

의도를 잘 전달하기

바이브 코딩의 결과 품질은 거의 전적으로 요청의 품질에 달려 있다. 에이전트는 마음을 읽지 못한다. 머릿속에만 있는 가정을 글로 꺼내 명확히 전달할수록, 다시 고치는 횟수가 줄고 첫 결과가 의도에 가까워진다. 이 강의에서는 모호함을 줄이는 요청법을 다룬다.

학습 목표

  • 좋은 요청의 3요소(목표·제약·예시)를 구성할 수 있다.
  • 모호한 표현을 구체적인 표현으로 바꿀 수 있다.
  • 좋은 요청과 나쁜 요청을 구분하고 개선할 수 있다.

요청의 3요소: 목표 · 제약 · 예시

좋은 요청은 보통 세 가지를 담는다.

  • 목표(무엇을, 왜): 만들려는 결과와 그 쓰임.
  • 제약(지켜야 할 것): 사용할 기술, 스타일, 하지 말아야 할 것.
  • 예시(구체적 형태): 입력/출력 예, 화면 모습, 데이터 형식.

나쁜 예와 좋은 예를 비교해 보자.

> 로그인 기능 만들어줘

이 요청은 너무 열려 있다. 어떤 인증 방식인지, 어떤 기술 스택인지, 성공/실패 시 무엇을 할지 전부 에이전트가 추측해야 한다.

> React + TypeScript로 로그인 폼 컴포넌트를 만들어줘.
> - 입력: 이메일, 비밀번호
> - 제약: 외부 인증 라이브러리는 쓰지 말고, onSubmit으로 부모에 값만 전달
> - 검증: 이메일 형식이 틀리면 인풋 아래 빨간 메시지 표시
> - 예시 동작: 제출 성공 시 콘솔에 { email, password } 출력

목표, 제약, 검증 규칙, 예시 동작이 모두 들어 있어 에이전트가 추측할 여지가 거의 없다.

모호함 줄이기

흔히 모호함을 만드는 표현과 그 대안이다.

모호한 표현구체적인 표현
"예쁘게 만들어줘""여백을 넉넉히, 버튼은 둥근 모서리, 모바일에서 1열"
"빠르게 동작하게""목록 1만 건에서 스크롤이 끊기지 않게 가상 스크롤 적용"
"적당히 검증해줘""빈 값과 100자 초과를 막고 메시지를 보여줘"
"기존 방식대로""src/api/client.ts의 fetch 래퍼를 그대로 사용해서"

판단 기준이 들어가는 단어(예쁘게, 빠르게, 적당히)는 거의 항상 더 풀어써야 한다.

맥락을 함께 준다

에이전트는 현재 프로젝트의 파일을 읽을 수 있다. 어떤 파일과 패턴을 따라야 하는지 짚어주면 일관성이 크게 올라간다.

> 새 페이지를 추가할 건데, src/pages/about.tsx와 같은 구조와 스타일을 따라줘.
> 라우팅 등록 방식도 기존 페이지들과 동일하게 맞춰줘.

"기존 코드를 먼저 보고 그 컨벤션을 따르라"고 말하는 것만으로도 결과가 프로젝트에 자연스럽게 녹아든다.

한 번에 너무 많이 요구하지 않기

요청 하나에 기능 다섯 개를 욱여넣으면, 어디서 틀어졌는지 추적하기 어렵다. 큰 그림은 다음 강의(계획)에서 다루고, 개별 요청은 검토 가능한 크기로 유지한다.

# 피한다: 한 번에 전부
> 회원가입, 로그인, 비밀번호 찾기, 프로필 수정, 회원 탈퇴를 다 만들어줘

# 선호: 한 조각씩
> 먼저 회원가입 폼만 만들자. UI와 검증까지.

좋은 요청 체크리스트

  • 만들 결과와 쓰임을 한 문장으로 적었는가?
  • 사용/금지할 기술과 스타일을 명시했는가?
  • 입력·출력 또는 화면의 구체적 예시가 있는가?
  • 따라야 할 기존 파일/패턴을 가리켰는가?
  • 검토할 수 있는 크기인가?

요약

에이전트는 받은 글자만큼만 안다. 목표·제약·예시를 갖추고, 판단이 들어간 모호한 단어를 구체적으로 풀고, 따라야 할 기존 코드를 가리키며, 한 번에 적당한 크기로 요청하면 결과가 의도에 훨씬 가까워진다. 좋은 요청은 결국 다시 고치는 시간을 줄여 준다.

댓글 0

Claude Code로 바이브 코딩하기강좌에 대한 댓글입니다.

댓글을 작성하려면 로그인이 필요합니다.