Claude Code Opus effort 가이드: Extra high·Max·Ultracode는 언제 쓸까

추론 노력 다이얼과 여러 작업 카드가 코드 및 결과 화면으로 연결된 일러스트

Claude Code에서 Opus의 effort를 높여야 할 때는 언제일까요? Extra high, Max, Ultracode의 차이를 구분하고, UI 수정부터 복잡한 버그 분석까지 작업에 맞는 설정과 전환 기준을 구체적인 명령과 프롬프트로 정리합니다.

Claude Code 공식 웹사이트에서 소개하는 Opus를 사용하더라도, 모든 요청을 가장 높은 설정으로 처리할 필요는 없습니다. 화면을 보며 작은 수정을 반복할 때와 여러 원인을 검토하며 버그를 추적할 때는 기다릴 만한 작업의 양이 다릅니다.

작은 변경은 빠르게 확인하고, 판단이 어려운 구간에서 effort를 올리고, 나눌 수 있는 큰 작업에서 Ultracode를 검토하세요. 아래 추천은 작업 운영을 위한 제안이며 성능 벤치마크 결과가 아닙니다. 기능과 명령은 2026년 10월 19일 공식 문서를 확인했으며, Ultracode의 분리된 토글 설명은 Claude Code v2.1.284 이상을 기준으로 합니다.

먼저, 세 이름의 차이를 구분하기

표시·입력값무엇을 조절하나선택할 때의 질문
Extra high · xhigh높은 추론 노력여러 조건과 원인을 더 깊이 검토해야 하나?
Max · max가장 높은 추론 노력더 기다리고 더 많은 토큰을 써서라도 어려운 판단을 재검토할 가치가 있나?
Ultracode · ultracode동적 워크플로 구성작업을 조사·구현·검증 등으로 나누어 진행할 실익이 있나?

low → medium → high → xhigh → max는 effort 단계입니다. 다만 Ultracode를 Max보다 한 단계 높은 effort로 해석하면 안 됩니다. 최신 버전에서는 effort와 별도로 켜고 끌 수 있습니다. 또 구독 상품인 Max 요금제와 max effort는 서로 다른 개념입니다. 모델 설정 문서

Claude Code 공식 문서의 effort 비교 표. xhigh와 max 설명 뒤에 ultracode가 별도 설정으로 표시되어 있다.

공식 공개 문서의 effort 비교 표를 캡처했습니다. 마지막 행은 Ultracode를 모델 effort와 구분합니다. (출처: Claude Code Docs, 2026-10-19 캡처 · 이미지 크게 보기)

effort는 고정된 대기 시간이나 정답 보증이 아닙니다. 응답·도구 호출·추론에 사용하는 토큰에 영향을 주므로, 같은 작업이라도 시간과 사용량이 달라질 수 있습니다. max를 사용해도 컨텍스트 한도나 서비스 사용 한도가 사라지지는 않습니다. Effort API 문서

내 Opus 버전의 기본값부터 확인하기

현재 Claude Code 문서의 기본값은 Opus 5.5는 medium, Opus 5와 4.8은 high, Opus 4.7은 xhigh입니다. Opus 4.6은 xhigh를 지원하지 않습니다. 설정·환경 변수·조직 정책이 적용되면 실제 값은 달라질 수 있습니다. 모델별 지원 단계와 기본값

따라서 “Opus는 무조건 Extra high로 시작한다”는 조언을 모든 버전에 적용하지 마세요. 모델이 바뀌면 평소 처리하는 작은 작업으로 기본값의 결과부터 확인하는 편이 좋습니다. 모델이 다르면 같은 effort 이름을 동일한 연산량이나 품질로 비교할 수도 없습니다.

터미널에서 버전을 확인하고, 세션 안에서는 모델과 적용된 effort를 확인합니다. /model은 선택기를 여는 명령입니다.

claude --version
/model
/effort status

작업별로 어디서 시작할까

다음 표는 Opus 5.5를 사용하는 대화형 바이브 코딩의 시작점입니다. 한 번에 완성하려 하기보다, 결과를 보고 다음 단계를 고르는 운영 예시입니다.

