Claude Code 속도 가이드 | 느린 이유와 3배 빠르게 만든 방법
Claude Code가 느려지는 원인을 파악하고, 실제로 속도를 3배 향상시킨 설정·프롬프트 설계·병렬 실행 기법을 공개합니다. 매일 사용하면서 깨달은 속도 개선의 핵심을 설명합니다.
“Claude Code, 요즘 좀 느리지 않나요?”
저도 이 사이트의 글 생성을 매일 Claude Code로 자동화하면서 첫 1주일은 같은 고민을 했습니다. 글 하나 생성하는 데 15분이 걸리던 것이 설정을 다듬고 나서 평균 4~5분으로 단축되었습니다. 약 3배 빠릅니다.
이 글에서는 왜 Claude Code가 느려지는가라는 본질적인 원인부터, 실제로 시험해 보고 효과가 있었던 속도 개선 기법을 설명합니다. “일단 빠르게 하는 방법”뿐만 아니라 “왜 그것으로 빨라지는지”까지 이해할 수 있도록 구성했습니다.
왜 Claude Code가 느려지는가
속도 개선 전에 원인을 정확히 파악하는 것이 중요합니다. Claude Code의 응답이 느린 원인은 크게 세 가지입니다.
원인 1: 컨텍스트가 너무 커진다
Claude Code는 세션의 전체 대화 기록을 컨텍스트로 포함해 API를 호출합니다. 대화가 길어질수록 매번 보내는 데이터량이 늘어 응답이 느려집니다.
세션 시작 직후: 컨텍스트 ~2,000 tokens → 빠름
1시간 후: 컨텍스트 ~30,000 tokens → 느림
반나절 후: 컨텍스트 ~80,000 tokens → 매우 느림 (또는 에러)
제 체감상 컨텍스트가 50,000 tokens를 넘으면 체감 속도가 절반 이하로 떨어집니다.
원인 2: 읽는 파일이 너무 많다
"이 저장소를 전부 읽고 이해한 다음 구현해" 같은 지시를 내리면 Claude Code는 엄청난 수의 파일을 읽으려 합니다. Glob이나 Grep을 수십 번 실행하는 동안의 대기 시간은 거의 전부 “파일을 읽는 시간”입니다.
원인 3: 모델의 처리 부하
Opus는 고성능인 만큼 응답 생성에 시간이 걸립니다. 단순한 작업에 Opus를 쓰는 경우가 많은데, 작업에 비해 오버스펙인 상태입니다.
대책 1: /compact를 습관으로 만든다
즉효성이 가장 높은 대책입니다. Claude Code에는 /compact 명령이 있으며, 이를 실행하면 대화 기록을 압축·요약해 컨텍스트를 크게 줄일 수 있습니다.
# Claude Code REPL에서 실행
/compact
저는 1시간에 1번, 또는 작업의 구분마다 /compact를 실행하는 습관을 들였습니다. 이것만으로도 체감 속도가 1.5~2배 개선됩니다.
새 작업은 새 세션에서
이전 작업의 맥락이 필요 없는 새 작업은 Claude Code를 재시작해 새 세션에서 시작하는 것이 빠릅니다. 세션 재시작은 5초도 걸리지 않습니다.
# 종료 후 재시작
exit
claude
“이전 작업도 참조하고 싶다”는 경우에는, 필요한 정보만 /init 후에 붙여 넣는 것이 긴 대화 기록을 이어받는 것보다 결과적으로 빠르고 정확합니다.
대책 2: 지시 범위를 명시적으로 좁힌다
파일 읽기의 낭비를 줄이면 큰 속도 향상을 기대할 수 있습니다.
Before / After 비교
# ❌ 느림: 범위가 너무 넓음
claude -p "이 프로젝트의 버그를 고쳐"
# → Glob → Read × 수십 번 → 시간이 많이 걸림
# ✅ 빠름: 범위를 한정
claude -p "src/api/auth.ts 108번째 줄의 null 체크 누락을 수정해"
# → Read 1번 → 수정 완료
제가 자주 쓰는 패턴:
# 특정 파일만 읽게 하기
claude -p "아래 파일만 읽고 수정해. 다른 건 읽지 않아도 돼:
- src/components/Button.tsx
- src/styles/button.css
문제: 호버 시 스타일이 적용되지 않음"
“다른 건 읽지 않아도 돼”라는 한 마디를 추가하는 것만으로 불필요한 탐색 행동이 멈춥니다.
대책 3: 모델을 용도에 맞게 구분한다
모든 작업에 Opus를 쓰는 것은 속도 면에서도 낭비입니다.
Opus: 복잡한 설계 · 어려운 디버깅 · 코드 리뷰
Sonnet: 일반적인 구현 · 리팩터 · 문서
Haiku: 번역 · 포맷 · 단순 변환
Claude Code에서 모델 전환하기
# 세션 중에 모델 변경
/model claude-sonnet-4-6
# 속도 참고: Sonnet은 체감상 Opus보다 2~3배 빠름
이 사이트 운영에서는:
- 글의 일본어 본문 → Sonnet (구성력은 충분, Opus보다 빠름)
- 다국어 번역 → Haiku (번역 품질은 실용상 문제없음, 압도적으로 빠름)
- 설계 상담·복잡한 구현 → Opus (여기만 품질 우선)
이 구분으로 글 1편당 생성 시간이 15분 → 4분이 되었습니다.
대책 4: 서브 에이전트로 병렬 실행
무거운 처리를 병렬화하면 총 시간을 크게 단축할 수 있습니다.
번역의 병렬 실행 (실제로 사용하는 방법)
// ❌ 순차 번역: 9개 언어 × 30초 = 270초 (4.5분)
for (const lang of languages) {
await translate(article, lang);
}
// ✅ Agent tool로 병렬 위임: 가장 느린 언어의 시간 = 약 30초
// (이 사이트에서 서브 에이전트에 일괄 위임해 8분 → 1.5분으로 단축)
Agent({
prompt: `${article}를 9개 언어로 번역하고 각 파일에 저장: EN/DE/ES/FR/HI/ID/KO/PT/ZH`
})
서브 에이전트는 독립적인 컨텍스트에서 동작하므로 메인 컨텍스트를 오염시키지 않습니다. 이것도 속도 개선에 기여합니다.
대책 5: 프롬프트 캐시로 입력을 고속화
같은 system prompt를 반복해서 사용하는 경우, 프롬프트 캐시가 작동하면 입력 처리가 약 10배 빨라집니다. 체감 속도에도 영향을 줍니다.
// cache_control을 추가하기만 하면 됨
system: [
{
type: "text",
text: longSystemPrompt,
cache_control: { type: "ephemeral" },
},
],
5분 이내에 같은 system prompt를 재사용하는 경우, 2번째 이후 호출이 체감으로 알 수 있을 만큼 빨라집니다.
대책 6: CLAUDE.md로 불필요한 탐색을 줄인다
CLAUDE.md에 “사용할 명령어,” “디렉터리 구조,” “금지 사항”을 써 두면 Claude Code가 헤매지 않고 바로 행동합니다.
# 프로젝트 규약
## 자주 쓰는 명령어 (매번 찾지 않아도 됨)
- 빌드: npm run build
- 테스트: npm run test
- 배포: bash scripts/deploy.sh
## 디렉터리 구조
- src/components/: UI 컴포넌트
- src/pages/: 라우팅
- src/content/blog/: 블로그 글 (MDX)
## 중요: 아래는 읽지 않아도 됨
- node_modules/
- .wrangler/
- site/dist/
이렇게 써 두면 "어디를 읽어야 하나" 를 찾는 턴 수가 줄어 결과적으로 빨라집니다.
실제 속도 개선 수치 (이 사이트 기준)
참고로 이 사이트(claudecode-lab.com)의 실적을 공개합니다.
| 작업 | 최적화 전 | 최적화 후 | 단축률 |
|---|---|---|---|
| 글 생성 (일본어) | 8분 | 2.5분 | 69% 단축 |
| 9개 언어 번역 | 7분 | 1.5분 | 79% 단축 |
| 빌드 + 배포 | 13분 | 11분 | 15% 단축 |
| 합계 (글 1편) | 28분 | 15분 | 46% 단축 |
추가로 /compact와 세션 관리를 철저히 함으로써 현재는 글 1편당 10~12분으로 안정되어 있습니다.
속도 개선 체크리스트
먼저 확인해야 할 순서대로 정리했습니다.
지금 당장 (1분 이내):
□ /compact를 실행해 컨텍스트 압축
□ 오랫동안 사용한 세션 재시작
□ 번역·포맷 계열 작업을 Haiku로 전환
오늘 할 일 (30분):
□ CLAUDE.md에 "읽지 않아도 되는 디렉터리" 명기
□ 자주 쓰는 명령어를 CLAUDE.md에 기재
□ 큰 작업을 "범위를 한정한 소작업"으로 나누는 습관 들이기
이번 주 할 일:
□ 반복하는 배치 처리에 cache_control 추가
□ 병렬화할 수 있는 작업을 Agent tool로 위임하는 패턴 만들기
□ 모델 용도 구분 규칙을 정해 CLAUDE.md에 명기
정리
Claude Code가 느린 근본 원인은 “컨텍스트의 비대화”와 “파일 탐색의 비효율” 입니다. 이 두 가지를 의식하는 것만으로도 체감 속도는 크게 달라집니다.
제가 가장 효과를 느낀 시책의 우선순위:
/compact습관화 (즉효성◎, 비용 0)- 모델 구분 사용 (번역을 Haiku로 바꾸는 것만으로도 극적 개선)
- 지시 범위 명시 (“다른 건 읽지 않아도 돼”의 한 마디)
- 서브 에이전트로의 병렬 위임
전부 한 번에 할 필요는 없습니다. 우선 /compact를 오늘 작업에 넣는 것만으로도 체감적으로 빨라졌다고 느낄 수 있을 것입니다.
관련 글
Claude Code 워크플로우를 한 단계 업그레이드하세요
지금 바로 Claude Code에 복사해 쓸 수 있는 검증된 프롬프트 템플릿 50선.
무료 PDF: 5분 완성 Claude Code 치트시트
이메일 주소만 등록하시면 A4 한 장짜리 치트시트 PDF를 즉시 보내드립니다.
개인정보는 엄격하게 관리하며 스팸은 보내지 않습니다.
이 글을 작성한 사람
Masa
Claude Code를 적극 활용하는 엔지니어. 10개 언어, 2,000페이지 이상의 테크 미디어 claudecode-lab.com을 운영 중.
관련 글
Claude Code API 비용 완전 정복: $450에서 $45/월로 줄인 5가지 실전 절감 기법
Claude Code API 요금을 실제 수치로 해설합니다. 프롬프트 캐싱·모델 최적화·배치 처리로 월 $450→$45, 90% 절감을 달성한 방법을 모두 공개합니다.
Claude Code로 발생한 운영 장애 7가지 사례: RCA·재발 방지책 포함 완전 복구 절차
Claude Code 운영에서 실제로 발생한 장애 7건 공개. API 키 유출·DB 삭제·과금 폭발·서비스 다운의 원인·복구 절차·RCA·재발 방지책을 완전 해설.
Claude Code의 위험한 프롬프트 패턴 10선 | 하면 안 되는 지시와 안전한 대안
Claude Code에 절대 주지 말아야 할 위험한 프롬프트 10가지. 코드 삭제·DB 파괴·과금 폭발·키 유출을 초래하는 지시와 안전한 대안 표현을 실례와 함께 해설합니다.