Claude Code 토큰 사용량 급증 원인 분석 및 절약 팁
Theories on the increased usage consumption + tips
핵심 요약
최근 Claude Code의 토큰 소모가 급증한 원인을 변경 로그에서 분석하고, 이를 방지하기 위한 설정 및 사용 팁을 공유함.
- 토큰 급증 원인 — 서브에이전트 포킹 기본 설정 및 캐시 누락 버그가 주요 원인으로 분석됨.
- 설정 최적화 — 에이전트 팀 기능 비활성화 및 포킹 옵션 끄기로 불필요한 컨텍스트 재처리를 방지함.
- 리소스 관리 — 사용하지 않는 스킬과 MCP를 제거하고, 동적 워크플로우 대신 작은 단위의 작업을 수행함.
- 모니터링 도구 — 실시간 토큰 및 캐시 사용량을 확인할 수 있는 상태 표시줄 도구 활용을 권장함.
지난 한 달 정도의 변경 로그를 싹 다 뒤져봤는데, 다들 갑자기 왜 이렇게 제한량을 빨리 처먹는지 설명해 줄 만한 흥미로운 후보들을 좀 찾았다.
v2.1.232, 8월 13일 - 서브 에이전트 포킹 기본값 활성화 + 팀원 아닌 에이전트 생성 시 기본적으로 백그라운드 처리: 포크는 전체 대화 기록을 그대로 상속받음. 즉, 포크마다 전체 컨텍스트를 다 가져가는데 이게 진짜 개빡셈. 이게 기본값이 되면서 클로드가 예전엔 그냥 싸고 가벼운 서브 에이전트한테 맡기던 작업까지 포크를 따버림. 백그라운드 처리도 기본이 되면서 더 막무가내로 생성해대고. 세션 길어지면 생성할 때마다 처리되는 토큰 수가 기하급수적으로 늘어남.
v2.1.257, 9월 1일 - 어드바이저 모델 설정된 세션에서 백그라운드 요청(압축, /recap, 프롬프트 제안) 시 프롬프트 캐시 누락되던 버그 수정, 매번 전체 대화 내용을 캐시 없이 다시 전송하던 문제: 압축 기능을 안 쓰더라도 프롬프트 제안 기능 켜져 있었으면 자동 요약 기능이랑 합쳐져서 토큰을 엄청나게 잡아먹고 있었음.
v2.1.260, 9월 3일 - (Fable 5.1 전용) 도구 결과 뒤에 붙는 컨텍스트가 캐싱 안 돼서 도구 호출할 때마다 캐시 없이 다시 전송되던 버그 수정: 도구 많이 쓰는 세션에서는 입력값이 거의 두 배로 뻥튀기되는 수준이었음.
v2.1.259, 267, 268, 269, 9월 2일~14일 - 자잘한 캐시 수정들: OAuth 갱신 무효화, Stop-hook 캐시 손실, 재개/재연결 시 다시 렌더링, 출력 제한 재개 시 부분 무효화 등. 이런 것들 하나하나가 의도한 것보다 훨씬 많은 캐시 안 된 데이터를 세션에 전송하게 만들었을 거임.
이건 그냥 내 추측이고 확실한 건 아니지만, 그래도 공유할 가치는 있다고 생각해서 적어봄.
그리고 나한테 진짜 도움 많이 됐던 팁들도 몇 개 공유함:
-
claude code는 항상 최신 버전 유지해라. 그리고 변경 로그 좀 읽어라. 그래야 뭐가 바뀌었는지 알고 당황 안 하지.
-
에이전트 팀 안 쓰면
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=0으로 설정해두거나 필요할 때만 껐다 켰다 해라. 나도 이거 켜둔 거 까먹고 있었는데, 클로드한테 서브 에이전트 만들라고 할 때마다 팀원을 소환하더라. 팀원 쓰면 유휴 상태 알림(ping/ack) 하나 올 때마다 전체 리드 컨텍스트(티켓, diff, 이전 리뷰 내용 등)를 모델에 입력값으로 다시 다 처넣음. -
포킹 기본값 꺼버리기:
CLAUDE_CODE_FORK_SUBAGENT=0-- 포크는 전체 대화 기록을 다 가져오니까(새 서브 에이전트처럼 가벼운 프롬프트가 아님), 포크할 때마다 전체 컨텍스트를 다시 처리함. -
안 쓰는 스킬은 다 지워라. 스킬 하나하나가 클로드가 쓰든 안 쓰든 매 턴마다 컨텍스트에 추가됨.
/skill-doctor돌려봐. -
스킬 관련해서 하나 더,
disable-model-invocation: true를 추가해라. 이러면 클로드가 어떤 스킬 쓸지 결정할 때 스킬 설명이 컨텍스트 윈도우에 로드되는 걸 막아줌. 단, 이러면 스킬을 수동으로 호출해야 함. 클로드가 동적 워크플로우 중에 알아서 스킬 쓰던 거에 익숙하면 좀 불편할 수도 있음. -
안 쓰는 MCP도 다 꺼라. 스킬이랑 똑같이, 클로드가 안 써도 세션 시작할 때마다 컨텍스트에 다 로드됨.
-
동적 워크플로우, 목표 설정, 루프 같은 거 쓰지 마라. AI 호들갑 떠는 애들이 맨날 이거 좋다고 빨아대는데, 이거 존나 비싸고 대부분은 굳이 안 써도 됨. 대신 기능을 작게 쪼개서 티켓 단위로 만들고 세션 하나당 티켓 하나씩만 처리해라. 시간은 좀 더 걸려도 토큰 사용량은 엄청나게 아낄 수 있음.