지금 하는 작업시작 설정올려야 할 신호
문구, 색상, 여백처럼 결과를 바로 보는 수정low 또는 medium상태·접근성 등 다른 동작까지 영향을 받음
요구사항과 완료 조건이 정해진 기능 하나medium예외 처리나 기존 규칙을 빠뜨림
폼 검증, 오류 처리, 기존 기능의 버그 수정high여러 원인이 얽혀 한 가설로 설명되지 않음
상태 동기화, 비동기 순서, 구조 변경의 영향 분석xhigh반례가 남고 기존 접근으로 해결되지 않음
재현 자료를 갖춘 어려운 원인 분석, 설계 반례 검토max를 한정 사용검증 가능한 새 근거 없이 분석만 반복되면 중단
UI·데이터·테스트처럼 분담 가능한 큰 기능적절한 effort + Ultracode역할·입출력·통합 기준을 먼저 정할 수 있음

파일 수만으로 판단하지는 마세요. 파일 20개에서 같은 문구를 바꾸는 작업보다, 파일 하나에서 발생하는 비동기 경쟁 상태가 더 어려울 수 있습니다. 변경량보다 판단의 불확실성과 오류의 영향을 보세요.

Extra high: 연결된 조건을 놓치기 시작할 때

예를 들어 검색창의 결과가 가끔 이전 검색어로 되돌아간다고 합시다. 단순한 화면 수정처럼 보여도 요청 순서, 응답 지연, 취소 처리, 상태 갱신 규칙을 함께 살펴야 합니다. 이런 경우 xhigh로 올려 원인별 증거를 정리하게 하는 방식이 유용합니다.

Claude Code 입력창에서 실행합니다.

/effort xhigh

이어 다음처럼 요청합니다.

검색어를 빠르게 바꾸면 이전 검색 결과가 마지막에 표시됩니다. 재현 순서와 네트워크 로그를 기준으로 요청 생성, 응답 도착, 화면 반영 순서를 추적해 주세요. 가능한 원인을 구분하고, 각 원인을 배제하거나 확인할 관측값을 제시한 뒤 가장 작은 수정과 회귀 테스트를 작성해 주세요.

핵심은 “더 생각해 줘” 대신 어떤 근거를 연결해야 하는지 알려 주는 것입니다. 원인과 수정 방법이 확인되면 후속 문구 정리나 스타일 수정까지 계속 xhigh로 처리할 필요는 없습니다.

Max: 해결되지 않은 핵심 질문에 한정하기

max는 충분한 재현 자료를 제공했는데도 중요한 반례가 남는 상황에서 검토할 만합니다. 예를 들면 여러 클라이언트가 동시에 문서를 수정할 때 변경 내용이 사라지는 문제입니다. 원인 분석보다 로그가 부족한 상황이라면, effort를 올리기 전에 관측 지점을 추가해야 합니다.

/effort max

두 사용자가 동시에 저장할 때 한쪽 수정이 유실됩니다. 첨부한 재현 테스트와 이벤트 순서를 사용해 현재 병합 규칙의 반례를 찾으세요. 제안한 수정이 단일 사용자 저장과 재접속 복구를 깨뜨리지 않는지 확인하고, 가설·증거·미확인 항목을 구분해 주세요. 근거 없이 전체 저장 구조를 교체하지 마세요.

종료 조건도 함께 정합니다. 이 예에서는 유실을 재현하는 테스트가 통과하고, 기존 저장·복구 테스트가 유지되며, 남은 제약이 설명되면 종료입니다. 더 긴 답변이나 더 많은 파일 변경을 성공 지표로 삼지 않습니다.

Anthropic도 max에서 추가 비용에 비해 개선이 작거나 과도한 검토가 발생할 수 있다고 설명합니다. 어려운 질문 하나가 해결되면 일상 설정으로 돌아오는 편이 좋습니다. 공식 effort 선택 안내

Ultracode: 분담과 통합이 필요한 작업에 사용하기

Ultracode를 켜면 Claude Code가 실질적인 작업에 동적 워크플로를 구성합니다. 여러 서브에이전트의 작업을 단계별로 조정하는 방식이므로, 단일 응답을 더 오래 생각하게 하는 것과 목적이 다릅니다. 동적 워크플로 공식 문서

예를 들어 “설정 페이지에 알림 기능 추가”는 저장 형식 조사, UI 구현, 오류 처리, 테스트를 나누어 검토할 수 있습니다. 반대로 버튼의 여백만 바꾸는 작업은 분담·결과 전달·통합 과정이 부담이 될 수 있습니다.

v2.1.284 이상에서는 현재 effort를 유지하며 토글할 수 있습니다. 첫 줄로 켜고, 해당 작업을 끝낸 뒤 두 번째 줄로 끕니다. 두 줄을 연달아 실행하는 절차가 아닙니다.

/effort ultracode
/effort ultracode off

