목표·감성·완료 기준만 주고 수단은 전부 위임한다.
도키피디아 v1.2
프롬프트 대백과
코덱스 · 클로드코드 · 안티그래비티 — 모델별 하네스 구축 능력과 결과물 유형별 실전 프롬프트 레퍼런스
설계 원칙과 제약 조건을 주면 그 철학대로 아키텍처를 세운다.
설계도(청사진)를 건네고 검수 루프를 함께 돈다.
하네스, 그리고 자체 하네스 구축 능력
2026년 바이브코딩의 성패는 프롬프트 문장력보다 모델의 자체 하네스 구축 능력에 프롬프트 스타일을 맞추는 것에서 갈린다. 같은 문장이 어떤 도구에서는 최선이고, 다른 도구에서는 스파게티 코드의 원인이 된다.
코덱스(GPT-5.6)와 클로드코드(Claude 5 계열)는 자율 위임 쪽 끝에, 안티그래비티(Gemini 3.x)는 명시적 청사진이 필요한 쪽에 위치한다. 단, Gemini 3.6 Flash 이후 격차가 빠르게 좁아지는 중이라(3.7 Flash는 3.6 발표 3주 만인 8/13 출시) 이 스펙트럼은 고정이 아니라 2026년 8월 현재의 스냅샷이다.
도구가 달라도 변하지 않는 3원칙
- 완료 기준(Definition of Done)은 어디서나 명시한다. "자율형 모델엔 가볍게"의 예외 없는 단 하나의 필수 요소. 모델은 어떻게 갈지는 몰라도 되지만, 언제 끝나는지는 반드시 알아야 한다.
- '제약'과 '절차'를 구분한다. 제약(필수 스택·버전·금지사항·디자인 톤)은 자율형 모델에게도 명시해도 된다. 성능을 깎는 것은 중간 절차의 처방("먼저 파일을 읽고, 다음에 테스트를 쓰고…")이다.
- 검증 수단을 심는다. 테스트 명령, 브라우저 확인 시나리오, 스크린샷 검증 중 최소 하나를 프롬프트나 하네스(규칙 파일)에 넣는다. 자율형은 스스로 돌리고, 안티그래비티는 시켜야 돈다.
3사 도구 비교표
| 도구 | 탑재 모델 (2026.08) | 자체 하네스 | 프롬프트 스타일 | 핵심 레버 | 규칙 파일 |
|---|---|---|---|---|---|
| 코덱스 OpenAI | GPT-5.6 Sol · Terra · Luna 7/9 출시, 표기는 Terra | 최상 — 완전 자율 | Outcome-first 도착점 + "~하면 완료" | effort 6단계(none~max) pro / ultra 모드 | AGENTS.md (다이어트 필수) |
| 클로드코드 Anthropic | Fable 5 · Opus 5 · Sonnet 5 Opus 5는 7/24 출시 | 최상 — 원칙 지향 | 완결 명세 1회 투입 후 위임 원칙·제약 + 완료 기준 | effort 조절 + 빼기 목록 재검증 지시 삭제 · 서브에이전트 억제 | CLAUDE.md |
| 안티그래비티 | Gemini 3.1 Pro · 3.7 Flash 3.7 Flash가 기본 에이전트 모델 (8/13 출시) | 발전 중 — 명시적 컨텍스트에 민감 | 청사진 + 번호 절차 + 검증 내장 마이크로매니징 | 계획 아티팩트 · 인라인 코멘트 브라우저 검증 · @경로 | GEMINI.md + docs/*.md |
모델·요금·기능은 업데이트가 잦다. 세부 수치는 사용 전 각 사 공식 문서(출처 탭)에서 재확인을 권한다.
도구별 프롬프트 가이드
모델 라인업
| 모델 | 포지션 | 언제 쓰나 |
|---|---|---|
| Fable 5 | 프런티어 플래그십. effort 기본값 high, 최고난도는 xhigh 권장 | 가용한 최고 성능이 꼭 필요한 워크로드 |
| Opus 5 | 복잡 에이전트 코딩·장기 작업의 기본 선택. 100만 토큰 컨텍스트 전역에서 일관성 유지 | 멀티파일 기능 개발, 대형 리팩토링, 대규모 코드베이스 분석 |
| Sonnet 5 | 가장 에이전틱한 Sonnet. 시키지 않아도 자기 출력을 점검 | 일상 작업·반복 수정·프로토타이핑 (빠르고 저렴) |
프롬프트 스타일 — 완결 명세 후 위임
Opus 5 공식 프롬프팅 가이드의 요지는 "전체 과업 명세를 처음에 주고, 맡겨두라"는 것이다. 특이한 점은 추가할 지시보다 삭제할 지시가 많다는 것.
- ① 전체 과업을 한 번에. 단계별로 떠먹이면 오히려 성능이 떨어진다. 목표·원칙·제약을 한 프롬프트에 완결형으로 담는다.
- ② 완료 기준과 정지점 명시. 스스로 범위를 넓히는 경향이 있어 "여기까지" 경계가 필요하다.
- ③ 응답 길이·산출물 크기 지정. 기본이 장문이다. effort를 낮춰도 짧아지지 않으니 "요약은 10줄 이내"처럼 직접 요청한다.
- ④ "다시 확인해" 류 재검증 지시 삭제. 이미 자체 검증을 수행하므로 중복 지시는 비용만 늘린다. 구세대 프롬프트에서 옮겨온 double-check 문구를 지우는 게 마이그레이션의 절반이다.
- ⑤ 서브에이전트 사용 기준 명시. 필요 이상으로 서브에이전트를 띄우는 경향이 있다. "병렬·독립 작업에만 사용, 단순 작업은 직접"이라고 억제한다.
우리 반 모둠활동 타이머 웹앱을 만들어줘. 원칙: 프로젝터 화면에서 교실 뒤에서도 보이는 큰 타이포, 조작은 3클릭 이내. 제약: 외부 의존성 최소화(순수 HTML/JS 선호), 오프라인 동작. 완료 기준: 시간 설정 → 시작 → 종료 알림음까지 브라우저에서 직접 확인 완료. 응답은 간결하게, 최종 요약은 8줄 이내.
왜 이렇게? 원칙·제약·완료 기준만 있고 절차와 재검증 지시가 없다 — 검증은 모델이 알아서 한다.
모델 라인업과 배분
| 모델 | 포지션 | 언제 쓰나 |
|---|---|---|
| Sol | 플래그십. 코딩 에이전트 벤치마크 최상위권. 8/6 업데이트로 더 짧고 직설적인 답변으로 튜닝됐고, 응답에 쓸 노력을 고르는 슬라이더가 붙었다. 8/21부터 API 가격이 내려 $4 / $20 per 1M(프로모, 최소 11/21까지 · 표준가 $5 / $30) | 난제, 장시간 자율 세션, 고난도 리팩토링 |
| Terra | 균형형 — Sol의 절반 가격. 일상 기본값으로 추천 | 대부분의 기능 개발·수정 작업 |
| Luna | 초고속 경량 — 최저 비용 | 대량·단순·반복 작업, 빠른 프로토타입 |
주의: 중간 티어의 표기는 Tera가 아니라 Terra(지구)다. Sol(태양)·Terra(지구)·Luna(달)의 천체 명명 체계.
프롬프트 스타일 — Outcome-first
GPT-5.6 공식 가이드의 핵심 메시지는 "과잉 프롬프팅을 멈춰라". 시스템 프롬프트를 가볍게 하자 내부 평가 점수가 10~15% 오르고 토큰이 41~66% 줄었다는 자체 수치를 공개했다.
- ① 도착점을 서술한다. 무엇이 완성된 상태인지, 어떤 경험이어야 하는지. 감성(Vibe) 한 줄이 여기서 힘을 발휘한다.
- ② "~하면 완료" 기준을 단다. 모델은 경로는 몰라도 되지만 종착점은 알아야 한다.
- ③ 중간 절차를 처방하지 않는다. "먼저 A 하고 다음 B 해" 식 지시가 구세대의 유물. AGENTS.md에 남아 있는 장황한 절차 지시는 성능을 깎으므로 다이어트한다.
- 제약은 예외. 배포 환경상 특정 스택·버전이 필수라면 제약으로 명시한다 — 절차 처방과는 다르다.
우리 반 모둠활동 타이머 웹앱을 만들어줘. 교실 프로젝터에 띄웠을 때 뒤에서도 잘 보이고, 수업 흐름을 끊지 않는 담백한 도구 느낌이 핵심이야. 완료 기준: 시간 설정 → 시작 → 종료 알림까지 브라우저에서 바로 동작. 스택과 구조는 네가 최적이라 판단하는 대로.
왜 이렇게? 도착점 + 감성 + 완료 기준. 폴더 구조·라이브러리는 일부러 언급하지 않는다.
모델 라인업과 배분
| 모델 | 포지션 | 언제 쓰나 |
|---|---|---|
| Gemini 3.1 Pro | 대규모 컨텍스트·심층 추론 담당 (3.5 Pro는 미출시로 현역 Pro) | 계획 수립, 아키텍처 설계, 긴 문서·코드베이스 분석 |
| Gemini 3.7 Flash 2026-08-13 | 안티그래비티 에이전트 기본 모델. 3.6 대비 코딩·웹개발 전반이 올라갔다 — DeepSWE v1.1 49.0%→65.3%, FrontierCode 1.1 34.4%→43.6%, Terminal-bench 2.1 85.8%. 1M 컨텍스트 / 출력 64k, 지식 컷오프 2026-03 | 실행·구현·반복 수정 (일상 작업의 손발) |
| Gemini 3.6 Flash | 직전 기본 모델. 3.7로 교체됐으나 3.6 기준으로 쓰던 프롬프트·설정이 남아 있다면 아래 「3.7 Flash 지시 문법」을 먼저 본다 | 이전 설정 호환 확인용 |
3.7 Flash 지시 문법 — 공식 문서 기준
3.7 Flash는 프롬프트가 아니라 파라미터로 사고 깊이를 조절한다. 여기부터가 3.6과 실제로 달라진 지점이다.
thinking_level | 무엇을 얻나 | 언제 쓰나 |
|---|---|---|
| low | 응답까지의 시간을 줄인다 | 실시간 채팅, 초안 쓰기, 빠른 데이터 정리 |
| medium (3.7 Flash 기본값) | 대부분의 작업에서 가장 나은 품질 | 복잡한 코드, 에이전트 작업 — 첫 시도 정확도가 높다 |
| high | 사고와 도구 사용을 최대로 끌어올린다 | 어려운 추론·수학, 가장 까다로운 코딩·에이전트 작업 |
temperature · top_p · top_k · candidate_count · thinking_budget. 특히 thinking_budget(숫자로 사고량을 정하던 방식)은 위 thinking_level 3단계로 대체됐다. 여러 턴을 이어갈 때는 이전 답변을 다시 붙여 넣는 대신 서버가 들고 있는 previous_interaction_id를 쓴다.프롬프트 자체가 달라져야 하는 부분
- 짧고 직접적으로. 공식 가이드의 표현 그대로 "입력 프롬프트를 간결하게 하라". Gemini 3 계열은 구형 모델용으로 쌓아 올린 장황한 프롬프트 엔지니어링을 과잉 분석하는 경향이 있다. 역할극·다중 강조·반복 지시는 덜어내는 쪽이 낫다.
- 자료가 길면 지시는 맨 뒤에. 긴 문서·코드를 붙일 때는 자료를 먼저 넣고 질문·지시를 마지막에 둔다. 그리고 "위 내용을 근거로…"처럼 자료에 답을 묶는 문장으로 시작한다.
- 말수가 줄었다. 기본 응답이 짧고 직설적이다. 설명을 곁들인 대화체가 필요하면 프롬프트에서 명시적으로 요구해야 한다 — 예전처럼 알아서 풀어 써 주지 않는다.
- temperature는 1.0 그대로 둔다. Gemini 3 개발자 가이드는 기본값 유지를 강하게 권한다. 낮추면 같은 말을 맴돌거나(looping) 품질이 떨어질 수 있다.
근거 — What's new in Gemini 3.7 Flash · Gemini 3 개발자 가이드 · 모델 카드
프롬프트 스타일 — 청사진 + 검증 내장
추상적인 목표만 던지면 구조가 무너지기 쉽다. 대신 사용자가 수석 아키텍트가 되어 청사진(구조·순서·검증점)을 쥐고, 안티그래비티에 내장된 하네스 기능을 프롬프트로 호출하는 방식이 공식 모범사례다.
- 계획 아티팩트 먼저. "구현 계획을 아티팩트로 작성하고 내 검토 전 코드 작성 금지" — 코드가 아니라 계획을 먼저 받는다.
- 수정은 인라인 코멘트. 마음에 안 드는 부분에 직접 코멘트를 달면 그 부분만 고치고 나머지는 보존한다. 전체 재프롬프트보다 빠르고 안전.
- @경로 지정. 프롬프트 안에서 @로 파일 경로를 정확히 찍어 탐색 범위를 좁힌다.
- 브라우저 검증 한 줄. "빌드 후 브라우저에서 테스트해" — 에이전트가 직접 페이지를 열고 클릭하고 스크린샷으로 검증한다.
- 시각 문제는 스크린샷 첨부. UI 버그는 말로 설명하지 말고 캡처를 붙여넣는다.
안티그래비티 마이크로매니징 플레이북
원칙은 하나다 — 모델의 자율 설계에 맡기지 말고, 하네스를 먼저 세운 뒤 그 안에서 일을 시킨다. 하네스는 md 파일로 세우고, 세션은 5단계 루프로 운영한다.
폴더 + md 파일 기반 하네스 구축
안티그래비티는 프로젝트 루트의 GEMINI.md(또는 AGENTS.md)를 자동 참조한다. 여기에 docs/ 폴더의 문서 3종을 더해 "에이전트의 헌법 + 설계도 + 작업대장 + 결정 기록" 4층 구조를 만든다.
my-project/ ├── GEMINI.md ← ① 헌법: 스택·버전, 규칙, 금지사항, 검증 명령, 완료 정의 ├── docs/ │ ├── ARCHITECTURE.md ← ② 설계도: 폴더 구조, 모듈 경계, 데이터 흐름(단방향 등) │ ├── TASKS.md ← ③ 작업대장: 체크박스 백로그 — 한 턴에 한 항목씩 │ └── DECISIONS.md ← ④ 결정 기록: 무엇을 왜 택했는지 2줄씩 (다음 세션의 기억) ├── src/ │ ├── engine/ (핵심 로직 — UI와 분리) │ ├── components/ (UI) │ ├── store/ (상태 관리 — 한 곳에서만) │ └── data/ (콘텐츠 JSON — 코드와 분리) └── tests/ (검증 스크립트)
GEMINI.md에 반드시 넣을 6가지 — 이 파일의 밀도가 곧 결과물의 품질이다.
- 기술 스택 + 정확한 버전 — "Vite 7 + React 19 + Zustand 5, 변경 금지"처럼 버전까지 못 박는다. (예시의 버전은 작성 시점 기준 — 프로젝트에 맞게 교체)
- 파일 배치 규칙 — 로직은 /src/engine, UI는 /src/components, 콘텐츠는 /src/data/*.json 식으로 새 파일이 갈 곳을 정해둔다.
- 금지사항 — "승인 없는 신규 의존성 설치 금지", "한 파일 300줄 초과 금지", "/src/data 스키마 임의 변경 금지"
- 검증 명령 — npm run test, npm run build처럼 에이전트가 스스로 돌릴 수 있는 명령. 테스트가 없다면 "테스트 블록부터 작성"을 규칙으로.
- 완료 정의(DoD) — "테스트 통과 + 빌드 성공 + 브라우저 시나리오 확인 + 콘솔 에러 0건"
- 수정 프로토콜 — "구조 변경·의존성 추가는 실행하지 말고 제안 후 대기"
세션 운영 — 5단계 마이크로매니징 루프
- 하네스 셋업 (첫 세션)폴더와 md 파일만 만들게 하고 멈춘다. 기능 코드는 한 줄도 금지.
- 계획 아티팩트작업 1건의 구현 계획을 아티팩트로 받고, 인라인 코멘트로 수정 후 승인.
- 작업 단위 실행한 턴에 TASKS.md 한 항목. @경로로 대상 지정, "그 외 파일 수정 금지"로 범위 봉쇄.
- 검증 루프테스트 실행 → 실패 시 수정 반복 → 브라우저 시나리오 수행 + 스크린샷 검증.
- 기록 갱신TASKS.md 체크, DECISIONS.md에 결정 2줄 추가. 그리고 2단계로 복귀.
단계별 복붙 프롬프트 — 그대로 붙여넣고 대괄호만 바꾼다.
새 프로젝트의 하네스만 먼저 구축한다. 이번 턴에서는 기능 코드를 한 줄도 작성하지 마. 1. 다음 구조로 폴더를 생성해: /src/engine, /src/components, /src/store, /src/data, /tests, /docs 2. 프로젝트 루트에 GEMINI.md를 작성해. 반드시 포함: - 기술 스택과 버전: [Vite 7 + React 19 + Zustand 5] (변경 금지) - 파일 배치 규칙: 로직은 /src/engine, UI는 /src/components, 콘텐츠 데이터는 /src/data/*.json - 금지사항: 승인 없는 신규 의존성 설치 금지, 한 파일 300줄 초과 금지, /src/data 스키마 임의 변경 금지 - 검증 명령: npm run test, npm run build - 완료 정의: 테스트 통과 + 빌드 성공 + 브라우저 시나리오 확인 + 콘솔 에러 0건 - 수정 프로토콜: 구조 변경·의존성 추가는 제안만 하고 대기 3. /docs/ARCHITECTURE.md에 모듈 경계와 데이터 흐름(엔진 → 스토어 → 컴포넌트 단방향)을 텍스트 다이어그램으로 작성해. 4. /docs/TASKS.md에 [프로젝트 목표]를 작업 단위로 쪼갠 체크박스 백로그를 작성해. 여기까지 하고 멈춰. 내가 md 파일들을 검토한다.
왜 이렇게? 뼈대와 규칙을 코드보다 먼저 확정한다. 이후 모든 턴이 이 파일들을 참조하므로 여기서 들인 공이 전체 품질을 결정한다.
@docs/TASKS.md 의 [1번] 항목을 구현하기 전에, 구현 계획을 아티팩트로 먼저 작성해. 계획에 포함: 수정·생성할 파일 목록, 각 파일의 변경 요지, 검증 방법. 내가 계획을 승인하기 전에는 코드를 작성하지 마.
왜 이렇게? 잘못된 방향은 코드 100줄보다 계획 10줄에서 잡는 게 싸다. 수정은 계획 아티팩트에 인라인 코멘트로.
승인한 계획대로 @src/engine/[TurnManager.ts] 만 구현해. 계획에 없는 파일은 수정 금지. 새 의존성이 필요하면 설치하지 말고 제안만 하고 멈춰.
왜 이렇게? 한 턴 한 작업 + 범위 봉쇄. 스파게티의 대부분은 "하는 김에" 옆 파일을 건드릴 때 생긴다.
구현이 끝났으면: 1. npm run test 실행 → 실패하면 원인 분석 후 수정, 통과할 때까지 반복 2. npm run dev로 띄운 뒤 브라우저에서 [카드 3장을 드래그해서 내는] 시나리오를 직접 수행하고 스크린샷으로 검증해 3. 콘솔 에러 0건 확인. 실패 항목이 남으면 보고하고 멈춰.
왜 이렇게? "코드가 있다"와 "동작한다"는 다르다. 브라우저 검증까지가 한 사이클이다.
@docs/TASKS.md 에서 방금 완료한 항목을 체크하고, @docs/DECISIONS.md 에 이번 턴의 기술 결정(무엇을·왜)을 2줄 이내로 추가해.
왜 이렇게? 세션이 끊겨도 프로젝트의 기억은 md에 남는다. 다음 세션은 "@docs/TASKS.md 읽고 다음 항목 진행"으로 시작.
프롬프트 문장 수칙 10
- 1. 절차는 번호로. 실행 순서를 모델 판단에 맡기지 않는다.
- 2. 파일은 @경로로 정확히. "그 파일" 같은 대명사 금지.
- 3. 한 프롬프트 = 한 작업 단위. "그 외 파일 수정 금지"를 습관처럼 붙인다.
- 4. 라이브러리는 이름 + 버전까지. "적당한 차트 라이브러리" 금지 → "Recharts 3.x".
- 5. 패턴을 명명한다. 싱글톤, 단방향 데이터 흐름, 커스텀 훅 — 이름을 불러야 그 형태로 짠다.
- 6. 각 단계 끝에 정지점 또는 검증점. "여기까지 하고 멈춰" / "확인 후 보고해".
- 7. 시각 문제는 스크린샷·영상 첨부. 말로 묘사한 UI 버그는 절반만 전달된다.
- 8. 수정은 재프롬프트 대신 인라인 코멘트. 언급하지 않은 부분이 보존된다.
- 9. 구조 변경·의존성 추가는 "제안 후 대기". 되돌리기 힘든 결정은 사람이 승인한다.
- 10. 상태는 md에 남긴다. 세션은 휘발되지만 TASKS.md와 DECISIONS.md는 남는다.
같은 요청, 다른 결과
멋진 물리 퀴즈 앱 만들어줘. 구조는 알아서 잘 잡아줘.
코덱스에서는 통하는 문장이지만, 여기서는 단일 파일 스파게티·임의 스키마·검증 생략으로 이어지기 쉽다.
물리 퀴즈 앱을 만든다. 순서대로: 1. quiz.json 스키마(id, unit, question, choices, answer, explanation)를 아티팩트로 제시하고 내 승인 대기 2. 승인 후 /src/components에 QuizCard·ProgressBar, /src/hooks/useQuizSession.ts 구현. 문항은 /src/data/quiz.json에서만 로드, 임의 생성 금지 3. 브라우저에서 10문항 풀이 시나리오를 직접 수행하고 스크린샷으로 검증. 콘솔 에러 0건. 규칙은 GEMINI.md 참조. 1~3 외 작업 금지.
구조·순서·검증점·금지 범위가 모두 문장 안에 있다.
모델 배분 전략
- 계획·설계·대규모 분석 → Gemini 3.1 Pro. 1단계(하네스 셋업)와 2단계(계획 아티팩트), 긴 코드베이스 리뷰에 투입.
- 실행·반복 수정 → Gemini 3.7 Flash. 3~5단계 루프의 손발. 8/13부터 기본 에이전트 모델이며, 3.6 대비 코딩 벤치마크가 크게 올랐다(DeepSWE v1.1 49.0%→65.3%).
- 예약 작업(Scheduled Tasks)은 Gemini 3.5 Flash 고정 — 야간 자동 점검 등을 걸어둘 때 참고.
결과물 유형별 프롬프트
같은 과제를 3사 스타일로 병렬 비교한다. 카드의 대괄호 [ ]는 자기 프로젝트에 맞게 바꿔 쓰는 자리다.
🎮 게임 — 예: 덱빌딩 로그라이크
핵심 과제: 상태 루프·렌더링 성능이 하네스 구조에 좌우되고, "재밌는가·부드러운가"는 자동 검증이 어렵다. → 콘텐츠·엔진 분리 + 마일스톤 분할 + 시각 검증 루프가 관건.
다크 판타지 톤의 웹 덱빌딩 로그라이크를 만들어줘. 체력이 곧 카드 비용이라 매 선택이 절박하게 느껴지는 게 핵심 감성이고, 타격감 있는 연출이 있어야 해. 완료 기준: 브라우저에서 바로 열어 1개 전투를 처음부터 끝까지 플레이할 수 있고, 흔들림 없는 60fps. 스택과 프로젝트 구조는 네가 최적이라 판단하는 대로 세팅해.
왜 이렇게? 도착점 + 감성 + 완료 기준. 구조는 위임하되 "플레이 가능"이라는 끝은 못 박는다.
웹 기반 덱빌딩 로그라이크 게임을 구축해줘. 아키텍처 원칙: - 게임 엔진(턴·전투 로직)과 콘텐츠(카드 데이터)를 완전히 분리. 카드는 /src/data/cards.json에서 로드하고, 나중에 500장으로 늘려도 코드 수정이 없어야 함 - 상태와 렌더링은 단방향으로 분리, 렌더링은 Canvas - 코어 메커니즘: 체력을 카드 비용으로 사용 완료 기준: 카드 5종으로 1개 전투를 끝까지 플레이 가능, 60fps 유지, 테스트 통과, 브라우저에서 직접 확인 완료. 서브에이전트는 독립적으로 병렬화되는 작업에만 사용해. 응답은 간결하게, 최종 요약은 10줄 이내.
왜 이렇게? 확장성 원칙과 완료 기준만 주고 위임. 재검증 지시는 없다(자체 검증). 서브에이전트 억제 한 줄이 토큰을 아낀다.
덱빌딩 게임의 코어를 구축한다. 이번 턴은 1~3번까지만. 1. [Vite 7 + React 19 + Zustand 5] 프로젝트 생성, /src/engine·/src/store·/src/components·/src/data로 분리 2. /src/engine/TurnManager.ts를 싱글톤으로 구현 — 페이즈: draw → main → enemy → cleanup 3. /src/data/cards.json 스키마와 샘플 카드 5장을 작성한 뒤, 다음 단계 구현 계획을 아티팩트로 만들어 내 검토 대기 승인 후: Card 렌더 컴포넌트 구현 → 브라우저에서 카드 1장을 내는 시나리오를 직접 수행하고 스크린샷으로 검증. 계획 외 파일 수정 금지.
왜 이렇게? 스택·폴더·패턴·페이즈까지 청사진으로 제공하고, 검토점과 브라우저 검증을 문장 안에 심는다.
📚 학습도구 — 예: 개념 퀴즈 웹앱
핵심 과제: 내용 정확성이 생명. → 문항·정답·해설 데이터는 사용자가 직접 제공하고 "제공 데이터만 사용, 임의 생성 금지"를 3사 공통으로 명시한다. 콘텐츠(JSON)와 코드의 분리가 핵심 구조.
학생이 매일 아침 5분씩 푸는 [물리] 퀴즈 PWA를 만들어줘. 문항은 첨부한 quiz.json만 사용해(임의 생성·수정 금지). 정답을 맞힐 때마다 성취감이 확 오는 가볍고 경쾌한 연출이 감성 포인트야. 완료 기준: 10문항 세션 + 즉시 정오답 피드백 + 진행도 저장, 모바일에서 깨짐 없음.
왜 이렇게? 위임형이지만 콘텐츠 무결성 제약만은 명시 — 제약은 절차가 아니므로 성능을 깎지 않는다.
고등학생용 [물리] 개념 퀴즈 웹앱을 만들어줘. 제약 조건(위반 금지): - 문항·정답·해설은 내가 제공하는 /src/data/quiz.json만 사용, 임의 생성·수정 금지 - 오프라인 우선 동작, 새로고침해도 진행도 유실 없음 - 웹 접근성(a11y) 준수, 모바일 우선 레이아웃 완료 기준: 10문항 세션 완주 → 즉시 정오답 피드백 → 오답노트 화면까지, 모바일 뷰포트 브라우저에서 시나리오 확인 완료. 최종 요약은 8줄 이내.
왜 이렇게? 학습도구에서는 원칙보다 위반 금지 제약이 앞선다. 데이터 무결성·오프라인·접근성을 제약 블록으로 못 박는다.
[물리] 퀴즈 앱을 만든다. 순서대로: 1. quiz.json 스키마를 아티팩트로 제시하고 내 승인 대기 — 필드: id, unit, question, choices, answer, explanation 2. 승인 후 /src/components에 QuizCard·ProgressBar·ResultView, /src/hooks/useQuizSession.ts 구현. 문항은 /src/data/quiz.json에서만 로드, 임의 생성 금지 3. 브라우저에서 10문항 풀이 시나리오(정답 7·오답 3)를 직접 수행하고 스크린샷으로 검증. 콘솔 에러 0건. 규칙은 GEMINI.md 참조. 1~3 외 작업 금지.
왜 이렇게? 스키마 승인점을 맨 앞에 둔다 — 데이터 구조가 흔들리면 학습도구는 전부 다시 짓게 된다.
📊 대시보드·시각화 — 예: 매출·재고 대시보드
핵심 과제: 대용량 렌더링 성능과 컴포넌트 재사용성. 데이터 파싱의 엣지케이스(빈 값·형변환)가 품질을 가른다.
매일 아침 매출·재고를 한눈에 보는 SPA 대시보드를 만들어줘. 여백 많고 미니멀한 다크 모드 감성. 완료 기준: 첨부한 샘플 CSV가 업로드 즉시 차트 3종(막대·라인·요약 카드)으로 렌더되고, 모바일에서도 레이아웃이 유지됨. 스택은 알아서.
왜 이렇게? 감성 + 렌더 결과 중심의 완료 기준. 차트 라이브러리 선택까지 위임한다.
CSV를 올리면 매출·재고를 보여주는 대시보드를 셋업해줘. 설계 원칙: - 대용량(10만 행) 렌더 시 메모리 누수 방지에 초점 - 차트 컴포넌트는 데이터·설정 props만 받는 재사용 구조 — 새 차트 추가 시 기존 코드 수정 없어야 함 - 색약 대응 팔레트 완료 기준: 샘플 CSV 로드 → 막대·라인·요약 카드 렌더, 10만 행에서 인터랙션 지연 체감 없음, 브라우저 확인 완료.
왜 이렇게? 성능·재사용성·접근성이라는 아키텍처 원칙을 주고 구현은 위임한다.
Vite + React 대시보드를 세팅한다. 1. papaparse와 Recharts만 설치 — 다른 의존성 추가 금지 2. /src/utils/parseCsv.ts에 파싱·검증 로직(빈 값 처리, 숫자 형변환, 실패 행 리포트) 구현 3. /src/components/charts에 BarChart·LineChart를 분리 구현, 로딩 중 스켈레톤 UI 필수 4. 샘플 CSV로 브라우저 렌더를 직접 확인하고 스크린샷으로 검증. 1~4 외 작업 금지.
왜 이렇게? 의존성을 2개로 잠그고, 취약 지점(파싱 엣지케이스)을 별도 파일·별도 단계로 격리한다.
🗂 업무 유틸 — 예: 대기번호 키오스크
핵심 과제: 입출력이 명확한 대신 엣지케이스(새로고침·중복 클릭·범위 초과)가 실전 품질을 결정한다. → I/O 예시 2~3개 + 엣지케이스 나열이 3사 공통으로 가장 효율적.
행사 접수용 대기번호 키오스크 웹앱. 입력 → 출력 예시: - 접수 화면에서 [접수] 클릭 → "037번" 크게 표시 - 관리자 화면에서 [다음 호출] → 대기 표시 화면에 "037번 → 1번 창구" + 알림음 완료 기준: 위 두 흐름이 실제로 동작하고, 새로고침해도 번호가 이어지며, 연타해도 중복 발급이 없음.
왜 이렇게? I/O 예시가 곧 명세다. 엣지케이스를 완료 기준 안에 녹여 짧게 끝낸다.
행사 접수용 대기번호 키오스크 웹앱을 만들어줘. 스펙: 접수 화면 [접수] 버튼 → 001부터 번호 발급 / 관리자 화면에서 호출 → 대기 표시 화면에 번호 + 알림음. 엣지케이스: 새로고침해도 번호 연속성 유지, 999 초과 시 다음 회차로 리셋, 연속 클릭 시 중복 발급 방지. 완료 기준: 브라우저 창 2개(접수·관리자)로 발급 → 호출 흐름 확인 완료.
왜 이렇게? 이 정도 규모는 Sonnet 5로 충분하다 — 스펙 + 엣지케이스 + 완료 기준의 표준 3단 구성.
대기번호 키오스크 앱을 만든다. 1. /src/pages에 Kiosk.tsx(접수)·Admin.tsx(호출)·Display.tsx(대기 표시) 3화면 생성 2. 번호 상태는 /src/store/queue.ts 한 곳에서만 관리, BroadcastChannel로 창 간 동기화 3. 엣지케이스 처리: 새로고침 복원, 발급 후 1초 잠금으로 중복 클릭 방지, 999 초과 시 회차 리셋 4. 브라우저 창 2개를 띄워 발급 → 호출 시나리오를 직접 수행하고 스크린샷으로 검증. 1~4 외 작업 금지.
왜 이렇게? 화면·상태 저장소·동기화 방식까지 지정한다 — 상태가 여러 곳에 흩어지는 사고를 원천 봉쇄.
한 장 요약
페르소나 공식
- 코덱스 = 시니어 CTO에게 맡기듯. 목표·감성·완료 기준만. 수단을 지시하는 순간 손해.
- 클로드코드 = 수석 아키텍트에게 원칙을 주듯. 설계 원칙·제약 조건·완료 기준. 재검증 지시는 삭제.
- 안티그래비티 = 시공 파트너에게 설계도를 주듯. 구조·순서·검증점을 번호로. 계획 아티팩트로 합 맞추고 시작.
만능 골격 3종
[무엇을 만들지 — 도착점 한 문단] [감성/느낌 한 줄] 완료 기준: [~가 실제로 동작하면 완료]. 스택과 구조는 네가 최적이라 판단하는 대로.
[무엇을 만들지 한 문단] 원칙/제약(위반 금지): - [아키텍처 원칙 1~3개] - [절대 제약 1~2개] 완료 기준: [테스트/브라우저 확인 포함]. 응답은 간결하게, 최종 요약은 [N]줄 이내.
[프로젝트]를 만든다. 순서대로: 1. [구조/스키마/계획] 을 아티팩트로 제시하고 내 승인 대기 2. 승인 후 [@정확한/파일/경로] 에 [무엇] 구현 — [라이브러리 이름+버전], [패턴 이름] 사용 3. [검증 명령 실행 → 통과까지 반복] + 브라우저에서 [시나리오] 수행, 스크린샷 검증 규칙은 GEMINI.md 참조. 1~3 외 작업 금지.
Do / Don't
| 도구 | Do | Don't |
|---|---|---|
| 코덱스 | 도착점 서술 · "~하면 완료" · 필수 스택은 제약으로 명시 | 중간 절차 처방 · 장황한 AGENTS.md · 구세대식 단계 지시 |
| 클로드코드 | 완결 명세 1회 · 정지점/범위 경계 · 응답 길이 지정 · 서브에이전트 기준 명시 | "다시 확인해" 재검증 지시 · 단계별 떠먹이기 · 단순 작업에 Opus 5 (Sonnet 5로 충분) |
| 안티그래비티 | 번호 절차 · @경로 · 계획 아티팩트 승인점 · 브라우저 검증 · md 기록 | 추상적 목표만 던지기 · 대명사로 파일 지칭 · 한 턴에 여러 작업 · 검증 생략 |
상황별 모델 선택
| 상황 | 추천 |
|---|---|
| 가장 어려운 문제, 최고 성능 필요 | Fable 5 (effort high~xhigh) · Sol (high~max, 단발 난제는 pro 모드) |
| 일상 기능 개발·수정 | Sonnet 5 · Terra · Gemini 3.7 Flash |
| 대량·경량·반복 작업 | Luna · Gemini 3.7 Flash |
| 대규모 코드베이스 분석·계획 수립 | Opus 5 (1M 컨텍스트) · Gemini 3.1 Pro |
| 병렬로 쪼개지는 큰 작업 | Sol ultra 모드 · Opus 5 서브에이전트 (기준 명시하고) |
출처 및 기준
본 문서는 2026년 6~8월 각 사가 공개한 공식 문서를 1차 근거로 작성했다. 기준일: 2026-08-23(최초 작성 2026-08-09).
공식 문서
- Anthropic — Prompting Claude Opus 5 · Prompting best practices
- OpenAI — GPT-5.6 Model guidance · Codex Prompting Guide · GPT-5.6 Sol 모델 문서 · GPT-5.6 August Updates (PDF)
- Google — Antigravity Best Practices · Gemini 3.7 Flash in Antigravity · What's new in 3.7 Flash · Gemini 3 개발자 가이드 · 3.7 Flash 모델 카드 · Gemini 3.6 Flash 발표
보조 자료
- GPT-5.6 출시·티어 해설 (Vellum, AWS Bedrock 블로그, 2026.07)
- Claude Sonnet 5 (2026.06.30) · Opus 5 (2026.07.24) 출시 보도 및 리뷰
- Antigravity 2.0 기능 해설 (Google I/O 2026, 커뮤니티 가이드)