Claude Code Ultracode & Effort 레벨 완전 정리: /effort 가이드
Effort는 Claude가 얼마나 깊게 생각할지를 결정하고 — 동시에 사용량 한도가 얼마나 빨리 소진되는지도 결정합니다. 이 가이드에서는 다섯 가지 effort 레벨, 모델별 기본값, /effort auto의 실제 의미, 그리고 ultracode — v2.1.284에서 어떤 레벨에도 겹쳐 쓸 수 있게 된 독립 스위치 — 을 다룹니다.
TL;DR — effort와 ultracode 4줄 요약
- 다섯 레벨: low, medium, high, xhigh, max — 모델별로 조정됩니다. 대부분 모델의 기본값은 high지만, Opus 5.5와 Sonnet 5.5는 medium, Opus 4.7은 xhigh가 기본입니다.
- /effort(슬라이더) 또는 /effort <레벨>로 변경합니다. /effort auto는 저장된 레벨을 지우고 모델 기본값으로 되돌립니다. 슬라이더에서 Enter는 기본값으로 저장, s는 이 세션에만 적용입니다.
- Ultracode는 effort 레벨이 아니라 Claude Code 설정입니다: 내용이 무거운 작업에서 Claude가 동적 워크플로를 오케스트레이션하게 합니다. v2.1.284부터는 독립 토글 — /effort에서 Tab, 또는 /effort ultracode on|off — 이며 xhigh를 강제하지 않습니다.
- Ultracode vs max 한 줄 요약: max는 가장 깊은 순수 추론 레벨(과하게 생각하기 쉬움). ultracode는 고른 레벨 위에 워크플로 조율을 얹는 것. 답하는 질문이 다릅니다 — 깊이 vs 조율.
Model configuration & effort — Claude Code documentation
문서:code.claude.com
Claude Code CHANGELOG — v2.1.284 (Ultracode becomes its own toggle)
체인지로그:github.com/anthropics/claude-code
How to Use Claude Effort Levels (Full Guide)
채널:Ryan & Matt Data Science13:24
이 페이지의 사실은 공식 effort 문서와 v2.1.284 체인지로그에서 왔습니다. 다이어그램은 이 가이드를 위해 그린 오리지널 일러스트입니다. 실린 영상은 Claude의 co-work 앱에서 같은 다섯 effort 레벨을 테스트한 것으로 — 실측 token 소모 데이터는 참고할 만하지만 화면은 Claude Code와 다른 서페이스입니다. 이 페이지는 그 프레임을 하나도 쓰지 않았습니다.
Effort 레벨과 ultracode, 단계별 정리
1 · 눈금부터 알기
- 1
effort가 실제로 무엇을 조절하는지 이해하기
Effort는 Claude Code의 추론 다이얼입니다. 모델이 요청에 얼마나 많은 사고를 투입할지 정하고, 응답 품질·지연 시간·사용량 한도 소진 속도에 직접 영향을 줍니다. 공식 문서도 이 눈금이 모델별 조정이라고 분명히 말합니다 — 같은 레벨 이름이라도 모델이 다르면 내부 값이 같지 않습니다.

