AI와 일하는 법
“같은 질문, 다른 결과”
02이 차시를 마치면
- 1.프롬프트를 맥락·의도·제약 세 요소로 나눠 구성할 수 있다.
- 2.같은 요청을 부실하게/충실하게 했을 때 결과가 어떻게 달라지는지 직접 비교해 설명할 수 있다.
- 3.결과를 보고 원하는 부분만 짚어 반복적으로 개선 요청을 할 수 있다.
- 4.프로젝트 규칙 파일(CLAUDE.md)을 작성해 매번 같은 설명을 반복하지 않게 만들 수 있다.
- 5.대화가 헤매고 있을 때 계속 이어갈지 끊고 새로 시작할지 판단할 수 있다.
03왜 필요한가
02차시에서 만든 자기소개 페이지에 연락처 섹션을 하나 추가하려 한다고 해보자. "연락처 섹션 추가해줘"라고만 요청했더니, AI는 이름·이메일·전화번호가 세로로 나열된 밋밋한 목록을 만들어줬다. 원했던 건 이메일과 깃허브 링크가 아이콘과 함께 나란히 보이는 모습이었는데, 다시 "아니 그게 아니라"로 시작해 몇 번을 고쳐도 점점 더 이상한 모양이 되어간다. 결국 처음부터 다시 설명하기로 하고 대화를 새로 시작한다.
- 짧은 요청은 AI가 빈칸을 임의로 채우기 때문에, 머릿속 그림과 전혀 다른 결과가 나온다.
- 새 대화를 시작할 때마다 프로젝트 배경과 규칙을 처음부터 다시 설명해야 한다.
- 원하는 결과가 안 나왔을 때 "다시 해줘"만 반복하면 오히려 대화가 더 꼬인다.
- 어디서부터 잘못됐는지 모른 채 대화가 길어지면 AI도 사람도 맥락을 잃는다.
04개념 설명
프롬프트의 세 요소 — 맥락·의도·제약
신입 직원에게 처음 업무를 맡긴다고 생각해보자. "보고서 하나 써줘"라고만 말하면 신입은 무엇을, 왜, 어떤 형식으로 써야 할지 알 수 없어 자기 나름대로 짐작해서 채운다. 반면 "지난주 매출 데이터를 보고, 담당자별 증감을 표로 정리해서, 금요일 회의 전까지 A4 한 장으로 달라"고 말하면 결과물이 훨씬 정확해진다. AI에게 요청하는 것도 똑같다.
부실한 프롬프트는 대개 이 세 가지 중 여러 개가 비어 있다. 맥락은 지금 무엇이 있고 어떤 상황인지, 의도는 정확히 어떤 결과를 원하는지, 제약은 지켜야 할 조건과 하지 말아야 할 것이다. 셋을 다 채운다고 결과가 항상 완벽해지는 건 아니지만, 채운 만큼 AI가 짐작해야 하는 부분이 줄어든다.
| 요소 | 의미 |
|---|---|
| 맥락 (Context) | 지금 무엇이 있고 어떤 상황인지 |
| 의도 (Intent) | 정확히 원하는 결과의 모습 |
| 제약 (Constraint) | 지켜야 할 조건과 하지 말아야 할 것 |
- 맥락(Context) — 지금 무엇이 있고 어떤 상황인지
- 의도(Intent) — 정확히 원하는 결과의 모습
- 제약(Constraint) — 지켜야 할 조건과 하지 말아야 할 것
반복 개선 — 한 번에 완성되지 않는다
디자이너에게 로고 시안을 맡겼을 때 첫 시안이 곧바로 완성본이 되는 경우는 드물다. 시안을 보고 "이 부분은 좋은데 색은 더 차분하게"처럼 구체적으로 짚어 피드백을 주고받으며 완성도를 높인다. AI와 일하는 것도 이 과정과 다르지 않다.
다만 피드백을 줄 때는 전체를 다시 만들어달라고 하기보다, 무엇을 바꾸고 무엇은 그대로 둘지를 나눠 말하는 편이 훨씬 효율적이다. 그래야 잘 되어 있던 부분까지 덩달아 바뀌는 사고를 줄일 수 있다.
프로젝트 규칙 파일 — 매번 설명하지 않아도 되게
새로 입사한 직원에게 온보딩 문서를 건네는 이유는, 같은 설명을 매번 반복하지 않기 위해서다. Claude Code 같은 도구는 프로젝트 폴더에 CLAUDE.md라는 규칙 파일을 두면, 대화를 새로 시작할 때마다 이 파일을 참고해 프로젝트의 배경과 규칙을 스스로 파악한다.
이 파일에는 프로젝트가 무엇을 위한 것인지, 어떤 기술을 쓰고 있는지, 지켜야 할 규칙과 하지 말아야 할 것을 적어둔다. 한 번 잘 써두면 이후의 모든 대화가 이 문서를 전제로 시작되므로, 매번 배경 설명에 쓰던 시간이 줄어든다.
| CLAUDE.md에 적는 것 | 예 |
|---|---|
| 프로젝트 목적 | 무엇을 위해 만들고 있는지 |
| 기술 스택 · 파일 구조 | 지금 무엇으로 만들어져 있는지 |
| 지켜야 할 규칙 | 코딩 스타일, 하지 말아야 할 것 |
- 프로젝트 목적 — 무엇을 위해 만들고 있는지
- 기술 스택과 파일 구조 — 지금 무엇으로 만들어져 있는지
- 지켜야 할 규칙 — 코딩 스타일, 하지 말아야 할 것
끊고 다시 갈 때를 판단하기
같은 문제를 두고 수정 요청을 두세 번 넘게 반복했는데도 나아지지 않는다면, 그 대화 안에 이미 잘못된 시도들이 쌓여 있다는 뜻이다. AI는 이전 대화 내용을 계속 참고하기 때문에, 꼬인 대화 안에서 계속 고치려 하면 잘못된 방향까지 함께 참고해 점점 더 벗어난 결과를 내기 쉽다.
이럴 때는 지금까지 시도한 것과 현재 상태, 원래 원했던 것을 한 번 요약받은 뒤, 그 요약을 들고 새 대화를 시작하는 편이 더 빠르다. 규칙 파일을 만들어뒀다면 새 대화에서도 프로젝트 배경을 다시 설명할 필요가 없어 이 전환이 훨씬 가볍다.
05실습 가이드
1. 비교 실험 준비하기
- 02차시에서 만든 자기소개 페이지 프로젝트를 VS Code로 연다.
- 이번 실습에서 추가할 기능을 하나 정한다(예: 연락처 섹션, 프로젝트 소개 카드, 방문자 수 표시 등 원하는 것 아무거나).
- 정한 기능을 나중에 비교할 수 있도록 메모해둔다.
예상 결과 — 프로젝트가 열려 있고, 오늘 추가해볼 기능 하나가 정해져 있다.
안 될 때 — 마땅히 떠오르는 기능이 없다면 "연락처 섹션 추가하기"로 정하고 진행해도 된다.
2. 일부러 부실하게 요청해보기
- 새 대화를 시작해 P3-1 프롬프트로 정한 기능을 아주 짧게만 요청한다.
- AI가 만들어준 결과를 그대로 받아들이고 화면을 캡처해둔다.
- 결과가 머릿속으로 그렸던 모습과 얼마나 다른지 한 문장으로 적어둔다.
예상 결과 — 짧은 요청만으로 만들어진 결과물 캡처와, 기대와 다른 점을 적은 메모가 남는다.
안 될 때 — 결과가 우연히 마음에 들 수도 있다. 그렇다면 더 애매한 표현(예: "뭔가 추가해줘")으로 한 번 더 시도해 차이를 만들어본다.
3. 맥락·의도·제약을 채워 다시 요청하기
- 새 대화를 하나 더 시작한다 (앞선 대화의 결과를 참고하지 않도록 새로 시작하는 것이 중요하다).
- P3-2 프롬프트의 대괄호를 자신의 상황에 맞게 채워 요청한다.
- AI가 구현 방향을 먼저 한 문단으로 설명하는지 확인하고, 방향이 맞으면 진행해달라고 답한다.
예상 결과 — 구현 방향 설명 후 만들어진 결과물이, 2단계의 결과보다 원하는 모습에 더 가깝다.
안 될 때 — 방향 설명 없이 바로 결과물부터 나온다면, "만들기 전에 어떻게 구현할지부터 설명해줘"라고 한 번 더 요청한다.
4. 두 결과를 나란히 비교하기
- 2단계와 3단계의 결과 캡처를 나란히 놓고, 무엇이 어떻게 달라졌는지 표나 목록으로 정리한다.
- 어떤 요소(맥락/의도/제약 중 무엇)가 결과 차이에 가장 크게 영향을 준 것 같은지 자신의 말로 한 문단 적는다.
예상 결과 — 부실한 프롬프트와 충실한 프롬프트, 두 결과를 비교한 실험 노트 초안이 만들어진다.
안 될 때 — 차이가 잘 안 느껴지면, 제약 조건(색상 유지, 모바일 대응 등)을 하나 더 추가해 3단계를 다시 시도해 차이를 키운다.
5. 결과를 부분적으로 다듬기
- 3단계 결과물에서 아쉬운 부분 하나를 정한다.
- P3-3 프롬프트로 그 부분만 콕 짚어 수정을 요청한다.
- 전체가 다시 만들어진 것은 아닌지, 유지해달라고 한 부분이 그대로 남아 있는지 확인한다.
예상 결과 — 지정한 부분만 수정되고, 나머지는 그대로 유지된 결과를 받는다.
안 될 때 — 관계없는 부분까지 바뀌었다면, "방금 답변에서 [바뀐 부분]은 왜 바뀐 거야? 되돌려줘"라고 되물어 원인을 확인한다.
6. 프로젝트 규칙 파일 초안 만들기
- P3-4 프롬프트로 이 프로젝트를 위한 CLAUDE.md 초안을 요청한다.
- 받은 내용을 프로젝트 최상위 폴더에 CLAUDE.md 파일로 저장한다.
- 내용을 한 번 읽어보고, 실제 프로젝트 상황과 다른 부분이 있으면 직접 고친다.
예상 결과 — 프로젝트 폴더에 CLAUDE.md 파일이 생기고, 목적·기술 스택·규칙이 적혀 있다.
안 될 때 — 파일 저장 위치를 모르겠다면 AI에게 "이 내용을 CLAUDE.md라는 이름으로 프로젝트 최상위 폴더에 저장해줘"라고 그대로 요청한다.
7. 규칙 파일이 실제로 반영되는지 확인하기
- 새 대화를 시작해 P3-6 프롬프트로 간단한 새 요청을 하나 한다.
- AI가 작업 전에 CLAUDE.md의 규칙을 언급하는지 확인한다.
- 규칙과 다르게 작업했다면 어느 부분이 안 지켜졌는지 짚어 다시 요청한다.
예상 결과 — AI가 CLAUDE.md의 규칙을 참고했다고 말하고, 그 규칙에 맞게 작업한 결과를 받는다.
안 될 때 — 규칙을 전혀 언급하지 않는다면 CLAUDE.md가 프로젝트 최상위 폴더가 아닌 다른 위치에 저장됐을 가능성이 크다. 파일 위치를 확인한다.
8. 대화가 꼬였을 때 끊고 다시 가보기
- 5~6단계 중 하나의 대화를 이어서, 일부러 애매한 수정 요청("음... 그냥 더 낫게 해줘")을 두세 번 반복해본다.
- 결과가 점점 이상해지는 것이 느껴지면, P3-5 프롬프트로 지금까지의 시도와 현재 상태를 요약받는다.
- 요약 내용을 들고 새 대화를 시작해, 원래 원했던 모습으로 다시 요청해본다.
예상 결과 — 꼬인 대화의 상태 요약을 받고, 새 대화에서 더 나은 방향으로 다시 시작된 결과를 확인한다.
안 될 때 — 일부러 꼬이게 하는 것이 잘 안 되면, 서로 모순되는 요청("더 화려하게" 다음에 "더 단순하게")을 번갈아 시도해본다.
06실전 프롬프트
07이것만은 주의
무슨 일이 생기나 — "괜찮아 보이는데?" 정도로 대충 승인하고 넘어갔다가, 나중에 원하는 것과 다르다는 걸 뒤늦게 알게 되면 그 시점부터 다시 설명해야 한다.
대처 — 결과를 받을 때마다 구체적으로 무엇이 맞고 무엇이 다른지 짚어 말한다. 애매하면 "이 부분이 왜 이렇게 됐는지 설명해줘"라고 먼저 물어본다.
무슨 일이 생기나 — CLAUDE.md를 만들어두고 실제로 지켜지는지 확인하지 않으면, 규칙이 조용히 무시된 채 작업이 계속 쌓인다.
대처 — 새 대화를 시작할 때 규칙 파일을 참고했는지 먼저 물어보는 습관을 들인다(P3-6). 참고하지 않았다면 파일 위치와 이름을 다시 확인한다.
무슨 일이 생기나 — 이미 꼬인 대화에서 계속 "아니 그게 아니라"를 반복하면, AI가 이전의 잘못된 시도들까지 계속 참고해 점점 더 벗어난 결과를 낸다.
대처 — 같은 문제로 두세 번 이상 수정을 요청했는데 나아지지 않으면, P3-5로 상태를 요약받고 새 대화로 넘어간다.
무슨 일이 생기나 — "더 좋게 만들어줘" 같은 열린 요청은 AI가 구조나 스타일까지 필요 이상으로 바꿔버려, 잘 되어 있던 부분까지 달라지는 결과로 이어질 수 있다.
대처 — "이 부분은 건드리지 마" 같은 제약을 항상 함께 적는다. 변경 범위가 예상보다 크면 이전 버전과 비교해본다.
무슨 일이 생기나 — CLAUDE.md에 실제 API 키나 회사 내부 정보를 예시랍시고 적어두면, 이 파일이 저장소에 올라갈 때 그대로 노출된다.
대처 — 규칙 파일에는 구조와 방침만 적고, 실제 값(키, 비밀번호, 개인정보)은 절대 적지 않는다.
08자가 점검
09과제
자신의 실제 프로젝트(또는 02차시에서 만든 페이지)에 새 기능을 하나 추가할 때, 먼저 부실한 프롬프트로 한 번, 충실한 프롬프트로 한 번 각각 요청해 결과를 비교한다. 이어서 이 프로젝트의 CLAUDE.md 초안을 작성하고, 새 대화에서 규칙이 실제로 반영되는지까지 확인한다.
제출 형식 — ① 부실한 프롬프트/결과와 충실한 프롬프트/결과를 나란히 비교한 실험 노트(캡처 포함) ② 작성한 CLAUDE.md 파일 ③ 규칙이 반영됐는지 확인한 화면 캡처를 하나의 문서로 정리해 제출한다.
10더 알아보기
- Claude Code 프로젝트 규칙 파일 안내 — CLAUDE.md 작성 방식과 계층 구조 참고용
- 효과적인 프롬프트 작성 가이드 — 맥락·의도·제약을 구체화하는 예시 참고용
- 맥락(Context)
- — 요청 당시 존재하는 배경 정보. 지금 무엇이 있고 어떤 상황인지를 말한다.
- 제약(Constraint)
- — 결과가 지켜야 할 조건이나 하지 말아야 할 것. 명시하지 않으면 AI가 임의로 판단한다.
- 규칙 파일(CLAUDE.md)
- — 프로젝트의 목적·구조·규칙을 적어두어, 대화를 새로 시작해도 AI가 참고하게 만드는 파일.
다음 차시 예고 — 다음 차시에서는 지금까지 익힌 프롬프트 작성법을 구글 시트 업무 자동화에 적용해, 매주 반복되는 리포트 작업을 실제로 자동화합니다.