챕터 4 ~ 5
- 단계별 프롬프트 전략 : PRD를 기반으로 프로젝트를 여러 단계로 나누어 각 단계마다 AI에게 구체적인 목표를 제시함으로써 체계적이고 예측 가능한 결과를 이끌어내는 프롬프트 설계 방식
- 세션 : 컴퓨터나 프로그램에서 사용자와 시스템이 연결되어 있는 일정 기간을 말하며, 클로드 코드에서는 대화를 시작해 명령을 주고받는 동안 유지되는 상태이다 (클로드 코드는 터미널을 닫으면 이전 대화가 사라지는 것처럼 보이기 때문에, 장기 프로젝트를 진행할 때는 세션과 컨텍스트 관리에 특히 주의해야 한다)
- 컨텍스트 : 클로드 코드가 현재 세션에서 기억하고 있는 모든 대화 내용과 작업 정보이다 (임계값에 가까워지는 경우, 클로드 코드는 자동 압축을 수행하는데, 이때 대화의 일부를 요약하는 과정에서 정보 손실이 발생할 수 있으므로 수시로 Context left until auto-compact: 9%와 같이 터미널에 표시된다면, 직접 압축하는 것이 좋다)
- AI가 그럴듯하지만 사실과 다른 정보를 진짜처럼 만들어내는 현상을 할루시네이션이라고 한다.
- 커스텀 명령어 : 사용자가 직접 정의해서 쓸 수 있는 나만의 단축 지시어로 명령어는 마크다운 파일로 정의하며 범위에 따라 전역 명령어와 프로젝트 명령어로 구분된다
- 플레이스홀더는 나중에 실제 값이 들어갈 자리를 표시하는 기호이다
- 명령어 체이닝은 여러 커스텀 명령어를 순서대로 연결 실행해서 반복적인 개발, 관리 작업을 자동화하는 방법이다
- 통합 커스텀 명령어 : 여러 작업을 하나의 명령어로 묶어 한 번에 처리할 수 있게 해주며, AI가 스스로 관리, 운영하는 지속 가능한 개발 환경을 만들어준다
Claude Code 명령어 단축키 모음
- claude --resume : 이전 대화의 특정 시점을 선택하여 대화 시작하기 (특정 시점의 컨텍스트 복원)
- /resume : 클로드 접속 후 실행하는 커맨드로 위와 동일
- claude --continue : 최신 대화 시점에서 대화 시작하기
- claude -c : 위와 동일
- /status : 현재 세션의 상태 (모델, 토큰 사용량, 남은 컨텍스트 용량 등)를 보여주며, 긴 작업 시 주기적으로 확인하는 것이 좋음
- /model : 현재 사용 중인 AI 모델 확인 및 선택하기
- /context : 컨텍스트 상태와 사용량 확인하기
- /compact : 컨텍스트 관리를 위해 수동으로 압축하기 (현재까지의 대화 내용을 요약)
/compact --level 1: 불필요한 공백이나 중복을 제거하기
/compact --level 2: 변수명을 단축하고 구조를 단순화하기
/compact --level 3: 핵심 로직만 유지하고 주석, 변수명 등을 최대한 압축하기
- /memory : AI가 기억하는 프로젝트 관련 정보를 확인하고 관리하기
- /clear : 현재 세션의 대화와 작업 맥락을 모두 지우고 초기화하기
🚶기본 미션(필수)
PROJECT 5. 할 일 관리 앱 만들고 캡처하기


멀티모달 AI
하나의 AI가 여러 종류의 정보를 함께 이해하고 처리하는 AI를 멀티모달 AI라고 한다. 멀티모달 AI는 텍스트나 코드 뿐만 아니라 이미지, 음성 등 서로 다른 형태의 데이터를 함께 인식할 수 있다. 클로드 코드가 실행될 때 백엔드에서는 Sonnet이나 Opus 같은 클로드의 멀티모달 AI가 동작한다. 클로드 코드는 명령어 기반의 인터페이스이지만, 이미지를 전달하면 내부 모델이 그 이미지를 분석해 텍스트로 설명하거나 구조를 파악한 뒤 코드로 바꿔 줄 수 있다.
클로드 코드에서도 이미지를 드래그해서 커맨드라인에 붙여넣을 수 있다.
@기호로 폴더 구조 확인하기
클로드 코드에 @폴더명을 입력하면 폴더 하위의 파일 리스트를 확인할 수 있다. 명령어를 입력할 때에도 @폴더명 폴더에 있는 파일들을 분석해서 할 일 관리 앱이 데스크톱 환경에 최적화되었는지 확인해줘 와 같이 사용할 수 있다.
클로드 코드 프로젝트 관리하기
/config 명령어로 프로그램이나 시스템 설정을 확인하거나 변경할 수 있다.

