Skip to main content
이 참조 페이지는 Claude Code가 설정 파일에서 읽는 각 키와 대신 ~/.claude.json에 유지하는 짧은 키 그룹을 나열합니다. 파일을 선택하거나 우선순위를 확인하려면 설정 파일 및 우선순위에서 시작하십시오.

설정 인덱스

아래의 모든 키는 해당 항목으로 연결됩니다. 범위는 파일을 나열합니다: User는 ~/.claude/settings.json, Project는 .claude/settings.json, Local은 .claude/settings.local.json, Managed는 조직이 배포하는 것입니다. Any file은 네 가지 모두를 의미하고, Global config는 ~/.claude.json을 의미합니다.

모델 및 응답

Claude Code가 사용하는 모델과 응답 방식을 선택합니다. 이러한 설정이 /model 명령 및 환경 변수와 어떻게 상호 작용하는지는 모델 구성을 참조하세요.

advisorModel

Claude가 서버 측 advisor 도구를 호출할 때 응답할 모델을 선택합니다. advisor를 끄려면 이 키를 설정 해제합니다. advisor는 최소한 메인 모델과 동등한 성능을 갖춰야 합니다. 허용되는 조합과 허용되지 않는 모델을 선택했을 때 어떻게 되는지는 advisor 모델 선택을 참조하세요. 일반적으로 이 키를 직접 편집하지 않습니다. /advisor를 실행하면 현재 선택, advisor로 사용할 수 있는 모델, No advisor를 보여 주는 선택기가 열립니다. Claude Code는 선택한 항목을 ~/.claude/settings.json의 이 키에 저장합니다. Remote Control 클라이언트에서 선택하거나 원격 워커에 연결된 세션에서 선택하면 해당 선택은 그 세션에만 적용되며 이 키는 변경되지 않습니다. 계정에 사용량 크레딧 동의가 필요한 경우 먼저 /model fable을 실행하여 동의해야 합니다. 동의하기 전까지는 /advisor에서 Fable을 선택해도 아무것도 저장되지 않으며, Claude Code가 먼저 /model fable을 실행하라고 안내합니다.
  • 범위: Any file
  • 유형: 문자열. 해당 모델 계열의 Claude Code 현재 기본 버전으로 해석되는 별칭 "fable", "opus", "sonnet" 중 하나 또는 "claude-opus-5-5"와 같은 전체 모델 ID
  • 기본값: 설정되지 않음. 따라서 advisor가 꺼져 있습니다
  • 세션별 재정의: 한 세션에 대해서는 --advisor가 이 키보다 우선합니다. CLAUDE_CODE_DISABLE_ADVISOR_TOOL은 advisor를 끄며, 이 키로 다시 켤 수 없습니다
settings.json
이 키는 Amazon Bedrock 및 Claude Platform on AWS처럼 advisor를 사용할 수 없는 공급자에서는 효과가 없습니다. "fable"에는 Fable 액세스가 필요합니다.

alwaysThinkingEnabled

이 값을 false로 설정하면 모든 세션에서 확장 사고를 끕니다. 사고는 기본적으로 켜져 있으므로 true는 아무것도 바꾸지 않습니다. 대부분 파일을 편집하는 대신 /config를 통해 설정합니다. Opus 5.5, Sonnet 5.5, Haiku 5.5, Fable 모델처럼 항상 사고하는 모델에서는 false가 효과가 없습니다. 서드파티 공급자에서는 Claude Code가 사고를 끄는 대신 thinking 매개변수를 생략하므로 적응형 추론 모델은 여전히 사고할 수 있습니다. Anthropic API에서 사고를 끈 상태에서는, Opus 5처럼 해당 조합을 허용하지 않는 것으로 알려진 모델에 Claude Code가 더 높은 수준 대신 effort high를 보냅니다.
  • 범위: Any file
  • 유형: Boolean
    • true: 효과 없음. 사고가 이미 켜져 있습니다
    • false: Claude Code가 모든 세션에서 확장 사고를 끕니다
  • 기본값: 설정되지 않음. 따라서 지원하는 모델에서는 사고가 켜져 있습니다
  • 세션별 재정의: 한 세션에 대해서는 MAX_THINKING_TOKENS가 이 키보다 우선합니다. 0은 false와 동일한 모델 및 공급자 제한 아래에서 사고를 끄고, 양수 값은 이 키가 false여도 사고를 켭니다. 적응형 추론 모델에서는 숫자 자체가 무시됩니다
settings.json

availableModels

메인 세션, 서브에이전트, 스킬, advisor에 사용자가 선택할 수 있는 모델을 제한합니다. 관리형 목록은 /model, --model, 개발자 자신의 파일에 있는 model 키를 제한하며, 목록에 없는 모델은 선택할 수 없습니다. 기본 접두사 매칭에서는 이 키만으로 Default 옵션에 영향을 주지 않으므로, 그러려면 enforceAvailableModels와 함께 사용하세요.
  • 범위: Any file. 조직 전체에 적용하려면 관리형 설정에 배포합니다.
  • 유형: 모델 별칭 또는 ID의 배열
  • 기본값: 설정되지 않음. 따라서 모든 모델을 사용할 수 있습니다
이 예시는 Sonnet 및 Haiku 모델만 선택할 수 있도록 합니다:
settings.json
"claude-opus-5"와 같은 모델 ID 항목은 Opus 5.5처럼 이를 확장하는 이후 버전도 허용합니다. 그러한 버전 중 하나를 차단하려면 deniedModels를 사용하세요. 각 모델 ID 항목이 명시한 버전만 허용하도록 하려면 availableModelsMatch를 사용하세요. 모델 선택 제한을 참조하세요.

availableModelsMatch

availableModels 항목이 모델 ID와 일치하는 방식을 선택합니다. 기본적으로 모델 ID 항목은 이를 확장하는 이후 버전도 허용하므로 "claude-opus-5"는 Opus 5.5를 허용합니다. "exact"를 사용하면 각 모델 ID 항목은 명시한 버전만 허용하므로, 해당 모델의 새 버전은 목록에 추가할 때까지 차단된 상태로 유지됩니다. Claude Code v2.1.283 이상이 필요합니다.
  • 범위: Managed. Claude Code는 사용자, 프로젝트, 로컬 설정과 --settings에 있는 이 키를 경고와 함께 무시합니다
  • 유형: 문자열. 다음 중 하나:
    • "prefix": 모델 ID 항목은 해당 버전과, 다른 세그먼트로 이를 확장하는 모든 모델 ID를 허용합니다
    • "exact": 모델 ID 항목은 해당 버전의 날짜가 포함된 ID를 포함하여 명시한 버전만 허용하므로, "claude-opus-5"는 Opus 5를 허용하지만 claude-opus-5-5는 허용하지 않습니다. "opus"와 같은 계열 별칭은 여전히 계열 전체를 허용하며, best, opusplan, default 항목은 무시됩니다
  • 기본값: "prefix"
이 예시는 Opus 5와 Sonnet 5를 허용하고 둘 다 이후 릴리스는 허용하지 않습니다:
managed-settings.json
"exact"를 사용하면 목록에 모델이나 계열이 하나 이상 명시되어 있을 때마다 Default 옵션도 목록의 모델로 제한됩니다. 특정 모델 또는 버전 차단을 참조하세요.

deniedModels

availableModels 허용 목록의 유무와 관계없이, 그리고 해당 목록이 허용하더라도 특정 모델을 차단합니다. Claude Code는 차단된 모델을 /model 선택기에서 숨기며, availableModels가 적용되는 어디에서도 해당 모델을 선택할 수 없습니다. 특정 모델 또는 버전 차단에서 설명하듯이 Default 옵션을 사용하는 세션도 차단된 모델을 실행하지 않습니다. Claude Code v2.1.283 이상이 필요합니다.
  • 범위: Managed. Claude Code는 사용자, 프로젝트, 로컬 설정과 --settings에 있는 이 키를 경고와 함께 무시합니다
  • 유형: 모델 별칭 또는 ID의 배열
    • "opus"와 같은 계열 별칭은 해당 계열의 모든 모델을 차단합니다
    • "claude-opus-5-5"와 같은 모델 ID는 날짜가 포함된 ID와 공급자별 ID를 포함하여 모든 표기의 해당 버전을 차단합니다
    • "claude-opus-5"처럼 마이너 버전이 없는 모델 ID는 Opus 5.5와 같은 이후 마이너 버전도 차단합니다. Opus 5만 차단하려면 "claude-opus-5-0"을 작성합니다
    • best, opusplan, default 항목은 무시됩니다
  • 기본값: 설정되지 않음. 따라서 차단되는 모델이 없습니다
이 예시는 Opus 및 Sonnet 모델을 허용하고 Opus 5.5를 차단합니다:
managed-settings.json
특정 모델 또는 버전 차단을 참조하세요.

effortLevel

수준을 저장하지 않은 모델에 대한 기본 effort 수준을 설정합니다. 낮은 수준은 간단한 작업에서 더 빠르고 저렴하며, 높은 수준은 복잡한 문제에서 더 깊이 추론합니다. 로컬 머신의 대화형 세션에서 /effort low, medium, high, xhigh를 실행하면 Claude Code는 이 키에 쓰는 대신 활성 모델에 대한 수준을 modelSettings 아래에 저장합니다. v2.1.251 이전에는 /effort가 이 키에 썼습니다. 같은 설정 파일 내에서 Claude Code는 이 키보다 모델의 저장된 수준을 사용합니다. 파일 간 우선순위는 modelSettings에 설명되어 있습니다. 원격 워커에 연결된 세션, -p 실행, Agent SDK에서는 /effort가 해당 세션에만 적용됩니다. 해당 세션에만 적용되는 대화형 선택 항목은 effort 수준 조정에 나열되어 있습니다. /effort가 출력하는 메시지에서 어떤 방식으로 적용되었는지 알려 줍니다.
  • 범위: Any file
  • 유형: 문자열. 다음 중 하나:
    • "low": 가장 적은 추론. 지능에 민감하지 않은 짧고 범위가 정해진 지연 시간 민감 작업용
    • "medium": 어느 정도의 지능을 절충할 수 있는 비용 민감 작업에서 토큰 사용량을 줄입니다
    • "high": 토큰 사용량과 지능의 균형을 맞춥니다
    • "xhigh": 더 많은 토큰을 사용하여 더 깊이 추론합니다
  • 기본값: 설정되지 않음
  • 세션별 재정의: 한 세션에 대해서는 --effort가 이 키보다 우선하며, CLAUDE_CODE_EFFORT_LEVEL은 둘 다보다 우선합니다
settings.json
사용자 설정 파일 ~/.claude/settings.json에서 이 키는 /effort가 모델별로 수준을 저장하기 전에 쓰던 이전 형식이며, Opus 5, Fable 5.1 및 이전 모델처럼 이전에 적용되던 곳에 계속 적용됩니다. Opus 5.5 및 그 이후에 출시된 모델은 이 키를 무시하고 수준을 저장하기 전까지 자체 기본값으로 시작하며, /effort는 해당 수준을 modelSettings 아래에 씁니다. 프로젝트, 로컬, 관리형 설정과 --settings에서는 이 키가 모든 모델에 적용됩니다.

enforceAvailableModels

/model 선택기에는 Default 옵션이 있으며, 이 옵션이 어떤 모델로 해석되는지는 default 모델 설정에 설명되어 있습니다. availableModels 허용 목록은 지정할 수 있는 모델을 제한하지만, 기본 접두사 매칭에서는 계정 유형의 기본값을 다시 매핑하지 않으므로 Default가 여전히 목록 밖의 모델로 해석될 수 있습니다. 이 키는 그 공백을 메웁니다. Claude Code v2.1.175 이상이 필요합니다. 조직에서 관리형 설정을 배포하는 경우 Claude Code는 관리형 소스에서만 이 키를 읽고 다른 파일의 이 키는 무시합니다. 시작 시 모델 검사에 이 키가 어떻게 적용되는지는 Amazon Bedrock 및 Google Cloud의 Agent Platform을 참조하세요.
  • 범위: Any file
  • 유형: Boolean
    • true: Default가 availableModels 밖의 모델로 해석될 경우 Claude Code는 목록에서 처음으로 사용 가능한 모델로 해석합니다
    • false: 이 키는 Default가 해석되는 방식을 바꾸지 않습니다
  • 기본값: false
이 예시는 지정 선택을 Sonnet 및 Haiku 모델로 제한하고 Default가 그중 처음으로 사용 가능한 모델로 해석되도록 합니다:
settings.json
availableModels가 설정되지 않았거나 비어 있으면 이 키는 효과가 없습니다. Default 모델에 허용 목록 적용을 참조하세요. Claude Code v2.1.175 이상이 필요합니다.

fallbackModel

기본 모델이 과부하 상태이거나 사용할 수 없을 때 Claude Code가 순서대로 시도할 백업 모델을 지정합니다. Claude Code는 턴의 나머지 부분 동안 체인에서 다음으로 사용 가능한 모델로 전환하고 알림을 표시합니다. 체인이 없으면 Claude Code는 같은 모델을 재시도한 뒤 서버의 오류를 표시하며, 사용자가 직접 재시도하거나 모델을 전환해야 합니다. 전환하면 폴백 모델에서 프롬프트 캐시가 비어 있는 상태로 한 턴이 진행됩니다. 다음 메시지에서는 다시 기본 모델을 먼저 시도합니다.
  • 범위: Any file
  • 유형: 모델 별칭 또는 ID의 배열. "default"는 기본 모델로 확장됩니다
  • 기본값: 설정되지 않음. 따라서 실패한 요청을 다른 모델로 재시도하지 않습니다
  • 세션별 재정의: 한 세션에 대해서는 --fallback-model이 이 키보다 우선합니다
이 예시는 기본 모델이 실패하면 Sonnet 5를 먼저 시도한 다음 Haiku 4.5를 시도합니다:
settings.json
대부분의 배열 설정과 달리 이 키는 설정 파일 간에 병합되지 않습니다. 이 키를 정의한 우선순위가 가장 높은 파일이 체인 전체를 제공합니다. 프로젝트 파일에서 ["claude-sonnet-5"]를 설정하고 사용자 파일에서 ["claude-haiku-4-5"]를 설정하면 체인은 ["claude-sonnet-5"]뿐입니다. Claude Code는 목록에서 서로 다른 허용 모델을 최대 세 개까지 유지하고 나머지는 무시합니다. 폴백 모델 체인을 참조하세요.

fastMode

사용 가능한 세션에서 빠른 모드를 켭니다. 토큰당 비용이 더 높더라도 속도가 필요한 빠른 반복이나 실시간 디버깅 같은 대화형 작업에 적합합니다. 일반적으로 이 키를 직접 편집하지 않습니다. /fast를 실행하면 ~/.claude/settings.json에 fastMode: true가 기록되고, 다시 실행하여 빠른 모드를 끄면 키가 제거됩니다. 빠른 모드는 Opus 5.5, Opus 5, Opus 4.8에서만 실행됩니다. 다른 모델에서 켜면 Opus로 전환되며, 지원되지 않는 모델로 전환하면 꺼집니다. 빠른 모드가 켜진 상태에서 모델 전환을 참조하세요.
  • 범위: Any file
  • 유형: Boolean
    • true: Claude Code가 사용 가능한 세션에서 빠른 모드를 켭니다
    • false: 빠른 모드가 꺼진 상태로 유지됩니다
  • 기본값: 설정되지 않음. 따라서 빠른 모드가 꺼져 있습니다
  • 세션별 재정의: CLAUDE_CODE_DISABLE_FAST_MODE는 한 세션에 대해 빠른 모드를 끄며, 이 키로 다시 켤 수 없습니다
settings.json

fastModePerSessionOptIn

일반적으로 /fast를 실행하면 fastMode가 사용자 설정에 저장되므로 이후 모든 세션이 시작될 때 빠른 모드가 켜집니다. 이를 막으려면 이 키를 true로 설정합니다. 그러면 저장된 fastMode: true가 더 이상 세션 시작 시 빠른 모드를 켜지 않으며, 각 사용자는 빠른 모드를 원하는 세션마다 /fast를 실행해야 합니다. Claude Code는 파일의 fastMode 키를 그대로 두므로 이 키를 끄면 이전 동작이 복원됩니다. Team 또는 Enterprise 플랜의 Owner는 서버 관리형 설정을 통해 조직 전체에 배포할 수 있습니다. 관리형 설정에서 이 키를 설정하면 대화형 터미널 세션 외부에서는 /fast on이 거부되고 조직에서 빠른 모드를 비활성화했다고 알립니다. 여기에는 비대화형 모드, VS Code 확장, 클라우드 세션이 포함됩니다.
  • 범위: Any file
  • 유형: Boolean
    • true: 저장된 fastMode: true가 더 이상 세션 시작 시 빠른 모드를 켜지 않으므로 각 사용자가 원하는 세션마다 /fast를 실행합니다. 관리형 설정에서 이 키를 설정하지 않는 한 --settings로 전달된 fastMode: true는 해당 세션에 여전히 적용됩니다
    • false: 저장된 fastMode: true가 이후 모든 세션이 시작될 때 빠른 모드를 켭니다
  • 기본값: false
settings.json
세션별 옵트인 요구를 참조하세요.

language

Claude가 기본적으로 영어가 아닌 언어로 응답하도록 합니다. 응답에 대한 고정된 목록은 없습니다. Claude Code는 이 값을 해당 언어로 항상 응답하라는 지시로 Claude에 그대로 전달하므로 Claude가 읽을 수 있는 모든 언어 이름이 작동합니다. Claude Code는 값을 확인하지 않으므로 철자가 틀린 이름은 오류를 발생시키지 않고 작성된 그대로 Claude에 전달됩니다. 같은 값이 음성 받아쓰기의 언어와 자동 생성되는 세션 제목의 언어도 설정하며, 음성 받아쓰기에는 지원되는 받아쓰기 언어의 고정 목록이 있습니다.
  • 범위: Any file
  • 유형: 문자열. "japanese", "spanish", "french"와 같은 모든 언어 이름. Claude Code는 검증하지 않습니다
  • 기본값: 설정되지 않음. 이 경우 세션 제목은 대화 언어를 따릅니다
settings.json

maxEffortLevel

세션이 사용할 수 있는 effort 수준의 상한을 정하고, 그보다 낮은 수준은 계속 사용할 수 있도록 합니다. 더 높은 수준은 상한에서 대신 실행되며, 여기에는 /effort, /model 선택기, --effort, CLAUDE_CODE_EFFORT_LEVEL, 스킬이나 서브에이전트의 effort frontmatter, 모델 자체 기본값에서 온 수준이 포함됩니다. Claude Code가 각 요청 전에 직접 상한을 적용하므로 Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry를 포함한 모든 공급자에서 유지됩니다. Claude Code v2.1.267 이상이 필요합니다.
  • 범위: Any file. 조직 전체에 적용하려면 관리형 설정에 배포합니다. 여러 범위에서 상한을 설정하면 가장 낮은 값이 적용되므로, 한 범위에서 설정한 상한을 다른 범위에서 올릴 수 없습니다
  • 유형: 문자열. "low", "medium", "high", "xhigh", "max" 중 하나. "max" 값은 상한을 설정하지 않습니다
  • 기본값: 설정되지 않음. 따라서 상한이 적용되지 않습니다
  • 모델별 상한: 모델의 modelSettings 항목에 maxEffortLevel을 추가합니다. 해당 항목은 사용자 설정이나 하나의 관리형 소스처럼 둘 다 설정한 설정 소스 내에서만 그 모델에 대해 이 키를 대체합니다. 해당 소스의 상한에서 모델을 제외하려면 그곳에 "max"를 설정합니다. Claude Code는 다른 소스의 상한은 여전히 적용합니다
이 예시는 모든 모델의 상한을 medium으로 정하고 Sonnet 4.6은 제외합니다:
settings.json
조직에서 모델에 대한 effort 제한도 설정한 경우 두 상한 중 낮은 값이 적용됩니다.

model

모든 새 세션이 사용할 모델을 설정하여 매번 /model로 모델을 선택하지 않아도 되도록 합니다. 여기에서 설정해도 세션 중간에 전환하는 것은 막지 않습니다. 관리자가 사용자 선택을 재정의하도록 조직 기본 모델을 설정한 경우, 사용자, 프로젝트, 로컬 설정에서 이 키를 설정하더라도 해당 모델이 사용됩니다.
  • 범위: Any file
  • 유형: 문자열. 모델 별칭 또는 전체 모델 ID
  • 기본값: 설정되지 않음. 따라서 Claude Code는 계정의 기본 모델을 사용합니다
  • 세션별 재정의: --model은 ANTHROPIC_MODEL보다 우선하며, 둘 다 한 세션에 대해서는 관리형 model을 포함하여 이 키보다 우선합니다. availableModels 목록은 여전히 선택에 적용됩니다
settings.json
여기의 값은 ANTHROPIC_DEFAULT_MODEL보다 우선하며, Claude Code는 다른 어떤 것도 모델을 선택하지 않을 때만 ANTHROPIC_DEFAULT_MODEL을 사용합니다.

modelOverrides

Anthropic 모델 ID를 Amazon Bedrock 추론 프로필 ARN과 같은 공급자별 모델 ID에 매핑합니다. 그러면 각 모델 선택기 항목은 공급자 API를 호출할 때 매핑된 값을 사용합니다. 관리자는 Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry에서 거버넌스, 비용 할당 또는 지역 라우팅을 위해 각 모델 버전을 특정 추론 프로필, 버전 이름 또는 배포로 라우팅하는 데 이를 사용합니다.
  • 범위: Any file
  • 유형: 모델 ID를 공급자 모델 ID에 매핑하는 객체
  • 기본값: 설정되지 않음
이 예시는 Opus 4.6에 대한 모든 호출을 지정된 Bedrock 추론 프로필로 라우팅합니다:
settings.json
버전별 모델 ID 재정의를 참조하세요.

modelPicker

/model 선택기가 제공하는 모델을 작성한 순서대로 원하는 레이블로 나열하여, 선택기가 기본 제공 라인업 뒤에 또는 그 대신 조직에서 실행하는 모델을 나열하도록 합니다. 각 행의 model은 그대로 사용되므로 --model이 허용하는 모든 것을 허용합니다. 즉 opus와 같은 별칭, Anthropic 모델 ID, 또는 Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, LLM 게이트웨이용 공급자 형식 ID를 사용할 수 있습니다. Claude Code v2.1.242 이상이 필요합니다.
  • 범위: User or managed. Claude Code는 관리형 설정, --settings, 사용자 설정에서 이 키를 읽고, 복제한 저장소가 선택기의 레이블을 바꿀 수 없도록 프로젝트 및 로컬 설정에서는 무시합니다. 이 세 가지 중 키를 설정한 가장 높은 소스가 라인업 전체를 제공하며, Claude Code는 두 소스의 라인업을 결합하지 않습니다.
  • 유형: 행의 options 배열과 선택적 replaceBuiltInOptions Boolean을 가진 객체
  • 기본값: 설정되지 않음. 따라서 선택기는 기본 제공 라인업을 표시합니다
이 예시는 기본 제공 라인업 뒤에 팀이 알아볼 수 있는 이름으로 두 개의 Bedrock 배포를 추가합니다:
managed-settings.json

modelPicker의 필드

이 키는 두 개의 필드를 받습니다. 하나는 행 자체에 대한 것이고, 다른 하나는 행이 기본 제공 라인업을 대체할지 또는 추가될지에 대한 것입니다. options의 항목은 model 옆에 선택적 behavesAs 문자열도 가질 수 있으며, 이를 위해서는 v2.1.257 이상이 필요합니다. model이 현재 버전보다 새로운 항목에 claude-opus-4-8처럼 현재 Claude Code 버전이 이미 알고 있는 모델의 ID로 설정합니다. 그러면 Claude Code는 해당 모델을 알 수 없는 모델로 취급하는 대신 알려진 모델의 기능과 effort 기본값을 항목에 적용합니다. 항목의 레이블과 Claude Code가 요청에서 보내는 모델 ID는 변경되지 않습니다. replaceBuiltInOptions를 켜면 Claude Code는 다른 모든 행을 숨깁니다. 여기에는 기본 제공 라인업, availableModels 항목에 대해 추가하는 행, 게이트웨이 검색이 찾은 모델, ANTHROPIC_CUSTOM_MODEL_OPTION이 포함됩니다. 끄면 Claude Code는 기본 제공 라인업이 이미 포함하는 나열된 모델을 건너뜁니다. 레이블은 선택기에 표시되는 내용만 바꾸며 Claude Code가 실행하는 모델은 바꾸지 않습니다. availableModels 허용 목록은 이 행들에도 여전히 적용됩니다. 나열된 모델을 허용 목록에 추가하기 전에 병합 동작을 읽어 보세요. 특정 모델 ID는 해당 계열의 와일드카드 항목을 좁힙니다. Claude Code는 선택기를 표시하기 전에 각 행을 세션과 대조하여 확인하기도 합니다:
  • 제거됨: 폐기된 모델이나 조직에 액세스 권한이 없는 모델처럼 Claude Code가 제공할 수 없는 행
  • 회색으로 표시됨: 아직 선택할 수 없는 행으로, 이유와 함께 표시됩니다
  • 남은 행 없음: Claude Code는 평소처럼 허용 목록으로 필터링된 기본 제공 라인업을 유지합니다
Claude Code는 구문 분석할 수 없는 행을 제거하고 나머지는 유지합니다. 손상된 설정 파일 수정을 참조하세요.

modelPricing

정가 대신 조직에서 지불하는 요율로 지출을 보고합니다. 조직에 계약 요율이 있을 때 설정하면 개발자에게 표시되는 금액이 청구서와 일치합니다. Claude Code는 /usage, 상태줄, Agent SDK의 total_cost_usd, --max-budget-usd 제한, OpenTelemetry 비용 지표 및 이벤트에 요율을 적용합니다. 요율은 직접 제공해야 합니다. Claude Code는 계약이나 Claude Console에서 요율을 읽지 않습니다. Claude Code v2.1.242 이상이 필요합니다.
  • 범위: Managed. 서버 관리형 설정, MDM 정책, managed-settings.json 파일 또는 정책 헬퍼를 통해 키를 배포합니다. Claude Code는 사용자, 프로젝트, 로컬 설정, --settings, 그리고 Windows에서는 사용자가 쓸 수 있는 HKCU 레지스트리에 있는 이 키를 무시합니다. 서버 관리형 설정을 사용하면 각 세션은 해당 세션의 설정 가져오기가 설정을 확인할 때까지 정가로 비용을 보고합니다. Claude Code를 임베드하고 CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST를 설정하는 호스트 애플리케이션은 SDK managedSettings 옵션을 통해 자체 요율표를 제공할 수 있으며, Claude Code는 어떤 관리형 소스도 이 키를 설정하지 않을 때만, 그리고 Claude Code v2.1.246 이상에서만 이를 사용합니다.
  • 유형: 선택적 multiplier와 선택적 overrides 맵을 가진 객체
  • 기본값: 설정되지 않음. 따라서 호스트 애플리케이션이 요율표를 제공하지 않는 한 Claude Code는 정가를 보고합니다
일률적인 할인이나 인상에는 multiplier만, 모델별 요율에는 overrides만 설정하거나 둘 다 설정합니다. 이 예시는 Sonnet 4.6의 계약 요율을 설정한 다음 Sonnet 행을 포함한 모든 금액을 15% 줄입니다:
managed-settings.json
모든 금액을 인상하려면 multiplier를 1보다 크게, 최대 10까지 설정합니다. 인상에는 Claude Code v2.1.271 이상이 필요합니다. 이전 버전은 1보다 큰 multiplier를 경고와 함께 무시하고 설정의 나머지 부분은 유지합니다. 요율이 적용되었는지 확인하는 방법을 포함한 단계는 계약 요율로 지출 보고를 참조하세요.

modelPricing의 필드

Claude Code는 빠른 모드 추가 요금이나 미국 전용 추론 요율을 더하지 않고 작성한 그대로 행의 요율을 사용합니다. multiplier도 설정하면 Claude Code는 행의 요율 위에 이를 적용합니다. Claude Code는 구문 분석할 수 없는 요율이 있는 행이나 구문 분석할 수 없는 multiplier를 제거하고 나머지는 유지합니다. 손상된 설정 파일 수정을 참조하세요.

modelPricing 행이 적용되는 모델

Claude Code는 행의 키를 기준으로 행이 적용되는 모델을 결정합니다:
  • 기본 제공 모델의 ID: Claude Code 자체가 기본 제공 모델에 사용하는 키로, claude-sonnet-4-6과 같은 모델 자체 ID이든 Bedrock, Agent Platform, Foundry ID이든 해당됩니다. Claude Code는 해당 모델의 모든 날짜 스냅샷 ID와 공급자별 ID에 행을 적용합니다.
  • 그 밖의 키: 게이트웨이 모델 별칭처럼 기본 제공 모델의 ID가 아닌 키입니다. Claude Code는 해당 ID 하나에만 행을 적용합니다. 모델 ID가 키 중 하나와 정확히 일치하면서 기본 제공 모델의 ID로 키가 지정된 행에도 해당하는 경우, Claude Code는 정확히 일치하는 항목을 사용합니다.
  • Bedrock 애플리케이션 추론 프로필: Claude Code가 modelOverrides 맵이나 bedrock:GetInferenceProfile 조회를 통해 프로필을 라우팅 대상 모델로 확인하면, Claude Code는 해당 모델의 행을 프로필에 적용합니다.

modelSettings

사용하는 각 모델에 대한 effort 수준을 저장합니다. Claude Code v2.1.251 이상이 필요합니다. 로컬 머신의 대화형 세션에서 /effort 또는 /model 선택기의 effort 슬라이더로 low, medium, high, xhigh를 기본값으로 저장하면 Claude Code는 사용 중인 모델 아래 여기에 해당 수준을 기록하므로, 이 키를 직접 편집할 일은 거의 없습니다. VS Code 확장의 모델 선택기에서 이러한 수준 중 하나를 선택하면 Claude Code는 같은 방식으로 여기에 저장합니다. /effort가 해당 세션에만 적용되는 세션은 effortLevel 항목에 나열되어 있습니다. 저장한 수준을 변경하거나 제거하려면 키를 직접 편집합니다. 여기의 모델별 effortLevel은 같은 설정 파일의 최상위 effortLevel보다 우선합니다. 파일 간에는 Claude Code가 각 모델을 개별적으로 해석합니다. 해당 모델에 대한 effortLevel 또는 해당 모델에 적용되는 최상위 effortLevel을 설정한 우선순위가 가장 높은 설정 파일이 결정하므로, 관리형 설정의 effortLevel은 사용자 설정에 저장한 수준보다 우선합니다. 실행 시 --effort처럼 저장된 수준을 재정의할 수 있는 다른 항목은 effort 수준 조정에 나열되어 있습니다. 한 모델의 수준을 설정하는 대신 effort 상한을 정하려면 해당 모델의 항목에 maxEffortLevel 필드를 추가합니다. 이 필드에는 Claude Code v2.1.267 이상이 필요합니다.
  • 범위: Any file
  • 유형: 모델 이름을 다음 필드 중 일부를 가진 객체에 매핑하는 객체:
    • effortLevel: "low", "medium", "high", "xhigh" 중 하나
    • maxEffortLevel: 모델이 실행될 수 있는 가장 높은 effort 수준
    • autoCompactWindow: 100000에서 1000000 사이의 토큰 수 또는 모델에 맞게 조정된 윈도우를 의미하는 "auto". /autocompact가 여기에 저장합니다. 해당 모델에 대해서는 이 값이 같은 설정 파일의 최상위 autoCompactWindow보다 우선합니다. Claude Code v2.1.288 이상이 필요합니다
  • 기본값: 설정되지 않음
Claude Code는 각 항목을 claude-opus-5-5와 같은 모델의 표준 이름 아래에 기록하며, 해당 모델의 별칭, 날짜 접미사가 붙은 ID, [1m] ID, 인식되는 공급자별 ID를 같은 항목에 매칭합니다. 이 예시는 다른 모델은 각자의 저장된 수준이나 기본 수준을 사용하는 동안 Opus 5.5를 high로 유지합니다:
settings.json
사용 중인 모델에 대해 저장된 수준을 지우려면 /effort auto를 실행합니다. Claude Code는 다른 항목과 최상위 effortLevel은 그대로 둡니다.

outputStyle

이름으로 출력 스타일을 선택합니다. 출력 스타일은 Claude의 역할, 어조, 출력 형식을 바꾸는 저장된 지침 세트로, 기본 제공 Explanatory 및 Learning 스타일이나 직접 작성한 스타일이 이에 해당합니다. 세션 중에 이 키를 변경하면 Claude는 다음 메시지부터 새 스타일을 사용합니다. 해당 메시지의 프롬프트 캐싱 비용은 출력 스타일 변경을 참조하세요. v2.1.251 이전에는 /clear를 실행하거나 새 세션을 시작한 후에야 편집 내용이 적용되었습니다.
  • 범위: Any file
  • 유형: 문자열. 기본 제공 또는 사용자 지정 출력 스타일의 이름
  • 기본값: 설정되지 않음. 따라서 Claude Code는 기본 스타일을 사용합니다
이 예시는 작업 사이에 교육적인 인사이트를 추가하는 기본 제공 Explanatory 스타일을 선택합니다:
settings.json

promptCacheTtl

프롬프트 캐시가 메인 대화를 유지하는 기간을 선택합니다. 이 키는 대화형, -p, Agent SDK 턴과 Claude Code가 이와 함께 인라인으로 실행하는 헬퍼에 적용됩니다. 1시간 수명은 더 긴 휴식 동안에도 캐시를 유지하며, API는 5분 수명보다 각 캐시 쓰기에 더 높은 요율을 청구합니다. Claude Code v2.1.242 이상이 필요합니다. 이 예시는 메인 대화를 1시간 수명으로 유지하고 서브에이전트는 5분으로 둡니다:
settings.json
각 수명의 비용은 캐시 수명을 참조하세요.

showThinkingSummaries

대화형 세션에서 Claude의 확장 사고 요약을 확인합니다. Ctrl+O로 사고를 펼칠 때 전체 요약을 보려면 설정합니다. 설정하지 않았거나 false이면 Anthropic API가 thinking 블록을 편집하여 가리고 Claude Code는 접힌 스텁을 표시합니다. 서드파티 공급자는 가리지 않습니다.
  • 범위: Any file
  • 유형: Boolean
    • true: Ctrl+O로 사고를 펼치면 전체 사고 요약이 표시됩니다
    • false: Anthropic API가 thinking 블록을 가리고 Claude Code는 접힌 스텁을 표시합니다
  • 기본값: false
settings.json
가리기는 표시되는 내용만 바꾸며 모델이 생성하는 내용은 바꾸지 않습니다. 사고 비용을 줄이려면 대신 예산을 낮추거나 사고를 비활성화하세요.

subagentPromptCacheTtl

프롬프트 캐시가 Claude Code가 메인 대화 외부에서 보내는 요청을 유지하는 기간을 선택합니다. 이 키는 서브에이전트, 워크플로, 그리고 압축 및 세션 제목과 같은 Claude Code 자체의 백그라운드 및 헬퍼 요청에 적용됩니다. 1시간 수명은 더 긴 휴식 동안에도 캐시를 유지하며, API는 5분 수명보다 각 캐시 쓰기에 더 높은 요율을 청구합니다. Claude Code v2.1.242 이상이 필요합니다. 이 예시는 서브에이전트와 메인 대화 외부의 다른 요청에 1시간 수명을 부여합니다:
settings.json
이 키는 promptCacheTtl이 다루지 않는 요청을 다루므로, Claude Code가 보내는 모든 요청의 수명을 선택하려면 둘 다 설정하세요. 서브에이전트의 캐시가 메인 대화의 캐시와 어떻게 다른지는 서브에이전트와 캐시를 참조하세요.

switchModelsOnFlag

안전 분류기가 요청에 플래그를 지정할 때 수행할 작업을 선택합니다. 폴백 모델로 전환하여 계속하거나, 일시 중지하여 전환과 프롬프트 편집 중에서 선택할 수 있도록 합니다.
  • 범위: Any file. /config에서 Switch models when a message is flagged로 표시되며, 옵션은 Switch automatically와 Ask each time입니다.
  • 유형: Boolean
    • true: Claude Code가 폴백 모델로 전환하고 계속합니다
    • false: 대화형 세션에서는 Claude Code가 일시 중지하여 전환과 프롬프트 편집 중에서 선택할 수 있도록 합니다. -p 실행처럼 대화 상자를 표시할 수 없는 곳에서는 플래그가 지정된 요청이 오류로 종료됩니다
  • 기본값: 설정되지 않음. Claude Code는 자동으로 전환하지만, 대화형 세션에서는 먼저 확인할 수 있습니다
settings.json
전환 전에 확인을 참조하세요.

ultracode

ultracode를 켠 상태로 세션을 시작합니다. 켜면 Claude는 요청을 기다리지 않고 실질적인 각 작업에 대해 워크플로를 계획합니다. Claude는 동적 워크플로가 활성화되어 있고 모델이 xhigh effort를 지원할 때만 워크플로를 계획합니다. 이 키는 세션의 effort 수준을 바꾸지 않습니다. ultracode는 세션이 사용하는 수준에서 실행됩니다. Claude Code는 이 키를 읽기만 하고 쓰지는 않습니다. /effort ultracode는 현재 세션에 대해서만 ultracode를 켭니다.
  • 범위: Any file
  • 유형: Boolean
    • true: 동적 워크플로가 활성화되어 있고 모델이 xhigh를 지원하면 ultracode를 켠 상태로 세션이 시작됩니다
    • false: ultracode를 끈 상태로 세션이 시작됩니다
  • 기본값: 설정되지 않음. 따라서 ultracode가 꺼져 있습니다
  • 세션별 재정의: /effort ultracode는 이 키 없이 한 세션에 대해 ultracode를 켜고, /effort ultracode off는 이 키가 true일 때 한 세션에 대해 ultracode를 끕니다. --effort ultracode 플래그도 xhigh effort로 한 세션에 대해 ultracode를 켭니다
settings.json
세션의 effort 수준은 effortLevel, modelSettings 및 기타 effort 소스에서 결정되며, maxEffortLevel과 같은 effort 상한은 ultracode를 끄지 않고 해당 수준을 낮춥니다. 이 동작과 /effort ultracode off 형식에는 Claude Code v2.1.284 이상이 필요합니다. v2.1.284 이전에는 ultracode: true가 세션을 xhigh effort로 실행했으며, xhigh 미만의 effort 상한이 있으면 ultracode가 꺼진 상태로 유지되었습니다. Agent SDK apply_flag_settings 제어 요청도 이 키를 허용합니다.

권한 설정

Claude가 묻지 않고 수행할 수 있는 작업, 세션이 시작되는 권한 모드, 자동 모드의 분류기가 허용하는 작업을 결정합니다. 규칙 구문 및 권한 모델에 대해서는 권한 구성을 참조하십시오.

allowManagedPermissionRulesOnly

관리형 설정을 권한 규칙의 유일한 설정 소스로 만듭니다. Claude Code는 사용자, 프로젝트, 로컬 및 --settings 파일의 allow, ask, deny 규칙을 무시하고, --allowedTools를 무시하며, 권한 프롬프트에서 항상 허용 선택지를 숨기고, 새 규칙 저장을 중지합니다. 포함 호스트의 상위 설정이 적용되면 Claude Code는 이를 관리형 계층의 일부로 취급합니다. 이는 allow 규칙과 additionalDirectories를 삭제하고, !로 시작하는 패턴의 Read 및 Edit 규칙을 제외한 deny 및 ask 규칙을 유지합니다. 호스트는 이 키를 설정했는지 여부와 관계없이 ! 규칙으로 관리형 규칙에서 경로를 제외할 수 없습니다. --disallowedTools 규칙과 현재 세션의 deny 및 ask 규칙은 Claude Code가 세션 중간에 설정을 다시 로드한 후에도 계속 적용됩니다. 이들은 제한만 하므로 관리형 규칙이 부여하는 것을 확대할 수 없습니다. v2.1.257 이전에는 Claude Code가 첫 번째 설정 다시 로드에서 해당 명령줄 및 세션 규칙을 삭제했습니다. --disallowedTools 또는 세션 규칙의 ! 패턴이 제외할 수 있는 것에 대해서는 Read 및 Edit 규칙을 참조하십시오. 이 키를 설정하면 Claude Code v2.1.282 이상은 다음 소스의 스킬 및 .claude/commands/ 파일에 있는 allowed-tools frontmatter도 무시합니다: 관리형 설정의 스킬과 번들 스킬은 allowed-tools를 유지합니다. 스킬의 disallowed-tools는 계속 적용됩니다. Claude Code가 이 필드를 무시할 때 개발자에게 표시되는 내용은 관리형 권한 규칙만 적용되는 경우를 참조하십시오.
  • 범위: Managed
  • 유형: Boolean
    • true: 관리형 설정이 권한 규칙의 유일한 설정 소스가 됩니다
    • false: Claude Code는 관리형 규칙 외에도 사용자, 프로젝트, 로컬 및 --settings 파일의 권한 규칙을 적용합니다
  • 기본값: 설정되지 않음. Claude Code는 관리형 규칙 외에도 사용자, 프로젝트 및 로컬 설정과 --settings의 권한 규칙을 적용합니다
managed-settings.json
이 키는 MCP 서버 허용 목록을 잠그지 않습니다. 이를 위해서는 allowManagedMcpServersOnly를 설정하십시오. 관리형 전용 설정을 참조하십시오.

autoMode

자동 모드 분류기가 차단하고 허용하는 것에 자신의 규칙을 추가합니다. 이를 사용하여 분류기에 조직이 신뢰하는 저장소, 버킷 및 도메인을 알려주므로 일상적인 내부 작업 차단을 중지합니다. 분류기는 기본 제공 허용 및 거부 규칙과 함께 제공됩니다. 배열에 리터럴 문자열 "$defaults"를 포함하여 해당 위치에서 기본 제공 규칙을 유지하고 주변에 규칙을 추가합니다. 이를 생략하면 규칙으로 대체합니다. 이 예제는 "$defaults"를 통해 기본 제공 soft_deny 규칙을 유지하고 terraform apply를 차단하는 규칙을 하나 더 추가합니다:
settings.json
이러한 파일 중 두 개 이상이 동일한 배열을 설정하면 Claude Code는 항목을 연결합니다. 규칙 형식 및 각 배열이 적용되는 방식에 대해서는 자동 모드 구성을 참조하십시오.

autoMode.classifyAllShell

자동 모드가 활성화되어 있는 동안 모든 Bash 및 PowerShell 명령을 자동 모드 분류기를 통해 보냅니다. 기본적으로 자동 모드는 임의 코드를 실행할 수 있는 허용 규칙만 일시 중단합니다: Bash(*) 같은 도구 전체 및 와일드카드 규칙, 그리고 Bash(python *) 같은 인터프리터 또는 셸 래퍼 접두사입니다. Bash(npm test) 같은 다른 허용 규칙과 일치하는 명령은 명령별 허용 도메인을 포함하지 않는 한 분류기를 건너뜁니다. 건너뛸 때 규칙의 접두사가 예상하지 못한 파괴적 인수가 보이지 않은 채로 통과할 수 있습니다. 이 키를 설정하면 세션의 모든 셸 허용 규칙이 일시 중단되어 분류기가 모든 명령을 봅니다. Claude Code v2.1.193 이상이 필요합니다.
  • 범위: User or managed. autoMode가 읽히는 곳에서 읽습니다.
  • 유형: Boolean
    • true: 자동 모드가 활성화되어 있는 동안 Claude Code는 모든 Bash 및 PowerShell 명령을 분류기를 통해 보내고 셸 허용 규칙을 일시 중단합니다. 자동 모드 외부에서는 규칙이 계속 적용됩니다
    • false: 자동 모드는 Bash(*) 및 Bash(python *) 같은 임의 코드를 실행할 수 있는 허용 규칙만 일시 중단합니다. 다른 허용 규칙과 일치하는 명령은 명령별 허용 도메인을 포함하지 않는 한 분류기를 건너뛰고, 다른 모든 셸 명령은 분류기를 거칩니다
  • 기본값: false
settings.json
분류기를 통해 모든 셸 명령 라우팅을 참조하십시오.

disableAutoMode

Shift+Tab 사이클에서 자동 모드를 제거합니다. --permission-mode auto, 설정 파일 또는 기본 제공 기본값에서 자동 모드로 시작할 수 있는 모든 세션은 대신 default로 시작합니다. 관리자는 조직의 개발자가 자동 모드를 사용하지 못하도록 관리형 설정에서 이를 설정합니다.
  • 범위: Any file. 관리형 설정에서 가장 유용합니다. 여기서 사용자는 이를 재정의할 수 없습니다. permissions 아래에서 permissions.disableAutoMode로도 허용됩니다.
  • 유형: 문자열 "disable"
  • 기본값: 설정되지 않음
settings.json

permissions

Claude가 묻지 않고 사용할 수 있는 도구, 항상 확인을 요청하는 도구, 차단된 도구를 제어하고 세션이 시작되는 권한 모드를 설정합니다. 아래의 모든 permissions.* 키는 이 객체 아래에 중첩됩니다.
  • 범위: Any file
  • 유형: allow, ask, deny, additionalDirectories, blockReadsOutsideWorkingDirectories, defaultMode, disableBypassPermissionsMode 및 disableAutoMode를 포함하는 객체
  • 기본값: 설정되지 않음
이 예제는 npm run 명령을 묻지 않고 승인하고, git push 전에 확인을 요청하고, .env 읽기를 차단하고, 세션을 acceptEdits로 시작합니다:
settings.json
세 규칙 배열은 하나의 구문을 공유합니다. permissions.allow 아래의 권한 규칙 구문을 참조하십시오. 다양한 파일의 권한 규칙이 어떻게 결합되는지에 대해서는 범위 전체에서 권한 규칙이 병합되는 방식을 참조하십시오. 일반적으로 설정 키가 어떻게 결합되는지에 대해서는 설정 가이드의 설정 우선순위를 참조하십시오.

useAutoModeDuringPlan

Claude Code가 플랜 모드에서 셸 명령을 검토하기 위해 자동 모드 분류기를 사용할지 여부를 선택합니다. 기본값 true를 사용하면 자동 모드를 사용할 수 있을 때 계획 중에 분류기가 각 명령을 검토하며, 중요 경로 제거를 제외하고는 프롬프트가 표시되지 않습니다. 기본 제공 읽기 전용 집합 외부의 모든 명령에 대해 권한 프롬프트를 받으려면 false로 설정합니다. /config에 계획 중 자동 모드 사용으로 나타납니다.
  • 범위: User, local, or managed. 저장소는 이를 끌 수 없습니다.
  • 유형: Boolean
    • true: 설정되지 않은 것과 동일합니다. 자동 모드를 사용할 수 있으면 분류기는 계획 중에 각 셸 명령을 검토하고 중요 경로 제거를 제외하고 이에 대해 확인을 요청하지 않습니다. 이러한 파일 중 하나의 false는 여전히 이를 끕니다
    • false: 기본 제공 읽기 전용 집합 외부의 모든 명령에 대해 권한 프롬프트를 받습니다
  • 기본값: true
settings.json

permissions.allow

Claude Code가 묻지 않고 승인하는 도구 사용을 나열합니다. MCP 규칙에서 *는 mcp__github__get_* 같은 mcp__<server>__ 접두사 뒤의 도구 이름에만 나타날 수 있습니다. 서버 이름에는 나타날 수 없습니다.
  • 범위: Any file
  • 유형: 권한 규칙 문자열 배열
  • 기본값: 설정되지 않음
  • 세션별 재정의: --allowedTools는 한 세션에 대해 허용 규칙을 추가하고, 모든 설정 파일의 거부 규칙은 여전히 이름을 지정한 도구를 차단합니다
이 예제는 git diff를 승인하고 Claude Code가 묻지 않고 .zshrc를 읽도록 합니다:
settings.json
Claude Code는 프로젝트의 .claude/settings.json의 allow 규칙을 해당 폴더에 대한 워크스페이스 신뢰 대화상자를 수락한 후에만 적용합니다.

권한 규칙 구문

권한 규칙은 Tool 또는 Tool(specifier) 형식을 따릅니다. Claude Code는 deny 규칙을 먼저 평가한 다음 ask, 그 다음 allow를 평가하고, 첫 번째 일치가 각 규칙이 얼마나 구체적인지에 관계없이 결정합니다. 권한 규칙 평가 순서를 참조하십시오. 각 행은 하나의 규칙 형태와 일치하는 것을 보여줍니다. 와일드카드 동작, Read, Edit, WebFetch, MCP 및 Agent 규칙에 대한 도구별 패턴, Bash 패턴의 보안 제한을 포함한 전체 규칙 구문에 대해서는 권한 규칙 구문을 참조하십시오.

permissions.ask

acceptEdits 또는 bypassPermissions처럼 원래는 승인했을 권한 모드에서도 확인을 요청하는 도구 사용을 나열합니다. dontAsk 모드에서 Claude Code는 확인을 요청하는 대신 일치하는 도구 사용을 거부합니다.
  • 범위: Any file
  • 유형: 권한 규칙 문자열 배열
  • 기본값: 설정되지 않음
settings.json

permissions.deny

Claude Code가 차단하는 도구 사용을 나열합니다. API 키, 비밀 또는 환경 값을 보유하는 파일에 사용합니다: Claude Code는 파일 검색 및 검색 결과에서 일치하는 파일을 제외하고, 이들의 읽기를 거부하고, 일치하는 경로에서 Edit 및 Write 도구를 차단합니다. Read 및 Edit 거부 규칙은 Claude의 기본 제공 파일 도구, Claude Code가 cat, head, tail, sed 및 tee 같은 Bash에서 인식하는 파일 명령, 그리고 > file 및 < file 같은 Bash 리디렉션의 대상에 적용됩니다. 이들은 grep -r pattern . 같이 파일을 명명하지 않고 파일을 읽는 명령이나 임의 하위 프로세스에는 적용되지 않으므로 OS 수준 적용을 위해 샌드박스를 활성화하십시오.
  • 범위: Any file
  • 유형: 권한 규칙 문자열 배열
  • 기본값: 설정되지 않음
  • 세션별 재정의: --disallowedTools는 이 키와 함께 한 세션에 대해 거부 규칙을 추가합니다
이 예제는 .env 파일, secrets 디렉터리 및 자격 증명 파일의 읽기를 거부하고 curl 명령을 차단합니다:
settings.json
도구 이름은 glob 패턴을 허용하므로 "*"는 모든 도구를 거부하고 "mcp__*"는 모든 MCP 도구를 거부합니다. Claude Code는 다른 도구가 여전히 Claude에 사용 가능한 한 EndConversation 도구에 대한 거부 규칙을 무시합니다. Bash 거부 규칙은 Claude가 작성한 명령과 일치하므로 Bash(curl *)는 /usr/bin/curl 또는 sh -c 'curl …'를 중지하지 않습니다. Bash 규칙이 일치하지 않는 것을 참조하십시오. 이 키는 deprecated된 ignorePatterns 구성을 대체합니다.

permissions.additionalDirectories

시작한 디렉터리 외부의 디렉터리에 대한 Claude 파일 액세스를 추가 작업 디렉터리로 제공합니다. 대부분의 .claude/ 구성은 이러한 디렉터리에서 검색되지 않습니다.
  • 범위: Any file. 단, 프로젝트 및 로컬 항목이 부여하는 샌드박스 쓰기 액세스에는 제한이 있습니다
  • 유형: 디렉터리 경로 배열
  • 기본값: 설정되지 않음
  • 세션별 재정의: --add-dir 및 /add-dir은 이 키와 함께 한 세션에 대해 디렉터리를 추가합니다
settings.json
allow 규칙과 마찬가지로 프로젝트의 .claude/settings.json의 항목은 해당 폴더에 대한 워크스페이스 신뢰 대화상자를 수락한 후에만 적용됩니다.

permissions.blockReadsOutsideWorkingDirectories

bypassPermissions를 포함한 모든 권한 모드에서 Claude의 파일 도구가 작업 디렉터리 외부의 읽기를 거부하도록 합니다. Claude Code는 해당 경로에서 Read, Grep, Glob 및 LSP 호출을 거부하고, 사용자에게 /add-dir로 디렉터리를 추가하도록 요청하라고 Claude에 알립니다. Claude Code 자체가 필요한 파일은 계속 읽을 수 있습니다. 예를 들어 ~/.claude/ 아래의 스킬, 플러그인, 규칙, 에이전트, 명령 및 CLAUDE.md 메모리 파일입니다. Claude Code v2.1.257 이상이 필요합니다. Claude Code는 셸 명령을 같은 방식으로 거부하지 않습니다: 셸 파서가 추적할 수 없는 Bash 명령(예: 두 번 이상 디렉터리를 변경하거나 서브셸을 실행하는 명령)은 자동 모드 및 bypassPermissions 모드에서도 확인을 요청합니다. 명령이 작업 디렉터리 외부의 경로를 명명하지 않아도 프롬프트가 나타납니다. 이 프롬프트는 명령이 샌드박스에서 실행되고 샌드박스가 블록을 적용할 때는 적용되지 않습니다. Claude Code는 또한 작업 디렉터리 외부의 첫 번째 읽기 전에 표시되는 자동 모드의 프롬프트에서 이러한 읽기를 차단하도록 선택할 때 여기에 true를 작성합니다.
  • 범위: Any file. 모든 파일의 true가 적용되므로 저장소는 자신에 대해 블록을 켤 수 있지만 사용자가 설정한 블록을 해제할 수 없습니다.
  • 유형: Boolean
    • true: Claude의 파일 도구가 작업 디렉터리 외부의 읽기를 거부합니다
    • false: 설정되지 않은 것과 동일합니다. 다른 파일이 true를 설정하면 블록은 여전히 적용됩니다
  • 기본값: 설정되지 않음. 작업 디렉터리 외부의 읽기는 권한 모드를 따릅니다
settings.json
--add-dir, /add-dir 또는 사용자 또는 관리형 설정의 additionalDirectories로 추가한 디렉터리는 블록의 작업 디렉터리로 계산됩니다. 저장소 설정에만 추가된 디렉터리는 계산되지 않습니다: .claude/settings.json의 디렉터리, 그리고 git이 파일을 추적되지 않은 것으로 보고하지 않는 한 .claude/settings.local.json의 디렉터리입니다. git 저장소가 아닌 디렉터리에서 또는 git이 파일을 추적할 때 Claude Code는 .claude/settings.local.json을 저장소 설정으로 취급하므로 읽을 수 있게 유지하려는 디렉터리는 대신 사용자 설정에 넣으십시오. autoMemoryDirectory가 프로젝트의 .claude/settings.json에서 오거나 저장소 제공으로 취급되는 .claude/settings.local.json에서 올 때 Claude Code는 해당 디렉터리에서 자동 메모리를 로드하지 않고 이를 저장하지 않습니다. 블록을 해제하려면 이를 설정하는 모든 설정 파일에서 키를 제거한 다음 새 세션을 시작하십시오.

블록 아래의 샌드박스된 명령

샌드박싱이 켜져 있으면 블록은 샌드박스된 명령에도 적용됩니다. Claude Code는 홈 디렉터리 및 사용자 파일을 보유하는 다른 루트에 대한 읽기 액세스를 거부합니다: /Users, /home, /root, /Volumes, /mnt, /media, /run/media 및 /srv. 그런 다음 작업 디렉터리, Claude Code가 세션에서 생성하는 워크트리, 세션 임시 디렉터리 및 명령이 필요한 ~/.claude의 부분(예: 스킬 및 플러그인)을 다시 엽니다. 블록이 적용되는 동안 저장소 설정의 allowRead 및 allowWrite 항목은 계산되지 않습니다. 세션의 작업 디렉터리가 Claude Code가 세션 중간에 들어간 것을 포함한 연결된 git worktree일 때 저장소의 공통 .git 디렉터리는 샌드박스된 명령에 대해 읽을 수 있고 쓸 수 있으므로 git이 거기서 계속 작동합니다. 이러한 경우에는 블록이 샌드박스된 명령에 도달하지 않는 반면 Claude의 파일 도구는 계속 적용합니다: 블록 아래에서 Claude Code는 git이 ID 및 설정을 유지하도록 샌드박스된 명령에 전역 git 설정 파일을 다시 엽니다:
  • ~/.gitconfig
  • $XDG_CONFIG_HOME/git 아래의 config, ignore 및 attributes 파일. 기본값은 ~/.config/git입니다
  • 전역 git 구성이 [include], [includeIf], core.excludesFile 또는 core.attributesFile을 통해 명명하는 파일
Claude Code는 각 파일을 별도로 판단합니다. 파일이 샌드박스된 명령이 직접 또는 심볼릭 링크를 통해 쓸 수 있는 곳에 있으면 Claude Code는 해당 파일이 명명하는 파일을 다시 열지 않습니다. Linux 및 WSL2에서 심볼릭 링크인 설정 파일은 자신의 경로에서 읽을 수 없게 유지될 수 있으며 그러면 git은 해당 파일 없이 실행됩니다. ~/.git-credentials 및 $XDG_CONFIG_HOME/git/credentials는 차단된 상태로 유지됩니다. 다시 열린 파일이 http.extraHeader 토큰 같은 비밀을 보유하면 해당 경로를 sandbox.filesystem.denyRead에 추가하십시오. 파일을 포함하는 denyRead 항목은 항상 이 다시 열기보다 우선합니다.

permissions.defaultMode

새 세션이 시작되는 권한 모드를 설정합니다. 이를 설정하지 않으면 세션은 사용 환경에 대한 기본 제공 기본값으로 시작합니다.
  • 범위: Any file. auto 및 bypassPermissions는 프로젝트 또는 로컬 설정에서 적용되지 않으므로 대신 ~/.claude/settings.json에서 설정합니다. v2.1.257 이전에는 bypassPermissions가 모든 파일에서 적용되었습니다. VS Code 확장이 시작하는 대화의 경우 Claude Code는 사용자, 관리형 및 --settings 값만 읽습니다.
  • 유형: 문자열, 다음 중 하나:
    • "default": Claude Code는 묻지 않고 읽기만 실행합니다
    • "acceptEdits": Claude Code는 또한 파일 편집 및 mkdir 및 mv 같은 일반적인 파일 시스템 명령을 묻지 않고 실행합니다
    • "plan": Claude Code는 읽고 계획하지만 계획을 승인할 때까지 편집을 차단합니다
    • "auto": Claude Code는 일상적인 프롬프트 없이 실행됩니다. 셸 명령 및 네트워크 요청 같은 작업이 실행되기 전에 백그라운드 분류기가 해당 작업이 사용자의 요청과 일치하는지 확인합니다
    • "dontAsk": Claude Code는 원래 확인을 요청했을 모든 호출을 자동으로 거부합니다. 단, 설치한 mod는 여전히 이러한 호출 중 일부를 승인할 수 있습니다. 작업 디렉터리 내부의 파일 읽기, 승인이 필요 없는 다른 작업 및 사전 승인된 도구는 여전히 실행됩니다. 단, 네트워크 경로에서의 읽기는 제외됩니다
    • "bypassPermissions": Claude Code는 묻지 않고 모든 것을 실행합니다
    • "manual": "default"의 별칭입니다
  • 기본값: 설정되지 않음
  • 세션별 재정의: --permission-mode 및 bypassPermissions에 대한 동등한 --dangerously-skip-permissions는 한 세션에 대해 이 키보다 우선합니다
settings.json
권한 규칙은 모든 모드 위에 계층화됩니다: deny 규칙은 bypassPermissions를 포함한 모든 모드에서 차단합니다. 권한 모드를 참조하십시오. 클라우드 세션에서 Claude Code는 이 키에서 acceptEdits, plan, default 및 auto만 준수합니다. VS Code 확장이 시작하는 대화의 경우 시작 권한 모드에 대해 확장이 읽는 설정을 참조하십시오.

permissions.disableBypassPermissionsMode

누구도 bypassPermissions 모드에 들어가지 못하도록 방지합니다. Claude Code는 --dangerously-skip-permissions 플래그를 거부하고 에이전트 정의의 permissionMode: bypassPermissions를 무시하므로 서브에이전트는 상위 세션의 권한 모드로 실행됩니다.
  • 범위: Any file. 일반적으로 조직 정책을 적용하기 위해 관리형 설정에서 설정됩니다.
  • 유형: 문자열 "disable"
  • 기본값: 설정되지 않음
  • 세션별 재정의: 이 키는 --dangerously-skip-permissions보다 우선하며, 키가 설정되어 있는 동안 Claude Code는 이를 거부합니다
settings.json
v2.1.223 이전에는 Claude Code가 바이패스가 비활성화된 상태에서도 frontmatter 권한 모드를 적용했습니다.

skipAutoPermissionPrompt

자신의 설정 또는 모드 선택기를 통해 자동 모드에 직접 들어갈 때 Claude Code가 표시하는 자동 모드를 설명하는 일회성 공지를 건너뜁니다. 기본 제공 기본값이 세션을 자동 모드로 시작할 때가 아닙니다. Claude Code는 해당 공지를 한 번 표시한 다음 표시되었음을 기록하므로 이 키는 공지가 아직 나타나지 않은 곳에서만 중요합니다.
  • 범위: User or managed. 저장소는 이를 설정할 수 없습니다.
  • 유형: Boolean
    • true: Claude Code는 공지를 건너뜁니다
    • false: 설정되지 않은 것과 동일합니다. 이러한 파일 중 하나가 true를 설정하지 않으면 공지가 한 번 나타납니다
  • 기본값: 설정되지 않음. 공지가 한 번 나타납니다
settings.json

skipDangerousModePermissionPrompt

--dangerously-skip-permissions 또는 defaultMode: "bypassPermissions"로 인해 세션이 bypassPermissions 모드에 들어가기 전에 Claude Code가 표시하는 확인 대화상자를 건너뜁니다. 해당 대화상자를 한 번 수락하면 Claude Code는 사용자 설정의 이 키에 true를 작성합니다.
  • 범위: User, local, or managed. 신뢰할 수 없는 저장소는 대화상자를 건너뛸 수 없습니다.
  • 유형: Boolean
    • true: Claude Code는 세션이 bypassPermissions 모드에 들어가기 전에 확인 대화상자를 건너뜁니다
    • false: 설정되지 않은 것과 동일합니다. 이러한 파일 중 하나가 true를 설정하지 않으면 대화상자가 나타납니다
  • 기본값: 설정되지 않음. 대화상자가 나타납니다
settings.json

샌드박스 설정

Claude가 실행하는 명령을 파일시스템, 네트워크, 자격 증명으로부터 격리합니다. 샌드박싱 작동 방식 및 플랫폼 요구사항은 샌드박싱을 참조하십시오.

sandbox

샌드박싱을 사용하여 Claude가 실행하는 Bash 명령을 파일시스템 및 네트워크로부터 격리합니다. enabled로 샌드박스를 켜고, filesystem, network, credentials 하위 객체로 샌드박스된 명령이 접근할 수 있는 범위를 좁히거나 넓힙니다. 샌드박스는 macOS, Linux, WSL2에서 실행됩니다.
  • 범위: 모든 파일
  • 유형: enabled, failIfUnavailable, autoAllowBashIfSandboxed, excludedCommands, allowUnsandboxedCommands, enableWeakerNestedSandbox, enableWeakerNetworkIsolation, allowAppleEvents, bwrapPath, socatPath, ignoreViolations, ripgrep을 포함하는 객체이며, filesystem, network, credentials 객체도 포함합니다.
  • 기본값: 설정되지 않음. Claude Code는 샌드박스 없이 명령을 실행합니다.
다음은 샌드박스를 켜고, 샌드박스된 명령에 대한 권한 프롬프트를 건너뛰고, docker를 샌드박스 외부에서 실행하고, 두 개의 추가 쓰기 경로를 열고, AWS 자격 증명 파일을 숨기고, GitHub 및 npm을 미리 허용합니다:
settings.json
관리형 설정이 enabled 또는 failIfUnavailable과 같은 Boolean 키를 설정하면, 해당 값은 개발자가 설정한 모든 것을 재정의합니다. Claude Code는 세션이 로드하는 설정 범위 전체에서 배열 키를 병합하므로, 개발자는 항목을 추가할 수 있습니다. 관리형 전용 잠금은 개발자가 정책을 확대하지 못하도록 유지를 참조하십시오. 조직에 샌드박스를 요구하려면 관리형 설정으로 샌드박싱 적용을 참조하십시오.

sandbox.enabled

Bash 명령에 대해 샌드박싱을 켭니다. /sandbox 패널에서 모드를 선택하면, Claude Code는 현재 프로젝트의 .claude/settings.local.json에 이 키를 씁니다. 모든 프로젝트를 샌드박스하려면 ~/.claude/settings.json에 설정하십시오.
settings.json
Linux 및 WSL2에서 샌드박스는 bubblewrap 및 socat이 필요합니다. Linux 및 WSL2 설정을 참조하십시오. 샌드박스를 시작할 수 없을 때, failIfUnavailable도 설정하지 않았다면 Claude Code는 명령을 샌드박스 없이 실행합니다.

sandbox.failIfUnavailable

sandbox.enabled가 true이지만 의존성이 누락되었거나 플랫폼이 지원되지 않아 샌드박스를 시작할 수 없을 때 Claude Code가 시작 시 오류로 종료되도록 합니다. 이 키가 없으면 Claude Code는 명령을 샌드박스 없이 실행합니다. 샌드박싱을 보안 관문으로 요구하는 관리형 배포에서 이 설정을 사용할 수 있습니다. 샌드박스가 지원하지 않는 플랫폼에서는 이 키가 켜져 있으면 Claude Code가 시작되지 않습니다. 관리형 설정으로 샌드박싱 적용을 참조하십시오.
  • 범위: 모든 파일, 프로젝트 및 로컬 설정에 대한 제한 있음
  • 유형: Boolean
    • true: sandbox.enabled가 true이지만 샌드박스를 시작할 수 없을 때 Claude Code는 시작 시 오류로 종료됩니다.
    • false: 샌드박스를 시작할 수 없을 때 Claude Code는 명령을 샌드박스 없이 실행합니다.
  • 기본값: false
다음은 모든 관리 대상 머신이 명령을 샌드박스하거나 시작을 거부하도록 합니다:
managed-settings.json
관리형 설정으로 샌드박싱 적용을 참조하십시오.

sandbox.autoAllowBashIfSandboxed

Claude Code가 권한 프롬프트 없이 샌드박스된 Bash 명령을 실행하도록 합니다. 샌드박스에서 실행할 수 없는 명령은 여전히 일반 권한 흐름을 거치며, deny 규칙 및 Bash(git push *)와 같은 콘텐츠 범위 ask 규칙은 여전히 적용됩니다. 단순 Bash ask 규칙은 샌드박스된 명령에 대해 건너뜁니다. 이를 false로 설정하여 샌드박스된 명령도 일반 권한 흐름을 거치도록 하면, /sandbox 모드 탭에서 이를 일반 권한 모드라고 부릅니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code는 자동 허용 모드에서 설명하는 경우를 제외하고 권한 프롬프트 없이 샌드박스된 Bash 명령을 실행합니다. CLAUDE_CODE_SUBPROCESS_ENV_SCRUB는 자동 허용을 끕니다.
    • false: 샌드박스된 명령은 일반 권한 흐름을 거치므로, 허용 규칙 및 권한 모드가 결정합니다. /sandbox 모드 탭에서 이를 일반 권한 모드라고 부릅니다.
  • 기본값: true
다음은 샌드박스를 켜고 샌드박스된 명령을 일반 권한 흐름을 거치도록 합니다:
settings.json
자동 허용 모드가 여전히 확인을 요청하는 경우와 플랜 모드에서의 동작은 자동 허용 모드를 참조하십시오.

sandbox.excludedCommands

Claude Code가 샌드박스 외부에서 실행하는 명령(예: 샌드박스에서 작동하지 않는 도구)을 지정합니다. 각 항목은 Bash(...) 권한 규칙의 콘텐츠와 동일한 구문을 사용합니다: 정확한 명령, docker *와 같은 접두사, 또는 와일드카드 패턴입니다. 와일드카드가 없는 패턴은 정확히 일치하는 경우에만 해당하므로, docker는 인수가 없는 docker에만 일치합니다. 항목은 Bash 호출에 포함된 모든 명령을 포함할 때만 해당 호출을 샌드박스 외부로 꺼내며, 일부 호출 형태는 그렇더라도 샌드박스된 상태로 유지됩니다. docker * 항목만으로는 npm ci && docker build .를 샌드박스 외부로 꺼내지 않습니다.
settings.json
Claude Code는 Bash 호출이 다음과 같은 형태 중 하나를 가질 때 해당 호출을 샌드박스된 상태로 유지합니다(이 외에도 있습니다):
  • sudo, eval, 또는 xargs로 시작하는 명령
  • 호출의 어디든 나타나는 cd, pushd, 또는 popd
  • 명령 대체, 하위 셸, 또는 if 또는 for와 같은 제어 흐름 블록
  • docker build . > build.log와 같은 리다이렉션(2>&1처럼 파일 디스크립터를 복제만 하는 것은 제외)
  • 변수에서 오는 명령 이름
  • 경로 인수가 절대 경로이거나, ~로 시작하거나, .. 세그먼트를 포함하는 git clone, git init, git worktree add, git worktree move, 또는 git bundle create
예를 들어, cd build && docker compose up은 docker * 항목 아래에서 샌드박스된 상태로 유지되며, cd 항목을 추가해도 변경되지 않습니다. git * 항목 아래에서 git clone <url> vendor/lib는 샌드박스 외부에서 실행되지만, git clone <url> ~/tools는 샌드박스된 상태로 유지됩니다. 클론은 대상 경로가 가리키는 곳이 어디든 실행 파일일 수도 있는 파일 트리 전체를 씁니다. 제외된 명령은 여전히 일반 권한 흐름을 거칩니다. 제외는 편의 기능이지 보안 경계가 아닙니다. 도구가 특정 위치에만 쓰기를 필요로 할 때는 filesystem.allowWrite를 사용하면 샌드박스된 상태를 유지할 수 있습니다. 샌드박스가 관리자 필수가 아닌 한, 세션이 로드하는 설정 범위의 항목은 하나의 목록으로 결합됩니다. 관리자 필수인 동안에는 Claude Code가 .claude/settings.json 및 .claude/settings.local.json의 항목을 무시하므로, 복제된 저장소가 명령을 샌드박스 외부로 꺼낼 수 없습니다. 관리형 설정, --settings, ~/.claude/settings.json의 항목은 여전히 적용되며, 이 목록에 대한 관리형 전용 잠금은 없습니다.

sandbox.allowUnsandboxedCommands

샌드박스가 명령을 차단한 후 Claude가 dangerouslyDisableSandbox 매개변수를 사용하여 샌드박스 외부에서 명령을 재시도하도록 합니다. false이면 Claude Code는 해당 매개변수를 무시합니다. 그러면 샌드박스가 실행 중인 동안 Claude가 실행하는 명령은 excludedCommands 항목과 일치하지 않는 한 샌드박스됩니다. /sandbox 재정의 탭은 해당 상태를 엄격한 샌드박스 모드로 표시합니다. 관리형 설정의 false는 해당 설정이 적용되는 개발자에 대해 엄격한 샌드박스 모드를 켭니다.
  • 범위: 모든 파일, 프로젝트 및 로컬 설정에 대한 제한 있음
  • 유형: Boolean
    • true: 샌드박스가 명령을 차단한 후 Claude는 dangerouslyDisableSandbox 매개변수를 사용하여 샌드박스 외부에서 명령을 재시도할 수 있습니다.
    • false: Claude Code는 해당 매개변수를 무시하므로, 샌드박스가 실행 중인 동안 Claude가 실행하는 명령은 excludedCommands 항목과 일치하지 않는 한 샌드박스됩니다.
  • 기본값: true
다음은 관리형 설정이 적용되는 모든 사람에 대해 엄격한 샌드박스 모드를 적용합니다:
managed-settings.json
관리형 설정 또는 --settings의 false는 샌드박스를 관리자 필수로도 만듭니다. 사용자 설정의 false는 프로젝트의 true보다 우선하지만 샌드박스를 관리자 필수로 만들지는 않습니다. 프로젝트 값보다 우선하려면 Claude Code v2.1.285 이상이 필요합니다. 샌드박스 없는 재시도를 누가 승인하는지는 권한 모드와 허용 규칙에 따라 다릅니다. 샌드박스 없는 재시도 탈출 해치를 참조하십시오. ! 셸 모드 프롬프트에서 직접 입력한 명령이 언제 샌드박스에서 실행되는지 확인하려면 엄격한 샌드박스 모드를 참조하십시오.

sandbox.filesystem

샌드박스된 명령이 읽고 쓸 수 있는 경로를 제어합니다. 기본적으로 작업 디렉터리, 사용자별 임시 디렉터리, --add-dir, /add-dir 또는 permissions.additionalDirectories로 추가한 디렉터리에 쓸 수 있으며, 자격 증명 파일을 포함한 파일시스템의 나머지 부분을 읽을 수 있습니다. 네 개의 경로 목록으로 범위를 좁히거나 넓히거나, disabled로 파일시스템 계층을 끕니다. 파일시스템 격리에서 기본 경계를 참조하십시오.
  • 범위: 모든 파일
  • 유형: allowWrite, denyWrite, denyRead, allowRead 배열을 포함하는 객체이며, allowManagedReadPathsOnly 및 disabled Boolean도 포함합니다.
  • 기본값: 설정되지 않음. 기본 읽기 및 쓰기 경계가 적용됩니다.
다음은 샌드박스된 명령이 빌드 디렉터리 및 kubeconfig에 쓸 수 있도록 하고 AWS 자격 증명 파일을 숨깁니다:
settings.json
Claude Code는 OS 샌드박스 경계에서 이러한 목록을 적용하므로, kubectl, terraform, npm과 같이 샌드박스된 명령이 시작하는 모든 하위 프로세스에 적용됩니다. Claude Code는 권한 규칙을 동일한 목록에 추가합니다: Edit 허용 및 거부 규칙을 allowWrite 및 denyWrite에, Read 거부 규칙을 denyRead에, WebFetch(domain:...) 허용 및 거부 규칙을 network 도메인 목록에 추가합니다. 잠금이 적용되지 않는 한, Claude Code는 세션이 로드하는 설정 파일 전체에서 이러한 목록을 병합합니다. allowManagedReadPathsOnly는 allowRead를 관리형 설정의 항목으로만 제한하며, allowManagedDomainsOnly는 허용된 도메인에 대해 동일하게 수행합니다. 저장소 잠금은 저장소 설정 파일의 항목을 제외합니다. 샌드박싱 구성은 --setting-sources로 제외하는 소스를 다룹니다. 세션 중에 목록을 편집하면, Claude Code는 실행 중인 세션에 변경사항을 적용합니다.

샌드박스 경로 접두사

allowWrite, denyWrite, denyRead, allowRead, credentials.files의 경로는 접두사로 확인됩니다: 절대 경로의 //path 접두사도 작동합니다. 프로젝트 상대 확인을 기대하면서 단일 슬래시 /path를 사용하는 경우, ./path로 전환하십시오. 이 구문은 절대 경로에 //path를 사용하고 프로젝트 상대 경로에 /path를 사용하는 Read 및 Edit 권한 규칙과 다릅니다. 샌드박스 파일시스템 경로는 표준 규칙을 사용하므로 /tmp/build는 절대 경로입니다. Claude Code는 디렉터리 경로에서 후행 슬래시를 제거하므로, ~/.aws 및 ~/.aws/는 동일한 디렉터리와 일치합니다. v2.1.224 이전에는 Claude Code가 후행 슬래시를 샌드박스에 전달했으며, Claude는 여전히 후행 슬래시로 작성된 denyRead 또는 denyWrite 항목 아래의 경로를 읽거나 쓸 수 있었습니다. Claude Code는 또한 후행 /**를 제거하므로, ~/build/** 및 ~/build는 동일한 디렉터리를 다룹니다. *와 같은 와일드카드가 작동하는지 여부는 항목이 있는 목록과 플랫폼에 따라 다릅니다:
  • allowWrite 및 denyWrite: macOS에서는 와일드카드가 작동합니다. Linux 및 WSL2에서는 샌드박스가 구체적인 경로를 마운트하므로, Claude Code는 후행 /**가 제거된 후 *, ? 또는 [를 포함하는 항목을 건너뛰며, 해당 항목은 효과가 없습니다. Claude Code는 Edit 권한 규칙의 경로를 이러한 목록에 추가하므로, 동일한 제한이 적용되며, /sandbox의 구성 탭은 와일드카드를 포함하는 Edit 및 Read 권한 규칙에 대해 경고합니다.
  • denyRead 및 allowRead: 모든 플랫폼에서 와일드카드가 작동합니다. Linux 및 WSL2에서는 Claude Code가 읽기 항목을 일치하는 구체적인 경로로 확장하며, 쓰기 목록에 대해서는 이를 수행하지 않습니다.
중괄호는 이름에서 일반 문자로 일치하므로, ~/data/{keys,tokens}는 두 가지 대안이 아니라 이름이 문자 그대로 {keys,tokens}인 디렉터리를 다룹니다. ~/data/keys와 ~/data/tokens를 다루려면 각각을 별도의 항목으로 추가하십시오.

sandbox.filesystem.allowWrite

작업 디렉터리, 사용자별 임시 디렉터리, --add-dir, /add-dir 또는 permissions.additionalDirectories로 추가한 디렉터리 외에 샌드박스된 명령이 쓸 수 있는 경로를 추가합니다. kubectl 또는 빌드 도구와 같은 하위 프로세스가 프로젝트 외부에 쓰기를 필요로 할 때 사용하십시오. 다음은 빌드가 /tmp/build 아래에 쓸 수 있도록 하고 kubectl이 kubeconfig를 업데이트하도록 합니다:
settings.json
Claude Code는 세션이 로드하는 설정 범위 전체에서 allowWrite 항목과 Edit(...) 허용 권한 규칙의 경로를 병합하며, permissions.blockReadsOutsideWorkingDirectories가 켜져 있는 동안 저장소 설정의 항목을 제외합니다. 저장소 잠금도 저장소의 항목을 제외할 수 있습니다. allowWrite 항목은 보호된 경로를 해제할 수 없습니다.

sandbox.filesystem.denyWrite

샌드박스된 명령이 특정 경로(다른 방식으로 쓰기 가능한 디렉터리 내의 경로 포함)에 쓰는 것을 차단합니다. 다음은 샌드박스된 명령이 시스템 구성을 변경하거나 바이너리를 설치하는 것을 방지합니다:
settings.json
Claude Code는 세션이 로드하는 모든 설정 범위에서 항목을 병합하고 Edit(...) 거부 권한 규칙의 경로를 추가합니다.

sandbox.filesystem.denyRead

샌드박스된 명령이 특정 경로(예: 기본 읽기 정책이 노출할 자격 증명 파일)를 읽는 것을 차단합니다. 자격 증명 파일을 보호하고 샌드박스 프록시를 통해 사용 가능하게 유지하려면 대신 sandbox.credentials를 참조하십시오.
settings.json
Claude Code는 세션이 로드하는 모든 설정 범위에서 항목을 병합하고 Read(...) 거부 권한 규칙의 경로를 추가합니다. filesystem.disabled가 true이면, Claude Code는 이러한 항목을 적용하지 않습니다.

sandbox.filesystem.allowRead

denyRead가 차단하는 영역 내의 특정 경로에 대해 읽기를 다시 열어서 작업 공간 전용 읽기 액세스를 구축합니다. 정확한 또는 와일드카드 denyRead 항목은 더 광범위한 allowRead 내에서 차단된 상태로 유지되며, 겹침 표에서 보여줍니다. 와일드카드 denyRead 항목(예: ~/**/.env)이 디렉터리와 일치할 때, Claude Code는 해당 내용의 읽기도 차단합니다. v2.1.236 이전의 macOS에서는 Claude Code가 더 광범위한 allowRead 항목이 적용되는 곳에서 와일드카드 denyRead 항목이 일치하는 경로를 다시 열었으며, 일치하는 디렉터리의 내용을 읽을 수 있게 남겨두었습니다. 다음은 프로젝트 자체를 제외한 홈 디렉터리의 읽기를 차단합니다:
settings.json
Claude Code는 프로젝트 설정에서 . 항목을 프로젝트 루트로, 사용자 설정에서 ~/.claude로 확인합니다. Claude Code는 allowManagedReadPathsOnly가 설정되지 않으면 세션이 로드하는 설정 파일 전체에서 항목을 병합하며, permissions.blockReadsOutsideWorkingDirectories가 켜져 있는 동안 저장소 설정의 항목을 제외합니다. 저장소 잠금도 저장소의 항목을 제외할 수 있습니다.

sandbox.filesystem.allowManagedReadPathsOnly

관리형 설정에서 오는 allowRead 항목만 인정하므로, 개발자가 조직이 차단한 경로에 대한 읽기 액세스를 다시 열 수 없습니다. Claude Code는 여전히 세션이 로드하는 모든 설정 범위에서 denyRead 항목을 병합합니다.
  • 범위: 관리됨
  • 유형: Boolean
    • true: Claude Code는 관리형 설정의 allowRead 항목만 인정합니다.
    • false: 다른 설정 파일의 allowRead 항목이 병합될 수 있습니다.
  • 기본값: false
다음은 홈 디렉터리의 읽기를 차단하고, ~/work를 다시 열고, 개발자가 다른 것을 다시 열지 못하도록 합니다:
managed-settings.json
개발자가 정책을 확대하지 못하도록 유지를 참조하십시오.

sandbox.filesystem.disabled

네트워크 격리를 유지하면서 파일시스템 격리를 건너뜁니다. 샌드박스된 명령은 호스트 파일시스템에 대한 무제한 읽기 및 쓰기 액세스를 얻으며, 해당 네트워크 송신은 network.allowedDomains로 제한됩니다. 명령이 쓰는 것이 아니라 연결하는 위치를 제어하기 위해 샌드박스할 때 사용하십시오. Claude Code v2.1.216 이상이 필요합니다.
  • 범위: 사용자 또는 관리됨. 관리형 설정이 sandbox.filesystem을 조금이라도 구성하거나 "mode": "deny"를 포함하는 sandbox.credentials.files 항목을 나열할 때, 관리형 설정만 이를 설정할 수 있습니다.
  • 유형: Boolean
    • true: Claude Code는 파일시스템 격리를 건너뛰고 네트워크 격리를 유지합니다.
    • false: 파일시스템 격리는 켜진 상태로 유지됩니다.
  • 기본값: false. 파일시스템 격리는 켜진 상태로 유지됩니다.
다음은 파일시스템을 열고 네트워크 송신을 GitHub 및 npm으로 제한합니다:
settings.json
계층이 꺼지면, Claude Code는 denyRead 또는 credentials.files deny 항목을 적용하지 않으며, credentials.envVars 항목 및 적용된 mask 항목은 계속 작동합니다. autoAllowBashIfSandboxed는 여전히 기본값이 true이므로, 계속 확인을 요청하게 하려면 false로 설정하십시오. 파일시스템 격리 비활성화에서 이를 설정할 수 있는 전체 소스 목록과 격리가 꺼졌을 때 변경되는 사항을 참조하십시오. Claude Code v2.1.216 이상이 필요합니다.

sandbox.ignoreViolations

명령이 시작 시 /etc/hosts를 확인하는 도구와 같이 프로브되고 거부될 것으로 예상되는 경로에 대한 샌드박스 위반 보고를 침묵시키므로, 해당 거부가 위반으로 표시되거나 Claude가 보는 것에 나타나지 않습니다. 샌드박스는 여전히 액세스를 차단합니다. 보고만 억제됩니다. 키는 명령과 일치하는 부분 문자열이며, *는 모든 명령과 일치하고, 값은 해당 명령에 대해 무시할 위반의 부분 문자열(예: 파일시스템 경로)입니다.
settings.json

sandbox.enableWeakerNestedSandbox

Linux 샌드박스를 권한 없는 Docker 컨테이너 내부에서 실행하며, bubblewrap이 새로운 /proc을 마운트할 수 없습니다. 대신 내부 샌드박스는 컨테이너의 기존 /proc을 바인드 마운트하며, 이는 새로운 마운트가 숨길 프로세스 정보를 노출합니다. 이는 보안을 감소시킵니다. 외부 컨테이너가 이미 필요한 격리를 제공할 때만 사용하십시오.
  • 범위: 모든 파일, 프로젝트 및 로컬 설정에 대한 제한 있음
  • 유형: Boolean
    • true: 내부 샌드박스는 새로운 /proc을 마운트하는 대신 컨테이너의 기존 /proc을 바인드 마운트합니다.
    • false: 샌드박스는 새로운 /proc을 마운트하며, 이는 권한 없는 Docker 컨테이너에서 작동하지 않습니다.
  • 기본값: false
settings.json
Linux 및 WSL2만 해당합니다. Bubblewrap이 컨테이너 내부에서 시작되지 않음을 참조하십시오.

sandbox.enableWeakerNetworkIsolation

샌드박스된 명령이 macOS에서 시스템 TLS 신뢰 서비스 com.apple.trustd.agent에 도달하도록 합니다. gh, gcloud, terraform과 같은 Go 기반 도구는 network.httpProxyPort를 MITM 프록시 및 사용자 정의 CA와 함께 사용할 때 TLS 인증서를 확인하기 위해 필요합니다. 이는 신뢰 서비스를 통한 잠재적 데이터 유출 경로를 열어서 보안을 감소시킵니다.
  • 범위: 모든 파일, 프로젝트 및 로컬 설정에 대한 제한 있음
  • 유형: Boolean
    • true: macOS의 샌드박스된 명령은 com.apple.trustd.agent에 도달할 수 있습니다.
    • false: macOS의 샌드박스된 명령은 시스템 TLS 신뢰 서비스에 도달할 수 없습니다.
  • 기본값: false
settings.json
MITM 프록시를 사용하지 않으면, 대신 실패하는 도구를 excludedCommands에 나열하십시오. Go 기반 CLI가 macOS에서 TLS 검증에 실패함을 참조하십시오.

sandbox.allowAppleEvents

샌드박스된 명령이 macOS에서 Apple Events를 보내도록 합니다. open, osascript, URL을 브라우저에서 여는 도구에 필요하며, 없으면 오류 -600으로 실패합니다. 이는 코드 실행 격리를 제거합니다: 샌드박스된 명령은 사용자 프롬프트 없이 다른 애플리케이션을 샌드박스 없이 시작할 수 있으며, Terminal과 같은 실행 중인 애플리케이션에 AppleScript 명령을 보낼 수 있습니다. 이는 앱별 macOS 자동화 동의 프롬프트(TCC)를 따릅니다.
  • 범위: 사용자 또는 관리됨
  • 유형: Boolean
    • true: macOS의 샌드박스된 명령은 Apple Events를 보낼 수 있습니다.
    • false: macOS의 샌드박스된 명령은 Apple Events를 보낼 수 없으므로, open 및 osascript는 오류 -600으로 실패합니다.
  • 기본값: false
settings.json
격리를 유지하면서 그러한 도구 중 하나를 실행하려면, 대신 excludedCommands에 추가하십시오. macOS의 Apple Events를 참조하십시오.

sandbox.ripgrep

Claude Code가 사용하는 ripgrep 바이너리 대신 자신의 ripgrep 바이너리를 샌드박스에 지정합니다. 예를 들어 플랫폼이 다르게 빌드된 rg를 필요로 할 때입니다.
  • 범위: 사용자 또는 관리됨
  • 유형: ripgrep 바이너리의 경로인 command를 포함하는 객체이며, 선택적 args(앞에 붙일 인수의 배열)도 포함합니다.
  • 기본값: 설정되지 않음. 샌드박스는 Claude Code와 동일한 ripgrep 바이너리를 사용합니다. 이는 USE_BUILTIN_RIPGREP을 0으로 설정하지 않으면 번들된 바이너리입니다.
settings.json

sandbox.bwrapPath

샌드박스를 PATH 외부에 설치된 bubblewrap 바이너리(예: 에어갭 호스트의 벤더된 복사본)에 지정합니다. Claude Code는 시작 시 의존성 확인과 각 샌드박스된 명령을 래핑할 때 모두 이 경로를 사용합니다.
  • 범위: 관리됨. Claude Code는 관리형 설정에서만 읽으므로, 사용자, 프로젝트, 로컬 파일이 샌드박스를 다른 바이너리에 지정할 수 없습니다.
  • 유형: 문자열, 절대 경로. Claude Code는 상대 경로를 버리고 PATH 조회로 돌아갑니다.
  • 기본값: 설정되지 않음. Claude Code는 PATH에서 bwrap을 찾습니다.
managed-settings.json
Linux 및 WSL2만 해당합니다.

sandbox.socatPath

샌드박스 네트워크 프록시를 PATH 외부에 설치된 socat 바이너리에 지정합니다.
  • 범위: 관리됨
  • 유형: 문자열, 절대 경로. Claude Code는 상대 경로를 버리고 PATH 조회로 돌아갑니다.
  • 기본값: 설정되지 않음. Claude Code는 PATH에서 socat을 찾습니다.
managed-settings.json
Linux 및 WSL2만 해당합니다.

sandbox.credentials

샌드박스된 명령으로부터 보호할 자격 증명 파일 및 환경 변수를 선언합니다. 각 항목은 파일 path 또는 변수 name 및 mode를 지정합니다: deny는 자격 증명을 샌드박스 내부에 숨기고, mask는 샌드박스된 명령에 자리 표시자를 표시하면서 샌드박스 프록시가 아웃바운드 요청에서 실제 값을 대체합니다. Claude Code는 나열한 항목만 보호합니다. 기본 제공 자격 증명 거부 목록은 없습니다.
  • 범위: 모든 파일. Claude Code는 mask 항목, allowPlaintextInject, awsPairs, sigv4를 사용자 설정, 관리형 설정, --settings 플래그에서만 인정합니다.
  • 유형: files, envVars, allowPlaintextInject, awsPairs, sigv4를 포함하는 객체
  • 기본값: 설정되지 않음. 보호되는 자격 증명이 없습니다.
다음은 AWS 자격 증명 파일을 숨기고 샌드박스된 명령에서 GITHUB_TOKEN을 제거합니다:
settings.json
deny 파일 보호는 파일시스템 계층의 일부이므로, 파일시스템 격리를 비활성화할 때 적용되지 않습니다. 환경 변수 보호는 여전히 적용됩니다.

관리형 설정의 잘못된 자격 증명 항목

관리형 sandbox.credentials 항목이 검증에 실패하면, Claude Code는 가능한 곳에서 자격 증명을 계속 보호합니다:
  • 유효한 path 또는 name 및 mask 또는 deny의 mode를 여전히 가진 files 또는 envVars의 항목(예: extract 패턴에 캡처 그룹이 없는 항목)은 경고와 함께 mode: "deny"로 저하되므로, 자격 증명은 항목을 수정할 때까지 마스크되지 않고 차단된 상태로 유지됩니다. 저하된 files 항목은 명시적 deny 항목처럼 filesystem.disabled를 고정하며, 경고는 관리형 설정이 파일시스템 격리를 끄면 읽기 차단이 적용되지 않음을 알립니다.
  • 알 수 없는 mode 또는 잘못된 path 또는 name을 가진 항목은 제거됩니다.
  • 각 경우에 경고가 표시됩니다. 항목이 저하되든 제거되든 나머지 유효한 항목은 여전히 적용됩니다.
v2.1.191 이상에 적용됩니다. v2.1.221 이전에는 모든 잘못된 항목이 제거되었습니다. 필드별 처리를 포함하는 다른 관리형 키는 관리형 설정의 잘못된 항목을 참조하십시오.

sandbox.credentials.files

자격 증명 파일 또는 디렉터리를 샌드박스된 명령으로부터 보호합니다. "mode": "deny"를 사용하면, Claude Code는 샌드박스 내부에서 해당 경로의 읽기를 차단하며, 이는 sandbox.filesystem.denyRead와 동일한 읽기 차단입니다. "mode": "mask"를 사용하면, Linux 및 WSL2의 샌드박스된 명령은 파일의 센티널 복사본을 읽고, 샌드박스 프록시는 해당 항목의 injectHosts에 대한 아웃바운드 요청에서 실제 값을 대체합니다. macOS에서는 대신 파일을 샌드박스 내부에서 읽을 수 없습니다. "mode": "mask"는 Claude Code v2.1.221 이상이 필요합니다.
  • 범위: 모든 파일. Claude Code는 프로젝트 .claude/settings.json 및 로컬 .claude/settings.local.json에서 mask 항목을 버립니다.
  • 유형: 각각 path 및 "deny" 또는 "mask"의 mode를 포함하는 객체의 배열이며, 선택적 파일용 마스크 필드도 포함합니다.
  • 기본값: 설정되지 않음. 보호되는 자격 증명 파일이 없습니다.
다음은 AWS 자격 증명 파일을 숨기고 gh 호스트 파일을 마스크하며, api.github.com에 대한 요청에서만 실제 값을 대체합니다:
settings.json
경로는 sandbox.filesystem.* 설정과 동일한 접두사를 사용하며, Claude Code는 세션이 로드하는 모든 설정 범위에서 배열을 병합합니다. 자격 증명 보호는 --setting-sources로 제외하는 소스에서 여전히 적용되는 것을 다룹니다. mask 항목은 Claude Code v2.1.221 이상이 필요합니다. mask 대체는 샌드박스 프록시를 통해서만 실행되므로, sandbox.network.tlsTerminate 또는 일반 HTTP 테스트 네트워크의 경우 allowPlaintextInject를 설정하십시오. mask는 단일 파일에 적용되므로, 각 자격 증명 파일을 개별적으로 나열하십시오. Claude Code는 deny 항목의 mask 필드를 수용하지만 무시합니다. 자격 증명 마스크는 어떤 설정 소스가 인정되는지를 다루고, 자격 증명 파일 마스크는 항목이 deny로 돌아가는 시기를 다룹니다.

파일용 마스크 필드

mask 항목은 이러한 선택적 필드를 수용합니다. extract 또는 decode 없이는 Claude Code가 전체 파일 콘텐츠를 하나의 센티널로 대체합니다. 파일시스템 격리가 켜진 macOS에서는 Claude Code가 extract 또는 decode가 실행되기 전에 mask 항목을 deny로 적용합니다. 자격 증명 파일 마스크를 참조하십시오. 다음은 gh 호스트 파일의 oauth_token 값만 마스크하고, 파일에 있는 해당 값의 다른 모든 복사본을 대체하고, 패턴이 아무것도 일치하지 않으면 파일을 읽을 수 없게 만들고, api.github.com에 대한 요청에서만 실제 토큰을 대체합니다:
settings.json

sandbox.credentials.envVars

환경 변수를 샌드박스된 명령으로부터 보호합니다. "mode": "deny"를 사용하면, Claude Code는 샌드박스된 명령의 환경에서 변수를 제거합니다. "mode": "mask"를 사용하면, 샌드박스된 명령은 세션별 센티널 값을 보고, 샌드박스 프록시는 해당 항목의 injectHosts에 대한 아웃바운드 요청에서 실제 값을 대체하므로, gh 및 npm과 같은 도구는 실제 자격 증명을 보유하지 않고도 계속 인증합니다.
  • 범위: 모든 파일. Claude Code는 프로젝트 .claude/settings.json 및 로컬 .claude/settings.local.json에서 mask 항목을 버립니다.
  • 유형: 각각 name 및 "deny" 또는 "mask"의 mode를 포함하는 객체의 배열이며, 선택적 환경 변수용 마스크 필드도 포함합니다.
  • 기본값: 설정되지 않음. 보호되는 환경 변수가 없습니다.
다음은 샌드박스된 명령에서 NPM_TOKEN을 제거하고 GITHUB_TOKEN을 마스크하며, api.github.com에 대한 요청에서만 실제 값을 대체합니다:
settings.json
name은 문자 또는 밑줄로 시작해야 하며 문자, 숫자, 밑줄만 포함해야 합니다. Claude Code는 세션이 로드하는 모든 설정 범위에서 배열을 병합하고, 동일한 변수가 두 모드로 나타날 때 deny를 적용합니다. 자격 증명 보호는 --setting-sources로 제외하는 소스에서 여전히 적용되는 것을 다룹니다. mask 대체는 샌드박스 프록시를 통해서만 실행되므로, sandbox.network.tlsTerminate 또는 일반 HTTP 테스트 네트워크의 경우 allowPlaintextInject를 설정하십시오. 자격 증명 마스크를 참조하십시오. Claude Code는 deny 항목의 mask 필드를 수용하지만 무시합니다.

환경 변수용 마스크 필드

mask 항목은 이러한 선택적 필드를 수용합니다. extract 또는 decode 없이는 Claude Code가 전체 값을 하나의 센티널로 대체합니다. extract와 decode는 동일한 항목에서 함께 사용할 수 없습니다. 다음은 DATABASE_URL 내부의 비밀번호만 마스크하고, 패턴이 아무것도 일치하지 않으면 변수를 설정 해제하고, SERVICE_JWT의 JWT를 마스크하면서 api_key를 제외한 모든 클레임을 읽을 수 있게 유지합니다:
settings.json

sandbox.credentials.allowPlaintextInject

TLS 종료 HTTPS뿐만 아니라 일반 HTTP 요청에서도 mask 대체를 허용합니다. 일반 HTTP에서는 업스트림 신원이 검증되지 않으며 자격 증명이 평문으로 전송되므로, 신뢰할 수 있는 테스트 네트워크 외부에서는 이를 끈 상태로 두십시오.
  • 범위: 사용자 또는 관리됨
  • 유형: Boolean
    • true: Claude Code는 TLS 종료 HTTPS뿐만 아니라 일반 HTTP 요청에서도 mask 대체를 허용합니다.
    • false: Claude Code는 TLS 종료 HTTPS에서만 mask 대체를 허용합니다.
  • 기본값: false
settings.json

sandbox.credentials.awsPairs

자격 증명이 비표준 이름의 변수에 있을 때, SigV4 재서명을 위해 하나의 AWS 자격 증명을 구성하는 마스크된 환경 변수를 그룹화합니다. Claude Code는 전체 값을 마스크할 때 기존 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN 트리오를 자동으로 연결하므로, 다른 이름에 대해서만 이 키가 필요합니다. Claude Code v2.1.224 이상이 필요합니다.
  • 범위: 사용자 또는 관리됨
  • 유형: 각각 accessKeyIdVar, secretAccessKeyVar, 선택적 sessionTokenVar를 포함하는 객체의 배열이며, sandbox.credentials.envVars 항목을 지정합니다.
  • 기본값: 설정되지 않음. 기존 트리오만 쌍을 이룹니다.
다음은 세 개의 사용자 정의 이름 변수를 재서명을 위한 하나의 AWS 자격 증명으로 연결합니다:
settings.json
각 명명된 변수는 extract 또는 decode가 없는 sandbox.credentials.envVars의 전체 값 mask 항목이어야 하며, 모든 쌍에서 하나의 슬롯만 채울 수 있습니다. 다음 규칙도 적용됩니다:
  • 프록시는 액세스 키 ID 항목의 injectHosts에 나열된 호스트에 대한 요청을 재서명합니다.
  • sessionTokenVar가 설정되면, 프록시는 재서명된 요청에서 실제 토큰을 x-amz-security-token으로 전송합니다.
  • 쌍에 기존 변수 중 하나라도 지정하면 자동 쌍 연결이 대체됩니다.

sandbox.credentials.sigv4

샌드박스 프록시가 재서명할 수 없는 AWS 요청 형식으로 수행할 작업을 선택합니다: streaming은 aws-chunked 스트리밍 업로드, presigned는 사전 서명된 URL, sigv4a는 SigV4A 비대칭 서명입니다. 이는 마스크된 쌍의 자리 표시자 액세스 키 ID로 서명된 요청에만 적용됩니다. Claude Code v2.1.224 이상이 필요합니다.
  • 범위: 사용자 또는 관리됨
  • 유형: streaming, presigned, sigv4a를 포함하는 객체이며, 각각 다음 중 하나입니다:
    • "deny": 프록시가 요청을 실패시킵니다.
    • "passthrough": 프록시는 마스크된 자리 표시자로 서명된 요청을 전달하므로, 도구는 AWS의 자체 거부를 받습니다.
  • 기본값: 설정되지 않음. 모든 형식이 "deny"입니다.
다음은 스트리밍 업로드를 프록시에서 실패시키는 대신 전달합니다:
settings.json
deny를 사용하면, 프록시가 요청을 실패시킵니다. passthrough를 사용하면, 프록시는 마스크된 자리 표시자에서 계산된 서명으로 요청을 전달하므로, AWS가 거부하고 호출 도구는 프록시 오류 대신 AWS의 자체 응답을 받습니다.

sandbox.network

샌드박스된 명령이 도달할 수 있는 호스트, 포트, 소켓을 제어합니다. 샌드박스는 아웃바운드 트래픽을 이러한 목록을 적용하는 프록시를 통해 라우팅합니다. 네트워크 격리에서 프록시가 결정하는 방식 및 확인을 요청하는 시기를 참조하십시오.
  • 범위: 모든 파일. strictAllowlist, allowManagedDomainsOnly, tlsTerminate는 각 항목에 설명된 대로 더 적은 소스에서 읽습니다.
  • 유형: 아래 하위 키를 포함하는 객체
  • 기본값: 설정되지 않음. 미리 허용된 도메인이 없으며, 권한 모드가 각 새 호스트에 대해 일어나는 일을 결정합니다.
다음은 GitHub 및 npm을 미리 허용하고, uploads.github.com을 차단하고, 명령이 localhost에 바인드되도록 합니다:
settings.json
Claude Code는 배열 하위 키를 설정 범위 전체에서 병합하므로, 저장소 잠금이 적용되지 않는 한 프로젝트는 사용자 목록에 도메인을 추가할 수 있습니다. WebFetch(domain:...) 허용 및 거부 권한 규칙은 동일한 허용 및 거부 목록에 추가됩니다.

sandbox.network.allowUnixSockets

macOS에서 샌드박스된 명령이 연결할 수 있는 Unix 소켓 경로를 나열합니다. Claude Code는 seccomp 필터가 소켓 경로를 검사할 수 없는 Linux 및 WSL2에서 이 목록을 무시합니다. 해당 플랫폼에서는 대신 allowAllUnixSockets를 사용하십시오.
settings.json
소켓 경로는 광범위한 액세스를 부여할 수 있습니다: 예를 들어 /var/run/docker.sock을 허용하면, 샌드박스된 명령이 Docker 데몬을 제어할 수 있습니다. 보안 제한을 참조하십시오.

sandbox.network.allowAllUnixSockets

샌드박스된 명령이 모든 Unix 소켓에 연결하도록 합니다. Linux 및 WSL2에서 샌드박스의 seccomp 필터는 socket(AF_UNIX, ...) 호출을 차단하므로, 이는 해당 플랫폼에서 Unix 소켓을 허용하는 유일한 방법입니다. 필터가 누락된 경우(/sandbox가 의존성 탭에서 보고함) 샌드박스는 Unix 소켓 호출을 차단하지 않습니다. Linux 및 WSL2 설정에서 필터가 어디에서 오는지 참조하십시오.
  • 범위: 모든 파일, 프로젝트 및 로컬 설정에 대한 제한 있음
  • 유형: Boolean
    • true: 샌드박스된 명령은 모든 Unix 소켓에 연결할 수 있습니다.
    • false: 샌드박스는 Unix 소켓 연결을 차단합니다: macOS에서는 allowUnixSockets의 경로를 제외하고, Linux 및 WSL2에서는 seccomp 필터가 있을 때 필터를 통해 차단합니다.
  • 기본값: false
settings.json
WSL2에서 true는 또한 cmd.exe 및 powershell.exe와 같은 Windows 바이너리를 시작하는 interop 소켓을 다시 엽니다.

sandbox.network.allowLocalBinding

macOS의 샌드박스된 명령이 네트워크 포트에서 수신 대기(예: 개발 서버 시작)하고 localhost의 모든 포트에 연결하도록 합니다. 루프백이 아닌 주소에서 수신 대기하는 명령은 다른 머신의 연결을 수락합니다. 이 키는 각 샌드박스된 명령이 자체 루프백 인터페이스를 가지는 Linux 및 WSL2에서는 효과가 없습니다. Linux 또는 WSL2에서 호스트의 서버에 도달하려면 명령이 localhost의 서버에 도달하지 못함을 참조하십시오.
  • 범위: 모든 파일, 프로젝트 및 로컬 설정에 대한 제한 있음
  • 유형: Boolean
    • true: macOS의 샌드박스된 명령은 모든 로컬 주소에서 수신 대기하고 localhost의 모든 포트에 연결할 수 있습니다.
    • false: macOS의 샌드박스된 명령은 포트에서 수신 대기하거나 localhost의 서버에 직접 연결할 수 없습니다.
  • 기본값: false
settings.json

sandbox.network.allowMachLookup

macOS 샌드박스가 조회할 수 있는 추가 XPC 및 Mach 서비스 이름을 나열합니다. iOS 시뮬레이터 또는 Playwright와 같이 XPC를 통해 통신하는 도구는 여기에 서비스를 나열해야 합니다. 다음은 com.apple.coresimulator. 접두사 아래의 모든 서비스를 허용합니다:
settings.json

sandbox.network.allowedDomains

샌드박스된 명령의 아웃바운드 트래픽에 대해 도메인을 미리 허용하므로, 샌드박스가 해당 도메인에 대해 확인을 요청하지 않습니다. *.example.com과 같은 와일드카드는 하위 도메인과 일치하며, 선택적 :port 접미사는 항목을 하나의 포트로 제한합니다. 포트 없는 항목은 모든 포트와 일치합니다. 다음은 모든 포트의 GitHub, 모든 npm 하위 도메인, 포트 443에서만 하나의 API 호스트를 미리 허용합니다:
settings.json
IPv6 리터럴은 괄호로 묶어 작성하며, 선택적으로 포트를 포함합니다: "[::1]"은 모든 포트를 허용하고 "[::1]:443"은 하나의 포트를 허용합니다. 괄호로 묶인 형식은 Claude Code v2.1.229 이상이 필요합니다. 도메인 목록의 IPv6 주소를 참조하십시오.

sandbox.network.deniedDomains

샌드박스된 명령의 아웃바운드 트래픽에 대해 도메인을 차단하며, allowedDomains와 동일한 와일드카드, 포트, IPv6 구문을 사용합니다. 거부된 도메인은 allowedDomains 항목도 일치하더라도 차단된 상태로 유지됩니다.
  • 범위: 모든 파일
  • 유형: 각각 도메인, 와일드카드 패턴, 또는 IP 리터럴이며, 선택적 :port 접미사를 포함하는 문자열의 배열
  • 기본값: 설정되지 않음
settings.json
Claude Code는 allowManagedDomainsOnly가 설정되어도 세션이 로드하는 모든 설정 소스에서 이 목록을 병합하므로, 개발자는 항상 거부 목록을 강화할 수 있습니다. IPv6 리터럴은 도메인 목록의 IPv6 주소를 참조하십시오. 정규화된 도메인 이름을 표시하는 후행 점으로 작성된 항목(예: example.com.)은 example.com과 동일한 연결을 차단합니다.

sandbox.network.strictAllowlist

승인을 요청하는 대신 허용 목록 외부의 호스트에 대한 샌드박스된 명령의 액세스를 거부합니다. 허용 목록은 allowedDomains와 WebFetch(domain:...) 허용 규칙의 도메인을 합친 것이거나, allowManagedDomainsOnly가 설정되면 관리형 설정 항목만입니다. 관리자 필수 샌드박스 없이 적용되는 잠금은 저장소의 항목을 다룹니다. Claude Code v2.1.219 이상이 필요합니다.
  • 범위: 사용자 또는 관리됨. 저장소는 이를 켜거나 끌 수 없습니다.
  • 유형: Boolean
    • true: Claude Code는 허용 목록 외부의 호스트에 대한 샌드박스된 명령의 액세스를 거부합니다.
    • false: 다른 신뢰할 수 있는 설정 파일이 true를 설정하지 않는 한, Claude Code는 허용 목록 외부의 호스트를 즉시 거부하는 대신 권한 모드에 따라 결정합니다: 자동 모드에서는 명령의 명령별 허용된 도메인에 대해 호스트를 확인하고, dontAsk 모드에서는 거부하고, bypassPermissions 모드 및 우회가 가능한 대화형 터미널 플랜 모드 세션에서는 허용하며, 그 외에는 사용자에게 묻습니다.
  • 기본값: false
settings.json
Claude Code는 샌드박스된 명령에만 이를 적용합니다. WebFetch와 같은 프로세스 내 도구는 여전히 권한 규칙을 따릅니다. 인정된 소스 중 하나라도 true로 설정하면, 이는 켜진 상태로 유지됩니다. 네트워크 격리를 참조하십시오. Claude Code v2.1.219 이상이 필요합니다.

sandbox.network.allowManagedDomainsOnly

네트워크 허용 목록을 관리형 설정이 정의하는 것으로 잠급니다. 그러면 Claude Code는 관리형 설정의 allowedDomains 및 WebFetch(domain:...) 허용 규칙만 인정하고, 사용자, 프로젝트, 로컬, --settings 설정의 도메인을 무시하고, 허용되지 않은 도메인을 확인을 요청하는 대신 자동으로 차단합니다.
  • 범위: 관리됨
  • 유형: Boolean
    • true: Claude Code는 관리형 설정의 allowedDomains 및 WebFetch(domain:...) 허용 규칙만 인정하고 허용되지 않은 도메인을 확인을 요청하는 대신 차단합니다.
    • false: 다른 설정 파일의 도메인이 허용 목록에 병합될 수 있습니다.
  • 기본값: false
다음은 허용 목록을 GitHub 및 npm으로 잠그고 개발자가 추가하는 도메인을 무시합니다:
managed-settings.json
키가 true인 동안 샌드박스는 관리자 필수이며, 관리형 설정만 프록시 포트를 설정할 수 있습니다. 거부된 도메인은 여전히 세션이 로드하는 모든 소스에서 병합됩니다. 개발자가 정책을 확대하지 못하도록 유지를 참조하십시오.

sandbox.network.httpProxyPort

Claude Code가 실행하는 프록시 대신 자체 HTTP 프록시를 샌드박스에 지정합니다. 조직은 HTTPS 트래픽을 검사하거나, 자체 필터링 규칙을 적용하거나, 요청을 로그에 기록하기 위해 이를 수행합니다. 해당 프록시가 필터링을 맡으며, Claude Code는 그곳으로 전송되는 트래픽에 도메인 목록과 네트워크 확인 요청을 더 이상 적용하지 않습니다. 설정되지 않으면, Claude Code는 HTTP 트래픽에 대해 자체 프록시를 시작합니다.
settings.json
프록시가 SOCKS 트래픽도 전달해야 하면 socksProxyPort도 설정하십시오. 둘 중 하나만 설정되면, Claude Code는 여전히 다른 프로토콜에 대해 자체 프록시를 실행합니다. 사용자 정의 프록시 구성을 참조하십시오.

sandbox.network.socksProxyPort

Claude Code가 실행하는 프록시 대신 자체 SOCKS5 프록시를 샌드박스에 지정합니다. 해당 프록시가 필터링을 맡으며, Claude Code는 그곳으로 전송되는 트래픽에 도메인 목록과 네트워크 확인 요청을 더 이상 적용하지 않습니다. 설정되지 않으면, Claude Code는 SOCKS 트래픽에 대해 자체 프록시를 시작합니다.
settings.json
사용자 정의 프록시 구성을 참조하십시오.

sandbox.network.tlsTerminate

샌드박스 프록시가 TLS를 종료하도록 하여 HTTPS 요청의 콘텐츠를 읽을 수 있게 합니다. 이는 실험적 기능이며, mask 자격 증명 대체에 필요합니다. 세션용 임시 인증 기관을 생성하려면 {}를 설정하고, 자체 인증 기관을 사용하려면 caCertPath 및 caKeyPath를 설정하십시오.
  • 범위: 사용자 또는 관리됨. 저장소는 이를 켜거나 인증 기관을 제공할 수 없습니다.
  • 유형: 선택적 caCertPath 및 caKeyPath 문자열(각각 파일 경로)을 포함하는 객체
  • 기본값: 설정되지 않음. 프록시는 TLS를 종료하거나 검사하지 않습니다.
settings.json
둘 이상의 인정된 소스가 이를 설정하면, Claude Code는 가장 높은 우선순위 소스의 값을 사용합니다: 관리형 설정, 그 다음 --settings 플래그, 그 다음 사용자 설정입니다.

메모리 및 컨텍스트

Claude Code가 컨텍스트에 로드하는 내용, 압축 방식, 메모리 및 계획 저장 위치를 제어합니다. 컨텍스트 관리 및 메모리를 참조하십시오.

autoCompactEnabled

컨텍스트가 한계에 가까워질 때 Claude Code가 대화를 자동으로 압축하도록 합니다. /config에 자동 압축으로 표시되며, 여기서 토글하면 이 키가 사용자 설정에 기록됩니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: 컨텍스트가 한계에 가까워질 때 Claude Code가 대화를 자동으로 압축합니다
    • false: Claude Code가 자동으로 압축하지 않습니다
  • 기본값: true
  • 세션별 재정의: DISABLE_AUTO_COMPACT는 한 세션 동안 자동 압축을 끕니다. 둘 중 하나가 끄면 다른 하나는 다시 켤 수 없습니다
settings.json
자동 압축이 꺼져 있는 동안에도 수동 /compact 명령은 계속 작동합니다. 자동 압축을 끄면 유휴 압축도 함께 꺼집니다.

autoCompactWindow

Claude Code가 자동으로 압축하기 전에 컨텍스트 윈도우가 얼마나 찬지 설정합니다.
  • 범위: 모든 파일
  • 유형: 토큰 수, 100000에서 1000000 사이. Claude Code는 값을 모델의 컨텍스트 윈도우로 제한합니다. 모델 개요에 각 모델의 윈도우가 나열되어 있습니다
  • 기본값: 설정되지 않음. Claude Code가 모델에 맞게 조정된 윈도우를 선택합니다
  • 세션별 재정의: --autocompact는 한 세션 동안 이 키보다 우선하며, CLAUDE_CODE_AUTO_COMPACT_WINDOW는 둘 다보다 우선합니다. 단, Claude Code가 변수의 값을 무시하는 경우는 예외입니다
settings.json
/autocompact 명령은 현재 모델의 윈도우를 modelSettings 아래에 저장하며, 이 값은 해당 모델에 대해 같은 파일의 이 키보다 우선합니다. 자동 압축 윈도우 설정에서 명령, 플래그, 변수 및 설정이 어떻게 상호작용하는지 설명합니다.

autoMemoryDirectory

자동 메모리를 프로젝트별 기본값 대신 선택한 디렉토리에 저장합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 절대 경로 또는 ~/ 접두사가 있는 디렉토리 경로
  • 기본값: 설정되지 않음. Claude Code는 ~/.claude/projects/<project>/memory/를 사용합니다
settings.json
프로젝트 또는 로컬 설정에서 Claude Code는 훅과 동일한 워크스페이스 신뢰 규칙에 따라 이 키를 준수합니다. 복제된 저장소가 이러한 파일을 제공할 수 있기 때문입니다.

autoMemoryEnabled

자동 메모리를 켜거나 끕니다. false일 때 Claude는 자동 메모리 디렉토리에서 읽거나 쓰지 않습니다. 세션 중에 /memory로 토글할 수도 있으며, 이는 이 키를 사용자 설정에 기록합니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: 설정되지 않은 것과 동일합니다. 자동 메모리는 --bare, 안전 모드 또는 CLAUDE_CODE_DISABLE_AUTO_MEMORY와 같이 이 키보다 우선하는 것이 세션을 끄지 않는 한 켜져 있습니다
    • false: Claude는 자동 메모리 디렉토리에서 읽거나 쓰지 않습니다
  • 기본값: true
  • 세션별 재정의: CLAUDE_CODE_DISABLE_AUTO_MEMORY는 한 세션 동안 이 키보다 어느 방향이든 우선합니다
settings.json

bashOutputMaxChars

성공한 Bash 또는 PowerShell 명령의 출력 중 Claude가 인라인으로 받는 문자 수를 설정합니다. 출력이 한계를 초과하면 Claude Code는 출력을 파일에 저장하고 Claude는 짧은 미리보기와 파일의 경로를 받습니다. 자세한 빌드 또는 전체 테스트 스위트 로그와 같은 명령 출력이 기본값을 자주 초과하고 Claude가 파일을 열지 않고 읽기를 원할 때 한계를 높입니다. Claude Code v2.1.261 이상이 필요합니다.
  • 범위: 모든 파일
  • 유형: 문자 수, 양의 정수. Claude Code는 값을 4000에서 128000 범위로 제한합니다
  • 기본값: 설정되지 않음. Claude는 최대 30,000자를 인라인으로 받습니다
settings.json
이 키를 설정하면 Claude Code는 BASH_MAX_OUTPUT_LENGTH 환경 변수를 무시합니다.

claudeMd

CLAUDE.md 스타일 지침을 별도 파일을 배포하지 않고 조직 관리 메모리로 주입합니다. Claude Code는 텍스트를 사용자 및 프로젝트 CLAUDE.md 파일보다 먼저 관리되는 메모리 항목으로 로드합니다.
  • 범위: 관리됨
  • 유형: 문자열, CLAUDE.md 파일의 텍스트. 파일처럼 작성하되 Markdown을 포함하고 줄 바꿈을 \n으로 표기합니다
  • 기본값: 설정되지 않음
이 예제는 두 가지 규칙을 짧은 Markdown 목록으로 배포합니다:
managed-settings.json
조직 전체 CLAUDE.md 배포를 참조하십시오.

claudeMdExcludes

Claude Code가 메모리를 로드할 때 특정 CLAUDE.md 파일을 건너뜁니다. 큰 모노레포에서 이를 사용하여 작업과 관련이 없는 다른 팀의 CLAUDE.md 파일을 건너뜁니다. 대규모 코드베이스 가이드의 관련 없는 CLAUDE.md 파일 제외에서 해당 경우를 설명합니다. 패턴은 절대 파일 경로와 일치합니다.
  • 범위: 모든 파일
  • 유형: 문자열 배열, 각각 glob 패턴 또는 절대 경로
  • 기본값: 설정되지 않음. Claude Code는 찾은 모든 CLAUDE.md를 로드합니다
settings.json
제외는 사용자, 프로젝트 및 로컬 메모리 파일에만 적용됩니다. 관리되는 정책 CLAUDE.md 파일은 제외할 수 없습니다.

env

모든 세션 및 Claude Code가 시작하는 서브프로세스에 대한 환경 변수를 설정합니다. 환경 변수 참조의 대부분의 변수를 여기에 넣을 수 있으며, 이것이 모든 세션에 적용하거나 팀에 배포하는 방법입니다. 프로젝트 및 로컬 설정은 일부 변수를 설정할 수 없습니다.
  • 범위: 모든 파일
  • 유형: 변수 이름을 문자열 값으로 매핑하는 객체
  • 기본값: 설정되지 않음
이 예제는 자동 압축을 끄고 API 요청을 프록시를 통해 라우팅합니다:
settings.json

env 값이 셸과 상호작용하는 방식

  • 여기의 값은 셸에서 내보낸 동일한 변수를 덮어쓰며, 둘 이상의 설정 파일이 변수를 설정할 때 가장 높은 우선순위가 적용됩니다. Claude Code가 env에서 무시하는 변수는 프로젝트 및 로컬 설정의 예외를 나열합니다.
  • Claude Desktop 앱 또는 자체 호스팅 환경 러너가 세션을 시작할 때, 빌드하는 시작 환경이 대신 우선합니다. Claude Code는 시작 환경이 이미 설정한 변수에 대해 설정 파일의 env 값을 무시합니다. 디버그 로그는 무시된 각 변수의 이름을 지정합니다.
  • 셸 내보내기를 취소하려면 변수를 ""로 설정합니다. Claude Code는 공 값을 공급자 선택에 대해 설정되지 않은 것으로 취급하며, 서브프로세스는 공 값을 상속합니다.
  • NO_COLOR 및 FORCE_COLOR는 여기에서 설정하면 서브프로세스에만 도달합니다. Claude Code 자체 인터페이스 색상을 변경하려면 claude를 시작하기 전에 셸에서 설정합니다.
  • 여기의 값은 설정 파일의 일반 텍스트이며 Claude Code가 시작하는 모든 서브프로세스에 도달합니다. 회전하는 OTLP 베어러 토큰의 경우 otelHeadersHelper를 사용합니다. API 자격 증명의 경우 apiKeyHelper를 사용합니다.

Claude Code가 env 값을 적용하는 시기

  • 사용자 설정, --settings 및 관리되는 설정에서: 시작 시 및 저장된 변경이 병합된 env를 변경할 때 실행 중인 세션에서.
  • 프로젝트 및 로컬 설정에서: 워크스페이스를 신뢰한 후 또는 신뢰 대화를 표시하지 않는 -p 모드에서 시작할 때, 저장된 변경이 병합된 env를 변경할 때 다시.
  • Claude Code가 모델 선택, 타임아웃 및 한계, 기능 토글과 같은 안전한 것으로 분류하는 변수: 프로젝트 및 로컬 설정이 설정할 수 없는 변수를 제외하고 모든 설정 파일에서 시작할 때.
  • v2.1.246 이상에서 /cd로 세션을 이동한 후: 새 디렉토리의 프로젝트 및 로컬 env 값, 이전 디렉토리의 위에.

Claude Code가 env에서 무시하는 변수

  • 프로젝트 및 로컬 설정은 체크아웃된 저장소가 제어하지 않아야 하는 변수를 설정할 수 없습니다. 대신 셸, 사용자 설정 또는 관리형 설정에서 설정합니다. Claude Code는 텔레메트리를 끄는 몇 가지 값을 제외하고 각각을 삭제하며, claude --debug로 볼 수 있는 경고를 기록합니다. 여기에는 다음이 포함됩니다:
    • Claude Code가 자신의 파일을 저장하거나 쓰는 위치를 선택하는 변수: CLAUDE_CONFIG_DIR, CLAUDE_CODE_TMPDIR 및 HOME, TMPDIR, TMP, TEMP 및 XDG_* 계열과 같은 운영 체제 디렉토리 변수.
    • Claude Code가 시작하는 프로세스의 프로그램과 시스템 전체 구성을 선택하는 Windows 변수, 예: SystemRoot, ComSpec, ProgramData, LOCALAPPDATA, PATHEXT, PSModulePath 및 ProgramFiles 계열.
    • 세션 콘텐츠를 내보내는 변수: OTEL_LOG_RAW_API_BODIES 및 자세한 베타 추적 쌍 ENABLE_BETA_TRACING_DETAILED 및 BETA_TRACING_ENDPOINT.
    • OpenTelemetry 내보내기 변수는 텔레메트리를 켜거나, 어디로 갈지 선택하거나, 어떤 콘텐츠를 캡처할지 선택합니다:
      • CLAUDE_CODE_ENABLE_TELEMETRY, 향상된 텔레메트리 베타 쌍 CLAUDE_CODE_ENHANCED_TELEMETRY_BETA 및 ENABLE_ENHANCED_TELEMETRY_BETA
      • 내보내기 선택기 OTEL_LOGS_EXPORTER, OTEL_METRICS_EXPORTER 및 OTEL_TRACES_EXPORTER
      • 콘텐츠 변수 OTEL_LOG_USER_PROMPTS, OTEL_LOG_ASSISTANT_RESPONSES, OTEL_LOG_TOOL_CONTENT 및 OTEL_LOG_TOOL_DETAILS
      • OTEL_EXPORTER_OTLP_* 변수는 이름이 _ENDPOINT, _HEADERS, _PROTOCOL, _CERTIFICATE, _CLIENT_KEY 또는 _INSECURE로 끝나며, 일반 및 신호별 형식으로 OTEL_EXPORTER_OTLP_ENDPOINT 및 OTEL_EXPORTER_OTLP_METRICS_HEADERS와 같습니다
      • OTEL_EXPORTER_PROMETHEUS_HOST 및 OTEL_EXPORTER_PROMETHEUS_PORT
      이 값들만 프로젝트 및 로컬 설정에서 계속 적용됩니다. 왜냐하면 그들은 뭔가를 끄기 때문입니다: 세 개의 내보내기 선택기에 대해 none, 그리고 OTEL_LOG_USER_PROMPTS, OTEL_LOG_TOOL_CONTENT 및 OTEL_LOG_TOOL_DETAILS에 대해 0과 같은 끄기 값. 이러한 값은 사용자 설정의 동일한 변수를 재정의하지만 Claude Code를 시작하는 환경, --settings 파일 또는 관리되는 설정이 설정하는 것은 재정의하지 않습니다. 프로젝트 또는 로컬 설정 파일이 이 그룹의 변수를 설정할 때 로컬 대화형 세션은 시작 시 공지를 표시합니다. /status 또는 claude doctor를 실행하여 Claude Code가 무시한 변수와 원격 측정을 끈 변수를 확인합니다. 둘 다 이름을 나열하며 값은 나열하지 않습니다. -p를 사용한 비대화형 실행 또는 Agent SDK 세션은 공지를 표시하지 않으므로 업그레이드 후 수집기가 여전히 데이터를 받는지 확인합니다. 그렇지 않으면 사용자 설정, 관리되는 설정, 작업의 환경 또는 --settings로 전달하는 파일에서 변수를 설정합니다. 프로젝트 및 로컬 설정에서 이 그룹을 무시하려면 Claude Code v2.1.282 이상이 필요합니다.
    • Claude Code가 시작하거나 동기화하는 방식을 변경하는 변수, 예: CLAUDE_CODE_PROCESS_WRAPPER, CLAUDE_CODE_SYNC_SKILLS, CLAUDE_CODE_SYNC_PLUGINS, CLAUDE_CODE_PLUGIN_CACHE_DIR 및 CLAUDE_CODE_PLUGIN_SEED_DIR.
    • 응답하지 않은 대화 상자의 타이머를 설정하는 CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS.
    • 첨부 파일 처리를 끄는 CLAUDE_CODE_DISABLE_ATTACHMENTS.
    • Claude Code가 파일 및 디렉토리의 @ 멘션을 확장하지 않도록 하는 CLAUDE_CODE_DISABLE_FILE_MENTIONS.
    v2.1.251 이전에는 프로젝트 및 로컬 설정이 Claude Code가 파일을 쓰는 위치를 선택하거나 세션 콘텐츠를 내보내는 이 목록의 변수를 설정할 수도 있었습니다. HOME 및 XDG_CONFIG_HOME 제외. v2.1.290 이전에는 대화 상자 타이머 변수와 CLAUDE_CODE_DISABLE_ATTACHMENTS도 설정할 수 있었습니다.
  • Claude Code의 호스팅 환경이 소유하는 ID 변수, 예: CLAUDE_CODE_REMOTE 및 CLAUDE_CODE_ACCOUNT_UUID는 모든 파일에서 무시됩니다.
  • CLAUDE_CODE_MESSAGING_SOCKET 및 CLAUDE_CODE_MESSAGING_TOKEN는 Claude Code가 자체 내보내는 것이므로 모든 파일에서 무시됩니다. 소켓 변수를 무시하려면 Claude Code v2.1.224 이상이 필요하고, 토큰을 무시하려면 v2.1.228 이상이 필요합니다.
  • CLAUDE_CODE_PROJECT_DIR_NAME는 Claude Code가 시작 환경에서만 읽으므로 모든 파일에서 무시됩니다. v2.1.234 이상이 필요합니다.
  • CLAUDE_CODE_RESTRICTED는 Claude Code가 시작 환경에서만 읽으므로 모든 파일에서 무시됩니다.
  • CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY는 Claude Code가 시작 환경에서만 읽으므로 모든 파일에서 무시됩니다. 변수는 Claude Code v2.1.283 이상이 필요합니다.
  • CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT, CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT, CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT 및 CLAUDE_CODE_DISABLE_MOUNTED_DRIVE_RM_PROMPT는 Claude Code가 시작 환경에서만 읽으므로 모든 파일에서 무시됩니다.

fileCheckpointingEnabled

Claude Code가 각 편집 전에 파일을 스냅샷하여 /rewind가 파일을 복원할 수 있도록 합니다. /config에 **코드 되감기(체크포인트)**로 표시되며, 여기서 토글하면 이 키가 사용자 설정에 기록됩니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: Claude Code가 각 편집 전에 파일을 스냅샷하여 /rewind가 파일을 복원할 수 있습니다
    • false: Claude Code가 파일을 스냅샷하지 않으므로 /rewind가 파일을 복원할 수 없습니다
  • 기본값: true
  • 세션별 재정의: CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING는 한 세션 동안 체크포인팅을 끕니다. 둘 중 하나가 끄면 다른 하나는 다시 켤 수 없습니다
settings.json
-p 실행 또는 Agent SDK 세션에서 Claude Code는 이 키를 무시합니다. SDK는 enableFileCheckpointing 옵션으로 체크포인팅을 켜고, 베어 -p 실행은 CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true가 필요합니다. Agent SDK의 파일 체크포인팅을 참조하십시오.

idleCompaction

유휴 압축은 사용자가 자리를 비운 긴 대화를 프롬프트 캐시가 만료되기 직전에 압축합니다. 그러면 다음 메시지는 전체 대화 대신 요약을 전송합니다. 돌아오면 대화에 Compacted while idle, before the prompt cache expired로 시작하는 줄이 표시됩니다. 유휴 압축은 다음 조건을 모두 충족하는 대화에 대해 기본적으로 켜져 있습니다:
  • 세션: 대화형 터미널 세션에 있습니다
  • 프롬프트 캐시: 대화가 1시간 프롬프트 캐시 TTL을 사용합니다
  • 기능 플래그: Claude Code가 Anthropic에서 기능 플래그를 가져올 수 있습니다
  • 크기: 대화의 컨텍스트가 토큰 임계값에 도달했습니다. 이 임계값은 기본값 200,000에서 변경할 수 있습니다
  • 유휴 시간: 마지막 요청 이후 약 54분이 지났으며, 그 시점에 컴퓨터가 깨어 있습니다
유휴 압축을 끄려면 이 키를 false로 설정합니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: Claude Code가 조건을 충족하는 유휴 대화를 압축합니다
    • false: 세션이 유휴 상태인 동안 Claude Code가 압축하지 않습니다
  • 기본값: true
  • 세션별 재정의: DISABLE_AUTO_COMPACT는 자동 압축과 함께 유휴 압축도 끕니다
settings.json
세션 내에서 유휴 압축을 끄거나 켜려면 /config를 실행하고 유휴 압축 행을 변경합니다. 선택한 값은 사용자 설정에 저장되며 즉시 적용됩니다. 이 행은 Claude Code v2.1.302 이상이 필요합니다. 해당 버전을 실행 중인데 /config에 이 행이 표시되지 않으면 다음 원인을 확인합니다:
  • 다른 설정 소스가 키를 설정함: 관리형 설정, --settings 플래그 또는 프로젝트나 로컬 설정 파일의 값이 사용자 설정을 재정의합니다. 대신 해당 소스에서 키를 변경합니다
  • 기능 플래그를 사용할 수 없음: Claude Code가 Anthropic에서 기능 플래그를 가져올 수 없는 환경에서는 유휴 압축이 실행되지 않으므로 끌 대상이 없습니다
이 키는 Claude Code v2.1.290 이상이 필요합니다. 이 키를 무시하는 이전 버전에서는 유휴 압축을 중지하려면 autoCompactEnabled를 끕니다.

유휴 압축 임계값 변경

CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS를 대화의 컨텍스트가 유휴 압축 대상이 되기 위해 도달해야 하는 토큰 수로 설정합니다. 양의 정수를 사용합니다. 100000 미만의 값은 가장 낮은 임계값인 100000으로 올려집니다. 기본값에서는 200K 컨텍스트 윈도우의 대화가 200,000 토큰에 도달하기 전에 자동 압축됩니다. 이 예제는 해당 대화가 조건을 충족하도록 임계값을 150,000으로 낮춥니다:
settings.json

plansDirectory

Claude Code가 플랜 모드에서 작성하는 계획 파일을 저장할 위치를 선택합니다. Claude Code는 경로를 프로젝트 루트에 상대적으로 해석합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 프로젝트 루트에 상대적인 경로
  • 기본값: 설정되지 않음. Claude Code는 ~/.claude/plans를 사용합니다
settings.json
다음과 같은 경우 Claude Code는 설정한 디렉토리 대신 ~/.claude/plans에 계획을 저장합니다:
  • 프로젝트 루트 외부: "../plans"처럼 경로가 프로젝트 루트 외부로 해석되는 경우.
  • macOS, Linux 및 WSL에서의 백슬래시: Windows 스타일의 "docs\\plans"처럼 해석된 경로에 백슬래시가 포함된 경우. Windows에서도 작동하는 "docs/plans"로 작성합니다.

skillListingBudgetFraction

각 턴마다 Claude는 설명과 함께 스킬 목록을 보며, Claude Code는 해당 목록을 컨텍스트 윈도우의 일부로 제한합니다. 목록이 제한을 초과하면 Claude Code는 모든 스킬의 이름을 유지하지만 가장 적게 사용된 스킬의 설명을 삭제하므로 Claude는 여전히 해당 스킬을 호출할 수 있지만 자체적으로 선택할 가능성이 낮습니다. 더 많은 설명을 표시하려면 이 키를 높이되 턴당 더 많은 컨텍스트를 사용합니다.
  • 범위: 모든 파일
  • 유형: 숫자, 0보다 크고 최대 1인 분수
  • 기본값: 0.01, 컨텍스트 윈도우의 1%를 예약합니다
settings.json
목록이 사용하는 컨텍스트 양과 어떤 스킬이 가장 많이 기여하는지 확인하려면 /doctor를 실행합니다.

skillListingMaxDescChars

각 턴마다 Claude는 각 스킬의 description 및 when_to_use 텍스트를 보여주는 스킬 목록을 봅니다. 이 키는 Claude Code가 스킬당 해당 텍스트의 몇 문자를 표시하는지 제한합니다. 더 긴 텍스트는 제한에서 잘립니다.
  • 범위: 모든 파일
  • 유형: 문자 수, 양의 정수
  • 기본값: 1536
settings.json
긴 설명을 유지하려면 높이되 턴당 더 많은 컨텍스트를 사용합니다. skillListingBudgetFraction 아래에 더 많은 스킬을 맞추려면 낮춥니다.

taskOutputMaxChars

v2.1.277에서 제거되었으며, 크기를 조정한 TaskOutput 도구와 함께 제거되었습니다. 설정해도 현재 버전에는 영향을 주지 않습니다. Claude는 Read를 사용하여 백그라운드 작업의 출력 파일을 읽습니다.
v2.1.276까지 이 키를 설정하여 Claude가 TaskOutput 도구로 작업을 읽을 때 인라인으로 받은 백그라운드 작업의 출력 문자 수를 설정했습니다.

인터페이스 및 터미널

터미널에서 Claude Code가 보이고 동작하는 방식을 변경합니다: 테마, 편집기 모드, 상태줄, 스피너, 세션 내 알림, 접근성. 터미널 구성을 참조하세요.

askUserQuestionTimeout

응답하지 않은 AskUserQuestion 대화 상자가 일정 시간 유휴 상태가 지나면 이미 선택한 옵션을 제출하고 자동으로 계속 진행되도록 합니다. 자리를 비운 동안 Claude가 사용자 없이 계속 진행하기를 원할 때 설정합니다. 기본값에서는 질문이 사용자가 응답할 때까지 대기합니다. 타이머가 일시 정지되거나 시작되지 않는 경우는 질문 자동 계속 타임아웃을 참조하세요.
settings.json
/config에 Question auto-continue timeout으로 표시되며, 이 키를 사용자 설정에 기록합니다. 관리형 설정이나 --settings 플래그가 키를 설정한 경우 Claude Code는 이 행을 숨깁니다.

autoContinueAtUsageLimit

claude.ai 사용 한도로 세션이 중단된 후, 열린 세션에서 대기하다가 한도가 재설정되면 작업을 자동으로 계속합니다. 자동 계속 끄기를 참조하세요. Claude Code v2.1.234 이상이 필요합니다.
  • 범위: 사용자 또는 관리형. 사용자 설정, --settings, 관리형 설정에서만 읽습니다. 이들 중 어느 것도 키를 설정하지 않은 경우, 키를 설정한 프로젝트 또는 로컬 설정 파일은 무시되지 않고 기능을 끕니다.
  • 유형: Boolean
    • true: claude.ai 사용 한도로 세션이 중단된 후, Claude Code는 열린 세션에서 대기하다가 한도가 재설정되면 작업을 자동으로 계속합니다
    • false: Claude Code가 스스로 대기를 시작하지 않습니다. 사용 한도 옵션 메뉴에서 직접 대기를 시작할 수는 있습니다
  • 기본값: true
settings.json
/config에 Continue automatically at usage limit으로 표시되며, 이 키를 사용자 설정에 기록합니다. 관리형 설정이나 --settings 플래그가 키를 설정한 경우 Claude Code는 이 행을 숨깁니다.

autoScrollEnabled

전체 화면 렌더링에서 새 출력을 따라 대화 맨 아래로 이동합니다. 이 기능을 끄면 Claude가 계속 작업하는 동안 스크롤한 위치에 머무르며, 권한 프롬프트는 여전히 화면에 스크롤되어 표시됩니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: 대화가 새 출력을 따라 맨 아래로 이동합니다
    • false: Claude가 계속 작업하는 동안 스크롤한 위치에 머무르며, 권한 프롬프트는 여전히 트랜스크립트 아래에 표시됩니다
  • 기본값: true
settings.json
전체 화면 렌더링이 켜져 있을 때 /config에 Auto-scroll로 표시되며, 이 키를 사용자 설정에 기록합니다.

axScreenReader

화면 낭독기 친화적인 출력을 렌더링합니다: 장식용 테두리나 애니메이션이 없는 평면 텍스트입니다. 화면 낭독기 모드는 클래식 렌더러를 사용하므로 활성화된 동안 tui 설정은 효과가 없습니다. 연결된 백그라운드 세션은 여전히 전체 화면으로 렌더링됩니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code가 클래식 렌더러를 사용하여 장식용 테두리나 애니메이션 없이 평면 텍스트를 렌더링합니다
    • false: Claude Code가 정상적으로 렌더링합니다
  • 기본값: 설정되지 않음, 따라서 화면 낭독기 모드는 꺼져 있습니다
  • 세션별 재정의: 한 세션에 대해 --ax-screen-reader가 CLAUDE_AX_SCREEN_READER보다 우선하며, 둘 다 이 키보다 우선합니다
settings.json

bashEditDiffEnabled

Bash 명령이 실행되는 동안 Git 저장소에서 어떤 파일이 변경되었는지 Claude Code가 기록할지 선택합니다. 기록하는 경우, 명령 실행 후 터미널에서 해당 파일의 diff를 볼 수 있으며, PostToolUse Bash 훅이 변경된 파일 목록을 받습니다. 목록에 있는 파일이 항상 해당 명령이 변경한 파일은 아닙니다. 명령이 실행되는 동안 다른 프로그램이나 다른 Bash 호출이 만든 변경도 목록에 나타날 수 있습니다. 모든 권한 모드에서 기록하려면 키를 true로 설정합니다. Claude Code v2.1.269 이상이 필요합니다.
  • 범위: 사용자 또는 관리형. true는 사용자 설정, --settings로 전달된 JSON 또는 관리형 설정에서만 유효하므로, 저장소의 .claude/settings.json이나 .claude/settings.local.json에 있는 true로는 기록을 켤 수 없습니다. 두 저장소 파일 중 하나에 있는 false는 더 높은 우선순위 파일이 true를 설정하지 않는 한 여전히 기록을 끕니다.
  • 유형: Boolean
  • 기본값: 설정되지 않음, 따라서 Claude Code는 자동 모드와 bypassPermissions 모드에서 Claude에게 Bash를 통해 파일을 편집하도록 지시할 때 변경 사항을 기록합니다
  • 세션별 재정의: 한 세션에 대해 CLAUDE_CODE_BASH_EDIT_DIFF가 이 키보다 우선합니다
settings.json

companyAnnouncements

시작 시 조직의 공지 사항을 사용자에게 표시합니다. 두 개 이상 나열하면 Claude Code는 각 세션마다 하나를 무작위로 선택합니다. 사용자가 처음 실행할 때는 첫 번째 항목을 표시합니다.
  • 범위: 모든 파일
  • 유형: 문자열 배열
  • 기본값: 설정되지 않음, 따라서 공지 사항이 표시되지 않습니다
settings.json

defaultShell

입력 상자에서 ! 접두사로 입력하는 셸 명령, 즉 Claude Code가 직접 실행하고 세션에 추가하는 명령을 Bash와 PowerShell 중 무엇으로 실행할지 선택합니다. "powershell"은 PowerShell 도구가 켜져 있을 때만 작동합니다. 이 도구는 Git Bash가 없는 Windows에서, 그리고 claude.ai 및 Console 계정의 경우 Git Bash가 있는 Windows에서 기본적으로 켜져 있습니다. Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry 세션과 macOS, Linux, WSL에서는 CLAUDE_CODE_USE_POWERSHELL_TOOL=1을 설정하여 도구를 켭니다. 도구를 끄려면 해당 변수를 0으로 설정합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 다음 중 하나:
    • "bash": Claude Code가 ! 명령을 Bash에서 실행합니다
    • "powershell": Claude Code가 ! 명령을 PowerShell에서 실행합니다
  • 기본값: "bash", Bash를 사용할 수 없는 Windows에서는 "powershell"
settings.json
지정한 셸을 사용할 수 없으면 Claude Code는 다른 셸을 사용합니다: PowerShell 도구가 꺼져 있으면 "powershell"은 Bash로 대체되고, Bash가 설치되어 있지 않으면 "bash"는 PowerShell로 대체됩니다.

dialogExpiry

Claude Code가 Remote Control이나 SDK 호스트 같은 원격 클라이언트로 전달하는 대화 상자와 보류된 세션 간 메시지에 대한 승인 대화 상자의 기한을 설정합니다. Claude Code v2.1.236 이상에서는 터미널에 아무도 없을 수 있는 세션에서 세션 중간에 표시되는 Fable 사용량 크레딧 동의 프롬프트에도 같은 기한이 적용됩니다. 기한 전에 응답이 없으면 Claude Code는 대화 상자를 취소하고 아무 작업도 하지 않는 기본 동작으로 계속합니다. Claude Code v2.1.224 이상이 필요합니다.
settings.json
권한 프롬프트와 AskUserQuestion 질문은 자체 흐름을 사용하며 이 기한의 적용을 받지 않습니다. /config에 Dialog expiry로 표시되며, 이 키를 사용자 설정에 기록합니다. 이 행은 Claude Code v2.1.232 이상이 필요하며, 관리형 설정이나 --settings 플래그가 키를 설정한 경우 Claude Code는 이 행을 숨깁니다.

editorMode

입력 프롬프트의 키 바인딩 모드를 선택합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 다음 중 하나:
    • "normal": 프롬프트 입력의 표준 키 바인딩
    • "vim": NORMAL, INSERT, VISUAL 모드를 갖춘 vim 스타일 편집
  • 기본값: "normal"
settings.json
/config에 Editor mode로 표시되며, 이 키를 사용자 설정에 기록합니다.

emojiCompletionEnabled

프롬프트 입력에서 :와 단축 코드를 입력하면 이모지 제안을 표시하고, :heart: 같은 완성된 단축 코드를 해당 이모지로 바꿉니다. 둘 다 끄려면 false로 설정합니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code가 : 뒤에 이모지 제안을 표시하고 완성된 단축 코드를 해당 이모지로 바꿉니다
    • false: Claude Code가 이모지를 제안하지도, 단축 코드를 바꾸지도 않습니다
  • 기본값: true
settings.json
이모지 단축 코드를 참조하세요. Claude Code v2.1.217 이상이 필요합니다.

fileSuggestion

기본 제공 파일 제안 대신 직접 만든 명령을 실행하여 @ 파일 경로 자동 완성을 제공합니다. 기본 제공 제안은 빠른 파일 시스템 탐색을 사용하며, 대규모 모노레포에서는 미리 빌드된 파일 인덱스 같은 프로젝트별 인덱싱이 더 효과적일 수 있습니다.
  • 범위: 모든 파일. 상태줄 및 파일 제안 게이트에 따라 Claude Code는 명령을 끄거나 관리형 값만 실행하며, 사용자의 명령은 경고 없이 건너뜁니다.
  • 유형: 항상 "command"인 type과 실행할 셸 명령인 command를 가진 객체
  • 기본값: 설정되지 않음, 따라서 Claude Code는 기본 제공 파일 제안을 사용합니다
settings.json
저장한 후 프롬프트에 @와 경로의 일부를 입력하면 명령의 출력에서 제안이 표시됩니다.

명령 입력 및 출력

Claude Code는 CLAUDE_PROJECT_DIR를 포함하여 훅과 동일한 환경 변수로 명령을 실행하며, 5초 후에는 대기를 중단합니다. 명령은 지금까지 입력한 내용을 담은 query 필드가 있는 JSON을 stdin으로 받습니다:
줄바꿈으로 구분된 파일 경로를 stdout에 출력합니다. Claude Code는 최대 15개를 표시합니다:
다음 스크립트는 쿼리를 읽어 저장소 파일 인덱스에 전달합니다:

footerLinksRegexes

정규식이 턴 출력(파일 내용과 가져온 페이지를 포함한 도구 결과, Claude 자체의 응답)과 일치하면 입력 상자 아래 푸터에 클릭 가능한 추가 배지를 렌더링합니다. 리뷰 도구나 이슈 트래커 같은 프로젝트 CLI가 출력한 ID를 세션 링크로 바꾸는 데 사용합니다.
  • 범위: 사용자 또는 관리형
  • 유형: 객체 배열, 각 객체는 "regex"로 설정된 type, pattern 정규식, url 템플릿, 선택적 label을 가집니다. url과 label의 {name} 자리 표시자는 pattern의 명명된 캡처 그룹으로 채워집니다
  • 기본값: 설정되지 않음, 따라서 배지가 렌더링되지 않습니다
이 예시는 PROJ-1234 같은 이슈 키와 일치시키고 캡처한 키로 각 링크를 만듭니다:
settings.json
이렇게 구성하면 도구 결과나 Claude의 응답에 PROJ-1234가 나타날 때 https://issues.example.com/browse/PROJ-1234로 연결되는 PROJ-1234 배지가 푸터에 표시됩니다.

배지 제약 조건

각 항목의 URL, 레이블, 배지 수는 다음과 같이 제한됩니다: 턴이 완료되면 Claude Code는 메인 스레드에서 각 항목의 pattern 정규식을 턴 출력과 대조하므로, 느린 정규식은 완료될 때까지 UI를 차단합니다. (a+)+$ 같은 중첩된 수량자는 특정 입력에 대해 기하급수적으로 오래 걸려 세션을 멈추게 할 수 있으므로, 각 pattern을 선형으로 유지하고 +나 *를 중첩하지 마세요. 사용자 지정 상태줄이 구성된 경우 푸터 배지는 그와 함께 렌더링되며, 어느 쪽도 다른 쪽을 대체하지 않습니다. 세션 데이터로 자체 내용을 계산하는 스크립트 기반 행에는 상태줄을 사용하고, 스크립트 없이 대화의 ID를 링크로 바꾸려면 푸터 배지를 사용합니다.

keybindingFlavor

v2.1.261부터 deprecated되었으며 효과가 없습니다. 프롬프트의 단어 편집 키는 Bash에서처럼 항상 readline 규칙을 따릅니다. Claude Code는 여전히 keybindingFlavor를 허용하므로 이를 설정한 설정 파일은 계속 유효합니다.
v2.1.238부터 v2.1.260까지는 "readline"으로 설정하면 Ctrl+W가 이전 단어만이 아니라 이전 공백까지 삭제했습니다.
  • 범위: 모든 파일
  • 유형: 문자열, "classic" 또는 "readline"
  • 기본값: 설정되지 않음

maxProseWidth

넓은 터미널에서도 줄을 읽기 쉽게 유지하도록 Claude 응답의 본문 너비를 제한합니다. 단락, 제목, 목록, 인용구는 이 열 수 안에서 줄바꿈되며, 표와 코드 블록은 터미널 전체 너비를 유지합니다. Claude Code v2.1.282 이상이 필요합니다.
  • 범위: 모든 파일
  • 유형: 터미널 열 수, 정수, 최솟값 40. Claude Code는 그 외의 값을 무시합니다
  • 기본값: 설정되지 않음, 따라서 본문은 터미널 가장자리에서 줄바꿈됩니다
settings.json

prefersReducedMotion

스피너, 시머, 플래시 효과 같은 인터페이스 애니메이션을 줄이거나 끕니다. /config에 Reduce motion으로 표시됩니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code가 스피너, 시머, 플래시 효과 같은 인터페이스 애니메이션을 줄이거나 끕니다
    • false: 설정되지 않은 것과 같으며, Claude Code가 애니메이션을 표시합니다
  • 기본값: false
settings.json

promptSuggestionEnabled

프롬프트 입력에 나타나는 회색 예측인 프롬프트 제안을 표시하거나 숨깁니다. 숨기려면 false로 설정하거나 /config에서 Prompt suggestions를 끕니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: 프롬프트 입력에 프롬프트 제안이 표시됩니다
    • false: Claude Code가 프롬프트 제안을 숨깁니다
  • 기본값: true
  • 세션별 재정의: 한 세션에 대해 CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION이 이 키보다 우선합니다
settings.json
프롬프트 제안에는 텔레메트리가 켜진 claude.ai 또는 Console 계정이 필요합니다. Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry에서, 또는 DISABLE_TELEMETRY 등으로 텔레메트리가 꺼진 경우에는 이 키가 효과가 없으며 CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=1만 제안을 켭니다.

respectGitignore

@ 파일 선택기가 .gitignore 패턴과 일치하는 파일을 제외할지 제어합니다. /config에 Respect .gitignore in file picker로 표시됩니다.
  • 범위: 모든 파일. 어떤 설정 파일도 이를 설정하지 않으면 Claude Code는 /config 토글이 기록하는 ~/.claude.json의 respectGitignore로 대체합니다.
  • 유형: Boolean
    • true: @ 파일 선택기가 .gitignore 패턴과 일치하는 파일을 제외합니다
    • false: @ 파일 선택기가 .gitignore 패턴과 일치하는 파일을 포함합니다
  • 기본값: true
settings.json

respondToBashCommands

입력 상자에서 ! 접두사로 셸 명령을 실행한 후 Claude가 응답할지 선택합니다. 기본적으로 Claude Code는 명령의 출력을 대화에 추가하고 Claude가 이에 응답합니다. 이 키를 false로 설정하면 응답 없이 출력을 컨텍스트에 추가하므로, 여러 명령을 실행한 뒤 한꺼번에 질문할 수 있습니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code가 명령의 출력을 대화에 추가하고 Claude가 이에 응답합니다
    • false: Claude Code가 응답 없이 출력을 컨텍스트에 추가합니다
  • 기본값: true
settings.json
! 접두사를 사용한 셸 모드를 참조하세요.

showClearContextOnPlanAccept

Claude가 플랜 모드에서 플랜을 완료하면 승인 메뉴를 표시합니다. 계획 수립에는 많은 컨텍스트가 사용될 수 있으므로, 이 키는 해당 메뉴에 **Yes, clear context and …**라는 첫 번째 옵션을 추가합니다. 이 옵션은 플랜을 승인하고, 대화 컨텍스트를 지우고, 플랜만으로 구현을 시작합니다. 레이블의 나머지 부분은 세션이 계속될 권한 모드를 나타내며, 계획 수립에 컨텍스트가 얼마나 사용되었는지 보여 줍니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: 플랜 승인 메뉴에 플랜을 승인하고 대화 컨텍스트를 지우는 첫 번째 옵션 **Yes, clear context and …**가 추가됩니다
    • false: 플랜 승인 메뉴에 컨텍스트 지우기 옵션이 표시되지 않습니다
  • 기본값: false
settings.json

showTurnDuration

각 응답 후에 “Cooked for 1m 6s · done 6:05 PM” 같은 턴 소요 시간 메시지를 표시하거나 숨깁니다. “done” 뒤의 시각은 턴이 끝난 시점을 나타내며, timeFormat과 timeZone이 형식과 시간대를 제어합니다. /config에 Show turn duration으로 표시됩니다.
  • 범위: 모든 파일. 어떤 설정 파일도 이를 설정하지 않으면 이전 버전에서 기록된 ~/.claude.json의 값이 적용됩니다.
  • 유형: Boolean
    • true: 각 응답 후에 턴 소요 시간 메시지가 표시됩니다
    • false: Claude Code가 턴 소요 시간 메시지를 숨깁니다
  • 기본값: true
settings.json

spellcheck

직접 설치한 맞춤법 검사기를 사용하여 입력하는 동안 프롬프트 입력에서 철자가 틀린 단어에 밑줄을 표시합니다. Claude Code는 입력 상자의 텍스트만 검사합니다. aspell, hunspell, ispell 설치 방법과 검사기가 검사하는 범위는 입력하는 동안 맞춤법 검사에서 다룹니다. Claude Code v2.1.235 이상이 필요합니다.
  • 범위: 사용자 또는 관리형. 이를 설정한 가장 높은 계층의 블록이 전체로 적용됩니다.
  • 유형: enabled(Boolean), checker("aspell", "hunspell", "ispell" 또는 "auto"), language(문자열, 사전 이름으로 검사기에 전달됨), color(문자열, 터미널 색상 이름, #rrggbb, rgb(r,g,b), ansi256(n) 또는 ansi:<name>)를 가진 객체
  • 기본값: 설정되지 않음, 따라서 맞춤법 검사는 꺼져 있습니다. checker의 기본값은 PATH에서 처음 발견된 세 검사기 중 하나인 "auto"이며, language의 기본값은 검사기 자체의 사전이고, color의 기본값은 테마의 오류 색상입니다
settings.json

spinnerTipsEnabled

Claude가 작업하는 동안 스피너 줄에는 “Use Plan Mode to prepare for a complex request before making changes. Press Shift+Tab twice to enable.” 같은 Claude Code 기능에 대한 짧은 팁이 순환 표시됩니다. 숨기려면 이 키를 false로 설정합니다. /config에 Show tips로 표시됩니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude가 작업하는 동안 스피너에 팁이 표시됩니다
    • false: Claude Code가 스피너 팁을 숨깁니다
  • 기본값: true
settings.json

spinnerTipsOverride

Claude가 작업하는 동안 Claude Code가 표시하는 스피너 팁에 직접 만든 팁을 추가하거나, 기본 제공 팁을 직접 만든 팁으로 대체합니다. Claude Code는 사용자의 팁을 기본 제공 팁과 같은 순환에 넣습니다. spinnerTipsEnabled를 false로 설정하면 Claude Code는 사용자의 팁을 포함한 모든 팁을 숨깁니다.
  • 범위: 모든 파일. Claude Code는 사용자 설정, --settings 플래그, 관리형 설정의 팁 객체, tipsFile, label, excludeDefault를 적용합니다. 프로젝트 및 로컬 설정에서는 일반 문자열 팁만 읽습니다.
  • 유형: 각각 선택 사항인 tips, tipsFile, label, excludeDefault 필드를 가진 객체
  • 기본값: 설정되지 않음, 따라서 Claude Code는 기본 제공 팁만 표시합니다
팁 객체, tipsFile, label, 그리고 프로젝트 및 로컬 설정은 일반 문자열만 제공한다는 범위 항목의 규칙에는 Claude Code v2.1.247 이상이 필요합니다. 각 tips 항목은 일반 문자열이거나 다음 필드를 가진 객체입니다: Claude Code는 일반 문자열을 위의 기본값과 위치 기반 id를 가진 팁으로 읽으므로, 목록 순서를 바꾸면 표시 기록이 초기화됩니다. 편집 후에도 기록을 유지하려면 팁에 id를 지정하세요. Claude Code는 tips와 tipsFile을 합쳐 최대 200개의 팁을 읽으며, 잘못된 항목은 설정 파일을 거부하는 대신 디버그 경고와 함께 삭제합니다. 나머지 필드를 사용하여 팁 파일을 지정하고, 접두사를 설정하고, 기본 제공 팁을 숨깁니다:
  • tipsFile: 같은 항목의 배열 또는 tips 배열을 가진 객체를 담은 로컬 JSON 파일의 절대 경로 또는 ~/ 경로, 최대 256 KB. Claude Code는 프로세스당 한 번 파일을 읽으므로 편집 내용은 다음 시작 시 로드됩니다. 서버 관리형 설정으로는 설정할 수 없으므로, 그곳에는 인라인 tips를 배포하거나 디스크상의 managed-settings.json에 경로를 배포하세요.
  • label: 사용자, --settings, 관리형 설정의 팁 앞에 Claude Code가 표시하는 접두사, 최대 40자. 기본값은 기본 제공 팁과 같은 접두사인 Tip이며, 프로젝트 및 로컬 설정의 팁은 항상 이 접두사를 사용합니다.
  • excludeDefault: 기본 제공 팁을 숨기고 사용자의 팁만 표시하려면 true로 설정합니다. 예를 들어 tipsFile이 존재하지 않거나 모든 항목이 잘못되어 Claude Code가 사용자의 팁을 하나도 로드할 수 없는 경우, 빈 스피너 대신 기본 제공 순환을 유지합니다.
둘 이상의 설정 파일이 키를 설정하면 Claude Code는 모든 파일의 팁을 표시하며, tipsFile, label, excludeDefault는 관리형 설정, --settings 플래그, 사용자 설정 중 각각을 설정한 가장 높은 우선순위의 것에서 가져옵니다. 사용자 설정에 있는 이 예시는 Acme tip 접두사로 일반 문자열 팁과 객체 팁을 순환에 추가합니다:
settings.json
예시의 각 필드는 Claude Code가 팁을 표시하는 방식의 한 가지를 바꿉니다:
  • label: Claude Code가 두 팁을 Tip: ... 대신 Acme tip: ...으로 표시합니다.
  • 일반 문자열: Claude Code가 기본값을 부여하므로 바로 다음 세션에서 다시 나타날 수 있습니다.
  • id: Claude Code가 두 번째 팁의 표시 기록을 gateway-errors 기준으로 저장하므로, 팁을 추가하거나 순서를 바꾼 후에도 쿨다운이 계속 적용됩니다.
  • cooldownSessions: Claude Code가 gateway-errors 팁을 표시한 후, 5세션이 지날 때까지 해당 팁을 다시 표시하지 않습니다.
  • priority: gateway-errors 팁과 다른 팁이 같은 세션 수 동안 표시되지 않았을 때, 예를 들어 둘 다 아직 표시되지 않았을 때 Claude Code는 gateway-errors를 먼저 표시합니다. 일반 문자열의 우선순위는 기본값인 0입니다.
Claude가 작업하는 동안 Claude Code는 Acme tip: Run /review before opening a PR처럼 사용자의 접두사와 함께 스피너에 팁을 표시합니다.

spinnerVerbs

턴이 진행되는 동안 스피너에는 “Accomplishing”, “Architecting”, “Baking” 같은 동사가 순환 표시됩니다. 이 키를 사용하여 해당 순환에 직접 만든 동사를 추가하거나 기본 제공 목록을 직접 만든 목록으로 대체합니다.
  • 범위: 모든 파일
  • 유형: 문자열 배열인 verbs와 다음 중 하나인 mode를 가진 객체:
    • "append": Claude Code가 기본 제공 세트에 사용자의 동사를 추가합니다
    • "replace": Claude Code가 사용자의 동사만 표시합니다
  • 기본값: 설정되지 않음, 따라서 Claude Code는 기본 제공 동사를 사용합니다
이 예시는 기본 제공 세트에 두 개의 동사를 추가합니다:
settings.json
"replace" 모드에서 verbs 배열이 비어 있으면 Claude Code는 기본 제공 동사를 유지합니다.

statusLine

직접 만든 명령을 실행하여 모델, 비용, git 브랜치 같은 컨텍스트와 함께 프롬프트 아래에 상태줄을 렌더링합니다. 선택적 필드로 간격을 조정하고, 주기적 재실행을 추가하고, 스크립트가 직접 vim.mode를 렌더링할 때 기본 제공 vim 모드 표시기를 숨길 수 있습니다.
  • 범위: 모든 파일. allowManagedHooksOnly가 켜져 있거나 disableAllHooks가 관리형 설정 외부에서 설정된 경우, 관리형 설정 값만 실행됩니다.
  • 유형: "command"로 설정된 type과 command 문자열, 그리고 선택적으로 문자 수인 padding, 초 단위이며 최솟값이 1인 refreshInterval, Boolean인 hideVimModeIndicator를 가진 객체
  • 기본값: 설정되지 않음, 따라서 상태줄이 없습니다
이 예시는 모델 이름과 컨텍스트 사용량을 출력하고 가로 간격 2자를 추가합니다:
settings.json
이 예시는 jq가 설치되어 있어야 하며 셸에서 실행됩니다. PowerShell 및 Git Bash에 해당하는 예시는 Windows 구성을, 전체 설정은 상태줄 수동 구성을 참조하세요.

subagentStatusLine

Claude가 서브에이전트를 실행하면 Claude Code는 프롬프트 아래의 작업 표시에 서브에이전트당 한 행씩 name · description · token count를 보여 주며 나열합니다. 이 키를 사용하면 직접 만든 명령을 실행하여 해당 행을 다시 작성할 수 있으며, 예를 들어 각 서브에이전트의 컨텍스트 사용량을 백분율로 표시할 수 있습니다. 새로 고칠 때마다 Claude Code는 표시되는 행을 각 서브에이전트의 id, name, status, model, tokenCount 등을 담은 tasks 배열과 함께 하나의 JSON 객체로 stdin에 보내고, {"id", "content"} 줄로 다시 작성한 각 id의 행을 대체합니다. 다시 작성하지 않은 행은 기본 렌더링을 유지합니다.
  • 범위: 모든 파일. allowManagedHooksOnly가 켜져 있거나 disableAllHooks가 관리형 설정 외부에서 설정된 경우, 관리형 설정 값만 실행됩니다.
  • 유형: "command"로 설정된 type과 command 문자열을 가진 객체
  • 기본값: 설정되지 않음, 따라서 Claude Code는 기본 행을 렌더링합니다
settings.json
서브에이전트 상태줄을 참조하세요.

syntaxHighlightingDisabled

Claude Code는 기본 제공 하이라이터로 터미널에 표시하는 diff, 코드 블록, 파일 미리 보기의 코드를 언어별로 색상 처리하며, 플러그인이나 언어 서버는 관여하지 않습니다. 예를 들어 색상이 터미널 테마와 충돌하거나 화면 낭독기를 느리게 하는 경우, 이 키를 true로 설정하여 일반 텍스트로 표시합니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code가 diff, 코드 블록, 파일 미리 보기에서 구문 강조를 끕니다
    • false: Claude Code가 구문을 강조합니다
  • 기본값: false
settings.json

terminalProgressBarEnabled

일부 터미널은 그 안에서 실행 중인 프로그램에 대해 탭이나 작업 표시줄에 진행률 표시기를 보여 줄 수 있습니다. Claude가 작업하는 동안 Claude Code는 터미널에 진행 중 상태를 보고하므로, 다른 탭이나 창에서도 세션이 아직 작업 중인지 확인할 수 있습니다. 백그라운드 서브에이전트나 동적 워크플로가 아직 실행 중이면 턴이 끝난 후에도 표시기가 계속 보이며, 세션이 유휴 상태가 되면 사라집니다. Claude Code는 표시기를 지원하는 터미널에서만 이를 보고합니다: ConEmu, Ghostty 1.2.0 이상, iTerm2 3.6.6 이상. Claude Code가 보고하지 않도록 하려면 이 키를 false로 설정합니다. /config에 Terminal progress bar로 표시됩니다.
  • 범위: 모든 파일. 어떤 설정 파일도 이를 설정하지 않으면 이전 버전에서 기록된 ~/.claude.json의 값이 적용됩니다.
  • 유형: Boolean
    • true: 지원하는 터미널에서 터미널 진행률 표시줄이 표시됩니다
    • false: Claude Code가 터미널 진행률 표시줄을 숨깁니다
  • 기본값: true
settings.json

terminalTitleFromRename

Claude Code는 터미널 탭의 제목을 설정합니다. 기본적으로 대화에서 생성한 제목을 사용하며, /rename이나 --name으로 세션에 이름을 지정하면 탭에 해당 이름이 대신 표시됩니다. 세션 이름을 지정한 후에도 탭에 생성된 제목을 유지하려면 이 키를 false로 설정합니다. 이름 자체는 여전히 적용되므로 /resume <name>과 세션 선택기에서 세션을 찾을 수 있습니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: 터미널 탭 제목에 설정한 세션 이름이 표시됩니다
    • false: 탭이 Claude Code가 대화에서 생성한 제목을 유지합니다
  • 기본값: true
settings.json
Claude Code가 터미널 제목을 전혀 업데이트하지 않도록 하려면 대신 CLAUDE_CODE_DISABLE_TERMINAL_TITLE을 1로 설정합니다.

theme

인터페이스의 색상 테마를 선택합니다. /config에 Theme로 표시됩니다.
  • 범위: 모든 파일. 어떤 설정 파일도 이를 설정하지 않으면 이전 버전에서 기록된 ~/.claude.json의 값이 적용됩니다.
  • 유형: 문자열, 다음 중 하나:
    • "auto": 터미널의 밝은 배경 또는 어두운 배경에 맞춥니다
    • "dark": 어두운 테마
    • "light": 밝은 테마
    • "dark-daltonized": 색각 이상자 친화적인 색상의 어두운 테마
    • "light-daltonized": 색각 이상자 친화적인 색상의 밝은 테마
    • "dark-ansi": 터미널의 ANSI 색상 팔레트만 사용하는 어두운 테마
    • "light-ansi": 터미널의 ANSI 색상 팔레트만 사용하는 밝은 테마
    • "custom:<slug>" 또는 "custom:<plugin-name>:<slug>": ~/.claude/themes/ 또는 플러그인의 사용자 지정 테마
  • 기본값: "dark"
settings.json
사용자 지정 테마 만들기를 참조하세요.

timeFormat

각 턴 소요 시간 메시지 끝의 done 6:05 PM이나 트랜스크립트 뷰어의 타임스탬프처럼 Claude Code가 인터페이스에 표시하는 시각의 형식을 선택합니다. 프리셋을 선택하려면 /config를 실행하고 Time format을 설정합니다. Claude Code v2.1.257 이상이 필요합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 다음 중 하나:
    • "auto": 설정되지 않은 것과 같으며, 각 시각은 기본 제공 형식을 유지하고 턴 소요 시간 메시지에서는 로캘을 따릅니다
    • "12-hour": 12시간제
    • "24-hour": 24시간제
    • "24-hour-utc": 18:05Z처럼 분 뒤에 Z가 붙는 UTC 24시간제. 이 프리셋에서는 Claude Code가 timeZone을 무시합니다
    • "%H:%M" 같은 strftime 패턴: Claude Code가 패턴으로 각 시각을 작성합니다. %를 포함하는 값은 모두 패턴이며, 프리셋 외의 다른 값은 "auto"로 간주됩니다
  • 기본값: "auto"
settings.json
/config는 프리셋만 제공하므로 strftime 패턴을 사용하려면 설정 파일에 키를 추가합니다. 이 예시는 각 시각을 두 자리 24시간제로 표시합니다:
settings.json
그러면 턴 소요 시간 메시지와 트랜스크립트 뷰어에 18:05 같은 시각이 표시됩니다. 트랜스크립트 뷰어에서는 패턴이 타임스탬프 전체이므로, 날짜를 표시하려면 날짜 지시자를 추가합니다. 이 예시는 시각 앞에 날짜를 붙입니다:
settings.json
그러면 같은 위치에 2026-09-01 18:05 같은 시각이 표시됩니다.

timeZone

인터페이스의 시각을 시스템 시간대가 아닌 다른 시간대로 표시합니다. "UTC"나 "Europe/Dublin" 같은 IANA 시간대 이름으로 설정합니다. 그러면 timeFormat이 제어하는 시각이 이 시간대로 표시됩니다. timeFormat이 "24-hour-utc"이면 시각은 UTC로 유지되며 Claude Code는 이 키를 무시합니다. /config에는 이 키에 대한 행이 없으므로 설정 파일에서 설정합니다. Claude Code v2.1.257 이상이 필요합니다.
  • 범위: 모든 파일
  • 유형: 문자열, IANA 시간대 이름. Claude Code가 이름을 인식하지 못하면 시스템 시간대를 사용합니다
  • 기본값: 설정되지 않음, 따라서 시각은 시스템 시간대로 표시됩니다
settings.json

tui

터미널 UI 렌더러를 선택합니다. 가상화된 스크롤백을 갖춘 깜박임 없는 대체 화면 렌더러에는 "fullscreen"을, 클래식 메인 화면 렌더러에는 "default"를 사용합니다. /tui fullscreen 또는 /tui default를 실행하면 이 키가 자동으로 기록됩니다.
  • 범위: 모든 파일
  • 유형: 문자열, 다음 중 하나:
    • "default": 클래식 메인 화면 렌더러
    • "fullscreen": 가상화된 스크롤백을 갖춘 깜박임 없는 대체 화면 렌더러
  • 기본값: 설정되지 않음, 따라서 Claude Code가 렌더러를 자동으로 선택합니다
  • 세션별 재정의: 한 세션에 대해 CLAUDE_CODE_NO_FLICKER와 CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN이 이 키보다 우선합니다. CLAUDE_CODE_NO_FLICKER=1은 전체 화면을 켜고, CLAUDE_CODE_NO_FLICKER=0 또는 CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1은 끕니다. 둘 다 설정되면 Claude Code는 전체 화면을 끕니다
settings.json
tmux -CC 환경이나 Windows로의 SSH 연결에서는 CLAUDE_CODE_NO_FLICKER=1을 설정하지 않는 한 Claude Code가 클래식 렌더러를 유지합니다. 에이전트 뷰에서 연 백그라운드 세션은 이 설정과 관계없이 항상 전체 화면 렌더러를 사용합니다.

verbose

기본적으로 트랜스크립트는 각 도구 호출을 Claude가 실행한 명령과 출력 줄 수 같은 짧은 요약으로 접으며, 자세한 내용을 보려면 Ctrl+O를 눌러 트랜스크립트 전체를 확장 보기로 전환합니다. 모든 도구 호출의 전체 입력과 출력을 발생하는 즉시 인라인으로 표시하려면 이 키를 true로 설정합니다. 훅, MCP 서버 또는 긴 셸 명령을 디버깅할 때 유용합니다. /config에 Verbose output으로 표시됩니다.
  • 범위: 모든 파일. 어떤 설정 파일도 이를 설정하지 않으면 이전 버전에서 기록된 ~/.claude.json의 값이 적용됩니다.
  • 유형: Boolean
    • true: 전체 도구 출력이 표시됩니다
    • false: 도구 출력의 잘린 요약이 표시됩니다
  • 기본값: false
  • 세션별 재정의: 한 세션에 대해 --verbose가 이 키보다 우선합니다
settings.json
viewMode 값이나 유지되는 /focus 선택은 매 세션마다 이 키를 재정의합니다.

viewMode

Claude Code가 시작할 때의 트랜스크립트 보기를 설정합니다: "default", "verbose" 또는 "focus". 설정하면 유지되는 /focus 선택과 verbose 설정을 모두 재정의합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 다음 중 하나:
    • "default": 잘린 도구 출력을 포함한 일반 트랜스크립트
    • "verbose": 전체 도구 출력을 포함한 트랜스크립트
    • "focus": 마지막 프롬프트, 편집 diffstat을 포함한 도구 호출의 한 줄 요약, 최종 응답만 표시합니다. 포커스 보기에는 전체 화면 렌더러가 필요합니다
  • 기본값: 설정되지 않음, 따라서 verbose 설정과 마지막 /focus 선택이 적용됩니다
  • 세션별 재정의: 한 세션에 대해 --verbose가 이 키보다 우선합니다
settings.json

vimInsertModeRemaps

vim 편집기 모드에서 두 키로 된 INSERT 모드 시퀀스를 Escape에 매핑합니다. 각 키는 순서대로 입력하는 정확히 두 개의 인쇄 가능한 문자이며, "<Esc>"가 지원되는 유일한 대상입니다. Claude Code는 다른 항목을 무시합니다.
  • 범위: 사용자 또는 관리형. 저장소가 사용자의 키 입력을 다시 매핑할 수 없습니다.
  • 유형: 두 문자 시퀀스를 "<Esc>"에 매핑하는 객체
  • 기본값: 설정되지 않음
settings.json
editorMode가 "vim"이 아니면 효과가 없습니다. INSERT 모드 키 시퀀스 다시 매핑을 참조하세요.

voice

음성 받아쓰기를 켜고 받아쓰기 키의 동작 방식을 선택합니다. /voice를 실행하면 Claude Code가 이 객체를 자동으로 기록합니다.
  • 범위: 모든 파일
  • 유형: Boolean인 enabled, 홀드 모드에서만 적용되는 Boolean인 autoSubmit, 그리고 다음 중 하나인 mode를 가진 객체:
    • "hold": 말하는 동안 받아쓰기 키를 누르고 있다가 놓으면 중지됩니다
    • "tap": 키를 한 번 탭하면 녹음이 시작되고 다시 탭하면 전송됩니다
  • 기본값: 설정되지 않음, 따라서 받아쓰기는 꺼져 있습니다. enabled가 true이고 mode가 설정되지 않은 경우 Claude Code는 "hold"를 사용합니다
이 예시는 받아쓰기를 켜고, 키를 한 번 탭하면 녹음이 시작되고 다시 탭하면 전송되도록 합니다:
settings.json
autoSubmit은 홀드 모드에서 키를 놓을 때 프롬프트를 전송합니다. 음성 받아쓰기에는 claude.ai 계정이 필요합니다.

voiceEnabled

voice 객체가 이를 대체한 v2.1.92부터 deprecated되었습니다. 이전 설정 파일이 계속 작동하도록 Claude Code는 여전히 이 키를 읽지만, 새 구성에서는 voice.enabled를 설정해야 합니다.
voice 객체 이전에 사용되던 단일 Boolean 형식으로 음성 받아쓰기를 켭니다. 둘 다 설정된 경우 voice.enabled가 적용됩니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: claude.ai 계정으로 로그인되어 있고 조직의 정책이 음성을 허용하면 음성 받아쓰기가 켜집니다. 단, voice.enabled가 설정된 경우에는 그 값이 적용됩니다
    • false: 음성 받아쓰기가 꺼집니다. 단, voice.enabled가 설정된 경우에는 그 값이 적용됩니다
  • 기본값: 설정되지 않음
settings.json

wheelScrollAccelerationEnabled

전체 화면 렌더링에서 빠르게 스크롤할 때 마우스 휠 스크롤 속도를 가속합니다. 휠 한 칸당 일정한 스크롤 속도를 원하면 false로 설정합니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code가 빠르게 스크롤할 때 마우스 휠 스크롤 속도를 가속합니다
    • false: Claude Code가 휠 한 칸당 일정한 속도로 스크롤합니다
  • 기본값: true
settings.json

Git 및 속성

Claude Code가 커밋 및 풀 요청에 추가하는 속성을 제어하고 git과 어떻게 작동하는지 관리합니다.

attribution

Claude Code가 git 커밋 및 풀 요청에 추가하는 속성을 사용자 정의합니다. 커밋은 기본적으로 Co-Authored-By와 같은 git 트레일러를 받습니다. 풀 요청 설명은 일반 텍스트를 받습니다. 아래의 하위 키를 사용하여 각 부분을 별도로 설정합니다. 모든 속성을 숨기려면 attribution을 false로 설정합니다. 이전 버전도 읽는 설정 파일에서는 commit 및 pr을 빈 문자열로 설정하고 sessionUrl을 false로 설정합니다. 이 예제는 커밋 속성을 바꾸고, 풀 요청 속성을 제거하며, 세션 링크를 삭제합니다:
settings.json
commit 또는 pr을 설정하면 Claude Code는 더 이상 사용되지 않는 includeCoAuthoredBy 설정을 무시하고 설정하지 않은 두 항목에 대해 기본 텍스트를 사용합니다. Claude Code는 Claude에게 속성에 대한 사용자 정의 지침(예: CLAUDE.md 또는 메모리 규칙)이 이러한 커밋 및 PR 라인보다 우선한다고 알립니다. 단, 라인이 관리되는 설정에서 설정된 경우는 제외합니다.

includeCoAuthoredBy

v2.0.62 이후 더 이상 사용되지 않음. attribution이 이를 대체했습니다. Claude Code는 여전히 이를 읽지만, 새로운 구성은 attribution을 설정해야 합니다.
이 키를 대체하는 attribution을 대신 사용하십시오. 이를 통해 커밋 트레일러, 풀 요청 텍스트 및 세션 링크를 별도로 변경하거나 숨길 수 있습니다. Claude Code는 여전히 attribution이 존재하기 이전의 설정 파일에서 includeCoAuthoredBy: false를 준수하지만, attribution.commit 또는 attribution.pr을 설정하면 이를 무시합니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: 설정되지 않은 것과 동일합니다. Claude Code는 커밋 트레일러 및 풀 요청 속성 텍스트를 추가합니다.
    • false: Claude Code는 커밋 트레일러 및 풀 요청 속성 텍스트를 모두 생략합니다. 단, attribution이 commit 또는 pr을 설정하는 경우 attribution 규칙이 적용됩니다.
  • 기본값: true
settings.json
모든 속성을 숨기려면 attribution을 참조하십시오.

includeGitInstructions

Claude Code는 Claude에게 두 가지 git 관련 컨텍스트를 제공합니다. Bash 도구의 설명에 있는 커밋 및 풀 요청 작성 방법에 대한 기본 제공 지침과 저장소의 git 상태 스냅샷입니다. 스냅샷은 현재 분기, 주 분기, git status 출력 및 최근 커밋을 포함합니다. Claude Code는 대화가 시작될 때 이를 읽습니다. 예를 들어 자신의 git 워크플로우 스킬을 사용할 때 이 키를 false로 설정하여 둘 다 제외합니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: Claude Code는 기본 제공 커밋 및 풀 요청 워크플로우 지침과 git 상태 스냅샷을 포함합니다. 클라우드 세션은 스냅샷을 포함하지 않습니다.
    • false: Claude Code는 둘 다 제외합니다.
  • 기본값: true
  • 세션별 재정의: CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS는 한 세션에 대해 이 키보다 우선합니다.
settings.json
비대화형 모드 또는 Agent SDK에서 시스템 프롬프트를 대체하면 이 키가 true인 경우에도 세션이 스냅샷 없이 시작됩니다:
  • -p 실행: --system-prompt 또는 --system-prompt-file을 전달하면 프롬프트가 대체됩니다. --agent 또는 agent 설정으로 선택한, 자체 프롬프트가 있는 사용자 정의 에이전트를 실행하는 경우에도 프롬프트가 대체됩니다. bare 모드 외부에서 스냅샷을 유지하려면 사용자 정의 에이전트 없이 실행하고, 프롬프트를 대체하는 대신 --append-system-prompt로 지침을 추가합니다.
  • Agent SDK: 사용자 정의 시스템 프롬프트 또는 사용자 정의 메인 스레드 에이전트를 사용하면 프롬프트가 대체됩니다. 시스템 프롬프트를 설정하지 않으면 SDK는 최소 기본값을 사용하며, 이 경우에도 세션이 스냅샷 없이 시작됩니다. bare 모드 외부에서 스냅샷을 유지하려면 사용자 정의 agent 없이 claude_code 프리셋을 사용합니다.

prUrlTemplate

Claude Code가 렌더링하는 PR 링크(바닥글 배지 및 도구 결과 요약)를 github.com 대신 내부 코드 검토 도구로 지정합니다. Claude Code는 PR URL에서 {host}, {owner}, {repo}, {number} 및 {url}을 대체합니다. GitLab 병합 요청 링크는 두 표면 모두에서 GitLab URL을 유지합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 5개의 자리 표시자 중 하나를 사용하는 URL 템플릿
  • 기본값: 설정되지 않음
settings.json
Claude Code는 자신이 직접 렌더링하는 링크에만 템플릿을 적용합니다. Claude가 메시지에 작성한 PR 번호(예: #123)는 Claude가 작성한 대로 유지됩니다. /pull/<number> 형태가 아닌 URL은 변경되지 않습니다.

attribution.commit

Claude Code가 git 커밋에 추가하는 속성 텍스트(모든 트레일러 포함)를 설정합니다. 커밋 속성을 숨기려면 빈 문자열로 설정합니다.
  • 범위: 모든 파일
  • 유형: 문자열
  • 기본값: 설정되지 않음. 따라서 Claude Code는 Co-Authored-By: <name> <noreply@anthropic.com>을 추가합니다. 이름은 Claude Sonnet 5와 같은 커밋이 만들어질 때 사용 중인 모델입니다. 서브에이전트가 커밋을 만들 때 트레일러는 서브에이전트의 모델을 이름으로 지정합니다.
    • Claude Code가 모델을 Claude 모델로 인식하지만 정확한 버전을 확인할 수 없는 경우 Claude만 작성합니다.
    • 모델 ID를 Claude 모델과 일치시킬 수 없는 경우(예: 사용자 정의 ANTHROPIC_BASE_URL을 통해 제공되는 타사 모델) Claude Code를 작성합니다.
이 예제는 기본 트레일러를 사용자 정의 라인 및 사용자 정의 Co-Authored-By 트레일러로 바꿉니다:
settings.json

attribution.pr

Claude Code가 풀 요청 설명에 추가하는 속성 텍스트를 설정합니다. 풀 요청 속성을 숨기려면 빈 문자열로 설정합니다.
  • 범위: 모든 파일
  • 유형: 문자열
  • 기본값: 설정되지 않음. 따라서 Claude Code는 🤖 Generated with [Claude Code](https://claude.com/claude-code)를 추가합니다.
settings.json

attribution.sessionUrl

Claude Code가 클라우드 또는 Remote Control 세션에서 커밋하거나 풀 요청을 열 때 claude.ai 세션 링크를 추가할지 여부를 선택합니다. Claude Code는 커밋에 Claude-Session 트레일러로 링크를 추가하고 풀 요청 설명에 링크로 추가합니다. 링크를 생략하려면 false로 설정합니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: Claude Code는 클라우드 또는 Remote Control 세션에서 커밋하거나 풀 요청을 열 때 claude.ai 세션 링크를 추가합니다.
    • false: Claude Code는 링크를 생략합니다.
  • 기본값: true
settings.json

훅과 자동화

훅을 등록하고, 실행할 훅을 제한하며, 워크플로를 제어합니다. 훅 이벤트 및 페이로드는 훅 참조를 참조하십시오.

allowedHttpHookUrls

HTTP 훅이 대상으로 할 수 있는 URL을 제한합니다. 이 키를 정의하면 Claude Code는 URL이 패턴 중 하나와 일치하는 경우에만 HTTP 훅을 실행하고 나머지는 실행하지 않고 차단합니다. 빈 배열은 모든 HTTP 훅을 차단합니다.
  • 범위: 모든 파일. 배열은 설정 파일 전체에서 병합됩니다.
  • 유형: URL 패턴 배열, *를 와일드카드로 사용
  • 기본값: 설정되지 않음, 따라서 모든 URL이 허용됨
이 예제는 https://hooks.example.com/ 아래의 모든 URL과 모든 http://localhost URL을 허용합니다:
settings.json
호스트명 일치는 대소문자를 구분하지 않으며 정규화된 도메인 이름을 표시하는 후행 점이 있는 hooks.example.com.을 DNS가 처리하는 방식과 동일하게 hooks.example.com으로 취급합니다. 허용 목록은 관리형 설정을 포함한 모든 소스의 훅에 적용됩니다.

allowManagedHooksOnly

훅 실행을 조직이 배포하는 훅으로 제한합니다.
  • 범위: 관리됨
  • 유형: 부울
    • true: 관리형 훅만 실행되며, Agent SDK 훅 및 관리형 설정이 강제로 활성화하는 플러그인의 훅도 실행됩니다. allowManagedHooksOnly에서 실행되는 항목을 참조하십시오.
    • false: 모든 설정 범위 및 플러그인의 훅이 실행됨
  • 기본값: 설정되지 않음, 따라서 모든 설정 범위 및 플러그인의 훅이 실행됨
managed-settings.json

allowManagedHooksOnly에서 실행되는 항목

이를 true로 설정하면 Claude Code는 로드되는 훅 및 훅과 유사한 명령을 변경합니다:
  • 관리형 훅 및 SDK 훅 실행: 관리형 설정의 훅 및 Agent SDK가 프로세스에 등록하는 훅
  • 강제 활성화된 플러그인 훅 실행: 관리형 설정이 enabledPlugins를 통해 강제로 활성화하는 플러그인의 훅. Claude Code는 전체 plugin@marketplace ID와 일치하므로 다른 마켓플레이스의 동일한 이름의 플러그인은 차단된 상태로 유지됩니다. 이를 통해 조직 마켓플레이스를 통해 검증된 훅을 배포하면서 다른 모든 것을 차단할 수 있습니다. 이러한 플러그인의 mod는 조직의 것으로 계산될 때만 로드됩니다.
  • 다른 모든 것은 차단됨: 사용자, 프로젝트 및 로컬 훅, 다른 설치된 플러그인의 훅 및 mod, 에이전트 frontmatter에 선언된 훅. Claude Code에 내장된 mod는 계속 실행됩니다. 사용자의 mod만 차단하려면 allowManagedModsOnly를 대신 설정합니다.
  • 명령 소스 플러그인 비활성화: Claude Code는 또한 disableCommandPluginSources를 명시적으로 false로 설정하지 않는 한 command 소스가 있는 플러그인(관리형 enabledPlugins에서 강제로 활성화된 플러그인 포함)을 비활성화합니다.
  • 마켓플레이스 headersHelper 명령 차단: Claude Code는 또한 disableCommandPluginSources가 명시적으로 false로 설정되지 않는 한 마켓플레이스 headersHelper 명령을 차단합니다. 단, 관리형 설정 자체가 선언하는 마켓플레이스는 제외됩니다. Claude Code v2.1.238 이상이 필요합니다.
  • 상태줄 및 파일 제안이 관리형 설정으로 좁혀짐: Claude Code는 상태줄 및 파일 제안 게이트를 따르면서 관리형 설정에서만 statusLine, fileSuggestion, subagentStatusLine을 읽습니다.
/goal 명령은 이 키가 설정된 동안 실행할 수 없습니다. 훅에 따라 달라지기 때문입니다.

disableAllHooks

훅, 모든 사용자 정의 상태줄, 모든 사용자 정의 파일 제안 명령을 끕니다. 설정에서 삭제하지 않고 이 모든 것을 일시적으로 끄는 데 사용합니다.
  • 범위: 모든 파일. 관리형 설정만 관리형 훅을 비활성화할 수 있습니다.
  • 유형: 부울
    • true: Claude Code는 훅, 모든 사용자 정의 상태줄, 모든 사용자 정의 파일 제안 명령을 끕니다.
    • false: 훅, 상태줄, 파일 제안 명령이 실행됨
  • 기본값: 설정되지 않음, 따라서 훅이 실행됨
settings.json
범위는 키를 포함하는 파일에 따라 달라집니다:
  • 관리형 설정에서: Claude Code는 관리형 훅을 포함한 모든 구성된 훅을 비활성화하고 Agent SDK가 프로세스에 등록하는 훅을 계속 실행합니다.
  • 다른 설정 파일에서: Claude Code는 사용자, 프로젝트, 로컬 및 플러그인 훅을 비활성화합니다. 관리형 훅, Agent SDK 훅, 관리형 enabledPlugins에서 강제로 활성화된 플러그인의 훅은 계속 실행됩니다.
이 키는 코드가 훅을 등록하는 플러그인인 mod도 중지합니다:
  • 관리형 설정에서: 조직의 mod를 포함하여 설치된 모든 플러그인의 mod가 중지됩니다.
  • 다른 설정 파일에서: 사용자가 설치한 mod는 중지되고, 조직의 mod는 계속 실행됩니다.
Claude Code에 내장된 mod는 두 경우 모두 계속 실행됩니다. 각 mod에는 자체 스위치가 있습니다. 관리형 설정이 이 키를 설정할 때 Agent SDK 훅을 실행 상태로 유지하려면 Claude Code v2.1.242 이상이 필요합니다. /goal 명령은 훅이 비활성화된 동안 실행할 수 없으며, /hooks 메뉴는 훅 대신 공지를 표시합니다.

상태줄 및 파일 제안 게이트

Claude Code는 statusLine, fileSuggestion, subagentStatusLine에 대해 다음 순서로 두 가지 결정을 내립니다: 좁혀짐 상태에서 Claude Code는 배포된 관리형 값이 있으면 실행합니다. 그렇지 않으면 경고 없이 값을 건너뜁니다: 상태줄이 비활성화되고 @ 자동 완성은 기본 제공 파일 제안으로 돌아갑니다.

disableWorkflows

동적 워크플로와 관리형 설정을 통한 조직과 같이 설정이 도달하는 모든 사람을 위한 번들 워크플로 명령을 끕니다. 자신을 위해서만 워크플로를 켜거나 끄려면 enableWorkflows를 대신 사용하십시오. /config의 동적 워크플로 토글이 사용자 설정에 기록합니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: Claude Code는 설정이 도달하는 모든 사람을 위해 동적 워크플로와 번들 워크플로 명령을 끕니다.
    • false: 설정되지 않은 것과 동일합니다. 워크플로가 켜져 있는지 여부는 enableWorkflows와 계획의 기본값을 따릅니다.
  • 기본값: false
  • 세션별 재정의: CLAUDE_CODE_DISABLE_WORKFLOWS는 한 세션 동안 워크플로를 끕니다. 둘 중 하나가 워크플로를 끄면 다른 하나는 다시 켤 수 없습니다.
settings.json

enableWorkflows

계획의 기본값이 원하는 것이 아닐 때 자신을 위해 동적 워크플로를 켜거나 끕니다. /config에 동적 워크플로로 나타나며, 이는 이 키를 사용자 설정에 기록하고 계획의 기본값으로 다시 토글할 때 제거합니다. 관리형 설정에서 모든 사람을 위해 워크플로를 끄려면 disableWorkflows를 대신 사용하십시오.
  • 범위: 모든 파일
  • 유형: 부울
    • true: Claude Code는 자신을 위해 동적 워크플로를 켭니다.
    • false: Claude Code는 자신을 위해 동적 워크플로를 끕니다.
  • 기본값: 설정되지 않음, 따라서 워크플로는 켜져 있습니다. Pro 계획에서는 꺼져 있습니다.
  • 세션별 재정의: CLAUDE_CODE_DISABLE_WORKFLOWS는 한 세션 동안 워크플로를 끕니다. true는 설정된 동안 워크플로를 다시 켤 수 없습니다.
settings.json
disableWorkflows와 조직의 워크플로 정책도 우선순위를 가집니다: enableWorkflows: true는 어떤 소스가 워크플로를 끄는 동안 워크플로를 다시 켤 수 없습니다. Claude Code는 사용자 설정 이외의 소스가 enableWorkflows를 설정하거나 disableWorkflows를 true로 설정하는 동안 /config 행을 숨깁니다.

hooks

Claude Code의 수명 주기의 특정 지점(예: 도구 호출 전 또는 세션 시작 시)에서 훅으로 자신의 명령, 프롬프트, 에이전트, HTTP 요청 또는 MCP 도구를 실행합니다. 훅 참조는 모든 이벤트, 페이로드 및 종료 코드를 나열합니다. 각 이벤트는 매처 그룹 목록에 매핑되고, 각 그룹은 매처가 적용될 때 실행할 핸들러를 나열합니다.
  • 범위: 모든 파일. 훅은 서로 대체하지 않고 파일 전체에서 병합되며, 관리형 설정의 훅은 다른 파일에서 제거할 수 없습니다.
  • 유형: 훅 이벤트로 키가 지정된 객체. 각 값은 "command", "prompt", "agent", "http" 또는 "mcp_tool"의 type을 가진 hooks 항목이 있는 { "matcher", "hooks" } 그룹의 배열입니다.
  • 기본값: 설정되지 않음, 따라서 훅이 실행되지 않음
이 예제는 모든 Bash 도구 호출 전에 스크립트를 실행합니다:
settings.json
모든 이벤트, 매처 패턴 및 핸들러 필드는 훅 참조를 참조하십시오. 훅을 끄려면 disableAllHooks를 참조하십시오. 훅을 조직이 배포하는 것으로 제한하려면 allowManagedHooksOnly를 참조하십시오.

httpHookAllowedEnvVars

HTTP 훅은 환경 변수의 값을 요청 헤더(예: Authorization: Bearer $HOOK_TOKEN 헤더)에 넣을 수 있지만, 훅이 자신의 allowedEnvVars에 나열하는 변수에만 해당됩니다. 이 키는 모든 HTTP 훅에 대해 해당 목록에 외부 제한을 설정합니다: 훅은 자신의 allowedEnvVars와 이 키 모두에서 이름을 지정한 경우에만 변수를 사용할 수 있습니다. 훅의 정의가 요청하더라도 훅이 읽으면 안 되는 비밀을 읽지 못하도록 하는 데 사용합니다.
  • 범위: 모든 파일. 배열은 설정 파일 전체에서 병합됩니다.
  • 유형: 환경 변수 이름 배열
  • 기본값: 설정되지 않음, 따라서 각 훅의 자신의 allowedEnvVars 목록이 적용됨
이 예제는 헤더 보간을 MY_TOKEN 및 HOOK_SECRET으로 제한합니다:
settings.json
허용 목록은 관리형 설정을 포함한 모든 소스의 훅에 적용됩니다.

workflowKeywordTriggerEnabled

프롬프트에서 키워드 ultracode를 입력하면 동적 워크플로가 트리거되는지 선택합니다. 워크플로를 트리거하지 않고 이 단어를 입력하려면 false로 설정합니다.
  • 범위: 모든 파일. /config에 Ultracode 키워드 트리거로 나타납니다.
  • 유형: 부울
    • true: 프롬프트에서 ultracode를 입력하면 동적 워크플로가 트리거됨
    • false: 워크플로를 트리거하지 않고 이 단어를 입력할 수 있음
  • 기본값: true
settings.json
ultracode 노력 설정, /workflows, 저장된 워크플로 명령은 영향을 받지 않습니다.

workflowSizeGuideline

작성하는 동적 워크플로에서 Claude가 목표로 하는 에이전트 수를 설정합니다. Claude Code는 값을 Claude에 조언으로 보냅니다. 강제 상한이 아닙니다: "small"은 5개 미만의 에이전트를 요청하고, "medium"은 10개 미만, "large"는 50개 미만입니다. 워크플로가 소비하는 것을 제한하려면 "small"을 선택합니다. Claude Code v2.1.219 이상이 필요합니다.
  • 범위: 모든 파일. 여기의 값은 /config의 동적 워크플로 크기 선택보다 우선순위를 가집니다. Claude Code는 이를 ~/.claude.json에 저장하고, 설정 파일이 키를 설정하는 동안 해당 행을 숨깁니다.
  • 유형: 문자열, 다음 중 하나:
    • "unrestricted": 지침 없음, 따라서 Claude는 워크플로를 작업에 맞게 크기 조정
    • "small": Claude는 5개 미만의 에이전트를 목표로 함
    • "medium": Claude는 10개 미만의 에이전트를 목표로 함
    • "large": Claude는 50개 미만의 에이전트를 목표로 함
  • 기본값: "medium", 또는 Claude Code v2.1.271 이상에서 Pro 계획에 로그인했을 때 "small"
settings.json
Claude Code v2.1.219 이상이 필요합니다. v2.1.202부터 v2.1.218까지는 대신 /config에서 지침을 설정합니다.

플러그인과 스킬

플러그인을 활성화하고, 마켓플레이스를 등록하고, 조직에서 허용하는 플러그인 소스를 제한하고, 로드할 스킬을 제어합니다. 플러그인 설치 및 빌드에 대해서는 플러그인을 참조하세요.

disableBundledSkills

Claude Code에 포함된 스킬과 워크플로를 끕니다. Claude Code는 번들 스킬과 워크플로를 완전히 제거하며, /init 같은 기본 제공 명령은 계속 입력할 수 있지만 모델에는 숨겨집니다.
  • 범위: 모든 파일
  • 유형: Boolean
    • true: Claude Code가 번들 스킬과 워크플로를 제거하고 /init 같은 기본 제공 명령을 모델에서 숨깁니다
    • false: 번들 스킬이 로드됩니다
  • 기본값: 설정되지 않음. 따라서 번들 스킬이 로드됩니다
  • 세션별 재정의: CLAUDE_CODE_DISABLE_BUNDLED_SKILLS를 1로 설정하면 한 세션 동안 번들 스킬이 꺼집니다. 둘 중 어느 쪽이 번들 스킬을 끄든, 다른 쪽으로 다시 켤 수는 없습니다
settings.json
플러그인, .claude/skills/, .claude/commands/의 스킬은 영향을 받지 않습니다. /doctor는 기본 제공 명령과 마찬가지로 계속 입력할 수 있습니다. 이를 숨기려면 대신 DISABLE_DOCTOR_COMMAND를 설정하세요.

disableSkillShellExecution

사용자, 프로젝트, 플러그인 또는 추가 디렉터리 소스의 스킬과 사용자 지정 명령에서 !`...` 및 ```! 블록의 인라인 셸 실행을 끕니다. Claude Code는 각 명령을 실행하는 대신 [shell command execution disabled by policy]로 대체합니다.
  • 범위: 모든 파일. 관리형 설정의 true는 다른 곳의 false로 재정의할 수 없습니다.
  • 유형: Boolean
    • true: Claude Code가 각 인라인 셸 명령을 실행하는 대신 [shell command execution disabled by policy]로 대체합니다
    • false: 인라인 셸이 실행됩니다
  • 기본값: 설정되지 않음. 따라서 인라인 셸이 실행됩니다
settings.json
번들 스킬과 관리형 설정을 통해 배포된 스킬은 영향을 받지 않습니다.

skillOverrides

SKILL.md를 편집하지 않고 스킬을 숨기거나 축소합니다. Claude Code는 각 스킬 이름 아래의 값을 Claude가 보는 스킬 목록과 사용자의 / 자동 완성에 적용합니다.
  • 범위: 모든 파일. /skills 메뉴는 .claude/settings.local.json에 기록합니다.
  • 유형: 스킬 이름을 다음 중 하나에 매핑하는 객체:
    • "on": Claude가 스킬을 보고 사용자가 /name을 입력할 수 있습니다
    • "name-only": Claude가 설명 없이 이름으로만 스킬을 봅니다
    • "user-invocable-only": Claude는 스킬을 보지 못하지만 사용자는 여전히 /name을 입력할 수 있습니다
    • "off": Claude가 스킬을 보지 못하고 /name이 자동 완성에서 숨겨집니다
  • 기본값: 설정되지 않음. 따라서 모든 스킬이 "on"입니다
다음 예시는 legacy-context를 Claude에게 이름으로만 표시하고 deploy를 Claude와 / 자동 완성에서 숨깁니다.
settings.json
재정의는 플러그인 스킬에는 적용되지 않으며, 플러그인 스킬은 /plugin을 통해 관리합니다. 관리형 설정과 --settings로 전달된 파일에서는 번들 스킬의 별칭(예: /doctor의 checkup)에 대한 키도 해당 스킬에 적용됩니다. 별칭 키가 스킬 자체 이름의 키와 결합되는 방식을 참조하세요.

syncClaudeAiSkills

claude.ai 계정에 활성화된 스킬의 다운로드를 끕니다. Claude Code는 claude.ai 계정으로 로그인한 터미널 세션(대화형 또는 비대화형)과 Cowork 및 클라우드 세션에서 이 스킬을 ~/.claude/skills/synced/로 다운로드합니다. false로 설정하면 해당 다운로드가 중지되고 이미 동기화된 스킬의 로드도 중지됩니다. Claude Code는 false만 인식합니다. true는 설정하지 않은 것과 같으며, 다른 이유로 꺼져 있는 곳에서 동기화를 켜지 않습니다.
  • 범위: 사용자, 로컬 또는 관리형 및 --settings로 전달된 파일. 저장소가 사용자 대신 이를 끌 수는 없습니다.
  • 유형: Boolean
    • false: Claude Code가 동기화된 스킬의 다운로드를 중지하고 이미 ~/.claude/skills/synced/에 있는 스킬의 로드를 중지합니다. 사용자 또는 관리형 설정에서는 해당 스킬을 ~/.claude/skills/.trash/로 이동하기도 합니다
    • true: 설정하지 않은 것과 같습니다
  • 기본값: 설정되지 않음. 따라서 claude.ai 계정으로 로그인한 세션은 스킬을 동기화합니다
다음 예시는 어떤 세션에서도 머신이 계정의 스킬을 다운로드하지 않도록 합니다.
settings.json

syncClaudeAiPlugins

claude.ai 계정에 활성화된 플러그인의 다운로드를 끕니다. Claude Code는 claude.ai 계정으로 로그인한 터미널 세션의 시작 시점과 Cowork 세션에서 이 플러그인을 ~/.claude/plugins/synced/로 다운로드하고, 각각을 <name>@synced로 로드합니다. false로 설정하면 해당 다운로드가 중지되고 이미 동기화된 플러그인의 로드도 중지됩니다. Claude Code는 false만 인식합니다. true는 설정하지 않은 것과 같으며, 다른 이유로 꺼져 있는 곳에서 동기화를 켜지 않습니다. Claude Code v2.1.273 이상이 필요합니다.
  • 범위: 사용자, 로컬 또는 관리형 및 --settings로 전달된 파일. 저장소가 사용자 대신 이를 끌 수는 없습니다.
  • 유형: Boolean
    • false: Claude Code가 동기화된 플러그인의 다운로드를 중지하고 이미 ~/.claude/plugins/synced/에 있는 플러그인의 로드를 중지합니다. 사용자 또는 관리형 설정에서는 해당 플러그인을 ~/.claude/plugins/.trash/로 이동하기도 합니다
    • true: 설정하지 않은 것과 같습니다
  • 기본값: 설정되지 않음. 따라서 claude.ai 계정으로 로그인한 세션은 플러그인을 동기화합니다
동기화된 플러그인 전체가 아닌 하나만 끄려면 enabledPlugins에 "<name>@synced": false를 설정하세요. 다음 예시는 어떤 세션에서도 머신이 계정의 플러그인을 다운로드하지 않도록 합니다.
settings.json

allowedChannelPlugins

조직의 세션에 메시지를 푸시할 수 있는 채널 플러그인을 선택합니다. 이 키를 설정하면 Claude Code는 기본 Anthropic 허용 목록 대신 사용자의 목록을 사용합니다. 각 항목은 플러그인과 해당 플러그인이 속한 마켓플레이스를 지정합니다.
  • 범위: 관리형
  • 유형: 각각 marketplace와 plugin 문자열을 가진 객체의 배열. 항목은 대신 "telegram@claude-plugins-official"과 같은 "plugin@marketplace" 문자열일 수도 있으며, Claude Code는 이를 동등한 객체로 취급합니다. 문자열 형식에는 Claude Code v2.1.267 이상이 필요합니다. 이전 버전은 문자열 형식이 포함된 경우 allowedChannelPlugins 값 전체를 거부합니다
  • 기본값: 설정되지 않음. 따라서 Claude Code는 기본 Anthropic 허용 목록을 사용합니다
다음 예시는 채널을 켜고 공식 Anthropic 마켓플레이스의 Telegram 플러그인만 허용합니다.
managed-settings.json
빈 배열은 모든 채널 플러그인을 차단합니다. 이 키는 계정에 대해 채널이 channelsEnabled 게이트를 통과한 후에 적용됩니다. Team 및 Enterprise 플랜과 관리형 설정이 있는 Console 계정에서는 channelsEnabled: true를 의미합니다. 실행할 수 있는 채널 플러그인 제한을 참조하세요.

blockedMarketplaces

조직의 플러그인 마켓플레이스 소스를 차단합니다. Claude Code는 마켓플레이스 추가 시와 플러그인 설치, 업데이트, 새로 고침, 자동 업데이트 시 차단 목록을 확인하므로, 정책을 설정하기 전에 누군가 추가한 마켓플레이스도 플러그인을 가져오는 데 사용할 수 없습니다. 차단된 소스는 다운로드 전에 확인되므로 파일 시스템에 전혀 닿지 않습니다. claude.ai 관리 콘솔에서 이 키를 설정하면, 제한 작동 방식에 설명된 대로 조직의 누군가가 claude.ai에서 git 저장소로부터 마켓플레이스를 추가할 때도 claude.ai가 이를 적용합니다.
  • 범위: 관리형
  • 유형: strictKnownMarketplaces와 동일한 형식의 마켓플레이스 소스 객체 배열
  • 기본값: 설정되지 않음. 따라서 어떤 마켓플레이스도 차단되지 않습니다
다음 예시는 하나의 GitHub 저장소를 마켓플레이스 소스로 차단합니다.
managed-settings.json
github 항목은 소유자 와일드카드 형식 "owner/*"를 사용하여 해당 GitHub 소유자 아래의 모든 저장소를 차단할 수 있으며, 이를 위해서는 Claude Code v2.1.223 이상이 필요합니다. 마켓플레이스를 제한하지 않고 Claude Code가 ~/.claude/skills/에서 @skills-dir 플러그인을 로드하지 않도록 하려면 { "source": "skills-dir" }를 추가하세요. 관리형 마켓플레이스 제한을 참조하세요.

channelsEnabled

조직에서 채널을 허용합니다. claude.ai Team 및 Enterprise 플랜에서는 이 값을 true로 설정할 때까지 Claude Code가 채널을 차단합니다. API 키로 인증하는 Anthropic Console 계정에서는 기본적으로 채널이 허용됩니다. 조직에서 관리형 설정을 배포하는 경우, 이 키를 true로 설정할 때까지 Claude Code는 해당 계정에서도 채널을 차단합니다.
  • 범위: 관리형
  • 유형: Boolean
    • true: Claude Code가 조직에서 채널을 허용합니다
    • false: 설정하지 않은 것과 같습니다. 기본값에 설명된 대로 채널 차단 여부는 플랜에 따라 다릅니다
  • 기본값: 설정되지 않음. Team 및 Enterprise 플랜과 관리형 설정이 있는 Console 계정에서는 채널이 차단되고, Pro 및 Max 플랜과 관리형 설정이 없는 Console 계정에서는 허용됩니다
managed-settings.json
채널이 활성화된 후 채널로 등록할 수 있는 플러그인을 제한하려면 allowedChannelPlugins를 설정하세요. 엔터프라이즈 제어를 참조하세요.

disableCommandPluginSources

마켓플레이스가 선언한 명령을 사용자 머신에서 실행하여 플러그인을 설치하는 command 플러그인 소스를 차단합니다. true로 설정하면 Claude Code는 해당 명령을 절대 실행하지 않고, command 소스 플러그인을 설치하거나 업데이트하지 않으며, 이미 설치된 플러그인의 로드를 중지합니다. 명시적으로 허용하려면 false로 설정하세요. true로 설정했든 allowManagedHooksOnly 하에서 설정하지 않은 채로 두었든, command 소스를 차단할 때마다 마켓플레이스 headersHelper 명령도 차단합니다. 단, 관리형 설정 자체가 선언한 마켓플레이스는 예외입니다. Claude Code v2.1.229 이상이 필요하며, headersHelper 차단에는 v2.1.238 이상이 필요합니다.
  • 범위: 관리형
  • 유형: Boolean
    • true: Claude Code가 마켓플레이스가 선언한 명령을 절대 실행하지 않고, command 소스 플러그인을 설치하거나 업데이트하지 않으며, 이미 설치된 플러그인의 로드를 중지합니다
    • false: Claude Code가 command 소스 플러그인을 명시적으로 허용합니다
  • 기본값: 설정되지 않음. 따라서 Claude Code는 allowManagedHooksOnly를 따릅니다. 훅 실행을 관리형 설정으로 제한하는 조직에서는 command 소스도 비활성화됩니다
managed-settings.json
Claude Code v2.1.229 이상이 필요합니다.

pluginSuggestionMarketplaces

스피너 팁과 /plugin Discover 탭 상단 고정 영역에서 상황에 맞는 설치 제안으로 플러그인이 표시될 수 있는 마켓플레이스를 지정합니다. 기본 제공되는 퍼스트 파티 frontend-design 팁은 영향을 받지 않습니다. 제안은 마켓플레이스 항목에 있는 각 플러그인의 relevance 선언에서 나옵니다.
  • 범위: 관리형
  • 유형: 마켓플레이스 이름의 배열
  • 기본값: 설정되지 않음. 따라서 마켓플레이스가 선언한 제안은 표시되지 않습니다
managed-settings.json
이름은 해당 마켓플레이스가 머신에 등록되어 있고, 등록된 소스가 같은 관리형 설정에서 해당 이름의 extraKnownMarketplaces 항목 또는 strictKnownMarketplaces의 항목으로 선언되어 있을 때만 적용됩니다. Claude Code는 허용 목록에 있는 이름으로 다른 소스에서 등록된 마켓플레이스를 무시합니다. 공식 마켓플레이스는 소스 요구 사항에서 면제됩니다. 해당 이름은 공식 Anthropic 소스에서만 등록될 수 있으므로 이름만 허용 목록에 추가하면 충분합니다. 상황에 따라 플러그인 제안을 참조하세요.

pluginTrustMessage

Claude Code가 설치 전에 표시하는 플러그인 신뢰 경고에 조직 자체의 문구를 추가합니다. 예를 들어 내부 마켓플레이스의 플러그인이 검증되었음을 확인하는 데 사용할 수 있습니다.
  • 범위: 관리형
  • 유형: 문자열
  • 기본값: 설정되지 않음. 따라서 Claude Code는 표준 경고만 표시합니다
managed-settings.json

strictKnownMarketplaces

조직 구성원이 추가하고 플러그인을 설치할 수 있는 플러그인 마켓플레이스 소스를 제한합니다. Claude Code는 마켓플레이스 추가 시와 플러그인 설치, 업데이트, 새로 고침, 자동 업데이트 시 네트워크 또는 파일 시스템 작업 전에 허용 목록을 적용하므로, 정책을 설정하기 전에 누군가 추가한 마켓플레이스라도 소스가 더 이상 일치하지 않으면 플러그인을 가져오는 데 사용할 수 없습니다. 차단된 사용자에게는 관리형 정책을 명시하는 오류가 표시됩니다. claude.ai 관리 콘솔에서 이 키를 설정하면, 제한 작동 방식에 설명된 대로 조직의 누군가가 claude.ai에서 git 저장소로부터 마켓플레이스를 추가할 때도 claude.ai가 이를 적용합니다.
  • 범위: 관리형
  • 유형: 마켓플레이스 소스 객체의 배열. 허용되는 소스 유형을 참조하세요
  • 기본값: 설정되지 않음. 따라서 사용자는 모든 마켓플레이스를 추가할 수 있습니다. 빈 배열은 공식 Anthropic 마켓플레이스를 포함한 모든 마켓플레이스 소스를 차단하는 완전한 잠금입니다
다음 예시는 두 개의 GitHub 저장소(하나는 v2.0 ref에 고정)와 하나의 호스팅된 marketplace.json URL을 허용합니다.
managed-settings.json
이 키를 allowedMarketplaces로 작성할 수도 있습니다. Claude Code가 별칭을 처리하는 방식과 별칭을 허용하는 버전은 마켓플레이스 키 별칭에 설명되어 있습니다. 이 키는 정책 게이트입니다. 사용자가 추가할 수 있는 항목을 제어하지만 아무것도 등록하지 않습니다. 하나의 파일에서 제한과 사전 등록을 함께 하려면 extraKnownMarketplaces와 결합을 참조하세요. 사용자 관점의 설명은 관리형 마켓플레이스 제한을 참조하세요.

허용되는 소스 유형

아래 각 항목은 소스 유형별 허용 목록 항목 하나와 해당 항목이 허용하는 필드를 보여 줍니다. 대부분의 유형은 정확히 일치해야 합니다. hostPattern과 pathPattern은 정규식으로 일치시키며, github 항목은 소유자 와일드카드를 사용할 수 있습니다. 세 가지 소스 유형에는 표 외에 추가 규칙이 있습니다.
  • url: URL 마켓플레이스는 marketplace.json 파일만 다운로드하며, Claude Code는 해당 서버에서 상대 경로로 플러그인 파일을 가져오지 않습니다. 따라서 해당 플러그인은 상대 경로가 아닌 플러그인 소스(예: 같은 호스트에 있을 수도 있는 아카이브 URL)를 사용해야 합니다. 상대 경로를 사용하는 플러그인의 경우 대신 Git 기반 마켓플레이스를 사용하세요. URL 기반 마켓플레이스에서 상대 경로 플러그인이 실패함을 참조하세요.
  • hostPattern: 각 저장소를 나열하지 않고 내부 GitHub Enterprise 또는 GitLab 서버의 모든 마켓플레이스를 허용할 때 사용합니다. Claude Code는 github 소스를 github.com과 대조하고, url 소스에서는 호스트 이름을 가져오며, git 소스에서는 git URL의 형식에 따라 호스트 이름을 가져옵니다.
    • https:// 또는 ssh:// 같은 스킴이 있는 URL: URL의 호스트 이름.
    • git의 user@host:path 형식으로 된 스킴 없는 SSH 주소(예: git@git.example.com:tools/plugins.git): @와 : 사이의 호스트로, git이 연결하는 호스트입니다.
    • 스킴이 없는 그 밖의 형식: 호스트가 없으므로 어떤 strictKnownMarketplaces hostPattern 항목과도 일치하지 않습니다. blockedMarketplaces hostPattern의 경우 Claude Code가 더 넓은 범위의 형식에서 호스트를 가져오므로, 차단 목록 항목은 이러한 형식과 여전히 일치할 수 있습니다. v2.1.234 이전에는 strictKnownMarketplaces hostPattern이 git이 SSH 주소로 취급하지 않는 일부 형식과도 일치했습니다.
    file 및 directory 소스에는 호스트가 없으므로 hostPattern 항목과 절대 일치하지 않습니다.
  • pathPattern: 네트워크 소스에 대한 hostPattern 항목과 함께 파일 시스템 마켓플레이스를 허용할 때 사용합니다. ".*"는 모든 로컬 경로를 허용하며, "^/opt/approved/"와 같은 더 좁은 패턴은 특정 디렉터리로 제한합니다.
빈 목록을 포함한 모든 허용 목록은 Claude Code가 ~/.claude/skills/에서 @skills-dir 플러그인을 로드하는 것도 중지시킵니다. 계속 로드하려면 { "source": "skills-dir" } 항목을 추가하세요. 이 항목은 이 키와 blockedMarketplaces 외에서는 의미가 없습니다.

소유자 와일드카드

repo 값이 "<owner>/*"인 github 항목은 해당 GitHub 소유자 아래의 모든 저장소와 일치합니다. 소유자 와일드카드에는 Claude Code v2.1.223 이상이 필요하며 strictKnownMarketplaces와 blockedMarketplaces에서만 작동합니다. extraKnownMarketplaces나 /plugin marketplace add처럼 github 소스가 나타나는 다른 모든 곳에서는 repo 값이 단일 저장소를 지정해야 합니다. v2.1.223 이전에는 Claude Code가 항목을 문자 그대로 비교했기 때문에 허용 목록 항목은 어떤 저장소와도 일치하지 않았고 차단 목록 항목은 아무것도 차단하지 않았습니다. 단일 저장소 항목은 모든 버전에서 적용됩니다. 다음 항목은 acme-corp 조직의 모든 마켓플레이스 저장소를 허용합니다.
managed-settings.json
저장소 이름 위치 전체만 와일드카드가 될 수 있습니다. Claude Code는 *, */plugins, acme-corp/tools-* 같은 항목을 잘못된 항목으로 간주하여 무시하므로, 이러한 항목은 어떤 저장소와도 일치하지 않습니다. 일치 규칙은 두 설정 간에 다릅니다.

정확한 일치

소유자 와일드카드 github 항목과 정규식으로 일치시키는 hostPattern 및 pathPattern 항목을 제외한 모든 소스 유형에서, Claude Code는 마켓플레이스 소스가 항목과 정확히 일치할 때만 사용자의 추가를 허용합니다. git 기반 소스인 github와 git의 경우 정확한 일치에는 선택적 필드도 포함됩니다.
  • repo 또는 url이 정확히 일치해야 합니다
  • ref 필드가 정확히 일치하거나 둘 다 정의되지 않아야 합니다
  • path 필드가 정확히 일치하거나 둘 다 정의되지 않아야 합니다
예를 들어 Claude Code는 아래의 각 쌍을 서로 다른 두 소스로 취급합니다.
  • { "source": "github", "repo": "acme-corp/plugins" }와 { "source": "github", "repo": "acme-corp/plugins", "ref": "main" }
  • { "source": "github", "repo": "acme-corp/plugins", "path": "marketplace" }와 { "source": "github", "repo": "acme-corp/plugins" }

공식 마켓플레이스만 허용

공식 Anthropic 마켓플레이스만 허용하고 다른 것은 허용하지 않으려면 해당 저장소를 나열하세요.
managed-settings.json
이 항목이 있으면 Claude Code는 이미 등록된 공식 마켓플레이스를 계속 사용할 수 있게 유지하고, 새 머신에서는 처음으로 대화형 터미널 세션을 시작할 때 마켓플레이스를 자동으로 등록합니다. 자동 등록이 가장 흔히 누락되는 경우는 다음과 같습니다.
  • 머신의 첫 번째 대화형 터미널 세션 전에 실행되는 비대화형 환경.
  • Claude Code가 VS Code 확장을 통해서만 실행된 머신.
  • 빈 배열 잠금처럼 마켓플레이스를 차단한 정책 하에서 Claude Code가 이미 대화형 터미널 세션을 실행한 머신. Claude Code는 차단된 시도를 기록하며 정책이 변경된 후 재시도하지 않습니다.
이러한 머신에서는 같은 managed-settings.json의 extraKnownMarketplaces에 마켓플레이스를 추가하여 Claude Code가 자동으로 등록하도록 하거나, claude plugin marketplace add anthropics/claude-plugins-official을 실행하세요.

extraKnownMarketplaces와 결합

두 키는 서로 다른 역할을 합니다. 다음 표에서 둘을 비교합니다. 모든 사용자에 대해 마켓플레이스를 제한하는 동시에 사전 등록하려면 managed-settings.json에 둘 다 설정하세요.
managed-settings.json
strictKnownMarketplaces만 설정하면 사용자는 여전히 /plugin marketplace add로 허용된 마켓플레이스를 직접 추가할 수 있습니다. Claude Code가 자동으로 등록하는 마켓플레이스는 공식 Anthropic 마켓플레이스뿐이며, 이는 허용 목록이 이를 허용하는 경우에만 해당합니다. 자동 등록이 누락되는 머신은 공식 마켓플레이스만 허용에 나열되어 있습니다.

strictPluginOnlyCustomization

사용자 및 프로젝트 소스의 스킬, 에이전트, 훅, MCP 서버를 차단하여 플러그인이나 관리형 설정에서만 제공되도록 합니다. strictKnownMarketplaces와 결합하면 전체 사용자 지정 공급망을 제어할 수 있습니다. 마켓플레이스 허용 목록은 사용자가 설치할 수 있는 플러그인을 제어합니다.
  • 범위: 관리형
  • 유형: 네 가지 사용자 지정 유형을 모두 잠그려면 true, 또는 "skills", "agents", "hooks", "mcp" 중에서 잠글 유형을 지정하는 배열
  • 기본값: 설정되지 않음. 따라서 아무것도 잠기지 않습니다
다음 예시는 스킬과 훅을 잠그고 에이전트와 MCP 서버는 잠그지 않습니다.
managed-settings.json
아래의 네 가지 하위 키 항목은 각 사용 환경이 차단하는 것과 계속 로드되는 것을 나열합니다. Claude Code는 인식하지 못하는 사용 환경 이름을 설정 파일 실패로 처리하지 않고 무시하므로, 모든 클라이언트가 업데이트되기 전에 새 사용 환경 이름을 추가할 수 있습니다.

strictPluginOnlyCustomization.skills

skills 사용 환경을 잠급니다. Claude Code는 ~/.claude/skills/와 .claude/skills/의 스킬, ~/.claude/commands/와 .claude/commands/의 사용자 지정 명령, --add-dir 디렉터리 아래의 스킬과 명령, claude.ai 계정에서 동기화된 스킬의 로드를 중지합니다. 플러그인 스킬, 번들 스킬, 관리형 정책 디렉터리의 스킬은 계속 로드합니다.
managed-settings.json

strictPluginOnlyCustomization.agents

agents 사용 환경을 잠급니다. Claude Code는 ~/.claude/agents/, .claude/agents/, --add-dir 디렉터리의 에이전트 로드를 중지합니다. 플러그인 에이전트, 기본 제공 에이전트, 관리형 정책 디렉터리의 에이전트는 계속 로드합니다.
managed-settings.json

strictPluginOnlyCustomization.hooks

hooks 사용 환경을 잠급니다.
  • 실행 중지:
    • 사용자, 프로젝트, 로컬 settings.json의 훅
    • skills 또는 agents 잠금이 차단하는 소스에 있는 스킬, 사용자 지정 명령, 에이전트의 frontmatter 훅
  • 계속 실행: 플러그인 훅과 관리형 설정의 훅
frontmatter 훅의 실행이 중지된 스킬, 사용자 지정 명령, 에이전트는 자체 사용 환경이 잠기지 않은 동안에는 계속 로드됩니다.
managed-settings.json

strictPluginOnlyCustomization.mcp

mcp 사용 환경을 잠급니다. Claude Code는 ~/.claude.json과 .mcp.json의 MCP 서버 로드를 중지하고, 플러그인 MCP 서버, managed-mcp.json 서버, managedMcpServers의 서버는 계속 로드합니다.
managed-settings.json

enabledPlugins

plugin-name@marketplace-name을 키로 사용하여 개별 플러그인을 켜거나 끕니다. 어떤 범위에도 항목이 없는 플러그인은 해당 플러그인의 defaultEnabled 값을 따릅니다. /plugin 또는 claude plugin enable로 플러그인을 활성화하거나 비활성화하면 Claude Code가 이 키를 대신 기록합니다.
  • 범위: 모든 파일
  • 유형: plugin-name@marketplace-name을 Boolean에 매핑하는 객체
  • 기본값: 설정되지 않음. 따라서 각 플러그인은 자체 defaultEnabled 값을 따릅니다
다음 예시는 team-tools 마켓플레이스의 플러그인 두 개를 활성화하고 personal의 플러그인 하나를 비활성화합니다.
settings.json
각 범위는 서로 다른 용도로 사용됩니다.
  • 사용자 설정: 개인 플러그인 기본 설정
  • 프로젝트 설정: 저장소의 모든 사람과 공유하는 플러그인
  • 로컬 설정: 머신별 재정의. Claude Code가 여기에 설정을 저장할 때 gitignore 처리됩니다
  • 관리형 설정: 조직 전체 정책. 여기서 false로 설정된 플러그인은 모든 범위에서 설치가 차단되고 마켓플레이스에서 숨겨집니다
프로젝트 설정이 사용자 설정보다 우선하므로, ~/.claude/settings.json에서 플러그인을 false로 설정해도 프로젝트의 .claude/settings.json이 활성화한 플러그인은 비활성화되지 않습니다. 프로젝트에서 활성화한 플러그인을 자신의 머신에서 제외하려면 대신 .claude/settings.local.json에서 false로 설정하세요. 관리형 설정은 로컬 설정을 재정의하므로, 관리형 설정에서 강제로 활성화된 플러그인은 이 방법으로 비활성화할 수 없습니다. 프로젝트의 .claude/settings.json에서 GitHub 저장소나 npm 패키지 같은 외부 소스의 플러그인을 활성화해도 다른 사람에게 설치되지는 않습니다. 플러그인을 로드하는 모든 경로에서, 각 사용자가 직접 설치할 때까지 Claude Code는 해당 플러그인을 설치되지 않은 것으로 보고합니다.

extraKnownMarketplaces

추가 플러그인 마켓플레이스를 이름으로 등록하여, 저장소를 여는 사람이나 관리형 설정이 적용되는 모든 사람이 직접 추가하지 않아도 마켓플레이스를 사용할 수 있게 합니다. Claude Code는 아직 알지 못하는 각 마켓플레이스를 등록합니다. enabledPlugins가 해당 마켓플레이스에서 지정하는 플러그인이 설치되는지 여부는 플러그인의 소스와 어떤 파일이 이를 활성화하는지에 따라 달라지며, 해당 항목에 규칙이 설명되어 있습니다.
  • 범위: 모든 파일. Claude Code는 저장소의 .claude/settings.json 또는 .claude/settings.local.json에 있는 항목을 해당 폴더의 워크스페이스 신뢰 대화 상자를 수락한 후에만 인식합니다. 신뢰하지 않은 폴더에서는, 그곳에서의 -p 실행을 포함하여, 메시지 없이 해당 항목을 무시합니다.
  • 유형: 마켓플레이스 이름을 source 객체와 선택적 autoUpdate Boolean을 가진 객체에 매핑하는 객체
  • 기본값: 설정되지 않음
다음 예시는 GitHub 마켓플레이스와 자체 호스팅 git URL의 마켓플레이스를 등록합니다.
settings.json
폴더를 신뢰하기 전에 실행되는 항목에서 신뢰 게이트를 저장소가 제공할 수 있는 다른 콘텐츠와 비교합니다. 이 키를 additionalMarketplaces로 작성할 수도 있습니다. 마켓플레이스 키 별칭을 참조하세요. source와 함께 "autoUpdate": true를 설정하면 Claude Code가 시작 후 백그라운드에서 해당 마켓플레이스를 새로 고치고 설치된 플러그인을 업데이트합니다. 생략하면 claude-plugins-official과 대부분의 다른 공식 Anthropic 마켓플레이스는 기본값이 true이고, 서드 파티 마켓플레이스는 기본값이 false입니다. 자동 업데이트 구성을 참조하세요. 둘 이상의 설정 파일이 같은 이름으로 마켓플레이스 항목을 정의하면, Claude Code는 우선순위가 가장 높은 파일의 항목을 통째로 사용합니다. 해당 항목은 우선순위가 낮은 항목을 대체하며 그 필드를 전혀 상속하지 않으므로, 재정의를 통해 한 파일의 source.headers 자격 증명을 다른 파일이 제어하는 URL과 결합할 수 없습니다. v2.1.228 이전에는 Claude Code가 같은 이름의 항목을 필드별로 병합했기 때문에, 우선순위가 높은 파일의 항목이 다른 파일의 headers를 포함하여 자신이 설정하지 않은 필드를 상속할 수 있었습니다.

마켓플레이스 소스 유형

source 객체는 다음 형식 중 하나를 사용합니다.
  • github: repo를 지정하는 GitHub 저장소
  • git: url을 지정하는 모든 git URL
  • url: marketplace.json 파일에 대한 직접 URL로, url과 인증된 액세스를 위한 선택적 headers 및 headersHelper를 지정합니다. headersHelper는 headers에 나열하기에는 수명이 너무 짧은 값을 가진 헤더를 출력하는 명령을 지정하며, Claude Code v2.1.238 이상이 필요합니다
  • file: path를 지정하는 marketplace.json 파일의 로컬 경로
  • directory: path를 지정하는 로컬 파일 시스템 경로. 개발용으로 사용하거나, 조직이 각 머신에 배포하는 마켓플레이스에 사용합니다.
  • settings: 호스팅된 저장소 없이 설정 파일에 직접 선언된 인라인 마켓플레이스로, name과 plugins를 지정합니다
git 소스 유형은 자체 호스팅 GitLab과 Bitbucket을 포함한 모든 git 호스팅 서비스에서 작동합니다. Claude Code는 해당 머신에서 git clone이 사용할 것과 동일한 인증, 즉 구성된 자격 증명 도우미나 SSH 키로 저장소를 복제합니다. GITHUB_TOKEN 같은 공급자 토큰은 이를 읽는 자격 증명 도우미를 통해 적용됩니다. 설정 세부 사항은 비공개 저장소를 참조하세요. github 및 git 소스의 경우, Claude Code는 마켓플레이스 저장소를 추가하거나 업데이트하기 위해 복제할 때 Git LFS 콘텐츠를 절대 다운로드하지 않습니다. LFS로 추적되는 파일은 포인터 파일로 체크아웃되며, 추가 또는 업데이트 출력에 그 개수가 보고됩니다. source 객체 내의 skipLfs 필드는 허용되지만 아무 효과가 없습니다. v2.1.274 이전에는 "skipLfs": true를 설정하지 않는 한 Claude Code가 LFS 콘텐츠를 다운로드했습니다. url 소스의 경우, headers의 자격 증명이 만료되어 명령으로 새 자격 증명을 생성해야 할 때 source 객체 내에 headersHelper를 설정하세요. Claude Code v2.1.238 이상이 필요합니다. 명령이 출력해야 하는 내용과 Claude Code가 명령을 실행하는 위치는 headersHelper 명령 작성을, Claude Code가 명령을 실행하지 않는 경우는 Claude Code가 headersHelper 명령을 건너뛰는 경우를 참조하세요. https:// 마켓플레이스 URL에 headersHelper를 설정하면 Claude Code는 두 시점에 명령을 실행하며, 한 번 실행한 출력을 최대 60초 동안 재사용합니다.
  • 나중의 새로 고침을 포함하여 해당 마켓플레이스의 marketplace.json을 가져오기 전마다. Claude Code는 출력된 헤더를 해당 가져오기와 함께 보냅니다.
  • 마켓플레이스 URL의 오리진(동일한 스킴, 호스트, 포트)에서 플러그인 아카이브를 다운로드하기 전마다. Claude Code는 출력을 해당 다운로드와 함께 보내며, 다른 다운로드에는 헤더가 전달되지 않습니다.
Claude Code는 --add-dir로 추가한 디렉터리의 .claude/settings.json 또는 .claude/settings.local.json에 설정된 headersHelper를 url 소스와 인라인 플러그인 항목 모두에서 무시하고, 해당 파일에 설정된 고정 headers만 보냅니다. 다른 설정 파일에 대해서는 사용자가 headersHelper 명령을 수락하는 방법에서 다룹니다. settings 소스에 나열된 플러그인은 GitHub나 npm 같은 외부 소스를 참조해야 하며, name은 마켓플레이스 키와 일치해야 합니다. 각 플러그인은 여전히 enabledPlugins에서 별도로 활성화해야 합니다. 다음 예시는 플러그인 하나를 인라인으로 선언합니다.
settings.json
source: 'settings' 아래에서 자체 source가 archive인 플러그인 항목은 아카이브 다운로드를 위한 headers를 설정할 수 있습니다. 레지스트리가 요청 시 발급하는 토큰처럼 headers에 넣을 값의 수명이 짧다면 대신 headersHelper 명령을 설정하세요. 항목에 둘 다 설정할 수도 있습니다. 두 필드 모두 Claude Code v2.1.238 이상이 필요합니다. Claude Code는 항목의 headers와 명령이 출력하는 내용을 해당 플러그인의 아카이브 다운로드와 함께 보내며, 다른 다운로드에는 보내지 않습니다. Claude Code는 사용자가 해당 플러그인 하나만 단독으로 설치하거나 업데이트할 때만 명령을 실행합니다. 항목이 어느 파일에 있는지에 따라 세 가지 추가 규칙이 적용됩니다.
  • strict: 마켓플레이스의 marketplace.json에 있는 항목과 달리, 설정의 항목은 "strict": false가 필요하지 않습니다. 설정 파일에는 인라인할 매니페스트 필드가 없기 때문입니다. Strict 모드를 참조하세요.
  • 폴더 신뢰: 프로젝트의 .claude/settings.json 또는 .claude/settings.local.json에 있는 항목의 경우, Claude Code는 사용자가 해당 폴더도 신뢰한 후에만 명령을 실행합니다.
  • 헤더 필터: 저장소가 해당 파일을 제공할 수 있으므로, Claude Code는 프로젝트의 .claude/settings.json 또는 .claude/settings.local.json에 있는 항목에서 요청 라우팅 및 클라이언트 식별 헤더 이름을 제거합니다. Claude Code는 카탈로그 항목과 --add-dir 디렉터리 설정의 항목에도 같은 필터를 적용하며, 사용자 설정, --settings 파일 또는 관리형 설정의 항목에는 필터를 적용하지 않습니다.

마켓플레이스 키 별칭

Claude Code v2.1.232 이상에서는 extraKnownMarketplaces를 additionalMarketplaces로, strictKnownMarketplaces를 allowedMarketplaces로 작성할 수 있습니다. Claude Code는 각 별칭을 다음과 같이 처리합니다.
  • 이전 버전은 별칭을 무시하므로, 여러 Claude Code 버전이 섞인 머신 집합용 관리형 설정 파일처럼 이전 버전도 읽는 파일에는 정식 표기를 유지하세요.
  • 정식 키를 허용하는 모든 설정 파일에서 Claude Code는 별칭을 정식 키와 똑같이 읽습니다.
  • Claude Code는 파일을 업데이트할 때 additionalMarketplaces를 extraKnownMarketplaces로 다시 쓸 수 있습니다.
  • 한 파일에 두 표기를 모두 설정하면 Claude Code는 정식 값을 사용하고 별칭을 무시합니다.

pluginConfigs

플러그인의 userConfig 구성 대화 상자에 입력한 민감하지 않은 응답을 플러그인 ID를 키로 하여 저장합니다. 대화 상자를 작성하면 Claude Code가 이 키를 사용자 설정에 기록하므로 직접 편집할 필요가 없습니다. Claude Code는 민감한 옵션을 대신 macOS Keychain에 저장하며, Keychain이 쓰기를 거부하면 ~/.claude/.credentials.json으로 대체합니다. 지원되는 키체인이 없는 플랫폼에서는 ~/.claude/.credentials.json에 저장합니다.
  • 범위: 사용자 또는 관리형
  • 유형: 플러그인 ID를 객체에 매핑하는 객체. 해당 객체에는 각 옵션 이름을 문자열, 숫자, Boolean 또는 문자열 배열에 매핑하는 options 필드와, 같은 형태로 서버별 사용자 구성 값을 담는 선택적 mcpServers 필드가 있습니다
  • 기본값: 설정되지 않음
다음 예시는 acme-tools의 deployer 플러그인에 대한 api_endpoint 옵션을 저장합니다.
settings.json
기본 제공 플러그인은 같은 키 아래에 @builtin 접미사를 붙여 옵션을 저장합니다. 예를 들어 Claude Code가 AGENTS.md 파일을 읽을지 여부를 제어하는 Project instructions 설정은 pluginConfigs["cc-plugin-agents-md@builtin"].options.instructionFiles입니다. v2.1.285 이전에는 플러그인의 ID가 agents-md@builtin이었습니다. 이후 버전은 두 ID 중 어느 쪽 아래의 항목이든 읽습니다. Claude Code는 이 값을 플러그인 훅, MCP, LSP 구성에 대입하므로 복제된 저장소가 이 값을 제공할 수 없어야 합니다. 따라서 프로젝트 및 로컬 항목은 무시합니다.

prependPlugins

사용자가 설치한 모든 mod보다 먼저, 나열된 순서대로 mod가 실행되는 관리형 플러그인을 나열합니다. 관리형 설정에서 이 키를 설정할 때는 기본 제공 가드를 유지하려면 목록에 sec-default@builtin을 포함하세요. 관리형 설정에서 Claude Code는 플러그인이 조직의 것으로 간주되지 않는 id를 건너뜁니다. 해당 조건과 두 순서 지정 키가 함께 작동하는 방식은 조직의 mod 설치 및 순서 설정을 참조하세요.
  • 범위: 사용자 또는 관리형. Claude Code는 관리형 설정에서 이 키를 읽습니다. 사용자 설정에서는 관리형 설정이 없는 머신에서 자격 증명이 Team 또는 Enterprise /login이 아닌 세션에서만 이 키를 읽습니다. 프로젝트 및 로컬 설정과 --settings 파일에서는 이 키를 무시합니다.
  • 유형: plugin-name@marketplace-name 문자열의 배열
  • 기본값: 설정되지 않음
managed-settings.json

appendPlugins

사용자가 설치한 모든 mod 다음에, 나열된 순서대로 mod가 실행되는 관리형 플러그인을 나열합니다. prependPlugins와 appendPlugins 모두에 나열된 id는 앞에 추가됩니다. 관리형 설정에서 Claude Code는 플러그인이 조직의 것으로 간주되지 않는 id를 건너뜁니다.
  • 범위: 사용자 또는 관리형. Claude Code는 관리형 설정에서 이 키를 읽습니다. 사용자 설정에서는 관리형 설정이 없는 머신에서 자격 증명이 Team 또는 Enterprise /login이 아닌 세션에서만 이 키를 읽습니다. 프로젝트 및 로컬 설정과 --settings 파일에서는 이 키를 무시합니다.
  • 유형: plugin-name@marketplace-name 문자열의 배열
  • 기본값: 설정되지 않음
managed-settings.json

MCP

Claude Code가 연결하는 MCP 서버와 조직이 허용하는 서버를 제어합니다. MCP를 사용하여 외부 도구에 연결 및 관리형 MCP 구성을 참조하세요.

allowAllClaudeAiMcps

Claude Code가 배포된 managed-mcp.json과 함께 자체적으로 가져오는 claude.ai 커넥터를 로드합니다. 이 키가 없으면 managed-mcp.json이 MCP 서버를 독점적으로 제어하고 해당 커넥터를 억제합니다.
  • 범위: Managed. 사용자는 독점적 제어가 억제한 커넥터를 다시 활성화할 수 없습니다.
  • 유형: Boolean
    • true: Claude Code는 배포된 managed-mcp.json과 함께 claude.ai 커넥터를 로드합니다
    • false: 배포된 managed-mcp.json이 MCP 서버를 독점적으로 제어하고 Claude Code가 자체적으로 가져오는 claude.ai 커넥터를 억제합니다
  • 기본값: false이므로 배포된 managed-mcp.json이 Claude Code가 자체적으로 가져오는 claude.ai 커넥터를 억제합니다
managed-settings.json
allowedMcpServers 및 deniedMcpServers는 여전히 이 키가 로드하는 커넥터에 적용됩니다. managed-mcp.json을 포함하는 호스트(예: 자체 호스팅 러너)의 클라우드 세션에 전달된 커넥터는 억제된 상태로 유지됩니다. 관리형 세트와 함께 claude.ai 커넥터 허용을 참조하세요.

allowClaudeInChromeWithManagedMcp

배포된 managed-mcp.json과 함께 기본 제공 Claude in Chrome 서버를 실행합니다. 이 키가 없으면 배포된 managed-mcp.json이 터미널 세션에서 Claude in Chrome을 차단합니다. Claude Code v2.1.282 이상이 필요합니다.
  • 범위: Managed, 기기의 자체 관리형 설정에서만: MDM 배포 plist 또는 HKLM 레지스트리 키, 또는 시스템 managed-settings.json 파일. Claude Code는 서버 관리형 설정, 사용자 쓰기 가능 HKCU 레지스트리, 사용자 또는 프로젝트 설정에서는 무시합니다.
  • 유형: Boolean
    • true: 기본 제공 Claude in Chrome 서버는 배포된 managed-mcp.json과 함께 실행할 수 있습니다
    • false: 배포된 managed-mcp.json이 터미널 세션에서 Claude in Chrome을 차단합니다
  • 기본값: false이므로 배포된 managed-mcp.json이 터미널 세션에서 Claude in Chrome을 차단합니다
managed-settings.json
claude-in-chrome에 대한 deniedMcpServers 항목은 이 키가 켜져 있어도 여전히 서버를 차단합니다. 관리형 세트와 함께 Claude in Chrome 허용을 참조하세요.

allowedMcpServers

사용자가 추가할 수 있는 MCP 서버를 허용 목록에 추가합니다. Claude Code는 플러그인 서버, --mcp-config로 전달된 서버, claude.ai의 서버를 포함하여 정의된 모든 위치에서 항목과 일치하지 않는 모든 서버를 차단합니다. Chrome의 Claude, Claude Code가 실행 중인 VS Code 또는 JetBrains IDE에 연결하는 ide 서버, CLI 자체가 구성하는 서버와 같은 기본 제공 서버는 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. Claude Code v2.1.268 이상에서 Claude Tag 세션의 Slack 도구도 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 프로세스 내 type: "sdk" 서버는 두 목록 모두에서 제외됩니다. 세션을 시작한 앱이 이들을 등록합니다. 조직이 제공하는 서버도 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 이 제외는 모든 managedMcpServers 항목과 ${VAR} 확장을 사용하지 않는 값을 가진 모든 managed-mcp.json 항목을 포함합니다. 전체 확인 순서는 서버 평가 방법을 참조하세요. v2.1.259 이전에는 managed-mcp.json의 서버도 일치해야 했습니다.
  • 범위: Any file. 모든 파일의 항목이 하나의 허용 목록으로 병합됩니다. allowManagedMcpServersOnly가 설정되지 않은 경우입니다. 관리형 설정에 배포하여 적용합니다.
  • 유형: 객체 배열, 각각 정확히 하나의 키: 문자, 숫자, 하이픈, 언더스코어로 제한된 문자열인 serverName; 정확히 일치하는 명령 및 해당 인수의 배열인 serverCommand; 또는 * 와일드카드가 있는 URL 패턴인 serverUrl
  • 기본값: 설정되지 않음, 따라서 모든 서버가 허용됩니다. 빈 배열은 사용자가 추가하는 모든 서버를 차단합니다
이 예제는 나열된 npx 명령이 시작하는 stdio 서버만 허용합니다:
settings.json
deniedMcpServers 항목이 우선하므로 두 목록에 있는 서버는 차단됩니다. 목록에 serverCommand 항목이 포함되면 stdio 서버는 serverCommand 항목과 일치해야 하고, serverUrl 항목이 포함되면 원격 서버는 serverUrl 항목과 일치해야 합니다. serverName 일치는 더 이상 해당 종류의 서버를 허용하지 않습니다. 허용 목록 및 거부 목록을 사용한 정책 기반 제어를 참조하세요.

allowManagedMcpServersOnly

관리형 허용 목록을 적용되는 유일한 목록으로 만듭니다. Claude Code는 allowedMcpServers를 관리형 설정에서만 읽고 사용자, 프로젝트, 로컬 설정의 허용 목록을 무시합니다. deniedMcpServers는 여전히 모든 설정 범위에서 병합되므로 사용자는 자신을 위해 서버를 차단할 수 있습니다. 관리자는 사용자의 자체 설정이 관리형 허용 목록이 허용하는 것을 확대할 수 없도록 설정합니다.
  • 범위: Managed
  • 유형: Boolean
    • true: Claude Code는 allowedMcpServers를 관리형 설정에서만 읽고 사용자, 프로젝트, 로컬 설정의 허용 목록을 무시합니다
    • false: 모든 설정 범위의 허용 목록이 병합됩니다
  • 기본값: false이므로 모든 설정 범위의 허용 목록이 병합됩니다
이 예제는 허용 목록을 관리형 설정으로 잠그고 github라는 서버만 허용합니다:
managed-settings.json
사용자는 여전히 자신의 MCP 서버를 추가할 수 있습니다. 관리형 허용 목록과 일치하는 서버만 로드됩니다. 허용 목록을 관리형 설정만으로 제한을 참조하세요.

deniedMcpServers

특정 MCP 서버를 차단합니다. Claude Code는 플러그인 서버, --mcp-config로 전달된 서버, managed-mcp.json의 서버, managedMcpServers의 서버, 자체적으로 가져오는 claude.ai 커넥터를 포함하여 정의된 모든 위치에서 일치하는 서버를 로드하기를 거부합니다. 프로세스 내 type: "sdk" 서버는 제외됩니다. 세션을 시작한 앱이 이들을 등록합니다.
  • 범위: Any file. 모든 파일의 항목이 하나의 거부 목록으로 병합되며, allowManagedMcpServersOnly는 이를 변경하지 않습니다. 관리형 설정에 배포하여 적용합니다.
  • 유형: 객체 배열, 각각 정확히 하나의 키: "claude.ai Slack"과 같은 claude.ai 커넥터의 표시 이름인 문자열인 serverName; 정확히 일치하는 명령 및 해당 인수의 배열인 serverCommand; 또는 * 와일드카드가 있는 URL 패턴인 serverUrl
  • 기본값: 설정되지 않음, 따라서 서버가 차단되지 않습니다. 빈 배열도 아무것도 차단하지 않습니다
settings.json
거부 목록이 allowedMcpServers보다 우선하므로 두 목록에 있는 서버는 차단됩니다. 허용 목록 및 거부 목록을 사용한 정책 기반 제어를 참조하세요.

disableClaudeAiConnectors

Claude Code가 자체적으로 가져오는 claude.ai MCP 커넥터를 끕니다. 따라서 이들을 가져오거나 연결하지 않습니다. 모든 설정 파일의 true가 적용됩니다. 체크인된 프로젝트 .claude/settings.json은 저장소를 해당 커넥터에서 제외할 수 있지만, 프로젝트 수준의 false는 사용자 또는 관리형 수준의 true를 재정의할 수 없습니다.
  • 범위: Any file
  • 유형: Boolean
    • true: Claude Code는 해당 커넥터를 가져오거나 연결하지 않습니다
    • false: 설정되지 않은 것과 동일합니다. Claude Code는 다른 설정 파일이나 ENABLE_CLAUDEAI_MCP_SERVERS가 이들을 끄지 않는 한 커넥터를 가져옵니다
  • 기본값: false이므로 Claude Code는 커넥터를 가져옵니다
  • 세션별 재정의: ENABLE_CLAUDEAI_MCP_SERVERS를 false로 설정하면 한 세션 동안 커넥터가 꺼집니다. 둘 중 어느 것이 이들을 끄든 다른 하나는 이들을 다시 켤 수 없습니다
settings.json
--mcp-config로 명시적으로 전달하는 서버는 영향을 받지 않습니다. 모든 커넥터를 차단하는 대신 개별 커넥터를 차단하려면 deniedMcpServers를 사용하세요. claude.ai 커넥터 비활성화를 참조하세요.

disabledMcpjsonServers

프로젝트의 .mcp.json 파일에 정의된 특정 서버를 거부하여 Claude Code가 이들을 연결하거나 승인을 요청하지 않도록 합니다. 모든 설정 파일의 거부가 적용되며, 저장소에 체크인된 프로젝트 .claude/settings.json도 포함됩니다.
  • 범위: Any file
  • 유형: 문자열 배열, .mcp.json에 나타나는 서버 이름
  • 기본값: 설정되지 않음
settings.json
Claude Code는 승인 대화에서 서버를 거부할 때 이 키를 .claude/settings.local.json에 씁니다. claude mcp get <name>은 거부된 서버를 ✘ Rejected (see disabledMcpjsonServers in settings)로 표시합니다. 거부는 enabledMcpjsonServers 및 enableAllProjectMcpServers보다 우선합니다.

enableAllProjectMcpServers

프로젝트 .mcp.json 파일에 정의된 모든 MCP 서버를 프롬프트 없이 승인합니다. Claude Code는 승인 대화에서 모든 서버를 승인하도록 선택할 때 이 키를 .claude/settings.local.json에 씁니다.
  • 범위: Any file. 신뢰 대화를 수락하지 않은 폴더에서 Claude Code는 사용자 설정, 관리형 설정, --settings에서 이를 준수하고 공유 프로젝트 파일에서는 무시합니다. 세션 및 claude mcp list와 claude mcp get에서 모두 프로젝트 서버 승인 및 작업 영역 신뢰는 추적되지 않은 .claude/settings.local.json이 언제 계산되는지 말합니다.
  • 유형: Boolean
    • true: Claude Code는 프로젝트 .mcp.json 파일에 정의된 모든 MCP 서버를 프롬프트 없이 승인합니다
    • false: Claude Code는 각 서버를 승인하도록 요청합니다. 신뢰된 폴더에서 더 높은 우선순위 파일의 false는 더 낮은 우선순위 파일의 true를 재정의합니다. 신뢰하지 않은 폴더에서 준수되는 모든 파일의 true는 충분합니다
  • 기본값: 설정되지 않음, 따라서 Claude Code는 각 서버를 승인하도록 요청합니다
settings.json
disabledMcpjsonServers 항목은 여전히 서버를 거부합니다.

enabledMcpjsonServers

프로젝트 .mcp.json 파일에 정의된 특정 서버를 승인하여 Claude Code가 묻지 않고 이들을 연결하도록 합니다. Claude Code는 승인 대화에서 서버를 승인할 때 이 키를 .claude/settings.local.json에 씁니다.
  • 범위: Any file. 신뢰 대화를 수락하지 않은 폴더에서 Claude Code는 사용자 설정, 관리형 설정, --settings에서 이를 준수하고 공유 프로젝트 파일에서는 무시합니다. 세션 및 claude mcp list와 claude mcp get에서 모두 프로젝트 서버 승인 및 작업 영역 신뢰는 추적되지 않은 .claude/settings.local.json이 언제 계산되는지 말합니다.
  • 유형: 문자열 배열, .mcp.json에 나타나는 서버 이름
  • 기본값: 설정되지 않음
이 예제는 프로젝트의 .mcp.json에서 memory 및 github 서버를 승인합니다:
settings.json
disabledMcpjsonServers 항목은 여전히 서버를 거부합니다.

managedMcpServers

관리형 설정에서 모든 사용자에게 원격 MCP 서버를 제공합니다. 사용자는 자신이 추가한 서버를 유지하고 제공하는 서버를 편집하거나 제거할 수 없습니다. Claude Code v2.1.259 이상이 필요합니다.
  • 범위: Managed. Claude Code는 사용자, 프로젝트, 로컬 설정에서 키를 경고와 함께 삭제하고, 타사 배포의 Claude Desktop 앱의 Code 탭이나 앱의 Cowork 세션에서는 읽지 않습니다. Claude Desktop이 해당 세션의 MCP 서버를 공급하고 잠급니다.
  • 유형: 서버 이름으로 키가 지정된 객체. 각 항목은 http 또는 sse 서버에 대한 .mcp.json 형태입니다. 필수 https:// url, 그리고 선택적으로 headers, oauth, 기타 HTTP 및 SSE 옵션. Claude Code는 유효성 검사에 실패한 항목을 삭제하고, 항목이 포함할 수 있는 것은 조건을 나열합니다
  • 기본값: 설정되지 않음, 따라서 관리형 설정은 서버를 제공하지 않습니다
이 예제는 search라는 HTTP 서버 하나를 제공합니다:
managed-settings.json
우선순위, 제공된 서버가 managed-mcp.json 및 허용 및 거부 목록과 결합되는 방식, 사용자가 보는 것에 대해서는 관리형 설정을 통해 서버 제공을 참조하세요.

에이전트, 세션, 및 worktrees

기본 에이전트를 설정하고, 팀원을 제어하며 세션 간 메시징을 구성하고, worktrees를 설정합니다. 서브에이전트 및 Worktrees를 참조하세요.

agent

명명된 서브에이전트로 메인 스레드를 실행하여 Claude Code가 해당 서브에이전트의 시스템 프롬프트, 도구 제한 사항 및 모델을 세션에 적용하도록 합니다. 동일한 키는 claude agents에서 디스패치하는 세션의 기본 에이전트를 설정합니다.
  • Scope: Any file
  • Type: string, 기본 제공 또는 사용자 정의 에이전트의 이름
  • Default: 설정되지 않음. 메인 스레드는 Claude Code의 기본 에이전트로 실행됩니다
  • Per-session overrides: --agent는 한 세션에 대해 이 키보다 우선합니다
settings.json
플러그인의 자체 settings.json도 이 키를 제공할 수 있습니다. 플러그인과 함께 기본 설정 제공을 참조하세요.

crossSessionInbound

이 세션이 다른 Claude Code 세션에서 도착하는 메시지로 수행할 작업을 선택합니다. 적용되는 값이 없으면 Claude Code는 두 세션의 권한 모드 클래스에서 메시지별로 결정합니다. Claude Code v2.1.224 이상이 필요합니다.
  • Scope: Any file. 프로젝트 또는 로컬 값은 관리형 설정, --settings 플래그 또는 사용자 설정이 제공하는 값보다 더 엄격할 때만 적용됩니다.
  • Type: string, 다음 중 하나:
    • "accept": Claude Code가 메시지를 Claude에 전달합니다
    • "hold": Claude Code가 메시지를 전달하지 않고 알림을 표시합니다
    • "refuse": Claude Code가 메시지를 삭제합니다
  • Default: 설정되지 않음. Claude Code는 메시지별로 결정합니다
settings.json
Claude Code는 관리형 설정을 먼저 읽은 다음 --settings 플래그, 그 다음 사용자 설정을 읽고 찾은 첫 번째 값을 적용합니다. refuse는 hold보다 더 엄격하고, hold는 accept보다 더 엄격합니다. 신뢰할 수 있는 소스 중 어느 것도 값을 설정하지 않으면 프로젝트 또는 로컬 hold 또는 refuse가 여전히 적용되어 메시지별 기본값을 대체합니다. 세션 간 메시징이 있는 세션에서 이 키는 /config에 다른 세션의 메시지로 나타나며, 이는 사용자 설정에 기록됩니다. 행에는 Claude Code v2.1.232 이상이 필요하며, Claude Code는 --settings 플래그 또는 관리형 설정이 키를 설정하는 동안 이를 숨깁니다. Claude Code는 인식하지 못하는 값을 설정할 때 경고합니다. 해당 값이 사용자, 프로젝트, 로컬 또는 --settings 파일에 있는 동안 Claude Code는 인바운드 메시지를 보류합니다. 우선순위를 갖는 소스가 accept를 설정하더라도 마찬가지입니다. 다른 소스가 설정한 refuse는 여전히 적용됩니다. 값을 수정하거나 제거하여 보류를 해제합니다. 인식하지 못하는 값이 관리형 설정에 있으면 Claude Code는 대신 관리자가 수정할 때까지 이를 refuse로 처리합니다. v2.1.248 이전에는 Claude Code가 경고 없이 인식하지 못하는 값을 무시했습니다.

disableAgentView

배경 에이전트 및 에이전트 보기를 끕니다: claude agents, --bg, /background 및 온디맨드 감독자. 관리형 설정에서 설정하여 조직에 대해 적용합니다.
  • Scope: Any file
  • Type: Boolean
    • true: Claude Code가 claude agents, --bg, /background 및 온디맨드 감독자를 끕니다
    • false: 에이전트 보기를 사용할 수 있습니다
  • Default: 설정되지 않음. 에이전트 보기를 사용할 수 있습니다
  • Per-session overrides: CLAUDE_CODE_DISABLE_AGENT_VIEW는 한 세션에 대해 에이전트 보기를 끕니다. 둘 중 하나가 이를 끄면 다른 하나는 다시 켤 수 없습니다
settings.json

isolatePeerMachines

Claude의 SendMessage가 이 머신을 넘어 세션 중 하나에 도달하기 전에 명시적 승인을 요구합니다. 크로스 머신 메시지에 대한 승인 요구를 참조하세요. 승인 프롬프트는 bypassPermissions 모드에서도 나타납니다.
  • Scope: Any file. 모든 범위의 true가 적용되므로 체크인된 프로젝트 파일이 요구 사항을 켤 수 있지만 끌 수는 없습니다.
  • Type: Boolean
    • true: Claude Code는 Claude의 SendMessage가 이 머신을 넘어 세션 중 하나에 도달하기 전에 승인을 요청합니다
    • false: 크로스 머신 메시지는 프롬프트를 표시하지 않습니다
  • Default: 설정되지 않음. 크로스 머신 메시지는 프롬프트를 표시하지 않습니다
settings.json
크로스 머신 SendMessage 승인에는 Claude Code v2.1.224 이상이 필요합니다.

processWrapper

macOS 및 Linux에서 Claude Code가 시작하는 배경 프로세스 앞에 회사 런처 명령을 배치합니다. Claude Code는 자체 명령줄이 추가된 런처를 실행하므로 런처는 Claude Code로 exec해야 합니다. 회사 런처 뒤에서 Claude Code 실행에서 런처 계약을 참조하세요. Claude Code v2.1.210 이상이 필요합니다.
  • Scope: User or managed
  • Type: string, argv 접두사로서의 런처 명령(예: 선택적 인수가 있는 절대 경로)
  • Default: 설정되지 않음. 배경 프로세스는 래핑되지 않은 상태로 시작됩니다
  • Per-session overrides: CLAUDE_CODE_PROCESS_WRAPPER는 한 세션에 대해 이 키보다 우선합니다
settings.json
Claude Code는 Windows에서 런처를 무시하고 모든 프로세스를 래핑되지 않은 상태로 시작합니다. Claude Code v2.1.210 이상이 필요합니다.

teammateMode

Claude Code가 에이전트 팀 팀원을 표시할 위치를 선택합니다: 메인 터미널 창 내부 또는 터미널이 지원할 때 분할 창에서. 디스플레이 모드 선택을 참조하세요.
  • Scope: Any file. Claude Code는 또한 이전 버전에서 ~/.claude.json에 남겨진 값을 읽습니다.
  • Type: string, 다음 중 하나:
    • "in-process": 팀원은 메인 터미널 창 내부에서 실행됩니다
    • "auto": tmux 내부에서 실행 중이거나 PATH에 it2가 있거나 tmux가 설치된 iTerm2 내부에서 분할 창을 사용합니다. 그 외에는 인프로세스입니다
    • "tmux": 터미널에서 감지된 tmux 또는 iTerm2를 사용하여 분할 창을 만듭니다
    • "iterm2": iTerm2 네이티브 분할 창을 it2 CLI를 통해 사용합니다
  • Default: "in-process"
  • Per-session overrides: --teammate-mode는 한 세션에 대해 이 키보다 우선합니다
settings.json

worktree

Claude Code가 --worktree, EnterWorktree 도구 및 격리된 서브에이전트 및 배경 세션에 대해 git worktrees를 생성하고 관리하는 방식을 구성합니다.
  • Scope: Any file
  • Type: baseRef, symlinkDirectories, sparsePaths 및 bgIsolation을 포함하는 객체
  • Default: 설정되지 않음
이 예제는 현재 HEAD에서 새 worktree의 브랜치를 만들고 각 worktree에 node_modules의 심볼릭 링크를 만듭니다:
settings.json
.env와 같은 gitignored 파일을 새 worktrees에 복사하려면 설정 대신 프로젝트 루트에 .worktreeinclude 파일을 추가합니다.

worktree.baseRef

새 worktree의 브랜치가 시작될 ref를 선택합니다. "fresh"는 원격과 일치하는 깨끗한 트리를 위해 origin/<default-branch>에서 브랜치를 만듭니다. "head"는 현재 로컬 HEAD에서 브랜치를 만들므로 푸시되지 않은 커밋 및 기능 브랜치 상태가 worktree에 있습니다.
  • Scope: Any file
  • Type: string, 다음 중 하나:
    • "fresh": 새 worktree는 origin/<default-branch>에서 브랜치를 만듭니다
    • "head": 새 worktree는 푸시되지 않은 커밋을 포함하여 현재 로컬 HEAD에서 브랜치를 만듭니다
  • Default: "fresh"
settings.json
연결된 worktree 내부에서 "head"는 메인 체크아웃이 아닌 해당 worktree의 HEAD로 확인됩니다.

worktree.symlinkDirectories

메인 저장소의 디렉터리를 각 worktree에 심볼릭 링크로 연결하여 디스크에 큰 디렉터리를 복제하지 않습니다.
  • Scope: Any file
  • Type: 문자열 배열, 저장소 루트에 상대적인 디렉터리 경로
  • Default: 설정되지 않음. Claude Code는 디렉터리를 심볼릭 링크로 연결하지 않습니다
이 예제는 메인 저장소의 node_modules 및 .cache를 모든 새 worktree에 심볼릭 링크로 연결합니다:
settings.json

worktree.sparsePaths

git sparse-checkout를 통해 각 worktree에서 나열된 디렉터리만 체크아웃합니다. Claude Code는 해당 디렉터리와 루트 수준 파일만 디스크에 기록하므로 대규모 monorepos에서 더 빠릅니다. 필요한 디렉터리만 체크아웃을 참조하세요.
  • Scope: Any file
  • Type: 문자열 배열, 저장소 루트에 상대적인 디렉터리 경로
  • Default: 설정되지 않음. 각 worktree는 전체 트리를 체크아웃합니다
이 예제는 각 worktree에서 packages/my-app 및 shared/utils와 루트 수준 파일만 체크아웃합니다:
settings.json
sparse worktree가 존재하는 동안 git은 저장소의 공유 .git/config에서 extensions.worktreeConfig를 활성화합니다.

worktree.bgIsolation

배경 세션이 파일 편집을 격리하는 방식을 선택합니다. ← 또는 /background로 세션을 배경으로 옮긴 경우, 해당 세션은 이 키의 값과 관계없이 파일을 제자리에서 편집합니다. "worktree"를 사용하면 Claude Code는 세션이 EnterWorktree를 호출할 때까지 메인 체크아웃에서 Edit 및 Write를 차단합니다. "none"을 사용하면 배경 작업이 작업 복사본을 직접 편집합니다. git worktrees가 비실용적인 저장소의 경우 "none"을 설정합니다.
  • Scope: Any file
  • Type: string, 다음 중 하나:
    • "worktree": Claude Code는 세션이 EnterWorktree를 호출할 때까지 메인 체크아웃에서 Edit 및 Write를 차단합니다
    • "none": 배경 작업이 작업 복사본을 직접 편집합니다
  • Default: "worktree"
settings.json
git 저장소 외부에서 실패하는 WorktreeCreate 훅은 차단을 해제하여 세션이 작업 디렉터리를 제자리에서 편집할 수 있도록 합니다.

worktree.location

Desktop SSH 세션이 <project-root>/.claude/worktrees/ 대신 worktree를 생성할 원격 머신의 폴더를 선택합니다. 이 키는 데스크톱 앱만 읽습니다. --worktree, EnterWorktree 도구, 격리된 서브에이전트 및 배경 세션은 이 키를 무시합니다. Claude Desktop v1.44121.0 이상이 필요합니다.
  • Scope: User, 원격 머신의 ~/.claude/settings.json에서 설정
  • Type: string, 절대 경로 또는 ~/로 시작하는 경로
  • Default: 설정되지 않음. worktree는 프로젝트 내부에 생성됩니다
이 예제는 폴더를 ~/worktrees로 설정합니다:
settings.json
Desktop에서 SSH 연결에 설정한 Worktree folder가 우선합니다. 조직에서 세션이 사용할 수 있는 폴더를 제한하는 경우 Desktop은 worktree를 프로젝트 내부에 유지합니다.

원격, 데스크톱 및 알림

Remote Control, 클라우드 환경, 데스크톱 앱 및 Claude Code가 필요할 때 전송하는 알림을 구성합니다. Remote Control을 참조하세요.

agentPushNotifEnabled

Claude가 가치 있다고 판단할 때(예: 긴 작업이 완료될 때) 휴대폰으로 푸시 알림을 보낼 수 있도록 허용합니다. Claude Code는 이 선택을 계정에 동기화하며, Remote Control이 연결되어 있을 때 푸시가 도착합니다. /config에서 Claude가 결정할 때 푸시로 표시됩니다.
  • 범위: Any file. Claude Code는 이전 버전에서 ~/.claude.json에 남겨진 값도 읽습니다.
  • 유형: Boolean
    • true: Claude가 가치 있다고 판단할 때 휴대폰으로 푸시 알림을 보낼 수 있습니다
    • false: Claude는 해당 알림을 보내지 않습니다
  • 기본값: false
settings.json
모바일 푸시 알림을 참조하세요.

awaySummaryEnabled

몇 분 동안 터미널에서 떠난 후 돌아올 때 한 줄짜리 세션 요약을 표시합니다. false로 설정하거나 /config에서 세션 요약을 끄면 요약이 중지됩니다.
  • 범위: Any file
  • 유형: Boolean
    • true: 몇 분 동안 떠난 후 돌아올 때 한 줄짜리 세션 요약이 표시됩니다
    • false: Claude Code는 요약을 표시하지 않습니다
  • 기본값: 설정되지 않음, 따라서 요약이 켜져 있습니다
  • 세션별 재정의: CLAUDE_CODE_ENABLE_AWAY_SUMMARY는 이 키보다 한 세션에 대해 어느 방향이든 우선합니다
settings.json
Claude Code는 비대화형 모드에서 요약을 표시하지 않습니다.

disableArtifact

더 이상 사용되지 않으며 enableArtifact로 대체되었습니다. Claude Code는 여전히 disableArtifact: true를 enableArtifact: false와 동등하게 처리하며, disableArtifact: false는 무시합니다.
대신 enableArtifact를 사용하여 Artifact 도구를 끕니다. 이 도구는 세션 출력을 claude.ai의 비공개 웹 페이지로 게시합니다. /config에서 Artifacts 행을 끄면 Claude Code는 enableArtifact를 사용자 설정에 기록하고 이 키를 지웁니다.
  • 범위: Any file
  • 유형: Boolean
    • true: Claude Code는 파일이 적용되는 모든 세션에 대해 Artifact 도구를 끄며, 다른 파일은 이를 다시 켤 수 없습니다
    • false: 무시됨; 도구를 켜진 상태로 두려면 키를 제거하세요
  • 기본값: 설정되지 않음, 따라서 도구는 계정의 가용성을 따릅니다
  • 세션별 재정의: CLAUDE_CODE_DISABLE_ARTIFACT를 1로 설정하면 한 세션에 대해 도구가 꺼집니다
settings.json
아티팩트 비활성화는 도구를 끄는 모든 방법을 나열합니다.

disableDeepLinkRegistration

Claude Code가 claude-cli:// 프로토콜 핸들러를 운영 체제에 등록하지 않도록 중지합니다. 이 키가 설정되지 않으면 Claude Code는 대화형 세션의 첫 번째 프롬프트를 보낸 후에 등록합니다. Deep links를 사용하면 외부 도구가 미리 채워진 프롬프트로 Claude Code 세션을 열 수 있습니다. 프로토콜 핸들러 등록이 제한되거나 별도로 관리되는 환경에서 이를 설정합니다.
  • 범위: Any file
  • 유형: 문자열 "disable"
  • 기본값: 설정되지 않음, 따라서 Claude Code는 핸들러를 등록합니다
settings.json

disableDesktopLocalSessions

개발자가 SSH를 통해 원격 머신에서 작업해야 하는 배포의 경우 데스크톱 앱에서 디바이스에서 실행되는 Code 세션을 끕니다. 키를 true로 설정하면 사용자는 Code 탭에서 다음과 같이 보게 됩니다:
  • 환경 선택기: 사용자 컴퓨터 항목이 회색으로 표시되고 선택할 수 없으며, Disabled by your organization이라는 도구 설명이 표시됩니다. Windows에서는 WSL 항목도 같은 방식으로 회색으로 표시되지만, WSL 세션이 관리되는 디바이스에서 실행되는지 여부는 별도로 관리됩니다.
  • 새 세션: SSH 연결이 구성되어 있으면 첫 번째 SSH 연결로 기본 설정됩니다
  • 디바이스의 세션: 앱은 디바이스에서 세션을 시작하거나 재개하기를 거부하며, 같은 머신으로 다시 연결하는 SSH 연결도 이에 포함됩니다
  • 다른 호스트로의 SSH 세션 및 클라우드 세션: 영향을 받지 않습니다
데스크톱 앱은 이 키를 읽습니다. 터미널 CLI는 무시합니다. Claude Desktop v1.37937.0 이상이 필요합니다.
  • 범위: Managed. 기본적으로 데스크톱 앱은 하나의 관리형 소스에서 이 키를 읽습니다.
  • 유형: Boolean; JSON Boolean true만 적용됩니다
    • true: 데스크톱 앱은 온디바이스 Code 세션을 제공하지 않습니다. 기존 로컬 세션은 나열되지만 계속할 수 없습니다
    • false: 로컬 세션은 사용 가능한 상태로 유지됩니다
  • 기본값: 설정되지 않음, 따라서 로컬 세션은 사용 가능합니다
managed-settings.json
데스크톱 앱은 다른 값을 무시하며, Boolean이 아닌 값(예: 문자열 "true" 또는 1)도 경고를 기록합니다. sshConfigs와 함께 사용하여 사용자가 작동하는 연결에 도달하도록 하고, sshHostAllowlist와 함께 사용하여 사용자가 도달할 수 있는 호스트를 제한합니다. 관리되는 디바이스의 로컬 세션을 참조하세요. Claude Desktop은 데스크톱 구성에서 파생된 정책(예: 송신 허용 목록, 파일 시스템 샌드박스 및 타사 배포의 MCP 제한)으로 Code 세션을 제공합니다. Claude Code는 관리 소스(서버 관리 설정, MDM 또는 OS 수준 정책 또는 관리 설정 파일)가 있을 때마다 해당 부모 설정을 무시합니다. 타사 배포와 같이 이전에 없던 디바이스에 이 키를 배포하면 데스크톱 파생 정책이 적용되지 않습니다. 임베딩 호스트가 정책을 추가하도록 허용은 부모 설정이 여전히 병합될 수 있는 경우를 다룹니다. 이는 이 키뿐만 아니라 이런 방식으로 배포하는 모든 키에 적용됩니다.

disableRemoteControl

Remote Control을 끕니다: Claude Code는 claude remote-control, --remote-control 플래그, 자동 시작 및 세션 내 토글을 거부하며, 조직의 정책이 이를 비활성화했다고 보고합니다. 관리 설정에 배치하여 디바이스별 MDM 적용을 수행합니다.
  • 범위: Any file
  • 유형: Boolean
    • true: Claude Code는 claude remote-control, --remote-control 플래그, 자동 시작 및 세션 내 토글을 거부합니다
    • false: Remote Control은 사용 가능한 상태로 유지됩니다
  • 기본값: false
settings.json

enableArtifact

Artifact 도구를 끕니다. 이 도구는 세션 출력을 claude.ai의 비공개 웹 페이지로 게시합니다. /config에서 Artifacts 행을 끄면 Claude Code는 이 키를 사용자 설정에 기록하므로 일반적으로 수동으로 편집할 필요가 없습니다.
  • 범위: Any file. 모든 파일이 도구를 끌 수 있으며, 어떤 파일도 이를 다시 켤 수 없습니다.
  • 유형: Boolean
    • false: Claude Code는 파일이 적용되는 모든 세션에 대해 Artifact 도구를 끕니다
    • true: 다른 파일의 false, CLAUDE_CODE_DISABLE_ARTIFACT 또는 조직의 관리 설정을 재정의하지 않으므로 키를 설정하지 않은 것과 같습니다
  • 기본값: 설정되지 않음, 따라서 도구는 계정의 가용성을 따릅니다
settings.json
사용자 설정 이외의 소스가 도구를 끄고 있는 동안 Claude Code는 /config에서 Artifacts 행을 숨깁니다. 이는 거기서 이를 켜도 아무것도 변경되지 않기 때문입니다. 아티팩트 비활성화는 도구를 끄는 모든 방법을 나열합니다.

inputNeededNotifEnabled

권한 프롬프트 또는 질문이 입력을 기다리고 있을 때 휴대폰에서 푸시 알림을 받습니다. Claude Code는 Remote Control이 연결되어 있을 때만 이러한 알림을 보냅니다. /config에서 작업 필요 시 푸시로 표시됩니다.
  • 범위: Any file. Claude Code는 이전 버전에서 ~/.claude.json에 남겨진 값도 읽습니다.
  • 유형: Boolean
    • true: Remote Control이 연결되어 있는 동안 권한 프롬프트 또는 질문이 입력을 기다리고 있을 때 휴대폰에서 푸시 알림을 받습니다
    • false: Claude Code는 해당 알림을 보내지 않습니다
  • 기본값: false
settings.json
모바일 푸시 알림을 참조하세요.

preferredNotifChannel

작업이 완료되거나 권한 프롬프트가 대기 중일 때 Claude Code가 사용자에게 알리는 방식을 선택합니다. /config에서 로컬 알림으로 표시됩니다.
  • 범위: Any file. Claude Code는 이전 버전에서 ~/.claude.json에 남겨진 값도 읽습니다.
  • 유형: 문자열, 다음 중 하나:
    • "auto": Claude Code는 iTerm2, Ghostty 및 Kitty에서 데스크톱 알림을 보내고, Terminal.app에서는 감지 가능한 벨이 꺼져 있을 때만 벨을 울리며, 다른 곳에서는 아무것도 하지 않습니다
    • "terminal_bell": Claude Code는 모든 터미널에서 벨 문자를 울립니다
    • "iterm2": Claude Code는 iTerm2 데스크톱 알림을 보냅니다
    • "iterm2_with_bell": Claude Code는 iTerm2 데스크톱 알림을 보내고 벨을 울립니다
    • "kitty": Claude Code는 Kitty 데스크톱 알림을 보냅니다
    • "ghostty": Claude Code는 Ghostty 데스크톱 알림을 보냅니다
    • "notifications_disabled": Claude Code는 알림을 보내지 않습니다
  • 기본값: "auto"
settings.json
"auto"를 사용하면 Claude Code는 iTerm2, Ghostty 및 Kitty에서 데스크톱 알림을 보냅니다. Terminal.app에서는 Terminal의 감지 가능한 벨을 끈 경우에만 벨 문자를 울리고, 다른 터미널에서는 아무것도 하지 않습니다. 모든 터미널에서 벨 문자를 울리려면 "terminal_bell"을 설정합니다. 터미널 벨 또는 알림 받기를 참조하세요.

remote.defaultEnvironmentId

CLI에서 만드는 클라우드 세션(예: claude --cloud)에 대한 기본 클라우드 환경을 선택합니다. Claude Code는 /remote-env로 환경을 선택할 때 이 키를 사용자 설정에 기록합니다.
  • 범위: Any file. 자체 호스팅 환경 ID의 경우 사용자 또는 관리 설정 또는 --settings 플래그만 해당합니다.
  • 유형: 문자열, env_... 또는 ccpool_...과 같은 환경 ID
  • 기본값: 설정되지 않음, 따라서 Claude Code는 목록에 Anthropic 호스팅 환경이 있으면 이를 사용하고, 그렇지 않으면 Remote Control 브리지 환경이 아닌 목록의 첫 번째 환경을 사용하거나, 모든 환경이 브리지 환경인 경우 첫 번째 환경을 사용합니다
  • 세션별 재정의: --environment는 생성하는 하나의 클라우드 세션에 대해 이 키보다 우선합니다
settings.json
env_로 시작하는 Anthropic 호스팅 환경 ID는 표준 설정 우선순위를 따르므로 리포지토리의 프로젝트 설정의 값이 사용자 수준 선택을 재정의합니다. ccpool_로 시작하는 자체 호스팅 환경 ID는 사용자 설정, 관리 설정 및 --settings 플래그에서만 인정됩니다. Claude Code는 리포지토리의 프로젝트 또는 로컬 설정에서 이를 무시하며, /remote-env는 무시한 값을 표시하므로 체크인된 파일이 선택하지 않은 자체 호스팅 환경으로 세션을 유도할 수 없습니다.

remoteControlAtStartup

각 대화형 세션이 시작될 때 Remote Control을 자동으로 연결합니다. /remote-control을 기다리는 대신 true로 설정하여 자동 연결을 켜거나 false로 설정하여 끕니다. /config에서 모든 세션에 대해 Remote Control 활성화로 표시됩니다.
  • 범위: Any file. Claude Code는 이전 버전에서 ~/.claude.json에 남겨진 값도 읽습니다.
  • 유형: Boolean
    • true: Claude Code는 각 대화형 세션이 시작될 때 Remote Control을 자동으로 연결합니다
    • false: Claude Code는 /remote-control을 기다립니다
  • 기본값: 설정되지 않음, 따라서 자동 연결 기본값이 적용됩니다
  • 세션별 재정의: --remote-control은 이 키가 false일 때도 한 세션에 대해 Remote Control을 켜고, 어떤 플래그도 한 세션에 대해 이를 끌 수 없습니다
settings.json
Claude Code는 프로젝트 또는 로컬 설정의 true를 무시하므로 리포지토리는 체크아웃에 대해 자동 연결을 끌 수 있지만 켤 수는 없습니다. 전체 범위별 동작은 모든 세션에 대해 Remote Control 활성화 및 더 엄격한 값이 적용되는 보안 키를 참조하세요.

sshConfigs

Desktop 환경 선택기에 SSH 연결을 추가합니다. 관리자는 sshConfigs를 사용하여 팀에 공유 연결을 배포합니다. 사용자는 관리되는 연결을 선택하고 해당 연결에 대해 자신의 Worktree 폴더를 설정할 수 있습니다. 앱에서 그 밖의 필드를 편집하거나 연결을 삭제할 수는 없습니다.
  • 범위: User or managed. 데스크톱 앱은 이 키를 읽습니다. 기본적으로 하나의 관리형 소스에서 관리되는 연결을 읽습니다.
  • 유형: 필수 id, name 및 sshHost와 선택적 sshPort 및 sshIdentityFile을 포함하는 객체 배열
  • 기본값: 설정되지 않음
이 예제는 user@dev.example.com에 연결하는 Dev VM이라는 연결 하나를 추가합니다:
settings.json

sshHostAllowlist

Desktop SSH 세션이 연결할 수 있는 호스트를 제한합니다. Desktop 앱만 이 키를 읽습니다. CLI는 읽지 않습니다. 패턴은 대소문자를 구분하지 않습니다: *는 모든 호스트와 일치하고, *.example.com은 example.com 및 모든 하위 도메인과 일치하며, 다른 것은 ~/.ssh/config 해석 후 호스트 이름과 정확히 일치합니다. 빈 배열은 SSH 세션을 끕니다.
  • 범위: Managed. 기본적으로 Desktop은 하나의 관리형 소스에서 이 키를 읽습니다.
  • 유형: 호스트 이름 패턴 배열
  • 기본값: 설정되지 않음, 따라서 모든 호스트가 허용됩니다
이 예제는 devboxes.example.com 및 해당 하위 도메인, 그리고 정확한 호스트 bastion.example.com을 허용합니다:
managed-settings.json
Desktop이 호스트 목록으로 읽을 수 없는 값(예: true 또는 객체)은 수정할 때까지 빈 배열로 간주됩니다. 단, null은 설정되지 않은 것으로 간주됩니다. Claude Desktop v2.26454.0 이상이 필요합니다. 최상위 소스에서 managedSourcesBehavior를 "merge"로 설정하면 Desktop은 모든 관리자 소스의 목록을 결합하고 그중 하나라도 일치하는 호스트를 허용합니다. 한 소스에서 빈 배열을 설정하더라도 다른 소스가 나열한 호스트에 대해서는 SSH 세션이 켜진 상태로 유지됩니다.

인증 및 공급자

도우미 스크립트를 통해 자격 증명을 제공하고, 조직의 경우 로그인 방법이나 조직을 강제합니다. 인증을 참조하세요.

allowedProviders

머신이 Claude에 도달할 수 있는 서비스를 나열합니다. 예를 들어 Anthropic API, Amazon Bedrock, 또는 LLM 게이트웨이입니다. 나열되지 않은 공급자의 세션은 시작 시, 로그인 시, API에 다음으로 연락할 때 거부되므로 세션 중간에 나열되지 않은 공급자로 전환하는 것도 거부됩니다. 거부 메시지는 공급자를 선택한 것과 계속하는 단계를 이름 지정합니다. Claude Code v2.1.285 이상이 필요합니다.
  • 범위: 관리됨. 머신 자신의 관리자 소스인 MDM 정책 및 관리형 설정 파일이 설정한 목록은 서버 관리형 설정도 하나를 전달할 때 계속 적용됩니다: 세션은 두 목록 모두에 있는 공급자만 사용할 수 있으므로 서버 관리형 목록은 머신이 허용하는 것을 좁힐 수 있지만 절대 확장할 수 없습니다. 어느 머신 소스의 allowedProviders가 계산되는지는 Claude Code가 관리 소스를 결합하는 방법을 따릅니다. 서버 관리형 설정만을 통해 전달된 목록은 서버 관리형 설정을 가져오는 세션에만 도달합니다.
  • 유형: 문자열 배열, 각각 다음 중 하나:
  • 기본값: 설정되지 않음, 따라서 모든 공급자를 사용할 수 있습니다.
managed-settings.json
각 클라우드 공급자의 항목은 해당 공급자의 자체 서비스를 의미합니다. 지역, FIPS, 및 개인 엔드포인트를 포함합니다. Claude Code가 공급자 이름으로 인식하지 않는 항목은 삭제되고 보고되며, 목록의 나머지는 강제됩니다. 빈 목록이거나 모든 항목이 인식되지 않는 목록의 경우, Claude Code는 모든 공급자를 거부하고 머신에서 시작하지 않습니다.

관리 env에서 핀이 필요한 엔드포인트

핀은 관리 env 블록에 설정된 엔드포인트 변수의 값입니다. 세션이 공급자의 트래픽을 해당 공급자의 자체 서비스 이외의 곳으로 보낼 때, Claude Code는 세션의 값이 핀과 동일한 경우에만 이를 허용합니다. 이러한 엔드포인트에는 하나가 필요합니다:
  • "customEndpoint" 세션: 호스트를 이름 지정하는 변수, 예를 들어 ANTHROPIC_BASE_URL
  • Amazon Bedrock: AWS SDK의 AWS_ENDPOINT_URL, AWS_ENDPOINT_URL_BEDROCK, 및 AWS_ENDPOINT_URL_BEDROCK_RUNTIME 변수는 Bedrock의 자체 서비스 외부를 가리킬 때입니다. 세션은 "customEndpoint" 대신 "bedrock" 아래에 머물러 있습니다.
  • 게이트웨이 로그인의 URL: 세션은 "gateway" 아래에 머물러 있으며, forceLoginGatewayUrl도 핀으로 계산됩니다.
어느 env 블록이 핀으로 계산되는지는 목록이 설정된 위치에 따라 다릅니다:
  • 머신의 관리자 소스가 목록을 설정합니다: 머신의 자체 관리자 소스의 env 블록만 계산됩니다.
  • 서버 관리형 설정만 목록을 설정합니다: 해당 서버 관리형 설정의 env 값도 계산됩니다.
목록은 클라우드 공급자의 자격 증명 및 테넌시 변수 또는 HTTPS_PROXY 및 인증서 설정과 같은 네트워크 경로를 판단하지 않습니다. 관리 env 블록에서 플릿에 대해 이를 설정합니다.

apiKeyHelper

Claude Code가 모델 요청과 함께 보내는 자격 증명을 생성하기 위해 자신의 명령을 실행합니다. Claude Code는 macOS 및 Linux에서는 /bin/sh를, Windows에서는 cmd를 통해 시스템 셸을 통해 명령을 실행하고, 그 출력을 X-Api-Key 및 Authorization: Bearer 헤더 모두로 보냅니다. 자격 증명 모음에서 가져온 단기 토큰과 같은 동적 또는 회전하는 자격 증명에 사용합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 셸 명령줄
  • 기본값: 설정되지 않음, 따라서 Claude Code는 도우미를 실행하지 않습니다.
settings.json
Claude Code는 값을 캐시하고 다음 경우에 명령을 다시 실행합니다:
  • 캐시 수명 후, 기본값은 5분이거나 CLAUDE_CODE_API_KEY_HELPER_TTL_MS로 설정한 간격입니다.
  • Anthropic API에 대한 요청이 직접 또는 LLM 게이트웨이를 통해 401 또는 403으로 실패할 때입니다.
  • Anthropic API에 요청을 보내기 전에, 직접 또는 LLM 게이트웨이를 통해, 캐시된 출력이 도우미가 생성한 후 만료된 JWT일 때입니다. Claude Code v2.1.246 이상이 필요합니다.
마지막 두 경우는 도우미의 출력이 Claude Code가 보내는 자격 증명이고 ANTHROPIC_AUTH_TOKEN이 설정되지 않았을 때만 적용됩니다. 대화형 세션에서, 명령이 프로젝트 또는 로컬 설정에서 올 때, Claude Code는 워크스페이스 신뢰 프롬프트를 수락할 때까지 실행하지 않습니다. 자격 증명 관리를 참조하세요.

awsAuthRefresh

Claude Code가 Amazon Bedrock에 대해 가진 자격 증명이 작동을 멈출 때 .aws 디렉토리의 자격 증명을 새로 고치기 위해 aws sso login과 같은 자신의 명령을 실행합니다. Claude Code는 먼저 현재 자격 증명을 STS에 대해 확인하고 해당 확인이 실패할 때만 명령을 실행한 다음 새로 고쳐진 .aws 디렉토리를 읽습니다. 별도의 터미널이나 IDE 창과 같이 동일한 명령과 자격 증명을 사용하는 여러 Claude Code 프로세스에서 동시에 확인이 실패하면, 한 프로세스가 명령을 실행하고 나머지는 각자 실행을 시작하는 대신 해당 실행을 기다립니다. 요청이 대기 중인 상태로 60초 동안 기다린 프로세스는 직접 명령을 실행합니다. 이를 끄려면 CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK을 1로 설정하세요.
  • 범위: 모든 파일
  • 유형: 문자열, 셸 명령줄
  • 기본값: 설정되지 않음, 따라서 Claude Code는 AWS 자격 증명을 새로 고치지 않습니다.
settings.json
새로 고침 흐름이 .aws에 쓸 때 이 키를 사용하세요. 대신 자격 증명을 인쇄할 때는 awsCredentialExport를 사용하세요. 고급 자격 증명 구성을 참조하세요.

awsCredentialExport

Claude Code가 .aws 디렉토리에 없는 자격 증명으로 Amazon Bedrock을 호출할 수 있도록 AWS 자격 증명을 JSON으로 인쇄하는 자신의 명령을 실행합니다. Claude Code는 aws sts 출력 형태와 평면 aws configure export-credentials 형태를 수락하고, 자격 증명을 자신의 Bedrock 클라이언트로 범위를 지정하므로 Claude가 실행하는 셸 명령은 여전히 주변 자격 증명을 봅니다.
  • 범위: 모든 파일
  • 유형: 문자열, 셸 명령줄
  • 기본값: 설정되지 않음, 따라서 Claude Code는 주변 AWS 자격 증명 체인을 사용합니다.
settings.json
awsAuthRefresh와 달리, Claude Code는 이 명령이 설정되면 먼저 주변 자격 증명을 확인하지 않고 항상 실행합니다. 고급 자격 증명 구성을 참조하세요.

forceLoginMethod

사람들이 로그인할 수 있는 계정 종류를 제한합니다. "claudeai"로 설정하여 claude.ai 계정만 허용하거나, "console"로 설정하여 Claude Console 계정만 허용하거나, "gateway"로 설정하여 사람들을 첫 번째 당사자 로그인 대신 클라우드 게이트웨이로 보냅니다. 관리자는 관리형 설정에서 설정하고 forceLoginOrgUUID와 쌍을 이루어 개발자의 claude.ai 로그인을 한 조직 내에 유지합니다. 설정 파일에서 "claudeai" 또는 "console"로 설정하면, Claude Code는 해당 파일이 적용되는 세션에서 키 없는 Console 로그인도 제공하지 않습니다.
  • 범위: 모든 파일. Claude Code는 forceLoginGatewayUrl과 동일한 소스에서만 "gateway"를 인정하며, 그 외의 모든 곳에서는 설정되지 않은 것으로 취급합니다.
  • 유형: 문자열, 다음 중 하나:
    • "claudeai": claude.ai 계정만 로그인할 수 있습니다.
    • "console": Claude Console 계정만 로그인할 수 있습니다.
    • "gateway": Claude Code는 사람들을 첫 번째 당사자 로그인 대신 클라우드 게이트웨이로 보냅니다.
  • 기본값: 설정되지 않음, 따라서 사람들이 로그인 방법을 선택합니다.
settings.json
모든 첫 번째 당사자 로그인 경로는 VS Code 확장, Agent SDK, claude setup-token, 및 /install-github-app을 포함한 제한을 적용하며, 터미널의 대화형 로그인 화면은 제외하고, /login 또는 첫 실행 온보딩으로 도달하며, 이는 강제하지 않고 방법을 미리 선택합니다. v2.1.212 이전에는 터미널 로그인만 적용했습니다. 조직에 로그인 제한을 참조하여 각 로그인 경로, 환경 자격 증명, 및 제3자 공급자가 어떻게 처리되는지 확인하세요. 머신의 관리 소스가 "gateway"를 설정하면, Claude Code는 남은 로그인, API 키, 또는 apiKeyHelper 자격 증명을 사용하지 않습니다. 관리자 정책이 클라우드 게이트웨이 로그인을 요구합니다를 참조하여 각각이 생성하는 메시지를 확인하세요. CLAUDE_CODE_USE_BEDROCK 또는 유사한 환경 변수를 통해 클라우드 공급자를 선택하면, 세션은 게이트웨이 로그인이 필요하지 않습니다. v2.1.261 이전에는 Claude Code가 이러한 머신에서 남은 로그인을 사용했습니다.

forceLoginGatewayUrl

/login 클라우드 게이트웨이 화면이 연결하는 게이트웨이 URL을 설정하여 사람들이 주소를 입력하지 않고 클라우드 게이트웨이에 도달하도록 합니다. 화면에는 URL 필드가 없습니다: 이 키가 설정되면, 게이트웨이 URL을 표시하고 사람이 Enter를 누르면 연결합니다. 없으면, IT 관리자에게 문의하도록 알립니다. 관리형 설정에서는 이 키 또는 forceLoginMethod: "gateway" 중 하나가 CLAUDE_CODE_USE_*로 클라우드 공급자를 선택하는 세션을 제외하고 머신을 게이트웨이 전용으로 만듭니다. 그러면 /login은 로그인 방법 선택기 없이 클라우드 게이트웨이 화면에서 열립니다. 관리자 정책이 클라우드 게이트웨이 로그인을 요구합니다를 참조하여 남은 첫 번째 당사자 로그인 또는 API 키에 어떤 일이 발생하는지 확인하세요. 화면이 오류를 표시하는 대신 연결하도록 두 키를 모두 설정하세요.
  • 범위: 사용자 또는 관리됨. 머신의 관리 소스에서 읽습니다: managed-settings.json, macOS plist 또는 Windows HKLM 레지스트리, 또는 정책 도우미. 이 중 어느 것도 없는 머신에서는 Claude Code v2.1.295 이상이 사용자 설정에서도 이 키를 읽습니다. Claude Code는 HKCU 및 서버 관리형 설정에서 무시합니다.
  • 유형: 문자열, 스키마를 포함한 전체 URL
  • 기본값: 설정되지 않음, 따라서 클라우드 게이트웨이 화면은 IT 관리자에게 문의하도록 알리는 오류를 표시합니다.
managed-settings.json
값이 유효한 URL이 아니면, 로그인 화면이 보고하고, 관리형 설정 파일의 나머지는 여전히 적용됩니다. 게이트웨이 URL 설정을 참조하세요.

forceLoginOrgUUID

관리 소스에서, claude.ai 계정 로그인이 단일 UUID로 지정된 하나의 Anthropic 조직에 속하거나 배열로 지정된 여러 조직 중 하나에 속하도록 요구합니다. 모든 설정 파일에서, Claude Code는 또한 단일 UUID를 사용하여 claude.ai 또는 Claude Console 로그인 중에 해당 조직을 미리 선택하고, 배열의 경우 아무것도 미리 선택하지 않습니다. 설정 파일에서 키를 설정하면, Claude Code는 또한 해당 파일이 적용되는 세션에서 키 없는 Console 로그인을 제공하지 않고 대신 API 키를 생성합니다.
  • 범위: 모든 파일. 관리 소스만 제한을 강제합니다. 다른 설정 파일의 단일 UUID는 제한하지 않고 로그인 중에 조직을 미리 선택합니다.
  • 유형: 문자열, 하나의 UUID, 또는 문자열 배열, 여러 UUID
  • 기본값: 설정되지 않음, 따라서 모든 조직이 로그인할 수 있습니다.
이 예제는 하나를 미리 선택하지 않고 두 조직 중 하나에서 로그인을 수락합니다:
managed-settings.json
관리 소스가 빈 배열 또는 문자열이나 문자열 배열이 아닌 값을 설정하면, Anthropic 계정으로 로그인하는 사용자는 Claude Code를 시작하거나 로그인을 완료할 수 없습니다. 이 경우 forceLoginOrgUUID를 명시하고 관리자에게 문의하도록 안내하는 메시지가 표시됩니다. 잘못된 유형의 값을 내보내는 policyHelper는 대신 실행에 실패합니다. 조직에 로그인 제한을 참조하여 Claude Code가 Claude Console 로그인, 다른 로그인 경로, 및 환경 자격 증명을 어떻게 취급하는지 확인하세요.

gatewayInternalNetworks

조직이 내부 네트워크를 번호 매기는 공개 IPv4 블록을 선언하여 /login이 클라우드 게이트웨이를 그곳에서 수락하도록 합니다. Claude Code v2.1.268 이상이 필요합니다. 이 키가 없으면, /login은 개인 주소의 모든 게이트웨이에 연결하고 다른 것은 없습니다. 이 키가 있으면, /login은 또한 나열된 블록 내의 게이트웨이를 직접 연결을 통해서만 수락합니다. 해당 연결의 머신 자신의 주소도 동일한 블록 내에 있어야 합니다.
  • 범위: 관리됨. 머신의 소스에서만 읽습니다: managed-settings.json, macOS plist 또는 Windows HKLM 레지스트리, 또는 정책 도우미. Claude Code는 HKCU 및 서버 관리형 설정에서 무시합니다.
  • 유형: 문자열 배열, 최대 4개의 IPv4 CIDR 블록, 각각 /8에서 /32, 서로 겹치지 않음, 그리고 개인 공간과 겹치지 않음.
  • 기본값: 설정되지 않음, 따라서 /login은 개인 주소의 게이트웨이만 수락합니다.
managed-settings.json
예제의 설명서 범위를 자신의 블록으로 바꾸세요. Claude Code는 설명서 범위, VPN 및 NAT64 클라이언트가 로컬로 사용하는 범위, 그리고 멀티캐스트와 같이 어떤 네트워크도 번호 매기지 않는 예약된 공간을 거부합니다. 항목이 유효하지 않거나 값이 문자열 목록이 아니면, /login은 문제를 이름 지정하고 값을 수정할 때까지 머신의 모든 새로운 게이트웨이 로그인을 거부합니다. 기존 로그인은 계속 작동합니다. 공개 주소 공간에서 소유한 게이트웨이 허용을 참조하여 전체 규칙과 개발자가 보는 것을 확인하세요.

gcpAuthRefresh

Claude Code가 Google Cloud Application Default Credentials가 만료되었거나 로드할 수 없음을 발견할 때 새로 고치기 위해 자신의 명령을 실행하여 Google Cloud의 Agent Platform 요청이 손으로 다시 인증하지 않고도 계속 작동하도록 합니다. 별도의 터미널이나 IDE 창과 같이 동일한 명령과 자격 증명을 사용하는 여러 Claude Code 프로세스가 동시에 자격 증명이 만료되었음을 발견하면, 한 프로세스가 명령을 실행하고 나머지는 각자 실행을 시작하는 대신 해당 실행을 기다립니다. 요청이 대기 중인 상태로 60초 동안 기다린 프로세스는 직접 명령을 실행합니다. 이를 끄려면 CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK을 1로 설정하세요.
  • 범위: 모든 파일
  • 유형: 문자열, 셸 명령줄
  • 기본값: 설정되지 않음, 따라서 Claude Code의 자격 증명 오류는 gcloud auth application-default login을 직접 실행하도록 알립니다.
settings.json
고급 자격 증명 구성을 참조하세요.

otelHeadersHelper

Claude Code가 OpenTelemetry 내보내기와 함께 보내는 헤더를 생성하기 위해 자신의 명령을 실행하여, 토큰이 회전하는 백엔드의 경우입니다. Claude Code는 시작 시 및 그 후 주기적으로 실행하고, stdout에서 문자열 헤더 값의 JSON 객체를 예상합니다.
  • 범위: 모든 파일
  • 유형: 문자열, 실행 가능한 경로 또는 셸 명령줄
  • 기본값: 설정되지 않음, 따라서 Claude Code는 도우미 생성 헤더를 추가하지 않습니다.
settings.json
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS로 새로 고침 간격을 설정하세요. 동적 헤더를 참조하여 스크립트 요구 사항과 도우미가 실패할 때 어떤 일이 발생하는지 확인하세요.

업데이트 및 버전 관리

업데이트 채널을 선택하고, 조직의 경우 사용자가 실행할 수 있는 버전을 고정합니다. Claude Code 업데이트를 참조하십시오.

autoUpdatesChannel

백그라운드 자동 업데이트 및 claude update가 따르는 릴리스 채널을 선택합니다. 일반적으로 약 1주일 된 버전이며 주요 회귀가 있는 릴리스를 건너뛰는 "stable"을 설정하거나, 가장 최근 릴리스를 위해 "latest"를 설정합니다.
  • 범위: 모든 파일. 조직 전체에 하나의 채널을 적용하려면 관리 설정에서 설정합니다.
  • 유형: 문자열, 다음 중 하나:
    • "latest": 업데이트가 가장 최근 릴리스를 따릅니다
    • "stable": 업데이트가 일반적으로 약 1주일 된 버전을 따르며 주요 회귀가 있는 릴리스를 건너뜁니다
  • 기본값: 설정되지 않음, Claude Code는 "latest"를 따릅니다
settings.json
Claude Code는 /config의 자동 업데이트 채널에서 선택할 때 사용자 설정에 "stable"을 기록하고, 거기서 최신으로 다시 전환할 때 키를 제거합니다. claude install stable 및 claude install latest도 명명한 채널을 저장합니다. /config에서 "latest"에서 "stable"로 전환하면 다운그레이드를 허용할지 또는 현재 버전에 머물지 묻습니다. 머물기를 선택하면 minimumVersion을 설정합니다. Homebrew 설치는 이 키를 무시합니다: claude-code cask는 stable을 추적하고 claude-code@latest는 latest를 추적하며, claude update는 brew upgrade로 연기됩니다. 자동 업데이트를 완전히 끄려면 env에서 DISABLE_AUTOUPDATER를 설정합니다.

minimumVersion

백그라운드 자동 업데이트 및 claude update가 이 버전 아래의 버전을 설치하지 않도록 하여, "stable" 채널로 이동해도 최신 "latest" 빌드에서 다운그레이드되지 않습니다. Claude Code는 /config에서 채널을 전환하면서 현재 버전에 머물기를 선택할 때 이 키를 기록하고, "latest"로 다시 전환할 때 지웁니다.
  • 범위: 모든 파일. 조직 전체 최소값을 고정하려면 관리 설정에서 설정하여 사용자 및 프로젝트 설정이 낮출 수 없도록 합니다.
  • 유형: 문자열, "2.1.100"과 같은 버전 번호; 유효한 버전이 아닌 값은 무시됩니다
  • 기본값: 설정되지 않음, 업데이트는 채널이 제공하는 모든 버전을 설치할 수 있습니다
이 예제는 stable 채널을 따르고 2.1.100 아래의 버전 설치를 거부합니다:
settings.json
이 키는 업데이트만 제한합니다. Claude Code가 버전 아래에서 시작하지 않도록 하려면 대신 requiredMinimumVersion을 사용합니다. 최소 버전 고정을 참조하십시오.

requiredMaximumVersion

조직이 시작할 수 있는 가장 최신 Claude Code 버전을 설정합니다. 실행 중인 버전이 더 최신이면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 승인된 버전을 설치하도록 지시합니다. claude install <version>도 작동할 수 있습니다. Claude Code v2.1.163 이상이 필요합니다.
  • 범위: 관리됨. Claude Code는 다른 곳에서 키를 무시할 때 경고를 제공하지 않습니다.
  • 유형: 문자열, "2.1.150"과 같은 버전 번호; 유효한 버전이 아닌 값은 무시됩니다
  • 기본값: 설정되지 않음, 상한이 적용되지 않습니다
managed-settings.json
백그라운드 자동 업데이트 및 claude update는 상한 위의 버전을 건너뛰므로 범위 내의 설치는 범위 내에 머물러 있습니다. claude update, claude install, 및 claude doctor는 사용자가 복구할 수 있도록 상한 위에서 계속 작동합니다. requiredMinimumVersion과 쌍을 이루어 범위를 적용합니다.

requiredMinimumVersion

조직이 시작할 수 있는 가장 오래된 Claude Code 버전을 설정합니다. 실행 중인 버전이 더 오래되면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 업데이트하도록 지시합니다. 검사는 시작 시에만 실행되므로 이미 실행 중인 세션은 계속됩니다. Claude Code v2.1.163 이상이 필요합니다.
  • 범위: 관리됨. Claude Code는 다른 곳에서 키를 무시할 때 경고를 제공하지 않습니다.
  • 유형: 문자열, "2.1.150"과 같은 버전 번호; 유효한 버전이 아닌 값은 무시됩니다
  • 기본값: 설정되지 않음, 하한이 적용되지 않습니다
managed-settings.json
claude update, claude install, 및 claude doctor는 사용자가 복구할 수 있도록 하한 아래에서 계속 작동합니다. 다운그레이드만 방지하는 minimumVersion과 달리, 이 키는 시작을 차단합니다. requiredMaximumVersion과 쌍을 이루어 범위를 적용합니다.

도구

Claude Code 데스크톱 앱에서 특정 도구를 끕니다. 터미널 CLI는 이 키를 무시합니다. 도구 자체에 대해서는 Claude에서 사용 가능한 도구를 참조하세요.

browserExternalPageTools

Claude가 데스크톱 앱의 브라우저 창에서 외부 페이지를 읽거나 작동하는 도구를 사용하지 못하도록 합니다. 조직의 사용자는 여전히 외부 사이트를 직접 열 수 있으며, 로컬 개발 서버 미리보기는 Claude의 도구와 함께 계속 작동합니다. 데스크톱 앱이 이 키를 읽습니다. 터미널 CLI는 무시합니다.
  • 범위: Managed
  • 유형: 문자열, "disabled"; 데스크톱 앱은 "disable"도 허용하며, 어느 경우든
  • 기본값: 설정되지 않음, 따라서 Claude의 도구는 외부 페이지에서 작동합니다
managed-settings.json
다른 값은 Claude의 도구를 켜진 상태로 두며, 허용된 두 값 중 하나가 아닌 비어있지 않은 문자열은 경고를 기록합니다. 사용자와 Claude 모두에 대해 외부 사이트를 차단하려면 대신 disableBrowserExternalNavigation을 설정하세요. 조직의 외부 브라우징 제한을 참조하세요.

disableBrowserExternalNavigation

데스크톱 앱의 브라우저 창에서 사용자와 Claude 모두에 대해 외부 브라우징을 끕니다. Localhost 개발 서버 미리보기는 계속 작동합니다. 데스크톱 앱이 이 키를 읽습니다. 터미널 CLI는 무시합니다.
  • 범위: Managed
  • 유형: 부울; JSON 부울 true만 적용됩니다
    • true: 데스크톱 앱이 브라우저 창에서 사용자와 Claude 모두에 대해 외부 브라우징을 끕니다. localhost 미리보기는 계속 작동합니다
    • false: 외부 브라우징이 켜진 상태로 유지됩니다
  • 기본값: 설정되지 않음, 따라서 외부 브라우징이 켜져 있습니다
managed-settings.json
데스크톱 앱은 다른 값을 무시하며, 문자열 "true" 또는 1과 같이 부울이 아닌 값도 경고를 기록합니다. 외부 브라우징은 켜진 상태로 두되 Claude의 도구를 외부 페이지에서 끄려면 대신 browserExternalPageTools를 설정하세요. 조직의 외부 브라우징 제한을 참조하세요.

disableMobileSimulatorTools

데스크톱 앱의 iOS 시뮬레이터 창에 대해 Claude의 도구를 차단합니다. 사용자는 창을 수동으로 사용할 수 있습니다. Claude의 접근만 제거되며, 아무도 앱 내에서 이를 다시 켤 수 없습니다. 데스크톱 앱이 이 키를 읽습니다. 터미널 CLI는 무시합니다.
  • 범위: Managed
  • 유형: 부울; JSON 부울 true만 적용됩니다
    • true: 데스크톱 앱이 iOS 시뮬레이터 창에 대해 Claude의 도구를 차단합니다
    • false: Claude의 시뮬레이터 도구는 데스크톱 앱의 각 사용자 설정 토글을 따릅니다
  • 기본값: 설정되지 않음, 따라서 Claude의 시뮬레이터 도구는 데스크톱 앱의 각 사용자 설정 토글을 따릅니다
managed-settings.json
데스크톱 앱은 다른 값을 무시하며, 문자열 "true" 또는 1과 같이 부울이 아닌 값도 경고를 기록합니다.

개인정보 보호 및 원격 측정

Claude Code가 세션 데이터를 얼마나 오래 보관하고 무엇을 전송하는지 제어합니다. 사용 지표 및 오류 보고를 끄는 스위치는 설정 키가 아니라 환경 변수입니다. env 키 또는 셸에서 DISABLE_TELEMETRY, DISABLE_ERROR_REPORTING 또는 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC을 설정합니다. 원격 측정 서비스에서 각각이 무엇을 중지하는지 설명합니다. 두 가지 예외는 설정 파일에서 끕니다. 아래의 feedbackDrafts는 Claude가 작성한 피드백용이고, 아래의 feedbackSurveyRate는 세션 설문조사용입니다.

cleanupPeriodDays

Claude Code가 세션 기록 및 기타 애플리케이션 데이터를 삭제하기 전에 보관하는 일 수를 설정합니다. Claude Code는 세션이 시작된 후 백그라운드 스윕으로 삭제를 실행하며, 보관 기간을 안전하게 결정할 수 있는 한 실행합니다. 스윕은 메시지를 표시하지 않고 기록을 삭제하므로, 보관 기간보다 오래 사용하지 않은 세션은 더 이상 /resume 선택기에 나타나지 않습니다.
  • 범위: 모든 파일
  • 유형: 일 수, 정수, 최소값 1
  • 기본값: 30
settings.json
0을 설정하면 유효성 검사에 실패하므로 장기 보관을 위해 3650과 같은 큰 값을 선택합니다. Claude Code가 기록을 전혀 작성하지 않도록 하려면 일반 텍스트 저장소를 참조합니다.

desktopSessionCleanupPeriodDays

Claude Desktop 또는 Cowork에서 시작하거나 가장 최근에 계속한 세션의 트랜스크립트에 대한 나이 제한을 일 수로 설정합니다. 이 키가 없으면 Claude Code는 해당 트랜스크립트를 나이와 관계없이 유지합니다. Claude Code는 각 트랜스크립트가 이 제한과 cleanupPeriodDays 모두보다 오래되면 삭제하므로, cleanupPeriodDays가 기본값 30일 때 7 값은 여전히 30일 동안 유지합니다. 자동으로 정리되는 항목에는 cleanupPeriodDays가 대신 적용되고 Claude Code가 이 키를 무시하는 경우가 나열되어 있습니다. Claude Code v2.1.248 이상이 필요합니다.
  • 범위: 사용자 또는 관리됨. Claude Code는 --settings로 전달하는 파일에서도 키를 읽고 프로젝트 및 로컬 설정에서는 무시합니다.
  • 유형: 일 수, 정수, 최소값 0
  • 기본값: 0, 나이 제한을 설정하지 않음
settings.json

feedbackDrafts

Claude가 작성한 피드백 제어: Claude가 검토할 피드백 초안을 대기열에 넣을 수 있는지 여부, 그리고 Claude Code가 Claude가 초안을 대기열에 넣을 때 카드를 표시하는지 여부입니다.
  • 범위: 사용자 또는 관리됨
  • 유형: 문자열, "notify", "quiet" 또는 "off" 중 하나
    • "notify": Claude Code는 Claude가 초안을 대기열에 넣을 때 프롬프트 위에 카드를 표시하며, 기본적으로 세션당 최대 3개의 카드
    • "quiet": Claude는 카드 없이 초안을 작성합니다. 프롬프트 바닥글에서 대기열에 있는 초안의 개수를 보고 /feedback에서 검토합니다.
    • "off": Claude Code는 SendFeedback 도구를 제거하므로 Claude는 초안을 대기열에 넣을 수 없습니다.
  • 기본값: "notify"
  • 세션별 재정의: CLAUDE_CODE_SEND_FEEDBACK을 0으로 설정하면 한 세션 동안 기능을 끕니다.
settings.json
/config에 Claude가 작성한 피드백으로 나타나며, 이 키를 사용자 설정에 씁니다. /config 행은 Claude가 피드백을 작성할 수 있는 세션에서만 표시됩니다. "off"를 설정해도 숨기지 않으므로 같은 행에서 기능을 다시 켤 수 있습니다. 관리되는 설정의 값은 사용자 설정보다 우선하므로, 관리자가 이 키를 설정하면 행에 관리되는 값이 표시되고 변경해도 효과가 없습니다. Claude Code는 프로젝트 및 로컬 설정에서 이 키를 무시합니다.

feedbackSurveyRate

세션 품질 설문조사가 세션이 적격일 때 나타날 확률을 설정합니다. 설문조사가 나타나지 않도록 하려면 0으로 설정합니다.
  • 범위: 모든 파일
  • 유형: 0과 1 사이의 숫자
  • 기본값: 설정되지 않음, Claude Code는 Anthropic이 원격으로 설정한 비율을 사용하거나, Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry에서 기본 제공 비율 0.005를 사용합니다. 이들은 원격 구성을 받지 않습니다.
  • 세션별 재정의: CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY을 1로 설정하면 이 키가 설정한 비율과 관계없이 한 세션 동안 설문조사를 끕니다.
settings.json
같은 비율이 VS Code 확장 프로그램의 설문조사에도 적용됩니다.

skipWebFetchPreflight

WebFetch 도메인 안전 검사를 건너뜁니다. 이 검사는 가져오기 전에 요청된 각 호스트명을 api.anthropic.com으로 보냅니다. Amazon Bedrock, Google Cloud의 Agent Platform 또는 제한적인 송신이 있는 Microsoft Foundry 배포와 같이 Anthropic으로의 트래픽을 차단하는 환경에서 true로 설정합니다.
  • 범위: 모든 파일
  • 유형: 부울
    • true: Claude Code는 WebFetch 도메인 안전 검사를 건너뜁니다.
    • false: 검사는 세션의 각 호스트명으로의 첫 번째 가져오기 전에 실행되며, 이전 검사가 차단되거나 실패한 호스트명에 대해 다시 실행됩니다.
  • 기본값: 설정되지 않음, 검사는 세션의 각 호스트명으로의 첫 번째 가져오기 전에 실행됩니다.
settings.json
검사를 건너뛰면 WebFetch는 차단 목록을 참조하지 않고 모든 URL을 시도하므로, Claude가 도달할 수 있는 도메인을 제한해야 하는 경우 WebFetch 권한 규칙과 함께 사용합니다.

엔터프라이즈 및 관리형 설정

조직이 관리형 설정을 계산, 새로고침 및 결합하는 데 사용하는 키입니다. 관리형 설정 설정을 참조하세요.

disableSideloadFlags

--plugin-dir, --plugin-url, --agents, --mcp-config CLI 플래그를 시작 시 거부하여 사용자가 strictKnownMarketplaces를 단일 실행으로 우회하는 데 사용할 수 없도록 합니다. Claude Code는 거부된 플래그의 이름을 지정하는 오류로 종료됩니다. 클라우드 세션에서 Claude Code는 세션을 시작하고 인프로세스 type: "sdk" 항목 및 Claude Tag 세션의 Slack 도구를 제외한 모든 서버 제공 --mcp-config 항목을 삭제합니다. Claude Code v2.1.193 이상이 필요합니다.
  • 범위: Managed
  • 유형: Boolean
    • true: Claude Code는 시작 시 --plugin-dir, --plugin-url, --agents, --mcp-config를 거부하고 이름을 지정하는 오류로 종료됩니다. 클라우드 세션에서는 세션을 시작하고 인프로세스 type: "sdk" 항목 및 Claude Tag 세션의 Slack 도구를 제외한 모든 서버 제공 --mcp-config 항목을 삭제합니다.
    • false: Claude Code는 해당 플래그를 수락합니다.
  • 기본값: false
managed-settings.json
Claude Code는 여전히 서버가 모두 인프로세스 type: "sdk" 항목인 --mcp-config를 수락하므로 Agent SDK 및 VS Code 확장이 계속 작동합니다. 사용자는 여전히 claude mcp add 또는 .mcp.json 파일로 서버를 추가할 수 있습니다. 서버별 제어의 경우 allowedMcpServers도 설정하세요. Claude Code v2.1.193 이상이 필요합니다. 동일한 검사는 CLAUDE_CODE_PLUGIN_DIRS 환경 변수에 명명된 플러그인 폴더를 포함합니다. 이는 Claude Code v2.1.280 이상이 필요합니다. 변수가 폴더의 이름을 지정하면 Claude Code는 동일한 오류로 종료되며, 오류는 변수를 설정 해제하도록 지시합니다. 클라우드 세션에서 Claude Code는 또한 서버 제공 중간 세션 MCP 업데이트를 무시합니다. 이는 클라우드 세션 구성 및 SDK setMcpServers() 호출 뒤의 경로이며, 이러한 세션에 도달합니다. 인프로세스 type: "sdk" 항목 및 Claude Tag 세션의 Slack 도구는 거기서도 면제됩니다. v2.1.268 이전에는 이 삭제와 시작 삭제 모두 Claude Tag 세션의 Slack 도구를 제거했습니다. v2.1.239 이전에는 서버 제공 --mcp-config가 클라우드 세션이 시작되는 것을 차단했습니다. 데스크톱 앱은 claude.ai에서 동기화된 플러그인 및 조직이 앱을 통해 배포하는 플러그인을 포함하여 일부 플러그인을 자체적으로 관리합니다. MDM, OS 수준 정책 또는 관리형 설정 파일을 통해 이 키를 디바이스에 배포하면 데스크톱 앱은 해당 디바이스의 다음 세션에 해당 플러그인을 전달하지 않습니다:
  • 사용자 머신의 Code 세션: 사용자의 claude.ai 계정에 대해 활성화된 스킬 없이도 시작됩니다. Claude Code가 관리형 설정의 마켓플레이스에서 설치하는 플러그인은 여전히 로드됩니다. Claude Desktop on 3P에서 디바이스의 org-plugins 디렉터리에 배포하는 플러그인의 MCP 서버는 데스크톱 앱이 자체적으로 연결하기 때문에 사용 가능한 상태로 유지됩니다. Claude Desktop v1.37937.0 이전에는 이러한 세션이 시작 시 실패했습니다.
  • 사용자 머신의 Cowork 세션: 해당 플러그인 내의 스킬 및 사용자의 claude.ai 계정에 대해 활성화된 스킬은 사용 가능한 상태로 유지됩니다. Claude Desktop on 3P에서 디바이스의 org-plugins 디렉터리에 배포하는 플러그인의 MCP 서버는 데스크톱 앱이 자체적으로 연결하기 때문에 사용 가능한 상태로 유지됩니다. Claude Desktop v1.44121.0 이전에는 이러한 세션이 시작 시 실패했습니다.

forceRemoteSettingsRefresh

Claude Code가 서버 관리형 설정을 새로 가져올 때까지 CLI 시작을 차단합니다. 가져오기가 실패하면 Claude Code는 캐시된 설정이나 설정 없이 계속하지 않고 종료합니다. 환경이 관리형 정책 없이 세션이 실행되는 짧은 기간도 허용할 수 없을 때 설정하세요. 키가 설정되지 않으면 Claude Code는 가져오기에서 시작을 차단하지 않지만, 개발자가 시작 시 로그인할 때 가져오기를 위해 최대 5초를 기다립니다. Cloud 게이트웨이 세션은 항상 기다리며, 게이트웨이에 도달할 수 없으면 종료됩니다.
  • 범위: Managed. Claude Code는 최우선 소스가 아닌 경우에도 모든 관리자 제어 관리형 소스에서 true를 인정합니다.
  • 유형: Boolean
    • true: Claude Code는 서버 관리형 설정을 새로 가져올 때까지 시작을 차단하고, 가져오기가 실패하면 종료합니다.
    • false: Claude Code는 가져오기에서 시작을 차단하지 않지만, 로그인 시작 시 가져오기를 위해 최대 5초를 기다립니다.
  • 기본값: false
managed-settings.json
MDM 프로필 또는 관리형 설정 파일에 설정하여 첫 번째 서버 페이로드가 도착하기 전에 실패 폐쇄 시작을 적용합니다. Claude Code는 서버 관리형 설정을 가져오는 세션에서만 검사를 적용하므로, 가져오지 않는 세션은 기다리지 않고 시작됩니다. claude auth 부명령은 면제되므로 사용자는 만료된 자격 증명이 가져오기 실패의 원인일 때 다시 인증할 수 있습니다. 실패 폐쇄 시작 적용을 참조하세요.

managedSourcesBehavior

Claude Code가 조직이 제공하는 최우선 관리형 소스만 적용할지, 아니면 제공하는 모든 관리자 소스를 결합할지 선택합니다. 기본적으로 Claude Code는 정책 키를 전달하는 최우선 소스를 가져가고 나머지는 무시합니다. 정책 키는 이 키와 wslInheritsWindowsSettings를 제외한 모든 설정 키입니다. 해당 기본값에서 서버 관리형 설정 또는 MDM 정책이 정책 키를 제공하면 managed-settings.json 파일은 Claude Code가 모든 관리자 소스에서 읽는 키만 제공합니다. "merge"를 사용하면 제공하는 모든 관리자 소스가 결합된 정책에 키를 제공합니다. Claude Code v2.1.242 이상이 필요합니다. 최우선 소스 아래에 순위가 지정된 모든 소스가 관리자의 제어 하에 있는 경우에만 "merge"를 설정하세요. Claude Code는 permissions.allow 규칙과 같은 하위 소스의 항목을 정책에 추가하기 때문입니다.
  • 범위: Managed. Claude Code는 이 키 또는 정책 키를 전달하는 최우선 소스에서 이 키를 읽고, 순위가 낮은 모든 소스에서 이 키를 무시합니다. 따라서 하위 소스는 위의 소스와 결합하도록 자신을 선택할 수 없습니다. Windows HKCU 레지스트리 또는 포함 호스트의 부모 설정은 병합에 참여하지 않습니다.
  • 유형: string, 다음 중 하나:
    • "first-wins": 정책 키를 전달하는 최우선 소스가 정책을 제공하고, 하위 소스는 Claude Code가 모든 관리자 소스에서 읽는 키만 제공합니다.
    • "merge": 제공하는 모든 관리자 소스가 키를 제공하며, 아래 규칙에 따라 결합됩니다.
  • 기본값: "first-wins"
배포하는 최우선 소스에서 키를 제공합니다. 서버 관리형 설정을 받지 않는 머신은 Claude Code가 이 키 또는 정책 키를 전달하는 최우선 소스에서 키를 읽기 때문에 MDM 프로필에도 키가 필요합니다. managed-settings.json 파일은 최하위 순위 관리자 소스이므로, 거기에 설정된 "merge"는 결합할 아래 소스가 없습니다. 서버 관리형 설정에서 키는 다음과 같습니다:
"merge" 아래에서 Claude Code는 각 키를 종류별로 결합합니다. 이 표는 각 종류에 대한 규칙을 제공합니다. 제한 허용 목록, 값 전체 및 최우선 소스 전용 행은 포함하는 모든 키의 이름을 지정하고, 다른 행은 예를 제공합니다: sandbox.credentials.awsPairs 및 sandbox.ripgrep을 전체로 가져오려면 Claude Code v2.1.257 이상이 필요합니다. 몇 가지 키는 표에 표시되지 않는 조건을 추가합니다:
  • policyHelper: Claude Code는 정책 키를 전달하는 최우선 소스가 MDM 정책 또는 관리형 설정 파일일 때만 인정하므로, 서버 관리형 설정에서는 적용되지 않습니다.
  • modelOverrides: availableModels와 쌍을 이룹니다. Claude Code는 설정하는 최우선 소스에서 modelOverrides를 가져옵니다. 단, 상위 소스가 modelOverrides 없이 availableModels를 설정하는 경우는 제외됩니다. 이 경우 모든 소스에서 modelOverrides를 무시합니다.
  • forceLoginGatewayUrl, gatewayInternalNetworks 및 forceLoginMethod의 "gateway" 값: Claude Code는 서버 관리형 설정에서 이들 중 어느 것도 읽지 않으므로, 거기의 값은 MDM 정책 또는 관리형 설정 파일에 설정된 값을 적용하거나 숨기지 않습니다. 머신의 관리자 소스 중에서 정책 키를 전달하는 최우선 순위 소스만 서버 관리형 설정도 있는지 여부와 관계없이 이들을 제공합니다.
  • allowedProviders: 표의 규칙 이후에도 머신 자체의 목록이 결과를 제한하며, 해당 항목의 범위 참고 사항에 명시되어 있습니다.
머신에서 결합된 소스를 확인하려면 /status를 실행하고 Setting sources 행을 읽으세요.

parentSettingsBehavior

Claude Code가 Agent SDK 또는 IDE 확장과 같은 포함 호스트 프로세스에서 제공하는 관리형 설정을 적용할지 선택합니다. 관리자 배포 관리형 계층도 있을 때. "first-wins"를 사용하면 Claude Code는 호스트 제공 설정을 삭제합니다. "merge"를 사용하면 제한 전용 필터를 통해 관리자 계층 아래에 적용합니다. 호스트가 자신의 제한을 시작하는 세션에 전달해야 할 때 "merge"를 설정하세요. 예를 들어 Claude Desktop이 게이트웨이의 송신 허용 목록을 제공합니다.
  • 범위: Managed. Claude Code는 최우선 관리자 제어 관리형 소스에서 읽습니다.
  • 유형: string, 다음 중 하나:
    • "first-wins": Claude Code는 관리자 배포 관리형 계층이 있을 때 호스트 제공 설정을 삭제합니다.
    • "merge": Claude Code는 제한 전용 필터를 통해 관리자 계층 아래에 호스트 제공 설정을 적용합니다.
  • 기본값: "first-wins"
managed-settings.json
관리자 배포 관리형 계층이 없을 때 이 키는 효과가 없습니다. 호스트의 설정은 유일한 관리형 계층으로 적용되며, 여전히 제한 값으로 필터링됩니다. 필터의 제한 및 관리형 소스가 상호 작용하는 방식에 대해서는 포함 호스트의 부모 설정 및 부모 설정 제한을 참조하세요.

policyHelper

배포하는 실행 파일을 실행하여 시작 시 관리형 설정을 계산하므로 정적 파일 대신 디바이스 상태, ID 또는 원격 서비스에서 정책을 파생할 수 있습니다. Claude Code는 첫 번째 프롬프트를 수락하기 전에 도우미를 실행하고 내보내는 설정을 세션의 관리형 설정으로 처리합니다.
  • 범위: Managed. macOS plist, Windows HKLM 레지스트리 또는 관리형 설정 파일에서 읽습니다. Claude Code는 정책 키를 전달하는 최우선 관리형 소스에서 키를 읽고, 해당 소스가 이 세 가지 중 하나일 때만 도우미를 실행합니다. 서버 관리형 설정, HKCU 레지스트리 및 호스트 제공 부모 설정에서 키를 무시합니다.
  • 유형: path, timeoutMs 및 refreshIntervalMs가 있는 object
  • 기본값: 설정 해제되어 도우미가 실행되지 않습니다.
서버 관리형 설정이 시작 시 정책을 제공하면 도우미의 소스보다 우선하고 도우미는 실행되지 않습니다. 나중에 설정 가져오기가 서버 관리형 설정이 제거되었음을 보고하면 Claude Code는 다음 시작을 기다리지 않고 그 시점에서 도우미를 실행합니다. 출력은 세션의 나머지를 관리하고, 실패한 실행은 실패한 시작 실행과 동일한 메시지로 세션을 종료합니다. 이 예제는 5초 시간 초과로 도우미를 실행하고 5분마다 다시 실행합니다:
managed-settings.json

도우미 출력 작성

Claude Code는 인수 없이 도우미를 실행하고, 환경에서 CLAUDE_CODE_VERSION을 설정하고, stdout에서 JSON 봉투를 읽으며, 1 MiB로 제한됩니다. managedSettings 키 아래에 설정을 배치합니다. managedSettings 키가 없는 베어 설정 객체는 managedSettings undefined로 구문 분석되고 아무것도 적용하지 않으며, Claude Code는 오류를 보고하지 않습니다:
도우미가 managedSettings를 내보내면 해당 객체는 실행의 유일한 관리형 설정 소스가 됩니다. Claude Code는 MDM, 파일 및 HKCU 소스를 무시하고, 도우미의 출력에서만 교차 소스 키를 읽고, 부모 설정을 병합하지 않습니다. 시작 forceRemoteSettingsRefresh 검사는 도우미 전에 실행되고 모든 관리자 소스를 읽습니다. 도우미가 managedSettings를 생략하는 봉투로 0을 종료하면 관리형 설정을 제공하지 않으며, 다른 소스는 평소대로 적용됩니다.

도우미 실패

도우미 실행은 다음과 같은 경우 실패합니다:
  • path가 policyHelper.path의 규칙을 위반합니다.
  • path에 일반 파일이 없습니다. Claude Code는 도우미를 시작하기 전에 동일한 timeoutMs 예산 내에서 파일을 확인하므로, 응답하지 않는 네트워크 마운트로 인해 실행이 실패할 수 있습니다.
  • 도우미가 0이 아닌 값으로 종료되거나, timeoutMs가 경과할 때 여전히 실행 중이거나, 예를 들어 실행 가능하지 않기 때문에 전혀 시작되지 않습니다.
  • 도우미가 stdout 또는 stderr에 1 MiB 이상을 씁니다.
  • stdout이 단일 JSON 객체가 아니거나, managedSettings에 Claude Code가 복구할 수 없는 스키마 위반이 있습니다.
시작 실행이 실패하면 Claude Code는 이유를 인쇄하고 시작을 거부합니다. 0이 아닌 종료 후 이유에는 도우미의 stderr 또는 stderr가 비어 있을 때 stdout이 포함됩니다. 시간 초과 후 이유는 timeoutMs 제한의 이름을 지정하고 도우미의 출력을 포함하지 않습니다. 거부는 대화형 세션, claude -p, Agent SDK 세션, 백그라운드 세션 및 대부분의 부명령을 포함합니다. 거부는 의도적이므로 중단 복원력이 필요한 도우미는 자신의 캐시에서 제공하고 0을 종료해야 합니다. 백그라운드 새로고침이 실패하면 Claude Code는 마지막 성공한 정책을 유지하고, /status는 새로고침이 성공할 때까지 이유와 함께 실패한 새로고침을 표시합니다. 각 새로고침은 시작 실행과 동일한 timeoutMs 및 실패 규칙에서 실행됩니다. --debug를 사용하면 Claude Code는 모든 실행에서 도우미의 stderr을 디버그 로그에 씁니다. Claude Code는 잘못된 policyHelper 값을 삭제된 항목으로 보고하고 도우미를 실행하지 않고 나머지 관리형 설정에서 세션을 시작합니다. 잘못된 값에는 베어 경로 문자열 및 최소값 아래의 timeoutMs가 포함됩니다. 도우미를 끄려면 설정하는 소스에서 키를 제거합니다.

policyHelper.path

Claude Code가 실행하는 도우미 실행 파일의 이름을 지정합니다. 경로가 아래 규칙을 위반할 때 발생하는 일은 도우미 실패를 참조하세요.
  • 범위: Managed. policyHelper가 읽히는 macOS plist, Windows HKLM 레지스트리 또는 관리형 설정 파일에서 읽습니다.
  • 유형: string, . 또는 .. 세그먼트 없이 정규화된 형식의 절대 경로. Windows에서는 .exe로 끝나는 드라이브 문자 또는 UNC 경로
  • 기본값: 없음. policyHelper가 설정되면 필수
managed-settings.json

policyHelper.timeoutMs

Claude Code가 도우미를 기다리는 시간을 설정하고, 실행을 실패로 처리합니다. 시간 초과 실행은 0이 아닌 종료와 동일한 방식으로 실패하므로 시작 시 Claude Code는 시작을 거부합니다.
  • 범위: Managed. policyHelper가 읽히는 macOS plist, Windows HKLM 레지스트리 또는 관리형 설정 파일에서 읽습니다.
  • 유형: integer, 밀리초, 최소 1000
  • 기본값: 10000
managed-settings.json

policyHelper.refreshIntervalMs

Claude Code가 백그라운드에서 간격으로 도우미를 다시 실행하여 정책 변경이 실행 중인 세션에 도달하도록 합니다. 새로고침이 성공하면 출력이 이전 관리형 설정을 다시 시작 없이 대체합니다. 새로고침이 실패하면 Claude Code는 이미 있는 정책을 유지합니다.
  • 범위: Managed. policyHelper가 읽히는 macOS plist, Windows HKLM 레지스트리 또는 관리형 설정 파일에서 읽습니다.
  • 유형: integer, 밀리초: 새로고침을 비활성화하려면 0, 그렇지 않으면 최소 60000
  • 기본값: 설정 해제되어 Claude Code가 시작 시 도우미를 한 번 실행합니다.
이 예제는 5분마다 도우미를 다시 실행합니다:
managed-settings.json

wslInheritsWindowsSettings

Claude Code on WSL이 Windows 정책 체인에서 관리형 설정을 읽도록 하여 HKLM 및 Windows 관리형 설정 파일이 /etc/claude-code 및 아래의 HKCU보다 우선하도록 합니다. 체인이 켜져 있는 동안 Claude Code는 HKLM 레지스트리 값 또는 C:\Program Files\ClaudeCode\ 폴더에 Windows 관리자 문서가 없을 때만 /etc/claude-code를 읽습니다. Windows에 이미 배포한 정책을 WSL 세션으로 확장하도록 설정하여 호스트 세션과 동일한 규칙을 따르도록 합니다. Claude Code는 HKLM 레지스트리 키 또는 C:\Program Files\ClaudeCode\ 아래의 관리형 설정 파일 또는 드롭인에 설정된 경우에만 인정하며, 둘 다 Windows 관리자가 작성해야 합니다.
  • 범위: Managed. 관리자 제어 Windows 소스에서.
  • 유형: Boolean
    • true: Claude Code on WSL은 Windows 정책 체인에서 관리형 설정을 읽고, Windows 관리자 문서가 없을 때만 /etc/claude-code를 읽습니다.
    • false: WSL은 /etc/claude-code만 읽습니다.
  • 기본값: false, WSL은 /etc/claude-code만 읽습니다.
managed-settings.json
관리자 소스가 체인을 켜면 HKCU 정책은 HKCU도 키를 true로 설정할 때만 WSL에서 체인에 참여합니다. 해당 복사본은 체인을 자체적으로 켜지 않습니다. 이 키만 포함하고 true 또는 false로 설정된 Windows 소스는 정책 소스로 계산되지 않으므로 하위 우선 소스는 여전히 정책을 제공합니다. 이 키는 네이티브 Windows에 영향을 주지 않습니다. Claude Code는 따옴표 있음 또는 없음으로 true 및 false를 읽고 null을 키 제거로 읽습니다. 다른 값을 보유하는 관리자 제어 Windows 소스는 체인이 켜져 있는 현재 관리자 문서로 계산됩니다. /etc/claude-code 또는 HKCU는 적용되지 않으며, 시작 경고는 키의 이름을 지정합니다. 존재하지만 읽을 수 없는 HKLM 값 또는 Windows 폴더 파일도 체인이 켜져 있는지 여부와 관계없이 /etc/claude-code가 적용되는 것을 방지합니다. Claude Code v2.1.282 이상이 필요합니다.

전역 설정

이 키들을 ~/.claude.json에 저장하세요. 설정 파일에는 저장하지 마세요. Claude Code는 다른 곳의 설정을 무시합니다. Claude Code와 /config가 대부분의 설정을 자동으로 작성하며, 수동으로 편집할 수도 있습니다.

autoConnectIde

외부 터미널에서 Claude Code를 시작할 때 실행 중인 IDE에 자동으로 연결합니다. VS Code 또는 JetBrains 터미널 외부에서 Claude Code를 실행할 때 /config에 **IDE에 자동 연결(외부 터미널)**로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: Claude Code가 외부 터미널에서 시작할 때 실행 중인 IDE에 자동으로 연결됩니다
    • false: Claude Code가 외부 터미널에서 자동으로 연결되지 않습니다. VS Code 또는 JetBrains 터미널 내부에서 또는 --ide를 사용하면 여전히 연결됩니다
  • 기본값: false
  • 세션별 재정의: CLAUDE_CODE_AUTO_CONNECT_IDE가 이 키보다 우선하며, 한 세션 동안 어느 방향이든 적용됩니다
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

autoInstallIdeExtension

VS Code 터미널에서 Claude Code를 실행할 때 Claude Code IDE 확장을 자동으로 설치합니다. VS Code 또는 JetBrains 터미널 내부에서 Claude Code를 실행할 때 /config에 IDE 확장 자동 설치로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: Claude Code가 VS Code 터미널에서 실행될 때 IDE 확장을 자동으로 설치합니다
    • false: Claude Code가 확장을 자동으로 설치하지 않습니다
  • 기본값: true
  • 세션별 재정의: CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL을 1로 설정하면 이 키가 true일 때도 한 세션 동안 설치를 건너뜁니다
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

claudeInChromeDefaultEnabled

매번 --chrome을 전달하지 않고도 모든 대화형 CLI 세션을 Chrome 통합이 켜진 상태로 시작합니다. claude remote-control을 실행하면 bypassPermissions 모드를 제외하고 시작하는 프로젝트 스레드의 세션도 이 키를 따릅니다. Claude Code v2.1.287 이상에서는 이 키가 VS Code 확장의 세션에도 적용됩니다. Chrome 기본적으로 활성화를 참조하세요. /chrome을 실행하고 기본적으로 활성화됨을 선택하면 이 키가 설정됩니다. /config에 Chrome에서 Claude 기본적으로 활성화됨으로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: Claude Code가 대화형 CLI 세션이 시작될 때 Chrome 통합을 켭니다. --chrome을 전달할 때처럼 작동합니다. VS Code 확장에서는 세션이 시작될 때 브라우저에 연결됩니다
    • false: 대화형 CLI 세션이 Chrome 통합이 꺼진 상태로 시작되며, Claude Code는 설정을 제안하는 것을 중단합니다. 한 대화형 세션에 대해 켜려면 --chrome을 전달하세요. VS Code 확장에서는 키가 설정되지 않은 경우와 마찬가지로 @browser를 입력할 때 세션이 연결됩니다
  • 기본값: 설정되지 않음. Chrome 통합이 꺼져 있고 Claude Code는 여전히 설정을 제안할 수 있습니다
  • 세션별 재정의: --chrome 및 --no-chrome이 한 대화형 세션에 대해 이 키보다 우선합니다
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

copyFullResponse

선택기를 표시하지 않고 /copy가 매번 전체 응답을 복사하도록 합니다. 해당 선택기에서 항상 전체 응답 복사를 선택하면 이 키가 true로 설정됩니다. /config에 /copy 선택기 건너뛰기로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: /copy가 선택기를 표시하지 않고 전체 응답을 복사합니다
    • false: 응답에 코드 블록이나 인용 블록이 포함되어 있을 때 /copy가 한 블록 또는 전체 응답을 선택하는 선택기를 표시합니다
  • 기본값: false
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

copyOnSelect

전체 화면 렌더링 또는 에이전트 보기에서 마우스로 텍스트 선택을 완료할 때 자동으로 클립보드에 복사합니다. 전체 화면 렌더링이 켜져 있을 때 /config에 선택 시 복사로 표시됩니다.
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

defaultToAgentsView

인수 없이 claude를 실행할 때 새 대화 대신 에이전트 보기를 엽니다. 에이전트 보기가 꺼져 있지 않은 한 /config에 기본적으로 에이전트 보기 열기로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: 인수 없는 claude가 에이전트 보기를 열며, 에이전트 보기가 꺼져 있지 않은 경우입니다
    • false: 인수 없는 claude가 새 대화를 시작합니다
  • 기본값: false
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

diffTool

VS Code 또는 JetBrains IDE가 연결되어 있을 때 Claude Code가 제안하는 Edit 또는 Write 변경 사항의 diff를 표시할 위치를 선택합니다. "auto"는 IDE의 diff 뷰어에서 열고, "terminal"은 터미널에 유지합니다. Claude Code가 VS Code 또는 JetBrains IDE에 연결되어 있을 때만 /config에 Diff 도구로 표시됩니다.
  • 범위: 전역 설정
  • 유형: 문자열, 다음 중 하나:
    • "auto": Claude Code가 VS Code 또는 JetBrains IDE에 연결되어 있을 때 IDE의 diff 뷰어에서 diff를 엽니다
    • "terminal": Claude Code가 터미널에 diff를 유지합니다
  • 기본값: "auto"
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

externalEditorContext

Ctrl+G를 누르면 Claude Code가 입력 중인 프롬프트를 외부 편집기에서 엽니다. 이 키를 켜면 편집기 버퍼가 Claude의 이전 응답으로 시작되며 # 주석 줄로 표시되므로 작성하는 동안 읽을 수 있고, Claude Code는 저장할 때 이 줄들을 제거합니다. /config에 외부 편집기에서 마지막 응답 표시로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: 편집기 버퍼가 Claude의 이전 응답으로 시작되며 # 주석 줄로 표시되고, Claude Code는 저장할 때 이를 제거합니다
    • false: 편집기 버퍼가 프롬프트만으로 열립니다
  • 기본값: false
~/.claude.json
켜져 있을 때 Claude Code가 열 버퍼는 다음과 같으며, 마커 줄 아래의 텍스트만 프롬프트로 전송됩니다:
Claude Code는 응답의 마지막 50줄을 유지하고 # … (earlier output truncated)로 자르기를 표시합니다. Claude Code는 settings.json에서 이 키를 무시합니다.

leftArrowOpensAgents

빈 프롬프트에서 ←를 눌러 세션을 백그라운드로 보내고 에이전트 보기를 엽니다. 이 키를 false로 설정하여 단축키를 끕니다. 에이전트 보기를 사용할 수 있을 때 /config에 ← 에이전트 보기 열기로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: 터미널에서 시작한 세션의 빈 프롬프트에서 ←를 누르면 세션을 백그라운드로 보내고 에이전트 보기를 엽니다
    • false: Claude Code가 단축키를 끕니다. 에이전트 보기에서 연결한 세션에서 빈 프롬프트의 ←는 여전히 분리됩니다
  • 기본값: true
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

permissionExplainerEnabled

v2.1.257에서 제거되었으며, Bash 및 PowerShell 권한 프롬프트의 Ctrl+E 명령 설명도 함께 제거되었습니다. 현재 버전에서 이를 설정해도 효과가 없습니다.
v2.1.256까지는 Bash 또는 PowerShell 권한 프롬프트에서 Ctrl+E를 눌러 모델이 생성한 명령 설명을 볼 수 있었으며, 이 키를 false로 설정하여 해당 단축키를 끌 수 있었습니다.
  • 범위: 전역 설정. v2.1.256 이전 버전에서.
  • 유형: Boolean
  • 기본값: true

prStatusFooterEnabled

현재 브랜치의 열린 풀 요청 또는 병합 요청에 대한 배지를 프롬프트 바닥글에 표시하며, 색상이 지정된 밑줄이 상태를 표시합니다. /config에 PR 상태 바닥글 표시로 표시됩니다.
  • 범위: 전역 설정
  • 유형: Boolean
    • true: 바닥글이 PR 검토 상태의 조건에서 배지를 표시합니다
    • false: Claude Code가 바닥글의 풀 요청 및 병합 요청 확인을 건너뛰고 해당 배지를 표시하지 않습니다. 에이전트 보기에서 연결한 세션은 여전히 연결된 풀 요청에 대한 일반 링크를 표시할 수 있습니다
  • 기본값: true
~/.claude.json
Claude Code는 settings.json에서 이 키를 무시합니다.

teammateDefaultModel

v2.1.234에서 제거되었으며, /config 행 기본 팀원 모델도 함께 제거되었습니다. 현재 버전에서 이를 설정해도 효과가 없습니다.
v2.1.233까지는 이 키를 에이전트 팀 팀원의 모델로 설정했으며, 프롬프트가 모델을 지정하지 않은 경우: "sonnet"과 같은 별칭 또는 리드의 모델을 따르려면 null. Claude Code가 현재 이러한 팀원을 위해 선택하는 모델은 팀원 및 모델 지정을 참조하세요.
  • 범위: 전역 설정. v2.1.233 이전 버전에서.
  • 유형: 문자열, 모델 별칭 또는 전체 모델 ID, 또는 null
  • 기본값: 설정되지 않음

참고 항목