알림 설정 기능을 구현해 주세요. 먼저 현재 저장 방식과 UI 규칙을 조사하고, 독립적으로 진행할 수 있는 작업의 경계를 제안해 주세요. 공통 데이터 형식을 확정한 뒤 구현을 나누고, 마지막에는 통합 테스트를 실행해 주세요. 완료 기준은 설정 유지, 저장 실패 안내, 키보드 조작, 기존 설정의 호환성입니다.

실행 후에는 /workflows로 단계와 진행 상황을 확인할 수 있습니다. 같은 파일이나 공통 데이터 형식을 여러 작업이 동시에 바꾸어야 한다면, 먼저 공유 계약을 정하고 순서대로 처리하도록 요청하세요. 에이전트를 늘린다고 통합 문제가 자동으로 해결되지는 않습니다.

버전 차이에 주의하세요. v2.1.284 이전에는 Ultracode가 xhigh와 결합되어 동작했습니다. 지금도 시작 옵션 claude --effort ultracode는 Ultracode를 켜면서 effort를 xhigh로 설정합니다. 현재 세션의 /effort ultracode 토글과 효과가 같지 않습니다. 지원 모델과 워크플로 사용 가능 여부도 확인해야 합니다. Ultracode 설정 설명 · CLI 옵션

설정의 적용 범위와 복귀 방법

기본 설정을 계속 바꾸는 것이 부담스럽다면, 이번 실행에만 effort를 지정해 시작할 수 있습니다.

claude --model opus --effort high

--effort는 해당 세션에 적용됩니다. 대화형 /effort high처럼 직접 입력한 일반 단계는 모델별 기본값으로 저장될 수 있으며, max는 환경 변수로 지정한 경우를 제외하면 현재 세션에만 적용됩니다. /effort auto는 현재 모델에 저장한 effort 선택을 해제합니다. 실제 적용값은 /effort status로 확인하세요. CLI 참조 · effort 설정과 저장 범위

바꾼 값이 적용되지 않는다면 CLAUDE_CODE_EFFORT_LEVEL, 프로젝트 설정, 조직의 effort 상한을 확인합니다. 명령이 없거나 표시가 다르면 claude --version과 /help로 설치된 버전의 지원 범위를 먼저 확인하세요.

비슷하게 들리는 ultrathink도 구분할 필요가 있습니다. 현재 공식 문서에서는 프롬프트에 이 단어를 넣으면 그 턴에 더 깊은 추론을 요청하는 지시가 추가되지만, API로 보내는 effort 값은 바뀌지 않는다고 설명합니다. max 선택이나 Ultracode 활성화의 대체 명령이 아닙니다. ultrathink 설명

높은 설정이 도움이 되었는지 확인하는 법

첫 응답까지의 시간보다 검증을 마칠 때까지의 총시간을 기록해 보세요. 작은 기능, 상태 관련 버그, 구조 변경처럼 서로 다른 작업을 고르고, 같은 코드 상태·요구사항·완료 조건으로 비교합니다. 각 실행은 별도 세션과 깨끗한 작업 복사본에서 시작해야 앞선 답변이나 수정이 다음 실험에 섞이지 않습니다.

기록할 것은 네 가지면 충분합니다.

  1. 처음 결과가 완료 조건을 얼마나 충족했는가.
  2. 사람이 다시 설명하거나 수정한 횟수는 몇 번인가.
  3. 테스트·화면 확인을 포함해 완료까지 얼마나 걸렸는가.
  4. 토큰 또는 구독 사용량이 얼마나 늘었는가.

현재 /usage에서는 사용량을 확인할 수 있습니다. 구독 사용자는 플랜 사용량을 보고, API 사용자는 토큰·비용 추정치를 살펴보세요. 세션의 달러 추정치를 구독자의 추가 청구액으로 해석하면 안 됩니다. 공식 사용량 안내

높인 설정이 같은 품질을 더 늦게 만들거나 수정 범위만 넓힌다면 낮추세요. 반대로 중요한 조건 누락과 재작업이 줄어든다면 그 종류의 작업에 유지할 이유가 있습니다. 한 번의 성공을 모든 작업의 기본값으로 일반화하지 않는 것이 좋습니다.

다음 작업에서는 먼저 목표, 수정 범위, 재현 자료, 완료 조건을 적고 기본 effort로 시작해 보세요. 원인 연결이 어렵다면 xhigh, 남은 핵심 반례를 깊이 검토해야 한다면 한정된 max, 작업 분담의 이득이 분명하다면 Ultracode를 선택하면 됩니다.