/doctor 명령어로 현재 클로드 코드에서 프로젝트가 정상적으로 실행되는지 환경을 점검하고 문제를 진단할 수 있다.
/export 명령어로 현재 작업 중인 프로젝트를 하나의 결과물로 묶어 파일로 내보낼 수 있다. 클로드 코드에서 작업한 여러 소스 코드, 수정 기록 등을 파일로 보관하면 작업 환경을 옮기거나 협업자에게 공유할 때 좋은 참고 자료로 사용할 수 있다. 핵심 대화 내용을 추출해 다른 프로젝트의 CLAUDE.md 파일에 추가할 수도 있다.
🏃추가 미션(선택)PROJECT 7. 상식 퀴즈 게임 앱 만들고 캡처하기


AI를 활용해 개발할 때 주의해야 할 점 리스트 정리하기
- 할루시네이션이 발생할 수 있으므로 정보 검증을 위한 가이드라인을 마련하고, 이를 CLAUDE.md 파일에 영구적으로 저장하여 프로젝트에서 자동적으로 해당 파일을 적용하도록 한다.
- 커스텀 명령어를 생성하고 체이닝을 하거나, 통합 커스텀 명령어를 만들 수 있다. 이때, 각각의 커스텀 명령어 (.md)로 구분하여 유지보수에 용이하게 한다.
할루시네이션이란
할루시네이션이란, 생성형 AI가 사실과 다른 내용을 진짜처럼 만들어내는 현상을 말한다. 따라서 AI 활용 시에는 할루시네이션 현상을 인식하고, 안전하게 검증하는 습관이 필요하다.
/memory 명령어를 활용하여 검증 가이드라인 CLAUDE.md 파일에 추가하기
클로드 코드에서 할루시네이션을 해결하기 위해서는 정보 검증을 위한 검증 가이드라인을 마련하고, 이를 CLAUDE.md 파일에 영구적으로 저장하는 것이 가장 효과적이다.
/memory 명령어를 사용하여 AI가 기억하고 있는 프로젝트 관련 정보를 확인하고 관리할 수 있다. 즉, 클로드가 지금까지 기억하고 있는 내용을 확인하고 필요 시 수정하거나 삭제할 수 있는 기능이다.
앞서 3장에서 '#' 기호를 사용해 CLAUDE.md 파일에 짧은 규칙을 즉시 추가하는 방법을 살펴보았는데, 체계적으로 가이드라인을 편집하려면 /memory 명령어를 활용하는 것이 좋다.
/memory 명령어로 프로젝트 메모리를 선택하여 CLAUDE.md 파일을 열고 수정할 수 있다. 이때, vi 파일로 열리는 경우, esc를 입력한 후 :wq 명령어로 변경사항을 저장 후 vi 창을 종료할 수 있다.

