Tips & Tricks

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가 느린 근본 원인은 “컨텍스트의 비대화”와 “파일 탐색의 비효율” 입니다. 이 두 가지를 의식하는 것만으로도 체감 속도는 크게 달라집니다.

제가 가장 효과를 느낀 시책의 우선순위:

  1. /compact 습관화 (즉효성◎, 비용 0)
  2. 모델 구분 사용 (번역을 Haiku로 바꾸는 것만으로도 극적 개선)
  3. 지시 범위 명시 (“다른 건 읽지 않아도 돼”의 한 마디)
  4. 서브 에이전트로의 병렬 위임

전부 한 번에 할 필요는 없습니다. 우선 /compact를 오늘 작업에 넣는 것만으로도 체감적으로 빨라졌다고 느낄 수 있을 것입니다.

관련 글

#claude-code #performance #optimization #prompt-engineering #productivity

Claude Code 워크플로우를 한 단계 업그레이드하세요

지금 바로 Claude Code에 복사해 쓸 수 있는 검증된 프롬프트 템플릿 50선.

무료 제공

무료 PDF: 5분 완성 Claude Code 치트시트

이메일 주소만 등록하시면 A4 한 장짜리 치트시트 PDF를 즉시 보내드립니다.

개인정보는 엄격하게 관리하며 스팸은 보내지 않습니다.

Masa

이 글을 작성한 사람

Masa

Claude Code를 적극 활용하는 엔지니어. 10개 언어, 2,000페이지 이상의 테크 미디어 claudecode-lab.com을 운영 중.