/effort 눈금 한눈에 보기: 5개 레벨 + ultracode 토글(이 가이드용 자체 다이어그램). - 2
다섯 레벨이 언제 token 값을 하는지 익히기
low는 스스로 검토할 짧은 상호작용 — 브레인스토밍, 초안, 이름 바꾸기에 쓰입니다. medium은 범위가 분명한 일상 작업을 담당합니다. high는 검증이 중요하거나 예외 케이스가 도사리고 있는 작업용입니다. xhigh는 더 많은 token과 맞바꿔 더 깊은 추론을 사서 오래 도는 에이전트형 작업에 어울립니다. max는 Claude 혼자 어려운 문제를 끝까지 씹게 하고 싶을 때 — 문서는 수확 체감과 과잉 사고 가능성을 경고합니다.
- 3
모델 탓하기 전에 기본값부터 확인하기
기본값은 균일하지 않습니다: effort를 지원하는 모델은 모두 high가 기본이지만, Opus 5.5와 Sonnet 5.5만 medium, Opus 4.7은 xhigh입니다. 응답이 느려졌거나 한도가 빨리 사라진다 싶으면 모델을 의심하기 전에 effort 설정부터 확인하세요. 참고로 v2.1.284부터 Sonnet 5.5가 기본 Sonnet 모델이 됐습니다(1M 컨텍스트, 백만 token당 $2/$10).
2 · 의도대로 바꾸기
- 4
/effort로 세션 중에 바꾸기
세션에서 /effort를 입력하면 슬라이더가 열립니다 — 방향키로 레벨을 이동하고, Tab으로 ultracode 토글로 갑니다. /model 선택기 안에서는 좌우 키가 같은 컨트롤을 조절합니다. 일회성 실행은 --effort 플래그로 그 세션의 레벨을 지정하고, 자동화에서는 CLAUDE_CODE_EFFORT_LEVEL 환경 변수를 쓰면 됩니다.
- 5
레벨 직접 지정 — 그리고 auto의 의미
/effort <레벨>은 슬라이더를 열지 않고 레벨을 지정합니다. 은근히 유용한 건 /effort auto: 활성 모델의 저장된 레벨을 지워 해당 모델의 기본값으로 되돌립니다. 환경 변수도 auto를 받습니다. 실험 끝에 세션이 이상하게 굴 때, auto가 리셋 버튼입니다.
- 6
선택을 영구 저장하기(올바른 방법으로)
/effort 슬라이더에서 Enter는 레벨을 기본값으로 저장하고 s는 이 세션에만 적용합니다. settings에서는 modelSettings로 모델별 설정을 하거나 최상위 effortLevel을 폴백으로 쓸 수 있습니다 — 함정이 하나 있습니다: max는 어느 키에서도 받아들이지 않고, 환경 변수로 지정하지 않는 한 max는 현재 세션에만 적용됩니다. 스킬과 서브에이전트는 frontmatter에 자체 effort를 담을 수 있고 maxEffortLevel이 상한입니다.
3 · 새 토글 ultracode
- 7
ultracode가 무엇인지 이해하기
Ultracode는 모델 effort 레벨이 아니라 Claude Code 설정입니다. 공식 문서에 따르면 내용이 무거운 작업에서 Claude가 동적 워크플로를 오케스트레이션하게 합니다 — 큰 작업을 한 줄로 길게 추론하는 대신 조율된 단계로 쪼개는 것이죠. 예전에 xhigh와 붙어 나온 이유도 여기 있습니다: 깊은 추론 위의 조율이니까요.
- 8
v2.1.284 변경 사항 따라잡기
v2.1.284 이전에는 ultracode가 /effort 슬라이더의 최상위 단계였고 켜면 xhigh가 강제됐습니다. 2026년 9월 체인지로그가 이걸 바꿨습니다: ultracode는 이제 독립 토글 — /effort에서 Tab, 또는 /effort ultracode on|off — 이고 xhigh를 강제하지 않으며 어떤 effort 레벨에서도 켜진 상태를 유지합니다. VS Code 확장은 슬라이더의 ultracode 단계를 on/off 스위치로 대체했고(모델 필에 '· Ultracode' 표시), 새 effortSlider 키바인딩 액션으로 decreaseEffort, increaseEffort, toggleUltracode가 추가됐습니다.
- 9
ultracode와 max 사이에서 결정하기
축이 다릅니다. max는 '이 문제 하나에 최대한 깊게 생각하라'에 답합니다 — 가장 깊은 순수 추론, token 제한 없음, 대신 과잉 사고 위험이 문서화돼 있죠. Ultracode는 '작업을 조율하라'에 답합니다 — 고른 레벨 위에 워크플로 조율을 얹고, v2.1.284부터는 max와도 함께 쓸 수 있습니다. 경험칙: 껄러리운 단일 문제 디버깅 → max. 순서와 위임이 중요한 다단계 구축 → ultracode. 둘 다 → max effort에 ultracode 켜기.
- 10
의존하기 전에 제약 알아두기
문서는 ultracode를 쓸 수 없는 경우로 workflows가 꺼진 경우, 모델이 xhigh effort를 지원하지 않는 경우, xhigh 미만의 effort 상한이 걸린 경우를 듭니다. 관리되는 maxEffortLevel과 조직 상한은 모델별로 레벨 목록을 줄일 수 있고, 지원되지 않는 레벨은 그 레벨 이하에서 가장 높은 지원 레벨로 폴백합니다 — xhigh는 Opus 4.6에서 high로 동작하죠. CLAUDE_CODE_EFFORT_LEVEL이 xhigh가 아닌 값으로 고정돼 있으면 요청은 그 레벨로 실행되고 오케스트레이션은 꺼진 상태입니다. 어떤 설정도 건드리지 않고 한 턴만 깊게 생각하고 싶다면 ultrathink 키워드로 그 턴에만 깊은 추론을 더할 수 있습니다.
모델별 기본값과 레벨 목록
네 가지 사실이 가장 많은 문의를 줄여 줍니다:
- 1대부분 모델의 기본값은 high. medium은 예외지 규칙이 아닙니다 — Opus 5.5와 Sonnet 5.5의 기본값일 때뿐입니다.
- 2Opus 4.7은 xhigh가 기본. Opus 4.6과 Sonnet 4.6은 xhigh를 아예 제공하지 않습니다 — 천장 위 레벨은 최고 지원 레벨로 폴백합니다.
- 3문서의 effort 표에 없는 모델은 effort를 지원하지 않습니다. Sonnet 5.5는 v2.1.284에서 표에 합류하며 기본 Sonnet 모델이 됐습니다(1M 컨텍스트, 백만 token당 $2/$10, 캐시 읽기 $0.20/Mtok).
- 4눈금은 모델별로 조정됩니다: '같은 레벨 이름이 모델마다 같은 내부 값을 뜻하지는 않는다'. 문서의 마이그레이션 가이드도 솔직합니다 — Opus 5.5 medium은 Opus 5 high에 필적하거나 그 이상입니다.
저장된 게 없을 때의 해석 순서: 명시적 지정(환경 변수, --effort 플래그, 세션 내 /effort)이 최우선, 다음은 저장된 설정(모델별 modelSettings 또는 최상위 effortLevel 폴백), 마지막이 모델 기본값입니다.