/clear 명령어로 컨텍스트 초기화하기
/clear 명령어는 현재 세션의 대화와 작업 컨텍스트를 모두 지우고 초기화한다. 대화 기록이 너무 길어져서 작업에 불필요한 컨텍스트가 개입할 때, 이전 프로젝트의 흔적을 지우고 완전히 새로운 작업을 시작할 때, 테스트 도중 잘못된 컨텍스트 때문에 혼선이 있을 때 사용할 수 있다.
CLAUDE.md 파일에 새로운 가이드라인을 추가해두었으니, /clear 명령어를 활용해 지금까지 대화 내용과 작업 정보를 모두 지우고 새롭게 실행할 수 있다.
커스텀 명령어 만들기
전역 명령어는 ~/.claude/commands/ 하위에, 프로젝트 명령어는 .claude/commands/ 하위에 명령어 폴더를 생성한다.
1️⃣ 명령어 폴더 생성하기 : .claude/commands 폴더를 만들기
2️⃣ 명령어 파일 생성하기 : 파일명.md 파일 만들기
3️⃣ 클로드 코드 재시작 : /exit --> claude (중요)
4️⃣ 명령어 실행 : /파일명
인수로 커스텀 명령어 확장하기
인수는 명령어나 함수에 전달하는 추가 정보로 명령어가 무엇을 해야할지를 정한다면, 인수는 무엇을 대상으로 어떻게 할 것인가를 구체적으로 알려주는 값이다.
기존에 만들어둔 커스텀 명령어에 인수 플레이스홀더를 지정해서 두 가지 방식으로 확장할 수 있다.
첫 번째는 지정한 카테고리의 퀴즈만 검증하도록 인수에 카테고리를 전달하는 것이고, 두 번째는 지정한 범위의 퀴즈만 검증하도록 인수에 두 숫자를 전달하는 것이다.
1️⃣ /quiz-validate $ARGUMENTS
인수로 특정 카테고리만 검증하고, 인수가 없으면 퀴즈 전체를 검증한다.
.claude/commands/quiz-validate.md를 다음과 같이 수정해 줘.
사용자가 카테고리를 지정하면 해당 카테고리의 문제만 검증하고,
지정하지 않으면 전체 문제를 검증해 줘.
$ARGUMENTS에 입력된 값을 카테고리로 사용하면 돼.
검증할 때는 ‘가장’, ‘최초’, ‘최대’ 같은 모호한 표현이 있는지 찾아서
어떤 기준을 명시해야 하는지 알려 줘.
2️⃣ /quiz-validate $시작 번호 $끝 번호
특정 범위의 퀴즈를 분석하는 커스텀 명령어 /quiz-range를 생성할 수 있다.
.claude/commands/quiz-range.md를 생성해.
$1번부터 $2번까지의 문제를 검토하는 기능을 만들어 줘.
문제의 난이도와 정답 분포를 확인하게 해 줘.
✔️ 여기서 $1과 $2는 시작 번호와 끝 번호를 나타내는 플레이스홀더로, 실제 명령어 실행 시 사용자가 입력한 인수로 대체된다.
✔️ 인수를 입력하지 않으니 아래와 같이 클로드 코드가 자체적으로 1부터 10까지의 문항을 검증한다.
3️⃣ /quiz-add $카테고리 $난이도
.claude/commands/quiz-add.md를 생성해.
새 퀴즈를 추가하는 명령어를 만들어 줘.
$1은 카테고리, $2는 난이도로 받아서 처리해.
기존 퀴즈들과 같은 형식으로 만들고, 검증 가이드라인을 꼭 지키게 해 줘.
게임 제작 워크플로 자동화하기
커스텀 명령어는 개별적으로도 유용하지만, 여러 명령어를 연결하여 더 강력한 자동화를 구현할 수 있다. 문제 추가 - 검증 - 통계 보고서 생성의 단계를 하나의 파이프라인으로 묶어 자동으로 처리하도록 해보자.
1️⃣ 명령어 체이닝 (&& 연산자)
명령어 체이닝은 여러 커스텀 명령어를 순서대로 연결 실행해서 반복적인 개발, 관리 작업을 자동화하는 방법이다. 간단한 형태로는 && 연산자로 두 개 이상의 명령어를 순서대로 연결하는 방법이다. 앞의 명령어를 성공적으로 실행한 경우에만 다음 명령이 이어진다.
.claude/commands/quiz-check.md 를 생성해 줘.
여기에는 모든 문제 정답의 정확성을 검증하는 기능을 수행하게 해.
.claude/commands/quiz-stats.md 를 만들어 줘.
퀴즈 게임의 통계를 관리하는 기능을 하게 해 줘.
.claude/commands/quiz-leaderboard.md 를 만들어.
순위 시스템을 관리하는 기능이 실행되게 해.
2️⃣ 통합 커스텀 명령어로 일일 업데이트 한 번에 끝내기
이번에는 여러 개의 커스텀 명령어를 한 덩어리로 묶어 매일 해야 하는 업데이트, 검증, 백업, 보고를 한 번에 자동으로 수행하는 통합 커스텀 명령어를 만들 수 있다. 명령어 체이닝도 좋지만, 실제 프로젝트에서는 통합 커스텀 명령어가 더 실용적이다,.
통합 커스텀 명령어 '/quiz-daily'는 여러 단계를 순차적으로 실행하고, 각 단게마다 검증하고 오류를 체크해서 실패 시 즉시 중단 및 오류 보고를 하고 성공하면 변경사항이 안전하게 반영된다.
통합 커스텀 명령어를 생성할 때는 몇 가지 주의사항을 따라야 한다. 다음 조건을 유지하면서, 할루시네이션 없이 새로운 문제를 매번 업데이트하고 결과를 점검하는 통합 코드를 만들어볼 수 있다.
- 파일 구조를 확인하게 할 것
- 작은 단위로 테스트 해볼 것
- 복잡한 작업은 단계별로 나누어 검증할 것
.claude/commands/quiz-daily.md를 만들어서 다음 작업을 순서대로 수행하게 해 줘.
1. 퀴즈가 담겨 있는 파일의 구조를 읽고 이해하기
2. 현재 문제 개수와 분포 확인
3. 각 카테고리별로 부족한 부분 파악
4. 새 문제 추가 전 중복 체크
5. 문제 추가 후 형식 검증
6. 전체 데이터 백업
7. 실행 결과 상세 보고
각 단계별로 검증하고, 실패하면 즉시 중단한 뒤, 오류를 보고해.
클로드 코드가 스스로 만드는 커스텀 명령어
클로드 코드가 어떤 커스텀 명령어가 필요한지 스스로 판단해 만들고, 명령어를 통합하여 자동화까지 하도록 명령할 수 있다.
이제 퀴즈를 푼 여러 학생들의 성적을 한눈에 보고 비교하는 선생님 모드를 만들고 싶어.
이 기능에 필요한 커스텀 명령들을 직접 구상하고 만들어 줘.
그리고 이 명령어를 하나로 모아서 실행하는 통합 명령어도 만들어 줘.
모든 명령들은 ‘.claude/commands/’ 폴더 안에 각각 .md 확장자로 저장되어야 해.
실행이 끝나면, 생성한 커스텀 명령어들과 그 기능을 나열해서 보고해.
'2026 혼자 공부하는 바이브코딩' 카테고리의 다른 글
| 챌린지 5주차 미션 (0) | 2026.01.15 |
|---|---|
| 챌린지 3주차 미션 (0) | 2026.01.06 |
| 챌린지 2주차 미션 (0) | 2026.01.06 |
| 챌린지 1주차 미션 (0) | 2026.01.05 |