Claude에서 너무 많은 토큰을 낭비하고 있습니다
요약
Claude 사용 시 반복적인 컨텍스트 입력으로 인한 토큰 낭비를 줄이기 위해 '프로젝트 메모리 파일'을 활용하는 방법을 제안합니다. CLAUDE.md와 같은 파일을 통해 프로젝트 개요, 기술 스택, 폴더 구조, 코딩 규칙을 정의하여 효율적인 AI 코딩 워크플로우를 구축할 수 있습니다.
핵심 포인트
- 반복적인 컨텍스트 입력은 토큰 낭비와 시간 소모를 초래함
- CLAUDE.md 등 프로젝트 메모리 파일을 단일 출처로 활용 권장
- 파일에는 프로젝트 개요, 기술 스택, 폴더 구조, 코딩 규칙 포함 필요
- AI가 프로젝트의 맥락을 정확히 이해하도록 구조화된 가이드 제공
많은 개발자들이 Claude를 비싼 방식으로 사용하고 있습니다.
그들은 Cursor, Claude Code, 또는 자신의 IDE를 엽니다. 그리고 모든 세션은 항상 같은 방식으로 시작됩니다:
“제 프로젝트는 이런 일을 합니다.”
“제 기술 스택 (Tech stack)은 이렇습니다.”
“폴더 구조 (Folder structure)는 이렇습니다.”
“버그 (Bug)는 이것입니다.”
“지난번에 우리가 작업했던 내용은 이것입니다.”
“이 파일은 변경하지 마세요.”
“이 패턴 (Pattern)을 사용하세요.”
이 방식은 한동안은 작동합니다.
하지만 프로젝트가 커지면, 이는 고통스러워집니다. 당신은 컨텍스트 (Context)를 반복하는 데 너무 많은 시간을 소비합니다. Claude는 정보를 다시 읽는 데 너무 많은 시간을 소비합니다. 그리고 당신의 토큰 (Tokens)은 예상보다 훨씬 빠르게 사라집니다.
문제는 Claude가 나쁘다는 것이 아닙니다. 문제는 대부분의 사람들이 Claude에게 안정적인 프로젝트 메모리 (Project memory)를 제공하지 않고 있다는 점입니다.
더 나은 방법: 프로젝트 메모리 파일 사용하기
Claude Code의 경우, 이는 보통 CLAUDE.md 파일입니다.
Cursor의 경우, 프로젝트 규칙 (Project rules)이나 지침 파일 (Instruction file)을 사용할 수도 있습니다.
아이디어는 간단합니다:
프로젝트를 명확하게 설명하는 파일 하나를 만드세요. 그런 다음 Claude가 그 파일을 신뢰할 수 있는 단일 출처 (Source of truth)로 사용하게 만드세요. 매번 프로젝트를 설명하는 대신, Claude는 그 파일을 읽습니다. 패턴을 추측하는 대신, Claude는 파일을 확인합니다. 결정을 잊어버리는 대신, Claude는 파일을 업데이트합니다.
이것은 당신의 AI 코딩 워크플로우 (Workflow)에 구조를 부여합니다.
CLAUDE.md 파일에 포함되어야 할 내용
파일이 복잡할 필요는 없습니다. 간단한 것부터 시작하세요.
1. 프로젝트 개요 (Project Overview)
제품이 무엇을 하는지 쉬운 영어로 설명하세요.
예시:
“이것은 소규모 비즈니스가 온라인 스토어를 만들고, 제품을 관리하며, 주문을 받고, 결제를 추적할 수 있도록 지원하는 SaaS 플랫폼입니다.”
Claude는 코드를 건드리기 전에 제품을 이해해야 합니다.
2. 기술 스택 (Tech Stack)
주요 기술들을 나열하세요.
프론트엔드 (Frontend).
백엔드 (Backend).
데이터베이스 (Database).
인증 (Authentication).
결제 (Payments).
스토리지 (Storage).
이메일 (Email).
AI 서비스 (AI services).
배포 (Deployment).
이렇게 하면 Claude가 당신의 스택에 맞지 않는 무작위 도구들을 제안하는 것을 방지할 수 있습니다.
3. 폴더 구조 (Folder Structure)
중요한 요소들이 어디에 위치하는지 설명하세요.
예시:
/app: 라우트 (routes)용
/components: 재사용 가능한 UI (reusable UI)용
/lib: 유틸리티 (utilities)용
/server: 백엔드 로직 (backend logic)용
/db: 스키마 (schema) 및 쿼리 (queries)용
이는 Claude가 적절한 파일을 더 빠르게 찾는 데 도움이 됩니다.
4. 코딩 규칙 (Coding Rules)
코드가 어떻게 작성되어야 하는지 정의하세요.
예시:
- TypeScript를 사용하세요.
- 불필요한 추상화 (abstractions)를 피하세요.
- 컴포넌트 (components)를 작게 유지하세요.
- 묻지 않고 새로운 라이브러리 (libraries)를 생성하지 마세요.
- 기존의 명명 패턴 (naming patterns)을 따르세요.
- 필요하지 않다면 작동 중인 코드를 다시 작성하지 마세요.
이러한 규칙들은 AI가 생성한 지저분한 코드로부터 당신을 보호해 줍니다.
5. 현재 기능 (Current Features)
이미 작동하고 있는 것들을 나열하세요.
인증 (Authentication).
대시보드 (Dashboard).
결제 (Payments).
알림 (Notifications).
관리자 패널 (Admin panel).
분석 (Analytics).
이는 Claude가 이미 존재하는 기능을 다시 만드는 것을 방지합니다.
6. 현재 작업 (Current Work)
지금 작업 중인 기능이나 버그를 추가하세요.
예시:
"현재 송장 알림 (invoice reminders) 작업을 진행 중입니다. 목표는 송장 만기일 전후로 자동 알림을 보내는 것입니다."
이는 세션이 집중력을 유지하도록 돕습니다.
7. 알려진 버그 (Known Bugs)
해결되지 않은 이슈들을 추적하세요. Claude는 무엇이 고장 났는지 알아야 합니다. 또한 이미 무엇을 시도했는지도 알아야 합니다.
이는 잘못된 수정 사항이 반복되는 것을 방지합니다.
8. Claude가 건드리지 말아야 할 사항 (Things Claude Should Not Touch)
이 부분은 매우 중요합니다.
예시:
- 프로덕션 데이터베이스 마이그레이션 (production database migrations)을 수정하지 마세요.
- 묻지 않고 결제 로직 (payment logic)을 변경하지 마세요.
- 환경 변수 (environment variables)를 업데이트하지 마세요.
- 허가 없이 파일을 삭제하지 마세요.
- 인증 흐름 (authentication flow)을 다시 작성하지 마세요.
AI 에이전트 (AI agents)에게는 경계가 필요합니다. 경계가 없다면, 그들은 값비싼 문제들을 만들어낼 수 있습니다.
권장하는 워크플로우 (The Workflow I Recommend)
간단한 워크플로우는 다음과 같습니다:
CLAUDE.md를 생성합니다.- 프로젝트 개요와 규칙을 추가합니다.
- Claude에게 변경 사항을 만들기 전에 이를 읽으라고 지시합니다.
- Claude에게 코딩하기 전에 계획을 세우라고 요청합니다.
- Claude가 작은 변경 사항들을 수행하도록 합니다.
- 디프 (diff)를 검토합니다.
- 주요 변경 사항이 발생한 후 Claude에게
CLAUDE.md를 업데이트하도록 요청합니다.
마지막 단계가 중요합니다. 당신의 메모리 파일은 프로젝트와 함께 진화해야 합니다.
새로운 API가 추가되면 업데이트하세요.
기능이 완료되면 업데이트하세요.
새로운 규칙이 생성되면 업데이트하세요.
버그가 발견되면 업데이트하세요.
이렇게 하면 Claude는 더욱 일관성 있는 코딩 파트너가 됩니다.
Claude에게 전체 코드베이스를 읽으라고 요청하는 것을 멈추세요
개발자들이 저지르는 큰 실수 중 하나는 Claude에게 모든 것을 스캔하라고 요청하는 것입니다. 이는 토큰을 빠르게 소모합니다. 대부분의 경우, Claude는 프로젝트 전체를 필요로 하지 않습니다. Claude에게 필요한 것은 적절한 파일들입니다.
더 나은 프롬프트는 다음과 같습니다:
“먼저 CLAUDE.md를 읽으세요. 그런 다음 인증 (authentication)과 관련된 파일만 조사하세요. 아직 아무것도 수정하지 마세요. 먼저 당신이 이해한 내용을 알려주세요.”
이렇게 하면 컨텍스트 (context)를 더 작게 유지할 수 있습니다. 또한 잘못된 가정을 줄여줍니다.
코드 작성 전에 계획을 요청하세요
곧바로 다음과 같이 요청하지 마세요:
“이것을 수정하세요.”
대신 이렇게 요청하세요: “관련 파일을 읽고 변경 사항을 적용하기 전에 계획을 알려주세요.”
이것은 두 가지 효과가 있습니다. Claude가 무엇을 이해하고 있는지 보여줍니다. 또한 Claude가 코드에 손을 대기 전에 이를 바로잡을 기회를 제공합니다.
이 한 가지 습관만으로도 몇 시간을 아낄 수 있습니다.
작업을 작게 유지하세요
Claude는 작업이 집중되어 있을 때 더 나은 성능을 발휘합니다.
나쁜 프롬프트:
“대시보드 전체를 구축하세요.”
더 나은 프롬프트:
“기존의 카드 컴포넌트 (card component)를 사용하여 분석 대시보드의 빈 상태 (empty state)를 구축하세요. 새로운 UI 패턴을 생성하지 마세요.”
작은 작업은 더 깨끗한 코드를 생성합니다.
큰 작업은 지저분한 가정을 만들어냅니다.
Claude를 주니어 엔지니어처럼 사용하세요
이것이 가장 좋은 멘탈 모델 (mental model)입니다. Claude는 마법이 아닙니다. Claude는 강력한 패턴 인식 능력을 갖춘 매우 빠른 주니어 엔지니어입니다.
Claude는 코드를 빠르게 작성할 수 있습니다.
디버깅 (debug)을 빠르게 할 수 있습니다.
시스템을 빠르게 설명할 수 있습니다.
하지만 여전히 다음 요소들이 필요합니다:
컨텍스트 (Context).
경계 (Boundaries).
리뷰 (Review).
명확한 지침 (Clear instructions).
훌륭한 엔지니어는 단순히 “프롬프트를 더 잘 쓰는 것”에 그치지 않습니다. 훌륭한 엔지니어는 Claude를 더 잘 관리합니다.
나의 단순한 규칙
Claude에게 무언가를 구축하라고 요청하기 전에, 저는 Claude가 다음 세 가지를 알기를 원합니다:
- 우리가 무엇을 만들고 있는가?
- 이 프로젝트는 어떻게 작동하는가?
- 하지 말아야 할 것은 무엇인가?
Claude가 이 세 가지를 모른다면, 토큰을 낭비할 것입니다.
그리고 아마 당신의 시간도 낭비하게 될 것입니다.
AI 코딩 도구(AI coding tools)는 빠르게 발전하고 있습니다. 하지만 이 도구들로부터 가장 큰 가치를 얻는 개발자는 가장 긴 프롬프트(prompt)를 입력하는 사람들이 아닙니다. 그들은 컨텍스트(context)를 적절하게 관리하는 사람들입니다.
AI 코딩의 미래는 단순한 프롬프트 엔지니어링 (prompt engineering)이 아닙니다.
그것은 컨텍스트 엔지니어링 (context engineering)입니다.
그리고 이를 조기에 학습한다면, Claude는 훨씬 더 유용해질 것입니다.
Sayonara ✌🏽
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기