이 참조 페이지는 Claude Code가 설정 파일에서 읽는 각 키와 대신 ~/.claude.json에 유지하는 짧은 키 그룹을 나열합니다. 파일을 선택하거나 우선순위를 확인하려면 설정 파일 및 우선순위에서 시작하십시오.
설정 인덱스
아래의 모든 키는 해당 항목으로 연결됩니다. 범위는 파일을 나열합니다: User는 ~/.claude/settings.json, Project는 .claude/settings.json, Local은 .claude/settings.local.json, Managed는 조직이 배포하는 것입니다. Any file은 네 가지 모두를 의미하고, Global config는 ~/.claude.json을 의미합니다.
<ReferenceFilter
noun="settings"
placeholder="Filter settings by key or purpose"
facetOrder={{ scope: ["Any file", "User, local, or managed", "User or managed", "Managed", "Global config"] }}
columnHelp={{
topic: "The section of this page that holds the entry. Use Sort by to group the table by topic.",
scope: "Which settings files can set the key: user (~/.claude/settings.json), project (.claude/settings.json), local (.claude/settings.local.json), or managed (deployed by your organization). Global config keys are in ~/.claude.json instead.",
}}
/>
Claude Code가 사용할 모델과 응답 방식을 선택합니다. 이러한 설정이 /model 명령 및 환경 변수와 상호작용하는 방식에 대해서는 모델 구성을 참조하십시오.
`advisorModel`
Claude가 서버 측 advisor 도구를 호출할 때 응답하는 모델을 선택합니다. 이를 설정 해제하여 advisor를 끕니다. advisor는 최소한 주 모델만큼 능력이 있어야 합니다. 허용되는 쌍과 허용되지 않는 쌍을 선택할 때 발생하는 상황에 대해서는 advisor 모델 선택을 참조하십시오.
일반적으로 이 키를 직접 편집하지 않습니다. /advisor를 실행하여 현재 선택, advisor할 수 있는 모델, advisor 없음을 표시하는 선택기를 엽니다. Claude Code는 선택 사항을 ~/.claude/settings.json의 이 키에 저장합니다. Remote Control 클라이언트에서 선택하거나 원격 워커에 연결된 세션에서 선택하면, 선택 사항이 해당 세션에만 적용되며 이 키를 변경하지 않습니다.
계정에 usage-credits 동의가 필요한 경우, /model fable을 실행하여 먼저 동의합니다. 그렇게 할 때까지 /advisor에서 Fable을 선택해도 아무것도 저장되지 않으며 Claude Code는 먼저 /model fable을 실행하도록 지시합니다.
이 키는 Amazon Bedrock 및 AWS의 Claude Platform과 같이 advisor가 사용 불가능한 공급자에게는 영향을 주지 않습니다. "fable"은 Fable 액세스가 필요합니다.
`alwaysThinkingEnabled`
이를 false로 설정하여 모든 세션에 대해 확장 사고를 끕니다. 사고는 기본적으로 켜져 있으므로 true는 아무것도 변경하지 않습니다. 대부분의 사람들은 파일을 편집하는 대신 /config를 통해 이를 설정합니다.
Fable 모델과 같이 항상 사고하는 모델에서는 false가 영향을 주지 않습니다. 타사 공급자에서 Claude Code는 사고를 끄는 대신 thinking 매개변수를 생략하므로 적응형 추론 모델은 여전히 사고할 수 있습니다. Anthropic API에서 사고를 끈 경우, Claude Code는 Opus 5와 같이 해당 조합을 허용하지 않는 모델에 더 높은 수준 대신 노력 high를 보냅니다.
세션별 재정의: MAX_THINKING_TOKENS는 한 세션 동안 이 키보다 우선합니다: 0은 false와 동일한 모델 및 공급자 제한 하에서 사고를 끄고, 양수 값은 이 키가 false일 때도 사고를 켭니다. 적응형 추론 모델에서 숫자 자체는 무시됩니다
{"alwaysThinkingEnabled": false
}
`availableModels`
사람들이 주 세션, subagents, skills, advisor에 대해 선택할 수 있는 모델을 제한합니다. 관리되는 목록은 /model, --model, 개발자 자신의 파일의 model 키를 제한합니다. 목록 외의 모델은 선택할 수 없습니다. 이것만으로는 기본값 옵션을 건드리지 않습니다. enforceAvailableModels와 쌍을 이루십시오.
저장하지 않은 모델에 대한 기본 노력 수준을 설정합니다. 낮은 수준은 간단한 작업에서 더 빠르고 저렴하며, 높은 수준은 복잡한 문제에 대해 더 깊이 있게 추론합니다.
머신의 대화형 세션에서 /effort low, medium, high, 또는 xhigh를 실행하면, Claude Code는 이 키를 작성하는 대신 수준을 modelSettings 아래의 활성 모델에 대해 저장합니다. v2.1.251 이전에는 /effort가 이 키를 작성했습니다.
동일한 설정 파일 내에서 Claude Code는 이 키보다 모델의 저장된 수준을 사용합니다. modelSettings는 파일 간 우선순위를 나타냅니다.
원격 워커에 연결된 세션에서 /effort는 해당 세션에만 적용됩니다. -p 실행 또는 Agent SDK에서도 해당 세션에만 적용됩니다. 모델의 기본 노력에 대한 보류가 적용되지 않는 한. 노력 수준 조정은 해당 세션에만 적용되는 대화형 선택을 나열합니다. /effort가 인쇄하는 메시지는 어떤 일이 발생했는지 나타냅니다.
Opus 4.7, Opus 4.8, Fable 5에서 Claude Code는 해당 모델의 기본 노력(조직 설정 또는 기본 제공)을 유지합니다. 노력 수준 조정은 수준 설정의 어떤 방식이 보류를 끝내고 어떤 방식이 유지하는지 나타냅니다. 보류가 끝나면 Claude Code는 modelSettings에 명시된 우선순위에 따라 노력을 해결합니다.
`enforceAvailableModels`
/model 선택기에는 적용되는 경우 조직 기본 모델로 확인되고, 그렇지 않으면 계정 유형의 기본값으로 확인되는 기본값 옵션이 있습니다. availableModels 허용 목록은 이름을 지정할 수 있는 모델을 제한하지만, 그 자체로는 기본값을 그대로 두므로 기본값은 여전히 목록 외의 모델로 확인될 수 있습니다. 이 키는 그 간격을 닫습니다. Claude Code v2.1.175 이상이 필요합니다.
조직이 관리되는 설정을 배포하면 Claude Code는 관리되는 소스에서만 이 키를 읽고 다른 파일에서는 무시합니다.
availableModels가 설정 해제되거나 비어 있을 때 이 키는 영향을 주지 않습니다. 기본 모델에 대한 허용 목록 적용을 참조하십시오. Claude Code v2.1.175 이상이 필요합니다.
`fallbackModel`
주 모델이 과부하이거나 사용 불가능할 때 Claude Code가 순서대로 시도할 백업 모델을 이름 지정합니다. Claude Code는 체인의 다음 사용 가능한 모델로 전환하고 알림을 표시합니다. 체인이 없으면 Claude Code는 동일한 모델을 재시도한 다음 서버의 오류를 표시하고, 사용자가 재시도하거나 모델을 전환합니다.
전환은 폴백 모델에서 콜드 프롬프트 캐시를 사용한 한 번의 턴을 의미합니다. 다음 메시지는 주 모델을 먼저 다시 시도합니다.
대부분의 배열 설정과 달리 이 키는 설정 파일 간에 병합되지 않습니다. 가장 높은 우선순위 파일이 전체 체인을 제공합니다. 프로젝트 파일이 ["claude-sonnet-5"]를 설정하고 사용자 파일이 ["claude-haiku-4-5"]를 설정하면, 체인은 ["claude-sonnet-5"]만입니다. Claude Code는 목록에서 최대 3개의 서로 다른 허용 모델을 유지하고 나머지는 무시합니다. 폴백 모델 체인을 참조하십시오.
`fastMode`
사용 가능한 세션에 대해 빠른 모드를 켭니다. 빠른 반복이나 라이브 디버깅과 같은 대화형 작업에 사용하여 토큰당 더 높은 비용으로 속도를 원합니다. 일반적으로 이 키를 직접 편집하지 않습니다. /fast를 실행하면 fastMode: true를 ~/.claude/settings.json에 작성하고, 다시 실행하여 빠른 모드를 끄면 키를 제거합니다. 빠른 모드는 Opus 5 및 Opus 4.8에서만 실행됩니다. 다른 모델에서 켜면 Opus로 전환되고, 지원되지 않는 모델로 전환하면 꺼집니다. 빠른 모드가 켜져 있는 동안 모델 전환을 참조하십시오.
일반적으로 /fast를 실행하면 fastMode를 사용자 설정에 저장하므로 빠른 모드는 이후의 모든 세션 시작 시 켜집니다. 이를 중지하려면 이 키를 true로 설정합니다. 저장된 fastMode: true는 더 이상 세션 시작 시 빠른 모드를 켜지 않으며, 각 사용자는 원하는 각 세션에서 /fast를 실행해야 합니다. Claude Code는 파일에 fastMode 키를 남겨두므로 이 키를 끄면 이전 동작이 복원됩니다. Team 또는 Enterprise 계획의 소유자는 서버 관리 설정을 통해 조직 전체에 배포할 수 있습니다.
true: 저장된 fastMode: true는 더 이상 세션 시작 시 빠른 모드를 켜지 않으므로 각 사용자는 원하는 각 세션에서 /fast를 실행합니다. --settings와 함께 전달된 fastMode: true는 관리되는 설정이 이 키를 설정하지 않는 한 해당 세션에 대해 계산됩니다
false: 저장된 fastMode: true는 이후의 모든 세션 시작 시 빠른 모드를 켭니다
Claude가 기본적으로 영어 이외의 언어로 응답하도록 합니다. 응답에 대한 고정 목록이 없습니다. Claude Code는 값을 시스템 프롬프트에 그대로 추가하여 항상 해당 언어로 응답하도록 지시하므로 Claude가 읽을 수 있는 모든 언어 이름이 작동합니다. Claude Code는 값을 확인하지 않으므로 철자가 잘못된 이름은 오류를 생성하는 대신 작성된 대로 Claude에 도달합니다. 동일한 값은 음성 받아쓰기의 언어를 설정하며, 이는 지원되는 받아쓰기 언어의 고정 목록을 가지고 있으며, 자동 생성된 세션 제목도 설정합니다.
유형: 문자열, "japanese", "spanish", "french" 등 모든 언어 이름; Claude Code는 이를 검증하지 않습니다
기본값: 설정 해제됨; 세션 제목은 대화의 언어와 일치합니다
{"language": "japanese"}
`maxEffortLevel`
세션이 사용할 수 있는 노력 수준을 제한하고 낮은 수준을 사용 가능하게 둡니다. 더 높은 수준은 모두 제한에서 실행됩니다. /effort, /model 선택기, --effort, CLAUDE_CODE_EFFORT_LEVEL, skill 또는 subagent의 effort frontmatter, 또는 모델 자체의 기본값을 포함합니다. Claude Code는 각 요청 전에 제한을 자체적으로 적용하므로 Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry를 포함한 모든 공급자에서 유지됩니다. Claude Code v2.1.267 이상이 필요합니다.
범위: 모든 파일. 조직에 대해 적용하려면 관리되는 설정에 배포합니다. 여러 범위가 제한을 설정할 때 가장 낮은 제한이 적용되므로 한 범위에서 설정된 제한은 다른 범위에서 높아질 수 없습니다
유형: 문자열, "low", "medium", "high", "xhigh", 또는 "max" 중 하나. "max" 값은 제한을 설정하지 않습니다
기본값: 설정 해제되어 제한이 적용되지 않음
ultracode에 미치는 영향: xhigh 아래의 제한은 제한이 적용되는 모델에서 ultracode를 사용 불가능하게 합니다
모델별 제한: 모델의 modelSettings 항목에 maxEffortLevel을 추가합니다. 해당 항목은 사용자 설정 또는 하나의 관리되는 소스와 같이 둘 다를 설정하는 설정 소스 내에서만 이 키를 모델에 대해 대체합니다. 해당 소스의 제한에서 모델을 제외하려면 "max"를 설정합니다. Claude Code는 여전히 다른 소스의 제한을 적용합니다
모든 새 세션이 사용할 모델을 설정하므로 매번 /model로 선택할 필요가 없습니다. 여기에 설정해도 세션 중에 전환하는 것을 막지 않습니다. 관리자가 조직 기본 모델을 설정하여 사용자 선택을 재정의하면, 사용자, 프로젝트 또는 로컬 설정에서 이 키를 설정해도 해당 모델을 얻습니다.
Anthropic 모델 ID를 Amazon Bedrock 추론 프로필 ARN과 같은 공급자별 모델 ID로 매핑합니다. 각 모델 선택기 항목은 공급자 API를 호출할 때 매핑된 값을 사용합니다. 관리자는 Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry에서 이를 사용하여 각 모델 버전을 특정 추론 프로필, 버전 이름 또는 배포로 라우팅하여 거버넌스, 비용 할당 또는 지역 라우팅을 수행합니다.
/model 선택기가 제공하는 모델을 작성한 순서대로 선택한 레이블 아래에 나열하므로 선택기는 조직이 실행하는 모델을 나열합니다. 기본 제공 라인업 이후 또는 대신합니다. 각 행의 model은 그대로 사용되므로 --model이 허용하는 모든 것을 허용합니다. opus와 같은 별칭, Anthropic 모델 ID, 또는 Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, 또는 LLM 게이트웨이의 공급자 형식 ID입니다. Claude Code v2.1.242 이상이 필요합니다.
범위: 사용자 또는 관리됨. Claude Code는 관리되는 설정, --settings, 사용자 설정에서 키를 읽고 프로젝트 및 로컬 설정에서는 무시하므로 복제한 저장소가 선택기를 다시 레이블할 수 없습니다. 이 세 가지 중 가장 높은 것이 키를 설정하면 전체 라인업을 제공하며, Claude Code는 두 소스의 라인업을 결합하지 않습니다.
유형: options 배열과 선택적 replaceBuiltInOptions 부울을 포함하는 객체
기본값: 설정 해제되어 선택기는 기본 제공 라인업을 표시합니다
이 예제는 팀이 인식하는 이름 아래에 기본 제공 라인업 이후에 두 개의 Bedrock 배포를 추가합니다:
키는 행 자체에 대한 하나와 기본 제공 라인업을 대체하거나 추가하는지에 대한 하나의 두 필드를 사용합니다.
필드
유형
수행 작업
options
필수 model과 선택적 label 및 description을 포함하는 각 행의 배열
선택기가 표시하는 행(이 순서대로), 회색으로 표시된 행은 맨 아래로 이동합니다. label 없이 Claude Code는 알려진 모델에 대해 기본 제공 이름으로 행을 제목으로 지정하거나 모델 ID로 지정하고, description 없이 일반 두 번째 줄을 작성합니다
replaceBuiltInOptions
부울, 기본값 false
이 행만, 기본값, 세션이 이미 사용 중인 모델의 행을 표시하려면 true로 설정합니다. 설정 해제하여 기본 제공 라인업 이후에 이 행을 추가합니다
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 콘솔에서 읽지 않습니다. Claude Code v2.1.242 이상이 필요합니다.
범위: 관리됨. 서버 관리 설정, 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는 호스트 애플리케이션이 테이블을 제공하지 않는 한 정가를 보고합니다
이 예제는 Sonnet 4.6에 대한 계약 요금을 설정한 다음 Sonnet 행을 포함한 모든 수치를 15% 감소시킵니다. 정액 할인의 경우 multiplier만 설정하고, 모델별 요금의 경우 overrides만 설정하거나 둘 다 설정합니다:
overrides 행이 다루는지 여부에 관계없이 Claude Code가 계산하는 모든 비용을 조정합니다
overrides
모델 ID를 input, output, cacheRead, cacheWrite를 포함하는 요금 객체로 매핑하며, 각각 0~10000
해당 모델의 백만 토큰당 USD 요금(모두 4개 필수). cacheWrite는 5분 및 1시간 캐시 쓰기를 모두 다룹니다. 어떤 모델이 행을 적용하는지 참조
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는 정확한 일치를 사용합니다.
사용하는 각 모델에 대해 노력 수준을 저장합니다. 머신의 대화형 세션에서 /effort 또는 /model 선택기의 노력 슬라이더로 low, medium, high, 또는 xhigh를 기본값으로 저장하면, Claude Code는 사용 중인 모델 아래에 해당 수준을 작성하므로 이 키를 직접 편집하는 경우는 거의 없습니다. effortLevel 항목은 /effort가 해당 세션에만 적용되는 세션을 나열합니다. Claude Code v2.1.251 이상이 필요합니다.
저장한 수준을 변경하거나 제거하려면 키를 직접 편집합니다.
여기의 모델의 effortLevel은 동일한 설정 파일의 최상위 effortLevel보다 우선합니다. 파일 간에 Claude Code는 각 모델을 별도로 확인합니다. 해당 모델에 대해 effortLevel을 설정하거나 최상위 effortLevel을 설정하는 가장 높은 우선순위 설정 파일이 결정하므로 관리되는 설정의 effortLevel은 사용자 설정에 저장한 수준을 능가합니다. 노력 수준 조정은 저장된 수준을 재정의할 수 있는 다른 것(예: 시작 시 --effort)을 나열합니다.
한 모델의 노력을 설정하는 대신 제한하려면 해당 모델의 항목에 maxEffortLevel 필드를 추가합니다. 필드는 Claude Code v2.1.267 이상이 필요합니다.
이 예제는 작업 간에 교육 통찰력을 추가하는 기본 제공 Explanatory 스타일을 선택합니다:
{"outputStyle": "Explanatory"}
`promptCacheTtl`
프롬프트 캐시가 주 대화를 유지하는 기간을 선택합니다. 이 키는 대화형, -p, Agent SDK 턴과 함께 Claude Code가 인라인으로 실행하는 도우미에 적용됩니다. 1시간 수명은 더 긴 휴식 시간 동안 캐시를 따뜻하게 유지하고, API는 각 캐시 쓰기를 5분 수명보다 더 높은 요금으로 청구합니다. Claude Code v2.1.242 이상이 필요합니다.
대화형 세션에서 Claude의 확장 사고 요약을 봅니다. Ctrl+O로 사고를 확장할 때 전체 요약을 원하면 설정합니다. 설정 해제되거나 false일 때 Anthropic API는 사고 블록을 수정하고 Claude Code는 축소된 스텁을 표시합니다. 타사 공급자는 수정하지 않습니다.
프롬프트 캐시가 Claude Code가 주 대화 외부에서 만드는 요청을 유지하는 기간을 선택합니다. 이 키는 subagents, workflows, Claude Code의 자체 배경 및 도우미 요청(예: 압축 및 세션 제목)에 적용됩니다. 1시간 수명은 더 긴 휴식 시간 동안 캐시를 따뜻하게 유지하고, API는 각 캐시 쓰기를 5분 수명보다 더 높은 요금으로 청구합니다. Claude Code v2.1.242 이상이 필요합니다.
ultracode를 사용하여 세션을 시작합니다. 켜져 있으면 Claude는 요청할 때까지 기다리는 대신 각 실질적인 작업에 대해 워크플로우를 계획합니다. Claude는 동적 워크플로우가 활성화되고, 모델이 xhigh 노력을 지원하고, 노력 제한이 xhigh 아래에 적용되지 않을 때만 워크플로우를 계획합니다. 어느 쪽이든 ultracode: true는 세션을 xhigh 노력으로 실행하거나 노력 제한이 더 낮을 때 제한에서 실행합니다. Claude Code는 이 키를 읽지만 절대 작성하지 않습니다. /effort ultracode는 현재 세션에만 ultracode를 켭니다.
true: 세션은 xhigh 노력으로 시작하고, 동적 워크플로우가 활성화되고, 모델이 xhigh를 지원하고, 노력 제한이 xhigh 아래에 없을 때 ultracode가 켜집니다
false: 세션은 ultracode가 꺼진 상태로 시작합니다
기본값: 설정 해제되어 ultracode는 꺼짐
세션별 재정의: /effort ultracode는 이 키 없이 한 세션에 대해 ultracode를 켭니다. --effort ultracode도 마찬가지이며, Claude Code v2.1.203 이상이 필요합니다
{"ultracode": true
}
Ultracode는 세션을 xhigh 노력으로 실행하고 effortLevel 및 modelSettings 항목보다 우선합니다. xhigh 아래의 노력 제한(예: maxEffortLevel 설정)이 모델에 적용되면 세션은 대신 제한에서 실행되고 ultracode는 꺼집니다. Claude는 자체적으로 워크플로우를 계획하지 않으며, /effort는 ultracode를 제공하지 않습니다. Agent SDK apply_flag_settings 제어 요청도 키를 허용합니다.
권한 설정
Claude가 묻지 않고 수행할 수 있는 작업, 세션이 시작되는 권한 모드, auto 모드의 분류기가 허용하는 항목을 결정합니다. 규칙 구문 및 권한 모델은 권한 구성을 참조하세요.
`allowManagedPermissionRulesOnly`
관리되는 설정을 권한 규칙의 유일한 설정 소스로 만듭니다. Claude Code는 사용자, 프로젝트, 로컬 및 --settings 파일의 allow, ask, deny 규칙을 무시하고, --allowedTools를 무시하며, 권한 프롬프트에서 항상 허용 선택을 숨기고, 새 규칙 저장을 중지합니다.
포함 호스트의 상위 설정이 적용되면 Claude Code는 이를 관리되는 계층의 일부로 취급합니다. 이들의 deny 및 ask 규칙을 유지하고 allow 규칙 및 additionalDirectories를 삭제합니다.
--disallowedTools 규칙과 현재 세션의 deny 및 ask 규칙은 Claude Code가 세션 중간에 설정을 다시 로드한 후를 포함하여 계속 적용됩니다. 이들은 제한만 하므로 관리되는 규칙이 부여하는 것을 확대할 수 없습니다. v2.1.257 이전에는 Claude Code가 첫 번째 설정 다시 로드에서 해당 명령줄 및 세션 규칙을 삭제했습니다.
auto 모드 분류기가 차단하고 허용하는 항목에 자신의 규칙을 추가합니다. 분류기에 조직이 신뢰하는 리포지토리, 버킷 및 도메인을 알려주어 일상적인 내부 작업 차단을 중지하도록 사용합니다. 분류기는 기본 제공 허용 및 거부 규칙과 함께 제공됩니다. 배열에 리터럴 문자열 "$defaults"를 포함하여 해당 위치에서 기본 제공 규칙을 유지하고 주변에 규칙을 추가합니다. 이를 생략하면 기본 제공 규칙으로 대체합니다.
이 예제는 "$defaults"를 통해 기본 제공 soft_deny 규칙을 유지하고 terraform apply를 차단하는 규칙을 하나 더 추가합니다:
{"autoMode": {"soft_deny": ["$defaults", "Never run terraform apply"]}}
해당 파일 중 두 개 이상이 동일한 배열을 설정하면 Claude Code는 항목을 연결합니다. 규칙 형식 및 각 배열이 적용되는 방식은 auto 모드 구성을 참조하세요.
`autoMode.classifyAllShell`
auto 모드가 활성화되어 있는 동안 모든 Bash 및 PowerShell 명령을 auto 모드 분류기를 통해 보냅니다. 기본적으로 auto 모드는 임의 코드를 실행할 수 있는 허용 규칙만 일시 중단합니다. Bash(*) 및 와일드카드 규칙과 같은 도구 전체 규칙, 그리고 Bash(python *) 같은 인터프리터 또는 셸 래퍼 접두사입니다. Bash(npm test)와 같은 다른 허용 규칙과 일치하는 명령은 분류기를 건너뛰고, 규칙의 접두사가 예상하지 못한 파괴적 인수가 보이지 않게 통과할 수 있습니다. 이 키를 설정하면 세션의 모든 셸 허용 규칙이 일시 중단되어 분류기가 모든 명령을 봅니다. Claude Code v2.1.193 이상이 필요합니다.
Shift+Tab 사이클에서 auto 모드를 제거합니다. --permission-mode auto, 설정 파일 또는 기본 제공 기본값에서 auto 모드로 시작할 수 있는 모든 세션은 대신 default에서 시작합니다. 관리자는 조직의 개발자가 auto 모드를 사용하지 못하도록 관리되는 설정에서 이를 설정합니다.
범위: Any file. 관리되는 설정에서 가장 유용합니다. 여기서 사용자는 이를 재정의할 수 없습니다. permissions 아래에 permissions.disableAutoMode로도 허용됩니다.
유형: 문자열 "disable"
기본값: 설정되지 않음
{"disableAutoMode": "disable"}
`permissions`
Claude가 묻지 않고 사용할 수 있는 도구, 항상 프롬프트하는 도구, 차단된 도구를 제어하고 세션이 시작되는 권한 모드를 설정합니다. 아래의 모든 permissions.* 키는 이 객체 아래에 중첩됩니다.
세 규칙 배열은 하나의 구문을 공유합니다. permissions.allow 아래의 권한 규칙 구문을 참조하세요. 다양한 파일의 권한 규칙이 결합되는 방식은 범위 전체에서 권한 규칙이 병합되는 방식을 참조하세요. 일반적으로 설정 키가 결합되는 방식은 설정 가이드의 설정 우선순위를 참조하세요.
`useAutoModeDuringPlan`
Claude Code가 plan 모드에서 셸 명령을 검토하기 위해 auto 모드 분류기를 사용할지 여부를 선택합니다. 기본값 true를 사용하면 분류기는 auto 모드를 사용할 수 있고 프롬프트가 표시되지 않을 때 계획 중에 각 명령을 검토합니다. false로 설정하여 기본 제공 읽기 전용 집합 외부의 모든 명령에 대해 권한 프롬프트를 받습니다. /config에 plan 중 auto 모드 사용으로 나타납니다.
Claude Code는 프로젝트의 .claude/settings.json의 allow 규칙을 해당 폴더에 대한 작업 영역 신뢰 대화를 수락한 후에만 적용합니다.
권한 규칙 구문
권한 규칙은 Tool 또는 Tool(specifier) 형식을 따릅니다. Claude Code는 deny 규칙을 먼저 평가한 다음 ask, 그 다음 allow를 평가하고, 첫 번째 일치가 각 규칙이 얼마나 구체적인지에 관계없이 결정합니다. 권한 규칙 평가 순서를 참조하세요.
각 행은 하나의 규칙 형태와 일치하는 항목을 보여줍니다.
규칙
일치하는 항목
Bash
모든 Bash 명령
Bash(npm run *)
npm run으로 시작하는 명령
Read(./.env)
.env 파일 읽기
WebFetch(domain:example.com)
example.com으로의 가져오기 요청
와일드카드 동작, Read, Edit, WebFetch, MCP 및 Agent 규칙의 도구별 패턴, Bash 패턴의 보안 제한을 포함한 전체 규칙 구문은 권한 규칙 구문을 참조하세요.
`permissions.ask`
acceptEdits 또는 bypassPermissions와 같이 다른 방식으로 승인할 권한 모드에서도 확인을 위해 프롬프트하는 도구 사용을 나열합니다. dontAsk 모드에서 Claude Code는 프롬프트하는 대신 일치하는 도구 사용을 거부합니다.
Claude Code가 차단하는 도구 사용을 나열합니다. API 키, 비밀 또는 환경 값을 보유하는 파일에 사용합니다. Claude Code는 일치하는 파일을 파일 검색 및 검색 결과에서 제외하고, 이들의 읽기를 거부하며, 일치하는 경로에서 Edit 및 Write 도구를 차단합니다. Read 및 Edit 거부 규칙은 Claude의 기본 제공 파일 도구, Claude Code가 cat, head, tail, sed와 같은 Bash에서 인식하는 파일 명령, 그리고 > file 및 < file과 같은 Bash 리디렉션의 대상에 적용됩니다. 이들은 grep -r pattern .과 같이 파일을 이름 지정 없이 읽는 명령이나 임의 하위 프로세스에는 적용되지 않으므로 OS 수준 적용을 위해 샌드박스를 활성화하세요.
도구 이름은 glob 패턴을 허용하므로 "*"는 모든 도구를 거부하고 "mcp__*"는 모든 MCP 도구를 거부합니다. Claude Code는 다른 도구가 여전히 Claude에 사용 가능한 한 EndConversation 도구에 대한 거부 규칙을 무시합니다. Bash 거부 규칙은 Claude가 작성한 명령과 일치하므로 Bash(curl *)는 /usr/bin/curl 또는 sh -c 'curl …'를 중지하지 않습니다. Bash 규칙이 일치하지 않는 항목을 참조하세요. 이 키는 더 이상 사용되지 않는 ignorePatterns 구성을 대체합니다.
`permissions.additionalDirectories`
시작한 디렉토리 외부의 디렉토리에 Claude 파일 액세스를 제공하고, 추가 작업 디렉토리로 제공합니다. 대부분의 .claude/ 구성은 이러한 디렉토리에서 검색되지 않습니다.
allow 규칙과 마찬가지로 프로젝트의 .claude/settings.json의 항목은 해당 폴더에 대한 작업 영역 신뢰 대화를 수락한 후에만 적용됩니다.
`permissions.blockReadsOutsideWorkingDirectories`
Claude가 Read, Grep, Glob 및 LSP 도구를 사용하여 세션의 작업 디렉토리 외부의 경로를 읽지 못하도록 중지합니다. bypassPermissions를 포함한 모든 권한 모드에서 이를 수행합니다. Claude Code가 인식하는 cat과 같은 파일 명령을 통해 일치하는 경로를 읽는 Bash 명령은 auto 모드 및 bypassPermissions 모드에서도 프롬프트합니다. Claude Code v2.1.257 이상이 필요합니다.
리포지토리의 체크인된 설정 파일만 디렉토리를 추가하면 블록은 여전히 거기의 읽기에 적용됩니다. Claude Code 자체가 필요한 파일은 읽을 수 있습니다. 예를 들어 ~/.claude/ 아래의 기술, 플러그인, 규칙, 에이전트, 명령 및 CLAUDE.md 메모리 파일입니다.
샌드박스가 켜져 있으면 블록은 또한 샌드박스된 명령이 작업 디렉토리 외부의 홈 디렉토리 및 마운트된 볼륨 루트에 읽기 액세스를 거부합니다. 샌드박스 외부에서 실행하기 위해 승인이 필요한 재시도는 bypassPermissions 모드에서도 프롬프트합니다. 도구가 홈 디렉토리에서 읽는 파일(예: ~/.gitconfig)은 나머지와 함께 거부됩니다. 도구가 필요한 특정 경로를 sandbox.filesystem.allowRead로 다시 열어야 합니다.
세션의 작업 디렉토리가 연결된 git worktree인 경우(Claude Code가 세션 중간에 입력한 것 포함), 리포지토리의 공통 .git 디렉토리는 샌드박스된 명령에 대해 읽을 수 있고 쓸 수 있으므로 git이 거기서 계속 작동합니다.
`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는 프롬프트할 모든 호출을 자동으로 거부합니다. 읽기, 승인이 필요 없는 다른 작업, 사전 승인된 도구는 여전히 실행됩니다
"bypassPermissions": Claude Code는 묻지 않고 모든 것을 실행합니다
"manual": Claude Code v2.1.200 이상에서 "default"의 별칭
기본값: 설정되지 않음
세션별 재정의: --permission-mode 및 bypassPermissions에 대한 동등한 --dangerously-skip-permissions는 한 세션에 대해 이 키보다 우선합니다
{"permissions": {"defaultMode": "acceptEdits"}}
권한 규칙은 모든 모드 위에 계층화됩니다. deny 규칙은 bypassPermissions를 포함한 모든 모드에서 차단합니다. 권한 모드를 참조하세요. manual은 CLI 및 VS Code 확장에서 Manual로 레이블이 지정된 권한 모드를 이름 지정합니다. 별칭은 Claude Code v2.1.200 이상이 필요합니다. 웹의 Claude Code에서 Claude Code는 이 키에서 acceptEdits, plan, default, auto만 준수합니다. VS Code 확장이 시작하는 대화의 경우 시작 권한 모드에 대해 확장이 읽는 설정을 참조하세요.
`permissions.disableBypassPermissionsMode`
누구도 bypassPermissions 모드에 들어가지 못하도록 방지합니다. Claude Code는 --dangerously-skip-permissions 플래그를 거부하고 에이전트 정의의 permissionMode: bypassPermissions를 무시하므로 하위 에이전트는 상위 세션의 권한 모드로 실행됩니다.
v2.1.223 이전에는 Claude Code가 바이패스가 비활성화된 상태에서도 frontmatter 권한 모드를 적용했습니다.
`skipAutoPermissionPrompt`
설정 또는 모드 선택기를 통해 직접 auto 모드에 들어갈 때 Claude Code가 표시하는 auto 모드를 설명하는 일회성 공지를 건너뜁니다. 기본 제공 기본값이 세션을 auto 모드에서 시작할 때가 아닙니다. Claude Code는 해당 공지를 한 번 표시한 다음 표시되었음을 기록하므로 이 키는 공지가 아직 나타나지 않은 곳에서만 중요합니다.
false: 설정되지 않은 것과 동일합니다. 다른 파일이 true를 설정하지 않으면 공지가 나타납니다
기본값: 설정되지 않음. 공지가 한 번 나타남
{"skipAutoPermissionPrompt": true
}
`skipDangerousModePermissionPrompt`
--dangerously-skip-permissions 또는 defaultMode: "bypassPermissions"에서 세션이 bypassPermissions 모드에 들어가기 전에 Claude Code가 표시하는 확인 대화를 건너뜁니다. Claude Code는 해당 대화를 한 번 수락할 때 사용자 설정에 true를 작성합니다.
true: Claude Code는 세션이 bypassPermissions 모드에 들어가기 전에 확인 대화를 건너뜁니다
false: 설정되지 않은 것과 동일합니다. 다른 파일이 true를 설정하지 않으면 대화가 나타납니다
기본값: 설정되지 않음. 대화가 나타남
{"skipDangerousModePermissionPrompt": true
}
샌드박스 설정
Claude가 실행하는 명령을 파일시스템, 네트워크, 자격증명으로부터 격리합니다. 샌드박싱 작동 방식 및 플랫폼 요구사항은 샌드박싱을 참조하십시오.
`sandbox`
샌드박싱을 사용하여 Claude가 실행하는 Bash 명령을 파일시스템 및 네트워크로부터 격리합니다. enabled로 샌드박스를 켜고, filesystem, network, credentials 하위 객체로 샌드박스된 명령이 접근할 수 있는 범위를 좁히거나 넓힙니다. 샌드박스는 macOS, Linux, WSL2에서 실행됩니다.
Claude Code는 Boolean 키의 값을 가장 높은 우선순위 설정 범위에서 가져오므로, 관리되는 enabled 또는 failIfUnavailable은 개발자가 설정한 모든 것을 재정의합니다. 배열 키는 세션이 로드하는 모든 설정 범위에서 병합되므로, 개발자는 항목을 추가할 수 있습니다. 관리되는 전용 잠금은 개발자가 정책을 확대하지 못하도록 유지를 참조하십시오. 조직에 샌드박스를 요구하려면 관리되는 설정으로 샌드박싱 적용을 참조하십시오.
`sandbox.enabled`
Bash 명령에 대해 샌드박싱을 켭니다. /sandbox 패널에서 모드를 선택하면, Claude Code는 현재 프로젝트의 .claude/settings.local.json에 이 키를 씁니다. 모든 프로젝트를 샌드박스하려면 ~/.claude/settings.json에 설정하십시오.
Linux 및 WSL2에서 샌드박스는 bubblewrap 및 socat이 필요합니다. Linux 및 WSL2 설정을 참조하십시오. 샌드박스를 시작할 수 없을 때, Claude Code는 경고를 표시하고 failIfUnavailable도 설정하지 않으면 명령을 샌드박스 없이 실행합니다.
`sandbox.failIfUnavailable`
sandbox.enabled가 true이지만 샌드박스를 시작할 수 없을 때(종속성이 누락되었거나 플랫폼이 지원되지 않음) Claude Code가 시작 시 오류로 종료되도록 합니다. 이 설정이 없으면, Claude Code는 경고를 표시하고 명령을 샌드박스 없이 실행합니다. 조직에서 샌드박싱을 필수로 요구할 때 관리되는 설정에서 사용하십시오.
Claude Code가 권한 프롬프트 없이 샌드박스된 Bash 명령을 실행하도록 합니다. 샌드박스에서 실행할 수 없는 명령은 여전히 일반 권한 흐름을 거치며, deny 규칙 및 Bash(git push *)와 같은 콘텐츠 범위 ask 규칙은 여전히 적용됩니다. 단순 Bash ask 규칙은 샌드박스된 명령에 대해 건너뜁니다. 이를 false로 설정하여 샌드박스된 명령도 일반 권한 흐름을 거치도록 하면, /sandbox모드 탭에서 이를 일반 권한 모드라고 부릅니다.
샌드박스 모드에서 자동 허용 모드가 여전히 프롬프트하는 것과 계획 모드에서의 동작을 참조하십시오.
`sandbox.excludedCommands`
Claude Code가 항상 샌드박스 외부에서 실행하는 명령(예: 샌드박스에서 작동하지 않는 도구)을 지정합니다. 각 항목은 Bash(...)권한 규칙의 콘텐츠와 동일한 구문을 사용합니다: 정확한 명령, docker *와 같은 접두사, 또는 와일드카드 패턴입니다. 복합 명령의 어떤 부분이 항목과 일치하면, Claude Code는 전체 명령을 샌드박스 없이 실행합니다.
제외된 명령은 여전히 일반 권한 흐름을 거칩니다. 제외는 편의 기능이지 보안 경계가 아닙니다. 도구가 특정 위치에만 쓰기를 필요로 할 때는 filesystem.allowWrite를 선호하십시오. Claude Code는 세션이 로드하는 모든 설정 범위에서 항목을 병합하며, 이 목록에 대한 관리되는 전용 잠금이 없으므로, 관리되는 목록을 좁게 유지하십시오.
`sandbox.allowUnsandboxedCommands`
Claude가 dangerouslyDisableSandbox 매개변수를 사용하여 샌드박스가 명령을 차단한 후 샌드박스 외부에서 명령을 재시도하도록 합니다. 이를 false로 설정하면 Claude Code가 해당 매개변수를 완전히 무시하고 Claude가 실행하는 모든 명령은 샌드박스되거나 excludedCommands에 나타나야 합니다. /sandbox재정의 탭은 해당 상태를 엄격한 샌드박스 모드로 표시합니다. 엄격한 샌드박싱을 요구하는 정책에 대해 관리되는 설정에서 false를 사용하십시오.
샌드박스된 명령이 읽고 쓸 수 있는 경로를 제어합니다. 기본적으로 작업 디렉토리, 세션 임시 디렉토리, --add-dir, /add-dir 또는 permissions.additionalDirectories로 추가한 디렉토리에 쓸 수 있으며, 자격증명 파일을 포함한 파일시스템의 나머지 부분을 읽을 수 있습니다. 네 개의 경로 목록으로 범위를 좁히거나 넓히거나, disabled로 파일시스템 계층을 끕니다. 파일시스템 격리에서 기본 경계를 참조하십시오.
Claude Code는 OS 샌드박스 경계에서 이러한 목록을 적용하므로, kubectl, terraform, npm과 같이 샌드박스된 명령이 시작하는 모든 하위 프로세스에 적용되며, Claude의 파일 도구에만 적용되지 않습니다. Claude Code는 권한 규칙을 동일한 목록에 추가합니다: Edit 허용 및 거부 규칙을 allowWrite 및 denyWrite에, Read 거부 규칙을 denyRead에, WebFetch(domain:...) 허용 및 거부 규칙을 network 도메인 목록에 추가합니다.
절대 경로의 //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가 읽기 항목을 일치하는 구체적인 경로로 확장하며, 쓰기 목록에 대해서는 이를 수행하지 않습니다.
`sandbox.filesystem.allowWrite`
작업 디렉토리, 세션 임시 디렉토리, --add-dir, /add-dir 또는 permissions.additionalDirectories로 추가한 디렉토리 외에 샌드박스된 명령이 쓸 수 있는 경로를 추가합니다. kubectl 또는 빌드 도구와 같은 하위 프로세스가 프로젝트 외부에 쓰기를 필요로 할 때 사용하십시오.
Claude Code는 세션이 로드하는 모든 설정 범위에서 항목을 병합합니다: 사용자, 프로젝트, 로컬, 관리되는 경로가 서로 대체하지 않고 결합되며, Claude Code는 Edit(...) 허용 권한 규칙의 경로를 추가합니다. allowWrite 항목은 보호된 경로를 해제할 수 없습니다.
`sandbox.filesystem.denyWrite`
샌드박스된 명령이 특정 경로(다른 방식으로 쓰기 가능한 디렉토리 내의 경로 포함)에 쓰는 것을 차단합니다.
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 항목이 일치하는 경로를 다시 열었으며, 일치하는 디렉토리의 내용을 읽을 수 있게 남겨두었습니다.
네트워크 격리를 유지하면서 파일시스템 격리를 건너뜁니다. 샌드박스된 명령은 호스트 파일시스템에 대한 무제한 읽기 및 쓰기 액세스를 얻으며, 해당 네트워크 송신은 network.allowedDomains로 제한됩니다. 명령이 쓰는 것이 아니라 연결하는 위치를 제어하기 위해 샌드박스할 때 사용하십시오. Claude Code v2.1.216 이상이 필요합니다.
범위: 사용자 또는 관리됨. 관리되는 설정이 sandbox.filesystem을 전혀 구성하거나 "mode": "deny"를 포함하는 sandbox.credentials.files 항목을 나열할 때, 관리되는 설정만 이를 설정할 수 있습니다.
계층이 꺼지면, Claude Code는 denyRead 또는 credentials.filesdeny 항목을 적용하지 않으며, credentials.envVars 항목 및 적용된 mask 항목은 계속 작동합니다. autoAllowBashIfSandboxed는 여전히 기본값이 true이므로, 프롬프트를 계속하려면 false로 설정하십시오. 파일시스템 격리 비활성화에서 이를 설정할 수 있는 전체 소스 목록과 격리가 꺼졌을 때 변경되는 사항을 참조하십시오. Claude Code v2.1.216 이상이 필요합니다.
`sandbox.ignoreViolations`
명령이 시작 시 /etc/hosts를 확인하는 도구와 같이 프로브되고 거부될 것으로 예상되는 경로에 대한 샌드박스 위반 보고를 침묵시키므로, 해당 거부가 위반으로 표시되거나 Claude가 보는 것에 나타나지 않습니다. 샌드박스는 여전히 액세스를 차단합니다. 보고만 억제됩니다. 키는 명령과 일치하는 부분 문자열이며, *는 모든 명령과 일치하고, 값은 해당 명령에 대해 무시할 위반의 부분 문자열(예: 파일시스템 경로)입니다.
Linux 샌드박스를 권한 없는 Docker 컨테이너 내부에서 실행하며, bubblewrap이 새로운 /proc을 마운트할 수 없습니다. 대신 내부 샌드박스는 컨테이너의 기존 /proc을 바인드 마운트하며, 이는 새로운 마운트가 숨길 프로세스 정보를 노출합니다. 이는 보안을 감소시킵니다. 외부 컨테이너가 이미 필요한 격리를 제공할 때만 사용하십시오.
샌드박스된 명령이 macOS에서 시스템 TLS 신뢰 서비스 com.apple.trustd.agent에 도달하도록 합니다. gh, gcloud, terraform과 같은 Go 기반 도구는 network.httpProxyPort를 MITM 프록시 및 사용자 정의 CA와 함께 사용할 때 TLS 인증서를 확인하기 위해 필요합니다. 이는 신뢰 서비스를 통한 잠재적 데이터 유출 경로를 열어서 보안을 감소시킵니다.
샌드박스된 명령이 macOS에서 Apple Events를 보내도록 합니다. open, osascript, URL을 브라우저에서 열기 위한 도구가 필요합니다. 없으면 오류 -600으로 실패합니다. 이는 코드 실행 격리를 제거합니다: 샌드박스된 명령은 사용자 프롬프트 없이 다른 애플리케이션을 샌드박스 없이 시작할 수 있으며, Terminal과 같은 실행 중인 애플리케이션에 AppleScript 명령을 보낼 수 있습니다. 이는 앱별 macOS 자동화 동의 프롬프트(TCC)를 따릅니다.
샌드박스된 명령으로부터 보호할 자격증명 파일 및 환경 변수를 선언합니다. 각 항목은 파일 path 또는 변수 name 및 mode를 지정합니다: deny는 자격증명을 샌드박스 내부에 숨기고, mask는 샌드박스된 명령에 자리 표시자를 표시하면서 샌드박스 프록시는 아웃바운드 요청에서 실제 값을 대체합니다. Claude Code는 나열한 항목만 보호합니다. 기본 제공 자격증명 거부 목록이 없습니다. Claude Code v2.1.187 이상이 필요합니다.
범위: 모든 파일. Claude Code는 mask 항목, allowPlaintextInject, awsPairs, sigv4를 사용자 설정, 관리되는 설정, --settings 플래그에서만 인정합니다.
유형: files, envVars, allowPlaintextInject, awsPairs, sigv4를 포함하는 객체
기본값: 설정되지 않음. 자격증명이 보호되지 않습니다.
다음은 AWS 자격증명 파일을 숨기고 샌드박스된 명령에서 GITHUB_TOKEN을 제거합니다:
deny 파일 보호는 파일시스템 계층의 일부이므로, 파일시스템 격리를 비활성화할 때 적용되지 않습니다. 환경 변수 보호는 여전히 적용됩니다. Claude Code v2.1.187 이상이 필요합니다.
관리되는 설정의 잘못된 자격증명 항목
관리되는 sandbox.credentials 항목이 검증에 실패하면, Claude Code는 가능한 곳에서 자격증명을 보호합니다:
유효한 path 또는 name 및 mask 또는 deny의 mode를 여전히 가진 files 또는 envVars의 항목(예: extract 패턴이 캡처 그룹이 없는 항목)은 경고와 함께 mode: "deny"로 저하되므로, 자격증명은 항목을 수정할 때까지 마스크되지 않고 차단된 상태로 유지됩니다. 저하된 files 항목은 명시적 deny 항목처럼 filesystem.disabled를 고정하며, 경고는 관리되는 설정이 파일시스템 격리를 끄면 읽기 블록이 적용되지 않음을 기록합니다.
알 수 없는 mode 또는 잘못된 path 또는 name을 가진 항목이 제거됩니다.
각 경우가 경고합니다. 항목이 저하되거나 제거되든, 나머지 유효한 항목은 여전히 적용되며, 완전히 잘못된 credentials 값은 버려지면서 sandbox의 나머지는 여전히 적용됩니다.
v2.1.191 이상에 적용됩니다. v2.1.221 이전에는 모든 잘못된 항목이 제거되었습니다. 필드별 처리를 포함하는 다른 관리되는 키는 관리되는 설정의 잘못된 항목을 참조하십시오.
`sandbox.credentials.files`
자격증명 파일 또는 디렉토리를 샌드박스된 명령으로부터 보호합니다. "mode": "deny"를 사용하면, Claude Code는 샌드박스 내부의 경로 읽기를 차단하며, sandbox.filesystem.denyRead와 동일한 읽기 블록입니다. "mode": "mask"를 사용하면, Linux 및 WSL2의 샌드박스된 명령은 파일의 센티널 복사본을 읽고, 샌드박스 프록시는 해당 항목의 injectHosts에 대한 아웃바운드 요청에서 실제 값을 대체합니다. macOS에서는 파일이 샌드박스 내부에서 읽을 수 없습니다. Claude Code v2.1.187 이상이 필요하며, "mode": "mask"는 v2.1.221 이상이 필요합니다.
범위: 모든 파일. Claude Code는 프로젝트 .claude/settings.json 및 로컬 .claude/settings.local.json에서 mask 항목을 버립니다.
유형: 각각 path 및 "deny" 또는 "mask"의 mode를 포함하는 객체의 배열이며, 선택적 파일용 마스크 필드도 포함합니다.
기본값: 설정되지 않음. 자격증명 파일이 보호되지 않습니다.
다음은 AWS 자격증명 파일을 숨기고 gh 호스트 파일을 마스크하며, api.github.com에 대한 요청에서만 실제 값을 대체합니다:
경로는 sandbox.filesystem.* 설정과 동일한 접두사를 사용하며, Claude Code는 세션이 로드하는 모든 설정 범위에서 배열을 병합합니다. 자격증명 보호는 --setting-sources로 제외하는 소스에서 여전히 적용되는 것을 다룹니다. Claude Code v2.1.187 이상이 필요합니다. mask 항목은 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로 적용합니다. 자격증명 파일 마스크를 참조하십시오.
필드
유형
수행하는 작업
extract
문자열, 최소 하나의 캡처 그룹을 포함하는 정규식
각 일치의 그룹 1로 캡처된 텍스트만 마스크하므로, 파일의 나머지는 파싱 가능한 상태로 유지됩니다. decode도 설정되면, Claude Code는 각 캡처를 즉시 대체하는 대신 가능한 JWT로 확인합니다. v2.1.221 이상이 필요합니다.
onExtractNoMatch
"warn", "deny", 또는 "error". 기본값 "warn"
extract 또는 decode가 마스크할 것을 찾지 못할 때 발생하는 일. warn은 파일을 샌드박스 내부에서 있는 그대로 읽을 수 있게 남기고, deny는 읽을 수 없게 만들고, error는 구성을 수정할 때까지 샌드박스 설정을 중지합니다. Claude Code는 읽기 블록이 적용되지 않을 때 deny를 error로 취급합니다. 파일시스템 격리를 비활성화하거나 sandbox.filesystem.allowRead 항목이 경로를 다시 열 때입니다. v2.1.221 이상이 필요합니다. decode 경우는 v2.1.224 이상이 필요합니다.
decode
문자열 "jwt"
파일에서 JSON Web Tokens(JWT)를 찾고, 기본 제공 패턴 또는 설정된 extract를 사용하여, 각 후보를 검증하고, 구조적으로 유효한 가짜 토큰으로 대체하므로, 샌드박스 내부의 토큰을 디코드하는 코드는 계속 작동합니다. 후보가 검증되지 않으면, onExtractNoMatch가 결과를 관리합니다. v2.1.224 이상이 필요합니다.
maskClaims
문자열의 배열, 최소 하나의 클레임 이름. decode 필요
각 검증된 JWT 내부의 명명된 최상위 페이로드 클레임만 마스크하고 수정된 페이로드 주위에 토큰을 다시 빌드하므로, 다른 클레임은 읽을 수 있게 유지됩니다. 명명된 클레임이 일치하지 않으면, onExtractNoMatch가 결과를 관리합니다. v2.1.224 이상이 필요합니다.
maskDuplicates
Boolean, 기본값 false
또한 파일의 다른 곳에서 각 마스크된 값의 축자 복사본을 대체합니다. 예를 들어 주석에 붙여넣은 비밀입니다. Claude Code는 원시 부분 문자열을 일치시키므로, 긴 고엔트로피 비밀에 대해 예약하십시오. extract 또는 decode가 설정될 때만 참조됩니다. v2.1.221 이상이 필요합니다.
환경 변수를 샌드박스된 명령으로부터 보호합니다. "mode": "deny"를 사용하면, Claude Code는 샌드박스된 명령의 환경에서 변수를 제거합니다. "mode": "mask"를 사용하면, 샌드박스된 명령은 세션별 센티널 값을 보고, 샌드박스 프록시는 해당 항목의 injectHosts에 대한 아웃바운드 요청에서 실제 값을 대체하므로, gh 및 npm과 같은 도구는 실제 자격증명을 보유하지 않고도 계속 인증합니다. Claude Code v2.1.187 이상이 필요하며, "mode": "mask"는 v2.1.199 이상이 필요합니다.
범위: 모든 파일. Claude Code는 프로젝트 .claude/settings.json 및 로컬 .claude/settings.local.json에서 mask 항목을 버립니다.
유형: 각각 name 및 "deny" 또는 "mask"의 mode를 포함하는 객체의 배열이며, 선택적 환경 변수용 마스크 필드도 포함합니다.
기본값: 설정되지 않음. 환경 변수가 보호되지 않습니다.
다음은 샌드박스된 명령에서 NPM_TOKEN을 제거하고 GITHUB_TOKEN을 마스크하며, api.github.com에 대한 요청에서만 실제 값을 대체합니다:
name은 문자 또는 밑줄로 시작해야 하며 문자, 숫자, 밑줄만 포함해야 합니다. Claude Code는 세션이 로드하는 모든 설정 범위에서 배열을 병합하고, 동일한 변수가 두 모드로 나타날 때 deny를 적용합니다. 자격증명 보호는 --setting-sources로 제외하는 소스에서 여전히 적용되는 것을 다룹니다. Claude Code v2.1.187 이상이 필요합니다. mask 항목은 v2.1.199 이상이 필요합니다.
mask 항목은 이러한 선택적 필드를 수용합니다. extract 또는 decode 없이, Claude Code는 전체 값을 하나의 센티널로 대체합니다. extract 및 decode는 동일한 항목에서 결합될 수 없습니다.
필드
유형
수행하는 작업
extract
문자열, 최소 하나의 캡처 그룹을 포함하는 정규식
각 일치의 그룹 1로 캡처된 텍스트만 마스크합니다. 예를 들어 DATABASE_URL 연결 문자열 내부의 비밀번호이므로, 값의 나머지는 파싱 가능한 상태로 유지됩니다. v2.1.224 이상이 필요합니다.
onExtractNoMatch
"warn", "deny", 또는 "error". 기본값 "warn". decode를 포함하는 항목에서는 "warn"만 수용됨
extract가 아무것도 일치하지 않을 때 발생하는 일. warn은 변수를 마스크 없이 전달하고, deny는 샌드박스 내부에서 설정 해제하고, error는 구성을 수정할 때까지 샌드박스 설정을 중지합니다. v2.1.224 이상이 필요합니다.
decode
문자열 "jwt"
전체 값이 JWT인지 검증하고 구조적으로 유효한 가짜 토큰으로 대체하므로, 샌드박스 내부의 토큰을 디코드하는 코드는 계속 작동합니다. 프록시는 송신 시 전체 실제 토큰을 대체합니다. 검증되지 않는 값은 경고와 함께 마스크 없이 전달됩니다. v2.1.224 이상이 필요합니다.
maskClaims
문자열의 배열, 최소 하나의 클레임 이름. decode 필요
디코드된 JWT 내부의 명명된 최상위 페이로드 클레임만 마스크하고 수정된 페이로드 주위에 토큰을 다시 빌드하므로, 다른 클레임은 읽을 수 있게 유지됩니다. 명명된 클레임이 일치하지 않으면, 변수는 경고와 함께 마스크 없이 전달됩니다. v2.1.224 이상이 필요합니다.
샌드박스 프록시가 실제 값을 대체하는 호스트를 좁힙니다. 설정되지 않으면, 프록시는 sandbox.network.allowedDomains의 모든 호스트에 대한 요청에서 대체합니다. IPv6 대상을 괄호로 묶인 형식이 아닌 압축된 주소로 작성합니다. 예를 들어 "::1"이지 [::1]이 아닙니다. injectHosts의 IPv6 대상을 참조하십시오. v2.1.199 이상이 필요합니다.
다음은 DATABASE_URL 내부의 비밀번호만 마스크하고, 패턴이 아무것도 일치하지 않으면 변수를 설정 해제하고, SERVICE_JWT의 JWT를 마스크하면서 api_key를 제외한 모든 클레임을 읽을 수 있게 유지합니다:
TLS 종료 HTTPS뿐만 아니라 일반 HTTP 요청에서도 mask 대체를 허용합니다. 일반 HTTP에서 업스트림 신원은 검증되지 않으며 자격증명은 평문으로 이동하므로, 신뢰할 수 있는 테스트 네트워크 외부에서는 이를 끕니다. Claude Code v2.1.199 이상이 필요합니다.
마스크된 환경 변수를 그룹화하여 자격증명이 비표준 이름의 변수에 있을 때 SigV4 재서명을 위해 하나의 AWS 자격증명을 형성합니다. Claude Code는 전체 값을 마스크할 때 기존 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN 트리오를 자동으로 연결하므로, 다른 이름에 대해서만 이 키가 필요합니다. Claude Code v2.1.224 이상이 필요합니다.
샌드박스 프록시가 재서명할 수 없는 AWS 요청 형식으로 수행할 작업을 선택합니다: streaming은 aws-chunked 스트리밍 업로드, presigned는 사전 서명된 URL, sigv4a는 SigV4A 비대칭 서명입니다. 이는 마스크된 쌍의 자리 표시자 액세스 키 ID로 서명된 요청에만 적용됩니다. Claude Code v2.1.224 이상이 필요합니다.
소켓 경로는 광범위한 액세스를 부여할 수 있습니다: 예를 들어 /var/run/docker.sock을 허용하면, 샌드박스된 명령이 Docker 데몬을 제어할 수 있습니다. 보안 제한을 참조하십시오.
`sandbox.network.allowAllUnixSockets`
샌드박스된 명령이 모든 Unix 소켓에 연결하도록 합니다. Linux 및 WSL2에서 샌드박스의 seccomp 필터는 socket(AF_UNIX, ...) 호출을 차단하므로, 이는 Unix 소켓을 허용하는 유일한 방법입니다. 필터가 누락되면, /sandbox가 종속성 탭에서 보고하며, 샌드박스는 Unix 소켓 호출을 차단하지 않습니다. Linux 및 WSL2 설정에서 필터가 오는 곳을 참조하십시오.
샌드박스된 명령의 아웃바운드 트래픽에 대해 도메인을 미리 허용하므로, 샌드박스가 프롬프트하지 않습니다. *.example.com과 같은 와일드카드는 하위 도메인과 일치하며, 선택적 :port 접미사는 항목을 하나의 포트로 제한합니다. 포트 없는 항목은 모든 포트와 일치합니다.
IPv6 리터럴을 괄호로 작성하고, 선택적 포트를 포함합니다: "[::1]"은 모든 포트를 허용하고 "[::1]:443"은 하나의 포트를 허용합니다. 괄호로 묶인 형식은 Claude Code v2.1.229 이상이 필요합니다. 도메인 목록의 IPv6 주소를 참조하십시오.
`sandbox.network.deniedDomains`
샌드박스된 명령의 아웃바운드 트래픽에 대해 도메인을 차단하며, allowedDomains와 동일한 와일드카드, 포트, IPv6 구문을 사용합니다. 거부된 도메인은 allowedDomains 항목도 일치하더라도 차단된 상태로 유지됩니다.
Claude Code는 allowManagedDomainsOnly가 설정되어도 세션이 로드하는 모든 설정 소스에서 이 목록을 병합하므로, 개발자는 항상 거부 목록을 강화할 수 있습니다. IPv6 리터럴은 도메인 목록의 IPv6 주소를 참조하십시오.
정규화된 도메인 이름을 표시하는 후행 점으로 작성된 항목(예: example.com.)은 example.com과 동일한 연결을 차단합니다.
`sandbox.network.strictAllowlist`
승인을 요청하는 대신 허용 목록 외부의 호스트에 대한 샌드박스된 명령 액세스를 거부합니다. 허용 목록은 allowedDomains 더하기 WebFetch(domain:...) 허용 규칙의 도메인이거나, allowManagedDomainsOnly가 설정되면 관리되는 설정 항목만입니다. Claude Code v2.1.219 이상이 필요합니다.
true: Claude Code는 허용 목록 외부의 호스트에 대한 샌드박스된 명령 액세스를 거부합니다.
false: 다른 신뢰할 수 있는 설정 파일이 true를 설정하지 않으면, Claude Code는 허용 목록 외부의 호스트를 권한 모드 대신 거부로 결정합니다: 자동 모드에서 분류기를 실행하고, dontAsk 모드에서 거부하고, bypassPermissions 모드 및 우회가 가능할 때 계획 모드에서 허용하고, 그렇지 않으면 묻습니다.
Claude Code는 샌드박스된 명령에만 이를 적용합니다. WebFetch와 같은 프로세스 내 도구는 여전히 권한 규칙을 따릅니다. 인정된 소스 중 하나가 true로 설정하면, 이는 켜진 상태로 유지됩니다. 네트워크 격리를 참조하십시오. Claude Code v2.1.219 이상이 필요합니다.
`sandbox.network.allowManagedDomainsOnly`
네트워크 허용 목록을 관리되는 설정이 정의하는 것으로 잠급니다. Claude Code는 관리되는 설정에서만 allowedDomains 및 WebFetch(domain:...) 허용 규칙을 인정하고, 사용자, 프로젝트, 로컬, --settings 설정의 도메인을 무시하고, 허용되지 않은 도메인을 프롬프트 대신 자동으로 차단합니다.
Claude Code가 실행하는 프록시 대신 자신의 HTTP 프록시를 샌드박스에 지정합니다. 조직은 HTTPS 트래픽을 검사하고, 자신의 필터링 규칙을 적용하거나, 모든 요청을 기록하기 위해 이를 수행합니다. 설정되지 않으면, Claude Code는 HTTP 트래픽에 대해 자신의 프록시를 시작합니다.
샌드박스 프록시가 TLS를 종료하도록 하여 HTTPS 요청의 콘텐츠를 읽을 수 있습니다. 이는 실험적이며, mask자격증명 대체는 이를 필요로 합니다. 세션에 대한 임시 인증 기관을 생성하려면 {}를 설정하거나, 자신의 것을 사용하려면 caCertPath 및 caKeyPath를 설정하십시오.
성공한 Bash 또는 PowerShell 명령의 출력 중 Claude가 인라인으로 받는 문자 수를 설정합니다. 출력이 한계를 초과하면 Claude Code는 이를 파일에 저장하고 Claude는 짧은 미리보기와 파일의 경로를 받습니다. 자세한 빌드 또는 전체 테스트 스위트 로그와 같은 명령 출력이 기본값을 자주 초과하고 Claude가 파일을 열지 않고 읽기를 원할 때 한계를 높입니다. Claude Code v2.1.261 이상이 필요합니다.
Claude Code가 메모리를 로드할 때 특정 CLAUDE.md 파일을 건너뜁니다. 큰 모노레포에서 이를 사용하여 작업과 관련이 없는 다른 팀의 CLAUDE.md 파일을 건너뜁니다. 관련 없는 CLAUDE.md 파일 제외는 대규모 코드베이스 가이드에서 해당 경우를 다룹니다. 패턴은 절대 파일 경로와 일치합니다.
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_* 계열과 같은 운영 체제 디렉토리 변수.
세션 콘텐츠를 내보내는 변수: OTEL_LOG_RAW_API_BODIES 및 자세한 베타 추적 쌍 ENABLE_BETA_TRACING_DETAILED 및 BETA_TRACING_ENDPOINT.
Claude Code가 시작하거나 동기화하는 방식을 변경하는 변수, 예: CLAUDE_CODE_PROCESS_WRAPPER, CLAUDE_CODE_SYNC_SKILLS, CLAUDE_CODE_SYNC_PLUGINS, CLAUDE_CODE_PLUGIN_CACHE_DIR 및 CLAUDE_CODE_PLUGIN_SEED_DIR.
v2.1.251 이전에는 프로젝트 및 로컬 설정이 HOME, XDG_CONFIG_HOME 및 Claude Code가 시작하거나 동기화하는 방식을 변경하는 변수를 제외한 이 목록의 모든 변수를 설정할 수 있었습니다.
Claude Code의 호스팅 환경이 소유한 CLAUDE_CODE_REMOTE 및 CLAUDE_CODE_ACCOUNT_UUID와 같은 ID 변수는 모든 파일에서 무시됩니다.
-p 실행 또는 Agent SDK 세션에서 Claude Code는 이 키를 무시합니다. SDK는 enableFileCheckpointing 옵션으로 체크포인팅을 켜고, 베어 -p 실행은 CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true가 필요합니다. Agent SDK의 파일 체크포인팅을 참조하세요.
`plansDirectory`
Claude Code가 계획 모드에서 작성하는 계획 파일을 저장할 위치를 선택합니다. Claude Code는 경로를 프로젝트 루트에 상대적으로 해석하고 경로가 외부로 해석될 때 기본값을 유지합니다.
각 턴마다 Claude는 설명과 함께 스킬 목록을 보며, Claude Code는 해당 목록을 컨텍스트 윈도우의 일부로 제한합니다. 목록이 한계를 초과하면 Claude Code는 모든 스킬의 이름을 유지하지만 가장 적게 사용된 스킬의 설명을 삭제하여 Claude가 여전히 해당 스킬을 호출할 수 있지만 자체적으로 선택할 가능성이 낮습니다. 더 많은 설명을 표시하려면 이 키를 높이되 턴당 더 많은 컨텍스트를 사용합니다.
Claude가 TaskOutput 도구로 작업을 읽을 때 백그라운드 작업의 출력 중 Claude가 인라인으로 받는 문자 수를 설정합니다. 완료된 작업의 출력이 더 길면 Claude는 가장 최근 문자를 받습니다. 백그라운드 작업이 기본값보다 더 많은 출력을 정기적으로 생성할 때 한계를 높입니다. Claude Code v2.1.261 이상이 필요합니다.
Claude Code가 터미널에서 어떻게 보이고 동작하는지 변경합니다: 테마, 편집기 모드, 상태 줄, 스피너, 세션 내 알림, 접근성. 터미널 구성을 참조하세요.
`askUserQuestionTimeout`
답변되지 않은 AskUserQuestion 대화 상자가 유휴 시간 후 자동으로 계속되도록 하여 이미 선택한 옵션을 제출합니다. 자리를 비우고 Claude가 당신 없이 계속 진행하기를 원할 때 설정하세요. 기본값으로는 질문이 답변될 때까지 대기합니다. Claude Code v2.1.200 이상이 필요합니다.
false: Claude가 계속 작업하는 동안 스크롤한 위치에 머물러 있습니다. 권한 프롬프트는 여전히 기록 아래에 나타납니다
기본값: true
{"autoScrollEnabled": false
}
/config에 자동 스크롤로 표시되며, 전체 화면 렌더링이 켜져 있을 때 이 키를 사용자 설정에 씁니다.
`axScreenReader`
화면 판독기 친화적 출력을 렌더링합니다: 장식 테두리나 애니메이션 없는 평면 텍스트. 화면 판독기 모드는 클래식 렌더러를 사용하므로 활성화되는 동안 tui 설정은 효과가 없습니다. 연결된 백그라운드 세션은 여전히 전체 화면으로 렌더링됩니다. Claude Code v2.1.181 이상이 필요합니다.
{"companyAnnouncements": ["Welcome to Acme Corp! Review our code guidelines at docs.example.com"]}
`defaultShell`
입력 상자에서 ! 접두사로 입력하는 셸 명령, Claude Code가 직접 실행하고 세션에 추가하는 명령을 Bash 또는 PowerShell 중 어느 것이 실행할지 선택합니다.
"powershell"은 PowerShell 도구가 켜져 있을 때만 작동합니다. 이 도구는 Git Bash가 없는 Windows에서 기본적으로 켜져 있으며, Git Bash가 있는 Windows에서 claude.ai 및 Console 계정에 대해 켜져 있습니다. Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry 세션, macOS, Linux 및 WSL에서 CLAUDE_CODE_USE_POWERSHELL_TOOL=1을 설정하여 도구를 켭니다. 도구를 끄려면 해당 변수를 0으로 설정합니다.
"powershell": Claude Code는 ! 명령을 PowerShell에서 실행합니다
기본값: "bash", 또는 Bash를 사용할 수 없을 때 Windows에서 "powershell"
{"defaultShell": "powershell"}
지정한 셸을 사용할 수 없으면 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 이상이 필요합니다.
권한 프롬프트 및 AskUserQuestion 질문은 자체 흐름을 사용하며 이 기한의 적용을 받지 않습니다. 이 행은 /config에 대화 상자 만료로 표시되며, Claude Code v2.1.232 이상이 필요하고, Claude Code는 관리 설정이나 --settings 플래그가 키를 설정하는 동안 행을 숨깁니다.
#!/bin/bash
query=$(cat | jq -r'.query')
# Replace your-repo-file-index with your own file search command
your-repo-file-index--query"$query"| head -20
`footerLinksRegexes`
정규식이 턴 출력과 일치할 때 입력 상자 아래 바닥글에 클릭 가능한 배지를 렌더링합니다: 도구 결과(파일 내용 및 가져온 페이지 포함) 및 Claude의 자체 응답. 이를 사용하여 검토 도구 및 문제 추적기와 같은 프로젝트 CLI에서 인쇄한 ID를 세션 링크로 변환합니다.
이것이 구성되면, PROJ-1234가 도구 결과 또는 Claude의 응답에 나타날 때, PROJ-1234 배지가 바닥글에 나타나 https://issues.example.com/browse/PROJ-1234로 연결됩니다.
배지 제약
각 항목의 URL, 레이블 및 배지 수는 다음과 같이 제한됩니다:
제약
동작
URL 원본
캡처된 값은 URL 인코딩되고 구성된 URL은 템플릿의 리터럴 원본을 공유해야 합니다. 캡처는 경로 세그먼트 또는 쿼리 값을 채울 수 있지만 링크가 가리키는 위치를 변경할 수 없습니다
URL 길이
2048자보다 긴 구성된 URL은 삭제됩니다
URL 스키마
https, http 또는 인식된 편집기 또는 작업 공간 딥 링크 스키마여야 합니다: vscode, vscode-insiders, cursor, windsurf, zed, jetbrains, idea, slack, linear, notion, figma
레이블
일치한 텍스트로 기본값이 지정되고 28개 표시 열로 잘립니다
배지 수
최대 5개의 배지가 렌더링됩니다. 가장 오래된 것은 최신 일치로 대체되고 /clear는 이를 제거합니다
턴이 완료되면 Claude Code는 메인 스레드에서 각 항목의 pattern 정규식을 턴 출력과 일치시키므로 느린 정규식은 완료될 때까지 UI를 차단합니다. (a+)+$와 같은 중첩된 수량자는 특정 입력에 대해 지수적으로 오래 걸릴 수 있고 세션을 고정시킬 수 있으므로 각 pattern을 선형으로 유지하고 + 또는 *를 중첩하지 마세요.
바닥글 배지는 구성된 사용자 정의 상태 줄과 함께 렌더링됩니다. 둘 다 서로를 대체하지 않습니다. 세션 데이터에서 자체 콘텐츠를 계산하는 스크립트 기반 행에는 상태 줄을 사용하고, 대화에서 ID를 스크립트 없이 링크로 변환하려면 바닥글 배지를 사용합니다.
`keybindingFlavor`
v2.1.238부터 v2.1.260까지, 이를 "readline"으로 설정하면 Ctrl+W가 이전 단어만이 아니라 이전 공백으로 돌아가 삭제합니다.
프롬프트 제안에는 원격 분석이 켜진 claude.ai 또는 Console 계정이 필요합니다. Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry에서 또는 DISABLE_TELEMETRY와 같이 원격 분석이 꺼져 있으면 이 키는 효과가 없고 CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=1만 이를 켭니다.
`respectGitignore`
@ 파일 선택기가 .gitignore 패턴과 일치하는 파일을 제외할지 여부를 제어합니다. /config에 파일 선택기에서 .gitignore 존중으로 표시됩니다.
범위: 모든 파일. 설정 파일이 이를 설정하지 않으면 Claude Code는 /config 토글이 쓰는 ~/.claude.json의 respectGitignore로 폴백합니다.
유형: 부울
true: @ 파일 선택기는 .gitignore 패턴과 일치하는 파일을 제외합니다
false: @ 파일 선택기는 .gitignore 패턴과 일치하는 파일을 포함합니다
기본값: true
{"respectGitignore": false
}
`respondToBashCommands`
입력 상자에서 ! 접두사로 셸 명령을 실행한 후 Claude가 응답할지 여부를 선택합니다. 기본적으로 Claude Code는 명령의 출력을 대화에 추가하고 Claude가 이에 응답합니다. 이 키를 false로 설정하면 응답 없이 출력을 컨텍스트에 추가하므로 여러 명령을 실행하고 함께 질문할 수 있습니다. Claude Code v2.1.186 이상이 필요합니다.
Claude가 계획 모드에서 계획을 완료하면 승인 메뉴를 표시합니다. 계획은 많은 컨텍스트를 사용할 수 있으므로 이 키는 해당 메뉴에 첫 번째 옵션인 **예, 컨텍스트를 지우고 …**을 추가하여 계획을 승인하고, 대화 컨텍스트를 지우고, 계획만으로 구현을 시작합니다. 레이블의 나머지는 세션이 계속되는 권한 모드의 이름을 지정하고 계획이 사용한 컨텍스트의 양을 표시합니다.
true: 계획 승인 메뉴는 계획을 승인하고 대화 컨텍스트를 지우는 첫 번째 옵션인 **예, 컨텍스트를 지우고 …**을 가집니다
false: 계획 승인 메뉴는 컨텍스트 지우기 옵션을 표시하지 않습니다
기본값: false
{"showClearContextOnPlanAccept": true
}
`showTurnDuration`
각 응답 후 턴 지속 시간 메시지를 표시하거나 숨깁니다(예: "Cooked for 1m 6s · done 6:05 PM"). "done" 후의 시계는 턴이 완료된 시간을 표시합니다. timeFormat 및 timeZone은 형식과 영역을 제어합니다. /config에 턴 지속 시간 표시로 표시됩니다.
범위: 모든 파일. 설정 파일이 이를 설정하지 않으면 이전 버전의 ~/.claude.json의 값이 적용됩니다.
유형: 부울
true: 각 응답 후 턴 지속 시간 메시지를 봅니다
false: Claude Code는 턴 지속 시간 메시지를 숨깁니다
기본값: true
{"showTurnDuration": false
}
`spellcheck`
입력하면서 프롬프트 입력에서 잘못된 단어에 밑줄을 그으세요. 설치한 맞춤법 검사기를 사용합니다. Claude Code는 입력 상자의 텍스트만 확인합니다. 입력하면서 맞춤법 확인은 aspell, hunspell 또는 ispell을 설치하고 검사기가 다루는 내용을 다룹니다. Claude Code v2.1.235 이상이 필요합니다.
범위: 사용자 또는 관리됨. 이를 설정하는 가장 높은 계층의 블록이 전체적으로 적용됩니다.
유형: enabled(부울), checker("aspell", "hunspell", "ispell" 또는 "auto"), language(문자열, 검사기의 사전 이름으로 전달됨), color(문자열, 터미널 색상 이름, #rrggbb, rgb(r,g,b), ansi256(n) 또는 ansi:<name>)를 포함하는 객체
기본값: 설정되지 않음, 따라서 맞춤법 검사는 꺼져 있습니다. checker는 "auto"로 기본값이 지정되며, PATH에서 찾은 첫 번째입니다. language는 검사기 자체의 사전으로 기본값이 지정됩니다. color는 테마의 오류 색상으로 기본값이 지정됩니다
Claude가 작업하는 동안 스피너 줄은 "Use Plan Mode to prepare for a complex request before making changes. Press Shift+Tab twice to enable."과 같은 Claude Code 기능에 대한 짧은 팁을 회전합니다. 이 키를 false로 설정하면 숨깁니다. /config에 팁 표시로 표시됩니다.
Claude Code가 Claude가 작업하는 동안 표시하는 스피너 팁에 자신의 팁을 추가하거나 내장 팁을 당신의 것으로 바꿉니다. Claude Code는 당신의 팁을 내장 팁과 동일한 회전에 넣습니다: 가장 오래 표시되지 않은 팁을 선택하고, 여전히 쿨다운 중인 팁을 건너뛰고, 우선순위로 동점을 깹니다.
범위: 모든 파일. Claude Code는 팁 객체, tipsFile, label 및 excludeDefault를 사용자 설정, --settings 플래그 및 관리 설정에서 존중합니다. 프로젝트 및 로컬 설정에서는 평문 문자열 팁만 읽습니다.
유형: tips, tipsFile, label 및 excludeDefault 필드를 포함하는 객체, 각각 선택 사항
기본값: 설정되지 않음, 따라서 Claude Code는 내장 팁만 표시합니다
팁 객체, tipsFile, label 및 범위 줄의 규칙(프로젝트 및 로컬 설정이 평문 문자열만 기여)에는 Claude Code v2.1.247 이상이 필요합니다. 이전 버전에서는 프로젝트 또는 로컬 파일의 excludeDefault도 적용됩니다.
각 tips 항목은 평문 문자열 또는 다음 필드를 포함하는 객체입니다:
필드
필수
설명
id
예
최대 64개의 문자, 숫자, ., _ 또는 -. Claude Code는 팁의 표시 기록을 이것으로 키합니다. 동일한 id를 가진 두 항목 중 Claude Code는 첫 번째를 사용합니다
text
예
팁, 최대 500자의 한 줄. Claude Code는 ANSI 이스케이프 및 제어 문자를 제거하고 공백을 축소합니다
cooldownSessions
아니오
Claude Code가 팁을 다시 표시하기 전에 대기하는 세션, 0에서 1000, 기본값 0
priority
아니오
동일하게 오래 표시되지 않은 팁 중 순서, 더 높음, -10에서 10, 기본값 0
Claude Code는 평문 문자열을 해당 기본값과 위치 기반 id를 가진 팁으로 읽으므로 목록을 다시 정렬하면 표시 기록이 재설정됩니다. 팁에 id를 제공하여 편집 전체에서 기록을 유지합니다.
Claude Code는 tips 및 tipsFile 전체에서 최대 200개의 팁을 읽고 설정 파일을 거부하는 대신 디버그 경고와 함께 잘못된 항목을 삭제합니다.
나머지 필드를 사용하여 팁 파일의 이름을 지정하고, 접두사를 설정하고, 내장 팁을 숨깁니다:
tipsFile: 동일한 항목의 배열을 보유하는 로컬 JSON 파일에 대한 절대 또는 ~/ 경로, 또는 tips 배열을 포함하는 객체, 최대 256 KB. Claude Code는 프로세스당 한 번 파일을 읽으므로 다음 시작 시 편집 내용을 로드합니다. 서버 관리 설정을 통해 설정할 수 없습니다. 인라인 tips를 배포하거나 온디스크 managed-settings.json에 경로를 배포합니다.
label: Claude Code가 사용자, --settings 및 관리 설정의 팁 앞에 표시하는 접두사, 최대 40자. 기본값은 Tip이며, 내장 팁과 동일한 접두사이고, 프로젝트 및 로컬 설정의 팁은 항상 이를 사용합니다.
excludeDefault: 내장 팁을 숨기고 당신의 것만 표시하려면 true로 설정합니다. Claude Code가 예를 들어 tipsFile이 존재하지 않거나 모든 항목이 유효하지 않기 때문에 당신의 팁을 로드할 수 없으면 빈 스피너 대신 내장 회전을 유지합니다.
둘 이상의 설정 파일이 키를 설정하면 Claude Code는 모든 팁을 표시하고 각각에 대해 이를 설정하는 관리 설정, --settings 플래그 및 사용자 설정 중 가장 높은 우선순위 것에서 tipsFile, label 및 excludeDefault를 가져옵니다.
이 예제는 사용자 설정에 있으며 Acme tip 접두사 아래 회전에 평문 문자열 팁과 객체 팁을 추가합니다:
{"spinnerTipsOverride": {"label": "Acme tip",
"tips": ["Run /review before opening a PR",
{"id": "gateway-errors",
"text": "Seeing 5xx errors? Check the gateway status page first",
"cooldownSessions": 5,
"priority": 2
}]}}
예제의 각 필드는 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"과 같은 회전 동사를 표시합니다. 이 키를 사용하여 해당 회전에 자신의 동사를 추가하거나 내장 목록을 당신의 것으로 바꿉니다.
예제에는 jq가 설치되어 있어야 하고 셸에서 실행됩니다. PowerShell 및 Git Bash 동등물은 Windows 구성을 참조하세요. 전체 설정은 상태 줄 수동 구성을 참조하세요.
`subagentStatusLine`
Claude가 서브에이전트를 실행할 때 Claude Code는 프롬프트 아래의 작업 표시에 나열합니다. 서브에이전트당 한 행씩 name · description · token count를 표시합니다. 이 키를 사용하면 자신의 명령을 실행하여 해당 행을 다시 쓸 수 있습니다. 예를 들어 각 서브에이전트의 컨텍스트 사용을 백분율로 표시합니다. 각 새로 고침에서 Claude Code는 표시되는 행을 stdin의 하나의 JSON 객체로 보냅니다. tasks 배열은 각 서브에이전트의 id, name, status, model, tokenCount 등을 포함하고, 당신이 {"id", "content"} 줄로 다시 쓰는 각 id에 대한 행을 바꿉니다. 당신이 다시 쓰지 않은 행은 기본 렌더링을 유지합니다.
Claude Code는 터미널에 표시하는 diff, 코드 블록 및 파일 미리보기에서 내장 강조 표시기를 사용하여 언어별로 코드를 색칠합니다. 플러그인이나 언어 서버는 관련이 없습니다. 이 키를 true로 설정하면 평문으로 표시합니다. 예를 들어 색상이 터미널 테마와 충돌하거나 화면 판독기를 느리게 합니다.
true: Claude Code는 diff, 코드 블록 및 파일 미리보기에서 구문 강조 표시를 끕니다
false: Claude Code는 구문을 강조 표시합니다
기본값: false
{"syntaxHighlightingDisabled": true
}
`terminalProgressBarEnabled`
일부 터미널은 실행 중인 프로그램에 대해 탭이나 작업 표시줄에 진행 표시기를 표시할 수 있습니다. Claude가 작업하는 동안 Claude Code는 진행 중 상태를 터미널에 보고하므로 다른 탭이나 창에서 세션이 여전히 바쁜지 확인할 수 있습니다. 표시기는 백그라운드 서브에이전트 또는 동적 워크플로우가 여전히 실행 중인 동안 턴이 끝난 후에도 표시 상태를 유지하고, 세션이 유휴 상태가 되면 지워집니다.
Claude Code는 표시기를 지원하는 터미널에서만 보고합니다: ConEmu, Ghostty 1.2.0 이상, iTerm2 3.6.6 이상. 이 키를 false로 설정하면 Claude Code가 보고하지 않도록 중지합니다. /config에 터미널 진행 표시줄로 표시됩니다.
범위: 모든 파일. 설정 파일이 이를 설정하지 않으면 이전 버전의 ~/.claude.json의 값이 적용됩니다.
유형: 부울
true: 지원하는 터미널에서 터미널 진행 표시줄을 봅니다
false: Claude Code는 터미널 진행 표시줄을 숨깁니다
기본값: true
{"terminalProgressBarEnabled": false
}
`terminalTitleFromRename`
Claude Code는 터미널 탭의 제목을 설정합니다. 기본적으로 대화에서 생성한 제목을 사용하고, /rename 또는 --name으로 세션에 이름을 지정하면 탭에 해당 이름이 대신 표시됩니다. 이 키를 false로 설정하면 세션 이름을 지정한 후에도 탭에 생성된 제목을 유지합니다. 이름 자체는 여전히 적용되므로 /resume <name>과 세션 선택기가 이를 찾습니다.
Claude Code가 인터페이스에 표시하는 시간을 작성하는 방식을 선택합니다. 예를 들어 각 턴 지속 시간 메시지의 끝에 있는 done 6:05 PM 및 기록 뷰어의 타임스탬프입니다. 사전 설정을 선택하려면 /config를 실행하고 시간 형식을 설정합니다. 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"
{"timeFormat": "24-hour"}
/config는 사전 설정만 제공하므로 strftime 패턴을 사용하려면 설정 파일에 키를 추가합니다. 이 예제는 각 시간을 2자리 24시간 시계로 표시합니다:
{"timeFormat": "%H:%M"}
턴 지속 시간 메시지 및 기록 뷰어는 18:05와 같은 시간을 표시합니다. 기록 뷰어에서 패턴은 전체 타임스탬프이므로 날짜를 원할 때 날짜 지시문을 추가합니다. 이 예제는 시계 앞에 날짜를 넣습니다:
{"timeFormat": "%Y-%m-%d %H:%M"}
동일한 표면은 2026-09-01 18:05와 같은 시간을 표시합니다.
`timeZone`
시스템이 아닌 다른 시간대에서 인터페이스의 시간을 표시합니다. IANA 시간대 이름(예: "UTC" 또는 "Europe/Dublin")으로 설정합니다. timeFormat이 제어하는 시간은 이 영역에 표시됩니다. timeFormat이 "24-hour-utc"이면 시간은 UTC로 유지되고 Claude Code는 이 키를 무시합니다. /config에는 이 키에 대한 행이 없으므로 설정 파일에서 설정합니다. Claude Code v2.1.257 이상이 필요합니다.
유형: 문자열, IANA 시간대 이름. Claude Code가 이름을 인식하지 못하면 시스템 시간대를 사용합니다
기본값: 설정되지 않음, 따라서 시간은 시스템 시간대에 표시됩니다
{"timeZone": "Europe/Dublin"}
`tui`
터미널 UI 렌더러를 선택합니다. 깜박임 없는 alt-screen 렌더러를 가상화된 스크롤백과 함께 사용하려면 "fullscreen"을 사용하거나, 클래식 메인 화면 렌더러를 사용하려면 "default"를 사용합니다. /tui fullscreen 또는 /tui default를 실행하면 이 키가 당신을 위해 작성됩니다.
tmux -CC 아래 또는 Windows로의 SSH를 통해 Claude Code는 CLAUDE_CODE_NO_FLICKER=1을 설정하지 않으면 클래식 렌더러를 유지합니다. 에이전트 뷰에서 열린 백그라운드 세션은 이 설정과 관계없이 항상 전체 화면 렌더러를 사용합니다.
`verbose`
기본적으로 기록은 각 도구 호출을 짧은 요약(예: Claude가 실행한 명령 및 출력의 줄 수)으로 축소하고, 세부 정보를 원할 때 Ctrl+O를 눌러 전체 기록을 확장된 보기로 전환합니다. 이 키를 true로 설정하면 모든 도구 호출의 전체 입력 및 출력을 발생할 때 인라인으로 표시합니다. 이는 hook, MCP 서버 또는 긴 셸 명령을 디버깅할 때 유용합니다. /config에 자세한 출력으로 표시됩니다.
범위: 모든 파일. 설정 파일이 이를 설정하지 않으면 이전 버전의 ~/.claude.json의 값이 적용됩니다.
vim 편집기 모드에서 두 키 INSERT 모드 시퀀스를 Escape로 매핑합니다. 각 키는 정확히 순서대로 입력된 두 개의 인쇄 가능한 문자이고, "<Esc>"는 유일하게 지원되는 대상입니다. Claude Code는 다른 항목을 무시합니다. Claude Code v2.1.208 이상이 필요합니다.
기본값: 설정되지 않음. 따라서 Claude Code는 각 하위 키 아래에 표시된 표준 속성을 사용합니다.
이 예제는 커밋 속성을 바꾸고, 풀 요청 속성을 제거하며, 세션 링크를 삭제합니다:
{"attribution": {"commit": "Generated with AI\n\nCo-Authored-By: AI <ai@example.com>",
"pr": "",
"sessionUrl": false
}}
모든 속성을 숨기려면 commit 및 pr을 빈 문자열로 설정하고 sessionUrl을 false로 설정합니다. commit 또는 pr을 설정하면 Claude Code는 더 이상 사용되지 않는 includeCoAuthoredBy 설정을 무시하고 설정하지 않은 두 항목에 대해 기본 텍스트를 사용합니다.
`includeCoAuthoredBy`
이 키를 대체하는 attribution을 대신 사용하십시오. 이를 통해 커밋 트레일러, 풀 요청 텍스트 및 세션 링크를 별도로 변경하거나 숨길 수 있습니다. Claude Code는 여전히 attribution이 존재하기 이전의 설정 파일에서 includeCoAuthoredBy: false를 준수하지만, attribution.commit 또는 attribution.pr을 설정하면 이를 무시합니다.
세션 시작 시 Claude Code는 git 관련 두 가지를 Claude의 프롬프트에 추가합니다: Bash 도구의 설명에 있는 커밋 및 풀 요청 작성 방법에 대한 기본 제공 지침, 그리고 시스템 프롬프트의 저장소 git 상태 스냅샷(현재 분기, 주 분기, git status 출력 및 최근 커밋 포함). 예를 들어 자신의 git 워크플로우 스킬을 사용할 때 이 키를 false로 설정하여 둘 다 제외합니다.
Claude Code가 렌더링하는 PR 링크(바닥글 배지 및 도구 결과 요약)를 github.com 대신 내부 코드 검토 도구로 지정합니다. Claude Code는 PR URL에서 {host}, {owner}, {repo}, {number} 및 {url}을 대체합니다. GitLab 병합 요청 링크는 두 표면 모두에서 GitLab URL을 유지합니다.
기본값: 설정되지 않음. 따라서 Claude Code는 🤖 Generated with [Claude Code](https://claude.com/claude-code)를 추가합니다.
{"attribution": {"pr": ""}}
`attribution.sessionUrl`
Claude Code가 클라우드 또는 Remote Control 세션에서 커밋하거나 풀 요청을 열 때 claude.ai 세션 링크를 추가할지 여부를 선택합니다. Claude Code는 커밋에 Claude-Session 트레일러로 링크를 추가하고 풀 요청 설명에 링크로 추가합니다. 링크를 생략하려면 false로 설정합니다.
호스트명 일치는 대소문자를 구분하지 않으며 정규화된 도메인 이름을 표시하는 후행 점이 있는 hooks.example.com.을 DNS가 처리하는 방식과 동일하게 hooks.example.com으로 취급합니다. 허용 목록은 관리되는 설정을 포함한 모든 소스의 훅에 적용됩니다.
이를 true로 설정하면 Claude Code는 로드되는 훅 및 훅과 유사한 명령을 변경합니다:
관리되는 훅 및 SDK 훅 실행: 관리되는 설정의 훅 및 Agent SDK가 프로세스에 등록하는 훅
강제 활성화된 플러그인 훅 실행: 관리되는 설정이 enabledPlugins를 통해 강제로 활성화하는 플러그인의 훅. Claude Code는 전체 plugin@marketplace ID와 일치하므로 다른 마켓플레이스의 동일한 이름의 플러그인은 차단된 상태로 유지됩니다. 이를 통해 조직 마켓플레이스를 통해 검증된 훅을 배포하면서 다른 모든 것을 차단할 수 있습니다.
다른 모든 것은 차단됨: 사용자, 프로젝트 및 로컬 훅, 다른 플러그인의 훅, 에이전트 프론트매터에 선언된 훅
명령 소스 플러그인 비활성화: Claude Code는 또한 disableCommandPluginSources를 명시적으로 false로 설정하지 않는 한 command 소스가 있는 플러그인(관리되는 enabledPlugins에서 강제로 활성화된 플러그인 포함)을 비활성화합니다.
마켓플레이스 headersHelper 명령 차단: Claude Code는 또한 disableCommandPluginSources가 명시적으로 false로 설정되지 않는 한 마켓플레이스 headersHelper 명령을 차단합니다. 단, 관리되는 설정 자체가 선언하는 마켓플레이스는 제외됩니다. Claude Code v2.1.238 이상이 필요합니다.
관리되는 설정으로 좁혀짐: allowManagedHooksOnly가 설정되었을 때, disableAllHooks가 설정 우선순위가 적용된 후 관리되는 설정 외부에서 true일 때, 또는 --safe-mode로 Claude Code를 시작할 때
좁혀짐 상태에서 Claude Code는 배포된 관리되는 값이 있으면 실행합니다. 그렇지 않으면 경고 없이 값을 건너뜁니다: 상태 줄이 비활성화되고 @ 자동 완성은 기본 제공 파일 제안으로 돌아갑니다.
`disableWorkflows`
동적 워크플로우와 관리되는 설정을 통한 조직과 같이 설정이 도달하는 모든 사람을 위한 번들 워크플로우 명령을 끕니다. 자신을 위해서만 워크플로우를 켜거나 끄려면 enableWorkflows를 대신 사용하십시오. /config의 동적 워크플로우 토글이 사용자 설정에 기록합니다.
계획의 기본값이 원하는 것이 아닐 때 자신을 위해 동적 워크플로우를 켜거나 끕니다. /config에 동적 워크플로우로 나타나며, 이는 이 키를 사용자 설정에 기록하고 계획의 기본값으로 다시 토글할 때 제거합니다. 관리되는 설정에서 모든 사람을 위해 워크플로우를 끄려면 disableWorkflows를 대신 사용하십시오.
disableWorkflows와 조직의 워크플로우 정책도 우선순위를 가집니다: enableWorkflows: true는 어떤 소스가 워크플로우를 끄는 동안 워크플로우를 다시 켤 수 없습니다. Claude Code는 사용자 설정 이외의 소스가 enableWorkflows를 설정하거나 disableWorkflows를 true로 설정하는 동안 /config 행을 숨깁니다.
`hooks`
Claude Code의 수명 주기의 특정 지점(예: 도구 호출 전 또는 세션 시작 시)에서 훅으로 자신의 명령, 프롬프트, 에이전트, HTTP 요청 또는 MCP 도구를 실행합니다. 훅 참조는 모든 이벤트, 페이로드 및 종료 코드를 나열합니다. 각 이벤트는 매처 그룹 목록에 매핑되고, 각 그룹은 매처가 적용될 때 실행할 핸들러를 나열합니다.
범위: 모든 파일. 훅은 서로 대체하지 않고 파일 전체에서 병합되며, 관리되는 설정의 훅은 다른 파일에서 제거할 수 없습니다.
유형: 훅 이벤트로 키가 지정된 객체. 각 값은 "command", "prompt", "agent", "http" 또는 "mcp_tool"의 type을 가진 hooks 항목이 있는 { "matcher", "hooks" } 그룹의 배열입니다.
HTTP 훅은 환경 변수의 값을 요청 헤더(예: Authorization: Bearer $HOOK_TOKEN 헤더)에 넣을 수 있지만, 훅이 자신의 allowedEnvVars에 나열하는 변수에만 해당됩니다. 이 키는 모든 HTTP 훅에 대해 해당 목록에 외부 제한을 설정합니다: 훅은 자신의 allowedEnvVars와 이 키 모두에서 이름을 지정한 경우에만 변수를 사용할 수 있습니다. 훅의 정의가 요청하더라도 훅이 읽으면 안 되는 비밀을 읽지 못하도록 하는 데 사용합니다.
ultracode 노력 설정, /workflows, 저장된 워크플로우 명령은 영향을 받지 않습니다.
`workflowSizeGuideline`
작성하는 동적 워크플로우에서 Claude가 목표로 하는 에이전트 수를 설정합니다. Claude Code는 값을 Claude에 조언으로 보냅니다. 강제 상한이 아닙니다: "small"은 5개 미만의 에이전트를 요청하고, "medium"은 15개 미만, "large"는 50개 미만입니다. 워크플로우가 소비하는 것을 제한하려면 "small"을 선택합니다. Claude Code v2.1.219 이상이 필요합니다.
범위: 모든 파일. 여기의 값은 /config의 동적 워크플로우 크기 선택보다 우선순위를 가집니다. Claude Code는 이를 ~/.claude.json에 저장하고, 설정 파일이 키를 설정하는 동안 해당 행을 숨깁니다.
유형: 문자열, 다음 중 하나:
"unrestricted": 지침 없음, 따라서 Claude는 워크플로우를 작업에 맞게 크기 조정
"small": Claude는 5개 미만의 에이전트를 목표로 함
"medium": Claude는 15개 미만의 에이전트를 목표로 함
"large": Claude는 50개 미만의 에이전트를 목표로 함
기본값: "medium"
{"workflowSizeGuideline": "small"}
Claude Code v2.1.219 이상이 필요합니다. v2.1.202부터 v2.1.218까지는 대신 /config에서 지침을 설정합니다.
플러그인 및 스킬
플러그인을 활성화하고, 마켓플레이스를 등록하고, 조직이 허용하는 플러그인 소스를 제한하고, 로드되는 스킬을 제어합니다. 플러그인 설치 및 빌드에 대해서는 플러그인을 참조하십시오.
`disableBundledSkills`
Claude Code에 포함된 스킬 및 워크플로우를 끕니다. Claude Code는 번들된 스킬과 워크플로우를 완전히 제거하는 한편, /init과 같은 기본 제공 명령어는 입력 가능하지만 모델에서 숨겨집니다.
플러그인, .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: 인라인 셸이 실행됩니다
기본값: 설정되지 않음, 따라서 인라인 셸이 실행됩니다
{"disableSkillShellExecution": true
}
번들된 스킬과 관리되는 설정을 통해 배포된 스킬은 영향을 받지 않습니다.
`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로 전달된 파일에서, /doctor의 checkup과 같은 번들된 스킬의 별칭에 대한 키도 스킬에 적용됩니다. 별칭 키가 스킬 자체 이름의 키와 어떻게 결합되는지를 참조하십시오.
`syncClaudeAiSkills`
claude.ai에서 활성화한 스킬의 다운로드를 끕니다. Claude Code는 -p 플래그와 CLAUDE_CODE_SYNC_SKILLS가 설정된 비대화형 모드에서 실행할 때 이를 ~/.claude/skills/synced/로 다운로드합니다. false로 설정하여 해당 다운로드를 중지하고 이미 동기화된 스킬을 숨깁니다. Claude Code는 false만 인정합니다. true는 설정되지 않은 것과 같으며 동기화를 켜지 않습니다.
유형: 각각 marketplace 및 plugin 문자열을 포함하는 객체의 배열입니다. 항목은 "telegram@claude-plugins-official"과 같은 "plugin@marketplace" 문자열일 수 있으며, Claude Code는 이를 동등한 객체로 취급합니다. 문자열 형식은 Claude Code v2.1.267 이상이 필요합니다. 이전 버전은 하나를 포함할 때 전체 allowedChannelPlugins 값을 거부합니다
기본값: 설정되지 않음, 따라서 Claude Code는 기본 Anthropic 허용 목록을 사용합니다
이 예제는 채널을 켜고 공식 Anthropic 마켓플레이스의 Telegram 플러그인만 허용합니다:
이 키는 채널이 계정에 대한 channelsEnabled 게이트를 통과한 후에 적용됩니다. Team 및 Enterprise 플랜과 관리되는 설정이 있는 Console 계정에서는 channelsEnabled: true를 의미합니다. 채널 플러그인 실행 제한을 참조하십시오.
`blockedMarketplaces`
조직의 플러그인 마켓플레이스 소스를 차단합니다. Claude Code는 마켓플레이스 추가 및 플러그인 설치, 업데이트, 새로 고침 및 자동 업데이트 시 차단 목록을 확인하므로, 정책을 설정하기 전에 누군가 추가한 마켓플레이스는 플러그인을 가져오는 데 사용될 수 없습니다. 차단된 소스는 다운로드 전에 확인되므로 파일 시스템에 닿지 않습니다.
github 항목은 소유자 와일드카드 형식"owner/*"을 사용하여 해당 GitHub 소유자 아래의 모든 저장소를 차단할 수 있으며, 이는 Claude Code v2.1.223 이상이 필요합니다. { "source": "skills-dir" }을 추가하여 Claude Code가 ~/.claude/skills/에서 @skills-dir 플러그인을 로드하지 않도록 하면서 마켓플레이스를 제한하지 않습니다. 관리되는 마켓플레이스 제한을 참조하십시오.
`channelsEnabled`
조직의 채널을 허용합니다. claude.ai Team 및 Enterprise 플랜에서 Claude Code는 이를 true로 설정할 때까지 채널을 차단합니다. API 키로 인증하는 Anthropic Console 계정의 경우 채널이 기본적으로 허용됩니다. 조직이 관리되는 설정을 배포하는 경우 Claude Code는 이 키를 true로 설정할 때까지 해당 계정의 채널을 차단합니다.
command 플러그인 소스를 차단합니다. 이는 사용자의 머신에서 마켓플레이스가 선언한 명령어를 실행하여 플러그인을 설치합니다. 이를 true로 설정하면 Claude Code는 명령어를 실행하지 않고, 명령어 소스 플러그인을 설치 또는 업데이트하지 않으며, 이미 설치된 플러그인 로드를 중지합니다. false로 설정하여 명시적으로 허용합니다. 명령어 소스를 차단할 때마다, true로 설정하든 allowManagedHooksOnly 아래에서 설정되지 않은 상태로 두든, 마켓플레이스 headersHelper 명령어도 차단합니다. 단, 관리되는 설정 자체가 선언하는 마켓플레이스는 제외합니다. Claude Code v2.1.229 이상이 필요하며, headersHelper 차단은 v2.1.238 이상이 필요합니다.
true: Claude Code는 마켓플레이스가 선언한 명령어를 실행하지 않고, 명령어 소스 플러그인을 설치 또는 업데이트하지 않으며, 이미 설치된 플러그인 로드를 중지합니다
false: Claude Code는 명령어 소스 플러그인을 명시적으로 허용합니다
기본값: 설정되지 않음, 따라서 Claude Code는 allowManagedHooksOnly를 따릅니다. 훅 실행을 관리되는 설정으로 제한하는 조직은 명령어 소스도 비활성화됩니다
{"disableCommandPluginSources": true
}
Claude Code v2.1.229 이상이 필요합니다.
`pluginSuggestionMarketplaces`
상황별 설치 제안으로 나타날 수 있는 플러그인의 마켓플레이스 이름을 지정합니다. 스피너 팁과 /pluginDiscover 탭의 상단에 고정됩니다. 기본 제공 퍼스트 파티 프론트엔드 디자인 팁은 영향을 받지 않습니다. 제안은 각 플러그인의 마켓플레이스 항목의 relevance 선언에서 나옵니다.
이름은 마켓플레이스가 머신에 등록되고 등록된 소스가 동일한 관리되는 설정에서도 선언될 때만 적용됩니다. 해당 이름의 extraKnownMarketplaces 항목 또는 strictKnownMarketplaces의 항목으로 선언됩니다. Claude Code는 허용 목록 이름 아래의 다른 소스에서 등록된 마켓플레이스를 무시합니다. 공식 마켓플레이스는 소스 요구 사항에서 제외됩니다. 이름만 허용 목록에 추가하면 충분합니다. 해당 이름은 공식 Anthropic 소스에서만 등록할 수 있기 때문입니다. 컨텍스트별 플러그인 제안을 참조하십시오.
`pluginTrustMessage`
설치 전에 Claude Code가 표시하는 플러그인 신뢰 경고에 조직의 고유한 텍스트를 추가합니다. 예를 들어 내부 마켓플레이스의 플러그인이 검증되었음을 확인합니다.
{"pluginTrustMessage": "All plugins from our marketplace are approved by IT"}
`strictKnownMarketplaces`
조직의 사람들이 플러그인을 추가하고 설치할 수 있는 플러그인 마켓플레이스 소스를 제한합니다. Claude Code는 마켓플레이스 추가 및 플러그인 설치, 업데이트, 새로 고침 및 자동 업데이트 시 허용 목록을 적용합니다. 네트워크 또는 파일 시스템 작업 전에 적용되므로, 정책을 설정하기 전에 누군가 추가한 마켓플레이스는 소스가 더 이상 일치하지 않으면 플러그인을 가져오는 데 사용될 수 없습니다. 차단된 사용자는 관리되는 정책의 이름을 지정하는 오류를 봅니다.
이 키를 allowedMarketplaces로도 쓸 수 있습니다. 마켓플레이스 키 별칭은 Claude Code가 별칭을 어떻게 취급하는지와 어느 버전이 이를 수용하는지 설명합니다. 이 키는 정책 게이트입니다. 사용자가 추가할 수 있는 것을 제어하지만 아무것도 등록하지 않습니다. 제한 및 사전 등록을 한 파일에서 수행하려면 extraKnownMarketplaces와 결합을 참조하십시오. 사용자 대면 보기는 관리되는 마켓플레이스 제한을 참조하십시오.
허용되는 소스 유형
아래의 각 항목은 소스 유형당 하나의 허용 목록 항목과 이를 수용하는 필드를 보여줍니다. 대부분의 유형은 정확히 일치합니다. hostPattern 및 pathPattern은 정규식으로 일치하고, github 항목은 소유자 와일드카드를 사용할 수 있습니다.
pathPattern 필수, file 및 directory 소스의 path에 대해 일치하는 정규식
skills-dir
{ "source": "skills-dir" }
필드 없음. ~/.claude/skills/ 플러그인 스캔을 다시 선택합니다
세 가지 소스 유형은 표 이상의 규칙을 수행합니다:
url: URL 마켓플레이스는 marketplace.json 파일만 다운로드하고, Claude Code는 해당 서버에서 상대 경로로 플러그인 파일을 가져오지 않으므로, 플러그인은 아카이브 URL과 같은 플러그인 소스 이외의 상대 경로를 사용해야 합니다. 상대 경로가 있는 플러그인의 경우 Git 기반 마켓플레이스를 대신 사용하십시오. URL 기반 마켓플레이스에서 상대 경로가 있는 플러그인 실패를 참조하십시오.
hostPattern: 각 저장소를 나열하지 않고 내부 GitHub Enterprise 또는 GitLab 서버의 모든 마켓플레이스를 허용하는 데 사용합니다. Claude Code는 github 소스를 github.com에 대해 일치시키고, url 소스에서 호스트 이름을 가져오고, git URL의 형식에 따라 git 소스에서 가져옵니다:
https:// 또는 ssh://와 같은 스키마가 있는 URL: URL의 호스트 이름입니다.
스키마 없는 SSH 주소, git의 user@host:path 형식(예: git@git.example.com:tools/plugins.git): @와 : 사이의 호스트이며, git이 연결하는 호스트입니다.
스키마 없는 다른 형식: 호스트 없음, 따라서 strictKnownMarketplaceshostPattern 항목이 일치하지 않습니다. blockedMarketplaceshostPattern의 경우 Claude Code는 더 넓은 형식 집합에서 호스트를 가져오므로 차단 목록 항목이 여전히 그러한 형식과 일치할 수 있습니다. v2.1.234 이전에는 strictKnownMarketplaceshostPattern도 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에서만 작동합니다. github 소스가 나타나는 다른 곳(예: extraKnownMarketplaces 또는 /plugin marketplace add)에서는 repo 값이 단일 저장소의 이름을 지정해야 합니다. v2.1.223 이전에는 Claude Code가 항목을 문자 그대로 비교했으므로 허용 목록 항목이 저장소와 일치하지 않았고 차단 목록 항목이 아무것도 차단하지 않았습니다. 단일 저장소 항목은 모든 버전에서 적용됩니다.
전체 저장소 이름 위치만 와일드카드일 수 있습니다. Claude Code는 *, */plugins 또는 acme-corp/tools-*와 같은 항목을 문자 그대로 비교하므로 저장소와 일치하지 않습니다.
일치 규칙은 두 설정 간에 다릅니다:
규칙
strictKnownMarketplaces
blockedMarketplaces
일치하는 소스 철자
owner/repo 형식만. 동일한 저장소를 복제하는 git URL은 일치하지 않습니다
동일한 github.com 저장소로 확인되는 git URL을 포함한 모든 철자
소유자 대소문자
정확한 항목 일치처럼 대소문자 구분
대소문자 구분 안 함
ref
정확한 항목 규칙을 따릅니다. ref가 있는 항목은 정확한 ref를 가진 소스와만 일치하고, 없는 항목은 ref를 지정하지 않는 소스와만 일치합니다
ref 없는 항목은 일치하는 저장소의 모든 ref를 차단합니다
path
정확한 항목 규칙보다 느슨합니다. path가 있는 항목은 정확한 값을 요구하고, 없는 항목은 저장소 내의 모든 경로와 일치합니다
path 없는 항목은 일치하는 저장소의 모든 경로를 차단합니다
정확한 일치
소유자 와일드카드 github 항목과 정규식으로 일치하는 hostPattern 및 pathPattern 항목을 제외한 모든 소스 유형의 경우, Claude Code는 마켓플레이스 소스가 항목과 정확히 일치할 때만 사용자의 추가를 허용합니다. Git 기반 소스 github 및 git의 경우 정확한 일치는 선택적 필드를 포함합니다:
이 항목을 사용하면 Claude Code는 이미 등록된 공식 마켓플레이스를 사용 가능하게 유지하고, 새 머신에서는 처음 대화형으로 Claude Code를 시작할 때 마켓플레이스를 자동으로 등록합니다. 자동 등록은 일반적으로 다음을 놓칩니다:
머신의 첫 번째 대화형 시작 전에 실행되는 비대화형 환경입니다.
Claude Code가 이미 마켓플레이스를 차단한 정책(예: 빈 배열 잠금) 아래에서 대화형으로 실행된 머신입니다. Claude Code는 차단된 시도를 기록하고 정책이 변경된 후 다시 시도하지 않습니다.
이러한 머신에서는 동일한 managed-settings.json의 extraKnownMarketplaces에 마켓플레이스를 추가하여 Claude Code가 자동으로 등록하도록 하거나 claude plugin marketplace add anthropics/claude-plugins-official을 실행하십시오.
`extraKnownMarketplaces`와 결합
두 키는 다른 작업을 수행합니다. 이 표는 이들을 비교합니다:
측면
strictKnownMarketplaces
extraKnownMarketplaces
목적
조직 정책 적용
팀 편의
설정 파일
관리되는 설정만
모든 설정 파일
동작
허용 목록에 없는 추가 차단
누락된 마켓플레이스 등록
적용 시기
네트워크 및 파일 시스템 작업 전
사용자 또는 관리되는 설정에서 즉시; 저장소 파일의 작업 공간 신뢰 대화 후
재정의 가능
아니오, 최고 우선순위
예, 더 높은 우선순위 설정으로
소스 형식
직접 소스 객체
중첩된 source 객체가 있는 명명된 마켓플레이스
모든 사용자에 대해 마켓플레이스를 제한하고 사전 등록하려면 managed-settings.json에서 둘 다 설정하십시오:
strictKnownMarketplaces만 설정하면 사용자는 여전히 /plugin marketplace add로 허용된 마켓플레이스를 직접 추가할 수 있습니다. 공식 Anthropic 마켓플레이스는 Claude Code가 자동으로 등록하는 유일한 마켓플레이스이며, 허용 목록이 이를 허용할 때만 등록합니다. 공식 마켓플레이스만 허용은 놓치는 머신을 나열합니다.
`strictPluginOnlyCustomization`
사용자 및 프로젝트 소스의 스킬, 에이전트, 훅 및 MCP 서버를 차단하여 플러그인 또는 관리되는 설정에서만 올 수 있도록 합니다. strictKnownMarketplaces와 결합하여 전체 사용자 정의 공급 체인을 제어합니다. 마켓플레이스 허용 목록은 사용자가 설치할 수 있는 플러그인을 제어합니다.
아래의 4개 하위 키 항목은 각 표면이 차단하는 것과 여전히 로드되는 것을 나열합니다. Claude Code는 인식하지 못하는 표면 이름을 무시하므로 모든 클라이언트가 업데이트되기 전에 새 표면 이름을 추가할 수 있습니다.
`strictPluginOnlyCustomization.skills`
skills 표면을 잠급니다. Claude Code는 ~/.claude/skills/ 및 .claude/skills/의 스킬, ~/.claude/commands/ 및 .claude/commands/의 사용자 정의 명령어, --add-dir 디렉터리의 스킬, claude.ai 계정에서 동기화된 스킬 로드를 중지하고, 플러그인 스킬, 번들된 스킬, 관리되는 정책 디렉터리의 스킬 로드를 계속합니다.
plugin-name@marketplace-name으로 키가 지정된 개별 플러그인을 켜거나 끕니다. 모든 범위에서 항목이 없는 플러그인은 defaultEnabled 값으로 폴백됩니다. /plugin 또는 claude plugin enable로 플러그인을 활성화 또는 비활성화하면 Claude Code가 이 키를 작성합니다.
관리되는 설정: 조직 전체 정책. false로 설정된 플러그인은 모든 범위에서 설치가 차단되고 마켓플레이스에서 숨겨집니다
프로젝트 설정은 사용자 설정보다 우선하므로, ~/.claude/settings.json에서 플러그인을 false로 설정해도 프로젝트의 .claude/settings.json이 활성화하는 플러그인은 비활성화되지 않습니다. 머신에서 프로젝트 활성화 플러그인을 거부하려면 대신 .claude/settings.local.json에서 false로 설정하십시오. 관리되는 설정으로 강제 활성화된 플러그인은 관리되는 설정이 로컬 설정을 재정의하므로 이 방식으로 비활성화될 수 없습니다.
GitHub 저장소 또는 npm 패키지와 같은 외부 소스의 플러그인을 프로젝트의 .claude/settings.json에서 활성화해도 다른 사람을 위해 설치되지 않습니다. 플러그인을 로드하는 모든 경로에서 Claude Code는 각 사용자가 직접 설치할 때까지 플러그인이 설치되지 않은 것으로 보고합니다.
`extraKnownMarketplaces`
추가 플러그인 마켓플레이스를 이름으로 등록하여 저장소를 열거나 관리되는 설정이 도달하는 모든 사람이 직접 추가하지 않고도 마켓플레이스를 얻도록 합니다. Claude Code는 아직 알지 못하는 각 마켓플레이스를 등록합니다. enabledPlugins가 이름을 지정하는 플러그인이 설치되는지 여부는 플러그인의 소스와 어느 파일이 이를 활성화하는지에 따라 다릅니다. 해당 항목에는 규칙이 있습니다.
범위: 모든 파일. Claude Code는 저장소의 .claude/settings.json 또는 .claude/settings.local.json의 항목을 해당 폴더의 작업 공간 신뢰 대화를 수락한 후에만 인정합니다. 신뢰하지 않은 폴더(메시지 없이 -p 실행 포함)에서는 무시합니다.
유형: 마켓플레이스 이름을 source 객체와 선택적 autoUpdate Boolean이 있는 객체로 매핑하는 객체
기본값: 설정되지 않음
이 예제는 GitHub 마켓플레이스와 자체 호스팅 git URL의 마켓플레이스를 등록합니다:
폴더를 신뢰하기 전에 실행되는 것은 신뢰 게이트를 저장소가 제공할 수 있는 다른 콘텐츠와 비교합니다. 이 키를 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: GitHub 저장소, repo 포함
git: 모든 git URL, url 포함
url: marketplace.json 파일에 대한 직접 URL, url 및 선택적 headers 및 headersHelper(인증된 액세스용). headersHelper는 값이 headers에 나열하기에는 너무 단기인 헤더를 인쇄하는 명령어의 이름을 지정하며 Claude Code v2.1.238 이상이 필요합니다
file: marketplace.json 파일에 대한 로컬 경로, path 포함
directory: 로컬 파일 시스템 경로, path 포함, 개발 전용
settings: 호스팅된 저장소 없이 설정 파일에 직접 선언된 인라인 마켓플레이스, name 및 plugins 포함
git 소스 유형은 자체 호스팅 GitLab 및 Bitbucket을 포함한 모든 git 호스팅 서비스와 함께 작동합니다. Claude Code는 해당 머신에서 git clone이 사용할 것과 동일한 인증으로 저장소를 복제합니다. 구성된 자격 증명 도우미 또는 SSH 키입니다. GITHUB_TOKEN과 같은 공급자 토큰은 이를 읽는 자격 증명 도우미를 통해서만 적용됩니다. 비공개 저장소에서 설정 세부 정보를 참조하십시오.
github 및 git 소스의 경우, source 객체 내에서 repo 또는 url 옆에 "skipLfs": true를 설정하여 Claude Code가 마켓플레이스 저장소를 복제 또는 업데이트할 때 Git LFS 다운로드를 건너뜁니다. LFS 포인터 파일은 콘텐츠를 다운로드하는 대신 포인터로 유지됩니다. 저장소에 플러그인 콘텐츠와 무관한 큰 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에서 별도로 활성화합니다. 이 예제는 하나의 플러그인을 인라인으로 선언합니다:
source: 'settings' 아래의 플러그인 항목이 자체 source가 archive인 경우 아카이브 다운로드를 위해 headers를 설정할 수 있습니다. headers에 넣을 값이 단기인 경우(예: 레지스트리가 요청 시 발급하는 토큰) 대신 headersHelper 명령어를 설정합니다. 항목은 둘 다 설정할 수 있습니다. 두 필드 모두 Claude Code v2.1.238 이상이 필요합니다.
Claude Code는 항목의 headers와 명령어가 인쇄하는 것을 해당 플러그인의 아카이브 다운로드와 함께 보내고 다른 다운로드와는 함께 보내지 않습니다. Claude Code는 사용자가 해당 플러그인 하나를 직접 설치 또는 업데이트할 때만 명령어를 실행합니다. 3가지 추가 규칙은 항목을 보유한 파일에 따라 다릅니다:
strict: 마켓플레이스의 marketplace.json의 항목과 달리, 설정 파일의 항목은 인라인할 매니페스트 필드가 없으므로 "strict": false가 필요하지 않습니다. 엄격한 모드를 참조하십시오.
폴더 신뢰: 프로젝트의 .claude/settings.json 또는 .claude/settings.local.json의 항목의 경우 Claude Code는 사용자가 해당 폴더도 신뢰한 후에만 명령어를 실행합니다.
헤더 필터: Claude Code는 프로젝트의 .claude/settings.json 또는 .claude/settings.local.json의 항목에서 요청 라우팅 및 클라이언트 ID 헤더 이름을 삭제합니다. 저장소가 해당 파일을 제공할 수 있기 때문입니다. 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에 저장합니다.
사용자가 추가할 수 있는 MCP 서버를 허용 목록에 추가합니다. Claude Code는 플러그인 서버, --mcp-config로 전달된 서버, claude.ai의 서버를 포함하여 정의된 모든 위치에서 항목과 일치하지 않는 모든 서버를 차단합니다.
Chrome의 Claude, Claude Code가 실행 중인 VS Code 또는 JetBrains IDE에 연결하는 ide 서버, CLI 자체가 구성하는 서버와 같은 기본 제공 서버는 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 프로세스 내 type: "sdk" 서버는 두 목록 모두에서 제외됩니다. 세션을 시작한 앱이 이들을 등록합니다.
조직이 제공하는 서버도 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 이 제외는 모든 managedMcpServers 항목과 ${VAR} 확장을 사용하지 않는 값을 가진 모든 managed-mcp.json 항목을 포함합니다. 전체 확인 순서는 서버 평가 방법을 참조하세요. v2.1.259 이전에는 managed-mcp.json의 서버도 일치해야 했습니다.
deniedMcpServers 항목이 우선하므로 두 목록에 있는 서버는 차단됩니다. 목록에 serverCommand 항목이 포함되면 stdio 서버는 serverCommand 항목과 일치해야 하고, serverUrl 항목이 포함되면 원격 서버는 serverUrl 항목과 일치해야 합니다. serverName 일치는 더 이상 해당 종류의 서버를 허용하지 않습니다. 허용 목록 및 거부 목록을 사용한 정책 기반 제어를 참조하세요.
`allowManagedMcpServersOnly`
관리형 허용 목록을 적용되는 유일한 목록으로 만듭니다. Claude Code는 allowedMcpServers를 관리형 설정에서만 읽고 사용자, 프로젝트, 로컬 설정의 허용 목록을 무시합니다. deniedMcpServers는 여전히 모든 설정 범위에서 병합되므로 사용자는 자신을 위해 서버를 차단할 수 있습니다. 관리자는 사용자의 자체 설정이 관리형 허용 목록이 허용하는 것을 확대할 수 없도록 설정합니다.
사용자는 여전히 자신의 MCP 서버를 추가할 수 있습니다. 관리형 허용 목록과 일치하는 서버만 로드됩니다. 허용 목록을 관리형 설정만으로 제한을 참조하세요.
`deniedMcpServers`
특정 MCP 서버를 차단합니다. Claude Code는 플러그인 서버, --mcp-config로 전달된 서버, managed-mcp.json의 서버, managedMcpServers의 서버, 자체적으로 가져오는 claude.ai 커넥터를 포함하여 정의된 모든 위치에서 일치하는 서버를 로드하기를 거부합니다. 프로세스 내 type: "sdk" 서버는 제외됩니다. 세션을 시작한 앱이 이들을 등록합니다.
유형: 객체 배열, 각각 정확히 하나의 키: "claude.ai Slack"과 같은 claude.ai 커넥터의 표시 이름인 비어있지 않은 문자열인 serverName; 정확히 일치하는 명령 및 해당 인수의 배열인 serverCommand; 또는 * 와일드카드가 있는 URL 패턴인 serverUrl
기본값: 설정되지 않음, 따라서 서버가 차단되지 않습니다. 빈 배열도 아무것도 차단하지 않습니다
Claude Code가 자체적으로 가져오는claude.ai MCP 커넥터를 끕니다. 따라서 이들을 가져오거나 연결하지 않습니다. 모든 설정 파일의 true가 적용됩니다. 체크인된 프로젝트 .claude/settings.json은 저장소를 해당 커넥터에서 제외할 수 있지만, 프로젝트 수준의 false는 사용자 또는 관리형 수준의 true를 재정의할 수 없습니다. Claude Code v2.1.182 이상이 필요합니다.
false: 설정되지 않은 것과 동일합니다. Claude Code는 다른 설정 파일이나 ENABLE_CLAUDEAI_MCP_SERVERS가 이들을 끄지 않는 한 커넥터를 가져옵니다
기본값: false이므로 Claude Code는 커넥터를 가져옵니다
세션별 재정의: ENABLE_CLAUDEAI_MCP_SERVERS를 false로 설정하면 한 세션 동안 커넥터가 꺼집니다. 둘 중 어느 것이 이들을 끄든 다른 하나는 이들을 다시 켤 수 없습니다
{"disableClaudeAiConnectors": true
}
--mcp-config로 명시적으로 전달하는 서버는 영향을 받지 않습니다. 모든 커넥터를 차단하는 대신 개별 커넥터를 차단하려면 deniedMcpServers를 사용하세요. claude.ai 커넥터 비활성화를 참조하세요. Claude Code v2.1.182 이상이 필요합니다.
`disabledMcpjsonServers`
프로젝트의 .mcp.json 파일에 정의된 특정 서버를 거부하여 Claude Code가 이들을 연결하거나 승인을 요청하지 않도록 합니다. 모든 설정 파일의 거부가 적용되며, 저장소에 체크인된 프로젝트 .claude/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는 충분합니다
프로젝트 .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 서버를 승인합니다:
관리형 설정에서 모든 사용자에게 원격 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는 유효성 검사에 실패한 항목을 삭제하고, 항목이 포함할 수 있는 것은 조건을 나열합니다
이 세션이 다른 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는 메시지별로 결정합니다
{"crossSessionInbound": "hold"}
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. 모든 범위의 true가 적용되므로 체크인된 프로젝트 파일이 요구 사항을 켤 수 있지만 끌 수는 없습니다.
Type: Boolean
true: Claude Code는 Claude의 SendMessage가 이 머신을 넘어 세션 중 하나에 도달하기 전에 승인을 요청합니다
false: 크로스 머신 메시지는 프롬프트를 표시하지 않습니다
Default: 설정되지 않음. 크로스 머신 메시지는 프롬프트를 표시하지 않습니다
{"isolatePeerMachines": true
}
크로스 머신 SendMessage 승인에는 Claude Code v2.1.224 이상이 필요합니다.
`processWrapper`
macOS 및 Linux에서 Claude Code가 시작하는 배경 프로세스 앞에 회사 런처 명령을 배치합니다. Claude Code는 자체 명령줄이 추가된 런처를 실행하므로 런처는 Claude Code로 exec해야 합니다. 회사 런처 뒤에서 Claude Code 실행에서 런처 계약을 참조하세요. Claude Code v2.1.210 이상이 필요합니다.
.env와 같은 gitignored 파일을 새 worktrees에 복사하려면 설정 대신 프로젝트 루트에 .worktreeinclude 파일을 추가합니다.
`worktree.baseRef`
새 worktrees가 분기할 ref를 선택합니다. "fresh"는 원격과 일치하는 깨끗한 트리를 위해 origin/<default-branch>에서 분기합니다. "head"는 현재 로컬 HEAD에서 분기하므로 푸시되지 않은 커밋 및 기능 분기 상태가 worktree에 있습니다.
sparse worktree가 존재하는 동안 git은 리포지토리의 공유 .git/config에서 extensions.worktreeConfig를 활성화합니다.
`worktree.bgIsolation`
배경 세션이 파일 편집을 격리하는 방식을 선택합니다. "worktree"를 사용하면 Claude Code는 세션이 EnterWorktree를 호출할 때까지 메인 체크아웃에서 Edit 및 Write를 차단합니다. "none"을 사용하면 배경 작업이 작업 복사본을 직접 편집합니다. git worktrees가 비실용적인 리포지토리의 경우 "none"을 설정합니다.
"worktree": Claude Code는 세션이 EnterWorktree를 호출할 때까지 메인 체크아웃에서 Edit 및 Write를 차단합니다
"none": 배경 작업이 작업 복사본을 직접 편집합니다
Default: "worktree"
{"worktree": {"bgIsolation": "none"}}
git 리포지토리 외부에서 실패하는 WorktreeCreate 훅은 블록을 해제하여 세션이 작업 디렉토리를 제자리에서 편집할 수 있도록 합니다. 해당 해제에는 Claude Code v2.1.203 이상이 필요합니다.
원격, 데스크톱 및 알림
Remote Control, 클라우드 환경, 데스크톱 앱 및 Claude Code가 필요할 때 보내는 알림을 구성합니다. Remote Control을 참조하세요.
`agentPushNotifEnabled`
Claude가 가치 있다고 판단할 때 휴대폰으로 푸시 알림을 보낼 수 있도록 허용합니다. 예를 들어 긴 작업이 완료될 때입니다. Claude Code는 이 선택을 계정에 동기화하며, Remote Control이 연결되어 있을 때 푸시가 도착합니다. /config에서 Claude가 결정할 때 푸시로 표시됩니다.
범위: Any file. Claude Code는 이전 버전에서 ~/.claude.json에 남겨진 값도 읽습니다.
대신 enableArtifact를 사용하여 claude.ai에서 세션 출력을 비공개 웹 페이지로 게시하는 Artifact 도구를 끕니다. /config에서 Artifacts 행을 끄면 Claude Code는 enableArtifact를 사용자 설정에 작성하고 이 키를 지웁니다.
Claude Code가 claude-cli:// 프로토콜 핸들러를 운영 체제에 등록하지 않도록 중지합니다. 이는 대화형 세션의 첫 번째 프롬프트를 보낸 후에 등록됩니다. Deep links를 사용하면 외부 도구가 미리 채워진 프롬프트로 Claude Code 세션을 열 수 있습니다. 프로토콜 핸들러 등록이 제한되거나 별도로 관리되는 환경에서 이를 설정합니다.
개발자가 SSH를 통해 원격 머신에서 작업해야 하는 배포의 경우 데스크톱 앱에서 디바이스에서 실행되는 Code 세션을 끕니다. Code 탭에서 Local 환경은 환경 드롭다운에 남아 있지만 회색으로 표시되고 선택할 수 없으며, 조직이 이를 끄도록 했다는 도구 설명이 표시됩니다. Windows에서는 WSL 항목도 같은 방식으로 회색으로 표시되지만, WSL 세션이 관리되는 디바이스에서 실행되는지 여부는 별도로 관리됩니다. 새 세션은 구성된 SSH 연결이 있으면 첫 번째로 기본값이 설정되며, 앱은 같은 머신으로의 SSH 연결을 포함하여 디바이스에서 세션을 시작하거나 재개하기를 거부합니다. 다른 호스트로의 SSH 세션 및 클라우드 세션은 영향을 받지 않습니다. 데스크톱 앱은 이 키를 읽습니다. 터미널 CLI는 무시합니다. Claude Desktop v1.37937.0 이상이 필요합니다.
true: 데스크톱 앱은 온디바이스 Code 세션을 제공하지 않습니다. 기존 로컬 세션은 나열되지만 계속할 수 없습니다
false: 로컬 세션은 사용 가능한 상태로 유지됩니다
기본값: 설정되지 않음, 따라서 로컬 세션은 사용 가능합니다
{"disableDesktopLocalSessions": true
}
데스크톱 앱은 다른 값을 무시하며, Boolean이 아닌 값(예: 문자열 "true" 또는 1)도 경고를 기록합니다. sshConfigs와 함께 사용하여 사용자가 작동하는 연결에 도달하도록 하고, sshHostAllowlist와 함께 사용하여 도달할 수 있는 호스트를 제한합니다. 관리되는 디바이스의 로컬 세션을 참조하세요.
Claude Desktop은 데스크톱 구성에서 파생된 정책(예: 송신 허용 목록, 파일 시스템 샌드박스 및 타사 배포의 MCP 제한)으로 Code 세션을 제공합니다. Claude Code는 관리 소스(서버 관리 설정, MDM 또는 OS 수준 정책 또는 관리되는 설정 파일)가 있을 때마다 해당 부모 설정을 무시합니다. 타사 배포와 같이 이전에 없던 디바이스에 이 키를 배포하면 데스크톱 파생 정책이 적용되지 않습니다. 임베딩 호스트가 정책을 추가하도록 허용은 부모 설정이 여전히 병합될 수 있는 경우를 다룹니다. 이는 이 방식으로 배포하는 모든 키에 적용되며, 이 키에만 해당하지 않습니다.
`disableRemoteControl`
Remote Control을 끕니다: Claude Code는 claude remote-control, --remote-control 플래그, 자동 시작 및 세션 내 토글을 거부하며, 조직의 정책이 이를 비활성화했다고 보고합니다. 관리되는 설정에 배치하여 디바이스별 MDM 적용을 수행합니다.
true: Claude Code는 claude remote-control, --remote-control 플래그, 자동 시작 및 세션 내 토글을 거부합니다
false: Remote Control은 사용 가능한 상태로 유지됩니다
기본값: false
{"disableRemoteControl": true
}
`enableArtifact`
claude.ai에서 세션 출력을 비공개 웹 페이지로 게시하는 Artifact 도구를 끕니다. /config에서 Artifacts 행을 끄면 Claude Code는 이 키를 사용자 설정에 작성하므로 일반적으로 수동으로 편집하지 않습니다. Claude Code v2.1.196 이상이 필요합니다.
범위: Any file. 모든 파일이 도구를 끌 수 있으며, 아무도 이를 다시 켤 수 없습니다.
유형: Boolean
false: Claude Code는 파일이 적용되는 모든 세션에 대해 Artifact 도구를 끕니다
사용자 설정 이외의 소스가 도구를 끄고 있는 동안 Claude Code는 /config에서 Artifacts 행을 숨깁니다. 거기서 이를 켜도 아무것도 변경되지 않기 때문입니다. 아티팩트 비활성화는 도구를 끄는 모든 방법을 나열합니다. v2.1.242 이전에는 Claude Code가 프로젝트 및 로컬 설정에서 이 키를 무시했으며, 우선순위 스택에서 더 높은 파일이 낮은 파일의 끔을 다시 켤 수 있었습니다.
`inputNeededNotifEnabled`
권한 프롬프트 또는 질문이 입력을 기다리고 있을 때 휴대폰에서 푸시 알림을 받습니다. Claude Code는 Remote Control이 연결되어 있을 때만 이를 보냅니다. /config에서 작업 필요 시 푸시로 표시됩니다.
범위: Any file. Claude Code는 이전 버전에서 ~/.claude.json에 남겨진 값도 읽습니다.
유형: Boolean
true: Remote Control이 연결되어 있는 동안 권한 프롬프트 또는 질문이 입력을 기다리고 있을 때 휴대폰에서 푸시 알림을 받습니다
작업이 완료되거나 권한 프롬프트가 대기 중일 때 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"
{"preferredNotifChannel": "terminal_bell"}
"auto"를 사용하면 Claude Code는 iTerm2, Ghostty 및 Kitty에서 데스크톱 알림을 보냅니다. Terminal.app에서는 Terminal의 감지 가능한 벨을 끄면 벨 문자를 울리고, 다른 터미널에서는 아무것도 하지 않습니다. 모든 터미널에서 벨 문자를 울리려면 "terminal_bell"을 설정합니다. 터미널 벨 또는 알림 받기를 참조하세요.
`remote.defaultEnvironmentId`
claude --cloud와 같이 CLI에서 만드는 클라우드 세션에 대한 기본 클라우드 환경을 선택합니다. Claude Code는 /remote-env로 환경을 선택할 때 이 키를 사용자 설정에 작성합니다.
범위: Any file. 자체 호스팅 환경 ID의 경우 사용자 또는 관리되는 설정 또는 --settings 플래그만 해당합니다.
유형: 문자열, env_... 또는 ccpool_...과 같은 환경 ID
기본값: 설정되지 않음, 따라서 Claude Code는 목록에 Anthropic 호스팅 환경이 있으면 이를 사용하고, 그렇지 않으면 Remote Control 브리지 환경이 아닌 목록의 첫 번째 환경을 사용하거나, 모든 환경이 브리지 환경일 때 첫 번째 환경을 사용합니다
세션별 재정의: --environment는 생성하는 하나의 클라우드 세션에 대해 이 키보다 우선합니다
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을 기다립니다
기본값: 설정되지 않음, 따라서 자동 연결은 설정된 조직의 관리 기본값을 따르고, 그렇지 않으면 Claude Code의 현재 기본값을 따릅니다
세션별 재정의: --remote-control은 이 키가 false일 때도 한 세션에 대해 Remote Control을 켜고, 플래그는 한 세션에 대해 이를 끌 수 없습니다
Desktop SSH 세션이 연결할 수 있는 호스트를 제한합니다. Desktop 앱만 이 키를 읽습니다. CLI는 읽지 않습니다. 패턴은 대소문자를 구분하지 않습니다: *는 모든 호스트와 일치하고, *.example.com은 example.com 및 모든 하위 도메인과 일치하며, 다른 모든 것은 ~/.ssh/config 해석 후 호스트 이름과 정확히 일치합니다. 빈 배열은 SSH 세션을 끕니다.
도우미 스크립트를 통해 자격 증명을 제공하고, 조직의 경우 로그인 방법이나 조직을 강제합니다. 인증을 참조하세요.
`apiKeyHelper`
Claude Code가 모델 요청과 함께 보내는 자격 증명을 생성하기 위해 자신의 명령을 실행합니다. Claude Code는 macOS 및 Linux에서는 /bin/sh를, Windows에서는 cmd를 통해 시스템 셸을 통해 명령을 실행하고, 그 출력을 X-Api-Key 및 Authorization: Bearer 헤더 모두로 보냅니다. 자격 증명 모음에서 가져온 단기 토큰과 같은 동적 또는 회전하는 자격 증명에 사용합니다.
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 디렉토리를 읽습니다.
Claude Code가 .aws 디렉토리에 없는 자격 증명으로 Amazon Bedrock을 호출할 수 있도록 AWS 자격 증명을 JSON으로 인쇄하는 자신의 명령을 실행합니다. Claude Code는 aws sts 출력 형태와 평면 aws configure export-credentials 형태를 수락하고, 자격 증명을 자신의 Bedrock 클라이언트로 범위를 지정하므로 Claude Code가 실행하는 셸 명령은 여전히 주변 자격 증명을 봅니다.
사람들이 로그인할 수 있는 계정 종류를 제한합니다. "claudeai"로 설정하여 claude.ai 계정만 허용하거나, "console"로 설정하여 Claude Console 계정만 허용하거나, "gateway"로 설정하여 사람들을 첫 번째 당사자 로그인 대신 클라우드 게이트웨이로 보냅니다. 관리자는 관리 설정에서 설정하고 forceLoginOrgUUID와 쌍을 이루어 개발자의 claude.ai 로그인을 한 조직 내에 유지합니다. 설정 파일에서 "claudeai" 또는 "console"로 설정하면, Claude Code는 해당 파일이 적용되는 세션에서 키 없는 Console 로그인도 제공하지 않습니다.
범위: 모든 파일. Claude Code는 "gateway"를 머신의 관리 소스에서만 인정합니다: managed-settings.json, macOS plist 또는 Windows HKLM 레지스트리, 또는 정책 도우미. 사용자, 프로젝트, 로컬, HKCU, 서버 관리 설정에서는 "gateway"를 설정되지 않은 것으로 취급하며, forceLoginGatewayUrl과 동일한 규칙입니다.
유형: 문자열, 다음 중 하나:
"claudeai": claude.ai 계정만 로그인할 수 있습니다.
"console": Claude Console 계정만 로그인할 수 있습니다.
"gateway": Claude Code는 사람들을 첫 번째 당사자 로그인 대신 클라우드 게이트웨이로 보냅니다.
기본값: 설정되지 않음, 따라서 사람들이 로그인 방법을 선택합니다.
{"forceLoginMethod": "claudeai"}
모든 첫 번째 당사자 로그인 경로는 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"는 머신을 게이트웨이 전용으로 만들므로, /login은 로그인 방법 선택기 없이 클라우드 게이트웨이 화면에서 열립니다. 관리자 정책이 클라우드 게이트웨이 로그인을 요구합니다를 참조하여 남은 첫 번째 당사자 로그인 또는 API 키에 어떤 일이 발생하는지 확인하세요. 화면이 오류를 표시하는 대신 연결하도록 두 키를 모두 설정하세요.
범위: 관리됨. 머신의 소스에서만 읽습니다: managed-settings.json, macOS plist 또는 Windows HKLM 레지스트리, 또는 정책 도우미. Claude Code는 HKCU 및 서버 관리 설정에서 무시합니다.
유형: 문자열, 스키마를 포함한 전체 URL
기본값: 설정되지 않음, 따라서 클라우드 게이트웨이 화면은 IT 관리자에게 문의하도록 알리는 오류를 표시합니다.
값이 유효한 URL이 아니면, 로그인 화면이 보고하고, 관리 설정 파일의 나머지는 여전히 적용됩니다. 게이트웨이 URL 설정을 참조하세요.
`forceLoginOrgUUID`
관리 소스에서, claude.ai 계정 로그인이 단일 UUID로 지정된 하나의 Anthropic 조직에 속하거나 배열로 지정된 여러 조직 중 하나에 속하도록 요구합니다. 모든 설정 파일에서, Claude Code는 또한 단일 UUID를 사용하여 claude.ai 또는 Claude Console 로그인 중에 해당 조직을 미리 선택하고, 배열의 경우 아무것도 미리 선택하지 않습니다. 설정 파일에서 키를 설정하면, Claude Code는 또한 해당 파일이 적용되는 세션에서 키 없는 Console 로그인을 제공하지 않고 대신 API 키를 생성합니다.
범위: 모든 파일. 관리 소스만 제한을 강제합니다. 다른 설정 파일의 단일 UUID는 제한하지 않고 로그인 중에 조직을 미리 선택합니다.
관리 소스가 빈 배열을 설정하거나 Claude Code가 구문 분석할 수 없는 값을 설정하면, Claude Code는 잘못된 구성 메시지로 모든 로그인을 차단합니다.
조직에 로그인 제한을 참조하여 Claude Code가 Claude Console 로그인, 다른 로그인 경로, 및 환경 자격 증명을 어떻게 취급하는지 확인하세요.
`gcpAuthRefresh`
Claude Code가 Google Cloud Application Default Credentials가 만료되었거나 로드할 수 없음을 발견할 때 새로 고치기 위해 자신의 명령을 실행하여 Google Cloud의 Agent Platform 요청이 손으로 다시 인증하지 않고도 계속 작동하도록 합니다.
Claude Code가 OpenTelemetry 내보내기와 함께 보내는 헤더를 생성하기 위해 자신의 명령을 실행하여, 토큰이 회전하는 백엔드의 경우입니다. Claude Code는 시작 시 및 그 후 주기적으로 실행하고, stdout에서 문자열 헤더 값의 JSON 객체를 예상합니다.
"stable": 업데이트가 일반적으로 약 1주일 된 버전을 따르며 주요 회귀가 있는 릴리스를 건너뜁니다
기본값: 설정되지 않음, Claude Code는 "latest"를 따릅니다
{"autoUpdatesChannel": "stable"}
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"로 다시 전환할 때 지웁니다.
범위: 모든 파일. 조직 전체 최소값을 고정하려면 관리 설정에서 설정하여 사용자 및 프로젝트 설정이 낮출 수 없도록 합니다.
조직이 시작할 수 있는 가장 최신 Claude Code 버전을 설정합니다. 실행 중인 버전이 더 최신이면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 승인된 버전을 설치하도록 지시합니다. claude install <version>도 작동할 수 있습니다. Claude Code v2.1.163 이상이 필요합니다.
범위: 관리됨. Claude Code는 다른 곳에서 키를 무시할 때 경고를 제공하지 않습니다.
유형: 문자열, "2.1.150"과 같은 버전 번호; 유효한 버전이 아닌 값은 무시됩니다
기본값: 설정되지 않음, 상한이 적용되지 않습니다
{"requiredMaximumVersion": "2.1.150"}
백그라운드 자동 업데이트 및 claude update는 상한 위의 버전을 건너뛰므로 범위 내의 설치는 범위 내에 머물러 있습니다. claude update, claude install, 및 claude doctor는 사용자가 복구할 수 있도록 상한 위에서 계속 작동합니다. requiredMinimumVersion과 쌍을 이루어 범위를 적용합니다.
`requiredMinimumVersion`
조직이 시작할 수 있는 가장 오래된 Claude Code 버전을 설정합니다. 실행 중인 버전이 더 오래되면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 업데이트하도록 지시합니다. 검사는 시작 시에만 실행되므로 이미 실행 중인 세션은 계속됩니다. Claude Code v2.1.163 이상이 필요합니다.
범위: 관리됨. Claude Code는 다른 곳에서 키를 무시할 때 경고를 제공하지 않습니다.
유형: 문자열, "2.1.150"과 같은 버전 번호; 유효한 버전이 아닌 값은 무시됩니다
기본값: 설정되지 않음, 하한이 적용되지 않습니다
{"requiredMinimumVersion": "2.1.150"}
claude update, claude install, 및 claude doctor는 사용자가 복구할 수 있도록 하한 아래에서 계속 작동합니다. 다운그레이드만 방지하는 minimumVersion과 달리, 이 키는 시작을 차단합니다. requiredMaximumVersion과 쌍을 이루어 범위를 적용합니다.
Claude가 데스크톱 앱의 브라우저 창에서 외부 페이지를 읽거나 작동하는 도구를 사용하지 못하도록 합니다. 조직의 사용자는 여전히 외부 사이트를 직접 열 수 있으며, 로컬 개발 서버 미리보기는 Claude의 도구와 함께 계속 작동합니다. 데스크톱 앱이 이 키를 읽습니다. 터미널 CLI는 무시합니다.
true: 데스크톱 앱이 브라우저 창에서 사용자와 Claude 모두에 대해 외부 브라우징을 끕니다. localhost 미리보기는 계속 작동합니다
false: 외부 브라우징이 켜진 상태로 유지됩니다
기본값: 설정되지 않음, 따라서 외부 브라우징이 켜져 있습니다
{"disableBrowserExternalNavigation": true
}
데스크톱 앱은 다른 값을 무시하며, 문자열 "true" 또는 1과 같이 부울이 아닌 값도 경고를 기록합니다. 외부 브라우징은 켜진 상태로 두되 Claude의 도구를 외부 페이지에서 끄려면 대신 browserExternalPageTools를 설정하세요. 조직의 외부 브라우징 제한을 참조하세요.
`disableMobileSimulatorTools`
데스크톱 앱의 iOS 시뮬레이터 창에 대해 Claude의 도구를 차단합니다. 사용자는 창을 수동으로 사용할 수 있습니다. Claude의 접근만 제거되며, 아무도 앱 내에서 이를 다시 켤 수 없습니다. 데스크톱 앱이 이 키를 읽습니다. 터미널 CLI는 무시합니다.
false: Claude의 시뮬레이터 도구는 데스크톱 앱의 각 사용자 설정 토글을 따릅니다
기본값: 설정되지 않음, 따라서 Claude의 시뮬레이터 도구는 데스크톱 앱의 각 사용자 설정 토글을 따릅니다
{"disableMobileSimulatorTools": true
}
데스크톱 앱은 다른 값을 무시하며, 문자열 "true" 또는 1과 같이 부울이 아닌 값도 경고를 기록합니다.
개인정보 보호 및 원격 측정
Claude Code가 세션 데이터를 얼마나 오래 보관하고 무엇을 전송하는지 제어합니다. 사용 지표 및 오류 보고를 끄는 스위치는 설정 키가 아니라 환경 변수입니다. env 키 또는 셸에서 DISABLE_TELEMETRY, DISABLE_ERROR_REPORTING 또는 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC을 설정합니다. 원격 측정 서비스에서 각각이 무엇을 중지하는지 설명합니다. 두 가지 예외는 설정 파일에서 끕니다. 아래의 feedbackDrafts는 Claude가 작성한 피드백용이고, 아래의 feedbackSurveyRate는 세션 설문조사용입니다.
`cleanupPeriodDays`
Claude Code가 세션 기록 및 기타 애플리케이션 데이터를 삭제하기 전에 보관하는 일 수를 설정합니다. Claude Code는 세션이 시작된 후 백그라운드 스윕으로 삭제를 실행하며, 보관 기간을 안전하게 결정할 수 있는 한 실행합니다.
0을 설정하면 유효성 검사에 실패하므로 장기 보관을 위해 3650과 같은 큰 값을 선택합니다. Claude Code가 기록을 전혀 작성하지 않도록 하려면 일반 텍스트 저장소를 참조합니다.
`desktopSessionCleanupPeriodDays`
Claude Desktop 또는 Cowork에서 시작하거나 가장 최근에 계속한 세션의 기록에 대한 나이 제한을 일 수로 설정합니다. 이 키가 없으면 Claude Code는 해당 기록을 모든 나이에서 유지합니다. Claude Code는 각 기록이 이 제한과 cleanupPeriodDays 모두보다 오래되면 삭제하므로, cleanupPeriodDays가 기본값 30일 때 7 값은 여전히 30일 동안 유지합니다. 관리되는 설정이 cleanupPeriodDays를 설정하면 해당 기간이 대신 적용되고 이 키는 무시됩니다. Claude Code v2.1.248 이상이 필요합니다.
범위: 사용자 또는 관리됨. Claude Code는 --settings로 전달하는 파일에서도 키를 읽고 프로젝트 및 로컬 설정에서는 무시합니다.
유형: 일 수, 정수, 최소값 0
기본값: 0, 나이 제한을 설정하지 않음
{"desktopSessionCleanupPeriodDays": 90
}
`feedbackDrafts`
Claude가 작성한 피드백 제어: Claude가 검토할 피드백 초안을 대기열에 넣을 수 있는지 여부, 그리고 Claude Code가 Claude가 초안을 대기열에 넣을 때 카드를 표시하는지 여부입니다.
/config에 Claude가 작성한 피드백으로 나타나며, 이 키를 사용자 설정에 씁니다. /config 행은 Claude가 피드백을 작성할 수 있는 세션에서만 표시됩니다. "off"를 설정해도 숨기지 않으므로 같은 행에서 기능을 다시 켤 수 있습니다. 관리되는 설정의 값은 사용자 설정보다 우선하므로, 관리자가 이 키를 설정하면 행에 관리되는 값이 표시되고 변경해도 효과가 없습니다. Claude Code는 프로젝트 및 로컬 설정에서 이 키를 무시합니다.
`feedbackSurveyRate`
세션 품질 설문조사가 세션이 적격일 때 나타날 확률을 설정합니다. 설문조사가 나타나지 않도록 하려면 0으로 설정합니다.
기본값: 설정되지 않음, Claude Code는 Anthropic이 원격으로 설정한 비율을 사용하거나, Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry에서 기본 제공 비율 0.005를 사용합니다. 이들은 원격 구성을 받지 않습니다.
WebFetch 도메인 안전 검사를 건너뜁니다. 이 검사는 가져오기 전에 요청된 각 호스트명을 api.anthropic.com으로 보냅니다. Amazon Bedrock, Google Cloud의 Agent Platform 또는 제한적인 송신이 있는 Microsoft Foundry 배포와 같이 Anthropic으로의 트래픽을 차단하는 환경에서 true로 설정합니다.
false: 검사는 세션의 각 호스트명으로의 첫 번째 가져오기 전에 실행되며, 이전 검사가 차단되거나 실패한 호스트명에 대해 다시 실행됩니다.
기본값: 설정되지 않음, 검사는 세션의 각 호스트명으로의 첫 번째 가져오기 전에 실행됩니다.
{"skipWebFetchPreflight": true
}
검사를 건너뛰면 WebFetch는 차단 목록을 참조하지 않고 모든 URL을 시도하므로, Claude가 도달할 수 있는 도메인을 제한해야 하는 경우 WebFetch 권한 규칙과 함께 사용합니다.
엔터프라이즈 및 관리형 설정
조직이 관리형 설정을 계산, 새로 고침 및 결합하는 데 사용하는 키입니다. 관리형 설정 설정을 참조하십시오.
`disableSideloadFlags`
시작 시 --plugin-dir, --plugin-url, --agents 및 --mcp-config CLI 플래그를 거부합니다. 사용자는 이러한 플래그를 전달하여 단일 실행을 위해 strictKnownMarketplaces를 우회할 수 있습니다. Claude Code는 거부된 플래그의 이름을 지정하는 오류로 종료되며, 현재 데스크톱 앱의 Cowork 로컬 세션인 이러한 플래그로 CLI를 내부적으로 시작하는 표면에 동일한 검사를 적용합니다. 클라우드 세션에서 Claude Code는 서버가 --mcp-config를 통해 전달한 MCP 서버를 삭제합니다. 단, 프로세스 내 type: "sdk" 항목은 제외하고 세션을 시작합니다. Claude Code v2.1.193 이상이 필요합니다.
true: Claude Code는 시작 시 --plugin-dir, --plugin-url, --agents 및 --mcp-config를 거부하고 이들의 이름을 지정하는 오류로 종료됩니다. 단, 클라우드 세션에서는 서버가 --mcp-config를 통해 전달한 MCP 서버를 삭제합니다. 프로세스 내 type: "sdk" 항목은 제외하고 세션을 시작합니다.
false: Claude Code는 해당 플래그를 수락합니다.
기본값: false
{"disableSideloadFlags": true
}
Claude Code는 여전히 서버가 모두 프로세스 내 type: "sdk" 항목인 --mcp-config를 수락하므로 Agent SDK 및 VS Code 확장이 계속 작동합니다. 사용자는 여전히 claude mcp add 또는 .mcp.json 파일로 서버를 추가할 수 있습니다. 서버별 제어를 위해 allowedMcpServers도 설정하십시오. Claude Code v2.1.193 이상이 필요합니다.
클라우드 세션에서 Claude Code는 또한 서버 전달 중간 세션 MCP 업데이트를 무시합니다. 이는 클라우드 세션 구성 및 원격 워커의 SDK setMcpServers() 뒤의 경로입니다. 프로세스 내 type: "sdk" 항목은 여기서도 면제됩니다. v2.1.239 이전에는 서버 전달 --mcp-config가 클라우드 세션이 시작되는 것을 차단했습니다.
`forceRemoteSettingsRefresh`
Claude Code가 서버 관리형 설정을 새로 가져올 때까지 CLI 시작을 차단합니다. 가져오기가 실패하면 Claude Code는 캐시된 설정이나 설정 없이 계속하지 않고 종료합니다. 환경이 관리형 정책 없이 세션이 실행되는 짧은 시간 창도 수용할 수 없을 때 설정하십시오.
키가 설정되지 않으면 Claude Code는 가져오기에서 시작을 차단하지 않습니다. 단, 개발자가 시작 시 로그인할 때는 가져오기를 위해 최대 5초를 기다립니다. Cloud 게이트웨이 세션은 항상 기다리며, 게이트웨이에 도달할 수 없으면 종료됩니다.
범위: Managed. Claude Code는 최우선 소스가 아닌 경우에도 관리자 제어 관리형 소스에서 true를 인정합니다.
유형: Boolean
true: Claude Code는 서버 관리형 설정을 새로 가져올 때까지 시작을 차단하고 가져오기가 실패하면 종료합니다.
false: Claude Code는 가져오기에서 시작을 차단하지 않습니다. 단, 로그인 시작 시 최대 5초를 기다립니다.
기본값: false
{"forceRemoteSettingsRefresh": true
}
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 레지스트리나 포함 호스트의 부모 설정은 병합에 참여하지 않습니다.
배포하는 최우선 소스에 키를 전달합니다. 서버 관리형 설정을 받지 않는 머신은 Claude Code가 이 키 또는 정책 키를 전달하는 최우선 소스에서 키를 읽기 때문에 MDM 프로필에도 키가 필요합니다. managed-settings.json 파일은 최하위 순위 관리자 소스이므로 여기에 설정된 "merge"는 결합할 아래 소스가 없습니다. 서버 관리형 설정에서 키는 다음과 같습니다:
{"managedSourcesBehavior": "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 및 forceLoginMethod의 "gateway" 값: Claude Code는 서버 관리형 설정에서 둘 다 읽지 않으므로 여기의 값은 MDM 정책이나 관리형 설정 파일에 설정된 값을 적용하거나 숨기지 않습니다. 머신의 관리자 소스 중에서 정책 키를 전달하는 최우선 순위 소스만 이들을 제공합니다. 서버 관리형 설정도 있는지 여부와 관계없이.
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"
{"parentSettingsBehavior": "merge"}
관리자 배포 관리형 계층이 없을 때 이 키는 효과가 없습니다. 호스트의 설정은 유일한 관리형 계층으로 적용되며 여전히 제한 값으로 필터링됩니다. 필터의 제한 및 관리형 소스가 상호 작용하는 방식은 포함 호스트의 부모 설정 및 부모 설정 제한을 참조하십시오.
`policyHelper`
배포하는 실행 파일을 실행하여 시작 시 관리형 설정을 계산합니다. 정적 파일 대신 디바이스 상태, ID 또는 원격 서비스에서 정책을 파생할 수 있습니다. Claude Code는 첫 번째 프롬프트를 수락하기 전에 도우미를 실행하고 내보내는 설정을 세션의 관리형 설정으로 취급합니다.
범위: Managed. macOS plist, Windows HKLM 레지스트리 또는 관리형 설정 파일에서 읽습니다. Claude Code는 정책 키를 전달하는 최우선 관리형 소스에서 키를 읽고 해당 소스가 이 세 가지 중 하나일 때만 도우미를 실행합니다. 서버 관리형 설정, HKCU 레지스트리 및 호스트 제공 부모 설정에서 키를 무시합니다.
유형: path, timeoutMs 및 refreshIntervalMs가 있는 object
기본값: 설정되지 않음. 따라서 도우미가 실행되지 않습니다.
서버 관리형 설정이 시작 시 정책을 전달하면 도우미의 소스보다 우선하고 도우미는 실행되지 않습니다.
나중에 설정 가져오기가 서버 관리형 설정이 제거되었음을 보고하면 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 경로
Claude Code가 백그라운드에서 간격으로 도우미를 다시 실행하여 정책 변경이 실행 중인 세션에 도달하도록 합니다. 새로 고침이 성공하면 그 출력이 이전 관리형 설정을 다시 시작 없이 대체합니다. 새로 고침이 실패하면 Claude Code는 이미 가진 정책을 유지합니다.
범위: Managed. policyHelper가 읽히는 macOS plist, Windows HKLM 레지스트리 또는 관리형 설정 파일에서 읽습니다.
유형: integer, 밀리초: 새로 고침을 비활성화하려면 0, 그렇지 않으면 최소 60000
기본값: 설정되지 않음. 따라서 Claude Code는 시작 시 도우미를 한 번 실행합니다.
WSL의 Claude Code가 Windows 정책 체인에서 관리형 설정을 읽도록 합니다. HKLM 및 Windows 관리형 설정 파일이 /etc/claude-code 및 아래의 HKCU보다 우선합니다. 체인이 켜져 있는 동안 Claude Code는 C:\Program Files\ClaudeCode\ 아래의 관리형 설정 파일이나 드롭인이 정책 키를 전달하지 않을 때만 /etc/claude-code를 읽습니다. Windows에 이미 배포한 정책을 WSL 세션으로 확장하도록 설정하여 동일한 머신의 호스트 세션과 동일한 규칙을 따르도록 합니다. Claude Code는 HKLM 레지스트리 키 또는 C:\Program Files\ClaudeCode\ 아래의 관리형 설정 파일이나 드롭인에 설정된 경우에만 이를 인정합니다. 둘 다 쓰기 위해 Windows 관리자가 필요합니다.
true: WSL의 Claude Code는 Windows 정책 체인에서 관리형 설정을 읽고 C:\Program Files\ClaudeCode\ 아래의 관리형 설정 파일이나 드롭인이 정책 키를 전달하지 않을 때만 /etc/claude-code를 읽습니다.
false: WSL은 /etc/claude-code만 읽습니다.
기본값: false. WSL은 /etc/claude-code만 읽습니다.
{"wslInheritsWindowsSettings": true
}
관리자 소스가 체인을 켜면 HKCU 정책은 HKCU도 키를 true로 설정할 때만 WSL에 참여합니다. 그 복사본은 체인을 자체적으로 켜지 않습니다. 이 키만 포함하는 Windows 소스는 정책 소스로 계산되지 않으므로 하위 우선 소스는 여전히 정책을 제공합니다. 이 키는 네이티브 Windows에 영향을 주지 않습니다.
전역 설정
이 키들을 ~/.claude.json에 저장하세요. 설정 파일에는 저장하지 마세요. Claude Code는 다른 곳의 설정을 무시합니다. Claude Code와 /config가 대부분의 설정을 자동으로 작성하며, 수동으로 편집할 수도 있습니다.
`autoConnectIde`
외부 터미널에서 Claude Code를 시작할 때 실행 중인 IDE에 자동으로 연결합니다. VS Code 또는 JetBrains 터미널 외부에서 Claude Code를 실행할 때 /config에 **IDE에 자동 연결(외부 터미널)**로 표시됩니다.
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"
{"diffTool": "terminal"}
Claude Code는 settings.json에서 이 키를 무시합니다.
`externalEditorContext`
Ctrl+G를 누르면 Claude Code가 입력 중인 프롬프트를 외부 편집기에서 엽니다. 이 키를 켜면 편집기 버퍼가 Claude의 이전 응답으로 시작되며 # 주석 줄로 표시되므로 작성하는 동안 읽을 수 있고, Claude Code는 저장할 때 이 줄들을 제거합니다. /config에 외부 편집기에서 마지막 응답 표시로 표시됩니다.
true: 편집기 버퍼가 Claude의 이전 응답으로 시작되며 # 주석 줄로 표시되고, Claude Code는 저장할 때 이를 제거합니다
false: 편집기 버퍼가 프롬프트만으로 열립니다
기본값: false
{"externalEditorContext": true
}
켜져 있을 때 Claude Code가 열 버퍼는 다음과 같으며, 마커 줄 아래의 텍스트만 프롬프트로 전송됩니다:
# ─── Claude's last response (for reference; removed on save) ───
# I added the retry loop to fetchUser in src/api.ts and a test
# for the timeout case. Want me to wire the same retry into
# fetchOrders?
# ─── Write your reply below this line ──────────────────────────
Yes, and cap it at three attempts.
Claude Code는 응답의 마지막 50줄을 유지하고 # … (earlier output truncated)로 자르기를 표시합니다.
Claude Code는 settings.json에서 이 키를 무시합니다.
`permissionExplainerEnabled`
v2.1.256까지는 Bash 또는 PowerShell 권한 프롬프트에서 Ctrl+E를 눌러 모델이 생성한 명령 설명을 볼 수 있었으며, 이 키를 false로 설정하여 해당 단축키를 끌 수 있었습니다.
v2.1.233까지는 이 키를 에이전트 팀 팀원의 모델로 설정했으며, 프롬프트가 모델을 지정하지 않은 경우: "sonnet"과 같은 별칭 또는 리드의 모델을 따르려면 null. Claude Code가 현재 이러한 팀원을 위해 선택하는 모델은 팀원 및 모델 지정을 참조하세요.