SpyBara
Go Premium

Documentation 2026-09-29 23:58 UTC to 2026-09-30 08:01 UTC

57 files changed +1,030 −615. View all changes and history on the product overview
2026
Wed 30 08:58 Tue 29 23:58 Mon 28 22:59 Fri 25 23:58 Thu 24 22:57 Wed 23 23:57 Tue 22 23:59 Mon 21 22:59 Sun 20 23:59 Sat 19 23:57 Fri 18 23:58 Tue 15 23:58 Mon 14 22:58 Sat 12 03:02 Thu 10 23:00 Wed 9 22:58 Tue 8 20:00 Tue 1 21:02

agent-view.md +28 −2

Details

64 </Step>64 </Step>

65</Steps>65</Steps>

66 66 

67`claude agents`를 `claude` 대신 기본 진입점으로 사용할 수 있습니다: 에이전트 뷰에서 모든 작업을 디스패치하고, 전체 대화를 원할 때 연결하고, `←`를 눌러 테이블로 돌아갑니다.

68 

69일반 `claude` 세션 내에서 프롬프트 푸터의 `←` 힌트는 `← 2 agents`와 같이 입력을 기다리는 백그라운드 에이전트의 수를 세고, 입력이 필요한 에이전트가 없을 때 `← for agents`로 돌아갑니다. 99 이상의 개수는 `99+`로 표시됩니다. 개수는 터미널이 포커스되어 있는 동안 약 10초마다 새로 고쳐지고 포커스가 돌아올 때 즉시 새로 고쳐집니다. 이동할 때와 에이전트가 완료될 때 색상이 잠깐 변하며, 백그라운드 세션이 입력이 필요한 에이전트가 없을 때 완료되면 `← 2 done`과 같이 완료된 개수를 잠깐 표시합니다. [`prefersReducedMotion` 설정](/docs/ko/settings-reference#prefersreducedmotion)이 켜져 있으면 두 플래시 모두 꺼지며, [화면 읽기 모드](/docs/ko/accessibility)에서는 힌트가 숨겨집니다.67일반 `claude` 세션 내에서 프롬프트 푸터의 `←` 힌트는 `← 2 agents`와 같이 입력을 기다리는 백그라운드 에이전트의 수를 세고, 입력이 필요한 에이전트가 없을 때 `← for agents`로 돌아갑니다. 99 이상의 개수는 `99+`로 표시됩니다. 개수는 터미널이 포커스되어 있는 동안 약 10초마다 새로 고쳐지고 포커스가 돌아올 때 즉시 새로 고쳐집니다. 이동할 때와 에이전트가 완료될 때 색상이 잠깐 변하며, 백그라운드 세션이 입력이 필요한 에이전트가 없을 때 완료되면 `← 2 done`과 같이 완료된 개수를 잠깐 표시합니다. [`prefersReducedMotion` 설정](/docs/ko/settings-reference#prefersreducedmotion)이 켜져 있으면 두 플래시 모두 꺼지며, [화면 읽기 모드](/docs/ko/accessibility)에서는 힌트가 숨겨집니다.

70 68 

69<h3 id="open-agent-view-by-default">

70 기본적으로 에이전트 뷰 열기

71</h3>

72 

73`claude`를 인수 없이 실행할 때 새로운 대화 대신 에이전트 뷰를 열도록 하려면 `/config` 설정을 켭니다.

74 

75<Steps>

76 <Step title="설정 켜기">

77 일반 `claude` 세션에서 `/config`를 실행하고 **기본적으로 에이전트 뷰 열기**를 켭니다. 메뉴를 건너뛰려면 [`defaultToAgentsView`](/docs/ko/settings-reference#defaulttoagentsview) 키를 직접 설정합니다:

78 

79 ```text theme={null}

80 /config defaultToAgentsView=true

81 ```

82 </Step>

83 

84 <Step title="Claude Code 시작">

85 세션을 종료한 다음 인수 없이 `claude`를 실행합니다:

86 

87 ```bash theme={null}

88 claude

89 ```

90 

91 에이전트 뷰가 새로운 대화 대신 열립니다.

92 </Step>

93</Steps>

94 

95설정이 켜져 있는 동안 일반 세션을 시작하려면 프롬프트를 전달합니다: `claude "fix the login test"`. 설정을 끄려면 일반 세션에서 또는 에이전트 뷰에서 연결한 세션에서 `/config defaultToAgentsView=false`를 실행합니다.

96 

71<h2 id="monitor-sessions-with-agent-view">97<h2 id="monitor-sessions-with-agent-view">

72 에이전트 뷰로 세션 모니터링98 에이전트 뷰로 세션 모니터링

73</h2>99</h2>

Details

483 483 

484Claude Sonnet 5, Opus 4.6 이상 및 Sonnet 4.6은 Amazon Bedrock에서 [1M 토큰 컨텍스트 윈도우](https://platform.claude.com/docs/ko/build-with-claude/context-windows#context-window-sizes-by-model)를 지원합니다. Sonnet 5는 Invoke API와 [Mantle 엔드포인트](#use-the-mantle-endpoint) 모두에서 항상 1M 윈도우로 실행되며, 선택할 `[1m]` 변형이 없습니다. Invoke API의 다른 모델의 경우, Claude Code는 1M 모델 변형을 선택할 때 확장된 컨텍스트 윈도우를 자동으로 활성화합니다.484Claude Sonnet 5, Opus 4.6 이상 및 Sonnet 4.6은 Amazon Bedrock에서 [1M 토큰 컨텍스트 윈도우](https://platform.claude.com/docs/ko/build-with-claude/context-windows#context-window-sizes-by-model)를 지원합니다. Sonnet 5는 Invoke API와 [Mantle 엔드포인트](#use-the-mantle-endpoint) 모두에서 항상 1M 윈도우로 실행되며, 선택할 `[1m]` 변형이 없습니다. Invoke API의 다른 모델의 경우, Claude Code는 1M 모델 변형을 선택할 때 확장된 컨텍스트 윈도우를 자동으로 활성화합니다.

485 485 

486[설정 마법사](#sign-in-with-bedrock)는 모델을 고정할 때 1M 컨텍스트 옵션을 제공합니다. 수동으로 고정된 모델에 대해 대신 활성화하려면 모델 ID에 `[1m]`을 추가하십시오. 자세한 내용은 [타사 배포를 위한 모델 고정](/docs/ko/model-config#pin-models-for-third-party-deployments)을 참조하십시오.486[설정 마법사](#sign-in-with-bedrock)는 모델을 고정할 때 1M 컨텍스트 옵션을 제공합니다. 수동으로 고정된 모델에 대해 대신 활성화하려면 모델 ID에 `[1m]`을 추가하십시오. 자세한 내용은 [타사 배포를 위한 모델 고정](/docs/ko/model-config#pin-models-for-third-party-deployments)을 참조하십시오. 1M 윈도우를 사용하면서 핀을 변경하지 않는 방법을 포함한 자세한 내용을 확인하십시오.

487 487 

488<h2 id="service-tiers">488<h2 id="service-tiers">

489 서비스 계층489 서비스 계층

artifacts.md +21 −21

Details

100공유할 수 있는 대상은 사용자의 플랜에 따라 다릅니다.100공유할 수 있는 대상은 사용자의 플랜에 따라 다릅니다.

101 101 

102* **조직 내**: Team 및 Enterprise 플랜에서는 조직의 특정 사람 또는 모든 사람에게 액세스 권한을 부여할 수 있습니다. 뷰어는 페이지를 보기 위해 조직의 구성원으로 claude.ai에 로그인합니다.102* **조직 내**: Team 및 Enterprise 플랜에서는 조직의 특정 사람 또는 모든 사람에게 액세스 권한을 부여할 수 있습니다. 뷰어는 페이지를 보기 위해 조직의 구성원으로 claude.ai에 로그인합니다.

103* **공개**: 인터넷의 누구나 열 수 있는 링크를 공유하며, claude.ai 로그인이 필요하지 않습니다. Pro 및 Max 플랜에서는 공개 링크가 아티팩트를 공유하는 유일한 방법입니다. Team 및 Enterprise 플랜에서는 Owner가 [조직에 대해 공개 공유를 활성화](#control-public-sharing)할 때까지 공개 공유가 비활성화됩니다.103* **공개**: 인터넷의 누구나 열 수 있는 링크를 공유하며, claude.ai 로그인이 필요하지 않습니다. Team 및 Enterprise 플랜에서는 공개 공유가 활성화될 때까지 비활성화되어 있으며, Owner가 [조직에 대해 공개 공유를 활성화](#control-public-sharing)해야 합니다.

104 104 

105<h3 id="let-someone-edit-with-you">105<h3 id="let-someone-edit-with-you">

106 다른 사람이 함께 편집하도록 허용하기106 다른 사람이 함께 편집하도록 허용하기


122 아티팩트에 대한 댓글 수집122 아티팩트에 대한 댓글 수집

123</h2>123</h2>

124 124 

125조직 내에서 아티팩트를 공유할 때, 공유 대상자들은 페이지에 댓글을 남길 수 있으며, Claude가 해당 댓글을 읽고 답변할 수 있습니다. Claude Code v2.1.221 이상과 Team 또는 Enterprise 플랜이 필요합니다. 왜냐하면 [조직 내에서 공유](#share-an-artifact)하는 아티팩트만 댓글을 받기 때문입니다. Claude는 두 가지 경우에 댓글을 읽습니다:125조직 내에서 아티팩트를 공유할 때, 공유 대상자들은 페이지에 댓글을 남길 수 있으며, Claude가 해당 댓글을 읽고 답변할 수 있습니다. Claude Code v2.1.221 이상이 필요합니다. Claude는 두 가지 경우에 댓글을 읽습니다:

126 126 

127* **Claude에게 읽도록 요청하는 경우**: Claude에게 아티팩트의 URL을 제공하고 댓글을 요청합니다. Claude는 각 스레드를 나열하고 아티팩트를 편집할 수 있는 사람이 보낸 댓글을 표시합니다.127* **Claude에게 읽도록 요청하는 경우**: Claude에게 아티팩트의 URL을 제공하고 댓글을 요청합니다. Claude는 각 스레드를 나열하고 아티팩트를 편집할 수 있는 사람이 보낸 댓글을 표시합니다.

128* **아티팩트를 편집할 수 있는 사람이 Claude에게 댓글을 보내는 경우**: 페이지의 스레드에서 **Send to Claude**로 댓글을 보내거나 `@claude`를 언급합니다. 어느 쪽이든 스레드가 활성화됩니다.128* **아티팩트를 편집할 수 있는 사람이 Claude에게 댓글을 보내는 경우**: 페이지의 스레드에서 **Send to Claude**로 댓글을 보내거나 `@claude`를 언급합니다. 어느 쪽이든 스레드가 활성화됩니다.

129 129 

130Claude는 활성화된 스레드에만 답변하거나 해결할 수 있습니다. 다른 스레드는 사람이 페이지에서 해결할 때까지 열린 상태로 유지됩니다. 뷰어는 각 답변이 Claude에게 귀속되는 것을 봅니다(당신을 통해).130Claude는 활성화된 스레드에만 답변하거나 해결할 수 있습니다. 다른 스레드는 사람이 페이지에서 해결할 때까지 열린 상태로 유지됩니다. 뷰어는 각 답변이 Claude에게 귀속되는 것을 봅니다(당신을 통해).

131 131 

132아티팩트를 공개적으로 공유하면 뷰어는 댓글을 달 수 없습니다: 페이지에 `Comments aren't available while this Artifact is shared publicly.`라고 표시됩니다. 이미 댓글 스레드가 있는 아티팩트를 공개 링크로 전환하려면 먼저 스레드를 삭제하십시오.132아티팩트를 공개적으로 공유하면, 공개 링크만으로 접근하는 사람들은 댓글을 볼 수 없으며 추가할 수도 없습니다. 기존 댓글 스레드는 아티팩트에 남아 있으며, 당신과 편집자들은 여전히 읽고 답변할 수 있습니다.

133 133 

134직접 댓글을 요청하려면 Claude에게 URL을 제공하십시오:134직접 댓글을 요청하려면 Claude에게 URL을 제공하십시오:

135 135 


173 173 

174아티팩트는 누군가 이를 볼 때마다 [MCP 커넥터](/docs/ko/mcp#use-mcp-servers-from-claude-ai)를 호출할 수 있으므로, 페이지는 이를 구축한 세션에서 수집한 스냅샷이 아닌 현재 데이터를 표시합니다. 아티팩트의 커넥터 호출은 Pro, Max, Team, Enterprise 플랜에서 사용 가능하며 Claude Code v2.1.209 이상이 필요합니다. 이전 버전에서는 Claude가 세션이 구축하는 동안 수집한 데이터로 페이지를 게시합니다.174아티팩트는 누군가 이를 볼 때마다 [MCP 커넥터](/docs/ko/mcp#use-mcp-servers-from-claude-ai)를 호출할 수 있으므로, 페이지는 이를 구축한 세션에서 수집한 스냅샷이 아닌 현재 데이터를 표시합니다. 아티팩트의 커넥터 호출은 Pro, Max, Team, Enterprise 플랜에서 사용 가능하며 Claude Code v2.1.209 이상이 필요합니다. 이전 버전에서는 Claude가 세션이 구축하는 동안 수집한 데이터로 페이지를 게시합니다.

175 175 

176커넥터 기반 페이지를 만들려면 프롬프트에서 커넥터와 원하는 데이터의 이름을 지정하세요:176커넥터 기반 페이지를 만들려면 프롬프트에서 커넥터와 원하는 데이터의 이름을 지정합니다:

177 177 

178```text wrap theme={null}178```text wrap theme={null}

179Build a dashboard artifact of our open pull requests that pulls the live list through my GitHub connector when the page loads.179Build a dashboard artifact of our open pull requests that pulls the live list through my GitHub connector when the page loads.

180```180```

181 181 

182Claude는 게시의 일부로 페이지가 호출할 수 있는 커넥터를 선언하며, 페이지는 해당 선언 외의 커넥터를 호출할 수 없습니다. claude.ai 계정의 커넥터만 적격입니다: Claude가 선언에서 이름을 지정하고, 누군가 페이지를 볼 때 각 호출은 [보는 계정의 자체 연결을 통해](#how-connector-calls-work-for-viewers) 해당 커넥터로 실행됩니다. `.mcp.json`과 같은 Claude Code에서 구성하는 로컬 MCP 서버는 Claude가 페이지를 구축하는 동안 데이터를 제공할 수 있지만, 게시된 페이지는 이들을 호출할 수 없습니다.182Claude는 게시의 일부로 페이지가 호출할 수 있는 커넥터를 선언하며, 페이지는 해당 선언 외의 커넥터를 호출할 수 없습니다. claude.ai 계정의 커넥터만 적격입니다: Claude가 선언에서 이름을 지정하고, 누군가 페이지를 볼 때 각 호출은 [보는 계정의 자체 연결을 통해](#how-connector-calls-work-for-viewers) 해당 커넥터로 실행됩니다. `.mcp.json`과 같이 Claude Code에서 구성하는 로컬 MCP 서버는 Claude가 페이지를 구축하는 동안 데이터를 제공할 수 있지만, 게시된 페이지는 이들을 호출할 수 없습니다.

183 183 

184페이지는 로드될 때 데이터를 가져오며 간격에 따라 새로 고치거나 보는 사람이 페이지의 새로 고침 컨트롤을 사용할 때 새로 고칠 수 있습니다. 응답은 보는 사람의 브라우저에 캐시되므로, 다시 열린 페이지는 캐시된 응답에서 즉시 렌더링된 후 새로운 결과로 업데이트됩니다.184페이지는 로드될 때 데이터를 가져오며 간격에 따라 새로 고치거나 보는 사람이 페이지의 새로 고침 컨트롤을 사용할 때 새로 고칠 수 있습니다. 응답은 보는 사람의 브라우저에 캐시되므로, 다시 열린 페이지는 캐시된 응답에서 즉시 렌더링된 후 새로운 결과로 업데이트됩니다.

185 185 

186<h3 id="how-connector-calls-work-for-viewers">186<h3 id="how-connector-calls-work-for-viewers">

187 보는 사람을 위한 커넥터 호출 작동 방식187 보는 사람을 위한 커넥터 호출의 작동 방식

188</h3>188</h3>

189 189 

190게시된 페이지가 커넥터를 호출할 때, 호출은 이를 게시한 사람의 계정이 아닌 페이지를 보는 사람의 계정을 사용합니다:190게시된 페이지가 커넥터를 호출할 때, 호출은 이를 게시한 사람의 계정이 아닌 페이지를 보는 사람의 계정을 사용합니다:

191 191 

192* **각 보는 사람이 자신의 커넥터를 사용합니다**: 호출은 보는 계정의 연결된 도구를 통해 이루어지므로, 같은 대시보드를 여는 두 사람은 자신의 계정이 액세스할 수 있는 것에 따라 다른 데이터를 볼 수 있습니다. 페이지는 누구의 자격 증명도 보지 않습니다; claude.ai가 페이지를 대신하여 호출을 수행합니다.192* **각 보는 사람이 자신의 커넥터를 사용합니다**: 호출은 보는 계정의 연결된 도구를 통해 이루어지므로, 같은 대시보드를 여는 두 사람은 자신의 계정이 액세스할 수 있는 것에 따라 다른 데이터를 볼 수 있습니다. 페이지는 누구의 자격 증명도 보지 않습니다; claude.ai가 페이지를 대신하여 호출을 수행합니다.

193* **보는 사람이 먼저 액세스를 승인합니다**: claude.ai는 페이지의 첫 번째 커넥터 호출 전에 각 보는 사람에게 권한을 요청합니다. 거부하거나 페이지가 사용하는 커넥터를 연결하지 않은 보는 사람도 실시간 섹션 없이 페이지를 볼 수 있습니다.193* **보는 사람이 먼저 액세스를 승인합니다**: claude.ai는 페이지의 첫 번째 커넥터 호출 전에 각 보는 사람에게 권한을 요청합니다. 거부하거나 페이지가 사용하는 커넥터를 연결하지 않은 보는 사람도 실시간 섹션 없이 페이지를 볼 수 있습니다.

194* **작업도 보는 사람의 계정을 사용합니다**: 페이지는 메시지 게시 또는 문제 업데이트와 같은 부작용이 있는 커넥터 도구를 호출하는 컨트롤을 제공할 수 있습니다. 작업은 컨트롤을 선택하는 사람의 계정을 통해 이루어집니다.194* **작업도 보는 사람의 계정을 사용합니다**: 페이지는 메시지 게시 또는 이슈 업데이트와 같은 부작용이 있는 커넥터 도구를 호출하는 컨트롤을 제공할 수 있습니다. 작업은 컨트롤을 선택하는 사람의 계정을 통해 이루어집니다.

195 195 

196커넥터 기반 페이지를 공유할 계획이라면, Claude에게 각 실시간 섹션에 필요한 커넥터의 이름을 지정하는 폴백 메시지를 포함하도록 요청하세요. 연결이 없는 보는 사람은 빈 섹션 대신 연결할 항목을 봅니다.196커넥터 기반 페이지를 공유할 계획이라면, Claude에게 각 실시간 섹션에 필요한 커넥터의 이름을 지정하는 폴백 메시지를 포함하도록 요청합니다. 연결이 없는 보는 사람은 빈 섹션 대신 연결할 항목을 봅니다.

197 197 

198커넥터를 호출하는 아티팩트는 어떤 플랜에서도 공개 링크로 공유할 수 없습니다. Team 및 Enterprise 플랜에서는 비공개로 유지하거나 [조직 내에서 공유](#share-an-artifact)할 수 있습니다. 공개 링크가 공유하는 유일한 방법인 Pro 및 Max 플랜에서는 커넥터 기반 아티팩트가 비공개로 유지됩니다.198조직 내에서 또는 공개적으로 커넥터 기반 페이지를 [공유](#share-an-artifact)할 수 있으며, 플랜 및 조직 설정이 허용하는 범위 내에서 가능합니다. claude.ai에 로그인하지 않고 공개 링크를 열거나 조직 외부에서 열기를 하는 보는 사람에 대해서는 커넥터 호출이 실행되지 않습니다. 해당 보는 사람은 실시간 섹션 없이 페이지를 봅니다.

199 199 

200<h3 id="the-page-shows-no-live-data-for-a-viewer">200<h3 id="the-page-shows-no-live-data-for-a-viewer">

201 페이지가 보는 사람을 위한 실시간 데이터를 표시하지 않음201 보는 사람을 위해 페이지에 실시간 데이터가 표시되지 않음

202</h3>202</h3>

203 203 

204커넥터 기반 페이지가 렌더링되지만 공유한 사람의 실시간 섹션이 비어 있을 때, 다음 원인을 확인하세요:204커넥터 기반 페이지가 렌더링되지만 조직의 보는 사람에 대해 실시간 섹션이 비어 있을 때, 다음 원인을 확인합니다:

205 205 

206* **보는 사람이 커넥터를 연결하지 않았습니다**: 커넥터는 계정별이므로, 각 보는 사람은 페이지가 호출하는 모든 커넥터에 대한 자신의 연결이 필요합니다. claude.ai의 **설정 > 커넥터**에서 추가한 후 페이지를 다시 로드할 수 있습니다.206* **보는 사람이 커넥터를 연결하지 않았습니다**: 커넥터는 계정별이므로, 각 보는 사람은 페이지가 호출하는 모든 커넥터에 대한 자신의 연결이 필요합니다. claude.ai의 **설정 > 커넥터**에서 추가한 후 페이지를 다시 로드할 수 있습니다.

207* **보는 사람이 권한 요청을 거부했습니다**: 거부는 해당 페이지 로드의 나머지 동안 지속됩니다. 페이지를 다시 로드하면 권한 요청이 다시 나타납니다.207* **보는 사람이 권한 요청을 거부했습니다**: 거부는 해당 페이지 로드의 나머지 기간 동안 지속됩니다. 페이지를 다시 로드하면 권한 요청이 다시 나타납니다.

208* **조직에 대해 커넥터 호출이 꺼져 있습니다**: 소유자가 관리 설정에서 [**아티팩트 커넥터 활성화** 토글](#control-connector-calls-from-artifacts)을 제어합니다.208* **조직에 대해 커넥터 호출이 꺼져 있습니다**: 소유자가 관리자 설정에서 [**아티팩트 커넥터 활성화** 토글](#control-connector-calls-from-artifacts)을 제어합니다.

209* **페이지가 커넥터가 노출하지 않는 도구 이름을 호출합니다**: 영향을 받는 섹션은 당신을 포함한 모든 사람에게 비어 있습니다. 이는 페이지가 자신의 도구만 몇 개 노출하는 게이트웨이 스타일 커넥터 뒤의 개별 도구의 이름을 지정할 때 발생할 수 있습니다. Claude에게 페이지가 호출하는 도구 이름을 수정하고 다시 게시하도록 요청하세요.209* **페이지가 커넥터가 노출하지 않는 도구 이름을 호출합니다**: 영향을 받는 섹션은 당신을 포함한 모든 사람에게 비어 있습니다. 이는 페이지가 자신의 도구만 몇 개 노출하는 게이트웨이 스타일 커넥터 뒤의 개별 도구의 이름을 지정할 때 발생할 수 있습니다. Claude에게 페이지가 호출하는 도구 이름을 수정하고 다시 게시하도록 요청합니다.

210 210 

211 Claude가 페이지를 게시할 때 해당 커넥터의 도구를 세션에서 사용할 수 있으면, Claude Code는 페이지가 선언하는 도구 이름을 이들과 비교하고, 일치하지 않는 이름에 대해 Claude에게 경고하며, 일치하는 이름이 없으면 게시를 거부합니다. v2.1.265 이전에는 이들을 확인하지 않고 페이지를 게시했습니다.211 Claude가 페이지를 게시하고 해당 커넥터의 도구가 세션에서 사용 가능할 때, Claude Code는 페이지가 선언하는 도구 이름을 이들과 비교하고, 일치하지 않는 이름에 대해 Claude에게 경고하며, 일치하는 이름이 없을 때 게시를 거부합니다. v2.1.265 이전에는 이들을 확인하지 않고 페이지를 게시했습니다.

212 212 

213<h2 id="offer-a-file-download">213<h2 id="offer-a-file-download">

214 파일 다운로드 제공214 파일 다운로드 제공


375 375 

376| 요구사항 | 사용 가능한 경우 |376| 요구사항 | 사용 가능한 경우 |

377| :- | :- |377| :- | :- |

378| 플랜 | Pro, Max, Team 또는 Enterprise. Pro 및 Max 플랜에서는 artifacts가 공유할 때까지 사용자에게만 비공개이며 관리자 관리가 적용되지 않습니다. Team 플랜에서는 artifacts가 기본적으로 활성화됩니다. Enterprise 플랜에서는 Owner가 claude.ai 관리자 설정에서 [이를 활성화](#manage-artifacts-for-your-organization)합니다. |378| 플랜 | Pro, Max, Team 또는 Enterprise. Pro 및 Max 플랜에서는 artifacts가 공유할 때까지 사용자에게만 비공개이며 관리자 관리가 적용되지 않습니다. Team 및 Enterprise 플랜에서는 artifacts가 기본적으로 활성화되며, Owner가 claude.ai 관리자 설정에서 [이를 조직에 대해 비활성화](#manage-artifacts-for-your-organization)할 수 있습니다. |

379| 인증 | 세션이 claude.ai 계정으로 지원됩니다: CLI 또는 데스크톱 앱에서 `/login`으로 로그인합니다. Claude Tag 세션은 에이전트의 ID를 통해 로그인되므로 추가 단계가 필요하지 않습니다. API 키, [gateway token](/docs/ko/llm-gateway) 또는 클라우드 제공자 자격증명을 사용하는 세션은 게시할 수 없습니다. |379| 인증 | 세션이 claude.ai 계정으로 지원됩니다: CLI 또는 데스크톱 앱에서 `/login`으로 로그인합니다. Claude Tag 세션은 에이전트의 ID를 통해 로그인되므로 추가 단계가 필요하지 않습니다. API 키, [gateway token](/docs/ko/llm-gateway) 또는 클라우드 제공자 자격증명을 사용하는 세션은 게시할 수 없습니다. |

380| 모델 제공자 | Anthropic API. [Amazon Bedrock](/docs/ko/amazon-bedrock), [Google Cloud의 Agent Platform](/docs/ko/google-vertex-ai) 또는 [Microsoft Foundry](/docs/ko/microsoft-foundry)에서는 사용할 수 없습니다. |380| 모델 제공자 | Anthropic API. [Amazon Bedrock](/docs/ko/amazon-bedrock), [Google Cloud의 Agent Platform](/docs/ko/google-vertex-ai) 또는 [Microsoft Foundry](/docs/ko/microsoft-foundry)에서는 사용할 수 없습니다. |

381| 조직 정책 | 고객 관리 암호화 키(CMEK), HIPAA 및 [Zero Data Retention](/docs/ko/zero-data-retention)이 조직에 대해 활성화되지 않았습니다. |381| 조직 정책 | 고객 관리 암호화 키(CMEK), HIPAA 및 [Zero Data Retention](/docs/ko/zero-data-retention)이 조직에 대해 활성화되지 않았습니다. |


408 조직의 아티팩트 관리408 조직의 아티팩트 관리

409</h2>409</h2>

410 410 

411Team 및 Enterprise 플랜의 관리자는 [claude.ai 관리 설정](https://claude.ai/admin-settings/claude-code)에서 아티팩트를 제어합니다. 아티팩트 콘텐츠는 Anthropic 운영 인프라에 저장되며 게시 조직의 인증된 구성원에게만 표시됩니다. 아티팩트가 [공개적으로 공유](#control-public-sharing)되지 않는 한 그렇습니다.411Team 및 Enterprise 플랜의 관리자는 [claude.ai 관리 설정](https://claude.ai/admin-settings/artifacts)에서 아티팩트를 제어합니다. 아티팩트 콘텐츠는 Anthropic 운영 인프라에 저장되며 게시 조직의 인증된 구성원과 이를 공유하는 사람들에게만 표시됩니다. 아티팩트가 [공개적으로 공유](#control-public-sharing)되지 않는 한 그렇습니다.

412 412 

413<h3 id="enable-or-disable-artifacts">413<h3 id="enable-or-disable-artifacts">

414 아티팩트 활성화 또는 비활성화414 아티팩트 활성화 또는 비활성화

415</h3>415</h3>

416 416 

417전체 조직에 대해 아티팩트를 활성화하거나 비활성화하려면 [**설정 > Claude Code > 기능**](https://claude.ai/admin-settings/claude-code)으로 이동하여 **아티팩트** 토글을 사용하십시오. 역할 기반 액세스 제어가 있는 Enterprise 플랜에서는 추가로 아티팩트를 특정 역할로 범위 지정할 수 있습니다. [**설정 > 역할**](https://claude.ai/admin-settings/roles)로 이동하여 역할을 편집하고 **Claude Code** 그룹 아래에서 **아티팩트** 권한을 설정하십시오.417전체 조직에 대해 아티팩트를 활성화하거나 비활성화하려면 [**조직 설정 > 아티팩트**](https://claude.ai/admin-settings/artifacts)로 이동하여 **아티팩트** 토글을 사용하십시오. 역할 기반 액세스 제어가 있는 Enterprise 플랜에서는 추가로 아티팩트를 특정 역할로 범위 지정할 수 있습니다. [**조직 설정 > 역할**](https://claude.ai/admin-settings/roles)로 이동하여 역할을 편집하고 **아티팩트** 권한을 설정하십시오.

418 418 

419<h3 id="control-connector-calls-from-artifacts">419<h3 id="control-connector-calls-from-artifacts">

420 아티팩트에서 커넥터 호출 제어420 아티팩트에서 커넥터 호출 제어

421</h3>421</h3>

422 422 

423[아티팩트에서의 커넥터 호출](#pull-live-data-with-mcp-connectors)은 아티팩트를 켜거나 끄는 **아티팩트** 토글과 별도의 토글을 가지고 있습니다. [**설정 > 기능**](https://claude.ai/admin-settings/capabilities)으로 이동하여 **아티팩트 커넥터 활성화** 토글을 사용하십시오. 동일한 토글은 claude.ai 대화에서 생성된 아티팩트의 커넥터 호출을 관리하므로, **설정 > Claude Code**가 아닌 **설정 > 기능** 아래에 위치합니다.423[아티팩트에서의 커넥터 호출](#pull-live-data-with-mcp-connectors)은 아티팩트를 켜거나 끄는 **아티팩트** 토글과 별도의 토글을 가지고 있습니다. [**조직 설정 > 기능**](https://claude.ai/admin-settings/capabilities)으로 이동하여 **아티팩트 커넥터 활성화** 토글을 사용하십시오. 동일한 토글은 claude.ai 대화에서 생성된 아티팩트의 커넥터 호출을 관리합니다.

424 424 

425<h3 id="control-public-sharing">425<h3 id="control-public-sharing">

426 공개 공유 제어426 공개 공유 제어

427</h3>427</h3>

428 428 

429공개 공유는 Team 및 Enterprise 플랜에서 기본적으로 꺼져 있으므로 구성원은 관리자가 켤 때까지 조직 내에서만 아티팩트를 공유할 수 있습니다. 구성원이 로그인 없이 누구나 볼 수 있는 공개 링크에 아티팩트를 게시할 수 있도록 하려면 **설정 > Claude Code > 기능**으로 이동하여 **아티팩트** 토글 아래에서 **외부 공유**를 켜십시오. 다시 끄면 각 아티팩트의 대상을 변경하지 않고 기존 공개 링크를 통한 액세스를 차단합니다. 다시 활성화하면 액세스가 재개됩니다.429공개 공유는 Team 및 Enterprise 플랜에서 기본적으로 꺼져 있습니다. 구성원이 로그인 없이 누구나 볼 수 있는 공개 링크에 아티팩트를 게시할 수 있도록 하려면 [**조직 설정 > 아티팩트**](https://claude.ai/admin-settings/artifacts)로 이동하여 **아티팩트** 토글 아래에서 **외부 공유**를 켜십시오. 다시 끄면 각 아티팩트의 대상을 변경하지 않고 기존 공개 링크를 통한 액세스를 차단합니다. 다시 활성화하면 액세스가 재개됩니다.

430 430 

431<h3 id="set-a-retention-policy">431<h3 id="set-a-retention-policy">

432 보존 정책 설정432 보존 정책 설정

433</h3>433</h3>

434 434 

435아티팩트가 자동 삭제 전에 유지되는 기간을 설정하려면 [**설정 > 데이터 및 개인정보 보호 제어**](https://claude.ai/admin-settings/data-privacy-controls)로 이동하십시오. 작성자에게만 비공개인 아티팩트와 공유된 아티팩트에 대해 별도의 보존 기간을 설정할 수 있습니다.435아티팩트가 자동 삭제 전에 유지되는 기간을 설정하려면 [**조직 설정 > 데이터 및 개인정보 보호**](https://claude.ai/admin-settings/data-privacy-controls)로 이동하십시오. 작성자에게만 비공개인 아티팩트와 공유된 아티팩트에 대해 별도의 보존 기간을 설정할 수 있습니다.

436 436 

437<h3 id="review-the-audit-log">437<h3 id="review-the-audit-log">

438 감사 로그 검토438 감사 로그 검토

Details

163 페이로드는 Claude의 컨텍스트에 `<channel>` 태그로 도착합니다:163 페이로드는 Claude의 컨텍스트에 `<channel>` 태그로 도착합니다:

164 164 

165 ```text theme={null}165 ```text theme={null}

166 <channel source="webhook" path="/" method="POST">build failed on main: https://ci.example.com/run/1234</channel>166 <channel source="webhook" path="/" method="POST">

167 build failed on main: https://ci.example.com/run/1234

168 </channel>

167 ```169 ```

168 170 

169 터미널은 이벤트를 한 줄 요약으로 렌더링합니다: `← webhook: build failed on main: https://ci.example.com/run/1234` (원본 태그가 아님). 그러면 Claude가 응답을 시작하는 것을 볼 수 있습니다: 파일 읽기, 명령 실행 또는 메시지가 요구하는 모든 작업. 이것은 단방향 채널이므로 Claude는 세션에서 작동하지만 웹훅을 통해 아무것도 다시 보내지 않습니다. 회신을 추가하려면 [회신 도구 노출](#expose-a-reply-tool)을 참조하세요.171 터미널은 이벤트를 한 줄 요약으로 렌더링합니다: `← webhook: build failed on main: https://ci.example.com/run/1234` (원본 태그가 아님). 그러면 Claude가 응답을 시작하는 것을 볼 수 있습니다: 파일 읽기, 명령 실행 또는 메시지가 요구하는 모든 작업. 이것은 단방향 채널이므로 Claude는 세션에서 작동하지만 웹훅을 통해 아무것도 다시 보내지 않습니다. 회신을 추가하려면 [회신 도구 노출](#expose-a-reply-tool)을 참조하세요.

Details

360 360 

361Claude Desktop만 실행하는 머신에는 옵트인이 필요합니다. Claude Desktop은 모델 목록과 비활성화된 도구 목록을 포함된 세션에 자체적으로 적용하지만, 송신 허용 목록은 `WebFetch` 도메인 규칙 및 샌드박스 네트워크 규칙 형태의 부모 설정으로만 도달합니다. 옵트인 없이, 이러한 세션은 송신 제한 없이 실행되며, 아무것도 경고하지 않습니다. 게이트웨이는 여전히 정책이 부여하지 않는 모델에 대한 추론 요청을 거부합니다.361Claude Desktop만 실행하는 머신에는 옵트인이 필요합니다. Claude Desktop은 모델 목록과 비활성화된 도구 목록을 포함된 세션에 자체적으로 적용하지만, 송신 허용 목록은 `WebFetch` 도메인 규칙 및 샌드박스 네트워크 규칙 형태의 부모 설정으로만 도달합니다. 옵트인 없이, 이러한 세션은 송신 제한 없이 실행되며, 아무것도 경고하지 않습니다. 게이트웨이는 여전히 정책이 부여하지 않는 모델에 대한 추론 요청을 거부합니다.

362 362 

363플러그인 마켓플레이스 허용 목록도 포함된 세션에만 부모 설정으로 도달합니다. Claude Desktop의 관리 구성에서 사용자 추가 플러그인 마켓플레이스를 끄면, Claude Desktop 2.16120.0 이상은 조직이 프로비저닝하지 않은 마켓플레이스를 숨기고 이들로부터의 설치를 거부합니다. 포함된 세션이 이러한 마켓플레이스에서 이미 설치된 플러그인을 로드하는 것을 중지하려면, 부모 설정으로 `strictKnownMarketplaces` 목록을 보냅니다. 옵트인 없이, Claude Code는 해당 목록을 무시하고, 이러한 플러그인은 계속 로드됩니다.

364 

363개발자가 `/login`을 통해 로그인하는 머신에는 옵트인이 필요하지 않습니다; 각 Claude Code 세션은 게이트웨이에서 정책을 가져옵니다.365개발자가 `/login`을 통해 로그인하는 머신에는 옵트인이 필요하지 않습니다; 각 Claude Code 세션은 게이트웨이에서 정책을 가져옵니다.

364 366 

365[`policyHelper`](/docs/ko/settings-reference#policyhelper)가 관리 설정을 제공하는 플릿은 이를 사용할 수 없습니다: Claude Code는 도우미의 출력에서만 관리 설정을 읽기 때문에 이러한 플릿에서 부모 설정을 병합하지 않습니다.367[`policyHelper`](/docs/ko/settings-reference#policyhelper)가 관리 설정을 제공하는 플릿은 이를 사용할 수 없습니다: Claude Code는 도우미의 출력에서만 관리 설정을 읽기 때문에 이러한 플릿에서 부모 설정을 병합하지 않습니다.


453* **`forceLoginOrgUUID`**: 가장 높은 우선순위 관리 소스가 조직 UUID를 설정하지 않을 때 Claude Code는 부모 제공 값을 준수합니다. 게이트웨이 로그인은 이 키를 확인하지 않습니다. 가장 높은 우선순위 관리 소스의 조직 UUID는 부모의 값을 차단하며 Claude Code가 적용하는 값입니다.455* **`forceLoginOrgUUID`**: 가장 높은 우선순위 관리 소스가 조직 UUID를 설정하지 않을 때 Claude Code는 부모 제공 값을 준수합니다. 게이트웨이 로그인은 이 키를 확인하지 않습니다. 가장 높은 우선순위 관리 소스의 조직 UUID는 부모의 값을 차단하며 Claude Code가 적용하는 값입니다.

454* **`allowedMcpServers`**: 가장 높은 우선순위 관리 소스가 허용 목록을 설정하지 않을 때 Claude Code는 부모 제공 허용 목록을 준수하며, `allowManagedMcpServersOnly`는 이를 차단하지 않습니다. 잠금은 우승 목록을 관리 값으로 적용하기 때문입니다. 가장 높은 우선순위 관리 소스의 목록은 부모의 목록을 차단하며 Claude Code가 적용하는 목록이므로, 잠금 옆에 거기에 `allowedMcpServers`를 설정하세요. v2.1.223 이전에는, 모든 관리 소스의 어느 키에 대한 값이든 부모의 값을 차단했습니다.456* **`allowedMcpServers`**: 가장 높은 우선순위 관리 소스가 허용 목록을 설정하지 않을 때 Claude Code는 부모 제공 허용 목록을 준수하며, `allowManagedMcpServersOnly`는 이를 차단하지 않습니다. 잠금은 우승 목록을 관리 값으로 적용하기 때문입니다. 가장 높은 우선순위 관리 소스의 목록은 부모의 목록을 차단하며 Claude Code가 적용하는 목록이므로, 잠금 옆에 거기에 `allowedMcpServers`를 설정하세요. v2.1.223 이전에는, 모든 관리 소스의 어느 키에 대한 값이든 부모의 값을 차단했습니다.

455* **`availableModels`**: Claude Code는 우승 관리 소스가 모델 목록을 설정하지 않을 때 부모 제공 모델 목록을 준수합니다. 플릿이 모델을 제한하면, 우승 소스에 `availableModels`를 설정하세요.457* **`availableModels`**: Claude Code는 우승 관리 소스가 모델 목록을 설정하지 않을 때 부모 제공 모델 목록을 준수합니다. 플릿이 모델을 제한하면, 우승 소스에 `availableModels`를 설정하세요.

456* **`strictKnownMarketplaces`**: Claude Code는 우승 관리 소스가 플러그인 마켓플레이스 허용 목록을 설정하지 않을 때 부모 제공 플러그인 마켓플레이스 허용 목록을 준수합니다. 플릿이 마켓플레이스를 제한하면, 우승 소스에 `strictKnownMarketplaces`를 설정하세요. Claude Code v2.1.282 이상이 필요합니다.458* **`strictKnownMarketplaces`**: Claude Code는 우승 관리 소스가 플러그인 마켓플레이스 허용 목록을 설정하지 않을 때 부모 제공 플러그인 마켓플레이스 허용 목록을 준수합니다. Claude Desktop 2.16120.0 이상은 관리 구성이 사용자 추가 플러그인 마켓플레이스를 끌 때 하나를 보냅니다. 플릿이 마켓플레이스를 제한하면, 우승 소스에 `strictKnownMarketplaces`를 설정하세요. Claude Code v2.1.282 이상이 필요합니다.

457* **`blockedMarketplaces`**: 부모 제공 마켓플레이스 차단 목록은 통과하고 관리 소스가 설정한 모든 차단 목록에 추가됩니다. 차단 목록은 더 제한할 수만 있기 때문입니다. Claude Code v2.1.282 이상이 필요합니다.459* **`blockedMarketplaces`**: 부모 제공 마켓플레이스 차단 목록은 통과하고 관리 소스가 설정한 모든 차단 목록에 추가됩니다. 차단 목록은 더 제한할 수만 있기 때문입니다. Claude Code v2.1.282 이상이 필요합니다.

458* **`strictPluginOnlyCustomization`**: 이 키는 모든 잠금과 관계없이 필터를 통과하며, Claude Code가 개발자의 자신의 사용자 정의(보호 hooks 포함)를 무시하도록 합니다. 이를 차단하는 잠금이 없습니다.460* **`strictPluginOnlyCustomization`**: 이 키는 모든 잠금과 관계없이 필터를 통과하며, Claude Code가 개발자의 자신의 사용자 정의(보호 hooks 포함)를 무시하도록 합니다. 이를 차단하는 잠금이 없습니다.

459 461 

Details

314| 다른 곳 | `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, 및 `AWS_SESSION_TOKEN` 환경 변수를 통해 자격증명을 전달하거나, `${VAR}` 확장으로 `auth:`에서 명시적으로 설정합니다. |314| 다른 곳 | `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, 및 `AWS_SESSION_TOKEN` 환경 변수를 통해 자격증명을 전달하거나, `${VAR}` 확장으로 `auth:`에서 명시적으로 설정합니다. |

315| 지역 | `region:`은 API 엔드포인트 지역입니다. 교차 지역 추론 프로필은 선택한 것과 무관하게 지역(US, EU, APAC)을 통해 라우팅합니다. 비 US 지역 또는 프로비저닝된 처리량 ARN의 경우, 올바른 업스트림별 ID가 있는 [`models:`](#models) 블록을 추가합니다. |315| 지역 | `region:`은 API 엔드포인트 지역입니다. 교차 지역 추론 프로필은 선택한 것과 무관하게 지역(US, EU, APAC)을 통해 라우팅합니다. 비 US 지역 또는 프로비저닝된 처리량 ARN의 경우, 올바른 업스트림별 ID가 있는 [`models:`](#models) 블록을 추가합니다. |

316 316 

317<h5 id="apply-an-amazon-bedrock-guardrail">

318 Amazon Bedrock 가드레일 적용

319</h5>

320 

321게이트웨이가 Bedrock 업스트림을 통해 보내는 모든 추론 요청에 Amazon Bedrock 가드레일을 적용하려면, 해당 업스트림에 `guardrail` 블록을 추가합니다. 게이트웨이 서버에서 Claude Code v2.1.281 이상이 필요합니다.

322 

323```yaml theme={null}

324upstreams:

325 - provider: bedrock

326 region: us-east-1

327 auth: {}

328 guardrail:

329 id: gr-abc123 # guardrail ID or full ARN

330 version: "1" # a published version number, or DRAFT

331 # keep the quotes: a bare 1 fails at boot

332```

333 

334<Warning>

335 게이트웨이는 가드레일 입력 태그를 지원하지 않습니다. 프롬프트에 가드 콘텐츠 태그를 추가하지 않으므로, 입력 태그에만 적용되는 가드레일 필터는 게이트웨이를 통한 트래픽에서 실행되지 않습니다. 입력 태그에 따라 달라지는 필터는 [입력 태그](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html)를 Amazon Bedrock 설명서에서 참조하세요.

336</Warning>

337 

338또한 게이트웨이의 AWS 주체에 가드레일에 `bedrock:ApplyGuardrail`을 부여합니다.

339 

340모든 `bedrock` 업스트림에 `guardrail`을 설정하거나 아무것도 설정하지 않습니다. 게이트웨이는 혼합에서 시작을 거부합니다. [장애 조치](#multiple-upstreams)가 가드레일이 없는 Bedrock 업스트림으로 요청을 보낼 수 있기 때문입니다.

341 

342가드레일은 Bedrock 업스트림만 다룹니다. `upstreams`에 다른 공급자를 나열하면, 게이트웨이는 가드레일 없이 해당 공급자로 요청을 보냅니다.

343 

344`/v1/messages` 요청의 본문이 `amazon-bedrock-*` 필드(예: `amazon-bedrock-guardrailConfig`)를 전달하고 `guardrail`이 설정된 Bedrock 업스트림에 도달하면, 게이트웨이는 이를 전달하는 대신 400으로 응답합니다.

345 

317<h4 id="claude-platform-on-aws">346<h4 id="claude-platform-on-aws">

318 Claude Platform on AWS347 Claude Platform on AWS

319</h4>348</h4>


861 890 

862gateway는 `cli` 블록과 마찬가지로 설치된 버전과 함께 번들된 스키마에 대해 `desktop` 블록을 검증합니다. 더 새로운 Claude Desktop 릴리스에서 도입한 설정을 전달하려면 먼저 gateway를 업그레이드하세요. 예를 들어 `userPluginMarketplacesEnabled` 및 `userPluginUploadsEnabled`는 gateway 서버의 Claude Code v2.1.260 이상과 멤버 머신의 Claude Desktop 1.37937.0 이상이 필요합니다.891gateway는 `cli` 블록과 마찬가지로 설치된 버전과 함께 번들된 스키마에 대해 `desktop` 블록을 검증합니다. 더 새로운 Claude Desktop 릴리스에서 도입한 설정을 전달하려면 먼저 gateway를 업그레이드하세요. 예를 들어 `userPluginMarketplacesEnabled` 및 `userPluginUploadsEnabled`는 gateway 서버의 Claude Code v2.1.260 이상과 멤버 머신의 Claude Desktop 1.37937.0 이상이 필요합니다.

863 892 

893`blockReadsOutsideWorkingDirectories`, `disableBypassPermissionsMode`, `configRecheckIntervalMinutes` 및 `sshClientPath`는 gateway 서버의 Claude Code v2.1.281 이상이 필요합니다. Microsoft 365 `managedMcpServers` 항목의 `microsoftAuthBroker`의 `required` 값과 `continuousAccessEvaluation` 필드도 마찬가지입니다. Claude Desktop 릴리스가 `required` 값보다 앞서면 이를 `disabled`로 읽으므로 모든 멤버의 Claude Desktop이 이를 지원한 후에만 `required`를 설정하세요. Claude Desktop의 [관리 구성 참조](https://claude.com/docs/third-party/claude-desktop/configuration)는 각 키를 처음 읽는 릴리스를 나열합니다.

894 

864정책의 `desktop` 블록에서 `orgPluginSettings`를 설정하면 gateway는 Claude Desktop 1.15200.0 이상이 읽는 배열 형식으로 제공합니다. 더 오래된 데스크톱은 배열을 무시하고 플러그인 도구 정책을 강제하지 않으므로 이에 의존하기 전에 멤버를 1.15200.0 이상으로 업데이트하세요.895정책의 `desktop` 블록에서 `orgPluginSettings`를 설정하면 gateway는 Claude Desktop 1.15200.0 이상이 읽는 배열 형식으로 제공합니다. 더 오래된 데스크톱은 배열을 무시하고 플러그인 도구 정책을 강제하지 않으므로 이에 의존하기 전에 멤버를 1.15200.0 이상으로 업데이트하세요.

865 896 

866gateway는 정책의 `desktop` 블록이 설정하지 않은 키를 `match: {}` catch-all의 `desktop` 블록에서 채웁니다. 기본값의 `cli` 블록을 채우는 방식과 동일합니다. 기본값과 역할 정책 모두에서 `disabledBuiltinTools` 또는 `builtinToolPolicy`를 설정하면 gateway는 기본값의 제한을 유지합니다:897gateway는 정책의 `desktop` 블록이 설정하지 않은 키를 `match: {}` catch-all의 `desktop` 블록에서 채웁니다. 기본값의 `cli` 블록을 채우는 방식과 동일합니다. 기본값과 역할 정책 모두에서 `disabledBuiltinTools` 또는 `builtinToolPolicy`를 설정하면 gateway는 기본값의 제한을 유지합니다:


968protobuf 및 JSON OTLP 인코딩 모두 릴레이되며 모든 OpenTelemetry 호환 백엔드가 대상으로 작동합니다.999protobuf 및 JSON OTLP 인코딩 모두 릴레이되며 모든 OpenTelemetry 호환 백엔드가 대상으로 작동합니다.

969 1000 

970<h4 id="add-your-own-labels">1001<h4 id="add-your-own-labels">

1002 자신의 레이블 추가

1003</h4>

1004 

1005고정된 레이블(예: `service.namespace` 또는 `deployment.environment.name`)을 gateway를 통해 서명된 세션의 원격 측정에 넣으려면 `telemetry.resource_attributes`를 설정하세요. 각 레이블은 OpenTelemetry 리소스 속성이며 모든 대상이 동일한 레이블을 받습니다.

1006 

1007세션은 `telemetry.forward_to` 및 `listen.public_url`도 설정할 때만 레이블을 받습니다. 이 예제는 두 개의 레이블을 추가합니다:

1008 

1009```yaml theme={null}

1010telemetry:

1011 forward_to:

1012 - url: https://otel-collector.internal.example.com

1013 resource_attributes:

1014 service.namespace: claude

1015 deployment.environment.name: prod

1016```

1017 

1018gateway는 레이블이 다음 규칙 중 하나를 위반할 때 시작을 거부하며 시작 오류가 레이블을 명명합니다:

1019 

1020* 이름은 문자, 숫자, `.`, `_` 및 `-`만 사용합니다.

1021* 이름은 예약되지 않습니다. 모든 문자 케이스에서 비교하면 예약된 이름은 `user.`, `enduser.` 또는 `identity.`로 시작하는 모든 것과 `service.name`, `service.version`, `claude.deployment_mode`, `host.arch`, `os.type`, `os.version` 및 `wsl.version`입니다.

1022* 값은 공백이 없는 비어있지 않은 인쇄 가능한 ASCII이며 `, ; = \ " %` 중 하나가 아닙니다.

1023* 값은 최대 255자입니다. gateway가 퍼센트 인코딩 후 계산하므로 `/`, `:` 및 `@`는 각각 3자로 계산됩니다.

1024* 값은 텍스트이므로 숫자, `true` 또는 `false`를 인용하세요.

1025 

1026gateway 서버의 Claude Code v2.1.281 이상이 필요합니다. 이전 gateway는 키를 찾으면 시작을 거부하므로 모든 복제본을 업그레이드한 후 키를 추가하고 이전 버전으로 롤백하기 전에 제거하세요.

1027 

1028`/login`을 통해 서명된 터미널 세션은 다른 [원격 측정 변수](#telemetry)와 함께 레이블을 `OTEL_RESOURCE_ATTRIBUTES`로 받습니다. 정책의 `env` 블록에서 `OTEL_RESOURCE_ATTRIBUTES`를 설정하면 해당 정책과 일치하는 터미널 세션은 레이블 대신 해당 값을 받습니다. Claude Desktop은 `user.email` 및 다른 ID 속성과 함께 gateway에서 레이블을 받습니다.

1029 

1030Claude Code는 또한 각 레이블을 모든 메트릭 데이터 포인트에 복사하므로 리소스 속성을 인덱싱하지 않는 백엔드에서 메트릭을 필터링할 수 있습니다. 해당 복사를 끄려면 [메트릭 카디널리티 제어](/docs/ko/monitoring-usage#metrics-cardinality-control)를 참조하세요.

1031 

1032<h4 id="export-directly-to-your-collector">

971 수집기로 직접 내보내기1033 수집기로 직접 내보내기

972</h4>1034</h4>

973 1035 


994 1056 

995개발자가 로그아웃하거나 다른 gateway에 로그인하면 수집기로의 내보내기가 중지되고 Claude Code는 각 남은 배치를 늦게 전달하지 않고 삭제합니다.1057개발자가 로그아웃하거나 다른 gateway에 로그인하면 수집기로의 내보내기가 중지되고 Claude Code는 각 남은 배치를 늦게 전달하지 않고 삭제합니다.

996 1058 

997<h4 id="export-directly-to-your-collector">1059<h4 id="when-a-destination-fails">

998 대상이 실패할 때1060 대상이 실패할 때

999</h4>1061</h4>

1000 1062 


1004 1066 

1005거부된 페이로드는 실패 카운트를 진행하거나 재설정하지 않습니다. gateway는 대상으로 전달을 계속하고 첫 거부 및 그 후 100번마다 경고를 기록하며 대상을 명명합니다.1067거부된 페이로드는 실패 카운트를 진행하거나 재설정하지 않습니다. gateway는 대상으로 전달을 계속하고 첫 거부 및 그 후 100번마다 경고를 기록하며 대상을 명명합니다.

1006 1068 

1007<h4 id="when-a-destination-fails">

1008 자신의 레이블 추가

1009</h4>

1010 

1011고정된 레이블(예: `service.namespace` 또는 `deployment.environment.name`)을 gateway를 통해 서명된 세션의 원격 측정에 넣으려면 `telemetry.resource_attributes`를 설정하세요. 각 레이블은 OpenTelemetry 리소스 속성이며 모든 대상이 동일한 레이블을 받습니다.

1012 

1013세션은 `telemetry.forward_to` 및 `listen.public_url`도 설정할 때만 레이블을 받습니다. 이 예제는 두 개의 레이블을 추가합니다:

1014 

1015```yaml theme={null}

1016telemetry:

1017 forward_to:

1018 - url: https://otel-collector.internal.example.com

1019 resource_attributes:

1020 service.namespace: claude

1021 deployment.environment.name: prod

1022```

1023 

1024gateway는 레이블이 다음 규칙 중 하나를 위반할 때 시작을 거부하며 시작 오류가 레이블을 명명합니다:

1025 

1026* 이름은 문자, 숫자, `.`, `_` 및 `-`만 사용합니다.

1027* 이름은 예약되지 않습니다. 모든 문자 케이스에서 비교하면 예약된 이름은 `user.`, `enduser.` 또는 `identity.`로 시작하는 모든 것과 `service.name`, `service.version`, `claude.deployment_mode`, `host.arch`, `os.type`, `os.version` 및 `wsl.version`입니다.

1028* 값은 공백이 없는 비어있지 않은 인쇄 가능한 ASCII이며 `, ; = \ " %` 중 하나가 아닙니다.

1029* 값은 최대 255자입니다. gateway가 퍼센트 인코딩 후 계산하므로 `/`, `:` 및 `@`는 각각 3자로 계산됩니다.

1030* 값은 텍스트이므로 숫자, `true` 또는 `false`를 인용하세요.

1031 

1032gateway 서버의 Claude Code v2.1.281 이상이 필요합니다. 이전 gateway는 키를 찾으면 시작을 거부하므로 모든 복제본을 업그레이드한 후 키를 추가하고 이전 버전으로 롤백하기 전에 제거하세요.

1033 

1034`/login`을 통해 서명된 터미널 세션은 다른 [원격 측정 변수](#telemetry)와 함께 레이블을 `OTEL_RESOURCE_ATTRIBUTES`로 받습니다. 정책의 `env` 블록에서 `OTEL_RESOURCE_ATTRIBUTES`를 설정하면 해당 정책과 일치하는 터미널 세션은 레이블 대신 해당 값을 받습니다. Claude Desktop은 `user.email` 및 다른 ID 속성과 함께 gateway에서 레이블을 받습니다.

1035 

1036Claude Code는 또한 각 레이블을 모든 메트릭 데이터 포인트에 복사하므로 리소스 속성을 인덱싱하지 않는 백엔드에서 메트릭을 필터링할 수 있습니다. 해당 복사를 끄려면 [메트릭 카디널리티 제어](/docs/ko/monitoring-usage#metrics-cardinality-control)를 참조하세요.

1037 

1038<h3 id="http-tuning">1069<h3 id="http-tuning">

1039 HTTP 튜닝1070 HTTP 튜닝

1040</h3>1071</h3>


1068 1099 

1069`load_test_mode` 블록을 사용하면 모델 공급자를 호출하지 않고 gateway를 부하 테스트할 수 있습니다. 켜져 있는 동안 gateway는 각 공급자 요청을 평소대로 빌드하고 서명하며, 보내지 않고 버리고, 정상적인 응답 경로를 통해 통조림 회신을 다시 스트리밍합니다. 회신은 통조림임을 말하는 문장으로 시작하는 채우기 텍스트입니다.1100`load_test_mode` 블록을 사용하면 모델 공급자를 호출하지 않고 gateway를 부하 테스트할 수 있습니다. 켜져 있는 동안 gateway는 각 공급자 요청을 평소대로 빌드하고 서명하며, 보내지 않고 버리고, 정상적인 응답 경로를 통해 통조림 회신을 다시 스트리밍합니다. 회신은 통조림임을 말하는 문장으로 시작하는 채우기 텍스트입니다.

1070 1101 

1071v2.1.282 이상이 필요합니다. 이전 버전은 키가 설정되면 시작을 거부하므로 모든 복제본을 업그레이드한 후 블록을 추가하고 롤백하기 전에 제거하세요.1102gateway 서버의 Claude Code v2.1.282 이상이 필요합니다. 이전 버전은 키가 설정되면 시작을 거부하므로 모든 복제본을 업그레이드한 후 블록을 추가하고 롤백하기 전에 제거하세요.

1072 1103 

1073아래 예제는 기본값으로 모드를 켜며, 약 10초에 걸쳐 스트리밍되는 750개 출력 토큰의 회신입니다:1104아래 예제는 기본값으로 모드를 켜며, 약 10초에 걸쳐 스트리밍되는 750개 출력 토큰의 회신입니다:

1074 1105 


1089 1120 

1090모드가 켜져 있는 동안 요청은 최대 7자리의 정수를 보유하는 `x-load-test-user` 헤더를 전달할 수 있으며, gateway는 각 숫자를 요청과 함께 온 개발자의 이메일 및 그룹을 가진 별도의 개발자로 계산합니다. 부하 테스트 배포에 자체 빈 데이터베이스를 제공하세요. gateway는 모드가 켜져 있고 개발자가 이미 무언가를 지출한 데이터베이스에 대해 시작을 거부합니다.1121모드가 켜져 있는 동안 요청은 최대 7자리의 정수를 보유하는 `x-load-test-user` 헤더를 전달할 수 있으며, gateway는 각 숫자를 요청과 함께 온 개발자의 이메일 및 그룹을 가진 별도의 개발자로 계산합니다. 부하 테스트 배포에 자체 빈 데이터베이스를 제공하세요. gateway는 모드가 켜져 있고 개발자가 이미 무언가를 지출한 데이터베이스에 대해 시작을 거부합니다.

1091 1122 

1092모드가 켜져 있는 동안 요청은 최대 7자리의 정수를 보유하는 `x-load-test-user` 헤더를 전달할 수 있으며, gateway는 각 숫자를 요청과 함께 온 개발자의 이메일 및 그룹을 가진 별도의 개발자로 계산합니다. 부하 테스트 배포에 자체 빈 데이터베이스를 제공하세요. gateway는 모드가 켜져 있고 개발자가 이미 무언가를 지출한 데이터베이스에 대해 시작을 거부합니다.

1093 

1094<Warning>1123<Warning>

1095 개발자가 사용하는 gateway에 대해 이를 켜지 마세요. 모든 요청은 통조림 회신을 받고 모델은 호출되지 않습니다. gateway는 부팅 시 `load_test_mode is on` 경고를 기록하고 모드가 켜져 있는 동안 각 `inference` [감사 이벤트](/docs/ko/claude-apps-gateway-deploy#logs)를 `load_test: true`로 표시합니다.1124 개발자가 사용하는 gateway에 대해 이를 켜지 마세요. 모든 요청은 통조림 회신을 받고 모델은 호출되지 않습니다. gateway는 부팅 시 `load_test_mode is on` 경고를 기록하고 모드가 켜져 있는 동안 각 `inference` [감사 이벤트](/docs/ko/claude-apps-gateway-deploy#logs)를 `load_test: true`로 표시합니다.

1096</Warning>1125</Warning>

Details

305| - | - | - |305| - | - | - |

306| 추론(프롬프트, 완료) | CLI → 게이트웨이 → 업스트림 | Anthropic API가 구성된 업스트림인 경우에만 |306| 추론(프롬프트, 완료) | CLI → 게이트웨이 → 업스트림 | Anthropic API가 구성된 업스트림인 경우에만 |

307| 텔레메트리(OTLP 메트릭, 플러스 [옵트인 로그 및 추적](/docs/ko/claude-apps-gateway-config#telemetry)) | CLI → 게이트웨이 → 수집기 | 절대 아님 |307| 텔레메트리(OTLP 메트릭, 플러스 [옵트인 로그 및 추적](/docs/ko/claude-apps-gateway-config#telemetry)) | CLI → 게이트웨이 → 수집기 | 절대 아님 |

308| ID(이메일, 그룹, sub) | IdP → 게이트웨이 → JWT → CLI; CLI는 OTLP 내보내기에 스탬프합니다. [`forward_user_identity`](/docs/ko/claude-apps-gateway-config#per-user-identity-headers-for-a-proxy-you-run)를 켜면, 게이트웨이는 개발자의 이메일과 IdP 주제를 헤더로 프록시에 보냅니다 | 절대 아님 |308| ID(이메일, 그룹, sub) | IdP → 게이트웨이 → CLI; CLI는 OTLP 내보내기에 스탬프합니다. [`forward_user_identity`](/docs/ko/claude-apps-gateway-config#per-user-identity-headers-for-a-proxy-you-run)를 켜면, 게이트웨이는 개발자의 이메일과 IdP 주제를 헤더로 프록시에 보냅니다 | 절대 아님 |

309| 관리형 설정 | 게이트웨이 YAML → CLI | 절대 아님 |309| 관리형 설정 | 게이트웨이 YAML → CLI | 절대 아님 |

310| 감사 로그 | 게이트웨이 stderr → 수집기 | 절대 아님 |310| 감사 로그 | 게이트웨이 stderr → 수집기 | 절대 아님 |

311 311 

Details

509 원격 측정509 원격 측정

510</h2>510</h2>

511 511 

512게이트웨이는 머신별 OTEL 구성 없이 개발자별 사용 메트릭을 제공합니다. Claude Code는 OpenTelemetry(OTLP) 메트릭, 로그 및 옵트인 추적을 내보냅니다. [사용 모니터링](/docs/ko/monitoring-usage)은 CLI가 보고하는 모든 것을 다룹니다. 게이트웨이 세션에서 CLI는 각 내보내기에 인증된 IdP ID 속성 `user.id`, `user.email`, `user.groups`를 스탬프하므로 사용이 `OTEL_RESOURCE_ATTRIBUTES` 배관 없이 개발자별로 롤업됩니다.512게이트웨이는 머신별 OTEL 구성 없이 개발자별 사용 메트릭을 제공합니다. Claude Code는 OpenTelemetry(OTLP) 메트릭, 로그 및 옵트인 추적을 내보냅니다. [사용 모니터링](/docs/ko/monitoring-usage)은 CLI가 보고하는 모든 것을 다룹니다. `/login`을 통해 로그인한 세션에서 CLI는 각 내보내기에 인증된 IdP ID 속성 `user.id`, `user.email`, `user.groups`를 스탬프하므로 사용이 개발자별로 롤업됩니다.

513 513 

514게이트웨이 자체는 인증된 OTLP 릴레이입니다. [`telemetry.forward_to`](/docs/ko/claude-apps-gateway-config#telemetry)를 `listen.public_url`과 함께 설정하면 모든 연결된 클라이언트에 OTEL 내보내기 설정을 푸시하고 OTLP 트래픽을 나열하는 각 대상으로 그대로 전달합니다. 각 대상은 메트릭, 로그, 추적을 독립적으로 옵트인하며, 기본값은 메트릭만입니다. 신호별 필드와 민감도 트레이드오프는 [`telemetry` 참조](/docs/ko/claude-apps-gateway-config#telemetry)를 참조하십시오. 게이트웨이는 원격 측정을 버퍼링, 집계 또는 저장하지 않으므로 데이터가 도달하는 위치는 전적으로 수집기의 내보내기 구성입니다.514게이트웨이 자체는 인증된 OTLP 릴레이입니다. [`telemetry.forward_to`](/docs/ko/claude-apps-gateway-config#telemetry)를 `listen.public_url`과 함께 설정하면 모든 연결된 클라이언트에 OTEL 내보내기 설정을 푸시하고 OTLP 트래픽을 나열하는 각 대상으로 그대로 전달합니다. 각 대상은 메트릭, 로그, 추적을 독립적으로 옵트인하며, 기본값은 메트릭만입니다. 신호별 필드와 민감도 트레이드오프는 [`telemetry` 참조](/docs/ko/claude-apps-gateway-config#telemetry)를 참조하십시오. 게이트웨이는 원격 측정을 버퍼링, 집계 또는 저장하지 않으므로 데이터가 도달하는 위치는 전적으로 수집기의 내보내기 구성입니다.

515 515 

Details

150* 디렉토리는 최소 하나의 커밋이 있는 git 저장소여야 합니다150* 디렉토리는 최소 하나의 커밋이 있는 git 저장소여야 합니다

151* 번들된 저장소는 100 MB 미만이어야 합니다. 더 큰 저장소는 현재 브랜치만 번들로 묶기로 폴백한 다음, 작업 트리의 단일 스쿼시된 스냅샷으로 폴백하고, 스냅샷이 여전히 너무 크면 실패합니다151* 번들된 저장소는 100 MB 미만이어야 합니다. 더 큰 저장소는 현재 브랜치만 번들로 묶기로 폴백한 다음, 작업 트리의 단일 스쿼시된 스냅샷으로 폴백하고, 스냅샷이 여전히 너무 크면 실패합니다

152* 추적되지 않은 파일은 포함되지 않습니다. 클라우드 세션이 볼 파일에 대해 `git add`를 실행합니다152* 추적되지 않은 파일은 포함되지 않습니다. 클라우드 세션이 볼 파일에 대해 `git add`를 실행합니다

153* macOS, Linux 및 WSL에서 Claude Code는 포함된 구성 파일에 설정된 `core.attributesFile`과 같이 파일에 적용되는 속성 규칙에 영향을 미치는 git 설정을 따를 수 없을 때 업로드를 거부합니다. [거부 메시지](/docs/ko/errors#the-repository-upload-cant-follow-a-git-setting)는 설정과 수정 방법을 이름으로 지정합니다

153* 번들에서 생성된 세션은 [GitHub 연결](#github-authentication-options)이 해당 저장소에 대한 푸시 액세스 권한을 가질 때만 GitHub 원격으로 다시 푸시할 수 있습니다154* 번들에서 생성된 세션은 [GitHub 연결](#github-authentication-options)이 해당 저장소에 대한 푸시 액세스 권한을 가질 때만 GitHub 원격으로 다시 푸시할 수 있습니다

154 155 

155<h3 id="send-follow-ups-from-the-cli">156<h3 id="send-follow-ups-from-the-cli">

Details

1569| `feedback/drafts/` | 대기 중인 [Claude 작성 피드백](/docs/ko/tools-reference#sendfeedback-tool-behavior). `/feedback`에서 검토 대기 중입니다. `cleanupPeriodDays` 또는 30일 후 스윕됨. 큐가 10개 초안 제한에 도달하면 Claude Code는 가장 오래된 초안을 삭제하여 공간을 확보합니다. |1569| `feedback/drafts/` | 대기 중인 [Claude 작성 피드백](/docs/ko/tools-reference#sendfeedback-tool-behavior). `/feedback`에서 검토 대기 중입니다. `cleanupPeriodDays` 또는 30일 후 스윕됨. 큐가 10개 초안 제한에 도달하면 Claude Code는 가장 오래된 초안을 삭제하여 공간을 확보합니다. |

1570| `usage-data/` | `report.html` 및 [`/insights`](/docs/ko/costs#analyze-your-usage-patterns)에 의해 작성된 타임스탬프 보고서 복사본, 그리고 이를 구축하는 데 사용되는 캐시된 세션별 분석 데이터 |1570| `usage-data/` | `report.html` 및 [`/insights`](/docs/ko/costs#analyze-your-usage-patterns)에 의해 작성된 타임스탬프 보고서 복사본, 그리고 이를 구축하는 데 사용되는 캐시된 세션별 분석 데이터 |

1571| `skills/.trash/`, `plugins/.trash/` | [Skills](/docs/ko/skills#how-synced-skills-behave) 및 [plugins](/docs/ko/plugins/loading#synced-plugins). claude.ai 동기화가 제거한 것. 예를 들어 claude.ai에서 하나를 끄거나 동기화를 중지한 후. 파일은 스윕이 삭제할 때까지 복구할 수 있도록 여기에 남아 있습니다 |1571| `skills/.trash/`, `plugins/.trash/` | [Skills](/docs/ko/skills#how-synced-skills-behave) 및 [plugins](/docs/ko/plugins/loading#synced-plugins). claude.ai 동기화가 제거한 것. 예를 들어 claude.ai에서 하나를 끄거나 동기화를 중지한 후. 파일은 스윕이 삭제할 때까지 복구할 수 있도록 여기에 남아 있습니다 |

1572| `plugins/installed_plugins.set-aside.<date>.<hash>.json`, `plugins/installed_plugins.unreadable.<date>.<hash>.kept` | Claude Code가 [`installed_plugins.json`](/docs/ko/plugins/loading#find-plugins-on-disk)을 다시 쓰기 전에 만드는 날짜가 지정된 복사본: 삭제한 설치 기록 및 읽을 수 없는 파일의 내용. |

1572| `todos/`, `statsig/`, `logs/` | 이전 버전의 레거시 디렉토리입니다. 더 이상 작성되지 않습니다. 스윕은 내용을 제거한 다음 빈 디렉토리를 제거합니다. |1573| `todos/`, `statsig/`, `logs/` | 이전 버전의 레거시 디렉토리입니다. 더 이상 작성되지 않습니다. 스윕은 내용을 제거한 다음 빈 디렉토리를 제거합니다. |

1573 1574 

1574`sessions/`의 세션 파일, 자동 메모리, Claude Desktop 및 Cowork 트랜스크립트는 각각 자체 보존 규칙을 따릅니다:1575`sessions/`의 세션 파일, 자동 메모리, Claude Desktop 및 Cowork 트랜스크립트는 각각 자체 보존 규칙을 따릅니다:


1715| `~/.claude/policy-limits.json` | 없음. 자동으로 새로 고쳐집니다. |1716| `~/.claude/policy-limits.json` | 없음. 자동으로 새로 고쳐집니다. |

1716| `~/.claude/tasks/` | 재개된 세션이 선택할 작업 목록 |1717| `~/.claude/tasks/` | 재개된 세션이 선택할 작업 목록 |

1717| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | [동기화된 skills](/docs/ko/skills#how-synced-skills-behave) 및 [동기화된 plugins](/docs/ko/plugins/loading#synced-plugins)를 복구할 기회. Claude Code가 제거한 것 |1718| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | [동기화된 skills](/docs/ko/skills#how-synced-skills-behave) 및 [동기화된 plugins](/docs/ko/plugins/loading#synced-plugins)를 복구할 기회. Claude Code가 제거한 것 |

1719| `~/.claude/plugins/installed_plugins.set-aside.<date>.<hash>.json`, `~/.claude/plugins/installed_plugins.unreadable.<date>.<hash>.kept` | Claude Code가 삭제했거나 읽을 수 없는 plugin 설치 기록의 복사본. 아무것도 이를 다시 읽지 않습니다 |

1718| `~/.claude/debug/`, `~/.claude/plans/`, `~/.claude/session-env/`, `~/.claude/shell-snapshots/`, `~/.claude/backups/` | 사용자 대면 없음 |1720| `~/.claude/debug/`, `~/.claude/plans/`, `~/.claude/session-env/`, `~/.claude/shell-snapshots/`, `~/.claude/backups/` | 사용자 대면 없음 |

1719| `~/.claude/todos/`, `~/.claude/statsig/`, `~/.claude/logs/`, `~/.claude/image-cache/` | 없음. 현재 버전에서 작성되지 않는 레거시 디렉토리. |1721| `~/.claude/todos/`, `~/.claude/statsig/`, `~/.claude/logs/`, `~/.claude/image-cache/` | 없음. 현재 버전에서 작성되지 않는 레거시 디렉토리. |

1720 1722 

Details

6 6 

7> Claude Security 플러그인을 설치하여 Claude Code 세션에서 코드베이스의 취약점을 스캔하고 발견 사항을 검토 및 적용할 수 있는 패치로 변환합니다.7> Claude Security 플러그인을 설치하여 Claude Code 세션에서 코드베이스의 취약점을 스캔하고 발견 사항을 검토 및 적용할 수 있는 패치로 변환합니다.

8 8 

9Claude Security 플러그인은 Claude Code 세션 내에서 코드베이스의 다중 에이전트 취약점 스캔을 실행합니다. Claude 에이전트 팀이 아키텍처를 매핑하고, 위협 모델을 구축하고, 취약점을 찾고, 보고서를 작성하기 전에 모든 발견 사항을 독립적으로 검토합니다. 플러그인을 사용하여 전체 저장소를 스캔하거나 [변경 사항만 스캔](#scan-only-your-changes)할 수 있습니다. 예를 들어 브랜치의 diff, 풀 요청의 diff 또는 단일 커밋과 같은 변경 사항 집합을 스캔한 후, 선택한 발견 사항을 검토하고 직접 적용할 수 있는 패치로 변환합니다.9Claude Security 플러그인은 Claude Code 세션 내에서 코드베이스의 다중 에이전트 취약점 스캔을 실행합니다. Claude 에이전트 팀이 아키텍처를 매핑하고, 위협 모델을 구축하고, 취약점을 찾으며, 보고서를 작성하기 전에 모든 발견 사항을 독립적으로 검토합니다. 플러그인을 사용하여 전체 저장소를 스캔하거나 [변경 사항만 스캔](#scan-only-your-changes)할 수 있습니다. 예를 들어 브랜치의 diff, 풀 요청의 diff 또는 단일 커밋을 스캔한 후, 선택한 발견 사항을 검토하고 직접 적용할 수 있는 패치로 변환합니다.

10 10 

11플러그인은 세션에서 로컬로 실행되며, Claude Code에서 액세스할 수 있는 모든 모델을 사용하고, 각 스캔은 플랜의 사용량 제한에 포함됩니다. 저장소를 모니터링하는 관리형 서비스를 원하거나 [Claude Mythos 5](https://platform.claude.com/docs/en/about-claude/models/introducing-claude-fable-5-and-claude-mythos-5)에서 스캔을 실행하려면 Enterprise 플랜에서 사용 가능한 [Claude Security](https://claude.com/product/claude-security) 제품을 참조하세요. 플러그인은 관리형 제품이 도달할 수 없는 코드에 접근할 수 있습니다. 예를 들어 GitLab 또는 Bitbucket에서 호스팅되는 저장소나 인바운드 연결을 허용하지 않는 네트워크의 저장소입니다.11플러그인은 세션에서 로컬로 실행되며, [Claude Code에서 액세스할 수 있는 모든 모델을 사용](#models-and-providers)하고, 각 스캔은 [사용량](/docs/ko/costs)에 포함됩니다. 저장소를 모니터링하는 관리형 서비스를 원하거나 [Claude Mythos](https://platform.claude.com/docs/en/about-claude/models/introducing-claude-fable-5-and-claude-mythos-5)에서 스캔을 실행하려면 Enterprise 플랜에서 사용 가능한 [Claude Security](https://claude.com/product/claude-security) 제품을 참조하십시오. 플러그인은 GitLab 또는 Bitbucket에서 호스팅되는 저장소나 인바운드 연결을 허용하지 않는 네트워크의 저장소와 같이 관리형 제품이 도달할 수 없는 코드에 도달합니다.

12 12 

13플러그인은 Claude Code에 이미 있는 검토 도구와도 다릅니다. [보안 지침 플러그인](/docs/ko/security-guidance)은 Claude가 코드를 작성할 때 검토하고, [`/security-review`](/docs/ko/commands#all-commands)는 브랜치에 대해 한 번의 패스를 실행하며, [Code Review](/docs/ko/code-review)는 풀 요청을 검토합니다. 계층이 어떻게 쌓이는지는 [플러그인이 다른 보안 도구와 어떻게 맞는지](#how-the-plugin-fits-with-other-security-tools)를 참조하세요.13플러그인은 Claude Code에 이미 있는 검토 도구와도 다릅니다. [보안 지침 플러그인](/docs/ko/security-guidance)은 Claude가 코드를 작성할 때 검토하고, [`/security-review`](/docs/ko/commands#all-commands)는 브랜치에 대해 단일 패스를 실행하며, [Code Review](/docs/ko/code-review)는 풀 요청을 검토합니다. 계층이 어떻게 쌓이는지에 대해서는 [플러그인이 다른 보안 도구와 어떻게 맞는지](#how-the-plugin-fits-with-other-security-tools)를 참조하십시오.

14 14 

15<h2 id="prerequisites">15<h2 id="prerequisites">

16 필수 조건16 필수 요구사항

17</h2>17</h2>

18 18 

19플러그인을 실행하려면 다음이 필요합니다.19플러그인을 실행하려면 다음이 필요합니다:

20 20 

21* 유료 플랜. 스캔이 에이전트를 조율하는 데 사용하는 [동적 워크플로우](/docs/ko/workflows)를 위해서입니다. Pro에서는 `/config`의 Dynamic workflows 행에서 켜세요.21* 유료 플랜, Anthropic API 접근 권한, 또는 [타사 제공자](#models-and-providers) - 스캔이 에이전트를 조율하는 데 사용하는 [동적 워크플로우](/docs/ko/workflows)를 위해 필요합니다. Pro에서는 `/config`의 Dynamic workflows 행에서 활성화하십시오.

22* Python 3.9 이상이 `PATH`에서 `python3`로 사용 가능해야 합니다. `python3 --version`으로 확인하세요. 플러그인의 도구는 Python 표준 라이브러리만 사용하므로 아무것도 설치되지 않습니다.22* Python 3.9 이상이 `PATH`에서 `python3`로 사용 가능해야 합니다. `python3 --version`으로 확인하십시오. 플러그인의 도구는 Python 표준 라이브러리만 사용하므로 설치되는 것이 없습니다.

23* Linux, macOS 또는 Windows.23* Linux, macOS 또는 Windows.

24* Git. 변경 사항 스캔 및 발견 사항을 패치로 변환하기 위해 필요합니다. 이러한 작업은 다른 버전 관리 시스템을 지원하지 않습니다. 전체 스캔은 버전 관리 여부와 관계없이 모든 디렉토리에서 작동합니다.24* Git - 변경 사항 스캔 및 발견 사항을 패치로 변환하기 위해 필요합니다. 이러한 작업은 다른 버전 관리 시스템을 지원하지 않습니다. 전체 스캔은 버전 관리 시스템이 있거나 없는 모든 디렉터리에서 작동합니다.

25 

26<h2 id="models-and-providers">

27 모델 및 공급자

28</h2>

29 

30스캔은 Claude Code 세션 내에서 실행됩니다. 플러그인은 자체적으로 모델 호출을 하지 않으므로 별도의 API 키나 공급자 설정을 구성할 필요가 없습니다.

31 

32* **모델**: 취약점을 찾고, 발견 사항을 검증하며, 패치를 작성하고 검토하는 에이전트는 [세션의 모델](/docs/ko/sub-agents#choose-a-model)에서 실행됩니다. 이를 변경하려면 스캔을 시작하기 전에 세션에서 [`/model`](/docs/ko/model-config#setting-your-model)을 실행하십시오. 저장소 매핑과 같은 몇 가지 지원 단계는 대신 [`sonnet` 별칭](/docs/ko/model-config#model-aliases)을 사용합니다.

33* **공급자**: 스캔은 유료 플랜, Anthropic API 액세스 또는 [Amazon Bedrock](/docs/ko/amazon-bedrock), [Google Cloud의 Agent Platform](/docs/ko/google-vertex-ai), [Microsoft Foundry](/docs/ko/microsoft-foundry)와 같은 [타사 공급자](/docs/ko/third-party-integrations)에서 실행됩니다.

34 

35타사 공급자에서 `sonnet` 별칭은 Anthropic API에서와 다른 버전으로 확인될 수 있습니다. 계정이 해당 버전을 사용할 수 없는 경우 `ANTHROPIC_DEFAULT_SONNET_MODEL`을 포함하여 [모델 버전을 고정](/docs/ko/model-config#pin-models-for-third-party-deployments)하십시오.

36 

37[자동 모델 폴백](/docs/ko/model-config#automatic-model-fallback)은 모델의 보안 조치가 플래그를 지정한 요청을 다시 실행합니다. Amazon Bedrock, Google Cloud의 Agent Platform 및 Microsoft Foundry에서는 [배포 설정 방식](/docs/ko/model-config#enable-fallback-on-bedrock-agent-platform-and-foundry)에 따라 요청이 거부 메시지로 끝날 수 있습니다.

25 38 

26<h2 id="install-the-plugin">39<h2 id="install-the-plugin">

27 플러그인 설치40 플러그인 설치


156 169 

157**`/claude-security` 메뉴가 Python 경고와 함께 열립니다.** 플러그인에는 `PATH`에서 `python3` 3.9 이상이 필요합니다. 전혀 `python3`를 찾을 수 없으면 메뉴는 Claude Security가 설치될 때까지 작동하지 않는다고 경고합니다. `PATH`의 첫 번째 `python3`가 더 오래되면 경고는 찾은 버전을 이름으로 지정합니다. Python 3을 설치하거나 더 새로운 `python3`를 `PATH`의 첫 번째에 놓은 후 새 세션을 시작하세요.170**`/claude-security` 메뉴가 Python 경고와 함께 열립니다.** 플러그인에는 `PATH`에서 `python3` 3.9 이상이 필요합니다. 전혀 `python3`를 찾을 수 없으면 메뉴는 Claude Security가 설치될 때까지 작동하지 않는다고 경고합니다. `PATH`의 첫 번째 `python3`가 더 오래되면 경고는 찾은 버전을 이름으로 지정합니다. Python 3을 설치하거나 더 새로운 `python3`를 `PATH`의 첫 번째에 놓은 후 새 세션을 시작하세요.

158 171 

159**Fable 모델에서 스캔할 때 "safeguards flagged this message" 알림이 표시될 수 있습니다.** 메시지는 모델을 이름으로 지정합니다. 예를 들어 "Fable 5.1's safeguards flagged this message"입니다. Fable의 사이버 보안 안전 분류자는 특정 요청을 플래그하며, Claude Code는 [자동 모델 폴백](/docs/ko/model-config#automatic-model-fallback)을 통해 플래그된 요청을 Opus 모델에서 다시 실행합니다. 이는 예상된 동작이며, 스캔은 여전히 성공적으로 완료되어야 합니다.172**Fable 모델에서 스캔할 때 "safeguards flagged this message" 알림이 표시될 수 있습니다.** 메시지는 실행 중인 모델을 이름으로 지정합니다. Fable의 사이버 보안 안전 분류자는 특정 요청을 플래그하며, Claude Code는 [자동 모델 폴백](/docs/ko/model-config#automatic-model-fallback)을 통해 플래그된 요청을 Opus 모델에서 다시 실행합니다. 이는 예상된 동작입니다. 요청이 다시 실행되면 스캔은 여전히 성공적으로 완료되어야 합니다.

160 173 

161<h2 id="related-resources">174<h2 id="related-resources">

162 관련 리소스175 관련 리소스

Details

22| `claude -c -p "query"` | SDK를 통해 계속 | `claude -c -p "Check for type errors"` |22| `claude -c -p "query"` | SDK를 통해 계속 | `claude -c -p "Check for type errors"` |

23| `claude -r "<session>" "query"` | ID 또는 이름으로 세션 재개 | `claude -r "auth-refactor" "Finish this PR"` |23| `claude -r "<session>" "query"` | ID 또는 이름으로 세션 재개 | `claude -r "auth-refactor" "Finish this PR"` |

24| `claude update` | 최신 버전으로 업데이트 | `claude update` |24| `claude update` | 최신 버전으로 업데이트 | `claude update` |

25| `claude gateway` | 자체 호스팅 [Claude 앱 게이트웨이](/docs/ko/claude-apps-gateway) 서버를 시작합니다. Amazon Bedrock, Google Cloud의 Agent Platform 또는 Microsoft Foundry의 Claude Code 앞에 SSO 및 정책을 배포하는 관리자용입니다. [`gateway.yaml`](/docs/ko/claude-apps-gateway-config)을 가리키는 `--config`가 필요합니다. Claude Code v2.1.195 이상에서 사용 가능합니다. | `claude gateway --config gateway.yaml` |25| `claude gateway` | 자체 호스팅 [Claude 앱 게이트웨이](/docs/ko/claude-apps-gateway) 서버를 시작합니다. Amazon Bedrock, Google Cloud의 Agent Platform 또는 Microsoft Foundry의 Claude Code 앞에 SSO 및 정책을 배포하는 관리자용입니다. [`gateway.yaml`](/docs/ko/claude-apps-gateway-config)을 가리키는 `--config`가 필요합니다. | `claude gateway --config gateway.yaml` |

26| `claude install [version]` | 네이티브 바이너리를 설치하거나 재설치합니다. `2.1.118`과 같은 버전, 또는 `stable` 또는 `latest`를 허용합니다. [특정 버전 설치](/docs/ko/setup#install-a-specific-version) 참조 | `claude install stable` |26| `claude install [version]` | 네이티브 바이너리를 설치하거나 재설치합니다. `2.1.118`과 같은 버전, 또는 `stable` 또는 `latest`를 허용합니다. [특정 버전 설치](/docs/ko/setup#install-a-specific-version) 참조 | `claude install stable` |

27| `claude auth login` | Anthropic 계정에 로그인합니다. `--email`을 사용하여 이메일 주소를 미리 입력하고, `--sso`를 사용하여 SSO 인증을 강제하고, `--console`을 사용하여 Claude 구독 대신 API 사용 청구를 위해 Anthropic Console로 로그인할 수 있습니다 | `claude auth login --console` |27| `claude auth login` | Anthropic 계정에 로그인합니다. `--email`을 사용하여 이메일 주소를 미리 입력하고, `--sso`를 사용하여 SSO 인증을 강제하고, `--console`을 사용하여 Claude 구독 대신 API 사용 청구를 위해 Anthropic Console로 로그인할 수 있습니다 | `claude auth login --console` |

28| `claude auth logout` | Anthropic 계정에서 로그아웃합니다 | `claude auth logout` |28| `claude auth logout` | Anthropic 계정에서 로그아웃합니다 | `claude auth logout` |

Details

566 * platform.claude.com566 * platform.claude.com

567 * code.claude.com567 * code.claude.com

568 * claude.ai568 * claude.ai

569 * claude.com

570 * support.claude.com

571 * anthropic.com

572 * [www.anthropic.com](http://www.anthropic.com)

569 </Accordion>573 </Accordion>

570 574 

571 <Accordion title="버전 제어">575 <Accordion title="버전 제어">


596 * hub.docker.com600 * hub.docker.com

597 * [www.docker.com](http://www.docker.com)601 * [www.docker.com](http://www.docker.com)

598 * production.cloudflare.docker.com602 * production.cloudflare.docker.com

603 * production.cloudfront.docker.com

599 * download.docker.com604 * download.docker.com

600 * gcr.io605 * gcr.io

601 * \*.gcr.io606 * \*.gcr.io

commands.md +6 −3

Details

56| `/add-dir <path>` | 현재 세션 중에 파일 액세스를 위한 작업 디렉토리를 추가합니다. 부분 경로를 입력하여 일치하는 디렉토리 제안을 확인하고, `Tab`을 눌러 하나를 수락합니다. 대부분의 `.claude/` 구성은 추가된 디렉토리에서 [발견되지 않습니다](/docs/ko/permissions#additional-directories-grant-file-access-not-configuration). 대부분의 [네트워크 경로](/docs/ko/errors#working-directory-is-a-network-path)(예: `\\server\share`)를 추가할 수 없습니다. 성공적으로 추가한 후 [`DirectoryAdded` 훅](/docs/ko/hooks#directoryadded)이 실행됩니다. Claude가 응답하는 동안 실행하면 Claude Code가 디렉토리를 즉시 확인하도록 요청하고, 확인하면 Claude의 같은 턴의 다음 도구 호출이 이에 액세스할 수 있습니다. v2.1.234 이전에는 Claude Code가 턴이 끝날 때까지 명령어를 대기열에 넣었습니다. |56| `/add-dir <path>` | 현재 세션 중에 파일 액세스를 위한 작업 디렉토리를 추가합니다. 부분 경로를 입력하여 일치하는 디렉토리 제안을 확인하고, `Tab`을 눌러 하나를 수락합니다. 대부분의 `.claude/` 구성은 추가된 디렉토리에서 [발견되지 않습니다](/docs/ko/permissions#additional-directories-grant-file-access-not-configuration). 대부분의 [네트워크 경로](/docs/ko/errors#working-directory-is-a-network-path)(예: `\\server\share`)를 추가할 수 없습니다. 성공적으로 추가한 후 [`DirectoryAdded` 훅](/docs/ko/hooks#directoryadded)이 실행됩니다. Claude가 응답하는 동안 실행하면 Claude Code가 디렉토리를 즉시 확인하도록 요청하고, 확인하면 Claude의 같은 턴의 다음 도구 호출이 이에 액세스할 수 있습니다. v2.1.234 이전에는 Claude Code가 턴이 끝날 때까지 명령어를 대기열에 넣었습니다. |

57| `/advisor [model\|off]` | [어드바이저 도구](/docs/ko/advisor)를 활성화 또는 비활성화합니다. 어드바이저 도구는 작업 중 주요 순간에 두 번째 모델에 지침을 요청합니다. `fable`, `opus`, `sonnet` 또는 전체 모델 ID를 허용합니다. `fable`은 [Fable 액세스](/docs/ko/advisor#choose-an-advisor-model)가 필요합니다. 인수 없이 선택기를 엽니다. 대화형 터미널이 없는 세션이나 [원격 제어](/docs/ko/remote-control#limitations)를 통해 모델 또는 `off`를 인수로 전달합니다. 인수가 없으면 명령어가 현재 어드바이저를 텍스트로 출력합니다. 이러한 형식은 Claude Code v2.1.260 이상이 필요합니다. |57| `/advisor [model\|off]` | [어드바이저 도구](/docs/ko/advisor)를 활성화 또는 비활성화합니다. 어드바이저 도구는 작업 중 주요 순간에 두 번째 모델에 지침을 요청합니다. `fable`, `opus`, `sonnet` 또는 전체 모델 ID를 허용합니다. `fable`은 [Fable 액세스](/docs/ko/advisor#choose-an-advisor-model)가 필요합니다. 인수 없이 선택기를 엽니다. 대화형 터미널이 없는 세션이나 [원격 제어](/docs/ko/remote-control#limitations)를 통해 모델 또는 `off`를 인수로 전달합니다. 인수가 없으면 명령어가 현재 어드바이저를 텍스트로 출력합니다. 이러한 형식은 Claude Code v2.1.260 이상이 필요합니다. |

58| `/agents` | v2.1.198부터 `/agents`를 실행하면 Claude에 [서브에이전트](/docs/ko/sub-agents)를 생성하거나 관리하도록 요청하거나 `.claude/agents/` 또는 `~/.claude/agents/`를 직접 편집하라는 알림이 출력됩니다. v2.1.197 이전에는 서브에이전트 구성을 생성하고 관리하기 위한 대화형 인터페이스를 엽니다. |58| `/agents` | v2.1.198부터 `/agents`를 실행하면 Claude에 [서브에이전트](/docs/ko/sub-agents)를 생성하거나 관리하도록 요청하거나 `.claude/agents/` 또는 `~/.claude/agents/`를 직접 편집하라는 알림이 출력됩니다. v2.1.197 이전에는 서브에이전트 구성을 생성하고 관리하기 위한 대화형 인터페이스를 엽니다. |

59| `/artifact-capabilities` | **[스킬](/docs/ko/skills#bundled-skills).** 게시된 [아티팩트](/docs/ko/artifacts)가 사용할 수 있는 런타임 기능에 대한 참조를 로드합니다. 예를 들어 [커넥터 호출](/docs/ko/artifacts#pull-live-data-with-mcp-connectors) 또는 [파일 다운로드 제공](/docs/ko/artifacts#offer-a-file-download)을 포함하여 계정이 보유한 기능을 포함합니다. Claude는 일반적으로 이 중 하나를 사용하는 페이지를 빌드하기 전에 자동으로 로드합니다. [아티팩트](/docs/ko/artifacts#availability)를 사용할 수 있는 곳에서 사용 가능합니다. |

60| `/artifact-diagramming` | **[스킬](/docs/ko/skills#bundled-skills).** [아티팩트](/docs/ko/artifacts)에서 따를 다이어그래밍 지침을 로드합니다. 다이어그램이 도움이 되는 경우, 그릴 내용 및 밝은 테마와 어두운 테마에서 읽을 수 있는 인라인 SVG를 작성하는 방법을 포함합니다. Claude Code v2.1.221 이상이 필요합니다. |

59| `/artifacts` | 소유하거나 공유받은 [아티팩트](/docs/ko/artifacts#find-an-artifact-again)를 나열한 다음 하나를 세션에 첨부하거나 브라우저에서 열거나 링크를 복사합니다. [아티팩트](/docs/ko/artifacts#availability)를 사용할 수 있는 곳에서 사용 가능합니다. Claude Code v2.1.208 이상이 필요합니다. `Enter`로 첨부하려면 v2.1.216이 필요합니다. |61| `/artifacts` | 소유하거나 공유받은 [아티팩트](/docs/ko/artifacts#find-an-artifact-again)를 나열한 다음 하나를 세션에 첨부하거나 브라우저에서 열거나 링크를 복사합니다. [아티팩트](/docs/ko/artifacts#availability)를 사용할 수 있는 곳에서 사용 가능합니다. Claude Code v2.1.208 이상이 필요합니다. `Enter`로 첨부하려면 v2.1.216이 필요합니다. |

60| `/auto-mode-setup` | 프로젝트 및 최근 세션에서 [`autoMode.environment` 항목](/docs/ko/auto-mode-config#generate-environment-entries)을 [초안 작성](/docs/ko/auto-mode-config#generate-environment-entries)한 다음 초안을 검토하고 사용자 설정에 저장합니다. Pro, Max 또는 Team 플랜과 Claude Code v2.1.228 이상이 필요합니다. 기본 Windows에서는 v2.1.233 이상이 필요합니다. |62| `/auto-mode-setup` | 프로젝트 및 최근 세션에서 [`autoMode.environment` 항목](/docs/ko/auto-mode-config#generate-environment-entries)을 [초안 작성](/docs/ko/auto-mode-config#generate-environment-entries)한 다음 초안을 검토하고 사용자 설정에 저장합니다. Pro, Max 또는 Team 플랜과 Claude Code v2.1.228 이상이 필요합니다. 기본 Windows에서는 v2.1.233 이상이 필요합니다. |

61| `/autocompact [auto\|<tokens>]` | 자동 압축 윈도우를 설정합니다. Claude Code가 자동으로 압축하기 전에 컨텍스트 윈도우가 얼마나 찬지를 나타냅니다. `500k`와 같은 크기를 전달하거나 `auto`를 전달하여 모델에 맞게 조정된 윈도우로 돌아갑니다. Claude Code는 값을 사용자 설정에 저장하고 현재 세션에 적용합니다. 허용되는 값과 이를 재정의하는 항목은 [자동 압축 윈도우 설정](/docs/ko/model-config#set-the-auto-compact-window)을 참조하십시오. 인수 없이 현재 윈도우를 표시하는 대화를 엽니다. Claude Code v2.1.221 이상이 필요합니다. |63| `/autocompact [auto\|<tokens>]` | 자동 압축 윈도우를 설정합니다. Claude Code가 자동으로 압축하기 전에 컨텍스트 윈도우가 얼마나 찬지를 나타냅니다. `500k`와 같은 크기를 전달하거나 `auto`를 전달하여 모델에 맞게 조정된 윈도우로 돌아갑니다. Claude Code는 값을 사용자 설정에 저장하고 현재 세션에 적용합니다. 허용되는 값과 이를 재정의하는 항목은 [자동 압축 윈도우 설정](/docs/ko/model-config#set-the-auto-compact-window)을 참조하십시오. 인수 없이 현재 윈도우를 표시하는 대화를 엽니다. Claude Code v2.1.221 이상이 필요합니다. |


67| `/bug [report]` | 버그를 보고하거나 대화를 공유합니다. 포함할 세션 기록의 양을 선택하고 무엇이든 전송되기 전에 동의 화면에서 확인합니다. Anthropic에 첫 번째 당사자 연결로 로그인하면 보고서가 Anthropic으로 이동합니다. 타사 제공자 또는 Anthropic 자격 증명 없이 Claude Code는 보고서를 [`~/.claude/feedback-bundles/`](/docs/ko/data-usage#telemetry-services) 아래의 [로컬 아카이브](/docs/ko/data-usage#telemetry-services)에 작성하여 직접 전달합니다. [VS Code 확장](/docs/ko/vs-code#use-the-prompt-box)에서 `/bug`는 대신 확장의 자체 피드백 대화를 엽니다. Claude Code v2.1.229 이상이 필요합니다. Claude가 응답하는 동안 실행하면 Claude Code가 대화를 즉시 엽니다. v2.1.232 이전에는 Claude Code가 턴이 끝날 때까지 명령어를 대기열에 넣었습니다. 별칭: `/share`. v2.1.212 이전에는 `/bug`와 `/share`가 `/feedback`의 별칭이었습니다. |69| `/bug [report]` | 버그를 보고하거나 대화를 공유합니다. 포함할 세션 기록의 양을 선택하고 무엇이든 전송되기 전에 동의 화면에서 확인합니다. Anthropic에 첫 번째 당사자 연결로 로그인하면 보고서가 Anthropic으로 이동합니다. 타사 제공자 또는 Anthropic 자격 증명 없이 Claude Code는 보고서를 [`~/.claude/feedback-bundles/`](/docs/ko/data-usage#telemetry-services) 아래의 [로컬 아카이브](/docs/ko/data-usage#telemetry-services)에 작성하여 직접 전달합니다. [VS Code 확장](/docs/ko/vs-code#use-the-prompt-box)에서 `/bug`는 대신 확장의 자체 피드백 대화를 엽니다. Claude Code v2.1.229 이상이 필요합니다. Claude가 응답하는 동안 실행하면 Claude Code가 대화를 즉시 엽니다. v2.1.232 이전에는 Claude Code가 턴이 끝날 때까지 명령어를 대기열에 넣었습니다. 별칭: `/share`. v2.1.212 이전에는 `/bug`와 `/share`가 `/feedback`의 별칭이었습니다. |

68| `/cd <path>` | 이 세션을 새 작업 디렉토리로 이동하여 대화를 유지합니다. 부분 경로를 입력하여 일치하는 디렉토리 제안을 확인하고, `Tab`을 눌러 하나를 수락합니다. 제안은 Claude Code v2.1.206 이상이 필요합니다. Claude Code가 새 디렉토리로 이동할 때 즉시 적용하는 항목과 `/cd`가 `/add-dir`과 어떻게 다른지는 [세션을 다른 디렉토리로 이동](/docs/ko/permissions#move-the-session-to-another-directory)을 참조하십시오. |70| `/cd <path>` | 이 세션을 새 작업 디렉토리로 이동하여 대화를 유지합니다. 부분 경로를 입력하여 일치하는 디렉토리 제안을 확인하고, `Tab`을 눌러 하나를 수락합니다. 제안은 Claude Code v2.1.206 이상이 필요합니다. Claude Code가 새 디렉토리로 이동할 때 즉시 적용하는 항목과 `/cd`가 `/add-dir`과 어떻게 다른지는 [세션을 다른 디렉토리로 이동](/docs/ko/permissions#move-the-session-to-another-directory)을 참조하십시오. |

69| `/chrome` | [Chrome의 Claude](/docs/ko/chrome) 설정을 구성합니다. |71| `/chrome` | [Chrome의 Claude](/docs/ko/chrome) 설정을 구성합니다. |

70| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb]` | **[스킬](/docs/ko/skills#bundled-skills).** 프로젝트의 언어에 대한 [Claude API](https://platform.claude.com/docs/en/api/overview) 및 [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) 참조 자료를 로드합니다. 코드가 `anthropic` 또는 `@anthropic-ai/sdk`를 가져올 때도 자동으로 활성화됩니다. `migrate`를 실행하여 기존 Claude API 코드를 최신 모델로 업데이트합니다. 프로젝트의 Anthropic SDK 종속성을 주요 버전 간에 이동하려면 `upgrade`를 실행합니다. 현재 Python `anthropic` 패키지를 0.x에서 1.x로 이동합니다. 새 Managed Agent를 생성하는 연습을 위해 `managed-agents-onboard`를 실행합니다. 프롬프트, 스킬 및 도구 설명에서 이전 모델용으로 작성된 지침을 플래그하고 diff로 수정 사항을 제안하려면 `prompt-audit`를 실행합니다. 프로젝트의 Claude API 지출이 어디로 가는지 프로파일링하고 프롬프트 캐싱, 불필요한 입력 및 출력 토큰 제거, 배치 처리, 노력 및 모델 선택과 같은 옵션에서 절감을 제안하려면 `cost-optimize`를 실행합니다. 한 번에 한 가지 변경씩 진행합니다. Claude 기반 앱에 대한 평가 세트를 구축하려면 `build-eval`을 실행하고, 기존 평가에 대해 앱을 반복적으로 개선하려면 `hillclimb`를 실행합니다. `prompt-audit` 하위 명령어는 Claude Code v2.1.221 이상이 필요하고, `upgrade`는 v2.1.236 이상이 필요하며, `cost-optimize`는 v2.1.247 이상이 필요하고, `build-eval` 및 `hillclimb`는 v2.1.259 이상이 필요합니다. |72| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb\|preserved-thinking-migration]` | **[스킬](/docs/ko/skills#bundled-skills).** 프로젝트의 언어에 대한 [Claude API](https://platform.claude.com/docs/en/api/overview) 및 [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) 참조 자료를 로드합니다. 코드가 `anthropic` 또는 `@anthropic-ai/sdk`를 가져올 때도 자동으로 활성화됩니다. 각 하위 명령어가 수행하는 작업과 필요한 버전은 [Claude API 프로젝트에서 작업](/docs/ko/skills#work-on-claude-api-projects)을 참조하십시오. |

73| `/claude-in-chrome [task]` | **[스킬](/docs/ko/skills#bundled-skills).** Claude가 [Chrome의 Claude](/docs/ko/chrome)를 통해 페이지 테스트, 양식 작성 또는 콘솔 로그 읽기와 같은 작업을 브라우저에서 수행하도록 합니다. Chrome 통합이 세션에 대해 활성화된 경우(예: `claude --chrome`) 또는 Claude Code가 [확장 설치](/docs/ko/chrome#install-the-extension-when-claude-asks)를 제공할 수 있을 때 사용 가능합니다. |

71| `/clear [name]` | 빈 컨텍스트로 새 대화를 시작합니다. 이전 대화를 `/resume` 선택기에서 레이블을 지정하려면 이름을 전달합니다. 같은 대화를 계속하면서 컨텍스트를 확보하려면 `/compact`를 대신 사용합니다. `/resume`으로 이전 대화를 재개하거나 같은 Claude Code 프로세스에서 [되감기 메뉴의 이전 세션 항목](/docs/ko/checkpointing#rewind-past-a-cleared-conversation)에서 복원합니다. 별칭: `/reset`, `/new` |74| `/clear [name]` | 빈 컨텍스트로 새 대화를 시작합니다. 이전 대화를 `/resume` 선택기에서 레이블을 지정하려면 이름을 전달합니다. 같은 대화를 계속하면서 컨텍스트를 확보하려면 `/compact`를 대신 사용합니다. `/resume`으로 이전 대화를 재개하거나 같은 Claude Code 프로세스에서 [되감기 메뉴의 이전 세션 항목](/docs/ko/checkpointing#rewind-past-a-cleared-conversation)에서 복원합니다. 별칭: `/reset`, `/new` |

72| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[스킬](/docs/ko/skills#bundled-skills).** 현재 diff 또는 전달한 PR 번호, 분기 또는 경로를 정확성 버그에 대해 검토합니다. 모델 및 노력 수준에 따라 검토는 정리 기회도 포함합니다. `--fix`를 전달하여 결과를 적용하고, `--comment`를 전달하여 GitHub PR 또는 GitLab 병합 요청에 게시하거나, `ultra`를 전달하여 깊은 [클라우드 검토](/docs/ko/ultrareview)를 실행합니다. GitLab 병합 요청에 게시하려면 Claude Code v2.1.257 이상이 필요합니다. `github.com` PR 대상에서 `ultra`를 사용하면 `--post`를 전달하여 시작 대화에서 [완료된 결과를 PR에 게시](/docs/ko/ultrareview#post-findings-to-the-pull-request)하는 것을 미리 선택합니다. `--post`는 Claude Code v2.1.227 이상이 필요합니다. 노력 수준, 대상 지정 및 `/simplify`와의 관계는 [로컬에서 diff 검토](/docs/ko/code-review#review-a-diff-locally)를 참조하십시오. 별칭: `/review` |75| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[스킬](/docs/ko/skills#bundled-skills).** 현재 diff 또는 전달한 PR 번호, 분기 또는 경로를 정확성 버그에 대해 검토합니다. 모델 및 노력 수준에 따라 검토는 정리 기회도 포함합니다. `--fix`를 전달하여 결과를 적용하고, `--comment`를 전달하여 GitHub PR 또는 GitLab 병합 요청에 게시하거나, `ultra`를 전달하여 깊은 [클라우드 검토](/docs/ko/ultrareview)를 실행합니다. GitLab 병합 요청에 게시하려면 Claude Code v2.1.257 이상이 필요합니다. `github.com` PR 대상에서 `ultra`를 사용하면 `--post`를 전달하여 시작 대화에서 [완료된 결과를 PR에 게시](/docs/ko/ultrareview#post-findings-to-the-pull-request)하는 것을 미리 선택합니다. `--post`는 Claude Code v2.1.227 이상이 필요합니다. 노력 수준, 대상 지정 및 `/simplify`와의 관계는 [로컬에서 diff 검토](/docs/ko/code-review#review-a-diff-locally)를 참조하십시오. 별칭: `/review` |

73| `/color [color\|default]` | 현재 세션의 프롬프트 바 색상을 설정합니다. 사용 가능한 색상: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. `default`를 사용하여 재설정하거나 인수 없이 실행하여 임의의 색상을 선택합니다. [원격 제어](/docs/ko/remote-control)가 연결되면 색상이 claude.ai/code로 동기화됩니다. 비대화형 모드(`-p`)에서도 사용 가능합니다. Claude Code v2.1.205 이상이 필요합니다. |76| `/color [color\|default]` | 현재 세션의 프롬프트 바 색상을 설정합니다. 사용 가능한 색상: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. `default`를 사용하여 재설정하거나 인수 없이 실행하여 임의의 색상을 선택합니다. [원격 제어](/docs/ko/remote-control)가 연결되면 색상이 claude.ai/code로 동기화됩니다. 비대화형 모드(`-p`)에서도 사용 가능합니다. Claude Code v2.1.205 이상이 필요합니다. |


91| `/fast [on\|off]` | [빠른 모드](/docs/ko/fast-mode)를 켜거나 끕니다. Claude가 응답하는 동안 실행하면 Claude Code가 턴이 끝날 때까지 기다리지 않고 빠른 모드를 전환하지만 실행 중인 턴은 원래 속도로 완료됩니다. v2.1.242 이전에는 Claude Code가 Anthropic에서 가져온 기능 플래그에서 명령어를 턴 중에 실행할지 아니면 턴이 끝날 때까지 대기열에 넣을지 결정했습니다. 비대화형 모드에서 `-p`의 가용성은 제한적입니다. [빠른 모드 전환](/docs/ko/fast-mode#toggle-fast-mode)을 참조하십시오. Claude Code v2.1.205 이상이 필요합니다. |94| `/fast [on\|off]` | [빠른 모드](/docs/ko/fast-mode)를 켜거나 끕니다. Claude가 응답하는 동안 실행하면 Claude Code가 턴이 끝날 때까지 기다리지 않고 빠른 모드를 전환하지만 실행 중인 턴은 원래 속도로 완료됩니다. v2.1.242 이전에는 Claude Code가 Anthropic에서 가져온 기능 플래그에서 명령어를 턴 중에 실행할지 아니면 턴이 끝날 때까지 대기열에 넣을지 결정했습니다. 비대화형 모드에서 `-p`의 가용성은 제한적입니다. [빠른 모드 전환](/docs/ko/fast-mode#toggle-fast-mode)을 참조하십시오. Claude Code v2.1.205 이상이 필요합니다. |

92| `/feedback [report]` | Claude Code에 대한 제품 피드백을 보냅니다. [`/bug`](#all-commands)와 동일한 대화, 동일한 동의 단계, 전송 규칙 및 턴 중 동작을 엽니다. [Claude가 초안 작성한 피드백](/docs/ko/tools-reference#sendfeedback-tool-behavior)이 있는 세션에서 인수 없이 `/feedback`을 실행하면 초안 대기열을 대신 열어 Claude가 대기열에 넣은 초안을 검토, 편집, 전송 또는 삭제할 수 있습니다. 대기열에는 대화에서 새 보고서를 작성하는 옵션이 포함됩니다. 인수를 사용하면 `/bug`는 항상 대화를 직접 엽니다. |95| `/feedback [report]` | Claude Code에 대한 제품 피드백을 보냅니다. [`/bug`](#all-commands)와 동일한 대화, 동일한 동의 단계, 전송 규칙 및 턴 중 동작을 엽니다. [Claude가 초안 작성한 피드백](/docs/ko/tools-reference#sendfeedback-tool-behavior)이 있는 세션에서 인수 없이 `/feedback`을 실행하면 초안 대기열을 대신 열어 Claude가 대기열에 넣은 초안을 검토, 편집, 전송 또는 삭제할 수 있습니다. 대기열에는 대화에서 새 보고서를 작성하는 옵션이 포함됩니다. 인수를 사용하면 `/bug`는 항상 대화를 직접 엽니다. |

93| `/fewer-permission-prompts` | **[스킬](/docs/ko/skills#bundled-skills).** 기록에서 일반적인 읽기 전용 Bash 및 MCP 도구 호출을 스캔한 다음 프로젝트 `.claude/settings.json`에 우선 순위가 지정된 허용 목록을 추가하여 권한 프롬프트를 줄입니다. |96| `/fewer-permission-prompts` | **[스킬](/docs/ko/skills#bundled-skills).** 기록에서 일반적인 읽기 전용 Bash 및 MCP 도구 호출을 스캔한 다음 프로젝트 `.claude/settings.json`에 우선 순위가 지정된 허용 목록을 추가하여 권한 프롬프트를 줄입니다. |

94| `/focus` | 포커스 보기를 전환합니다. 마지막 프롬프트, 편집 diffstat이 있는 한 줄 도구 호출 요약 및 최종 응답만 표시합니다. 도구 호출 요약은 또한 턴에서 시작된 서브에이전트를 계산하고 완료된 백그라운드 작업 알림을 단일 개수로 축소합니다. 선택 항목은 세션 간에 유지됩니다. 설정에서 [`viewMode`](/docs/ko/settings-reference#viewmode)를 설정하여 재정의합니다. [전체 화면 렌더링](/docs/ko/fullscreen)에서만 사용 가능합니다. [VS Code 확장](/docs/ko/vs-code#use-the-prompt-box)은 명령 메뉴 전환으로 자체 포커스 보기를 제공하며 `viewMode`와 독립적인 확장 설정으로 저장됩니다. |97| `/focus` | 포커스 보기를 전환합니다. 마지막 프롬프트, 편집 diffstat이 있는 한 줄 도구 호출 요약 및 최종 응답만 표시합니다. 도구 호출 요약은 또한 턴에서 시작된 서브에이전트를 계산하고 완료된 백그라운드 작업 알림을 단일 개수로 축소합니다. 선택 항목은 세션 간에 유지됩니다. 설정에서 [`viewMode`](/docs/ko/settings-reference#viewmode)를 설정하여 재정의합니다. [전체 화면 렌더링](/docs/ko/fullscreen)에서만 사용 가능합니다. [원격 제어](/docs/ko/remote-control) 클라이언트에서 `/focus [on\|off]`를 실행하여 현재 세션에만 포커스 보기를 켜거나 끕니다. 저장된 선택을 변경하지 않습니다. Claude Code v2.1.281 이상이 필요합니다. [VS Code 확장](/docs/ko/vs-code#use-the-prompt-box)은 명령 메뉴 전환으로 자체 포커스 보기를 제공하며 `viewMode`와 독립적인 확장 설정으로 저장됩니다. |

95| `/fork [prompt]` | [현재 대화를 새 백그라운드 세션으로 복사](/docs/ko/agent-view#copy-the-session-with-%2Ffork)하고 여기서 계속 작업합니다. 프롬프트를 전달하면 복사본이 즉시 작업을 시작합니다. 없으면 에이전트 보기에서 첫 번째 프롬프트를 기다립니다. 복사본이 [제자리에서 편집](/docs/ko/agent-view#how-file-edits-are-isolated)하는 경우를 제외하고 Claude Code는 코드 변경을 수행하기 전에 자체 워크트리를 생성하도록 지시합니다. 격리 지침은 Claude Code v2.1.221 이상이 필요합니다. 결과가 이 대화로 돌아오는 서브에이전트에 부작업을 넘기려면 `/subtask`를 사용합니다. 직접 복사본으로 전환하려면 `/branch`를 사용합니다. Claude Code v2.1.212 이상이 필요합니다. v2.1.161\~v2.1.211 및 [에이전트 보기가 꺼져](/docs/ko/agent-view#turn-off-agent-view) 있을 때마다 `/fork`는 [포크된 서브에이전트](/docs/ko/sub-agents#fork-the-current-conversation)를 대신 시작합니다. |98| `/fork [prompt]` | [현재 대화를 새 백그라운드 세션으로 복사](/docs/ko/agent-view#copy-the-session-with-%2Ffork)하고 여기서 계속 작업합니다. 프롬프트를 전달하면 복사본이 즉시 작업을 시작합니다. 없으면 에이전트 보기에서 첫 번째 프롬프트를 기다립니다. 복사본이 [제자리에서 편집](/docs/ko/agent-view#how-file-edits-are-isolated)하는 경우를 제외하고 Claude Code는 코드 변경을 수행하기 전에 자체 워크트리를 생성하도록 지시합니다. 격리 지침은 Claude Code v2.1.221 이상이 필요합니다. 결과가 이 대화로 돌아오는 서브에이전트에 부작업을 넘기려면 `/subtask`를 사용합니다. 직접 복사본으로 전환하려면 `/branch`를 사용합니다. Claude Code v2.1.212 이상이 필요합니다. v2.1.161\~v2.1.211 및 [에이전트 보기가 꺼져](/docs/ko/agent-view#turn-off-agent-view) 있을 때마다 `/fork`는 [포크된 서브에이전트](/docs/ko/sub-agents#fork-the-current-conversation)를 대신 시작합니다. |

96| `/goal [condition\|clear]` | [목표](/docs/ko/goal)를 설정합니다. Claude는 조건이 충족되거나 목표가 [다른 이유로 지워질](/docs/ko/goal#how-evaluation-works) 때까지 턴 간에 계속 작업합니다. 인수 없이 현재 또는 가장 최근에 달성한 목표를 표시합니다. `clear`, `stop`, `off`, `reset`, `none` 또는 `cancel`은 활성 목표를 조기에 제거합니다. |99| `/goal [condition\|clear]` | [목표](/docs/ko/goal)를 설정합니다. Claude는 조건이 충족되거나 목표가 [다른 이유로 지워질](/docs/ko/goal#how-evaluation-works) 때까지 턴 간에 계속 작업합니다. 인수 없이 현재 또는 가장 최근에 달성한 목표를 표시합니다. `clear`, `stop`, `off`, `reset`, `none` 또는 `cancel`은 활성 목표를 조기에 제거합니다. |

97| `/heapdump` | JavaScript 힙 스냅샷 및 메모리 분석을 `~/Desktop` 또는 Desktop 폴더가 없는 Linux의 홈 디렉토리에 작성하여 높은 메모리 사용량을 진단합니다. 메모리 문제를 보고할 때 `-diagnostics.json` 파일만 첨부합니다. `.heapsnapshot`에는 전체 대화 및 자격 증명이 포함되어 있으므로 공유하지 마십시오. [출력으로 수행할 작업](/docs/ko/troubleshooting#high-cpu-or-memory-usage)을 참조하십시오. |100| `/heapdump` | JavaScript 힙 스냅샷 및 메모리 분석을 `~/Desktop` 또는 Desktop 폴더가 없는 Linux의 홈 디렉토리에 작성하여 높은 메모리 사용량을 진단합니다. 메모리 문제를 보고할 때 `-diagnostics.json` 파일만 첨부합니다. `.heapsnapshot`에는 전체 대화 및 자격 증명이 포함되어 있으므로 공유하지 마십시오. [출력으로 수행할 작업](/docs/ko/troubleshooting#high-cpu-or-memory-usage)을 참조하십시오. |


121| `/pr-comments [PR]` | v2.1.91에서 제거됨. 대신 Claude에 직접 풀 요청 댓글을 보도록 요청합니다. 이전 버전에서는 GitHub 풀 요청에서 댓글을 가져오고 표시합니다. 현재 분기에 대한 PR을 자동으로 감지하거나 PR URL 또는 번호를 전달합니다. `gh` CLI가 필요합니다. |124| `/pr-comments [PR]` | v2.1.91에서 제거됨. 대신 Claude에 직접 풀 요청 댓글을 보도록 요청합니다. 이전 버전에서는 GitHub 풀 요청에서 댓글을 가져오고 표시합니다. 현재 분기에 대한 PR을 자동으로 감지하거나 PR URL 또는 번호를 전달합니다. `gh` CLI가 필요합니다. |

122| `/privacy-settings` | 개인 정보 보호 설정을 보고 업데이트합니다. Pro 및 Max 플랜 구독자만 사용 가능합니다. |125| `/privacy-settings` | 개인 정보 보호 설정을 보고 업데이트합니다. Pro 및 Max 플랜 구독자만 사용 가능합니다. |

123| `/radio` | 브라우저에서 Claude FM lo-fi 라디오를 엽니다. 브라우저를 사용할 수 없을 때 스트림 URL을 출력합니다. |126| `/radio` | 브라우저에서 Claude FM lo-fi 라디오를 엽니다. 브라우저를 사용할 수 없을 때 스트림 URL을 출력합니다. |

124| `/rate-limit-options` | claude.ai 사용 한도가 요청을 차단할 때 계속 작업하는 방법을 표시합니다. 한도가 재설정될 때 [자동으로 계속](/docs/ko/interactive-mode#wait-for-a-usage-limit-to-reset)하고, [사용 크레딧](/docs/ko/costs#add-usage-credits-to-your-subscription)을 추가하거나 플랜을 업그레이드합니다. Claude Code는 자신의 터미널에서 한도에 도달할 때 이 메뉴를 자동으로 열 수도 있습니다. [자동 계속 끄기](/docs/ko/interactive-mode#turn-automatic-continue-off)를 참조하십시오. claude.ai 구독이 필요합니다. 명령 메뉴에 나타나지 않습니다. 전체를 입력하십시오. 대기 및 계속 행은 Claude Code v2.1.234 이상이 필요합니다. |127| `/rate-limit-options` | claude.ai 사용 한도가 요청을 차단할 때 계속 작업하는 방법을 표시합니다. 한도가 재설정될 때 [자동으로 계속](/docs/ko/interactive-mode#wait-for-a-usage-limit-to-reset)하고, [사용 크레딧](/docs/ko/costs#add-usage-credits-to-your-subscription)을 추가하거나 플랜을 업그레이드합니다. Claude Code는 자신의 터미널에서 한도에 도달할 때 이 메뉴를 자동으로 열 수도 있습니다. [자동 계속 끄기](/docs/ko/interactive-mode#turn-automatic-continue-off)를 참조하십시오. claude.ai 구독이 필요합니다. 대기 및 계속 행은 Claude Code v2.1.234 이상이 필요합니다. |

125| `/recap` | 현재 세션의 한 줄 요약을 요청 시 생성합니다. 떠난 후 나타나는 자동 요약은 [세션 요약](/docs/ko/interactive-mode#session-recap)을 참조하십시오. |128| `/recap` | 현재 세션의 한 줄 요약을 요청 시 생성합니다. 떠난 후 나타나는 자동 요약은 [세션 요약](/docs/ko/interactive-mode#session-recap)을 참조하십시오. |

126| `/release-notes` | 대화형 버전 선택기에서 변경 로그를 봅니다. 특정 버전을 선택하여 릴리스 노트를 보거나 모든 버전을 표시하도록 선택합니다. 노트는 Claude가 보는 대화에 들어가지 않고 기록에 나타납니다. |129| `/release-notes` | 대화형 버전 선택기에서 변경 로그를 봅니다. 특정 버전을 선택하여 릴리스 노트를 보거나 모든 버전을 표시하도록 선택합니다. 노트는 Claude가 보는 대화에 들어가지 않고 기록에 나타납니다. |

127| `/reload-plugins [--force]` | 모든 활성 [플러그인](/docs/ko/plugins/overview)을 다시 로드하여 보류 중인 변경 사항을 적용하고 다시 시작하지 않습니다. 각 다시 로드된 구성 요소의 개수를 보고하고 로드 오류를 플래그합니다. 다시 로드가 로드된 MCP 도구를 변경하고 프롬프트 캐시를 무효화할 때 명령어가 경고하고 `--force`를 전달하지 않으면 건너뜁니다. 비대화형 모드(`-p`), Agent SDK 및 데스크톱 앱에서도 사용 가능합니다. 세션에 직접 입력된 입력에서만 실행되고 플러그인 MCP 서버 변경을 적용하지 않습니다. Claude Code v2.1.260 이상이 필요합니다. [플러그인 변경 사항을 다시 시작하지 않고 적용](/docs/ko/plugins/cli-reference#reload-plugins)을 참조하십시오. |130| `/reload-plugins [--force]` | 모든 활성 [플러그인](/docs/ko/plugins/overview)을 다시 로드하여 보류 중인 변경 사항을 적용하고 다시 시작하지 않습니다. 각 다시 로드된 구성 요소의 개수를 보고하고 로드 오류를 플래그합니다. 다시 로드가 로드된 MCP 도구를 변경하고 프롬프트 캐시를 무효화할 때 명령어가 경고하고 `--force`를 전달하지 않으면 건너뜁니다. 비대화형 모드(`-p`), Agent SDK 및 데스크톱 앱에서도 사용 가능합니다. 세션에 직접 입력된 입력에서만 실행되고 플러그인 MCP 서버 변경을 적용하지 않습니다. Claude Code v2.1.260 이상이 필요합니다. [플러그인 변경 사항을 다시 시작하지 않고 적용](/docs/ko/plugins/cli-reference#reload-plugins)을 참조하십시오. |

costs.md +2 −0

Details

96 96 

97[`/insights`](/docs/ko/commands#all-commands)를 실행하여 사용한 토큰 수가 아닌 작업 방식에 대한 보고서를 얻습니다. 이 기기의 최근 세션을 분석하고 작업 내용, 오해된 요청 또는 버그가 있는 코드와 같은 마찰 지점, Claude Code를 더 효과적으로 사용하기 위한 제안을 다루는 HTML 보고서를 작성합니다. 단일 실행은 이전에 보지 못한 최대 200개의 세션을 분석하고 매우 짧은 세션은 건너뜁니다. 세션이 제외될 때, 보고서 헤더는 분석된 수를 괄호 안의 총계와 함께 표시합니다. 예를 들어 `200 sessions (412 total)`입니다.97[`/insights`](/docs/ko/commands#all-commands)를 실행하여 사용한 토큰 수가 아닌 작업 방식에 대한 보고서를 얻습니다. 이 기기의 최근 세션을 분석하고 작업 내용, 오해된 요청 또는 버그가 있는 코드와 같은 마찰 지점, Claude Code를 더 효과적으로 사용하기 위한 제안을 다루는 HTML 보고서를 작성합니다. 단일 실행은 이전에 보지 못한 최대 200개의 세션을 분석하고 매우 짧은 세션은 건너뜁니다. 세션이 제외될 때, 보고서 헤더는 분석된 수를 괄호 안의 총계와 함께 표시합니다. 예를 들어 `200 sessions (412 total)`입니다.

98 98 

99[auto mode](/docs/ko/permission-modes#eliminate-prompts-with-auto-mode)가 세션에서 사용 가능하고 최근 세션이 대부분 이를 사용하지 않고 실행되었을 때, 보고서는 또한 auto mode가 해당 세션에서 처리할 수 있었던 권한 프롬프트의 수에 대한 추정치를 포함할 수 있습니다.

100 

99Claude Code는 최신 보고서를 `~/.claude/usage-data/report.html`에 작성하고 각 실행의 타임스탬프가 지정된 사본을 동일한 디렉토리에 저장하므로 이전 보고서는 덮어쓰지 않습니다. Claude Code는 나머지 세션 데이터와 동일한 일정에 따라 보고서를 삭제합니다: 시작 시 [`cleanupPeriodDays`](/docs/ko/claude-directory#cleaned-up-automatically)보다 오래된 파일을 제거하며, 기본값은 30일입니다.101Claude Code는 최신 보고서를 `~/.claude/usage-data/report.html`에 작성하고 각 실행의 타임스탬프가 지정된 사본을 동일한 디렉토리에 저장하므로 이전 보고서는 덮어쓰지 않습니다. Claude Code는 나머지 세션 데이터와 동일한 일정에 따라 보고서를 삭제합니다: 시작 시 [`cleanupPeriodDays`](/docs/ko/claude-directory#cleaned-up-automatically)보다 오래된 파일을 제거하며, 기본값은 30일입니다.

100 102 

101모든 요금제 및 모든 공급자에서 `/insights`를 실행할 수 있습니다. 분석은 일반 세션과 동일한 공급자 및 계정을 통해 실행되며, 토큰은 요금제 또는 API 사용량에 포함됩니다. 다른 기기 및 claude.ai의 세션은 포함되지 않습니다.103모든 요금제 및 모든 공급자에서 `/insights`를 실행할 수 있습니다. 분석은 일반 세션과 동일한 공급자 및 계정을 통해 실행되며, 토큰은 요금제 또는 API 사용량에 포함됩니다. 다른 기기 및 claude.ai의 세션은 포함되지 않습니다.

desktop.md +6 −0

Details

834* **Remote Control**: 조직의 [Remote Control](/docs/ko/remote-control)을 활성화 또는 비활성화합니다834* **Remote Control**: 조직의 [Remote Control](/docs/ko/remote-control)을 활성화 또는 비활성화합니다

835* **권한 무시 모드 비활성화**: 조직의 사용자가 권한 무시 모드를 활성화하지 못하도록 방지합니다835* **권한 무시 모드 비활성화**: 조직의 사용자가 권한 무시 모드를 활성화하지 못하도록 방지합니다

836 836 

837<Note>

838 **Monitoring** 아래 관리 콘솔의 [Data and privacy settings](https://claude.ai/admin-settings/data-privacy-controls)에 있는 Cowork의 OpenTelemetry 양식은 Cowork 세션에만 적용됩니다. 이 머신의 Cowork 세션에서 데스크톱 앱은 해당 수집기를 Claude Code에 `OTEL_*` 환경 변수로 전달하므로, Claude Code가 해당 세션에서 [관리 콘솔 설정을 가져오지 않음](#managed-settings)에도 불구하고 양식이 적용됩니다.

839 

840 Code 탭 세션에서 원격 분석을 내보내려면 [모니터링을 위한 관리자 구성](/docs/ko/monitoring-usage#administrator-configuration)에 표시된 대로 Claude Code 관리 설정의 `env` 블록에서 `CLAUDE_CODE_ENABLE_TELEMETRY` 및 `OTEL_*` 변수를 설정합니다. 로컬, 클라우드, SSH 세션은 각각 [다른 소스에서 관리 설정](#managed-settings)을 읽습니다. 클라우드 세션이 도달할 수 있는 호스트에 대해서는 [네트워크 액세스](/docs/ko/cloud-environments#network-access)를 참조하세요. Code 탭 세션이 보고하는 `service.name`에 대해서는 [서비스 정보](/docs/ko/monitoring-usage#service-information)를 참조하세요.

841</Note>

842 

837<h3 id="managed-settings">843<h3 id="managed-settings">

838 관리 설정844 관리 설정

839</h3>845</h3>

env-vars.md +1 −1

Details

110 110 

111일부 동작은 환경 변수와 전용 설정 키 모두를 가지고 있으며, Claude Code가 어느 것을 먼저 읽는지는 키마다 다릅니다. `ANTHROPIC_MODEL`과 `CLAUDE_CODE_AUTO_CONNECT_IDE`의 경우, Claude Code는 변수를 먼저 읽고 변수가 설정되지 않았을 때만 `model` 또는 `autoConnectIde` 설정을 사용합니다. 설정하려는 쌍의 경우, 아래의 변수 행과 [설정 참조](/docs/ko/settings-reference)의 키 항목을 확인하십시오.111일부 동작은 환경 변수와 전용 설정 키 모두를 가지고 있으며, Claude Code가 어느 것을 먼저 읽는지는 키마다 다릅니다. `ANTHROPIC_MODEL`과 `CLAUDE_CODE_AUTO_CONNECT_IDE`의 경우, Claude Code는 변수를 먼저 읽고 변수가 설정되지 않았을 때만 `model` 또는 `autoConnectIde` 설정을 사용합니다. 설정하려는 쌍의 경우, 아래의 변수 행과 [설정 참조](/docs/ko/settings-reference)의 키 항목을 확인하십시오.

112 112 

113동일한 변수가 셸과 설정 파일 `env` 블록 모두에 설정된 경우, 설정 파일 값이 적용됩니다. Claude Code는 각 `env` 항목을 프로세스 환경에 기록하여 셸에서 상속된 값을 대체합니다. [`env` 설정](/docs/ko/settings-reference#when-claude-code-applies-env-values)은 언제 적용되는지를 나타냅니다. 몇 가지 변수는 특별하게 처리됩니다. [`env` 설정](/docs/ko/settings-reference#env)은 예외를 나열합니다.113동일한 변수가 셸과 설정 파일 `env` 블록 모두에 설정된 경우, 대부분의 세션에서 설정 파일 값이 적용됩니다. Claude Code는 각 `env` 항목을 프로세스 환경에 기록하여 셸에서 상속된 값을 대체합니다. [`env` 값이 셸과 상호 작용하는 방식](/docs/ko/settings-reference#how-env-values-interact-with-your-shell)은 대신 상속된 값을 유지하는 세션을 다루며, [`env` 설정](/docs/ko/settings-reference#when-claude-code-applies-env-values)은 언제 적용되는지를 나타냅니다. 몇 가지 변수는 특별하게 처리됩니다. [`env` 설정](/docs/ko/settings-reference#env)은 예외를 나열합니다.

114 114 

115설정 파일에서 변수를 설정할 수 있지만 제거할 수는 없습니다. 제어하지 않는 셸 프로필에서 내보낸 `CLAUDE_CODE_USE_VERTEX`와 같이 설정 해제할 수 없는 변수를 재정의하려면, `env` 블록에서 빈 문자열로 설정하십시오: `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code는 빈 값을 공급자 선택을 위해 설정 해제된 것으로 취급합니다. 하위 프로세스는 여전히 빈 값을 상속합니다.115설정 파일에서 변수를 설정할 수 있지만 제거할 수는 없습니다. 제어하지 않는 셸 프로필에서 내보낸 `CLAUDE_CODE_USE_VERTEX`와 같이 설정 해제할 수 없는 변수를 재정의하려면, `env` 블록에서 빈 문자열로 설정하십시오: `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code는 빈 값을 공급자 선택을 위해 설정 해제된 것으로 취급합니다. 하위 프로세스는 여전히 빈 값을 상속합니다.

116 116 

errors.md +57 −8

Details

152| `There's an issue with the selected model` | [요청 오류](#theres-an-issue-with-the-selected-model) |152| `There's an issue with the selected model` | [요청 오류](#theres-an-issue-with-the-selected-model) |

153| `Model ... is not a recognized model id` | [요청 오류](#model-is-not-a-recognized-model-id) |153| `Model ... is not a recognized model id` | [요청 오류](#model-is-not-a-recognized-model-id) |

154| `Model ... not found` | [요청 오류](#model-not-found) |154| `Model ... not found` | [요청 오류](#model-not-found) |

155| `Couldn't confirm model ... with the API` | [요청 오류](#couldnt-confirm-model-with-the-api) |

155| `API error: ... · model not changed` | [요청 오류](#api-error-model-not-changed) |156| `API error: ... · model not changed` | [요청 오류](#api-error-model-not-changed) |

156| `Claude Opus is not available with the Claude Pro plan` | [요청 오류](#claude-opus-is-not-available-with-the-claude-pro-plan) |157| `Claude Opus is not available with the Claude Pro plan` | [요청 오류](#claude-opus-is-not-available-with-the-claude-pro-plan) |

157| `Claude Code ... does not support this model; version ... or newer is required` | [요청 오류](#claude-code-does-not-support-this-model) |158| `Claude Code ... does not support this model; version ... or newer is required` | [요청 오류](#claude-code-does-not-support-this-model) |


219| `Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected` | [명령줄 오류](#no-github-account-is-connected-to-your-claude-account) |220| `Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected` | [명령줄 오류](#no-github-account-is-connected-to-your-claude-account) |

220| `Your connected GitHub account can't see <owner>/<repo>` | [명령줄 오류](#your-connected-github-account-cant-see-the-repository) |221| `Your connected GitHub account can't see <owner>/<repo>` | [명령줄 오류](#your-connected-github-account-cant-see-the-repository) |

221| `The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead` | [명령줄 오류](#the-github-app-preflight-failed-transiently) |222| `The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead` | [명령줄 오류](#the-github-app-preflight-failed-transiently) |

223| `Not uploading this working tree` with `the upload cannot follow that setting` | [명령줄 오류](#the-repository-upload-cant-follow-a-git-setting) |

222| `GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud` | [명령줄 오류](#github-isnt-connected-to-your-claude-account) |224| `GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud` | [명령줄 오류](#github-isnt-connected-to-your-claude-account) |

223| `Single sign-on authorization needed` | [명령줄 오류](#single-sign-on-authorization-needed) |225| `Single sign-on authorization needed` | [명령줄 오류](#single-sign-on-authorization-needed) |

224| `Failed to resume the conversation` | [명령줄 오류](#failed-to-resume-the-conversation) |226| `Failed to resume the conversation` | [명령줄 오류](#failed-to-resume-the-conversation) |


252| `Plugin "<name>@synced" is required by your organization and can't be disabled here` | [플러그인 오류](#plugin-is-required-by-your-organization) |254| `Plugin "<name>@synced" is required by your organization and can't be disabled here` | [플러그인 오류](#plugin-is-required-by-your-organization) |

253| `"<plugin>" was not uninstalled: it is still switched on in <file>` | [플러그인 오류](#plugin-was-not-uninstalled) |255| `"<plugin>" was not uninstalled: it is still switched on in <file>` | [플러그인 오류](#plugin-was-not-uninstalled) |

254| `"<plugin>" was not uninstalled: <file> is there and could not be read` | [플러그인 오류](#plugin-was-not-uninstalled) |256| `"<plugin>" was not uninstalled: <file> is there and could not be read` | [플러그인 오류](#plugin-was-not-uninstalled) |

257| `Plugin "<plugin>" was not uninstalled: installed_plugins.json` | [플러그인 문제 해결](/docs/ko/plugins/troubleshooting#installed-plugins-json-holds-a-record-this-version-cannot-read) |

255| `would be spawned with zero tools — refusing` | [도구 오류](#agent-would-be-spawned-with-zero-tools) |258| `would be spawned with zero tools — refusing` | [도구 오류](#agent-would-be-spawned-with-zero-tools) |

256| `File is covered by a Read deny rule in your permission settings` | [도구 오류](#file-is-covered-by-a-read-deny-rule) |259| `File is covered by a Read deny rule in your permission settings` | [도구 오류](#file-is-covered-by-a-read-deny-rule) |

257| `cannot contain null bytes (\0)` | [도구 오류](#path-cannot-contain-null-bytes) |260| `cannot contain null bytes (\0)` | [도구 오류](#path-cannot-contain-null-bytes) |


2148 컨텍스트가 토큰 제한을 초과합니다2151 컨텍스트가 토큰 제한을 초과합니다

2149</h3>2152</h3>

2150 2153 

2151`/context`는 대화가 모델의 컨텍스트 윈도우를 초과했을 때 출력 상단에 이 경고를 표시합니다. [`Prompt is too long`](#prompt-is-too-long)으로 공간을 확보할 때까지 요청이 실패합니다. 대화형 세션은 해당 오류를 `Context limit reached` 줄로 표시합니다.2154`/context`는 대화가 모델의 컨텍스트 윈도우를 초과했을 때 출력 상단에 이 경고를 표시합니다. 공간을 확보할 때까지 요청이 실패합니다. 대화형 세션은 해당 오류를 `Context limit reached` 줄로 표시합니다.

2152 2155 

2153```text theme={null}2156```text theme={null}

2154Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.2157Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.


2346 모델이 인식된 모델 ID가 아닙니다2349 모델이 인식된 모델 ID가 아닙니다

2347</h3>2350</h3>

2348 2351 

2349모델 전환에 전달한 모델 문자열이 모델 별칭, 이 Claude Code 버전이 알고 있는 모델 ID 또는 `claude-`로 시작하는 ID가 아닙니다. 일반적인 원인은 ID의 오타, `Sonnet 5`와 같은 표시 이름(ID `claude-sonnet-5` 필요) 또는 최신 Claude Code 버전만 인식하는 별칭입니다. Claude Code는 즉시 전환을 거부합니다. v2.1.200 이전에는 Claude Code가 문자열을 저장했고 [선택한 모델에 문제가 있습니다](#theres-an-issue-with-the-selected-model)로 다음 요청에서 실패했습니다.2352모델 전환에 전달한 문자열이 Claude Code가 모델로 사용할 수 있는 것이 아니므로 전환을 거부했고 세션은 현재 모델을 유지합니다. 모델이 최신 Claude Code 버전만 지원하는 별칭이거나 ID의 오타일 때 이 오류를 받을 수 있습니다. v2.1.200 이전에는 Claude Code가 문자열을 저장했고 [선택한 모델에 문제가 있습니다](#theres-an-issue-with-the-selected-model)로 다음 요청에서 실패했습니다.

2350 2353 

2351```text theme={null}2354```text theme={null}

2352Model "claud-sonnet-5" is not a recognized model id. Did you mean 'claude-sonnet-5'?2355Model "Sonnet5" is not a recognized model id. Did you mean 'claude-sonnet-5'?

2353```2356```

2354 2357 

2355뒤따르는 힌트는 가장 가까운 일치하는 별칭 또는 모델 ID를 표시합니다. 충분히 가까운 것이 없으면 `Run /model to see available models.`로 읽습니다. [Desktop 앱](/docs/ko/desktop)이 시작하는 세션에서 일치하지 않는 힌트는 `Switch to a different model.`로 읽습니다.2358이 예에서 앱이 표시 이름 `Sonnet 5`를 보냈으며, 메시지는 공백 없이 반복합니다. 뒤따르는 힌트는 가장 가까운 일치하는 별칭 또는 모델 ID를 표시합니다. 충분히 가까운 것이 없으면 `Run /model to see available models.`로 읽습니다. [Desktop 앱](/docs/ko/desktop)이 시작하는 세션에서 일치하지 않는 힌트는 `Switch to a different model.`로 읽습니다.

2356 2359 

2357Claude Code는 전환이 요청되는 순간 로컬에서 이 오류를 생성하며, API 요청이 이루어지기 전입니다. [Agent SDK](/docs/ko/agent-sdk/typescript) `setModel()` 메서드를 통해 모델이 설정되거나 [Desktop 앱](/docs/ko/desktop)과 같은 앱이 Claude Code CLI를 실행할 때 또는 [Remote Control](/docs/ko/remote-control)을 통해 연결된 장치에서 모델을 선택할 때 적용됩니다. v2.1.260 이전에는 확인이 Remote Control 선택을 다루지 않았으므로 Claude Code가 선택을 적용했고 다음 요청이 [선택한 모델에 문제가 있습니다](#theres-an-issue-with-the-selected-model)로 실패했습니다.2360Claude Code는 전환이 요청되는 순간 로컬에서 이 오류를 생성하며, API 요청이 이루어지기 전입니다. [Agent SDK](/docs/ko/agent-sdk/typescript) `setModel()` 메서드를 통해 모델이 설정되거나 [Desktop 앱](/docs/ko/desktop)과 같은 앱이 Claude Code CLI를 실행할 때 또는 [Remote Control](/docs/ko/remote-control)을 통해 연결된 장치에서 모델을 선택할 때 적용됩니다. v2.1.260 이전에는 확인이 Remote Control 선택을 다루지 않았으므로 Claude Code가 선택을 적용했고 다음 요청이 [선택한 모델에 문제가 있습니다](#theres-an-issue-with-the-selected-model)로 실패했습니다.

2358 2361 


2379 2382 

2380* 인수 없이 `/model`을 실행하고 계정에서 사용 가능한 모델 중에서 선택하거나 `sonnet`과 같은 [모델 별칭](/docs/ko/model-config#model-aliases)을 사용합니다. 이는 유지 관리되는 기본값으로 확인됩니다.2383* 인수 없이 `/model`을 실행하고 계정에서 사용 가능한 모델 중에서 선택하거나 `sonnet`과 같은 [모델 별칭](/docs/ko/model-config#model-aliases)을 사용합니다. 이는 유지 관리되는 기본값으로 확인됩니다.

2381* 전체 ID를 입력한 경우 제공자의 모델 카탈로그에 대해 확인합니다. 새로 출시된 모델은 제공자 또는 지역이 제공하기 전에 Anthropic API에서 사용 가능할 수 있습니다.2384* 전체 ID를 입력한 경우 제공자의 모델 카탈로그에 대해 확인합니다. 새로 출시된 모델은 제공자 또는 지역이 제공하기 전에 Anthropic API에서 사용 가능할 수 있습니다.

2385* Agent SDK에서 `setModel()`은 이 메시지로 실패하고 세션은 이전 모델에서 계속 실행됩니다. TypeScript SDK에서 [`supportedModels()`](/docs/ko/agent-sdk/typescript#query-object)를 호출하여 전환할 수 있는 모델을 나열합니다.

2382* v2.1.265 이전에는 `/model`도 `opusplan[1m]` 별칭 철자를 이 오류로 거부했습니다. 이러한 버전에서는 Claude Code를 업데이트하거나 [설정](/docs/ko/model-config#setting-your-model)에서 또는 `--model` 대신 모델을 설정합니다.2386* v2.1.265 이전에는 `/model`도 `opusplan[1m]` 별칭 철자를 이 오류로 거부했습니다. 이러한 버전에서는 Claude Code를 업데이트하거나 [설정](/docs/ko/model-config#setting-your-model)에서 또는 `--model` 대신 모델을 설정합니다.

2383 2387 

2388<h3 id="couldnt-confirm-model-with-the-api">

2389 선택한 모델을 API로 확인할 수 없습니다

2390</h3>

2391 

2392[Agent SDK](/docs/ko/agent-sdk/typescript) `setModel()` 메서드를 통해 또는 [Desktop 앱](/docs/ko/desktop)과 같이 Claude Code CLI를 실행하는 앱을 통해 모델을 전환했고, 모델 ID를 API 엔드포인트로 확인하는 요청이 5초 이내에 응답을 받지 못했습니다. 세션은 현재 모델을 유지합니다.

2393 

2394```text theme={null}

2395Couldn't confirm model "claude-sonnet-5" with the API. Try again, or run /model to see available models.

2396```

2397 

2398[Desktop 앱](/docs/ko/desktop)이 시작하는 세션에서 메시지는 `Try again.`에서 끝납니다.

2399 

2400**할 일:**

2401 

2402* 모델로 다시 전환합니다.

2403* 전환이 계속 실패하면 Claude Code가 API 엔드포인트에 도달할 수 있는지 확인합니다. [네트워크 및 연결 오류](#network-and-connection-errors)를 참조하십시오.

2404 

2384<h3 id="api-error-model-not-changed">2405<h3 id="api-error-model-not-changed">

2385 선택한 모델을 확인할 때 API 오류2406 선택한 모델을 확인할 때 API 오류

2386</h3>2407</h3>


2432API Error: 400 Claude Code 2.1.240 is older than the minimum version required by your organization's policy. Run 'claude update', or update the Claude desktop app, to continue.2453API Error: 400 Claude Code 2.1.240 is older than the minimum version required by your organization's policy. Run 'claude update', or update the Claude desktop app, to continue.

2433```2454```

2434 2455 

2456요청을 만든 Claude Code 바이너리가 보고하는 버전이 API가 확인하는 버전입니다.

2457 

2435**할 일:**2458**할 일:**

2436 2459 

2437* `claude update`를 실행하거나 Claude Desktop 앱을 업데이트한 다음 새 세션을 시작합니다.2460해당 바이너리를 업데이트한 다음 새 세션을 시작합니다. 바이너리가 어디에서 왔는지에 따라 방법이 결정되며, [자체 호스팅 환경](/docs/ko/self-hosted-environments-deploy#pin-the-version) 제외:

2438* 모델별 표현의 경우 `/model`로 다른 모델로 전환하여 현재 세션에서 계속 작업할 수 있습니다.2461 

2462| 요청을 만든 바이너리 | 업데이트 방법 |

2463| :- | :- |

2464| 설치한 Claude Code | `claude update` 실행 |

2465| Claude Desktop 앱 | 앱 업데이트 |

2466| [VS Code 확장](/docs/ko/vs-code)이 번들로 제공하는 바이너리 | 확장 업데이트 |

2467| Agent SDK 패키지가 번들로 제공하는 바이너리 | [SDK 패키지 업그레이드](/docs/ko/agent-sdk/hosting#runtime-dependencies), 그 다음 애플리케이션 다시 시작. [컴파일된 단일 파일 실행 파일](/docs/ko/agent-sdk/typescript#compile-to-a-single-executable)에서 다시 빌드 |

2468 

2469* 모델별 표현의 경우 현재 세션에서 다른 모델로 전환하여 계속 작업할 수 있습니다: CLI에서 `/model`을 실행하거나, 스트리밍 입력 모드에서 TypeScript SDK의 `Query` 객체에서 [`setModel()`](/docs/ko/agent-sdk/typescript#query-object)을 호출하거나, Python SDK의 `ClaudeSDKClient`에서 [`set_model()`](/docs/ko/agent-sdk/python#claudesdkclient)을 호출합니다.

2439* 조직 정책 표현의 경우 계속하기 전에 업데이트합니다.2470* 조직 정책 표현의 경우 계속하기 전에 업데이트합니다.

2440 2471 

2441<h3 id="model-is-restricted-by-your-organizations-settings">2472<h3 id="model-is-restricted-by-your-organizations-settings">


3376 3407 

3377v2.1.251 이전에는 Claude Code가 GitHub 확인이 일시적으로만 실패했을 때도 `Please set up GitHub on https://claude.ai/code`로 메시지를 끝냈고 설정 조언은 일시적 실패를 지울 수 없습니다.3408v2.1.251 이전에는 Claude Code가 GitHub 확인이 일시적으로만 실패했을 때도 `Please set up GitHub on https://claude.ai/code`로 메시지를 끝냈고 설정 조언은 일시적 실패를 지울 수 없습니다.

3378 3409 

3410<h3 id="the-repository-upload-cant-follow-a-git-setting">

3411 저장소 업로드가 git 설정을 따를 수 없음

3412</h3>

3413 

3414[로컬 저장소를 업로드하는 클라우드 세션](/docs/ko/claude-code-on-the-web#send-local-repositories-without-github)을 시작했거나 [분기의 ultrareview](/docs/ko/ultrareview)를 시작했고 업로드가 파일에 적용할 속성 규칙을 결정하는 git 설정을 따를 수 없습니다. 업로드가 진행되고 규칙을 놓쳤다면 git이 저장하기 전에 변환하는 파일(예: 깨끗한 필터가 암호화하는 파일)이 디스크에 있는 그대로 클라우드에 도달할 수 있습니다. Claude Code는 대신 업로드를 거부하고 아무것도 업로드되지 않습니다:

3415 

3416```text theme={null}

3417Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository's .git/config or directly into your ~/.gitconfig, then retry.

3418```

3419 

3420메시지는 설정과 설정된 위치를 이름 지정하고 히트한 경우에 대한 수정으로 끝납니다. 동일한 거부는 `core.attributesFile` 및 `attr.tree`에 대해 나타나며 각각 자체 수정이 있습니다.

3421 

3422메시지는 해당 지시문의 조건이 이 저장소에 적용되지 않을 때도 `include` 또는 `includeIf` 지시문을 통해 git 구성이 끌어오는 구성 파일을 이름 지정할 수 있습니다.

3423 

3424**해야 할 일:**

3425 

3426* 메시지의 최종 문장에서 수정을 적용합니다.

3427 

3379<h3 id="github-isnt-connected-to-your-claude-account">3428<h3 id="github-isnt-connected-to-your-claude-account">

3380 GitHub가 Claude 계정에 연결되지 않음3429 GitHub가 Claude 계정에 연결되지 않음

3381</h3>3430</h3>


3890 Plugin was not uninstalled3939 Plugin was not uninstalled

3891</h3>3940</h3>

3892 3941 

3893[`claude plugin uninstall`](/docs/ko/plugins/cli-reference#plugin-uninstall)을 실행했거나 `/plugin` **설치됨** 탭에서 **제거**를 선택했으며 제거가 `"<plugin>" was not uninstalled:`로 시작하는 메시지와 함께 중지되었습니다.3942[`claude plugin uninstall`](/docs/ko/plugins/cli-reference#plugin-uninstall)을 실행했거나 `/plugin` **설치됨** 탭에서 **제거**를 선택했으며 제거가 `"<plugin>" was not uninstalled:`로 시작하는 메시지와 함께 중지되었습니다. 그 뒤의 텍스트가 설정 파일 이름을 지정하는 대신 `installed_plugins.json`으로 시작하면 원인은 이 버전의 Claude Code가 읽을 수 없는 `installed_plugins.json`의 내용입니다. 해당 형식의 경우 [`installed_plugins.json` holds a record this version can't read](/docs/ko/plugins/troubleshooting#installed-plugins-json-holds-a-record-this-version-cannot-read)를 참조하십시오.

3894 3943 

3895Claude Code가 `enabledPlugins`에서 플러그인의 항목을 제거하고 해당 범위의 설정 파일을 다시 읽었을 때 플러그인이 여전히 켜져 있었거나 이를 켤 수 있는 파일을 읽거나 확인할 수 없었습니다. 설정 항목이 이를 다시 켤 수 있는 동안 플러그인의 저장된 옵션, 비밀 및 데이터를 삭제하면 이를 잃게 되므로 제거가 대신 중지됩니다: 플러그인은 설치된 상태로 유지되고 저장된 것은 삭제되지 않습니다.3944Claude Code가 `enabledPlugins`에서 플러그인의 항목을 제거하고 해당 범위의 설정 파일을 다시 읽었을 때 플러그인이 여전히 켜져 있었거나 이를 켤 수 있는 파일을 읽거나 확인할 수 없었습니다. 설정 항목이 이를 다시 켤 수 있는 동안 플러그인의 저장된 옵션, 비밀 및 데이터를 삭제하면 이를 잃게 되므로 제거가 대신 중지됩니다: 플러그인은 설치된 상태로 유지되고 저장된 것은 삭제되지 않습니다.

3896 3945 


3900 3949 

3901메시지의 중간 부분은 파일과 원인의 이름을 지정합니다:3950메시지의 중간 부분은 파일과 원인의 이름을 지정합니다:

3902 3951 

3903* `it is still switched on in <file>, although the settings change reported no error`: 설정 쓰기가 성공를 보고했지만 파일을 읽을 때 항목이 여전히 있음3952* `it is still switched on in <file>, although the settings change reported no error`: 설정 쓰기가 성공을 보고했지만 파일을 읽을 때 항목이 여전히 있음

3904* `it is still switched on in <file>, and the settings change failed (<error>)`: 파일을 저장할 수 없음. 괄호 안의 이유3953* `it is still switched on in <file>, and the settings change failed (<error>)`: 파일을 저장할 수 없음. 괄호 안의 이유

3905* `<file> is there and could not be read`: 파일이 존재하지만 설정으로 읽을 수 없음. 예를 들어 유효한 JSON이 아니므로 플러그인을 여전히 활성화할 수 있음3954* `<file> is there and could not be read`: 파일이 존재하지만 설정으로 읽을 수 없음. 예를 들어 유효한 JSON이 아니므로 플러그인을 여전히 활성화할 수 있음

3906* `<file> (not read: it is on a network path or is a link to one, or could not be checked)`: Claude Code가 프로젝트 또는 로컬 설정 파일을 읽지 않았습니다. 파일 또는 이를 보유한 `.claude` 폴더가 네트워크 위치로 이어지는 링크이거나 해당 경로를 검사할 수 없기 때문입니다.3955* `<file> (not read: it is on a network path or is a link to one, or could not be checked)`: Claude Code가 프로젝트 또는 로컬 설정 파일을 읽지 않았습니다. 파일 또는 이를 보유한 `.claude` 폴더가 네트워크 위치로 이어지는 링크이거나 해당 경로를 검사할 수 없기 때문입니다.

fast-mode.md +2 −0

Details

72 72 

73세션에서 `/fast on`을 입력하여 빠른 모드를 켭니다. 해당 세션에만 켜져 있으며 기본값으로 저장되지 않습니다. [요구 사항](#requirements)은 클라우드 세션에도 적용됩니다.73세션에서 `/fast on`을 입력하여 빠른 모드를 켭니다. 해당 세션에만 켜져 있으며 기본값으로 저장되지 않습니다. [요구 사항](#requirements)은 클라우드 세션에도 적용됩니다.

74 74 

75브라우저의 [claude.ai/code](https://claude.ai/code)에서 메시지 상자의 모델 메뉴에서 빠른 모드를 켜고 끌 수도 있습니다. 메뉴는 플랜에 빠른 모드가 포함되어 있고 선택한 모델이 이를 지원할 때 스위치를 표시합니다.

76 

75<h2 id="understand-the-cost-tradeoff">77<h2 id="understand-the-cost-tradeoff">

76 비용 트레이드오프 이해78 비용 트레이드오프 이해

77</h2>79</h2>

Details

312| [Computer use](/docs/ko/computer-use) | ✓ | ✓ | ✗ | ✗ |312| [Computer use](/docs/ko/computer-use) | ✓ | ✓ | ✗ | ✗ |

313| Dispatch ([Desktop](/docs/ko/desktop#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |313| Dispatch ([Desktop](/docs/ko/desktop#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |

314| [Code Review](/docs/ko/code-review) | ✗ | ✗ | ✓ | ✓ |314| [Code Review](/docs/ko/code-review) | ✗ | ✗ | ✓ | ✓ |

315| [Artifacts](/docs/ko/artifacts) | ✓ | ✓ | ✓ | 관리자 활성화 |315| [Artifacts](/docs/ko/artifacts) | ✓ | ✓ | ✓ | ✓ |

316| [분석 대시보드 및 기여도 메트릭](/docs/ko/analytics) | ✗ | ✗ | ✓ | ✓ |316| [분석 대시보드 및 기여도 메트릭](/docs/ko/analytics) | ✗ | ✗ | ✓ | ✓ |

317| [Enterprise Analytics API](/docs/ko/analytics#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |317| [Enterprise Analytics API](/docs/ko/analytics#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |

318| [서버 관리 설정](/docs/ko/server-managed-settings) | ✗ | ✗ | ✓ | ✓ |318| [서버 관리 설정](/docs/ko/server-managed-settings) | ✗ | ✗ | ✓ | ✓ |

fullscreen.md +1 −1

Details

294 294 

295마우스 캡처가 비활성화되면 `PgUp`, `PgDn`, `Ctrl+Home` 및 `Ctrl+End`를 사용한 키보드 스크롤이 계속 작동하며 터미널이 기본적으로 선택을 처리합니다. 클릭하여 커서 위치 지정, 클릭하여 도구 출력 확장, URL 클릭 및 Claude Code 내 휠 스크롤을 잃게 됩니다.295마우스 캡처가 비활성화되면 `PgUp`, `PgDn`, `Ctrl+Home` 및 `Ctrl+End`를 사용한 키보드 스크롤이 계속 작동하며 터미널이 기본적으로 선택을 처리합니다. 클릭하여 커서 위치 지정, 클릭하여 도구 출력 확장, URL 클릭 및 Claude Code 내 휠 스크롤을 잃게 됩니다.

296 296 

297휠 스크롤을 유지하되 클릭, 드래그 및 호버 처리를 끄려면 대신 `CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1`을 설정합니다. Claude Code v2.1.195 이상이 필요합니다. 두 변수가 모두 설정된 경우 `CLAUDE_CODE_DISABLE_MOUSE`가 우선합니다.297휠 스크롤을 유지하되 클릭, 드래그 및 호버 처리를 끄려면 대신 `CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1`을 설정합니다. 두 변수가 모두 설정된 경우 `CLAUDE_CODE_DISABLE_MOUSE`가 우선합니다.

298 298 

299클릭이 비활성화되면 Claude Code는 여전히 마우스를 캡처하므로 휠 및 터치패드가 대화를 스크롤하지만 Claude Code 내에서 왼쪽 클릭은 아무 작동도 하지 않습니다. 기본 클릭 및 드래그 선택을 위해 터미널의 키를 누른 상태로 유지해야 합니다. 오른쪽 클릭 및 중간 클릭 붙여넣기는 지원하는 터미널에서 계속 작동합니다.299클릭이 비활성화되면 Claude Code는 여전히 마우스를 캡처하므로 휠 및 터치패드가 대화를 스크롤하지만 Claude Code 내에서 왼쪽 클릭은 아무 작동도 하지 않습니다. 기본 클릭 및 드래그 선택을 위해 터미널의 키를 누른 상태로 유지해야 합니다. 오른쪽 클릭 및 중간 클릭 붙여넣기는 지원하는 터미널에서 계속 작동합니다.

300 300 

Details

43 43 

44Claude Code가 선택한 워크플로우 파일이 포함된 브랜치를 푸시하고, 이미 해당 시크릿을 사용하도록 설정되어 있으며, 풀 리퀘스트를 생성할 준비가 된 상태로 브라우저에서 GitHub를 엽니다. 해당 풀 리퀘스트를 생성하고 병합하면 저장소에서 `@claude`가 작동합니다.44Claude Code가 선택한 워크플로우 파일이 포함된 브랜치를 푸시하고, 이미 해당 시크릿을 사용하도록 설정되어 있으며, 풀 리퀘스트를 생성할 준비가 된 상태로 브라우저에서 GitHub를 엽니다. 해당 풀 리퀘스트를 생성하고 병합하면 저장소에서 `@claude`가 작동합니다.

45 45 

46설정을 중간에 중단하려면 Esc를 누릅니다. 진행 중인 단계는 완료되고 이후 단계는 시작되지 않습니다. 종료 메시지는 푸시된 브랜치나 저장된 시크릿과 같이 저장소에서 이미 발생한 작업을 나열합니다.

47 

46리뷰 워크플로우를 선택하면 Claude가 각 리뷰를 풀 리퀘스트 자체에 게시합니다. 발견한 각 이슈에 대한 인라인 댓글로 또는 발견하지 못한 경우 하나의 요약 댓글로 게시합니다. Claude는 초안과 같은 일부 풀 리퀘스트를 건너뜁니다. [리뷰 워크플로우 예제](#run-a-skill)는 동일한 스킬을 사용하고 이를 나열합니다. v2.1.229 이전에는 Claude가 리뷰를 워크플로우 실행 로그에만 작성했습니다.48리뷰 워크플로우를 선택하면 Claude가 각 리뷰를 풀 리퀘스트 자체에 게시합니다. 발견한 각 이슈에 대한 인라인 댓글로 또는 발견하지 못한 경우 하나의 요약 댓글로 게시합니다. Claude는 초안과 같은 일부 풀 리퀘스트를 건너뜁니다. [리뷰 워크플로우 예제](#run-a-skill)는 동일한 스킬을 사용하고 이를 나열합니다. v2.1.229 이전에는 Claude가 리뷰를 워크플로우 실행 로그에만 작성했습니다.

47 49 

48이전 버전이 생성한 리뷰 워크플로우를 업데이트하려면 다음 중 하나를 수행합니다:50이전 버전이 생성한 리뷰 워크플로우를 업데이트하려면 다음 중 하나를 수행합니다:

Details

95 네트워크 요구 사항95 네트워크 요구 사항

96</h3>96</h3>

97 97 

98Anthropic 호스팅 세션의 경우 GHES 인스턴스는 Anthropic 인프라에서 도달 가능해야 하므로 Claude가 저장소를 복제하고 검토 의견을 게시할 수 있습니다. GHES 인스턴스가 방화벽 뒤에 있는 경우 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)를 허용 목록에 추가합니다. [자체 호스팅 환경](/docs/ko/self-hosted-environments-deploy#configure-git)의 세션은 대신 네트워크 내부에서 복제하며, 실행자가 [Anthropic git 프록시](/docs/ko/self-hosted-environments-deploy#use-the-anthropic-git-proxy)를 선택하지 않는 한 Anthropic 측에서 가져오고 동일한 도달 가능성이 필요합니다. [SCM 커넥터](/docs/ko/self-hosted-environments-reference#scm-connector-flags)는 내부적으로만 라우팅 가능한 GHES 호스트에 대해 저장소 선택기와 같은 호스팅된 사전 세션 흐름을 포함합니다.98Anthropic 호스팅 세션의 경우 GHES 인스턴스는 Anthropic 인프라에서 도달 가능해야 하므로 Claude가 저장소를 복제하고 검토 의견을 게시할 수 있습니다. GHES 인스턴스가 방화벽 뒤에 있는 경우 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)를 허용 목록에 추가합니다. [자체 호스팅 환경](/docs/ko/self-hosted-environments-deploy#configure-git)의 세션은 대신 네트워크 내부에서 복제하며, 실행자가 [Anthropic git 프록시](/docs/ko/self-hosted-environments-deploy#use-the-anthropic-git-proxy)를 선택하지 않는 한 Anthropic 측에서 가져오고 동일한 도달 가능성이 필요합니다. 호스팅된 사전 세션 흐름(예: 저장소 선택기)은 세션이 시작되기 전에 Anthropic 측에서 실행됩니다. GHES 인스턴스가 Anthropic 인프라에서 도달 가능해야 하며, 세션이 자체 호스팅 환경에서 실행되는 경우에도 필요합니다. [SCM 커넥터](/docs/ko/self-hosted-environments-reference#scm-connector-flags)는 사용할 수 없으므로, 이러한 흐름은 내부적으로만 라우팅 가능한 GHES 호스트에 도달할 수 없습니다.

99 99 

100<h2 id="developer-workflow">100<h2 id="developer-workflow">

101 개발자 워크플로우101 개발자 워크플로우


246 GHES 인스턴스에 도달할 수 없음246 GHES 인스턴스에 도달할 수 없음

247</h3>247</h3>

248 248 

249리뷰 또는 Anthropic 호스팅 클라우드 세션이 시간 초과되면 GHES 인스턴스가 Anthropic 인프라에서 도달 가능하지 않을 수 있습니다. 방화벽이 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)에서 인바운드 연결을 허용하는지 확인합니다. [자체 호스팅 환경](/docs/ko/self-hosted-environments)의 세션은 네트워크 내부에서 GHES에 도달하므로 이들의 경우 실행기의 자체 네트워크 경로와 [SCM 커넥터](/docs/ko/self-hosted-environments-reference#scm-connector-flags)를 대신 확인합니다.249리뷰 또는 Anthropic 호스팅 클라우드 세션이 시간 초과되면 GHES 인스턴스가 Anthropic 인프라에서 도달 가능하지 않을 수 있습니다. 방화벽이 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)에서 인바운드 연결을 허용하는지 확인합니다. [자체 호스팅 환경](/docs/ko/self-hosted-environments)의 세션은 네트워크 내부에서 GHES에 도달하므로 이들 중 하나가 복제할 수 없을 때 실행기의 자체 네트워크 경로를 대신 확인합니다. 저장소 선택기 및 기타 호스팅된 사전 세션 흐름의 경우 [네트워크 요구 사항](#network-requirements)을 참조합니다.

250 250 

251<h3 id="session-start-fails-with-unable-to-get-organization-uuid">251<h3 id="session-start-fails-with-unable-to-get-organization-uuid">

252 세션 시작이 `Unable to get organization UUID`로 실패함252 세션 시작이 `Unable to get organization UUID`로 실패함

glossary.md +1 −1

Details

56 Artifact56 Artifact

57</h3>57</h3>

58 58 

59Claude Code가 세션에서 claude.ai의 비공개 URL로 게시하는 라이브 대화형 웹 페이지이므로, 터미널 텍스트를 읽는 대신 시각적으로 출력을 보거나 공유할 수 있습니다. 세션이 다시 게시될 때 페이지가 제자리에서 업데이트됩니다. Claude Code에서 만든 Artifact는 claude.ai 대화에서 만든 Artifact와 동일한 갤러리에 나타납니다. 공유는 플랜에 따라 달라집니다: Pro 및 Max에서는 누구나 열 수 있는 공개 링크이고, Team 및 Enterprise에서는 조직 내 공유이며, 소유자가 활성화하면 공개 링크도 가능합니다.59Claude Code가 세션에서 claude.ai의 비공개 URL로 게시하는 라이브 대화형 웹 페이지이므로, 터미널 텍스트를 읽는 대신 시각적으로 출력을 보거나 공유할 수 있습니다. 세션이 다시 게시될 때 페이지가 제자리에서 업데이트됩니다. Claude Code에서 만든 Artifact는 claude.ai 대화에서 만든 Artifact와 동일한 갤러리에 나타납니다. 공유 옵션은 플랜에 따라 달라집니다: [Artifact 공유](/docs/ko/artifacts#share-an-artifact)를 참조하세요.

60 60 

61자세히 알아보기: [세션 출력을 Artifact로 공유](/docs/ko/artifacts)61자세히 알아보기: [세션 출력을 Artifact로 공유](/docs/ko/artifacts)

62 62 

Details

315 315 

316Claude Sonnet 5, Opus 4.6 이상 및 Sonnet 4.6은 Google Cloud의 Agent Platform에서 [1M 토큰 context window](https://platform.claude.com/docs/ko/build-with-claude/context-windows#context-window-sizes-by-model)를 지원합니다. Sonnet 5는 항상 1M 윈도우로 실행되며, 선택할 `[1m]` 변형이 없습니다. 다른 모델의 경우, Claude Code는 1M 모델 변형을 선택할 때 확장된 context window를 자동으로 활성화합니다.316Claude Sonnet 5, Opus 4.6 이상 및 Sonnet 4.6은 Google Cloud의 Agent Platform에서 [1M 토큰 context window](https://platform.claude.com/docs/ko/build-with-claude/context-windows#context-window-sizes-by-model)를 지원합니다. Sonnet 5는 항상 1M 윈도우로 실행되며, 선택할 `[1m]` 변형이 없습니다. 다른 모델의 경우, Claude Code는 1M 모델 변형을 선택할 때 확장된 context window를 자동으로 활성화합니다.

317 317 

318[설정 마법사](#sign-in-with-agent-platform)는 모델을 고정할 때 1M context 옵션을 제공합니다. 수동으로 고정된 모델에 대해 대신 활성화하려면 모델 ID에 `[1m]`을 추가합니다. 자세한 내용은 [타사 배포를 위한 모델 고정](/docs/ko/model-config#pin-models-for-third-party-deployments)을 참조하십시오.318[설정 마법사](#sign-in-with-agent-platform)는 모델을 고정할 때 1M context 옵션을 제공합니다. 수동으로 고정된 모델에 대해 대신 활성화하려면 모델 ID에 `[1m]`을 추가합니다. 자세한 내용은 [타사 배포를 위한 모델 고정](/docs/ko/model-config#pin-models-for-third-party-deployments)을 참조하십시오. 1M 윈도우를 고정을 변경하지 않고 사용하는 방법을 포함한 자세한 내용을 참조하십시오.

319 319 

320<h2 id="troubleshooting">320<h2 id="troubleshooting">

321 문제 해결321 문제 해결

hooks-guide.md +1 −1

Details

196| `elicitation_url_dialog` | MCP 서버가 브라우저 URL을 열도록 요청하고 약 6초 동안 입력하지 않았을 때 |196| `elicitation_url_dialog` | MCP 서버가 브라우저 URL을 열도록 요청하고 약 6초 동안 입력하지 않았을 때 |

197| `elicitation_complete` | MCP 서버가 [URL 모드 유도](/docs/ko/hooks#elicitation-input)가 완료되었음을 보고할 때 |197| `elicitation_complete` | MCP 서버가 [URL 모드 유도](/docs/ko/hooks#elicitation-input)가 완료되었음을 보고할 때 |

198| `elicitation_response` | MCP 유도 응답이 서버로 다시 전송될 때 |198| `elicitation_response` | MCP 유도 응답이 서버로 다시 전송될 때 |

199| `agent_needs_input` | 백그라운드 세션이 입력을 기다리기 시작하고 [agent view](/docs/ko/agent-view)가 열려 있을 때, 또는 현재 세션이 [agent team 팀원의 터미널 설정 질문](/docs/ko/agent-teams#choose-a-display-mode)을 물어보고 약 6초 동안 입력하지 않았을 때 |199| `agent_needs_input` | 백그라운드 세션이 입력을 기다리기 시작하고 [agent view](/docs/ko/agent-view)가 열려 있을 때, 또는 현재 세션이 [agent team 팀원의 터미널 설정 질문](/docs/ko/agent-teams#choose-a-display-mode)을 물어보거나 [분류기 요청 요금](/docs/ko/auto-mode-classifier-billing)에 대한 자동 모드의 공지를 표시하고 약 6초 동안 입력하지 않았을 때 |

200| `agent_completed` | 백그라운드 세션이 완료되거나 실패합니다. [agent view](/docs/ko/agent-view)가 열려 있을 때만 발생합니다 |200| `agent_completed` | 백그라운드 세션이 완료되거나 실패합니다. [agent view](/docs/ko/agent-view)가 열려 있을 때만 발생합니다 |

201| `quota_auto_resume_fired` | Claude Code가 claude.ai 사용 제한으로 일시 중지된 작업을 계속합니다: 재설정 시 또는 Claude Code 중에 수행하는 작업(예: 사용 크레딧 추가, 플랜 업그레이드 또는 모델 전환)으로 인해 사용 가능한 사용량이 더 빨리 제공될 때, [모델 설정 예외](/docs/ko/interactive-mode#wait-for-a-usage-limit-to-reset) 포함 |201| `quota_auto_resume_fired` | Claude Code가 claude.ai 사용 제한으로 일시 중지된 작업을 계속합니다: 재설정 시 또는 Claude Code 중에 수행하는 작업(예: 사용 크레딧 추가, 플랜 업그레이드 또는 모델 전환)으로 인해 사용 가능한 사용량이 더 빨리 제공될 때, [모델 설정 예외](/docs/ko/interactive-mode#wait-for-a-usage-limit-to-reset) 포함 |

202| `quota_auto_resume_stale` | claude.ai 사용 제한이 컴퓨터가 약 30분 이상 절전 상태였을 때 재설정됩니다. Claude Code는 계속하지 않고 `Enter`를 누르기를 기다립니다. 더 짧은 절전 후에는 계속하고 대신 `quota_auto_resume_fired`를 발생시킵니다 |202| `quota_auto_resume_stale` | claude.ai 사용 제한이 컴퓨터가 약 30분 이상 절전 상태였을 때 재설정됩니다. Claude Code는 계속하지 않고 `Enter`를 누르기를 기다립니다. 더 짧은 절전 후에는 계속하고 대신 `quota_auto_resume_fired`를 발생시킵니다 |

keybindings.md +25 −22

Details

22| `$docs` | 선택적 설명서 URL |22| `$docs` | 선택적 설명서 URL |

23| `bindings` | 컨텍스트별 바인딩 블록 배열 |23| `bindings` | 컨텍스트별 바인딩 블록 배열 |

24 24 

25이 예제는 채팅 컨텍스트에서 `Ctrl+E`를 외부 편집기를 열기에 바인딩하고 `Ctrl+U`를 바인딩 해제합니다:25이 예제는 채팅 컨텍스트에서 `Ctrl+E`를 외부 편집기를 열기에 바인딩하고 `Ctrl+S`를 바인딩 해제합니다:

26 26 

27```json theme={null}27```json theme={null}

28{28{


33 "context": "Chat",33 "context": "Chat",

34 "bindings": {34 "bindings": {

35 "ctrl+e": "chat:externalEditor",35 "ctrl+e": "chat:externalEditor",

36 "ctrl+u": null36 "ctrl+s": null

37 }37 }

38 }38 }

39 ]39 ]


48 48 

49| 컨텍스트 | 설명 |49| 컨텍스트 | 설명 |

50| :- | :- |50| :- | :- |

51| `Global` | 앱의 모든 곳에 적용됨 |51| `Global` | 앱의 모든 곳에 적용됩니다 |

52| `Chat` | 주 채팅 입력 영역 |52| `Chat` | 메인 채팅 입력 영역 |

53| `Autocomplete` | 자동 완성 메뉴가 열려 있음 |53| `Autocomplete` | 자동완성 메뉴가 열려 있습니다 |

54| `Settings` | 설정 메뉴 |54| `Settings` | 설정 메뉴 |

55| `Confirmation` | 권한 및 확인 대화 상자 |55| `Confirmation` | 권한 및 확인 대화상자 |

56| `Tabs` | 탭 네비게이션 구성 요소 |56| `Tabs` | 탭 네비게이션 컴포넌트 |

57| `Help` | 도움말 메뉴가 표시됨 |57| `Help` | 도움말 메뉴가 표시됩니다 |

58| `Transcript` | 트랜스크립트 뷰어 |58| `Transcript` | 트랜스크립트 뷰어 |

59| `HistorySearch` | 기록 검색 모드(Ctrl+R) |59| `HistorySearch` | 히스토리 검색 모드 (Ctrl+R) |

60| `Task` | 백그라운드 작업이 실행 중 |60| `Task` | 포그라운드에서 작업이 실행 중입니다 |

61| `ThemePicker` | 테마 선택기 대화 상자 |61| `ThemePicker` | 테마 선택기 대화상자 |

62| `Attachments` | 이미지 첨부 파일 네비게이션 선택 대화 상자 |62| `Attachments` | 선택 대화상자에서 이미지 첨부 네비게이션 |

63| `Footer` | 바닥글 표시기 네비게이션(작업, 팀, diff, 아티팩트) |63| `Footer` | 푸터 표시기 네비게이션 (작업, 팀, diff, 아티팩트) |

64| `MessageSelector` | 되돌리기 및 요약 대화 상자 메시지 선택 |64| `MessageSelector` | 되돌리기 및 요약 대화상자 메시지 선택 |

65| `DiffDialog` | Diff 뷰어 네비게이션 |65| `DiffDialog` | Diff 뷰어 네비게이션 |

66| `DiffPanel` | [diff 패널](/docs/ko/interactive-mode#diff-panel)이 열려 있음 |66| `DiffPanel` | [diff 패널](/docs/ko/interactive-mode#diff-panel)이 열려 있습니다 |

67| `ModelPicker` | 모델 선택기 노력 수준 |67| `ModelPicker` | 모델 선택기 노력 수준 |

68| `EffortSlider` | `/effort`로 열린 노력 슬라이더 |68| `EffortSlider` | `/effort`로 열린 노력 슬라이더 |

69| `Select` | 일반 선택/목록 구성 요소 |69| `Select` | 일반 선택/목록 컴포넌트 |

70| `Plugin` | 플러그인 대화 상자(찾아보기, 발견, 관리) |70| `Plugin` | 플러그인 대화상자 (찾아보기, 발견, 관리) |

71| `Agents` | [에이전트 보기](/docs/ko/agent-view)(`claude agents`) |71| `Agents` | [에이전트 보기](/docs/ko/agent-view) (`claude agents`) |

72| `Scroll` | 전체 화면 모드에서 대화 스크롤 및 텍스트 선택 |72| `Scroll` | 전체 화면 모드에서 대화 스크롤 및 텍스트 선택 |

73 73 

74v2.1.205 이전에는 `/doctor` 진단 화면에 대한 `Doctor` 컨텍스트와 `doctor:fix` 작업이 존재했습니다.74v2.1.205 이전에는 `/doctor` 진단 화면에 대한 `Doctor` 컨텍스트와 `doctor:fix` 작업이 존재했습니다.


301| `footer:down` | Down | 바닥글에서 아래로 탐색 |301| `footer:down` | Down | 바닥글에서 아래로 탐색 |

302| `footer:openSelected` | Enter | 선택한 바닥글 항목 열기 |302| `footer:openSelected` | Enter | 선택한 바닥글 항목 열기 |

303| `footer:clearSelection` | Escape | 바닥글 선택 지우기 |303| `footer:clearSelection` | Escape | 바닥글 선택 지우기 |

304| `footer:dismiss` | (바인딩 안 됨) | v2.1.281에서 제거됨. 작업의 이름을 계속 지정하는 `keybindings.json`은 유효하며 바인딩은 아무 작업도 하지 않습니다. v2.1.281 이전에는 Backspace 및 Delete가 바닥글에서 선택한 아티팩트 링크를 닫았습니다 |304| `footer:dismiss` | (바인딩 안 됨) | 이 작업에 키를 바인딩하는 것은 아무 효과가 없으며, 이를 명명하는 `keybindings.json`은 유효합니다. v2.1.281 이전에는 Backspace 및 Delete가 바인딩되어 바닥글에서 선택한 아티팩트 링크를 닫았습니다. |

305 305 

306바닥글 항목이 선택되어 있을 때(예: 프롬프트 아래의 에이전트 패널의 행) `Enter`는 `Chat` 컨텍스트에서 `Enter`를 `chat:queueSubmit` 또는 `chat:newline`으로 다시 바인딩한 경우에도 열립니다.306바닥글 항목이 선택되어 있을 때(예: 프롬프트 아래의 에이전트 패널의 행) `Enter`는 `Chat` 컨텍스트에서 `Enter`를 `chat:queueSubmit` 또는 `chat:newline`으로 다시 바인딩한 경우에도 열립니다.

307 307 


417| `select:accept` | Enter | 선택 수락 |417| `select:accept` | Enter | 선택 수락 |

418| `select:cancel` | Escape | 선택 취소 |418| `select:cancel` | Escape | 선택 취소 |

419 419 

420`/skills` 및 `/mcp`와 같은 목록 패널에서 Claude Code는 `select:pageUp`, `select:pageDown`, `select:first` 및 `select:last` 바인딩을 적용합니다. `/model` 선택기와 같은 대부분의 다른 목록에서는 `select:first` 및 `select:last` 바인딩이 적용됩니다. PageUp 및 PageDown은 바인딩에 관계없이 해당 목록의 옵션을 페이징합니다.420`/skills`, `/mcp` 및 `/tasks`와 같은 목록 패널에서 Claude Code는 `select:pageUp`, `select:pageDown`, `select:first` 및 `select:last` 바인딩을 적용합니다. `/model` 선택기와 같은 대부분의 다른 목록에서는 `select:first` 및 `select:last` 바인딩이 적용됩니다. PageUp 및 PageDown은 바인딩에 관계없이 해당 목록의 옵션을 페이징합니다.

421 421 

422v2.1.280 이전에는 다른 목록들이 Home, End 및 `select:first`와 `select:last` 바인딩을 무시했습니다.422v2.1.280 이전에는 다른 목록들이 Home, End 및 `select:first`와 `select:last` 바인딩을 무시했습니다.

423 423 

424v2.1.283 이전에는 `/mcp` 도구 목록이 바인딩에 관계없이 고정된 PageUp 및 PageDown 키로 페이징했습니다.

425 

424<h3 id="plugin-actions">426<h3 id="plugin-actions">

425 플러그인 작업427 플러그인 작업

426</h3>428</h3>


689 유효성 검사691 유효성 검사

690</h2>692</h2>

691 693 

692Claude Code는 키바인딩을 검증하고 다음에 대한 경고를 표시합니다:694Claude Code는 키바인딩을 검증하고 다음에 대해 디버그 로그에 경고를 기록합니다:

693 695 

694* 구문 분석 오류(잘못된 JSON 또는 구조)696* 구문 분석 오류(잘못된 JSON 또는 구조)

697* 잘못된 수정자(modifier), 예를 들어 `ctl+k`. Claude Code는 인식하지 못하는 부분을 제거하고 남은 키스트로크에 바인딩을 적용합니다. 이 예에서는 `k`입니다.

695* 잘못된 컨텍스트 이름698* 잘못된 컨텍스트 이름

696* 잘못된 작업 값(예: 문자열이 아니거나 `null`인 작업)699* 잘못된 작업 값(예: 문자열이 아니거나 `null`인 작업)

697* 알 수 없는 작업 이름(예: 등록된 작업의 오타). Claude Code는 바인딩을 건너뛰고 해당 키에 대한 기본 바인딩을 유지합니다. v2.1.246 이전에는 알 수 없는 작업 이름이 있는 바인딩이 해당 키를 자동으로 비활성화했습니다700* 알 수 없는 작업 이름(예: 등록된 작업의 오타). Claude Code는 바인딩을 건너뛰고 해당 키에 대한 기본 바인딩을 유지합니다. v2.1.246 이전에는 알 수 없는 작업 이름이 있는 바인딩이 해당 키를 자동으로 비활성화했습니다

698* 예약된 단축키 충돌701* 예약된 단축키 충돌

699* 동일한 컨텍스트의 중복 바인딩702* 동일한 컨텍스트의 중복 바인딩

700 703 

701Claude Code는 파일이 로드될 때 경고를 보고하며 각각을 디버그 로그에 기록합니다. [`--debug`](/docs/ko/cli-reference#cli-flags)를 사용하여 Claude Code를 시작하면 세부 정보를 확인할 수 있습니다.704[`--debug`](/docs/ko/cli-reference#cli-flags)를 사용하여 Claude Code를 시작하면 세부 정보를 확인할 수 있습니다.

Details

79 79 

80클라이언트가 Amazon Bedrock 형식을 사용할 때, `InvokeModelWithResponseStream` 응답 본문과 `Content-Type: application/vnd.amazon.eventstream` 헤더를 수정하지 않고 릴레이하고, 스트림을 서버 전송 이벤트로 변환하지 마십시오. [게이트웨이 또는 프록시 뒤의 스트리밍 오류](/docs/ko/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy)를 참조하십시오.80클라이언트가 Amazon Bedrock 형식을 사용할 때, `InvokeModelWithResponseStream` 응답 본문과 `Content-Type: application/vnd.amazon.eventstream` 헤더를 수정하지 않고 릴레이하고, 스트림을 서버 전송 이벤트로 변환하지 마십시오. [게이트웨이 또는 프록시 뒤의 스트리밍 오류](/docs/ko/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy)를 참조하십시오.

81 81 

82keep-alive 핑도 전달합니다. `ANTHROPIC_BASE_URL` 또는 `ANTHROPIC_AWS_BASE_URL`을 통한 연결에서 Claude Code는 게이트웨이가 릴레이하는 모든 바이트(SSE `ping` 이벤트 및 주석 줄 포함)를 계산하고, 기본적으로 300초 동안 침묵하는 스트림을 중단합니다. 업스트림의 핑은 긴 사고 일시 중지 중 유일한 트래픽이므로, 게이트웨이가 이를 제거하거나 버퍼링하면 Claude Code는 해당 일시 중지 중에 스트림을 중단합니다. [자동 재시도](/docs/ko/errors#automatic-retries)는 응답이 진행된 정도에 따라 중단된 스트림이 보고하는 내용을 다룹니다. Amazon Bedrock의 이진 이벤트 스트림과 같이 핑을 전혀 보내지 않는 업스트림은 해당 일시 중지를 전달할 것이 없습니다. 이러한 업스트림에서 변환할 때, 침묵한 간격 동안 자신의 `ping` 이벤트를 내보냅니다. `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL` 또는 `ANTHROPIC_FOUNDRY_BASE_URL`을 통해 도달한 게이트웨이는 Anthropic Messages 형식을 릴레이할 때도 이 바이트 수준 감시견으로 래핑되지 않습니다. 거기서는 [5분 유휴 타임아웃](/docs/ko/env-vars)이 침묵한 스트림을 중단하고, `ANTHROPIC_BEDROCK_BASE_URL` 연결에서 [`CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`](/docs/ko/env-vars)으로 바이트 감시견을 추가할 수 있습니다.82keep-alive 핑도 전달합니다. Claude Code는 [기본적으로 5분 동안](/docs/ko/network-config#streaming-idle-watchdogs) 스트림에 바이트가 도달하지 않으면 스트리밍 응답을 중단합니다. 긴 사고 일시 중지 중에 업스트림의 SSE `ping` 이벤트는 스트림의 유일한 바이트일 수 있습니다. 게이트웨이가 이를 제거하거나 버퍼링하면 Claude Code는 일시 중지 중간에 응답을 중단합니다. Amazon Bedrock의 이진 이벤트 스트림과 같이 핑을 전혀 보내지 않는 업스트림에서 변환할 때, 침묵한 간격 동안 자신의 `ping` 이벤트를 내보냅니다.

83 83 

84<h3 id="format-mismatch-with-the-upstream">84<h3 id="format-mismatch-with-the-upstream">

85 업스트림과의 형식 불일치85 업스트림과의 형식 불일치

managed-mcp.md +23 −6

Details

31 31 

32| 패턴 | 기능 | 구성 |32| 패턴 | 기능 | 구성 |

33| :- | :- | :- |33| :- | :- | :- |

34| **MCP 비활성화** | [세션을 시작한 앱이 등록하는 인프로세스 서버](#exclusive-control-with-managed-mcp-json) 및 [managedMcpServers를 통해 제공하는](#provide-servers-through-managed-settings) 서버를 제외한 서버가 로드되지 않음 | 빈 서버 맵이 있는 `managed-mcp.json` |34| **MCP 비활성화** | [배타적 제어](#exclusive-control-with-managed-mcp-json)에서 로드되는 몇 가지를 제외한 서버가 로드되지 않음 | 빈 서버 맵이 있는 `managed-mcp.json` |

35| **고정 배포** | 모든 사용자가 동일한 서버를 받으며 다른 서버를 추가할 수 없음 | 원하는 서버가 있는 `managed-mcp.json` |35| **고정 배포** | 모든 사용자가 동일한 서버를 받으며 다른 서버를 추가할 수 없음 | 원하는 서버가 있는 `managed-mcp.json` |

36| **제공된 서버** | 모든 사용자가 나열한 원격 서버를 받고 자신의 서버를 유지함 | 관리 설정의 `managedMcpServers` |36| **제공된 서버** | 모든 사용자가 나열한 원격 서버를 받고 자신의 서버를 유지함 | 관리 설정의 `managedMcpServers` |

37| **승인된 카탈로그** | 승인된 서버 목록을 게시하고, 사용자가 원하는 서버를 추가하며, 다른 모든 것은 차단됨 | `allowedMcpServers` + `allowManagedMcpServersOnly: true` |37| **승인된 카탈로그** | 승인된 서버 목록을 게시하고, 사용자가 원하는 서버를 추가하며, 다른 모든 것은 차단됨 | `allowedMcpServers` + `allowManagedMcpServersOnly: true` |


53* 파일에서 정의한 서버53* 파일에서 정의한 서버

54* [managedMcpServers를 통해 제공하는](#provide-servers-through-managed-settings) 서버54* [managedMcpServers를 통해 제공하는](#provide-servers-through-managed-settings) 서버

55* 세션을 시작한 앱이 등록하는 인프로세스 서버(예: VS Code 확장 프로그램의 자체 서버 또는 [데스크톱 앱이 제공하는 커넥터](/docs/ko/mcp#how-connectors-reach-claude-code))55* 세션을 시작한 앱이 등록하는 인프로세스 서버(예: VS Code 확장 프로그램의 자체 서버 또는 [데스크톱 앱이 제공하는 커넥터](/docs/ko/mcp#how-connectors-reach-claude-code))

56* [Claude in Chrome](/docs/ko/chrome) 서버(내장), [관리되는 집합과 함께 허용](#allow-claude-in-chrome-alongside-the-managed-set)하는 경우

56 57 

57사용자는 플러그인 제공 서버 및 [`--mcp-config` CLI 플래그](/docs/ko/cli-reference#cli-flags)로 전달된 서버를 포함하여 다른 MCP 서버를 추가, 수정 또는 사용할 수 없습니다. 또한 이 파일은 [관리되는 집합과 함께 허용](#allow-claude-ai-connectors-alongside-the-managed-set)하지 않는 한 Claude Code가 자체적으로 가져오는 claude.ai 커넥터를 억제합니다.58사용자는 플러그인 제공 서버 및 [`--mcp-config` CLI 플래그](/docs/ko/cli-reference#cli-flags)로 전달된 서버를 포함하여 다른 MCP 서버를 추가, 수정 또는 사용할 수 없습니다. 또한 이 파일은 [관리되는 집합과 함께 허용](#allow-claude-ai-connectors-alongside-the-managed-set)하지 않는 한 Claude Code가 자체적으로 가져오는 claude.ai 커넥터를 억제합니다.

58 59 


144 MCP 완전히 비활성화145 MCP 완전히 비활성화

145</h3>146</h3>

146 147 

147빈 서버 맵을 포함하는 `managed-mcp.json`을 배포하여 [세션을 시작한 앱이 등록하는 인프로세스 서버](#exclusive-control-with-managed-mcp-json)를 제외한 모든 MCP 서버를 차단하세요:148빈 서버 맵을 포함하는 `managed-mcp.json`을 배포하여 [독점 제어](#exclusive-control-with-managed-mcp-json)에서 로드되는 서버를 제외한 모든 MCP 서버를 차단하세요:

148 149 

149```json theme={null}150```json theme={null}

150{151{


152}153}

153```154```

154 155 

155`claude mcp add`는 위의 엔터프라이즈 정책 오류로 실패합니다. 사용자가 이전에 구성한 서버는 다음 번에 세션을 시작할 때 로드를 중지합니다. 정책이 이유라는 경고는 없습니다. `managedMcpServers`를 통해 제공하는 서버는 빈 맵 아래에서도 로드되므로 MCP를 완전히 비활성화하려면 해당 키도 설정하지 마세요.156`claude mcp add`는 위의 엔터프라이즈 정책 오류로 실패합니다. 사용자가 이전에 구성한 서버는 다음 번에 세션을 시작할 때 로드를 중지합니다. 정책이 이유라는 경고는 없습니다. `managedMcpServers`를 통해 제공하는 서버와 관리되는 집합과 함께 허용하는 다른 모든 것은 빈 맵 아래에서도 로드되므로 MCP를 완전히 비활성화하려면 해당 키를 설정하지 않은 상태로 두세요.

156 157 

157<h3 id="allow-claude-ai-connectors-alongside-the-managed-set">158<h3 id="allow-claude-ai-connectors-alongside-the-managed-set">

158 관리되는 집합과 함께 claude.ai 커넥터 허용159 관리되는 집합과 함께 claude.ai 커넥터 허용


166 167 

167Claude Code는 `allowAllClaudeAiMcps`를 관리자 제어 정책 계층에서만 읽습니다: 서버 관리 설정, MDM 배포 plist 또는 HKLM 레지스트리 키, 또는 시스템 `managed-settings.json` 파일. 사용자 또는 프로젝트 설정에 배치하면 효과가 없으므로 사용자는 독점 제어가 억제한 커넥터를 다시 활성화할 수 없습니다.168Claude Code는 `allowAllClaudeAiMcps`를 관리자 제어 정책 계층에서만 읽습니다: 서버 관리 설정, MDM 배포 plist 또는 HKLM 레지스트리 키, 또는 시스템 `managed-settings.json` 파일. 사용자 또는 프로젝트 설정에 배치하면 효과가 없으므로 사용자는 독점 제어가 억제한 커넥터를 다시 활성화할 수 없습니다.

168 169 

170<h3 id="allow-claude-in-chrome-alongside-the-managed-set">

171 관리되는 집합과 함께 Claude in Chrome 허용

172</h3>

173 

174기본적으로 `managed-mcp.json`을 배포하면 Claude Code는 터미널 세션에서 내장 [Claude in Chrome](/docs/ko/chrome) 서버를 차단합니다. 사용자는 [확장 프로그램 설치 프롬프트](/docs/ko/chrome#install-the-extension-when-claude-asks)를 받지 않으며, 사용자가 [Chrome을 기본적으로 활성화](/docs/ko/chrome#enable-chrome-by-default)한 세션은 Chrome 없이 시작되고 경고를 출력하지 않습니다. Chrome을 실행할 수 있는 사용자가 `claude --chrome` 또는 `CLAUDE_CODE_ENABLE_CFC=1`로 시작하면 Claude Code는 `allowClaudeInChromeWithManagedMcp` 설정의 이름을 지정하는 오류와 함께 시작 시 종료됩니다.

175 

176사용자가 `managed-mcp.json`의 서버와 함께 Claude in Chrome을 실행할 수 있도록 하려면 디바이스의 자체 관리되는 설정에서 `"allowClaudeInChromeWithManagedMcp": true`를 설정하세요. MDM 배포 plist 또는 HKLM 레지스트리 키, 또는 시스템 `managed-settings.json` 파일에 배치하세요. Claude Code가 해당 디바이스에서 [선택](/docs/ko/managed-settings#precedence-within-the-managed-tier)하는 것 중 하나입니다. Claude Code v2.1.282 이상이 필요합니다. v2.1.282 이전에는 Claude Code가 설정을 무시하고 시작 오류는 `You cannot dynamically configure MCP servers when an enterprise MCP config is present` 대신 읽습니다.

177 

178Claude Code는 [서버 관리 설정](/docs/ko/server-managed-settings)이 나머지 정책을 제공할 때도 해당 디바이스 소스에서 설정을 읽습니다. 서버 관리 설정 자체, 사용자 쓰기 가능 HKCU 레지스트리, 사용자 또는 프로젝트 설정에서는 설정을 무시합니다. 설정이 켜져 있어도 [`deniedMcpServers`](#policy-based-control-with-allowlists-and-denylists) `claude-in-chrome` 항목이 여전히 서버를 차단합니다.

179 

169<h2 id="provide-servers-through-managed-settings">180<h2 id="provide-servers-through-managed-settings">

170 관리되는 설정을 통해 서버 제공181 관리되는 설정을 통해 서버 제공

171</h2>182</h2>


303 314 

304| 설정 | 설정하지 않음 (기본값) | 빈 배열 `[]` | 채워짐 |315| 설정 | 설정하지 않음 (기본값) | 빈 배열 `[]` | 채워짐 |

305| :- | :- | :- | :- |316| :- | :- | :- | :- |

306| `allowedMcpServers` | 모든 서버 허용 | [조직 자체](#how-a-server-is-evaluated)를 제외한 서버 없음 | [조직 자체](#how-a-server-is-evaluated)를 제외한 일치하는 서버만 허용 |317| `allowedMcpServers` | 모든 서버 허용 | [허용 목록 검사를 건너뛰는 서버](#how-a-server-is-evaluated)를 제외한 서버 없음 | [허용 목록 검사를 건너뛰는 서버](#how-a-server-is-evaluated)를 제외한 일치하는 서버만 허용 |

307| `deniedMcpServers` | 차단된 서버 없음 | 차단된 서버 없음 | 일치하는 서버 차단 |318| `deniedMcpServers` | 차단된 서버 없음 | 차단된 서버 없음 | 일치하는 서버 차단 |

308 319 

309관리 설정의 잘못된 항목에 대해서는 [관리 설정의 잘못된 항목](/docs/ko/managed-settings#invalid-entries-in-managed-settings)을 참조합니다.320관리 설정의 잘못된 항목에 대해서는 [관리 설정의 잘못된 항목](/docs/ko/managed-settings#invalid-entries-in-managed-settings)을 참조합니다.


3292. **거부 목록 확인.** URL, 명령 또는 이름으로 거부 목록 항목과 일치하는 서버는 차단됩니다. 거부 목록 일치를 무시하는 것은 없습니다.3402. **거부 목록 확인.** URL, 명령 또는 이름으로 거부 목록 항목과 일치하는 서버는 차단됩니다. 거부 목록 일치를 무시하는 것은 없습니다.

3303. **허용 목록 확인.** `allowedMcpServers`가 어디에도 설정되지 않으면 거부 목록을 통과한 모든 서버가 로드됩니다. 설정되면 서버가 일치해야 하는 것은 아래 표에 표시된 유형에 따라 다릅니다.3413. **허용 목록 확인.** `allowedMcpServers`가 어디에도 설정되지 않으면 거부 목록을 통과한 모든 서버가 로드됩니다. 설정되면 서버가 일치해야 하는 것은 아래 표에 표시된 유형에 따라 다릅니다.

331 342 

332 조직 자체의 서버는 이 검사를 건너뜁니다. 모든 `managedMcpServers` 항목과 값에 `${VAR}` 확장을 사용하지 않는 모든 `managed-mcp.json` 항목입니다. Chrome의 Claude, Claude Code가 실행 중인 VS Code 또는 JetBrains IDE에 연결하는 `ide` 서버, CLI 자체가 구성하는 서버와 같은 기본 제공 서버도 건너뜁니다.343 세 그룹의 서버는 이 검사를 건너뜁니다.

344 

345 * 조직 자체의 서버: 모든 `managedMcpServers` 항목과 값에 `${VAR}` 확장을 사용하지 않는 모든 `managed-mcp.json` 항목입니다.

346 * 기본 제공 서버: Chrome의 Claude, Claude Code가 실행 중인 VS Code 또는 JetBrains IDE에 연결하는 `ide` 서버, CLI 자체가 구성하는 서버입니다.

347 * [Claude Tag](/docs/ko/claude-tag) 세션의 Slack 도구: 스레드를 읽고 회신을 게시하는 데 사용하는 서버는 허용 목록 항목 없이 로드됩니다.

333 348 

334 명령, 인수, `env`, URL 또는 헤더에서 `${VAR}` 확장을 사용하는 `managed-mcp.json` 서버는 여전히 확인되며, 사용자, 플러그인, `--mcp-config` 또는 claude.ai가 추가하는 모든 서버도 확인됩니다.349 명령, 인수, `env`, URL 또는 헤더에서 `${VAR}` 확장을 사용하는 `managed-mcp.json` 서버는 여전히 확인되며, 사용자, 플러그인, claude.ai가 추가하는 모든 서버와 사용자가 `--mcp-config`로 전달하는 모든 서버도 확인됩니다.

335 350 

336| 서버 유형 | 일치할 때 허용됨 |351| 서버 유형 | 일치할 때 허용됨 |

337| :- | :- |352| :- | :- |


514| 제한 사항 | 사용자가 보는 내용 |529| 제한 사항 | 사용자가 보는 내용 |

515| :- | :- |530| :- | :- |

516| `managed-mcp.json`이 있고 사용자가 `claude mcp add`를 실행함 | `Cannot add MCP server: enterprise MCP configuration is active and has exclusive control over MCP servers` |531| `managed-mcp.json`이 있고 사용자가 `claude mcp add`를 실행함 | `Cannot add MCP server: enterprise MCP configuration is active and has exclusive control over MCP servers` |

532| `managed-mcp.json`이 있고 다른 방법으로는 Chrome에서 Claude를 실행할 수 있는 사용자가 `claude --chrome`을 실행함 | Claude Code가 `Claude in Chrome is blocked by your organization's managed MCP configuration (managed-mcp.json). An administrator can allow it with allowClaudeInChromeWithManagedMcp in device policy.` 메시지와 함께 시작 시 종료됨 |

517| 서버가 거부 목록에 있고 사용자가 `claude mcp add`를 실행함 | `Cannot add MCP server "<name>": server is explicitly blocked by enterprise policy` |533| 서버가 거부 목록에 있고 사용자가 `claude mcp add`를 실행함 | `Cannot add MCP server "<name>": server is explicitly blocked by enterprise policy` |

518| 서버가 허용 목록에 없고 사용자가 `claude mcp add`를 실행함 | `Cannot add MCP server "<name>": not allowed by enterprise policy` |534| 서버가 허용 목록에 없고 사용자가 `claude mcp add`를 실행함 | `Cannot add MCP server "<name>": not allowed by enterprise policy` |

519| 사용자가 `managedMcpServers`의 서버에서 `claude mcp remove`를 실행함 | `MCP server "<name>" is provided by your organization (managed settings) and cannot be removed locally.` |535| 사용자가 `managedMcpServers`의 서버에서 `claude mcp remove`를 실행함 | `MCP server "<name>" is provided by your organization (managed settings) and cannot be removed locally.` |


541| `allowedMcpServers` | 허용된 서버의 허용 목록 | 모든 [설정 범위](/docs/ko/settings#where-settings-live); [서버 평가 방식](#how-a-server-is-evaluated)에서 여러 범위 및 관리형 소스의 목록이 결합되는 방식을 설명 | 적용을 위해, [관리형 설정 소스](/docs/ko/admin-setup#decide-how-settings-reach-devices): 서버 관리 설정, `managed-settings.json`, MDM 프로필, 또는 레지스트리 |557| `allowedMcpServers` | 허용된 서버의 허용 목록 | 모든 [설정 범위](/docs/ko/settings#where-settings-live); [서버 평가 방식](#how-a-server-is-evaluated)에서 여러 범위 및 관리형 소스의 목록이 결합되는 방식을 설명 | 적용을 위해, [관리형 설정 소스](/docs/ko/admin-setup#decide-how-settings-reach-devices): 서버 관리 설정, `managed-settings.json`, MDM 프로필, 또는 레지스트리 |

542| `deniedMcpServers` | 차단된 서버의 거부 목록 | 모든 설정 범위; [서버 평가 방식](#how-a-server-is-evaluated)에서 여러 범위 및 관리형 소스의 목록이 결합되는 방식을 설명 | `allowedMcpServers`와 동일 |558| `deniedMcpServers` | 차단된 서버의 거부 목록 | 모든 설정 범위; [서버 평가 방식](#how-a-server-is-evaluated)에서 여러 범위 및 관리형 소스의 목록이 결합되는 방식을 설명 | `allowedMcpServers`와 동일 |

543| `allowManagedMcpServersOnly` | 허용 목록을 관리형 소스만으로 잠금 | 관리형 설정 소스만; [모든 관리형 소스에서 읽은 키](/docs/ko/managed-settings#keys-read-from-every-admin-source)에서 어떤 관리형 소스가 이를 켤 수 있는지 설명. 설정은 다른 범위에서 효과 없음 | `allowedMcpServers`와 동일 |559| `allowManagedMcpServersOnly` | 허용 목록을 관리형 소스만으로 잠금 | 관리형 설정 소스만; [모든 관리형 소스에서 읽은 키](/docs/ko/managed-settings#keys-read-from-every-admin-source)에서 어떤 관리형 소스가 이를 켤 수 있는지 설명. 설정은 다른 범위에서 효과 없음 | `allowedMcpServers`와 동일 |

560| `allowClaudeInChromeWithManagedMcp` | 기본 제공 Claude in Chrome 서버가 `managed-mcp.json`과 함께 실행되도록 허용 | 디바이스의 관리형 설정만: MDM 프로필, HKLM 레지스트리, 또는 `managed-settings.json`. 서버 관리 설정 및 사용자 쓰기 가능 소스는 효과 없음 | MDM, GPO, 플릿 관리, 또는 관리자 권한이 있는 모든 프로세스 |

544| `allowAllClaudeAiMcps` | Claude Code가 자체적으로 가져오는 claude.ai 커넥터를 `managed-mcp.json`과 함께 로드. [클라우드 세션을 실행하는 호스트의 `managed-mcp.json`은 여전히 해당 세션의 커넥터를 억제](#allow-claude-ai-connectors-alongside-the-managed-set) | 관리형 설정 소스만; 설정은 다른 곳에서 효과 없음 | `allowedMcpServers`와 동일 |561| `allowAllClaudeAiMcps` | Claude Code가 자체적으로 가져오는 claude.ai 커넥터를 `managed-mcp.json`과 함께 로드. [클라우드 세션을 실행하는 호스트의 `managed-mcp.json`은 여전히 해당 세션의 커넥터를 억제](#allow-claude-ai-connectors-alongside-the-managed-set) | 관리형 설정 소스만; 설정은 다른 곳에서 효과 없음 | `allowedMcpServers`와 동일 |

545 562 

546<h2 id="related-resources">563<h2 id="related-resources">

Details

449| [`blockedMarketplaces`](/docs/ko/settings-reference#blockedmarketplaces) | 마켓플레이스 소스의 차단 목록입니다. 차단된 소스는 다운로드 전에 확인되므로 파일 시스템에 절대 닿지 않습니다. [관리형 마켓플레이스 제한](/docs/ko/plugins/org#restrict-what-users-can-install)을 참조하세요 |449| [`blockedMarketplaces`](/docs/ko/settings-reference#blockedmarketplaces) | 마켓플레이스 소스의 차단 목록입니다. 차단된 소스는 다운로드 전에 확인되므로 파일 시스템에 절대 닿지 않습니다. [관리형 마켓플레이스 제한](/docs/ko/plugins/org#restrict-what-users-can-install)을 참조하세요 |

450| [`channelsEnabled`](/docs/ko/settings-reference#channelsenabled) | 조직에 대해 [채널](/docs/ko/channels)을 허용합니다. 각 플랜의 기본값은 [엔터프라이즈 제어](/docs/ko/channels#enterprise-controls)를 참조하세요 |450| [`channelsEnabled`](/docs/ko/settings-reference#channelsenabled) | 조직에 대해 [채널](/docs/ko/channels)을 허용합니다. 각 플랜의 기본값은 [엔터프라이즈 제어](/docs/ko/channels#enterprise-controls)를 참조하세요 |

451| [`disableCommandPluginSources`](/docs/ko/settings-reference#disablecommandpluginsources) | `true`일 때 [`command` 플러그인 소스](/docs/ko/plugins/marketplace-reference#command-plugin-source)를 완전히 차단하므로 마켓플레이스에서 선언한 명령이 실행되지 않습니다. 또한 마켓플레이스 [`headersHelper` 명령](/docs/ko/plugins/host-marketplace#authenticate-archive-downloads)을 차단합니다. 단, 관리형 설정 자체가 선언한 마켓플레이스는 제외합니다. 설정되지 않으면 `allowManagedHooksOnly`를 따릅니다. Claude Code v2.1.229 이상이 필요하며, `headersHelper` 차단은 v2.1.238 이상이 필요합니다 |451| [`disableCommandPluginSources`](/docs/ko/settings-reference#disablecommandpluginsources) | `true`일 때 [`command` 플러그인 소스](/docs/ko/plugins/marketplace-reference#command-plugin-source)를 완전히 차단하므로 마켓플레이스에서 선언한 명령이 실행되지 않습니다. 또한 마켓플레이스 [`headersHelper` 명령](/docs/ko/plugins/host-marketplace#authenticate-archive-downloads)을 차단합니다. 단, 관리형 설정 자체가 선언한 마켓플레이스는 제외합니다. 설정되지 않으면 `allowManagedHooksOnly`를 따릅니다. Claude Code v2.1.229 이상이 필요하며, `headersHelper` 차단은 v2.1.238 이상이 필요합니다 |

452| [`disableSideloadFlags`](/docs/ko/settings-reference#disablesideloadflags) | 시작 시 `--plugin-dir`, `--plugin-url`, `--agents` 및 `--mcp-config` 플래그를 거부합니다. 클라우드 세션에서 Claude Code는 `--mcp-config`를 통해 서버가 전달한 MCP 서버를 삭제합니다. 단, 인프로세스 `type: "sdk"` 항목은 제외하고 세션을 시작합니다. Claude Code v2.1.193 이상이 필요합니다 |452| [`disableSideloadFlags`](/docs/ko/settings-reference#disablesideloadflags) | 시작 시 `--plugin-dir`, `--plugin-url`, `--agents` 및 `--mcp-config` 플래그를 거부합니다. 클라우드 세션에서 Claude Code는 대신 세션을 시작하고 서버가 전달한 `--mcp-config` 서버를 삭제합니다. 단, 해당 [참조 항목](/docs/ko/settings-reference#disablesideloadflags)이 나열하는 예외는 제외합니다. Claude Code v2.1.193 이상이 필요합니다 |

453| [`forceRemoteSettingsRefresh`](/docs/ko/settings-reference#forceremotesettingsrefresh) | `true`일 때 원격 관리형 설정이 새로 가져올 때까지 CLI 시작을 차단하고 가져오기가 실패하면 종료합니다. [실패 폐쇄 적용](/docs/ko/server-managed-settings#enforce-fail-closed-startup)을 참조하세요 |453| [`forceRemoteSettingsRefresh`](/docs/ko/settings-reference#forceremotesettingsrefresh) | `true`일 때 원격 관리형 설정이 새로 가져올 때까지 CLI 시작을 차단하고 가져오기가 실패하면 종료합니다. [실패 폐쇄 적용](/docs/ko/server-managed-settings#enforce-fail-closed-startup)을 참조하세요 |

454| [`managedMcpServers`](/docs/ko/settings-reference#managedmcpservers) | 모든 사용자에게 자신의 것과 함께 제공되는 원격 MCP 서버입니다. 이는 서버를 제공하며 아무것도 잠그지 않습니다. [관리형 설정을 통해 서버 제공](/docs/ko/managed-mcp#provide-servers-through-managed-settings)을 참조하세요. Claude Code v2.1.259 이상이 필요합니다 |454| [`managedMcpServers`](/docs/ko/settings-reference#managedmcpservers) | 모든 사용자에게 자신의 것과 함께 제공되는 원격 MCP 서버입니다. 이는 서버를 제공하며 아무것도 잠그지 않습니다. [관리형 설정을 통해 서버 제공](/docs/ko/managed-mcp#provide-servers-through-managed-settings)을 참조하세요. Claude Code v2.1.259 이상이 필요합니다 |

455| [`managedSourcesBehavior`](/docs/ko/settings-reference#managedsourcesbehavior) | Claude Code가 최고 우선순위 관리형 소스만 적용하는지 또는 [모든 소스를 구성](#compose-every-managed-source)하는지 여부입니다 |455| [`managedSourcesBehavior`](/docs/ko/settings-reference#managedsourcesbehavior) | Claude Code가 최고 우선순위 관리형 소스만 적용하는지 또는 [모든 소스를 구성](#compose-every-managed-source)하는지 여부입니다 |

mcp.md +3 −3

Details

542 * [웹 세션](/docs/ko/claude-code-on-the-web)에서 아직 연결되지 않은 플러그인 서버에 대한 MCP 호출 (예: 유휴 세션이 깨어난 직후)은 서버를 요청 시 시작하고 연결을 기다립니다.542 * [웹 세션](/docs/ko/claude-code-on-the-web)에서 아직 연결되지 않은 플러그인 서버에 대한 MCP 호출 (예: 유휴 세션이 깨어난 직후)은 서버를 요청 시 시작하고 연결을 기다립니다.

543* **경로 자리 표시자**: `${CLAUDE_PLUGIN_ROOT}`는 플러그인의 설치 디렉터리로 확인되고, `${CLAUDE_PLUGIN_DATA}`는 [지속적인 상태](/docs/ko/plugins/components#path-variables-and-persistent-data) 디렉터리로 확인되며, `${CLAUDE_PROJECT_DIR}`은 안정적인 프로젝트 루트로 확인됩니다. 대체는 다음에 적용됩니다:543* **경로 자리 표시자**: `${CLAUDE_PLUGIN_ROOT}`는 플러그인의 설치 디렉터리로 확인되고, `${CLAUDE_PLUGIN_DATA}`는 [지속적인 상태](/docs/ko/plugins/components#path-variables-and-persistent-data) 디렉터리로 확인되며, `${CLAUDE_PROJECT_DIR}`은 안정적인 프로젝트 루트로 확인됩니다. 대체는 다음에 적용됩니다:

544 * `stdio` 서버: `command`, `args`, `env`544 * `stdio` 서버: `command`, `args`, `env`

545 * `http`, `sse` 및 `ws` 서버: `url`, `headers` 및 `headersHelper`. v2.1.195 이전에는 `headersHelper`가 자리 표시자를 리터럴 문자열로 전달했습니다.545 * `http`, `sse` 및 `ws` 서버: `url`, `headers` 및 `headersHelper`

546* **사용자 환경 액세스**: 수동으로 구성된 서버와 동일한 환경 변수에 액세스546* **사용자 환경 액세스**: 수동으로 구성된 서버와 동일한 환경 변수에 액세스

547* **여러 전송 유형**: stdio, SSE, HTTP 및 WebSocket 전송 지원. 전송 지원은 서버에 따라 다를 수 있습니다.547* **여러 전송 유형**: stdio, SSE, HTTP 및 WebSocket 전송 지원. 전송 지원은 서버에 따라 다를 수 있습니다.

548 548 


1101 1101 

1102| 서버를 구성한 위치 | 작업 디렉토리 |1102| 서버를 구성한 위치 | 작업 디렉토리 |

1103| :- | :- |1103| :- | :- |

1104| [플러그인](/docs/ko/plugins/components#mcp-servers) | 플러그인의 루트 디렉토리. Claude Code v2.1.195 이상 필요 |1104| [플러그인](/docs/ko/plugins/components#mcp-servers) | 플러그인의 루트 디렉토리 |

1105| 프로젝트 `.mcp.json` 또는 [로컬 범위](#local-scope) 서버 | 서버가 선언된 프로젝트 디렉토리 |1105| 프로젝트 `.mcp.json` 또는 [로컬 범위](#local-scope) 서버 | 서버가 선언된 프로젝트 디렉토리 |

1106| 프로젝트의 에이전트 파일, SDK의 `mcpServers` 옵션 또는 `setMcpServers()` 메서드의 서버, 또는 [`--mcp-config`](/docs/ko/cli-reference) | 세션의 [기본 작업 디렉토리](/docs/ko/permissions#working-directories) |1106| 프로젝트의 에이전트 파일, SDK의 `mcpServers` 옵션 또는 `setMcpServers()` 메서드의 서버, 또는 [`--mcp-config`](/docs/ko/cli-reference) | 세션의 [기본 작업 디렉토리](/docs/ko/permissions#working-directories) |

1107| [사용자 범위](#user-scope), [관리형 MCP](/docs/ko/managed-mcp), [claude.ai 커넥터](#use-mcp-servers-from-claude-ai), 또는 프로젝트 외부의 에이전트 파일(예: `--add-dir` 디렉토리의 파일 포함) | 구성 디렉토리, `~/.claude`(또는 [`CLAUDE_CONFIG_DIR`](/docs/ko/env-vars)을 설정한 경우) |1107| [사용자 범위](#user-scope), [관리형 MCP](/docs/ko/managed-mcp), [claude.ai 커넥터](#use-mcp-servers-from-claude-ai), 또는 프로젝트 외부의 에이전트 파일(예: `--add-dir` 디렉토리의 파일 포함) | 구성 디렉토리, `~/.claude`(또는 [`CLAUDE_CONFIG_DIR`](/docs/ko/env-vars)을 설정한 경우) |


1440 1440 

1441서버는 Claude가 선택한 인수를 수신하므로 서버 측에서 조합을 계속 검증하십시오.1441서버는 Claude가 선택한 인수를 수신하므로 서버 측에서 조합을 계속 검증하십시오.

1442 1442 

1443Claude Code가 API가 허용하는 스키마를 생성할 수 없거나 스키마 재작성을 활성화하는 원격 구성을 받지 않는 배포에서는 해당 도구 하나를 건너뛰고, 서버의 로그에 이유를 기록하며, 서버의 다른 도구는 사용 가능하게 유지합니다. v2.1.195보다 이전 버전은 입력 스키마에 루트 레벨 `anyOf`, `oneOf` 또는 `allOf`가 있는 모든 도구를 건너뜁니다.1443Claude Code가 API가 허용하는 스키마를 생성할 수 없거나 스키마 재작성을 활성화하는 원격 구성을 받지 않는 배포에서는 해당 도구 하나를 건너뛰고, 서버의 로그에 이유를 기록하며, 서버의 다른 도구는 사용 가능하게 유지합니다.

1444 1444 

1445<h2 id="tools-with-invalid-input-schemas">1445<h2 id="tools-with-invalid-input-schemas">

1446 유효하지 않은 입력 스키마를 가진 도구1446 유효하지 않은 입력 스키마를 가진 도구

memory.md +6 −0

Details

115 115 

116상대 경로와 절대 경로 모두 허용됩니다. 상대 경로는 작업 디렉토리가 아닌 가져오기를 포함하는 파일을 기준으로 해석됩니다. 가져온 파일은 최대 4홉의 깊이로 다른 파일을 재귀적으로 가져올 수 있습니다.116상대 경로와 절대 경로 모두 허용됩니다. 상대 경로는 작업 디렉토리가 아닌 가져오기를 포함하는 파일을 기준으로 해석됩니다. 가져온 파일은 최대 4홉의 깊이로 다른 파일을 재귀적으로 가져올 수 있습니다.

117 117 

118경로에 공백이 포함된 파일을 가져오려면 각 공백 앞에 백슬래시를 붙이십시오. 백슬래시가 없으면 경로가 첫 번째 공백에서 끝나며, 가져오기가 자신의 줄에 있더라도 마찬가지입니다. 따옴표로 감싼 경로는 백슬래시 유무에 관계없이 가져오지 않습니다. 이 가져오기는 `Design Docs`라는 폴더에서 파일을 로드합니다:

119 

120```text theme={null}

121- API conventions @Design\ Docs/api-conventions.md

122```

123 

118가져오기 구문 분석은 마크다운 코드 스팬과 펜스된 코드 블록을 건너뜁니다. CLAUDE.md에서 경로를 언급하되 가져오지 않으려면 백틱으로 감싸십시오: `` `@README` ``를 작성하면 텍스트가 리터럴로 유지되고, 백틱 외부의 `@README`는 파일을 가져옵니다.124가져오기 구문 분석은 마크다운 코드 스팬과 펜스된 코드 블록을 건너뜁니다. CLAUDE.md에서 경로를 언급하되 가져오지 않으려면 백틱으로 감싸십시오: `` `@README` ``를 작성하면 텍스트가 리터럴로 유지되고, 백틱 외부의 `@README`는 파일을 가져옵니다.

119 125 

120README, package.json 및 워크플로우 가이드를 가져오려면 CLAUDE.md의 어디든지 `@` 구문으로 참조하십시오:126README, package.json 및 워크플로우 가이드를 가져오려면 CLAUDE.md의 어디든지 `@` 구문으로 참조하십시오:

model-config.md +184 −173

Details

65별칭은 공급자의 권장 버전을 가리키며 시간이 지남에 따라 업데이트됩니다. 특정 버전으로 고정하려면 전체 모델 이름(예: `claude-opus-5-5`)을 사용하거나 `ANTHROPIC_DEFAULT_OPUS_MODEL`과 같은 해당 환경 변수를 설정합니다.65별칭은 공급자의 권장 버전을 가리키며 시간이 지남에 따라 업데이트됩니다. 특정 버전으로 고정하려면 전체 모델 이름(예: `claude-opus-5-5`)을 사용하거나 `ANTHROPIC_DEFAULT_OPUS_MODEL`과 같은 해당 환경 변수를 설정합니다.

66 66 

67<Note>67<Note>

68 Sonnet 5.5는 Claude Code v2.1.284 이상이 필요하고, Opus 5.5는 v2.1.280 이상이 필요합니다. `claude update`를 실행하여 업그레이드합니다.68 Sonnet 5.5는 Claude Code v2.1.284 이상이 필요하고, Opus 5.5는 v2.1.280 이상이 필요합니다. 이전 버전의 요청이 실패하면 [Claude Code는 이 모델을 지원하지 않습니다](/docs/ko/errors#claude-code-does-not-support-this-model)를 참조하십시오. `claude update`를 실행하여 업그레이드합니다.

69</Note>69</Note>

70 70 

71<h3 id="work-with-fable">71<h3 id="work-with-fable">


138 138 

139`/model <name>`을 직접 입력하는 것은 `Enter`처럼 동작합니다. 이 세션에만 전환하려면 `/model`로 선택기를 열고 모델의 행에서 `s`를 누릅니다.139`/model <name>`을 직접 입력하는 것은 `Enter`처럼 동작합니다. 이 세션에만 전환하려면 `/model`로 선택기를 열고 모델의 행에서 `s`를 누릅니다.

140 140 

141`/model`로 설정된 모델은 [주 대화의 모델을 상속하는 서브에이전트](/docs/ko/sub-agents#choose-a-model)에도 도달합니다. Claude Code는 Claude가 시작할 때 세션이 사용 중인 모델에서 해당 모델을 확인하기 때문입니다. 연구 또는 테스트 실행을 하나에 위임하기 전에 Opus로 전환하면 해당 작업도 Opus에서 실행됩니다. 사용자 정의 서브에이전트를 더 작은 모델에 유지하려면 해당 정의에서 `model`을 설정합니다.141Enterprise 플랜에서 claude.ai 계정으로 로그인하고 `/model`로 기본값을 저장하면 Claude Code는 해당 계정에도 선택을 기록합니다. Claude Code v2.1.280 이상이 필요합니다.

142 

143* 관리자가 [조직 기본 모델](#organization-default-model)을 설정하지 않았을 때 [Default 옵션](#default-model-setting)은 기록된 모델로 확인될 수 있으며, 그렇게 되면 선택기의 Default 행은 해당 모델의 이름을 표시합니다.

144* [모델 제한](#restrict-model-selection)이 기록된 모델을 제외하거나 계정에서 사용할 수 없으며, 관리자가 조직 기본 모델을 설정하지 않았으면 Default 옵션은 아무것도 기록되지 않은 것처럼 확인됩니다.

145* Default 또는 `opusplan`을 `/model`에서 선택하면 기록된 선택은 변경되지 않습니다.

146 

147`/model`로 모델을 전환하면 전환은 [주 대화의 모델을 상속하는 서브에이전트](/docs/ko/sub-agents#choose-a-model)에도 도달합니다. Claude Code는 Claude가 시작할 때 세션이 사용 중인 모델에서 해당 모델을 확인하기 때문입니다. 연구 또는 테스트 실행을 하나에 위임하기 전에 Opus로 전환하면 해당 작업도 Opus에서 실행됩니다. 사용자 정의 서브에이전트를 더 작은 모델에 유지하려면 해당 정의에서 `model`을 설정합니다.

142 148 

143[비대화형 모드](/docs/ko/headless)에서 `-p` 플래그를 사용하여 `/model`로 모델을 설정하면 현재 세션에만 적용되며 기본값으로 저장되지 않습니다. `/model`은 해당 모드에서 Claude Code v2.1.205 이상이 필요합니다. 프로젝트 및 관리 설정은 여전히 우선순위를 가지며 다음 시작 시 다시 적용됩니다. [조직 기본 모델](#organization-default-model)이 관리자에 의해 사용자 선택을 재정의하도록 구성된 경우 다음 시작 시 다시 적용됩니다.149[비대화형 모드](/docs/ko/headless)에서 `-p` 플래그를 사용하여 `/model`로 모델을 설정하면 현재 세션에만 적용되며 기본값으로 저장되지 않습니다. `/model`은 해당 모드에서 Claude Code v2.1.205 이상이 필요합니다. 프로젝트 및 관리 설정은 여전히 우선순위를 가지며 다음 시작 시 다시 적용됩니다. [조직 기본 모델](#organization-default-model)이 관리자에 의해 사용자 선택을 재정의하도록 구성된 경우 다음 시작 시 다시 적용됩니다.

144 150 


158 164 

159Claude Code가 조직의 [관리 플러그인](/docs/ko/settings-reference#enabledplugins)이 제공하는 PreModelSwitch 훅을 알 수 없는 경우(예: 관리 플러그인이 로드되지 않음), 확인되지 않은 상태로 적용하는 대신 전환을 거부하며, 각 새 시도에서 다시 확인합니다. [PreModelSwitch 훅에 의해 모델 전환이 차단되었습니다](/docs/ko/errors#model-switch-was-blocked-by-a-premodelswitch-hook)를 참조하여 메시지 및 복구를 확인합니다.165Claude Code가 조직의 [관리 플러그인](/docs/ko/settings-reference#enabledplugins)이 제공하는 PreModelSwitch 훅을 알 수 없는 경우(예: 관리 플러그인이 로드되지 않음), 확인되지 않은 상태로 적용하는 대신 전환을 거부하며, 각 새 시도에서 다시 확인합니다. [PreModelSwitch 훅에 의해 모델 전환이 차단되었습니다](/docs/ko/errors#model-switch-was-blocked-by-a-premodelswitch-hook)를 참조하여 메시지 및 복구를 확인합니다.

160 166 

161[Agent SDK](/docs/ko/agent-sdk/overview) `setModel()` 메서드를 통해 모델을 전환하거나 [Remote Control](/docs/ko/remote-control)을 통해 연결된 장치에서, 또는 Claude Code CLI를 전환하는 [Desktop 앱](/docs/ko/desktop)과 같은 앱에서 Claude Code는 문자열이 인식하는 것인지 확인한 후 저장합니다. 이 확인에는 Claude Code v2.1.200 이상이 필요합니다. Remote Control 선택을 확인하려면 머신에 Claude Code v2.1.260 이상이 필요합니다. Anthropic API에서 Claude Code는 다음을 인식합니다:167[Agent SDK](/docs/ko/agent-sdk/overview) `setModel()` 메서드를 통해 모델을 전환하거나 [Desktop 앱](/docs/ko/desktop)과 같은 앱에서, 또는 [Remote Control](/docs/ko/remote-control)을 통해 연결된 장치에서 Claude Code는 값을 전환할 때 확인합니다:

162 168 

163* 모델 별칭169* **Agent SDK 또는 앱**: Claude Code v2.1.268 이상에서 Claude Code가 로컬에서 모델 ID를 수락하지 않으면(예: [사용자 정의 모델 옵션](#add-a-custom-model-option)의 경우), 세션이 처음 전환할 때 공급자와 ID를 확인합니다. 확인은 모든 공급자에서 실행되며, 공급자가 제공하지 않는 ID는 다음 요청에서 실패하는 대신 전환 시 거부됩니다.

164* `/model` 선택기의 항목170* **Remote Control**: Anthropic API에서 Claude Code는 값을 로컬에서 확인하고 요청을 보내지 않습니다.

165* `claude-`로 시작하는 모든 이름

166* [사용자 정의 모델 옵션](#add-a-custom-model-option)으로 또는 [`modelOverrides`](#override-model-ids-per-version)에서 자신이 구성한 값

167 171 

168Claude Code는 인식되지 않은 문자열을 `Model "<name>" is not a recognized model id.`로 거부하며 세션은 현재 모델을 유지하고, 문자열을 저장하고 다음 요청에서 실패하는 대신입니다. 복구 단계는 [오류 참조](/docs/ko/errors#model-is-not-a-recognized-model-id)를 참조하십시오.172[모델은 인식된 모델 ID가 아닙니다](/docs/ko/errors#model-is-not-a-recognized-model-id) 및 [모델을 찾을 수 없습니다](/docs/ko/errors#model-not-found)를 참조하여 메시지를 확인합니다.

169 173 

170확인은 Anthropic API에서만 실행됩니다. Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, [AWS의 Claude Platform](/docs/ko/claude-platform-on-aws), [LLM 게이트웨이](/docs/ko/llm-gateway) 뒤 또는 사용자 정의 `ANTHROPIC_BASE_URL`에서 공급자 또는 게이트웨이가 모델 이름을 정의하므로 Claude Code는 확인 없이 모든 문자열을 통과시킵니다. 확인은 또한 `--model` 플래그, `ANTHROPIC_MODEL` 환경 변수 또는 `model` 설정을 다루지 않습니다. 잘못 입력된 값은 첫 번째 요청에서 [선택된 모델에 문제가 있습니다](/docs/ko/errors#theres-an-issue-with-the-selected-model)를 생성합니다. Claude Code는 여전히 모든 공급자에서 요청 시간에 [인식되지 않은 모델 진단 라인](/docs/ko/errors#unrecognized-model-id-on-a-request)을 작성할 수 있습니다.174`--model` 플래그, `ANTHROPIC_MODEL` 환경 변수 또는 `model` 설정으로 모델을 설정하면 Claude Code는 미리 확인하지 않으며, 잘못 입력된 값은 첫 번째 요청에서 [선택된 모델에 문제가 있습니다](/docs/ko/errors#theres-an-issue-with-the-selected-model)를 생성합니다.

171 175 

172요청된 모델에 예정된 폐기 날짜가 있거나 자동으로 최신 버전으로 다시 매핑되면 Claude Code는 요청된 모델의 이름을 지정하는 경고를 표시합니다. 대화형 세션은 시작 알림으로 표시합니다. v2.1.182부터 기본 텍스트 출력 형식을 사용할 때 [비대화형 모드](/docs/ko/headless)에서 동일한 경고가 stderr에 작성됩니다. 확인은 또한 [서브에이전트 프론트매터](/docs/ko/sub-agents)에 설정된 `model`을 다룹니다. stderr 경고는 `--output-format json` 및 `stream-json`에 대해 억제됩니다. [결과 메시지](/docs/ko/headless#get-structured-output)의 `modelUsage` 필드에서 실제 모델을 읽습니다.176요청된 모델에 예정된 폐기 날짜가 있거나 자동으로 최신 버전으로 다시 매핑되면 Claude Code는 요청된 모델의 이름을 지정하는 경고를 표시합니다. 대화형 세션은 시작 알림으로 표시합니다. v2.1.182부터 기본 텍스트 출력 형식을 사용할 때 [비대화형 모드](/docs/ko/headless)에서 동일한 경고가 stderr에 작성됩니다. 확인은 또한 [서브에이전트 프론트매터](/docs/ko/sub-agents)에 설정된 `model`을 다룹니다. stderr 경고는 `--output-format json` 및 `stream-json`에 대해 억제됩니다. [결과 메시지](/docs/ko/headless#get-structured-output)의 `modelUsage` 필드에서 실제 모델을 읽습니다.

173 177 


215 219 

216* `default`, `inherit`, `opusplan` 또는 `haiku`로 설정합니다220* `default`, `inherit`, `opusplan` 또는 `haiku`로 설정합니다

217* [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)이 켜져 있습니다221* [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)이 켜져 있습니다

218* [`availableModels`](#restrict-model-selection) 또는 [조직 모델 제한](#organization-model-restrictions)이 모델을 제외합니다222* 조직의 [모델 제한](#restrict-model-selection)이 모델을 제외합니다

219* 모델을 계정에서 사용할 수 없습니다223* 모델을 계정에서 사용할 수 없습니다

220 224 

221새 세션이 변수의 모델에서 시작될 때 `claude --resume`, `--continue` 또는 `/resume` 선택기로 재개한 세션도 시작됩니다. Claude Code는 해당 세션의 트랜스크립트에 저장된 모델을 복원하지 않습니다. 그렇지 않으면 Claude Code는 [세션을 재개할 때](#setting-your-model) 변수를 사용하지 않습니다.225새 세션이 변수의 모델에서 시작될 때 `claude --resume`, `--continue` 또는 `/resume` 선택기로 재개한 세션도 시작됩니다. Claude Code는 해당 세션의 트랜스크립트에 저장된 모델을 복원하지 않습니다. 그렇지 않으면 Claude Code는 [세션을 재개할 때](#setting-your-model) 변수를 사용하지 않습니다.


235 모델 선택 제한239 모델 선택 제한

236</h2>240</h2>

237 241 

238엔터프라이즈 관리자는 [관리형 또는 정책 설정](/docs/ko/managed-settings)에서 `availableModels`를 사용하여 사용자가 선택할 수 있는 모델을 제한할 수 있습니다. 항목은 `sonnet`과 같은 모델 패밀리, `claude-sonnet-4-5`와 같은 버전 접두사, 또는 `claude-sonnet-4-5-20250929`와 같은 전체 모델 ID와 일치합니다. 버전 접두사는 또한 다른 세그먼트로 확장하는 이후 모델 ID와도 일치하므로, `claude-fable-5`는 Fable 5와 Fable 5.1을 모두 허용하고, `claude-fable-5-1`은 Fable 5.1만 허용합니다. 목록이 허용하는 모델을 차단하거나 각 모델 ID 항목이 이름을 지은 버전만 허용하도록 하려면 [특정 모델 또는 버전 차단](#block-specific-models-or-versions)을 참조하세요.242관리자는 [관리형 또는 정책 설정](/docs/ko/managed-settings)에서 `availableModels`를 사용하여 사용자가 선택할 수 있는 모델을 제한할 수 있습니다. 항목은 `sonnet`과 같은 모델 패밀리, `claude-sonnet-4-5`와 같은 버전 접두사, 또는 `claude-sonnet-4-5-20250929`와 같은 전체 모델 ID와 일치합니다. 버전 접두사는 또한 다른 세그먼트로 확장하는 이후 모델 ID와도 일치하므로, `claude-fable-5`는 Fable 5와 Fable 5.1을 모두 허용하고, `claude-fable-5-1`은 Fable 5.1만 허용합니다. 목록이 허용하는 모델을 차단하거나 각 모델 ID 항목이 이름을 지정하는 버전만 허용하도록 하려면 [특정 모델 또는 버전 차단](#block-specific-models-or-versions)을 참조하세요.

239 243 

240Claude Code를 임베드하고 [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/ko/env-vars)를 설정하는 플랫폼에서는 호스트의 모델 구성이 관리형 모델 설정보다 우선하며, 관리형 `availableModels` 허용 목록은 호스트가 자체 목록을 제공하지 않는 한 계속 적용됩니다. [관리형 설정 우선순위의 예외](/docs/ko/settings#exceptions-to-managed-settings-precedence)에서 호스트가 재정의하는 키와 변수를 설명합니다.244Claude Code를 포함하고 [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/ko/env-vars)를 설정하는 플랫폼에서는 호스트의 모델 구성이 관리형 모델 설정보다 우선하며, 관리형 `availableModels` 허용 목록은 호스트가 자체 목록을 제공하지 않는 한 계속 적용됩니다. [관리형 설정 우선순위의 예외](/docs/ko/settings#exceptions-to-managed-settings-precedence)는 호스트가 재정의하는 키와 변수를 설명합니다.

241 245 

242`availableModels`가 설정되면, 허용 목록은 사용자가 모델을 지정할 수 있는 모든 곳에 적용됩니다:246`availableModels`가 설정되면, 허용 목록은 사용자가 모델을 지정할 수 있는 모든 곳에 적용됩니다:

243 247 

244* **메인 세션 모델**: `/model`, `--model` 플래그, `ANTHROPIC_MODEL` 환경 변수, `model` 설정, [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), 그리고 [세션을 재개할 때](#setting-your-model) 복원되는 모델248* **메인 세션 모델**: `/model`, `--model` 플래그, `ANTHROPIC_MODEL` 환경 변수, `model` 설정, [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions), 그리고 [세션을 재개할 때](#setting-your-model) 복원되는 모델

245* **별칭 해석**: 환경 변수 `ANTHROPIC_DEFAULT_OPUS_MODEL`, `ANTHROPIC_DEFAULT_SONNET_MODEL`, `ANTHROPIC_DEFAULT_HAIKU_MODEL`, `ANTHROPIC_DEFAULT_FABLE_MODEL`은 허용된 별칭을 목록 외부의 모델로 리다이렉트할 수 없습니다249* **별칭 해석**: `ANTHROPIC_DEFAULT_OPUS_MODEL`, `ANTHROPIC_DEFAULT_SONNET_MODEL`, `ANTHROPIC_DEFAULT_HAIKU_MODEL`, 그리고 `ANTHROPIC_DEFAULT_FABLE_MODEL` 환경 변수는 허용된 별칭을 목록 외부의 모델로 리디렉션할 수 없습니다

246* **빠른 모드**: 목록 외부의 Opus 모델로 암묵적으로 전환될 경우 `/fast`는 토글을 거부하며, "is not in your organization's allowed models" 메시지를 표시합니다250* **빠른 모드**: `/fast`는 목록 외부의 Opus 모델로 암묵적으로 전환될 때 토글을 거부하며, "is not in your organization's allowed models" 메시지를 표시합니다

247* **서브에이전트 및 팀원 모델**: [서브에이전트](/docs/ko/sub-agents#choose-a-model) 프론트매터의 `model` 필드, Agent 도구의 `model` 파라미터, [에이전트 팀](/docs/ko/agent-teams#specify-teammates-and-models) 팀원 모델, `CLAUDE_CODE_SUBAGENT_MODEL`, 그리고 v2.1.197 이전 버전에서는 `/agents` 마법사의 모델 선택기&#x20;251* **서브에이전트 및 팀원 모델**: [서브에이전트](/docs/ko/sub-agents#choose-a-model) 프론트매터의 `model` 필드, Agent 도구의 `model` 매개변수, [에이전트 팀](/docs/ko/agent-teams#specify-teammates-and-models) 팀원 모델, `CLAUDE_CODE_SUBAGENT_MODEL`, 그리고 v2.1.197 이전에는 `/agents` 마법사의 모델 선택기&#x20;

248* **스킬 및 명령 모델**: [스킬 및 명령](/docs/ko/skills)의 `model` 프론트매터252* **스킬 및 명령 모델**: [스킬 및 명령](/docs/ko/skills)의 `model` 프론트매터

249* **어드바이저 모델**: 구성된 [`advisorModel`](/docs/ko/advisor) 설정 및 `--advisor` 플래그253* **어드바이저 모델**: 구성된 [`advisorModel`](/docs/ko/advisor) 설정 및 `--advisor` 플래그

250* **백그라운드 에이전트 모델**: [디스패치 선택기](/docs/ko/agent-view)에서 선택된 모델254* **백그라운드 에이전트 모델**: [디스패치 선택기](/docs/ko/agent-view)에서 선택된 모델

251 255 

252Anthropic API 및 [Claude Platform on AWS](/docs/ko/claude-platform-on-aws)에서 모델 패밀리 별칭 `opus`, `sonnet`, `haiku`, 또는 `fable`은 허용 목록이 해당 모델을 허용할 때 일반적인 모델로 해석됩니다. 허용 목록이 해당 모델을 차단할 때, Claude Code는 허용 목록이 허용하는 패밀리의 최신 버전으로 대체하고 요청된 모델과 대체된 모델을 모두 이름 지어 공지합니다. 예를 들어 `["sonnet", "claude-opus-4-6"]`을 사용하면, `/model opus`와 `--model opus` 모두 허용된 최신 Opus인 Claude Opus 4.6을 선택합니다. v2.1.205 이전에는 최신 릴리스 버전이 목록 외부에 있는 별칭은 목록이 이전 버전을 허용하더라도 다른 차단된 선택처럼 거부되거나 대체되었습니다.256Anthropic API 및 [Claude Platform on AWS](/docs/ko/claude-platform-on-aws)에서, 모델 패밀리 별칭 `opus`, `sonnet`, `haiku`, 또는 `fable`은 허용 목록이 해당 모델을 허용할 때 일반적인 모델로 해석됩니다. 허용 목록이 해당 모델을 차단할 때, Claude Code는 허용 목록이 허용하는 패밀리의 최신 버전으로 대체하고 요청된 모델과 대체된 모델을 모두 이름 지정하는 알림을 표시합니다. 예를 들어 `["sonnet", "claude-opus-4-6"]`을 사용하면, `/model opus`와 `--model opus` 모두 허용된 최신 Opus인 Claude Opus 4.6을 선택합니다. v2.1.205 이전에는 최신 릴리스 버전이 목록 외부에 있는 별칭은 목록이 이전 버전을 허용했을 때도 다른 차단된 선택처럼 거부되거나 대체되었습니다.

253 257 

254대체는 허용된 버전이 필요합니다: 허용 목록이 별칭의 패밀리 버전을 허용하지 않으면, 별칭은 다른 차단된 값처럼 아래의 거부 및 대체 동작을 따릅니다.258대체는 착지할 수 있는 허용된 버전이 필요합니다: 허용 목록이 별칭의 패밀리의 버전을 허용하지 않을 때, 별칭은 다른 차단된 값처럼 아래의 거부 및 대체 동작을 따릅니다.

255 259 

256Claude Code는 모델이 설정된 위치에 따라 다른 차단된 선택을 처리합니다:260Claude Code는 모델이 설정된 위치에 따라 다른 차단된 선택을 처리합니다:

257 261 

258* **`/model`**: Claude Code는 오류로 전환을 거부합니다262* **`/model`**: Claude Code는 스위치를 오류로 거부합니다

259* **`--model` 플래그, `ANTHROPIC_MODEL`, 또는 `model` 설정**: Claude Code는 시작 시 값을 경고와 함께 요청된 모델과 대체된 모델을 모두 이름 지어 대체하며, 세션은 기본 모델에서 시작됩니다263* **`--model` 플래그, `ANTHROPIC_MODEL`, 또는 `model` 설정**: Claude Code는 시작 시 값을 요청된 모델과 대체된 모델을 모두 이름 지정하는 경고와 함께 대체하고, 세션은 기본 모델에서 시작됩니다

260* **[`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions)**: Claude Code는 변수를 무시합니다264* **[`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions)**: Claude Code는 변수를 무시합니다

261* **서브에이전트 또는 팀원 재정의**: Claude Code는 요청을 실패하지 않고 서브에이전트 또는 팀원을 폴백 모델에서 실행합니다. 서브에이전트 폴백은 [모델 선택](/docs/ko/sub-agents#choose-a-model)을 참조하고 팀원 폴백은 [팀원 및 모델 지정](/docs/ko/agent-teams#specify-teammates-and-models)을 참조하세요.265* **서브에이전트 또는 팀원 재정의**: Claude Code는 요청을 실패하지 않고 서브에이전트 또는 팀원을 폴백 모델에서 실행합니다. 서브에이전트 폴백은 [모델 선택](/docs/ko/sub-agents#choose-a-model)을 참조하고 팀원 폴백은 [팀원 및 모델 지정](/docs/ko/agent-teams#specify-teammates-and-models)을 참조하세요.

262 266 

263 대화형 세션에서, Claude Code는 요청된 모델과 대체된 모델을 이름 지어 이 폴백 또는 위의 최신 허용 버전 대체로 서브에이전트의 모델을 대체할 때 경고합니다. 팀원의 폴백은 보고하지 않습니다.267 대화형 세션에서, Claude Code는 이 폴백 또는 위의 최신 허용 버전 대체로 서브에이전트의 모델을 대체할 때 요청된 모델과 대체된 모델을 이름 지정하여 경고합니다. 팀원의 폴백은 보고하지 않습니다.

264 268 

265 위의 최신 허용 버전 대체가 작동하는 경우, 차단된 패밀리 별칭이 대신 따릅니다. v2.1.222 이전에는 별칭이 모든 제공자에서 다른 차단된 값처럼 폴백했습니다269 위의 최신 허용 버전 대체가 작동하는 경우, 차단된 패밀리 별칭은 대신 이를 따릅니다. v2.1.222 이전에는 별칭이 모든 제공자에서 다른 차단된 값처럼 폴백했습니다

266* **스킬 또는 명령 재정의**: Claude Code는 차단된 패밀리 별칭을 포함한 재정의를 무시하고, 스킬 또는 명령은 세션 모델에서 실행됩니다. [서브에이전트에서 실행되는](/docs/ko/skills#run-skills-in-a-subagent) 스킬 또는 명령은 대신 위의 서브에이전트 동작을 따릅니다270* **스킬 또는 명령 재정의**: Claude Code는 차단된 패밀리 별칭을 포함한 재정의를 무시하고, 스킬 또는 명령은 세션 모델에서 실행됩니다. [서브에이전트에서 실행되는](/docs/ko/skills#run-skills-in-a-subagent) 스킬 또는 명령은 대신 위의 서브에이전트 동작을 따릅니다

267* **`advisorModel` 설정**: 어드바이저는 세션에 대해 비활성화됩니다271* **`advisorModel` 설정**: 어드바이저는 세션에 대해 비활성화됩니다

268* **`--advisor` 플래그**: Claude Code는 시작 시 오류로 종료됩니다. [백그라운드 세션](/docs/ko/agent-view)에서는 종료하지 않고 어드바이저 없이 세션을 시작합니다272* **`--advisor` 플래그**: Claude Code는 시작 시 오류로 종료됩니다. [백그라운드 세션](/docs/ko/agent-view)에서는 종료하지 않고 어드바이저 없이 세션을 시작합니다


291 295 

292| 전달 메커니즘 | CLI 및 IDE | 데스크톱 로컬 세션 | 웹, 모바일 및 클라우드 세션 | Agent SDK 및 비대화형 | Cowork |296| 전달 메커니즘 | CLI 및 IDE | 데스크톱 로컬 세션 | 웹, 모바일 및 클라우드 세션 | Agent SDK 및 비대화형 | Cowork |

293| :- | :- | :- | :- | :- | :- |297| :- | :- | :- | :- | :- | :- |

294| 관리 콘솔의 [서버 관리 설정](/docs/ko/server-managed-settings) | 적용됨 | 적용됨 | 적용됨 | 적용됨 | 전달되지 않음 |298| 관리 콘솔의 [서버 관리 설정](/docs/ko/server-managed-settings) | 적용됨 | 적용됨 | [Claude Tag](https://claude.com/docs/claude-tag/overview) 세션을 제외하고 적용됨 | 적용됨 | 원격 Cowork 세션: 서버가 모델을 확인합니다. 사용자의 머신에서: 전달되지 않음. |

295| [MDM 또는 관리형 설정 파일](/docs/ko/managed-settings#delivery-mechanisms) | 적용됨 | 적용됨 | Anthropic 호스팅 환경에서는 전달되지 않음. [자체 호스팅 환경](/docs/ko/self-hosted-environments)에서는 [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)에 따라 러너 이미지에서 적용됨 | 적용됨 | 배포된 경우 적용됨 |299| [MDM 또는 관리형 설정 파일](/docs/ko/managed-settings#delivery-mechanisms) | 적용됨 | 적용됨 | Anthropic 호스팅 환경에서는 전달되지 않음. [자체 호스팅 환경](/docs/ko/self-hosted-environments)에서는 [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)에 따라 러너 이미지에서 적용됨 | 적용됨 | 배포된 경우 적용됨 |

296 300 

297* 클라우드 세션은 [Claude Code on the web](/docs/ko/claude-code-on-the-web) 또는 Desktop 앱에서 기본적으로 Anthropic 관리 VM에서 실행됩니다: 장치에 배포된 설정은 이에 도달하지 않으므로, 서버 관리 설정을 통해 허용 목록을 전달하세요. 조직이 [자체 호스팅 환경](/docs/ko/self-hosted-environments)으로 라우팅하는 세션은 자신의 컴퓨팅에서 실행되며 러너 이미지의 관리형 설정 파일도 읽습니다. [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)에서 해당 파일이 적용되는 시기를 설명합니다. 클라우드 세션의 중간 세션 모델 전환은 요청된 모델이 허용 목록에 의해 제외될 때 거부됩니다. 서버 관리 설정의 `availableModels` 목록이 비어있지 않으면, 서버는 목록이 제외하는 모델에서 클라우드 세션을 시작하려는 사용자의 요청을 거부합니다.301* [클라우드 세션](/docs/ko/claude-code-on-the-web)(데스크톱 앱에서 시작하는 세션 포함)은 기본적으로 Anthropic 관리 VM에서 실행됩니다: 장치에 배포된 설정은 이에 도달하지 않으므로, 서버 관리 설정을 통해 허용 목록을 전달합니다. 조직이 [자체 호스팅 환경](/docs/ko/self-hosted-environments)으로 라우팅하는 세션은 자신의 컴퓨팅에서 실행되고 러너 이미지의 관리형 설정 파일도 읽습니다. [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)은 해당 파일이 언제 적용되는지 설명합니다. 클라우드 세션의 중간 세션 모델 전환은 요청된 모델이 허용 목록에 의해 제외될 때 거부됩니다. 서버 관리 설정의 `availableModels` 목록이 비어있지 않을 때, 서버는 목록이 제외하는 모델에서 claude.ai/code 또는 데스크톱 앱에서 클라우드 세션을 시작하도록 요청하는 것을 거부합니다.

298* Cowork는 Claude Desktop 앱의 에이전트 작업 탭이며, 설계상 claude.ai 관리 콘솔에서 서버 관리 설정을 수신하지 않습니다. 관리형 설정 파일은 세션이 실행되는 위치에 있을 때 Cowork 세션에 적용됩니다. 원격 Cowork 세션은 Anthropic 관리 VM에서 실행되며, 여기서 장치 배포 파일은 없습니다.302* [Claude Tag](https://claude.com/docs/claude-tag/overview) 세션은 클라우드 환경에서 실행되지만 서버 관리 설정을 수신하지 않습니다. [자체 호스팅 환경](/docs/ko/self-hosted-environments)에서는 여전히 러너 이미지의 관리형 설정 파일을 읽습니다. 이러한 세션의 모델을 설정하려면 Claude Tag 관리자 가이드의 [범위에 대한 모델 선택](https://claude.com/docs/claude-tag/admins/customize#choose-the-model-for-a-scope)을 참조하세요.

299* [Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, 그리고 Claude Platform on AWS](/docs/ko/claude-platform-on-aws)와 같은 [제3자 제공자](/docs/ko/server-managed-settings#platform-availability)의 세션은 서버 관리 설정을 수신하지 않으므로, 거기서 MDM 또는 관리형 설정 파일을 통해 허용 목록을 전달하세요.303* Cowork(Claude 데스크톱 앱의 에이전트 작업 탭)는 Claude Code에서 세션을 실행하지만, 설계상 claude.ai 관리 콘솔에서 서버 관리 설정을 수신하지 않습니다. 서버 관리 설정의 `availableModels` 목록이 비어있지 않고 사용자가 목록 외부의 모델을 선택하면, 서버는 원격 Cowork 세션에 대해 해당 모델을 거부합니다. 관리형 설정 파일은 세션이 실행되는 위치에 있을 때 Cowork 세션에 적용됩니다. 원격 Cowork 세션은 Anthropic 관리 VM에서 실행되며, 여기서 장치 배포 파일은 없습니다.

304* [Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, 그리고 Claude Platform on AWS](/docs/ko/claude-platform-on-aws)와 같은 [제3자 제공자](/docs/ko/server-managed-settings#platform-availability)의 세션은 서버 관리 설정을 수신하지 않으므로, 허용 목록을 MDM 또는 관리형 설정 파일을 통해 전달합니다.

300* 서버 관리 전달은 또한 세션이 [적격 로그인 또는 키](/docs/ko/server-managed-settings#platform-availability)로 인증하도록 요구합니다. [`apiKeyHelper`](/docs/ko/settings-reference#apikeyhelper) 스크립트를 통해서만 키를 생성하는 플릿은 MDM 또는 관리형 설정 파일을 통해 허용 목록을 전달해야 합니다.305* 서버 관리 전달은 또한 세션이 [적격 로그인 또는 키](/docs/ko/server-managed-settings#platform-availability)로 인증하도록 요구합니다. [`apiKeyHelper`](/docs/ko/settings-reference#apikeyhelper) 스크립트를 통해서만 키를 생성하는 플릿은 MDM 또는 관리형 설정 파일을 통해 허용 목록을 전달해야 합니다.

301* Desktop Code 탭은 또한 [SSH 세션](/docs/ko/desktop#ssh-sessions)을 호스팅하며, 이는 실행되는 원격 호스트에서 관리형 설정 파일을 읽습니다. [Desktop 관리형 설정](/docs/ko/desktop#managed-settings)을 참조하세요.306* 데스크톱 Code 탭은 또한 [SSH 세션](/docs/ko/desktop#ssh-sessions)을 호스팅하며, 이는 실행되는 원격 호스트에서 관리형 설정 파일을 읽습니다. [데스크톱 관리형 설정](/docs/ko/desktop#managed-settings)을 참조하세요.

302* claude.ai 및 Desktop 앱의 모델 선택기는 조직의 허용 목록에 의해 제외된 모델을 숨기거나 회색으로 표시합니다. 선택기 상태는 사용자를 위한 편의이며, 허용 목록을 적용하지 않습니다.307* claude.ai 및 데스크톱 앱의 모델 선택기는 조직의 허용 목록에 의해 제외된 모델을 숨기거나 회색으로 표시합니다. 선택기 상태는 사용자를 위한 편의입니다. 허용 목록을 적용하지 않습니다.

303 308 

304<h3 id="default-model-behavior">309<h3 id="default-model-behavior">

305 기본 모델 동작310 기본 모델 동작

306</h3>311</h3>

307 312 

308자체적으로, `availableModels`는 기본 옵션을 [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)도 설정할 때까지 계정의 [런타임 기본값](#default-model-setting)에 남겨둡니다. 해당 기본값이 제한하려는 모델인 경우, `enforceAvailableModels`도 설정하거나 [해당 모델을 차단](#block-specific-models-or-versions)하세요.313기본 접두사 일치를 사용하면, `availableModels` 자체는 Default 옵션을 시스템의 [런타임 기본값](#default-model-setting)에 남겨두고, [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)도 설정할 때까지 계정에 대해 남겨둡니다. 해당 기본값이 제한하려는 모델인 경우, `enforceAvailableModels`도 설정하거나 [해당 모델을 차단](#block-specific-models-or-versions)하세요.

309 314 

310`availableModels: []`을 사용하면, 명명된 모델 선택은 차단되지만 `enforceAvailableModels`는 효과가 없습니다.315`availableModels: []`를 사용하면, 명명된 모델 선택은 차단되고 `enforceAvailableModels`는 효과가 없습니다.

311 316 

312<h3 id="enforce-the-allowlist-for-the-default-model">317<h3 id="enforce-the-allowlist-for-the-default-model">

313 기본 모델에 대한 허용 목록 적용318 Default 모델에 대한 허용 목록 적용

314</h3>319</h3>

315 320 

316관리형 설정에서 비어있지 않은 `availableModels`와 함께 `enforceAvailableModels: true`를 설정하여 허용 목록을 기본 옵션으로 확장합니다. 이는 Claude Code v2.1.175 이상이 필요합니다.321관리형 설정에서 비어있지 않은 `availableModels`와 함께 `enforceAvailableModels: true`를 설정하여 허용 목록을 Default 옵션으로 확장합니다. 이는 Claude Code v2.1.175 이상이 필요합니다.

317 322 

318```json theme={null}323```json theme={null}

319{324{


322}327}

323```328```

324 329 

325기본 옵션은 계정 유형 기본값으로 해석되거나, 관리자가 설정한 경우 [조직 기본 모델](#organization-default-model)로 해석됩니다. 해당 모델이 허용 목록에 없으면, 기본 옵션은 대신 허용되고 사용 가능한 모델을 이름 지어 첫 번째 `availableModels` 항목으로 해석되며, `/model` 선택기의 기본 행은 해당 모델을 표시합니다. 이는 기본값에 도달하는 모든 곳에 적용됩니다: 세션 시작, `/model`에서 기본값 선택, [폴백 모델 체인](#fallback-model-chains)의 `"default"` 키워드, 그리고 제외된 선택이 삭제될 때 사용되는 폴백.330계정에 [기록된](#setting-your-model) 모델이 없는 멤버의 경우, Default 옵션은 계정 유형 기본값으로 해석되거나, 관리자가 설정한 경우 [조직 기본 모델](#organization-default-model)로 해석됩니다. 해당 모델이 허용 목록에 없을 때, Default 옵션은 대신 허용되고 사용 가능한 모델을 이름 지정하는 첫 번째 `availableModels` 항목으로 해석되고, `/model` 선택기의 Default 행은 해당 모델을 표시합니다. 이는 Default에 도달하는 모든 곳에 적용됩니다: 세션 시작, `/model`에서 Default 선택, [폴백 모델 체인](#fallback-model-chains)의 `"default"` 키워드, 그리고 제외된 선택이 삭제될 때 사용되는 폴백. 멤버의 계정에 기록된 모델도 `availableModels`에 대해 확인됩니다. [모델 설정](#setting-your-model)은 Default 옵션이 이를 처리하는 방식을 설명합니다.

326 331 

327`enforceAvailableModels`는 `availableModels`가 비어있지 않을 때만 기본 옵션을 다시 매핑합니다. `availableModels`가 비어있지 않지만 허용되고 사용 가능한 모델을 이름 지어 항목이 없으면, 적용이 건너뛰어지고 `--debug` 아래에서만 표시되는 경고가 있습니다. 이를 피하려면 목록에 최소한 하나의 보장된 사용 가능 항목을 유지하세요.332`enforceAvailableModels`는 `availableModels`가 비어있지 않을 때만 Default 옵션을 다시 매핑합니다. `availableModels`가 비어있지 않지만 어떤 항목도 허용되고 사용 가능한 모델로 해석되지 않을 때, 적용은 `--debug` 아래에서만 볼 수 있는 경고와 함께 건너뜁니다. 이를 피하려면 목록에 최소한 하나의 보장된 사용 가능 항목을 유지하세요.

328 333 

329전달하는 최상위 순위 관리형 소스에 두 키를 함께 배포하세요. 기본적으로 Claude Code는 해당 소스만 읽으므로, 관리형 설정 파일에 배치된 쌍은 관리 콘솔이 설정을 전달할 때 무시됩니다. [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)의 옵트인 병합에서, Claude Code는 여전히 `availableModels`를 설정하는 소스 아래에 순위가 지정된 소스의 `modelOverrides` 맵을 무시합니다.334전달하는 최상위 순위 관리형 소스에 두 키를 함께 배포합니다. 기본적으로 Claude Code는 해당 소스만 읽으므로, 관리형 설정 파일에 배치된 쌍은 관리 콘솔이 설정을 전달할 때 무시됩니다. [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)의 선택적 병합에서, Claude Code는 여전히 `availableModels`를 설정하는 소스 아래에 순위가 지정된 소스의 `modelOverrides` 맵을 무시합니다.

330 335 

331<h3 id="control-the-model-users-run-on">336<h3 id="control-the-model-users-run-on">

332 사용자가 실행하는 모델 제어337 사용자가 실행하는 모델 제어

333</h3>338</h3>

334 339 

335`model` 설정은 초기 선택이지, 적용이 아닙니다. 세션이 시작될 때 활성 모델을 설정하지만, 사용자는 여전히 `/model`을 열고 기본값을 선택할 수 있으며, 이는 `model`이 설정된 것에 관계없이 시스템의 [런타임 기본값](#default-model-setting)으로 해석됩니다. [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)가 이를 리다이렉트하지 않는 한.340`model` 설정은 초기 선택이지, 적용이 아닙니다. 세션이 시작될 때 활성 모델을 설정하지만, 사용자는 여전히 `/model`을 열고 Default를 선택할 수 있으며, 이는 `model`이 설정된 것과 관계없이 시스템의 [런타임 기본값](#default-model-setting)으로 해석됩니다. [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) 또는 [특정 버전을 차단하는 키](#block-specific-models-or-versions)가 이에 적용되지 않는 한.

336 341 

337모델 경험을 완전히 제어하려면 이러한 설정을 결합하세요:342모델 경험을 완전히 제어하려면 이러한 설정을 결합하세요:

338 343 

339* **`availableModels`**: 사용자가 전환할 수 있는 명명된 모델을 제한합니다344* **`availableModels`**: 사용자가 전환할 수 있는 명명된 모델을 제한합니다

340* **`enforceAvailableModels`**: `availableModels` 허용 목록을 기본 옵션으로 확장하므로 기본값은 목록 외부의 모델로 해석될 수 없습니다345* **`enforceAvailableModels`**: `availableModels` 허용 목록을 Default 옵션으로 확장하므로 Default는 목록 외부의 모델로 해석될 수 없습니다

341* **`deniedModels`** 및 **`availableModelsMatch`**: [특정 버전을 차단](#block-specific-models-or-versions)하여 `availableModels` 항목이 허용할 수 있는 것을 차단합니다346* **`deniedModels`** 및 **`availableModelsMatch`**: [특정 버전을 차단](#block-specific-models-or-versions)하여 `availableModels` 항목이 허용할 수 있습니다

342* **`model`**: 세션이 시작될 때 초기 모델 선택을 설정합니다347* **`model`**: 세션이 시작될 때 초기 모델 선택을 설정합니다

343* **`ANTHROPIC_DEFAULT_SONNET_MODEL`** / **`ANTHROPIC_DEFAULT_OPUS_MODEL`** / **`ANTHROPIC_DEFAULT_HAIKU_MODEL`** / **`ANTHROPIC_DEFAULT_FABLE_MODEL`**: `sonnet`, `opus`, `haiku`, 그리고 `fable` 별칭이 해석되는 것을 제어하고, [계정 유형 기본값](#default-model-setting)이 사용하는 버전을 제어합니다348* **`ANTHROPIC_DEFAULT_SONNET_MODEL`** / **`ANTHROPIC_DEFAULT_OPUS_MODEL`** / **`ANTHROPIC_DEFAULT_HAIKU_MODEL`** / **`ANTHROPIC_DEFAULT_FABLE_MODEL`**: `sonnet`, `opus`, `haiku`, 그리고 `fable` 별칭이 해석되는 것을 제어하고, [계정 유형 기본값](#default-model-setting)이 사용하는 버전을 제어합니다

344 349 

345이 예제는 사용자를 Sonnet 4.5에서 시작하고, 선택기를 Sonnet 및 Haiku로 제한하며, 기본값이 계층 기본값이 아닌 허용 목록의 모델로 해석되도록 합니다:350이 예제는 사용자를 Sonnet 4.5에서 시작하고, 선택기를 Sonnet 및 Haiku로 제한하고, Default가 계층 기본값이 아닌 허용 목록의 모델로 해석되도록 합니다:

346 351 

347```json theme={null}352```json theme={null}

348{353{


355}360}

356```361```

357 362 

358`enforceAvailableModels` 또는 `env` 블록이 없으면, 선택기에서 기본값을 선택하는 사용자는 `model`에 고정된 버전이 아닌 [런타임 기본값](#default-model-setting)을 얻습니다. 두 설정은 다른 범위를 다룹니다: `enforceAvailableModels`는 기본값이 허용 목록을 따르도록 하고, `env` 블록은 `sonnet`과 같은 허용된 별칭이 해석되는 버전을 고정합니다. 모델 패밀리 제한이 충분할 때 `enforceAvailableModels`만 사용하세요. 특정 버전을 고정해야 할 때도 `env` 블록을 추가하세요.363`enforceAvailableModels` 또는 `env` 블록이 없으면, 선택기에서 Default를 선택하는 사용자는 `model`에 고정된 버전이 아닌 [런타임 기본값](#default-model-setting)을 얻습니다. 두 설정은 다른 범위를 다룹니다: `enforceAvailableModels`는 Default가 허용 목록을 따르도록 하고, `env` 블록은 `sonnet`과 같은 허용된 별칭이 해석되는 버전을 고정합니다. 모델 패밀리 제한이 충분할 때 `enforceAvailableModels`만 사용하세요. 특정 버전을 고정해야 할 때도 `env` 블록을 추가하세요.

359 364 

360<h3 id="merge-behavior">365<h3 id="merge-behavior">

361 병합 동작366 병합 동작

362</h3>367</h3>

363 368 

364Claude Code가 적용하는 관리형 설정이 `availableModels`를 정의하면, [자체 목록을 제공하는 호스트 플랫폼](/docs/ko/settings#exceptions-to-managed-settings-precedence)을 제외하고 해당 목록만 적용됩니다: 사용자, 프로젝트 또는 로컬 설정의 항목은 이를 확장할 수 없으며, Claude Code는 관리형 소스 간에 `availableModels`를 병합하지 않습니다. [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)에서 어느 소스의 목록이 적용되는지 설명합니다. 그렇지 않으면, 사용자, 프로젝트 및 로컬 설정의 목록은 다른 배열 설정처럼 [연결되고 중복 제거됩니다](/docs/ko/settings#settings-precedence). Claude Code v2.1.175 이전에는, 낮은 우선순위 범위의 항목이 관리형 목록으로 대체되지 않고 병합되었습니다.369Claude Code가 적용하는 관리형 설정이 `availableModels`를 정의할 때, 해당 목록만 적용됩니다. [자체 목록을 제공하는 호스트 플랫폼](/docs/ko/settings#exceptions-to-managed-settings-precedence) 제외: 사용자, 프로젝트 또는 로컬 설정의 항목은 이를 확장할 수 없고, Claude Code는 관리형 소스 전체에서 `availableModels`를 병합하지 않습니다. [Claude Code가 관리형 소스를 결합하는 방식](/docs/ko/managed-settings#how-claude-code-combines-managed-sources)은 어느 소스의 목록이 적용되는지 설명합니다. 그렇지 않으면, 사용자, 프로젝트 및 로컬 설정의 목록은 다른 배열 설정처럼 [연결되고 중복 제거됩니다](/docs/ko/settings#settings-precedence). Claude Code v2.1.175 이전에는 하위 우선순위 범위의 항목이 관리형 목록으로 병합되었습니다.

365 370 

366유효한 목록 내에서, 패밀리의 특정 모델을 이름 지어 항목(버전 접두사 또는 전체 모델 ID 여부)은 해당 패밀리의 와일드카드 항목을 비활성화합니다: `["sonnet", "claude-sonnet-4-5"]`는 모든 Sonnet 모델이 아닌 Sonnet 4.5 버전만 허용합니다.371유효한 목록 내에서, 패밀리의 특정 모델을 이름 지정하는 항목(버전 접두사 또는 전체 모델 ID 여부)은 해당 패밀리의 와일드카드 항목을 비활성화합니다: `["sonnet", "claude-sonnet-4-5"]`는 모든 Sonnet 모델이 아닌 Sonnet 4.5 버전만 허용합니다.

367 372 

368<h3 id="mantle-model-ids">373<h3 id="mantle-model-ids">

369 Mantle 모델 ID374 Mantle 모델 ID

370</h3>375</h3>

371 376 

372[Amazon Bedrock Mantle 엔드포인트](/docs/ko/amazon-bedrock#use-the-mantle-endpoint)가 활성화되면, `availableModels`의 항목 중 `anthropic.`으로 시작하는 항목은 `/model` 선택기에 사용자 정의 옵션으로 추가되고 Mantle 엔드포인트로 라우팅됩니다. 이는 [제3자 배포를 위한 모델 고정](#pin-models-for-third-party-deployments)에서 설명한 별칭 일치의 예외입니다. 설정은 여전히 선택기를 나열된 항목으로 제한하며, Mantle ID는 패밀리 이름을 포함하므로, 특정 항목으로 계산되고 해당 패밀리의 와일드카드를 비활성화합니다: 모든 Mantle ID와 함께, 유지하려는 버전 접두사 또는 전체 ID를 나열하세요. [병합 동작](#merge-behavior)을 참조하세요.377[Amazon Bedrock Mantle 엔드포인트](/docs/ko/amazon-bedrock#use-the-mantle-endpoint)가 활성화되면, `availableModels`의 항목 중 `anthropic.`으로 시작하는 항목은 `/model` 선택기에 사용자 정의 옵션으로 추가되고 Mantle 엔드포인트로 라우팅됩니다. 이는 [제3자 배포를 위한 모델 고정](#pin-models-for-third-party-deployments)에 설명된 별칭 일치에 대한 예외입니다. 설정은 여전히 선택기를 나열된 항목으로 제한하고, Mantle ID는 패밀리 이름을 포함하므로, 특정 항목으로 계산되고 해당 패밀리의 와일드카드를 비활성화합니다: Mantle ID와 함께, 유지하려는 버전 접두사 또는 전체 ID를 나열하세요. [병합 동작](#merge-behavior)을 참조하세요.

373 378 

374<h3 id="block-specific-models-or-versions">379<h3 id="block-specific-models-or-versions">

375 특정 모델 또는 버전 차단380 특정 모델 또는 버전 차단

376</h3>381</h3>

377 382 

378`claude-opus-5`와 같은 `availableModels` 항목은 또한 Claude Code가 이를 지원하는 즉시 Opus 5.5와 같은 이를 확장하는 이후 릴리스도 허용합니다. 두 개의 관리형 설정을 사용하면 릴리스를 보류할 수 있으며, 둘 다 Claude Code v2.1.283 이상이 필요합니다:383`claude-opus-5`와 같은 `availableModels` 항목은 또한 Claude Code가 이를 지원하는 즉시 Opus 5.5와 같은 이를 확장하는 이후 릴리스를 허용합니다. 두 관리형 설정을 사용하면 릴리스를 보류할 수 있으며, 둘 다 Claude Code v2.1.283 이상이 필요합니다:

379 384 

380* [`deniedModels`](/docs/ko/settings-reference#deniedmodels): 차단할 모델을 나열합니다. 나열된 모델은 `availableModels`가 이를 허용하더라도 차단되며, 키는 허용 목록이 없어도 작동합니다. 항목이 차단하지 않는 릴리스는 허용된 상태로 유지됩니다385* [`deniedModels`](/docs/ko/settings-reference#deniedmodels): 차단할 모델을 나열합니다. 나열된 모델은 `availableModels`가 이를 허용하더라도 차단되고, 키는 허용 목록이 없어도 작동합니다. 어떤 항목도 차단하지 않는 릴리스는 허용됩니다

381* [`availableModelsMatch`](/docs/ko/settings-reference#availablemodelsmatch): 이를 `"exact"`로 설정하여 `availableModels`의 각 모델 ID가 이름을 지은 버전만 허용하도록 합니다. 나열된 모델 ID의 최신 버전은 목록에 추가할 때까지 차단된 상태로 유지됩니다386* [`availableModelsMatch`](/docs/ko/settings-reference#availablemodelsmatch): 이를 `"exact"`로 설정하여 `availableModels`의 각 모델 ID가 이름을 지정하는 버전만 허용하도록 합니다. 나열된 모델 ID의 최신 버전은 목록에 추가할 때까지 차단된 상태로 유지됩니다

382 387 

383이전 버전은 두 키를 모두 무시하므로, 이러한 버전이 시작되지 않도록 [`requiredMinimumVersion`](/docs/ko/settings-reference#requiredminimumversion)도 설정하세요.388이전 버전은 두 키를 모두 무시하므로, 이러한 버전이 시작되지 않도록 [`requiredMinimumVersion`](/docs/ko/settings-reference#requiredminimumversion)도 설정하세요.

384 389 

385이 예제는 Opus 및 Sonnet 모델을 허용하고 날짜 지정 및 제공자별 ID를 포함한 모든 철자로 Opus 5.5를 차단합니다:390이 예제는 Opus 및 Sonnet 모델을 허용하고 날짜 및 제공자별 ID를 포함한 모든 철자로 Opus 5.5를 차단합니다:

386 391 

387```json theme={null}392```json theme={null}

388{393{


391}396}

392```397```

393 398 

394차단된 모델(whether `deniedModels`가 이름을 지었거나 `"exact"` 목록이 이를 생략했는지)은 [허용 목록이 적용되는](#restrict-model-selection) 모든 곳에서 차단된 선택으로 처리됩니다. 이는 `/model` 선택기에서 숨겨지며, `/model <name>`은 이를 거부합니다. `--model`, `ANTHROPIC_MODEL`, 또는 `model` 설정으로 차단된 모델 ID를 이름 지으면, Claude Code는 시작 시 이를 삭제하고 기본 옵션을 대신 해석합니다. [훅](/docs/ko/hooks) 또는 백그라운드 요청이 `deniedModels`가 차단하는 모델(예: 에이전트 훅의 `model` 필드)을 이름 지으면, 해당 요청은 세션의 모델에서 대신 실행됩니다.399차단된 모델(whether `deniedModels`가 이름을 지정하거나 `"exact"` 목록이 이를 생략)은 [허용 목록이 적용되는](#restrict-model-selection) 모든 곳에서 차단된 선택으로 처리됩니다. `/model` 선택기에서 숨겨지고, `/model <name>`은 이를 거부합니다. `--model`, `ANTHROPIC_MODEL`, 또는 `model` 설정으로 차단된 모델 ID를 이름 지정하면, Claude Code는 시작 시 이를 삭제하고 Default 옵션을 해석합니다. [훅](/docs/ko/hooks) 또는 백그라운드 요청이 `deniedModels`가 차단하는 모델(예: 에이전트 훅의 `model` 필드)을 이름 지정하면, 해당 요청은 세션의 모델에서 대신 실행됩니다.

395 400 

396기본 옵션은 [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)를 설정했는지 여부에 관계없이 두 키를 모두 따릅니다. 비어있지 않은 `availableModels`로 설정하면, 차단된 기본값은 허용 목록 외부의 모델로 계산됩니다. 그렇지 않으면, 차단된 모델로 해석될 기본 옵션은 이 순서로 단계적으로 내려갑니다:401Default 옵션은 [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)를 설정했는지 여부와 관계없이 두 키를 모두 따릅니다. 비어있지 않은 `availableModels`로 설정하면, 차단된 기본값은 허용 목록 외부의 모델로 계산됩니다. 그렇지 않으면, 차단된 모델로 해석될 Default 옵션은 이 순서로 단계적으로 내려갑니다:

397 402 

3981. 동일한 패밀리의 최신 허용 버전4031. 동일한 패밀리의 최신 허용 버전

3992. 각 낮은 비용 패밀리의 최신 허용 모델(순서대로): Sonnet, 그 다음 Haiku4042. 각 하위 비용 패밀리의 최신 허용 모델: Sonnet, 그 다음 Haiku

4003. 허용된 모델을 이름 지어 첫 번째 `availableModels` 항목4053. 허용된 모델을 이름 지정하는 첫 번째 `availableModels` 항목

401 406 

402이 중 어느 것도 허용되지 않으면, 기본 옵션에서 시작하는 세션은 수정할 키를 이름 지어 [오류로 시작을 거부](/docs/ko/errors#managed-settings-block-the-default-model)합니다. `"exact"` 목록은 관리형 `availableModels` 목록이 최소한 하나의 모델 또는 패밀리를 이름 지을 때만 기본 옵션에 영향을 미칩니다.407이 중 어느 것도 허용되지 않으면, Default 옵션에서 시작하는 세션은 [시작을 거부](/docs/ko/errors#managed-settings-block-the-default-model)하고 수정할 키를 이름 지정하는 오류가 발생합니다. `"exact"` 목록은 관리형 `availableModels` 목록이 최소한 하나의 모델 또는 패밀리를 이름 지정할 때만 Default 옵션에 영향을 미칩니다.

403 408 

404Claude Code는 관리형 설정에서만 두 키를 읽습니다. 사용자, 프로젝트, 로컬 설정 또는 `--settings`에서 이 중 하나를 설정하면, Claude Code는 경고와 함께 이를 무시합니다.409Claude Code는 관리형 설정에서만 두 키를 읽습니다. 사용자, 프로젝트 또는 로컬 설정이나 `--settings`로 둘 중 하나를 설정하면, Claude Code는 경고와 함께 이를 무시합니다.

405 410 

406<h3 id="organization-model-restrictions">411<h3 id="organization-model-restrictions">

407 조직 모델 제한412 조직 모델 제한

408</h3>413</h3>

409 414 

410Claude Enterprise 플랜의 조직 관리자는 claude.ai 관리 콘솔에서 개별 모델을 비활성화하여 멤버가 실행할 수 있는 모델을 제한합니다. 이 제한은 Claude Code가 인증할 때 계정의 자격과 함께 전달되며, 설정의 `availableModels` 목록과 별개이고, 서버는 세션이 생성될 때 동일한 제한을 독립적으로 적용합니다. Claude Code v2.1.187 이상이 필요합니다.415Claude Enterprise 플랜의 조직 관리자는 claude.ai 관리 콘솔에서 개별 모델을 비활성화하여 멤버가 실행할 수 있는 모델을 제한합니다. 이 제한은 설정의 `availableModels` 목록과 별도로 계정의 자격과 함께 전달되고, 서버는 세션이 생성될 때 동일한 제한을 독립적으로 적용합니다. Claude Code v2.1.187 이상 필요합니다.

411 416 

412제한은 멤버가 로그인하거나 자신의 API 키를 사용할 때 적용됩니다. 조직 서비스 키와 같은 조직 범위 자격증명은 사용자와 연결되지 않으므로, 제한이 이에 적용되지 않습니다.417제한은 멤버가 로그인하거나 자신의 API 키를 사용할 때 적용됩니다. 조직 서비스 키와 같은 조직 범위 자격은 사용자와 연결되지 않으므로, 제한이 이에 적용되지 않습니다.

413 418 

414Claude Console에는 모델 제한 제어가 없습니다. Claude Enterprise 플랜이 없는 조직(Anthropic API를 통해 인증하는 멤버를 포함한 조직)은 대신 [관리형 설정](/docs/ko/managed-settings)에서 [`availableModels`](#restrict-model-selection)로 모델을 제한하며, [기본 모델에 대한 허용 목록 적용](#enforce-the-allowlist-for-the-default-model)을 추가하여 기본 옵션을 다룹니다. [표면 범위](#surface-coverage)에서 각 표면이 이러한 설정을 수신하고 적용하는 방식을 설명합니다.419Claude Console에는 모델 제한 제어가 없습니다. Claude Enterprise 플랜이 없는 조직(Anthropic API를 통해 인증하는 멤버를 포함)은 [관리형 설정](/docs/ko/managed-settings)에서 [`availableModels`](#restrict-model-selection)로 모델을 제한하고, Default 옵션을 다루기 위해 [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model)를 추가합니다. [표면 범위](#surface-coverage)는 각 표면이 이러한 설정을 수신하고 적용하는 방식을 설명합니다.

415 420 

416제한된 모델은 `/model` 선택기에서 숨겨집니다. `--model`, `ANTHROPIC_MODEL` 환경 변수, 또는 `model` 설정으로 이름으로 선택하면 공지 `Model "<name>" is restricted by your organization's settings. Using <model> instead.`를 표시하고 세션은 허용된 모델에서 시작됩니다. 제한된 모델에 대해 `/model <name>`을 입력하면 `Model '<name>' is restricted by your organization's settings. Run /model to choose a different model.`로 거부되고 세션은 현재 모델을 유지합니다.421제한된 모델은 `/model` 선택기에서 숨겨집니다. `--model`, `ANTHROPIC_MODEL` 환경 변수, 또는 `model` 설정으로 이름으로 선택하면 `Model "<name>" is restricted by your organization's settings. Using <model> instead.` 알림을 표시하고 세션은 허용된 모델에서 시작됩니다. 제한된 모델에 대해 `/model <name>`을 입력하면 `Model '<name>' is restricted by your organization's settings. Run /model to choose a different model.`로 거부되고 세션은 현재 모델을 유지합니다.

417 422 

418`opus`와 같은 [모델 패밀리 별칭](#restrict-model-selection)은 조직이 이를 허용할 때 일반적인 모델로 해석됩니다. 조직이 해당 모델을 제한할 때, Claude Code는 조직이 허용하는 패밀리의 최신 버전으로 대체하며, 동일한 대체 공지를 표시합니다. `/model <alias>`는 패밀리의 모든 버전이 제한될 때만 거부됩니다. `--model`, `ANTHROPIC_MODEL`, 또는 `model` 설정으로 설정된 별칭은 여전히 그 경우에 시작 시 대체됩니다. v2.1.205 이전에는, 패밀리 별칭이 최신 릴리스 버전만을 기반으로 대체되거나 거부되었으며, 이전 버전이 허용되었을 때도 그랬습니다.423`opus`, `sonnet`, `haiku`, 또는 `fable`과 같은 [모델 패밀리 별칭](#restrict-model-selection)은 조직이 이를 허용할 때 일반적인 모델로 해석됩니다. 조직이 해당 모델을 제한할 때, Claude Code는 조직이 허용하는 패밀리의 최신 버전으로 대체하고 동일한 대체 알림을 표시합니다. `/model <alias>`는 패밀리의 모든 버전이 제한될 때만 거부됩니다. `--model`, `ANTHROPIC_MODEL`, 또는 `model` 설정으로 설정된 별칭은 여전히 시작 시 해당 경우에 대체됩니다. v2.1.205 이전에는 패밀리 별칭이 최신 릴리스 버전만을 기반으로 대체되거나 거부되었으며, 이전 버전이 허용되었을 때도 마찬가지였습니다.

419 424 

420제한은 조직 전체 또는 역할별로 적용됩니다:425제한은 조직 전체 또는 역할별로 적용됩니다:

421 426 

422* 조직 수준에서 모델을 비활성화하면 모든 멤버에서 제거됩니다.427* 조직 수준에서 모델을 비활성화하면 모든 멤버에 대해 제거됩니다.

423* 역할 수준 액세스는 다양한 사용자 정의 역할에 다양한 모델을 부여하며, 여러 역할을 보유한 멤버는 해당 역할 중 하나가 부여하는 모든 모델을 사용할 수 있습니다.428* 역할 수준 액세스는 다양한 사용자 정의 역할에 다양한 모델을 부여하고, 여러 역할을 보유한 멤버는 자신의 역할 중 하나가 부여하는 모든 모델을 사용할 수 있습니다.

424* Haiku 모델은 항상 사용 가능하며 비활성화할 수 없으므로, 모든 멤버는 최소한 하나의 사용 가능한 모델을 유지합니다.429* Haiku 모델은 항상 사용 가능하며 비활성화할 수 없으므로, 모든 멤버는 최소한 하나의 사용 가능한 모델을 유지합니다.

425* 액세스 변경은 약 1분 내에 새 요청에 적용됩니다. `/model` 선택기는 다음 세션이 시작될 때 이를 반영합니다.430* 액세스 변경은 약 1분 내에 새 요청에 적용됩니다. `/model` 선택기는 다음 세션이 시작될 때 이를 반영합니다.

426 431 

427두 제한이 함께 적용됩니다: 모델은 `availableModels`에 의해 허용되고 조직에 의해 제한되지 않을 때만 선택 가능합니다. 조직 제한은 Anthropic API 및 [LLM 게이트웨이](/docs/ko/llm-gateway) 배포의 세션에만 도달합니다. 다른 제공자에서는 대신 `availableModels`를 사용하세요.432두 제한이 함께 적용됩니다: 모델은 `availableModels`에 의해 허용되고 조직에 의해 제한되지 않을 때만 선택 가능합니다. 조직 제한은 Anthropic API 및 [LLM 게이트웨이](/docs/ko/llm-gateway) 배포의 세션에만 도달합니다. 다른 제공자에서는 `availableModels`를 대신 사용하세요.

428 433 

429<h2 id="organization-default-model">434<h2 id="organization-default-model">

430 조직 기본 모델435 조직 기본 모델


479 484 

480`default`의 동작은 계정 유형에 따라 달라집니다:485`default`의 동작은 계정 유형에 따라 달라집니다:

481 486 

482* **Pro, Max, Team, Enterprise, Anthropic API**: Opus 5.5로 기본 설정됨487* **Pro, Max, Team, Enterprise 및 Anthropic API**: Opus 5.5로 기본 설정됨

483* **AWS의 Claude Platform, Amazon Bedrock, Google Cloud의 Agent Platform**: Opus 5.5로 기본 설정됨488* **AWS의 Claude Platform, Amazon Bedrock 및 Google Cloud의 Agent Platform**: Opus 5.5로 기본 설정됨

484* **Microsoft Foundry**: Sonnet 4.5로 기본 설정됨489* **Microsoft Foundry**: Sonnet 4.5로 기본 설정됨

485 490 

486v2.1.280 이전에는 `default`가 Pro 및 Team Standard에서 Sonnet 5로, Max, Team Premium, Enterprise, Anthropic API, AWS의 Claude Platform, Amazon Bedrock, Google Cloud의 Agent Platform에서 v2.1.219부터 Opus 5로 확인되었습니다. v2.1.219 이전에는 `default`가 Anthropic API, Max, Team Premium, Enterprise 종량제에서 v2.1.154부터 Opus 4.8로, AWS의 Claude Platform, Amazon Bedrock, Google Cloud의 Agent Platform에서 v2.1.207부터 Opus 4.8로 확인되었습니다. v2.1.207 이전에는 `default`가 AWS의 Claude Platform에서 Opus 4.7로, Amazon Bedrock 및 Google Cloud의 Agent Platform에서 Sonnet 4.5로 확인되었습니다.491v2.1.280 이전에는 `default`가 Pro 및 Team Standard에서 Sonnet 5로, Max, Team Premium, Enterprise, Anthropic API, AWS의 Claude Platform, Amazon Bedrock 및 Google Cloud의 Agent Platform에서 v2.1.219부터 Opus 5로 확인되었습니다. v2.1.219 이전에는 `default`가 Anthropic API, Max, Team Premium 및 Enterprise 종량제에서 v2.1.154부터 Opus 4.8로, AWS의 Claude Platform, Amazon Bedrock 및 Google Cloud의 Agent Platform에서 v2.1.207부터 Opus 4.8로 확인되었습니다. v2.1.207 이전에는 `default`가 AWS의 Claude Platform에서 Opus 4.7로, Amazon Bedrock 및 Google Cloud의 Agent Platform에서 Sonnet 4.5로 확인되었습니다.

487 492 

488관리자가 [조직 기본 모델](#organization-default-model)을 설정한 경우, `default`는 위의 계정 유형 기본값 대신 해당 모델로 확인됩니다. Claude Code v2.1.196 이상이 필요합니다. `default`는 [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions)로 설정한 모델로도 확인될 수 있으며, 해당 섹션에 나열된 조건 하에서 확인됩니다.493관리자가 [조직 기본 모델](#organization-default-model)을 설정한 경우, `default`는 위의 계정 유형 기본값 대신 해당 모델로 확인됩니다. Claude Code v2.1.196 이상이 필요합니다. `default`는 [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions)로 설정한 모델로도 확인될 수 있으며, 해당 섹션에 나열된 조건 하에서 또는 [계정에 기록된](#setting-your-model) 모델로 확인될 수 있습니다.

489 494 

490관리되는 설정이 [기본 모델에 대한 허용 목록 적용](#enforce-the-allowlist-for-the-default-model)을 강제하고 계정 유형 기본값이 `availableModels`에 없는 경우, `default`는 위의 계정 유형 기본값 대신 강제된 기본값으로 확인됩니다. 둘 다 적용되는 경우, 조직 기본값이 먼저 계정 유형 기본값을 대체하고 강제 적용이 이에 적용됩니다: 허용 목록에 있는 조직 기본값은 유지되고, 목록 외의 값은 강제된 기본값으로 확인됩니다.495계정에 아무것도 기록되지 않았을 때, 관리되는 설정이 [Default 모델에 대한 허용 목록을 적용](#enforce-the-allowlist-for-the-default-model)하고, 계정 유형 기본값이 `availableModels`에 없으면, `default`는 위의 계정 유형 기본값 대신 적용된 Default로 확인됩니다. 조직 기본값과 적용이 모두 적용될 때, 조직 기본값이 먼저 계정 유형 기본값을 대체하고 적용이 이에 적용됩니다: 허용 목록에 있는 조직 기본값은 유지되고, 목록 외의 값은 적용된 Default로 확인됩니다.

491 496 

492Fable 모델은 어떤 플랜이나 제공자에서도 계정 유형 기본값이 아닙니다. `/model`로 선택하면 사용자 설정에서 선택된 모델로 저장되므로 이후 세션이 이 모델에서 시작됩니다. v2.1.257에서 Claude Code가 저장된 Fable 5 선택에 대해 수행하는 일회성 변경에 대해서는 [Fable 작업](#work-with-fable)을 참조하세요.497Fable 모델은 어떤 플랜이나 제공자에서도 계정 유형 기본값이 아닙니다. `/model`로 선택하면 사용자 설정에서 선택된 모델로 저장되므로, 이후 세션이 이 모델에서 시작됩니다. v2.1.257에서 Claude Code가 저장된 Fable 5 선택에 대해 수행하는 일회성 변경의 경우, [Fable 작업](#work-with-fable)을 참조하세요.

493 498 

494<h3 id="opusplan-model-setting">499<h3 id="opusplan-model-setting">

495 `opusplan` 모델 설정500 `opusplan` 모델 설정


497 502 

498`opusplan` 모델 별칭은 자동화된 하이브리드 접근 방식을 제공합니다:503`opusplan` 모델 별칭은 자동화된 하이브리드 접근 방식을 제공합니다:

499 504 

500* **계획 모드에서**: 복잡한 추론 및 아키텍처 결정을 위해 `opus` 사용505* **계획 모드에서**: 복잡한 추론 및 아키텍처 결정을 위해 `opus`를 사용합니다

501* **실행 모드에서**: 코드 생성 및 구현을 위해 자동으로 `sonnet`으로 전환506* **실행 모드에서**: 코드 생성 및 구현을 위해 자동으로 `sonnet`으로 전환합니다

502 507 

503이는 계획을 위한 Opus의 추론과 실행을 위한 Sonnet의 효율성을 결합합니다.508이는 계획을 위한 Opus의 추론과 실행을 위한 Sonnet의 효율성을 결합합니다.

504 509 

505계획 모드 Opus 단계는 `opus` 모델 설정과 동일한 컨텍스트 윈도우를 사용하고, 실행 단계는 `sonnet`과 동일한 윈도우를 사용합니다. `opus`와 `sonnet`이 [1M 컨텍스트 윈도우](#extended-context)로 기본적으로 실행되는 모델로 확인될 때(현재 모델이 Anthropic API에서 그렇듯이), 두 단계 모두 이를 사용하여 실행됩니다. 그렇지 않은 경우 두 단계 모두에 1M 컨텍스트를 요청하려면 모델을 `opusplan[1m]`으로 [설정](#setting-your-model)하세요. 예를 들어 `/model opusplan[1m]`을 사용하세요. 이를 `/model`로 설정하려면 Claude Code v2.1.265 이상이 필요합니다. 이전 버전에서는 `--model` 플래그 또는 `model` 설정을 대신 사용하세요.510계획 모드 Opus 단계는 `opus` 모델 설정과 동일한 컨텍스트 윈도우를 사용하고, 실행 단계는 `sonnet`과 동일한 윈도우를 사용합니다. `opus`와 `sonnet`이 [1M 컨텍스트 윈도우](#extended-context)로 기본 실행되는 모델로 확인될 때, Anthropic API의 현재 모델처럼, 두 단계 모두 이를 사용하여 실행됩니다. 이들이 그렇지 않은 경우 두 단계 모두에 대해 1M 컨텍스트를 요청하려면, [모델을 설정](#setting-your-model)하여 `opusplan[1m]`으로 설정하세요. 예를 들어 `/model opusplan[1m]`을 사용합니다. 이를 `/model`로 설정하려면 Claude Code v2.1.265 이상이 필요합니다. 이전 버전에서는 `--model` 플래그 또는 `model` 설정을 대신 사용하세요.

506 511 

507[`availableModels`](#restrict-model-selection)가 최신 Opus를 제외하지만 `["sonnet", "claude-opus-4-6"]`과 같은 이전 버전을 허용하는 경우, `opusplan`은 계획을 위해 허용된 최신 Opus를 사용하고 모든 Opus가 제외된 경우에만 Sonnet에만 유지됩니다. 계획 모드에서 일반적으로 Sonnet으로 업그레이드되는 Haiku 세션은 마찬가지로 허용된 최신 Sonnet을 사용하고, 모든 Sonnet이 제외된 경우에만 Haiku에만 유지됩니다. v2.1.205 이전에는 허용 목록이 이전 버전을 허용했더라도 업그레이드 제품군의 최신 버전이 제외되면 계획 모드가 세션의 모델에 유지되었습니다.512[`availableModels`](#restrict-model-selection)이 최신 Opus를 제외하지만 이전 버전(예: `["sonnet", "claude-opus-4-6"]`)을 허용할 때, `opusplan`은 계획을 위해 허용된 최신 Opus를 사용하고 모든 Opus가 제외될 때만 Sonnet에만 유지됩니다. 계획 모드에서 일반적으로 Sonnet으로 업그레이드할 Haiku 세션은 마찬가지로 허용된 최신 Sonnet을 사용하고, 모든 Sonnet이 제외될 때만 Haiku에만 유지됩니다. v2.1.205 이전에는 계획 모드가 허용 목록이 이전 버전을 허용했을 때에도 업그레이드 제품군의 최신 버전이 제외될 때마다 세션의 모델에 유지되었습니다.

508 513 

509이전 허용 버전의 대체는 Anthropic API 및 [AWS의 Claude Platform](/docs/ko/claude-platform-on-aws)에 적용됩니다. Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, Mantle에서는 배포가 제공자별 모델 ID를 사용하므로 업그레이드 모델이 제외되면 계획 모드가 세션의 모델에 유지됩니다.514이전 허용 버전의 대체는 Anthropic API 및 [AWS의 Claude Platform](/docs/ko/claude-platform-on-aws)에 적용됩니다. Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry 및 Mantle에서는 제공자별 모델 ID를 사용하는 배포이므로, 계획 모드는 업그레이드 모델이 제외될 때마다 세션의 모델에 유지됩니다.

510 515 

511Claude가 계획 경계에서 전환하는 대신 작업 중간에 두 번째 모델을 참조할 시기를 결정하는 하이브리드 접근 방식은 [advisor tool](/docs/ko/advisor)을 참조하세요.516Claude가 계획 경계에서 전환하는 대신 작업 중간에 두 번째 모델을 참조할 시기를 결정하는 하이브리드 접근 방식의 경우, [advisor 도구](/docs/ko/advisor)를 참조하세요.

512 517 

513<h3 id="fallback-model-chains">518<h3 id="fallback-model-chains">

514 폴백 모델 체인519 폴백 모델 체인

515</h3>520</h3>

516 521 

517주 모델이 과부하 상태이거나 사용 불가능하거나 다른 재시도 불가능한 서버 오류를 반환할 때, Claude Code는 요청이 실패하는 대신 폴백 모델로 전환할 수 있습니다. 인증, 청구, 속도 제한, 요청 크기, 전송 오류 및 [조직의 정책 확인에 의한 거부](/docs/ko/errors#automatic-retries)는 전환을 트리거하지 않습니다. 이들은 정상적인 재시도 및 오류 처리를 따릅니다.522기본 모델이 과부하 상태이거나 사용할 수 없거나 다른 재시도 불가능한 서버 오류를 반환할 때, Claude Code는 요청이 실패하는 대신 폴백 모델로 전환할 수 있습니다. 인증, 청구, 속도 제한, 요청 크기 및 전송 오류, 그리고 [조직의 정책 확인에 의한 거부](/docs/ko/errors#automatic-retries)는 전환을 트리거하지 않습니다. 이들은 정상적인 재시도 및 오류 처리를 따릅니다.

518 523 

519하나 이상의 폴백 모델을 구성하고 Claude Code는 순서대로 시도하며, 전환할 때 알림을 표시합니다. 전환은 현재 턴에만 지속되므로 다음 메시지는 주 모델을 먼저 다시 시도합니다. Claude Code는 중복 제거 후 체인을 3개 모델로 제한하고 추가 항목을 무시합니다.524하나 이상의 폴백 모델을 구성하고 Claude Code는 순서대로 시도하며, 전환할 때 알림을 표시합니다. 전환은 현재 턴에만 지속되므로, 다음 메시지는 기본 모델을 다시 먼저 시도합니다. Claude Code는 체인을 중복 제거 후 3개 모델로 제한하고 추가 항목을 무시합니다.

520 525 

521`--fallback-model` 플래그로 한 세션에 대한 체인을 설정하며, 이는 쉼표로 구분된 목록을 허용합니다:526`--fallback-model` 플래그로 한 세션에 대한 체인을 설정하며, 이는 쉼표로 구분된 목록을 허용합니다:

522 527 


524claude --fallback-model sonnet,haiku529claude --fallback-model sonnet,haiku

525```530```

526 531 

527세션 전체에 체인을 유지하려면 [설정](/docs/ko/settings)에서 `fallbackModel`을 배열로 설정하세요:532세션 전체에 체인을 유지하려면, [설정](/docs/ko/settings)에서 `fallbackModel`을 배열로 설정하세요:

528 533 

529```json theme={null}534```json theme={null}

530{535{


532}537}

533```538```

534 539 

535`--fallback-model` 플래그는 `fallbackModel` 설정보다 우선합니다. 각 항목은 모델 이름 또는 별칭을 허용하며, `"default"`는 기본 모델로 확장됩니다.540`--fallback-model` 플래그는 `fallbackModel` 설정보다 우선합니다. 각 항목은 모델 이름 또는 별칭을 허용하고, `"default"`는 기본 모델로 확장됩니다.

536 541 

537Claude Code는 시작 시 체인을 확인하지 않으며 `/status`는 이를 표시하지 않습니다. 전환이 발생할 때 표시되는 알림이 폴백이 구성되었다는 첫 번째 눈에 띄는 신호입니다.542Claude Code는 시작 시 체인을 확인하지 않으며 `/status`는 이를 표시하지 않습니다. 전환이 발생할 때 표시되는 알림이 폴백이 구성되었다는 첫 번째 눈에 띄는 신호입니다.

538 543 

539요청이 실패하면 Claude Code는 하나가 이를 수락할 때까지 순서대로 각 항목을 시도합니다. 설정에 고정된 폐기된 모델과 같이 도달할 수 없는 항목도 동일한 방식으로 다음 항목으로 폴백됩니다. Claude Code는 해당 이동을 시작하기 전에 두 가지 종류의 항목을 제거합니다:544요청이 폴백될 때, Claude Code는 하나가 이를 수락할 때까지 순서대로 각 항목을 시도합니다. 설정에 고정된 폐기된 모델과 같이 도달할 수 없는 항목도 동일한 방식으로 다음 항목으로 폴백됩니다. Claude Code는 해당 이동을 시작하기 전에 두 가지 종류의 항목을 제거합니다:

540 545 

541* **허용 목록 외**: Claude Code는 체인을 읽을 때 [`availableModels`](#restrict-model-selection)에서 허용하지 않는 항목을 삭제합니다.546* **허용 목록 외**: Claude Code는 체인을 읽을 때 [`availableModels`](#restrict-model-selection)에 의해 허용되지 않는 항목을 삭제합니다.

542* **압축 중 더 작은 컨텍스트 윈도우**: 체인은 [압축](/docs/ko/context-window#what-survives-compaction)도 포함하지만, Claude Code는 주 모델보다 컨텍스트 윈도우가 작은 모델로 폴백하지 않습니다. 요약이 먼저 대화의 일부를 차단하기 때문입니다. 모든 폴백이 더 작으면 압축이 원래 오류를 표시하고 재시도할 수 있습니다.547* **압축 중 더 작은 컨텍스트 윈도우**: 체인은 [압축](/docs/ko/context-window#what-survives-compaction)도 포함하지만, Claude Code는 기본 모델보다 더 작은 컨텍스트 윈도우를 가진 모델로 폴백하지 않습니다. 요약이 먼저 대화의 일부를 차단하기 때문입니다. 모든 폴백이 더 작으면, 압축은 원래 오류를 표시하고 재시도할 수 있습니다.

543 548 

544Claude Code는 [subagents](/docs/ko/sub-agents)에도 체인을 적용합니다. subagent의 요청이 실패하면 Claude Code는 순서대로 구성된 폴백 모델을 시도하고 subagent는 요청을 수락하는 모델에서 계속됩니다. 세션의 모델은 변경되지 않습니다. v2.1.247 이전에는 체인이 포함하는 실패가 subagent를 종료했습니다.549Claude Code는 [subagents](/docs/ko/sub-agents)에도 체인을 적용합니다. subagent의 요청이 폴백될 때, Claude Code는 순서대로 구성된 폴백 모델을 시도하고, subagent는 요청을 수락하는 모델에서 계속됩니다. 세션의 모델은 변경되지 않습니다. v2.1.247 이전에는 체인이 포함하는 실패가 subagent를 종료했습니다.

545 550 

546<h3 id="automatic-model-fallback">551<h3 id="automatic-model-fallback">

547 자동 모델 폴백552 자동 모델 폴백

548</h3>553</h3>

549 554 

550이 섹션은 Fable 모델, Opus 5.5, Sonnet 5.5, Opus 5의 콘텐츠 기반 폴백을 다룹니다. 모델이 과부하 상태이거나 사용 불가능할 때의 가용성 기반 폴백은 [폴백 모델 체인](#fallback-model-chains)을 참조하세요.555이 섹션은 Fable 모델, Opus 5.5, Sonnet 5.5 및 Opus 5의 콘텐츠 기반 폴백을 다룹니다. 모델이 과부하 상태이거나 사용할 수 없을 때의 가용성 기반 폴백의 경우, [폴백 모델 체인](#fallback-model-chains)을 참조하세요.

551 556 

552Fable 모델, Opus 5.5, Sonnet 5.5, Opus 5는 안전 분류기로 실행되며, 대부분 사이버 보안 및 생물학 콘텐츠에 플래그를 지정합니다. 분류기가 요청에 플래그를 지정하고 플래그된 카테고리에 폴백 모델이 있는 경우, Claude Code는 해당 모델에서 요청을 다시 실행하고 기록에 알림을 표시합니다. 이 두 카테고리의 경우 폴백 모델은 거부한 모델에 따라 달라집니다:557Fable 모델, Opus 5.5, Sonnet 5.5 및 Opus 5는 안전 분류기로 실행되며, 이는 대부분 사이버 보안 및 생물학 콘텐츠에 플래그를 지정합니다. 분류기가 요청에 플래그를 지정하고 플래그된 카테고리에 폴백 모델이 있을 때, Claude Code는 해당 모델에서 요청을 다시 실행하고 트랜스크립트에 알림을 표시합니다. 이 두 카테고리의 경우, 폴백 모델은 어느 모델이 거부했는지에 따라 달라집니다:

553 558 

554* **Fable 5.1, Fable 5, Opus 5.5**: 생물학 플래그 요청은 Opus 5에서 다시 실행되고, 사이버 보안 플래그 요청은 Opus 4.8에서 다시 실행됩니다.559* **Fable 5.1, Fable 5 및 Opus 5.5**: 생물학 플래그 요청은 Opus 5에서 다시 실행되고, 사이버 보안 플래그 요청은 Opus 4.8에서 다시 실행됩니다.

555* **Sonnet 5.5**: 사이버 보안 플래그 요청은 Sonnet 5에서 다시 실행됩니다. 생물학 플래그 요청은 거부로 끝나며, Sonnet 5.5는 생물학 폴백 모델이 없기 때문입니다.560* **Sonnet 5.5**: 사이버 보안 플래그 요청은 Sonnet 5에서 다시 실행됩니다. 생물학 플래그 요청은 Sonnet 5.5에 생물학 폴백 모델이 없기 때문에 거부로 종료됩니다.

556* **Opus 5**: 사이버 보안 플래그 요청은 Opus 4.8에서 다시 실행됩니다. 생물학 플래그 요청은 거부로 끝나며, Opus 5는 폴백 모델이 없는 자체 생물학 분류기를 실행하기 때문입니다.561* **Opus 5**: 사이버 보안 플래그 요청은 Opus 4.8에서 다시 실행됩니다. 생물학 플래그 요청은 Opus 5가 폴백 모델이 없는 자체 생물학 분류기를 실행하기 때문에 거부로 종료됩니다.

557 562 

558Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry에서 Claude Code는 배포를 통해 이러한 대상을 확인합니다. [Bedrock, Agent Platform, Foundry에서 폴백 활성화](#enable-fallback-on-bedrock-agent-platform-and-foundry)를 참조하세요.563Amazon Bedrock, Google Cloud의 Agent Platform 및 Microsoft Foundry에서는 Claude Code가 배포의 모델 ID를 통해 이러한 대상을 확인합니다. [Bedrock, Agent Platform 및 Foundry에서 폴백 활성화](#enable-fallback-on-bedrock-agent-platform-and-foundry)를 참조하세요.

559 564 

560폴백 후 세션은 폴백 모델에서 계속됩니다. 원래 모델로 돌아가려면 [`/model`](#setting-your-model)을 실행하세요.565폴백 후, 세션은 폴백 모델에서 계속됩니다. 원래 모델로 돌아가려면 [`/model`](#setting-your-model)을 실행하세요.

561 566 

562카테고리 기반 폴백에는 Claude Code v2.1.219 이상이 필요합니다. v2.1.219 이전에는 모든 플래그된 Fable 5 요청이 제공자의 기본 Opus 모델에서 다시 실행되었고, Opus 5는 폴백 소스가 아니었습니다.567카테고리 기반 폴백에는 Claude Code v2.1.219 이상이 필요합니다. v2.1.219 이전에는 모든 플래그된 Fable 5 요청이 제공자의 기본 Opus 모델에서 다시 실행되었고, Opus 5는 폴백 소스가 아니었습니다.

563 568 


567 폴백을 트리거한 것 확인572 폴백을 트리거한 것 확인

568</h4>573</h4>

569 574 

570폴백은 세션의 첫 번째 요청에서 트리거될 수 있으며, 이는 비정상적인 것을 보내기 전입니다. 첫 번째 요청은 CLAUDE.md 콘텐츠 및 git 상태와 같은 작업 공간 컨텍스트를 전달하기 때문입니다. 보안 또는 생물학 자료를 포함하는 저장소는 해당 컨텍스트만으로 분류기를 트리거할 수 있습니다.575폴백은 CLAUDE.md 콘텐츠 및 git 상태와 같은 작업 공간 컨텍스트를 전달하는 첫 번째 요청 전에 세션의 첫 번째 요청에서 트리거될 수 있습니다. 보안 또는 생물학 자료를 포함하는 저장소는 해당 컨텍스트만으로 분류기를 트리거할 수 있습니다.

571 576 

572사용자 정의가 트리거인지 확인하려면 `claude --safe-mode`로 세션을 시작하세요. 이는 CLAUDE.md, 스킬, MCP 서버, 훅과 같은 사용자 정의를 비활성화합니다. Git 상태 및 디렉토리 이름은 사용자 정의가 아니며 여전히 포함됩니다.577사용자 정의가 트리거인지 확인하려면, `claude --safe-mode`로 세션을 시작하세요. 이는 CLAUDE.md, 스킬, MCP 서버 및 훅과 같은 사용자 정의를 비활성화합니다. Git 상태 및 디렉토리 이름은 사용자 정의가 아니며 여전히 포함됩니다.

573 578 

574<h4 id="ask-before-switching">579<h4 id="ask-before-switching">

575 전환 전에 요청580 전환하기 전에 요청

576</h4>581</h4>

577 582 

578요청이 플래그될 때마다 자동으로 전환하는 대신 어떤 일이 발생할지 결정하려면 `/config`를 실행하고 **메시지가 플래그될 때 모델 전환**을 끄거나 설정 파일에서 [`switchModelsOnFlag`](/docs/ko/settings-reference#switchmodelsonflag)를 `false`로 설정하세요. 플래그된 요청은 세션을 일시 중지하고 두 가지 옵션을 제공합니다: 폴백 모델로 전환하거나 프롬프트를 편집하고 현재 모델에서 재시도합니다.583요청이 플래그될 때마다 자동으로 전환하는 대신 어떤 일이 발생할지 결정하려면, `/config`를 실행하고 **메시지가 플래그될 때 모델 전환**을 끄거나, 설정 파일에서 [`switchModelsOnFlag`](/docs/ko/settings-reference#switchmodelsonflag)를 `false`로 설정하세요. 플래그된 요청은 두 가지 옵션으로 세션을 일시 중지합니다: 폴백 모델로 전환하거나, 프롬프트를 편집하고 현재 모델에서 재시도합니다.

579 584 

580일부 경우는 다르게 동작합니다:585일부 경우는 다르게 동작합니다:

581 586 

582* 플래그된 카테고리에 폴백 모델이 없는 경우(예: Opus 5의 생물학 플래그 또는 Sonnet 5.5), Claude Code는 프롬프트를 표시하지 않으며 요청은 거부로 끝납니다.587* 플래그된 카테고리에 폴백 모델이 없을 때(예: Opus 5 또는 Sonnet 5.5의 생물학 플래그), Claude Code는 프롬프트를 표시하지 않으며 요청은 거부로 종료됩니다.

583* 두 모델이 동일한 요청에 플래그를 지정하면 프롬프트를 편집하고 재시도하거나 새 세션을 시작할 수 있습니다.588* 두 모델이 동일한 요청에 플래그를 지정하면, 프롬프트를 편집하고 재시도하거나 새 세션을 시작할 수 있습니다.

584* 모바일 앱의 [웹의 Claude Code](/docs/ko/claude-code-on-the-web) 세션에서는 편집 및 재시도가 지원되지 않습니다. 모델을 전환하거나 데스크톱 브라우저 또는 데스크톱 앱에서 세션을 계속하세요.589* 모바일 앱의 [클라우드 세션](/docs/ko/claude-code-on-the-web)에서는 편집 및 재시도가 지원되지 않습니다. 모델을 전환하거나 데스크톱 브라우저 또는 데스크톱 앱에서 세션을 계속하세요.

585* [비대화형 모드](/docs/ko/cli-reference#cli-flags) 및 프롬프트를 표시할 수 없는 SDK 통합에서 플래그된 요청은 거부로 턴을 종료합니다.590* [비대화형 모드](/docs/ko/cli-reference#cli-flags) 및 프롬프트를 표시할 수 없는 SDK 통합에서는 플래그된 요청이 거부로 턴을 종료합니다.

586* 폴백 대상이 [`availableModels`](#restrict-model-selection)에 의해 차단되면 Claude Code는 프롬프트를 표시하지 않습니다. 플래그된 요청은 거부로 끝나며, 대상이 차단될 때 자동 폴백과 동일합니다.591* 폴백 대상이 [`availableModels`](#restrict-model-selection)에 의해 차단될 때, Claude Code는 프롬프트를 표시하지 않습니다. 플래그된 요청은 거부로 종료되며, 대상이 차단될 때 자동 폴백과 동일합니다.

587 592 

588<h4 id="enable-fallback-on-bedrock-agent-platform-and-foundry">593<h4 id="enable-fallback-on-bedrock-agent-platform-and-foundry">

589 Bedrock, Agent Platform, Foundry에서 폴백 활성화594 Bedrock, Agent Platform 및 Foundry에서 폴백 활성화

590</h4>595</h4>

591 596 

592[Amazon Bedrock](/docs/ko/amazon-bedrock), [Google Cloud의 Agent Platform](/docs/ko/google-vertex-ai), [Microsoft Foundry](/docs/ko/microsoft-foundry)에서 모델 ID는 제공자별이므로 자동 폴백은 Claude Code가 관련된 각 모델을 식별할 수 있을 때만 작동합니다:597[Amazon Bedrock](/docs/ko/amazon-bedrock), [Google Cloud의 Agent Platform](/docs/ko/google-vertex-ai) 및 [Microsoft Foundry](/docs/ko/microsoft-foundry)에서는 모델 ID가 제공자별이므로, 자동 폴백은 Claude Code가 관련된 각 모델을 식별할 수 있을 때만 작동합니다:

593 598 

594* Claude Code는 현재 모델을 폴백 소스로 인식해야 합니다. Fable 5.1 및 Fable 5는 모델 ID에 `claude-fable-5`가 포함되거나, `ANTHROPIC_DEFAULT_FABLE_MODEL`의 값과 일치하거나, [`modelOverrides`](#override-model-ids-per-version)로 매핑될 때 인식됩니다. Opus 5.5, Sonnet 5.5, Opus 5는 제공자 모델 ID 또는 [`modelOverrides`](#override-model-ids-per-version) 매핑으로 인식됩니다.599* Claude Code는 현재 모델을 폴백 소스로 인식해야 합니다. Fable 5.1 및 Fable 5는 모델 ID가 `claude-fable-5`를 포함하거나, `ANTHROPIC_DEFAULT_FABLE_MODEL`의 값과 일치하거나, [`modelOverrides`](#override-model-ids-per-version)로 매핑될 때 인식됩니다. Opus 5.5, Sonnet 5.5 및 Opus 5는 제공자 모델 ID 또는 [`modelOverrides`](#override-model-ids-per-version) 매핑으로 인식됩니다.

595* Opus 대상은 배포에서 확인되어야 합니다. 어느 모델이 거부했든: `ANTHROPIC_DEFAULT_OPUS_MODEL`을 설정하거나 제공자의 모델 목록에 Opus 4.8 항목을 유지하세요. 없으면 모든 소스 모델에 대해 폴백이 꺼지고, Sonnet 5.5를 포함하여 플래그된 요청은 거부로 끝납니다.600* Opus 대상은 배포에서 확인되어야 합니다. 어느 모델이 거부했든: `ANTHROPIC_DEFAULT_OPUS_MODEL`을 설정하거나, 제공자의 모델 목록에 Opus 4.8 항목을 유지하세요. 없으면, 폴백은 Sonnet 5.5를 포함한 모든 소스 모델에 대해 꺼지고, 플래그된 요청은 거부로 종료됩니다.

596* 플래그된 카테고리의 폴백 모델은 배포에서 확인되어야 합니다. Fable 모델, Opus 5.5, Opus 5에서 `ANTHROPIC_DEFAULT_OPUS_MODEL`을 설정하면 폴백이 있는 모든 카테고리에 대해 플래그된 요청이 해당 모델에서 다시 실행됩니다. Opus 5의 생물학 플래그는 여전히 거부로 끝납니다. 설정하지 않으면 사이버 보안 플래그 요청이 Opus 4.8 항목에서 다시 실행되고, Fable 모델 또는 Opus 5.5의 생물학 플래그 요청이 Opus 5 항목에서 다시 실행됩니다. Sonnet 5.5에서 사이버 보안 플래그 요청은 `ANTHROPIC_DEFAULT_SONNET_MODEL`에서 설정한 모델에서 다시 실행되거나, 설정하지 않으면 제공자의 모델 목록에서 Sonnet 5 항목에서 다시 실행됩니다.601* 플래그된 카테고리의 폴백 모델은 배포에서 확인되어야 합니다. Fable 모델, Opus 5.5 또는 Opus 5에서, `ANTHROPIC_DEFAULT_OPUS_MODEL`을 설정하면, 플래그된 요청은 폴백이 있는 모든 카테고리에 대해 해당 모델에서 다시 실행됩니다. Opus 5의 생물학 플래그는 여전히 거부로 종료됩니다. 설정하지 않으면, 사이버 보안 플래그 요청은 Opus 4.8 항목에서 다시 실행되고, Fable 모델 또는 Opus 5.5의 생물학 플래그 요청은 Opus 5 항목에서 다시 실행됩니다. Sonnet 5.5에서는 사이버 보안 플래그 요청이 `ANTHROPIC_DEFAULT_SONNET_MODEL`에서 설정한 모델에서 다시 실행되거나, 설정하지 않으면 제공자의 모델 목록의 Sonnet 5 항목에서 다시 실행됩니다.

597 602 

598모델을 식별할 수 없으면 Claude Code는 자동으로 전환하지 않습니다. 플래그된 요청은 거부 메시지로 끝나고 [`/model`](#setting-your-model)로 모델을 전환하고 재시도할 수 있습니다. 두 모델을 식별 가능하게 하려면 소스 모델에 대한 핀을 설정하세요:603두 모델 중 하나를 식별할 수 없으면, Claude Code는 전환하지 않습니다. 플래그된 요청은 거부 메시지로 종료되고, [`/model`](#setting-your-model)로 모델을 전환하고 재시도할 수 있습니다. 두 모델을 모두 식별 가능하게 하려면, 소스 모델에 대한 핀을 설정하세요:

599 604 

600* **Fable 모델**: `ANTHROPIC_DEFAULT_FABLE_MODEL`을 Fable 모델 ID로 설정하여 Claude Code가 이를 폴백 소스로 인식하도록 합니다.605* **Fable 모델**: `ANTHROPIC_DEFAULT_FABLE_MODEL`을 Fable 모델 ID로 설정하여 Claude Code가 이를 폴백 소스로 인식하도록 합니다.

601* **모든 소스 모델**: `ANTHROPIC_DEFAULT_OPUS_MODEL`을 Opus 모델 ID로 설정하여 폴백을 켜고 플래그된 카테고리에 대상을 제공합니다. Opus 제품군 외의 모델 또는 거부한 모델을 지정하는 핀은 거부를 유지합니다.606* **모든 소스 모델**: `ANTHROPIC_DEFAULT_OPUS_MODEL`을 Opus 모델 ID로 설정하여 폴백을 켜고 플래그된 카테고리에 대상을 제공합니다. Opus 제품군 외의 모델 또는 거부한 모델을 이름 지정하는 핀은 거부를 유지합니다.

602* **Sonnet 5.5**: Opus 핀 외에도 `ANTHROPIC_DEFAULT_SONNET_MODEL`을 설정하거나 제공자의 모델 목록에 Sonnet 5 항목을 유지하여 요청이 다시 실행되는 모델을 제공합니다. Sonnet 제품군 외의 모델 또는 Sonnet 5.5 자체를 지정하는 Sonnet 핀은 거부를 유지합니다.607* **Sonnet 5.5**: Opus 핀 외에도, `ANTHROPIC_DEFAULT_SONNET_MODEL`을 설정하거나 제공자의 모델 목록에 Sonnet 5 항목을 유지하여 요청이 다시 실행되는 모델을 제공합니다. Sonnet 제품군 외의 모델 또는 Sonnet 5.5 자체를 이름 지정하는 Sonnet 핀은 거부를 유지합니다.

603 608 

604<h4 id="security-research-and-biology-workloads">609<h4 id="security-research-and-biology-workloads">

605 보안 연구 및 생물학 워크로드610 보안 연구 및 생물학 워크로드

606</h4>611</h4>

607 612 

608공격적인 보안 또는 생물학의 워크로드(침투 테스트, Capture the Flag(CTF) 연습, 생물학 인접 코드베이스 포함)는 자주 폴백을 트리거하며, 종종 첫 번째 요청에서 트리거됩니다. Fable 5.1, Fable 5, Opus 5.5의 실질적인 생물학 작업의 경우, Claude Code는 첫 번째 플래그된 요청에서 세션을 Opus 5로 이동하고, 이후 생물학 플래그 요청은 Opus 5에서 거부로 끝나며, Opus 5는 생물학 폴백이 없기 때문입니다. Opus 5 및 Sonnet 5.5에서는 첫 번째 플래그된 요청부터 이러한 거부를 받습니다.613공격적 보안 또는 생물학의 워크로드(침투 테스트, Capture the Flag(CTF) 연습 및 생물학 인접 코드베이스 포함)는 폴백을 자주 트리거하며, 종종 첫 번째 요청에서 트리거합니다. Fable 5.1, Fable 5 또는 Opus 5.5의 실질적인 생물학 작업의 경우, Claude Code는 첫 번째 플래그된 요청에서 세션을 Opus 5로 이동하고, 이후 생물학 플래그 요청은 Opus 5에서 거부로 종료됩니다. Opus 5에 생물학 폴백이 없기 때문입니다. Opus 5 및 Sonnet 5.5에서는 첫 번째 플래그된 요청부터 이러한 거부를 받습니다.

609 614 

610이는 이러한 도메인에 대한 예상 라우팅이며 계정 플래그가 아닙니다. 조직이 이 작업을 위해 Fable 클래스 기능이 필요한 경우 Anthropic 계정 팀에 신뢰할 수 있는 액세스 프로그램에 대해 문의하세요.615이는 이러한 도메인에 대한 예상 라우팅이며, 계정 플래그가 아닙니다. 조직이 이 작업을 위해 Fable 클래스 기능이 필요한 경우, Anthropic 계정 팀에 신뢰할 수 있는 액세스 프로그램에 대해 문의하세요.

611 616 

612<h3 id="adjust-effort-level">617<h3 id="adjust-effort-level">

613 노력 수준 조정618 노력 수준 조정

614</h3>619</h3>

615 620 

616[노력 수준](https://platform.claude.com/docs/en/build-with-claude/effort)은 적응형 추론을 제어하며, 이를 통해 모델은 작업 복잡성에 따라 각 단계에서 생각할지 여부와 얼마나 생각할지 결정할 수 있습니다. 낮은 노력은 간단한 작업에 더 빠르고 저렴하지만, 높은 노력은 복잡한 문제에 더 깊은 추론을 제공합니다.621[노력 수준](https://platform.claude.com/docs/en/build-with-claude/effort)은 적응형 추론을 제어하며, 이는 모델이 각 단계에서 작업 복잡성에 따라 생각할지 여부와 얼마나 생각할지를 결정하도록 합니다. 낮은 노력은 간단한 작업에 더 빠르고 저렴하고, 높은 노력은 복잡한 문제에 더 깊은 추론을 제공합니다.

617 622 

618사용 가능한 노력 수준은 모델에 따라 다릅니다. 여기에 나열되지 않은 모델은 노력을 지원하지 않습니다:623사용 가능한 노력 수준은 모델에 따라 다릅니다. 여기에 나열되지 않은 모델은 노력을 지원하지 않습니다:

619 624 

620| 모델 | 수준 |625| 모델 | 수준 |

621| :- | :- |626| :- | :- |

622| Fable 5.1 및 Fable 5 | `low`, `medium`, `high`, `xhigh`, `max` |627| Fable 5.1 및 Fable 5 | `low`, `medium`, `high`, `xhigh`, `max` |

623| Opus 5.5, Sonnet 5.5, Opus 5, Sonnet 5, Opus 4.8, Opus 4.7 | `low`, `medium`, `high`, `xhigh`, `max` |628| Opus 5.5, Sonnet 5.5, Opus 5, Sonnet 5, Opus 4.8 및 Opus 4.7 | `low`, `medium`, `high`, `xhigh`, `max` |

624| Opus 4.6 및 Sonnet 4.6 | `low`, `medium`, `high`, `max` |629| Opus 4.6 및 Sonnet 4.6 | `low`, `medium`, `high`, `max` |

625 630 

626활성 모델이 지원하지 않는 수준을 설정하면 Claude Code는 설정한 수준 이하의 지원되는 최고 수준으로 폴백합니다. 예를 들어 `xhigh`는 Opus 4.6에서 `high`로 실행됩니다. 조직은 모델에 사용 가능한 수준을 제한할 수도 있습니다. [조직 노력 제한](#organization-effort-limits)을 참조하세요.631활성 모델이 지원하지 않는 수준을 설정하면, Claude Code는 설정한 수준 이하의 지원되는 최고 수준으로 폴백합니다. 예를 들어, `xhigh`는 Opus 4.6에서 `high`로 실행됩니다. 조직 또는 자신의 설정도 모델이 제공하는 수준을 제한할 수 있습니다. [조직 노력 제한](#organization-effort-limits)을 참조하세요.

627 632 

628[`ultracode`](/docs/ko/settings-reference#ultracode) 설정이 꺼져 있으면 Claude Code는 세션의 노력 수준을 이 순서로 확인하며, 적용되는 첫 번째를 사용합니다:633Claude Code는 세션의 노력 수준을 이 순서로 확인하며, 적용되는 첫 번째를 사용합니다:

629 634 

6301. 명시적 선택: [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/ko/env-vars#variables) 환경 변수, `--effort`로 시작, 또는 세션의 `/effort` ([비대화형 `/effort`는 더 좁은 효과를 가짐](#non-interactive-effort))6351. 명시적 선택: [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/ko/env-vars#variables) 환경 변수, `--effort`로 시작하거나, 세션에서 `/effort` ([비대화형 `/effort`는 더 좁은 효과를 가짐](#non-interactive-effort))

6312. 설정: 모델에 대해 저장한 수준 또는 [`effortLevel`](/docs/ko/settings-reference#effortlevel) 키, 설정 파일 간 우선순위는 [`modelSettings`](/docs/ko/settings-reference#modelsettings)에 명시됨6362. 설정: 모델에 대해 저장한 수준 또는 [`effortLevel`](/docs/ko/settings-reference#effortlevel) 키, [`modelSettings`](/docs/ko/settings-reference#modelsettings)에 명시된 우선순위

6323. 모델의 기본 노력: 노력을 지원하는 모든 모델에서 `high`, Opus 5.5 및 Sonnet 5.5는 `medium`으로 기본값, Opus 4.7은 `xhigh`로 기본값, 조직이 [조직 기본 모델](#organization-default-model)에 대한 기본 노력 수준을 설정할 때 해당 모델을 실행할 때 해당 수준이 기본값6373. 모델의 기본 노력: 노력을 지원하는 모든 모델에서 `high`, Opus 5.5 및 Sonnet 5.5는 `medium`으로 기본값, Opus 4.7은 `xhigh`로 기본값, 그리고 조직이 [조직 기본 모델](#organization-default-model)에 대한 기본 노력 수준을 설정할 때, 해당 모델을 실행할 때 그 수준이 기본값입니다.

633 638 

634Opus 5.5는 위의 소스 중 하나가 수준을 설정하지 않는 한 `medium`에서 시작하며, 사용자 설정 파일의 최상위 `effortLevel`은 Opus 5.5에 계산되지 않습니다. 해당 키는 Claude Code가 모델별로 수준을 저장하기 전에 `/effort`가 작성한 이전 형식입니다: 이전에 적용된 위치(Opus 5, Fable 5.1, 이전 모델)에서 계속 적용되는 반면, Opus 5.5 및 이후에 출시된 모델은 `/effort` 또는 `/model` 선택기로 수준을 선택할 때까지 자체 기본값에서 시작합니다. 프로젝트, 로컬, 관리되는 설정의 최상위 `effortLevel` 또는 `--settings`로 전달된 것은 모든 모델에 적용됩니다.639Opus 5.5는 위의 소스 중 하나가 수준을 설정하지 않으면 `medium`에서 시작하고, 사용자 설정 파일의 최상위 `effortLevel`은 Opus 5.5에 대해 계산되지 않습니다. 해당 키는 Claude Code가 모델별로 수준을 저장하기 전에 `/effort`가 작성한 이전 형식입니다: 이전에 적용된 곳에 계속 적용되며, Opus 5, Fable 5.1 및 이전 모델에서, Opus 5.5 및 이후 릴리스된 모델은 `/effort` 또는 `/model` 선택기로 수준을 선택할 때까지 자신의 기본값에서 시작합니다. 프로젝트, 로컬 또는 관리되는 설정의 최상위 `effortLevel` 또는 `--settings`로 전달된 것은 모든 모델에 적용됩니다.

635 640 

636기계에서 대화형 세션에서 `low`, `medium`, `high`, `xhigh`를 설정할 때 확인 방법으로 지속 기간을 선택합니다:641기계에서 대화형 세션에서 `low`, `medium`, `high` 또는 `xhigh`를 설정할 때, 확인 방식으로 지속 기간을 선택합니다:

637 642 

638* `/effort` 슬라이더 또는 `/model` 선택기에서 `Enter`, 또는 `/effort` 후에 입력한 수준: 수준을 기본값으로 저장하고 이후 세션에 적용643* `/effort` 슬라이더 또는 `/model` 선택기에서 `Enter`, 또는 `/effort` 후 입력한 수준: 수준을 기본값으로 저장하고 이후 세션에 적용합니다

639* `/effort` 슬라이더 또는 `/model` 선택기에서 `s`: 이 세션에만 수준을 적용합니다. Claude Code v2.1.257 이상이 필요합니다.644* `/effort` 슬라이더 또는 `/model` 선택기에서 `s`: 이 세션에만 수준을 적용합니다. Claude Code v2.1.257 이상이 필요합니다.

640 645 

641Claude Code는 사용자 설정의 [`modelSettings`](/docs/ko/settings-reference#modelsettings) 키 아래 모델별로 수준을 저장하므로 각 모델은 자체 저장된 수준을 유지합니다.646Claude Code는 사용자 설정의 [`modelSettings`](/docs/ko/settings-reference#modelsettings) 키 아래에서 모델별로 수준을 저장하므로, 각 모델은 자신의 저장된 수준을 유지합니다.

642 647 

643`max`는 가장 깊은 추론 수준입니다. `CLAUDE_CODE_EFFORT_LEVEL` 환경 변수를 통해 설정하지 않는 한 Claude Code는 `max`를 현재 세션에만 적용합니다.648`max`는 가장 깊은 추론 수준입니다. `CLAUDE_CODE_EFFORT_LEVEL` 환경 변수를 통해 설정하지 않으면, Claude Code는 `max`를 현재 세션에만 적용합니다.

644 649 

645<Note>650<Note>

646 전화 또는 [원격 제어](/docs/ko/remote-control#what-connected-devices-see)를 통해 연결된 브라우저의 노력 제어에서 선택한 수준은 해당 세션에만 적용됩니다.651 [Remote Control](/docs/ko/remote-control#what-connected-devices-see)을 통해 연결된 휴대폰 또는 브라우저의 노력 제어에서 선택한 수준은 해당 세션에만 적용됩니다.

647</Note>652</Note>

648 653 

649<span id="non-interactive-effort" />654<span id="non-interactive-effort" />

650 655 

651[`-p` 실행](/docs/ko/headless)에서 `/effort`로 수준을 설정할 때 Claude Code는 이를 해당 세션에만 적용하고 기본값으로 저장하지 않습니다.656[`-p` 실행](/docs/ko/headless)에서 `/effort`로 수준을 설정할 때, Claude Code는 해당 세션에만 적용하고 기본값으로 저장하지 않습니다.

657 

658`/effort` 슬라이더에는 **Ultracode** 토글도 있습니다. Ultracode는 모델 노력 수준이 아닌 Claude Code 설정입니다: 켜져 있으면, Claude는 세션이 실행되는 노력 수준에서 실질적인 작업에 대해 [동적 워크플로우](/docs/ko/workflows)를 조율합니다. 지속적으로 설정할 수 있는 위치는 [`ultracode`](/docs/ko/settings-reference#ultracode) 설정을 참조하세요.

652 659 

653`/effort` 메뉴는 또한 `ultracode`를 제공합니다. Ultracode는 모델 노력 수준이 아닌 Claude Code 설정입니다: 모델에 `xhigh`를 보내고 추가로 Claude가 실질적인 작업에 대해 [동적 워크플로우](/docs/ko/workflows)를 조율하도록 합니다. 지속적으로 설정할 수 있는 위치는 [`ultracode`](/docs/ko/settings-reference#ultracode) 설정을 참조하세요.660`/effort` 또는 `ultracode` 설정으로 ultracode를 켜거나 끄면 노력 수준은 변경되지 않습니다. `--effort ultracode` 플래그 및 Agent SDK `effortLevel: "ultracode"` 값은 이를 켜고 수준을 `xhigh`로 설정합니다. `/effort` 슬라이더 또는 `/model` 선택기에서 수준을 선택하면 ultracode는 그대로 유지됩니다.

654 661 

655다음 중 하나를 통해 ultracode를 켤 수 있습니다:662다음 중 하나를 통해 ultracode를 켤 수 있습니다:

656 663 

657* **`/effort`**: `/effort ultracode`를 실행하거나 메뉴에서 선택664* **`/effort`**: 현재 세션에 대해 켜려면 `/effort ultracode`를 실행하거나 끄려면 `/effort ultracode off`를 실행하세요. `/effort` 슬라이더에서 `Tab`을 눌러 **Ultracode** 토글을 뒤집은 다음 `Enter`를 눌러 적용합니다.

658* **`--effort` 플래그**: `claude --effort ultracode`로 시작하여 `xhigh` 노력으로 세션을 시작하고 ultracode를 켭니다.665* **`--effort` 플래그**: `claude --effort ultracode`로 시작하여 `xhigh` 노력과 ultracode가 켜진 상태로 세션을 시작합니다.

659* **`ultracode` 설정**: 설정 파일에서 [`"ultracode": true`](/docs/ko/settings-reference#ultracode)를 설정하거나 `--settings`를 사용하거나 Agent SDK 제어 요청에서 설정합니다. [`applyFlagSettings()`](/docs/ko/agent-sdk/typescript#applyflagsettings) 요청도 `effortLevel: "ultracode"`를 허용합니다.666* **`ultracode` 설정**: 설정 파일, `--settings` 또는 Agent SDK 제어 요청에서 [`"ultracode": true`](/docs/ko/settings-reference#ultracode)를 설정합니다. [`applyFlagSettings()`](/docs/ko/agent-sdk/typescript#applyflagsettings) 요청도 `effortLevel: "ultracode"`를 허용하며, 이는 이를 켜고 노력 수준을 `xhigh`로 설정합니다.

660* **`/model` 선택기**: 모델을 선택하는 동안 화살표 키로 노력 슬라이더를 `ultracode`로 이동합니다. Claude Code는 해당 모델을 기본값으로 저장할 때도 현재 세션에 대해 켭니다.667 

668`/effort ultracode off` 형식, 슬라이더 토글 및 `xhigh` 이외의 노력 수준에서 ultracode를 켜진 상태로 유지하려면 Claude Code v2.1.284 이상이 필요합니다. v2.1.284 이전에는 ultracode를 켜면 세션이 `xhigh` 노력으로 설정되고, 다른 수준을 선택하면 꺼지고, `xhigh` 아래의 노력 제한이 이를 사용할 수 없게 만들었습니다.

661 669 

662`--effort` 플래그 또는 Agent SDK `effortLevel` 값에 `ultracode`를 전달하려면 Claude Code v2.1.203 이상이 필요합니다. v2.1.203 이전에는 `--effort ultracode`가 `Unknown --effort value 'ultracode'`를 인쇄했고 세션이 기본 노력으로 시작되었습니다.670`--effort` 플래그 또는 Agent SDK `effortLevel` 값에 `ultracode`를 전달하려면 Claude Code v2.1.203 이상이 필요합니다. v2.1.203 이전에는 `--effort ultracode`가 `Unknown --effort value 'ultracode'`를 인쇄했고 세션이 기본 노력으로 시작되었습니다.

663 671 

664지속된 `effortLevel` 설정 및 `CLAUDE_CODE_EFFORT_LEVEL` 환경 변수는 `ultracode`를 허용하지 않습니다. `CLAUDE_CODE_EFFORT_LEVEL`이 `xhigh` 이외의 수준으로 설정되면 요청이 해당 수준에서 실행되고 ultracode의 워크플로우 조율은 비활성 상태로 유지됩니다. Ultracode를 선택하면 환경 변수가 세션의 노력을 재정의한다는 경고가 표시됩니다.672지속된 `effortLevel` 설정 및 `CLAUDE_CODE_EFFORT_LEVEL` 환경 변수는 `ultracode`를 허용하지 않습니다. `CLAUDE_CODE_EFFORT_LEVEL` 또는 [노력 제한](#organization-effort-limits)이 세션의 수준을 설정하면, ultracode는 해당 수준에서 켜진 상태로 유지됩니다.

665 673 

666<span id="when-ultracode-is-available" />674<span id="when-ultracode-is-available" />

667 675 

668Ultracode를 사용할 수 없을 때:676Ultracode는 다음과 같은 경우 사용할 수 없습니다:

669 677 

670* [워크플로우가 꺼져 있을 때](/docs/ko/workflows#turn-workflows-off)678* [워크플로우가 꺼짐](/docs/ko/workflows#turn-workflows-off)

671* 모델이 `xhigh` 노력을 지원하지 않음679* 모델이 `xhigh` 노력을 지원하지 않음

672* [노력 제한](#organization-effort-limits)이 모델에 `xhigh` 아래로 적용됨

673 680 

674이 경우 `--effort ultracode`는 ultracode를 끄고 모델 및 모든 제한이 허용하는 최고 노력 수준(최대 `xhigh`)에서 세션을 시작합니다.681이 경우 `--effort ultracode`는 모델 및 제한이 허용하는 최고 노력 수준(최대 `xhigh`)에서 ultracode가 꺼진 상태로 세션을 시작합니다.

675 682 

676<h4 id="choose-an-effort-level">683<h4 id="choose-an-effort-level">

677 노력 수준 선택684 노력 수준 선택

678</h4>685</h4>

679 686 

680각 수준은 토큰 지출을 기능에 대해 교환합니다. 기본값은 대부분의 코딩 작업에 적합합니다. 다른 균형을 원할 때 조정하세요.687각 수준은 토큰 지출을 기능에 대해 거래합니다. 기본값은 대부분의 코딩 작업에 적합합니다. 다른 균형을 원할 때 조정하세요.

681 688 

682| 수준 | 사용 시기 |689| 수준 | 사용 시기 |

683| :- | :- |690| :- | :- |

684| `low` | 각 결과를 검토하는 짧은 교환(예: 브레인스토밍, 첫 번째 스케치, 이름 바꾸기와 같은 작은 변경) |691| `low` | 각 결과를 검토하는 빠른 교환(예: 브레인스토밍, 첫 번째 스케치 또는 이름 바꾸기와 같은 작은 변경) |

685| `medium` | 명확한 범위의 일상적인 엔지니어링 작업(예: 새 기능 구현)에 적합합니다. Opus 5.5 및 Sonnet 5.5의 기본값입니다. 다른 모델에서는 일부 지능을 교환할 수 있는 비용에 민감한 작업의 토큰 사용을 줄입니다. |692| `medium` | Opus 5.5 및 Sonnet 5.5의 기본값이며, 명확한 범위의 일상적인 엔지니어링 작업(예: 새 기능 구현)에 적합합니다. 다른 모델에서는 일부 지능을 거래할 수 있는 비용 민감한 작업의 토큰 사용을 줄입니다. |

686| `high` | 검증이 중요하거나 엣지 케이스가 가능한 작업(예: 기존 코드베이스의 버그 수정). Opus 5.5, Sonnet 5.5, Opus 4.7을 제외한 모든 모델의 기본값입니다. |693| `high` | 검증이 중요하거나 엣지 케이스가 가능한 작업(예: 기존 코드베이스의 버그 수정). Opus 5.5, Sonnet 5.5 및 Opus 4.7을 제외한 모든 모델의 기본값 |

687| `xhigh` | 더 높은 토큰 지출로 더 깊은 추론. Opus 4.7의 기본값입니다. |694| `xhigh` | 더 높은 토큰 지출로 더 깊은 추론. Opus 4.7의 기본값 |

688| `max` | 어려운 문제로 Claude가 당신 없이 작업하기를 원하는 경우(예: 보안 취약점 찾기). `max`는 수익 감소를 보일 수 있고 과도한 생각이 발생하기 쉬우므로 광범위하게 채택하기 전에 테스트하세요. |695| `max` | Claude가 당신 없이 작업하기를 원하는 어려운 문제(예: 보안 취약점 찾기). `max`는 수익 감소를 보일 수 있고 과도한 생각에 취약하므로, 광범위하게 채택하기 전에 테스트하세요. |

689| `ultracode` | 각 실질적인 작업에 대해 `xhigh` 메시지별 추론으로 [동적 워크플로우](/docs/ko/workflows)를 계획하는 Claude Code 설정 |696| `ultracode` | 수준이 아닌 Claude Code 설정: 모든 노력 수준에서 각 실질적인 작업에 대해 [동적 워크플로우](/docs/ko/workflows)를 계획합니다. |

690 697 

691Opus 5.5 및 Fable 5.1의 테스트에서 Claude는 더 높은 수준에서 더 많은 엣지 케이스를 테스트했고 답변하기 전에 더 많은 작업을 검증했습니다. 또한 더 많은 선택을 독립적으로 했습니다. 더 낮은 수준에서 Claude는 시작점을 더 빨리 반환했으며, 이는 각 결과를 검토하고 다음 단계를 조율하는 작업에 적합합니다. 각 수준에서 실행되는 동일한 작업을 보려면 블로그의 [Claude Code 사용: 노력 지출](https://claude.dev/blog/spending-your-effort/)을 읽으세요.698Opus 5.5 및 Fable 5.1의 테스트에서, Claude는 더 높은 수준에서 더 많은 엣지 케이스를 테스트하고 답변하기 전에 더 많은 작업을 검증했습니다. 또한 더 많은 선택을 독립적으로 했습니다. 더 낮은 수준에서, Claude는 시작점을 더 빨리 반환했으며, 이는 각 결과를 검토하고 다음 단계를 조율하는 작업에 적합합니다. 각 수준에서 실행되는 동일한 작업을 보려면, 블로그의 [Using Claude Code: Spending your effort](https://claude.dev/blog/spending-your-effort/)를 읽으세요.

692 699 

693노력 척도는 모델별로 보정되므로 동일한 수준 이름이 모델 전체에서 동일한 기본 값을 나타내지 않습니다.700노력 척도는 모델별로 보정되므로, 동일한 수준 이름이 모델 전체에서 동일한 기본 값을 나타내지 않습니다.

694 701 

695Opus 5.5는 [기본적으로 `medium`](#adjust-effort-level)이며, Opus 5의 기본값인 `high`보다 한 수준 아래입니다. Anthropic의 테스트에서 Opus 5.5는 `medium`에서 코딩 및 지식 작업 평가에서 Opus 5를 `high`에서 일치하거나 초과합니다. 주어진 수준에서 Opus 5.5는 턴당 Opus 5보다 더 많이 생각하는 경향이 있습니다. Opus 5에서 Opus 5.5로 이동할 때 Opus 5에서 사용한 수준을 이월하는 대신 `medium`에서 시작하세요. 자신의 작업에 대해 수준을 테스트하려면 Opus 5.5 프롬프팅 가이드의 [노력 보정](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/prompting-claude-opus-5-5#calibrate-effort)을 참조하세요.702Opus 5.5는 [기본값 `medium`](#adjust-effort-level)으로 시작하며, Opus 5의 기본값 `high`보다 한 수준 아래입니다. Anthropic의 테스트에서, Opus 5.5는 `medium`에서 코딩 및 지식 작업 평가에서 Opus 5를 `high`에서 일치하거나 초과합니다. 주어진 수준에서, Opus 5.5는 Opus 5보다 턴당 더 많이 생각하는 경향이 있습니다. Opus 5에서 Opus 5.5로 이동할 때, Opus 5에서 사용한 수준을 이월하는 대신 `medium`에서 시작하세요. 자신의 작업에 대해 수준을 테스트하려면, Opus 5.5 프롬프팅 가이드의 [Calibrate effort](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/prompting-claude-opus-5-5#calibrate-effort)를 참조하세요.

696 703 

697<h4 id="use-ultrathink-for-one-off-deep-reasoning">704<h4 id="use-ultrathink-for-one-off-deep-reasoning">

698 일회성 깊은 추론을 위해 ultrathink 사용705 일회성 깊은 추론을 위해 ultrathink 사용

699</h4>706</h4>

700 707 

701프롬프트의 어디든 `ultrathink`를 포함하여 해당 턴에서 더 깊은 추론을 요청하세요. 세션 노력 설정을 변경하지 않습니다. Claude Code는 키워드를 인식하고 컨텍스트 내 지시를 추가합니다. API로 전송된 노력 수준은 변경되지 않습니다. Claude Code는 "think", "think hard", "think more"와 같은 다른 구문을 일반 프롬프트 텍스트로 전달하고 키워드로 인식하지 않습니다.708프롬프트의 어디든 `ultrathink`를 포함하여 세션 노력 설정을 변경하지 않고 해당 턴에서 더 깊은 추론을 요청합니다. Claude Code는 키워드를 인식하고 컨텍스트 내 지시를 추가합니다. API로 전송된 노력 수준은 변경되지 않습니다. Claude Code는 "think", "think hard" 및 "think more"와 같은 다른 구문을 일반 프롬프트 텍스트로 전달하고 키워드로 인식하지 않습니다.

702 709 

703<h4 id="set-the-effort-level">710<h4 id="set-the-effort-level">

704 노력 수준 설정711 노력 수준 설정


706 713 

707다음 중 하나를 통해 노력을 변경할 수 있습니다:714다음 중 하나를 통해 노력을 변경할 수 있습니다:

708 715 

709* **`/effort`**: 인터랙티브 슬라이더를 열려면 인수 없이 `/effort`를 실행하거나, 직접 설정하려면 수준 이름 뒤에 `/effort`를 실행하거나, 활성 모델에 대해 저장된 수준을 지우려면 `/effort auto`를 실행하세요. Claude가 작업 중일 때 실행할 수 있으며, Claude Code가 [캐시 경고](/docs/ko/prompt-caching#changing-effort-level)를 표시하면 확인한 후 Claude Code는 새 수준을 턴의 다음 요청에 적용합니다.716* **`/effort`**: 인터랙티브 슬라이더를 열려면 인수 없이 `/effort`를 실행하고, 직접 설정하려면 수준 이름 뒤에 `/effort`를 실행하거나, 활성 모델에 대해 저장된 수준을 지우려면 `/effort auto`를 실행합니다. Claude가 작업 중일 때 실행할 수 있으며, Claude Code가 표시하는 경우 [캐시 경고](/docs/ko/prompt-caching#changing-effort-level)를 확인한 후, Claude Code는 새 수준을 턴의 다음 요청에 적용합니다.

710* **`/model`에서**: 모델을 선택할 때 좌우 화살표 키를 사용하여 노력 슬라이더를 조정합니다.717* **`/model`에서**: 모델을 선택할 때 왼쪽/오른쪽 화살표 키를 사용하여 노력 슬라이더를 조정합니다.

711* **`--effort` 플래그**: Claude Code를 시작할 때 단일 세션에 대해 설정하려면 수준 이름을 전달합니다.718* **`--effort` 플래그**: Claude Code를 시작할 때 단일 세션에 대해 설정하려면 수준 이름을 전달합니다.

712* **환경 변수**: `CLAUDE_CODE_EFFORT_LEVEL`을 수준 이름 또는 `auto`로 설정합니다.719* **환경 변수**: `CLAUDE_CODE_EFFORT_LEVEL`을 수준 이름 또는 `auto`로 설정합니다.

713* **설정**: [`modelSettings`](/docs/ko/settings-reference#modelsettings)에서 모델별 수준을 설정하거나, [`effortLevel`](/docs/ko/settings-reference#effortlevel)을 `low`, `medium`, `high`, `xhigh`로 설정하여 모델 없는 모델의 기본값으로 설정합니다. `max`는 두 키에서 허용되지 않으며, `ultracode`는 자체 [`ultracode`](/docs/ko/settings-reference#ultracode) 키를 가집니다.720* **설정**: [`modelSettings`](/docs/ko/settings-reference#modelsettings)에서 모델별 수준을 설정하거나, [`effortLevel`](/docs/ko/settings-reference#effortlevel)을 `low`, `medium`, `high` 또는 `xhigh`로 설정하여 수준이 없는 모델의 기본값으로 설정합니다. `max`는 두 키에서 수준으로 허용되지 않으며, `ultracode`는 자신의 [`ultracode`](/docs/ko/settings-reference#ultracode) 키를 가집니다.

714* **연결된 장치에서**: [원격 제어](/docs/ko/remote-control#what-connected-devices-see) 세션에서 전화 또는 브라우저의 노력 제어에서 수준을 선택합니다. 수준은 현재 세션에만 적용됩니다. Claude Code v2.1.234 이상이 필요합니다.721* **연결된 장치에서**: [Remote Control](/docs/ko/remote-control#what-connected-devices-see) 세션에서, 휴대폰 또는 브라우저의 노력 제어에서 수준을 선택합니다. 수준은 현재 세션에만 적용됩니다. Claude Code v2.1.234 이상이 필요합니다.

715* **스킬 및 subagent frontmatter**: [스킬](/docs/ko/skills#frontmatter-reference) 또는 [subagent](/docs/ko/sub-agents#supported-frontmatter-fields) markdown 파일에서 `effort`를 설정하여 해당 스킬 또는 subagent가 실행될 때 노력 수준을 재정의합니다.722* **스킬 및 subagent frontmatter**: [스킬](/docs/ko/skills#frontmatter-reference) 또는 [subagent](/docs/ko/sub-agents#supported-frontmatter-fields) markdown 파일에서 `effort`를 설정하여 해당 스킬 또는 subagent가 실행될 때 노력 수준을 재정의합니다.

716 723 

717Frontmatter 노력은 해당 스킬 또는 subagent가 활성화될 때 적용되며, 세션 수준을 재정의하지만 환경 변수는 재정의하지 않습니다. [`maxEffortLevel`](/docs/ko/settings-reference#maxeffortlevel) 또는 [조직 노력 제한](#organization-effort-limits)은 여전히 스킬 또는 subagent가 실행되는 수준을 제한합니다.724Frontmatter 노력은 해당 스킬 또는 subagent가 활성화될 때 적용되며, 세션 수준을 재정의하지만 환경 변수는 재정의하지 않습니다. [`maxEffortLevel`](/docs/ko/settings-reference#maxeffortlevel) 또는 [조직 노력 제한](#organization-effort-limits)은 여전히 스킬 또는 subagent가 실행되는 수준을 제한합니다.

718 725 

719[관리되는 설정](/docs/ko/managed-settings)에서 `effortLevel`을 설정하면 Claude Code는 [노력 확인 순서](#adjust-effort-level)의 설정 단계에서 이를 적용하고 사용자는 여전히 `/effort` 또는 `--effort`로 수준을 변경할 수 있습니다. 사용자를 수준 이하로 유지하려면 [`maxEffortLevel`](/docs/ko/settings-reference#maxeffortlevel)을 설정하세요.726[관리되는 설정](/docs/ko/managed-settings)에서 `effortLevel`을 설정하면, Claude Code는 [노력 해결 순서](#adjust-effort-level)의 설정 단계에서 적용하고, 사용자는 여전히 `/effort` 또는 `--effort`로 수준을 변경할 수 있습니다. 사용자를 수준 이하로 유지하려면, [`maxEffortLevel`](/docs/ko/settings-reference#maxeffortlevel)을 설정하세요.

720 727 

721노력 슬라이더는 지원되는 모델이 선택되면 `/model`에 나타납니다. 현재 노력 수준은 또한 모델 이름 옆의 세션 헤더에 표시됩니다. 예를 들어 "with low effort"이므로 `/model`을 열지 않고 어떤 설정이 활성화되어 있는지 확인할 수 있습니다. 바닥글은 또한 시작 시 및 변경 시 노력 수준을 간단히 표시합니다.728노력 슬라이더는 지원되는 모델이 선택되었을 때 `/model`에 나타납니다. 현재 노력 수준은 모델 이름 옆의 세션 헤더에도 표시됩니다(예: "with low effort"). 따라서 `/model`을 열지 않고도 어느 설정이 활성화되었는지 확인할 수 있습니다. 바닥글은 시작 시 및 변경 시 노력 수준을 간단히 표시합니다.

722 729 

723<h4 id="adaptive-reasoning-and-fixed-thinking-budgets">730<h4 id="adaptive-reasoning-and-fixed-thinking-budgets">

724 적응형 추론 및 고정 생각 예산731 적응형 추론 및 고정 생각 예산

725</h4>732</h4>

726 733 

727적응형 추론은 각 단계에서 생각을 선택 사항으로 만들므로 Claude는 일상적인 프롬프트에 더 빠르게 응답하고 이점을 얻는 단계를 위해 더 깊은 생각을 예약할 수 있습니다. 현재 수준이 생성하는 것보다 Claude가 더 자주 또는 덜 자주 생각하기를 원하면 프롬프트 또는 `CLAUDE.md`에서 직접 말할 수 있습니다. 모델은 노력 설정 내에서 해당 지침에 응답합니다.734적응형 추론은 각 단계에서 생각을 선택 사항으로 만들므로, Claude는 일상적인 프롬프트에 더 빠르게 응답하고 이점을 얻는 단계를 위해 더 깊은 생각을 예약할 수 있습니다. 현재 수준이 생성하는 것보다 Claude가 더 자주 또는 덜 자주 생각하기를 원하면, 프롬프트 또는 `CLAUDE.md`에서 직접 말할 수 있습니다. 모델은 노력 설정 내에서 해당 지침에 응답합니다.

728 735 

729Fable 모델, Sonnet 5 이상, Opus 4.7 이상은 항상 적응형 추론을 사용합니다. 고정 생각 예산 모드 및 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING`은 이들에게 적용되지 않습니다.736Fable 모델, Sonnet 5 이상 및 Opus 4.7 이상은 항상 적응형 추론을 사용합니다. 고정 생각 예산 모드 및 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING`은 이들에게 적용되지 않습니다.

730 737 

731Opus 4.6 및 Sonnet 4.6에서 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1`을 설정하여 `MAX_THINKING_TOKENS`로 제어되는 이전 고정 생각 예산으로 되돌릴 수 있습니다. [환경 변수](/docs/ko/env-vars)를 참조하세요.738Opus 4.6 및 Sonnet 4.6에서는 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1`을 설정하여 `MAX_THINKING_TOKENS`로 제어되는 이전 고정 생각 예산으로 되돌릴 수 있습니다. [환경 변수](/docs/ko/env-vars)를 참조하세요.

732 739 

733<h3 id="extended-thinking">740<h3 id="extended-thinking">

734 확장 생각741 확장 생각

735</h3>742</h3>

736 743 

737확장 생각은 Claude가 응답하기 전에 내보내는 추론입니다. [적응형 추론](#adjust-effort-level)을 지원하는 모델에서 노력 수준은 얼마나 많은 생각이 발생하는지에 대한 주요 제어입니다. 아래 설정은 생각을 켜거나 끄고 표시 방법을 제어합니다. Anthropic API에서 생각이 꺼져 있으면 Claude Code는 [해당 조합을 허용하지 않는](/docs/ko/errors#effort-isnt-available-with-thinking-turned-off) Opus 5와 같은 모델에 더 높은 수준 대신 노력 `high`를 보냅니다.744확장 생각은 Claude가 응답하기 전에 내보내는 추론입니다. [적응형 추론](#adjust-effort-level)을 지원하는 모델에서, 노력 수준은 얼마나 많은 생각이 발생하는지에 대한 주요 제어이며, 아래 설정은 생각을 켜거나 끄고 표시 방식을 제어합니다. Anthropic API에서 생각이 꺼져 있으면, Claude Code는 Opus 5와 같이 [해당 조합을 허용하지 않는](/docs/ko/errors#effort-isnt-available-with-thinking-turned-off) 모델에 더 높은 수준 대신 노력 `high`를 보냅니다.

738 745 

739| 제어 | 설정 방법 |746| 제어 | 설정 방법 |

740| :- | :- |747| :- | :- |

741| 현재 세션 토글 | macOS에서 `Option+T` 또는 Windows 및 Linux에서 `Alt+T` 누르기 |748| 현재 세션에 대한 토글 | macOS에서 `Option+T` 또는 Windows 및 Linux에서 `Alt+T`를 누릅니다. |

742| 전역 기본값 설정 | `/config`를 실행하고 생각 모드를 토글합니다. `~/.claude/settings.json`에 `alwaysThinkingEnabled`로 저장됨 |749| 전역 기본값 설정 | `/config`를 실행하고 생각 모드를 토글합니다. `~/.claude/settings.json`에서 `alwaysThinkingEnabled`로 저장됩니다. |

743| 환경 변수를 통해 비활성화 | [`MAX_THINKING_TOKENS=0`](/docs/ko/env-vars)을 설정하여 Anthropic API에서 Opus 5.5, Sonnet 5.5, Fable 모델을 제외한 생각을 끕니다. [타사 제공자](/docs/ko/third-party-integrations)에서 Claude Code는 `thinking` 매개변수를 생략하고 적응형 추론 모델은 여전히 생각할 수 있습니다. 다른 값은 [고정 생각 예산](#adaptive-reasoning-and-fixed-thinking-budgets)에만 적용됩니다. |750| 환경 변수를 통해 비활성화 | [`MAX_THINKING_TOKENS=0`](/docs/ko/env-vars)을 설정하여 Opus 5.5, Sonnet 5.5 및 Fable 모델을 제외한 Anthropic API에서 생각을 끕니다. [제3자 제공자](/docs/ko/third-party-integrations)에서, Claude Code는 `thinking` 매개변수를 생략하고, 적응형 추론 모델은 여전히 생각할 수 있습니다. 다른 값은 [고정 생각 예산](#adaptive-reasoning-and-fixed-thinking-budgets)에만 적용됩니다. |

751 

752Opus 5.5, Sonnet 5.5 또는 Fable 모델에서 생각을 끌 수 없습니다. 세션 토글 및 `/config` 행은 스위치를 제공하는 대신 이 모델들에 대해 `Thinking can't be turned off`를 표시하고, 저장된 `alwaysThinkingEnabled: false` 또는 `MAX_THINKING_TOKENS=0`은 여기에 영향을 주지 않습니다. 이 모델들에서, 모델은 노력 수준에 따라 각 단계에서 얼마나 생각할지 결정합니다. 저장된 설정은 이를 허용하는 모델로 전환할 때 다시 적용됩니다.

744 753 

745Opus 5.5, Sonnet 5.5, Fable 모델에서 생각을 끌 수 없습니다. 세션 토글, `alwaysThinkingEnabled`, `MAX_THINKING_TOKENS=0`은 효과가 없으며 모델은 노력 수준에 따라 단계별로 얼마나 생각할지 결정합니다.754Claude Code는 기본적으로 생각 출력을 축소합니다. `Ctrl+O`를 눌러 상세 모드를 토글하고 회색 기울임꼴 텍스트로 추론을 봅니다. Anthropic API의 대화형 세션은 기본적으로 편집된 생각 블록을 수신하므로, 확장할 때 전체 요약을 사용 가능하게 하려면 [설정](/docs/ko/settings)에서 `showThinkingSummaries: true`를 설정하세요. 축소되거나 편집된 경우에도 생성된 모든 생각 토큰에 대해 청구됩니다.

746 755 

747Claude Code는 기본적으로 생각 출력을 축소합니다. 자세한 모드를 토글하고 회색 기울임꼴 텍스트로 추론을 보려면 `Ctrl+O`를 누르세요. Anthropic API의 대화형 세션은 기본적으로 수정된 생각 블록을 받으므로 확장할 때 전체 요약을 사용 가능하게 하려면 [설정](/docs/ko/settings)에서 `showThinkingSummaries: true`를 설정하세요. 축소되거나 수정되었을 때도 생성된 모든 생각 토큰에 대해 청구됩니다.756<a id="extended-context-with-1m" />

748 757 

749<h3 id="extended-context">758<h3 id="extended-context">

750 확장 컨텍스트759 확장 컨텍스트

751</h3>760</h3>

752 761 

753Fable 5.1, Fable 5, Sonnet 5 이상, Opus 4.6 이상, Sonnet 4.6은 큰 코드베이스가 있는 긴 세션을 위해 [1백만 토큰 컨텍스트 윈도우](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model)를 지원합니다.762Fable 5.1, Fable 5, Sonnet 5 이상, Opus 4.6 이상 및 Sonnet 4.6은 큰 코드베이스가 있는 긴 세션을 위해 [1백만 토큰 컨텍스트 윈도우](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model)를 지원합니다.

754 763 

755Anthropic API에서 Fable 5.1, Fable 5, Sonnet 5 이상, Opus 4.7 이상은 모든 플랜(Pro 포함)에서 1M 윈도우로 실행됩니다. 이러한 모델에서 `[1m]` 변형을 선택하거나 1M 윈도우에 대해 사용 크레딧을 켤 필요가 없습니다. Fable 사용 자체는 일부 플랜에서 사용 크레딧으로 청구될 수 있습니다. [Fable 및 사용 크레딧](#fable-and-usage-credits)을 참조하세요.764Anthropic API에서, Fable 5.1, Fable 5, Sonnet 5 이상 및 Opus 4.7 이상은 Pro를 포함한 모든 플랜에서 1M 윈도우로 실행됩니다. 이 모델들에서 `[1m]` 변형을 선택하거나 1M 윈도우에 대해 사용 크레딧을 켤 필요가 없습니다. Fable 사용 자체는 일부 플랜에서 사용 크레딧으로 청구될 수 있습니다. [Fable 및 사용 크레딧](#fable-and-usage-credits)을 참조하세요.

756 765 

757Opus 4.6 및 Sonnet 4.6은 `[1m]` 변형을 통해서만 1M에 도달하며, 해당 변형에 대한 액세스는 플랜에 따라 다릅니다. Max, Team, Enterprise 플랜(Team Standard 및 Team Premium 좌석 모두 포함)에서 1M 컨텍스트가 있는 Opus 4.6은 구독에 포함됩니다. 1M 컨텍스트가 있는 Sonnet 4.6은 Max를 포함한 모든 구독 플랜에서 [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)이 필요합니다.766Opus 4.6 및 Sonnet 4.6은 `[1m]` 변형을 통해서만 1M에 도달하며, 해당 변형에 대한 액세스는 플랜에 따라 다릅니다. Max, Team 및 Enterprise 플랜(Team Standard 및 Team Premium 좌석 모두 포함)에서, 1M 컨텍스트가 있는 Opus 4.6은 구독에 포함됩니다. 1M 컨텍스트가 있는 Sonnet 4.6은 모든 구독 플랜(Max 포함)에서 [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)이 필요합니다.

758 767 

759| 플랜 | 1M 컨텍스트가 있는 Opus 4.6 | 1M 컨텍스트가 있는 Sonnet 4.6 |768| 플랜 | 1M 컨텍스트가 있는 Opus 4.6 | 1M 컨텍스트가 있는 Sonnet 4.6 |

760| - | - | - |769| - | - | - |

761| Max, Team, Enterprise | 구독에 포함됨 | [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) 필요 |770| Max, Team 및 Enterprise | 구독에 포함됨 | [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) 필요 |

762| Pro | [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) 필요 | [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) 필요 |771| Pro | [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) 필요 | [사용 크레딧](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) 필요 |

763| API 및 종량제 | 전체 액세스 | 전체 액세스 |772| API 및 종량제 | 전체 액세스 | 전체 액세스 |

764 773 

765Claude Code는 Anthropic API에 직접 연결할 때만 이러한 플랜 요구 사항을 확인합니다. `ANTHROPIC_BASE_URL`을 [LLM 게이트웨이](/docs/ko/llm-gateway#subscriptions-and-gateways)로 지정하고 저장된 claude.ai 로그인이 활성 자격증으로 유지되면 Claude Code는 계정의 사용 크레딧을 확인하지 않습니다. `/model`의 `[1m]` 옵션은 사용 가능하게 유지되고 게이트웨이가 요청 성공 여부를 결정합니다. v2.1.229 이전에는 Claude Code가 계정의 사용 크레딧을 확인할 수 없을 때 해당 구성에서 `/model sonnet[1m]`을 거부했습니다.774Claude Code는 Anthropic API에 직접 연결할 때만 이러한 플랜 요구 사항을 확인합니다. 저장된 claude.ai 로그인이 활성 자격증으로 유지되는 동안 `ANTHROPIC_BASE_URL`을 [LLM 게이트웨이](/docs/ko/llm-gateway#subscriptions-and-gateways)로 지정하면, Claude Code는 계정의 사용 크레딧을 확인하지 않습니다. `[1m]` 옵션은 `/model`에서 사용 가능하게 유지되고, 게이트웨이는 요청이 성공하는지 결정합니다. v2.1.229 이전에는 Claude Code가 해당 구성에서 사용 크레딧을 확인할 수 없을 때 `/model sonnet[1m]`을 거부했습니다.

766 775 

7671M 컨텍스트를 끄려면 `CLAUDE_CODE_DISABLE_1M_CONTEXT=1`을 설정하세요. Claude Code는 모델 선택기에서 1M 모델 변형을 제거합니다. Sonnet 5 및 Fable 모델과 같은 기본 1M 윈도우가 있는 모델에서 모델을 200K 컨텍스트 윈도우로 취급합니다:7761M 컨텍스트를 끄려면, `CLAUDE_CODE_DISABLE_1M_CONTEXT=1`을 설정하세요. Claude Code는 모델 선택기에서 1M 모델 변형을 제거합니다. Sonnet 5 및 Fable 모델과 같이 기본 1M 윈도우가 있는 모델에서, 모델을 200K 컨텍스트 윈도우로 취급합니다:

768 777 

769* 자동 압축이 켜져 있으면 세션은 [자동 압축](#set-the-auto-compact-window)을 통해 200K 경계에서 압축합니다. 자동 압축 윈도우를 200K 위로 설정해도 유지가 해제되지 않습니다. Claude Code는 해당 윈도우를 모델의 컨텍스트 윈도우로 제한하기 때문입니다.778* 자동 압축이 켜져 있으면, 세션은 [자동 압축](#set-the-auto-compact-window)을 통해 200K 경계에서 압축됩니다. 자동 압축 윈도우를 200K 위로 설정해도 보류를 해제하지 않습니다. Claude Code는 해당 윈도우를 모델의 컨텍스트 윈도우로 제한하기 때문입니다.

770* 자동 압축이 꺼져 있으면 세션은 압축 대신 200K 경계에서 [컨텍스트 제한 오류](/docs/ko/errors#prompt-is-too-long)로 중지됩니다.779* 자동 압축이 꺼져 있으면, 세션은 압축하는 대신 200K 경계에서 [컨텍스트 제한 오류](/docs/ko/errors#prompt-is-too-long)로 중지됩니다.

771 780 

772v2.1.223 이전에는 Claude Code가 Sonnet 5, Opus 4.8, Opus 5 세션만 200K로 유지했습니다. [환경 변수](/docs/ko/env-vars)를 참조하세요.781v2.1.223 이전에는 Claude Code가 Sonnet 5, Opus 4.8 및 Opus 5 세션만 200K로 유지했습니다. [환경 변수](/docs/ko/env-vars)를 참조하세요.

773 782 

7741M 컨텍스트 윈도우는 200K를 초과하는 토큰에 대한 프리미엄 없이 표준 모델 가격을 사용합니다. 확장 컨텍스트가 구독에 포함된 플랜의 경우 사용량은 구독으로 계속 적용됩니다. 확장 컨텍스트에 사용 크레딧을 통해 액세스하는 플랜의 경우 토큰은 사용 크레딧으로 청구됩니다.7831M 컨텍스트 윈도우는 200K를 초과하는 토큰에 대한 프리미엄 없이 표준 모델 가격을 사용합니다. 확장 컨텍스트가 구독에 포함된 플랜의 경우, 사용은 구독으로 계속 적용됩니다. 확장 컨텍스트에 사용 크레딧을 통해 액세스하는 플랜의 경우, 토큰은 사용 크레딧으로 청구됩니다.

775 784 

776계정이 1M 컨텍스트를 지원하면 최신 버전의 Claude Code에서 `/model` 선택기에 옵션이 나타납니다. 보이지 않으면 세션을 다시 시작해 보세요.785계정이 1M 컨텍스트를 지원하면, 옵션이 최신 버전의 Claude Code의 `/model` 선택기에 나타납니다. 보이지 않으면, 세션을 다시 시작하고, 제3자 제공자에서 배포가 `ANTHROPIC_DEFAULT_*_MODEL` 변수로 [모델을 고정](#pin-models-for-third-party-deployments)했는지 확인하세요.

777 786 

778모델 별칭 또는 전체 모델 이름과 함께 `[1m]` 접미사를 사용할 수도 있습니다:787모델 별칭 또는 전체 모델 이름으로 `[1m]` 접미사를 사용할 수도 있습니다:

779 788 

780```text theme={null}789```text theme={null}

781# opus[1m] 또는 sonnet[1m] 별칭 사용790# opus[1m] 또는 sonnet[1m] 별칭 사용


790 Sonnet 5.5 및 Sonnet 5 컨텍스트 윈도우799 Sonnet 5.5 및 Sonnet 5 컨텍스트 윈도우

791</h4>800</h4>

792 801 

793Anthropic API에서 Sonnet 5.5 및 Sonnet 5는 항상 1M 컨텍스트 윈도우로 실행됩니다. 200K 변형이 없고, 선택할 `[1m]` 접미사가 없으며, 어떤 플랜에서도 사용 크레딧이 필요하지 않습니다. 세션은 윈도우가 채워지기 전에 자동 압축되며, 기본적으로 약 967K 토큰에서 압축됩니다. [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/ko/env-vars)를 설정하여 다른 임계값을 선택하세요.802Anthropic API에서, Sonnet 5.5 및 Sonnet 5는 항상 1M 컨텍스트 윈도우로 실행됩니다. 200K 변형이 없고, 선택할 `[1m]` 접미사가 없으며, 어떤 플랜에서도 사용 크레딧이 필요하지 않습니다. 세션은 윈도우가 채워지기 전에 자동 압축되며, 기본적으로 약 967K 토큰에서 압축됩니다. [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/ko/env-vars)를 설정하여 다른 임계값을 선택합니다.

794 803 

795두 가지 구성이 윈도우를 200K로 예산합니다:804두 가지 구성이 윈도우를 200K로 예산합니다:

796 805 

797* **LLM 게이트웨이**: `ANTHROPIC_BASE_URL`이 [게이트웨이](/docs/ko/llm-gateway)를 가리킬 때 Claude Code는 1M 지원을 확인할 수 없습니다. 전체 윈도우를 사용하려면 모델 선택기에서 Sonnet 5.5 (1M context)를 선택하세요. 이는 `sonnet[1m]`으로 매핑됩니다. 또는 Sonnet 5의 경우 `/model claude-sonnet-5[1m]`을 실행하세요.806* **LLM 게이트웨이**: `ANTHROPIC_BASE_URL`이 [게이트웨이](/docs/ko/llm-gateway)를 가리킬 때, Claude Code는 1M 지원을 확인할 수 없습니다. 전체 윈도우를 사용하려면, 모델 선택기에서 Sonnet 5.5(1M context)를 선택하세요. 이는 `sonnet[1m]`으로 매핑되거나, Sonnet 5의 경우 `/model claude-sonnet-5[1m]`을 실행합니다.

798* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`**: 기본 1M 윈도우가 있는 모든 모델의 세션을 200K 윈도우로 유지합니다. [확장 컨텍스트](#extended-context)에서 유지가 강제되는 방법을 참조하세요. 컨텍스트를 제한해야 하는 배포에 유용합니다.807* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`**: 기본 1M 윈도우가 있는 모든 모델의 세션을 200K 윈도우로 유지합니다. [확장 컨텍스트](#extended-context)에서 보류가 적용되는 방식을 참조하세요. 컨텍스트를 제한해야 하는 배포에 유용합니다.

799 808 

800<h2 id="context-window-and-auto-compaction">809<h2 id="context-window-and-auto-compaction">

801 컨텍스트 윈도우 및 자동 압축810 컨텍스트 윈도우 및 자동 압축


945* 기본 모델이 1M 컨텍스트를 [지원할 때만](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) `[1m]`을 추가합니다.954* 기본 모델이 1M 컨텍스트를 [지원할 때만](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) `[1m]`을 추가합니다.

946* 접미사는 모델별이 아닌 변수별로 읽혀집니다. Amazon Bedrock, Google Cloud의 Agent Platform 및 Microsoft Foundry에서 한 변수의 `[1m]` 없는 모델 ID는 다른 변수가 접미사와 함께 동일한 모델을 설정하더라도 200K 컨텍스트를 사용합니다. Sonnet 5는 항상 이러한 제공자에서 1M 윈도우로 실행되며 접미사가 필요하지 않습니다.955* 접미사는 모델별이 아닌 변수별로 읽혀집니다. Amazon Bedrock, Google Cloud의 Agent Platform 및 Microsoft Foundry에서 한 변수의 `[1m]` 없는 모델 ID는 다른 변수가 접미사와 함께 동일한 모델을 설정하더라도 200K 컨텍스트를 사용합니다. Sonnet 5는 항상 이러한 제공자에서 1M 윈도우로 실행되며 접미사가 필요하지 않습니다.

947 956 

957`ANTHROPIC_DEFAULT_*_MODEL` 변수를 설정하면 `/model` 선택기는 패밀리의 기본 제공 행 대신 해당 모델에 대한 하나의 행을 표시하며, 1M 컨텍스트 행을 포함합니다. 해당 변수에 접미사를 추가하지 않고 1M 윈도우에 도달하려면 사용자가 `/model opus[1m]`을 실행하고, Claude Code는 변수가 이름을 지정하는 모델에 접미사를 적용합니다. `/model sonnet[1m]`도 동일한 방식으로 작동합니다.

958 

948<Note>959<Note>

949 [MDM 또는 관리 설정 파일](/docs/ko/managed-settings#delivery-mechanisms)을 통해 전달된 `availableModels` 허용 목록은 타사 제공자를 사용할 때도 여전히 적용됩니다. [서버 관리 설정은 그곳에 전달되지 않습니다](/docs/ko/server-managed-settings#platform-availability).960 [MDM 또는 관리 설정 파일](/docs/ko/managed-settings#delivery-mechanisms)을 통해 전달된 `availableModels` 허용 목록은 타사 제공자를 사용할 때도 여전히 적용됩니다. [서버 관리 설정은 그곳에 전달되지 않습니다](/docs/ko/server-managed-settings#platform-availability).

950 961 


1042| - | - |1053| - | - |

1043| `DISABLE_PROMPT_CACHING` | 모든 모델에 대해 prompt caching을 비활성화하려면 `1`로 설정합니다. 모델별 설정보다 우선합니다. |1054| `DISABLE_PROMPT_CACHING` | 모든 모델에 대해 prompt caching을 비활성화하려면 `1`로 설정합니다. 모델별 설정보다 우선합니다. |

1044| `DISABLE_PROMPT_CACHING_HAIKU` | [기본 Haiku 모델](/docs/ko/prompt-caching#disable-prompt-caching)에 대해 prompt caching을 비활성화하려면 `1`로 설정합니다. |1055| `DISABLE_PROMPT_CACHING_HAIKU` | [기본 Haiku 모델](/docs/ko/prompt-caching#disable-prompt-caching)에 대해 prompt caching을 비활성화하려면 `1`로 설정합니다. |

1045| `DISABLE_PROMPT_CACHING_SONNET` | Sonnet 모델에 대해서만 prompt caching을 비활성화하려면 `1`로 설정합니다. |1056| `DISABLE_PROMPT_CACHING_SONNET` | [기본 Sonnet 모델](/docs/ko/prompt-caching#disable-prompt-caching)에 대해 prompt caching을 비활성화하려면 `1`로 설정합니다. |

1046| `DISABLE_PROMPT_CACHING_OPUS` | Opus 모델에 대해서만 prompt caching을 비활성화하려면 `1`로 설정합니다. |1057| `DISABLE_PROMPT_CACHING_OPUS` | [기본 Opus 모델](/docs/ko/prompt-caching#disable-prompt-caching)에 대해 prompt caching을 비활성화하려면 `1`로 설정합니다. |

1047| `DISABLE_PROMPT_CACHING_FABLE` | Fable 모델에 대해서만 prompt caching을 비활성화하려면 `1`로 설정합니다. |1058| `DISABLE_PROMPT_CACHING_FABLE` | Fable 모델에 대해서만 prompt caching을 비활성화하려면 `1`로 설정합니다. |

1048 1059 

1049메인 대화와 subagents에 대해 캐시 TTL을 별도로 선택하려면 [TTL을 직접 선택](/docs/ko/prompt-caching#choose-the-ttl-yourself)을 참조하세요. 캐시 미스를 트리거하는 것이 무엇인지 알아보려면 [Claude Code가 prompt caching을 사용하는 방법](/docs/ko/prompt-caching)을 참조하세요.1060메인 대화와 subagents에 대해 캐시 TTL을 별도로 선택하려면 [TTL을 직접 선택](/docs/ko/prompt-caching#choose-the-ttl-yourself)을 참조하세요. 캐시 미스를 트리거하는 것이 무엇인지 알아보려면 [Claude Code가 prompt caching을 사용하는 방법](/docs/ko/prompt-caching)을 참조하세요.

Details

64}64}

65```65```

66 66 

67Claude Desktop 앱에서 Code 탭 세션은 [각 종류의 Desktop 세션에 도달하는 소스](/docs/ko/desktop#managed-settings)에서 이러한 관리 설정을 읽습니다. 관리 콘솔의 **모니터링** 아래 Cowork에 대한 OpenTelemetry 양식인 [데이터 및 개인정보 보호 설정](https://claude.ai/admin-settings/data-privacy-controls)은 Cowork 세션에만 적용되므로 터미널 CLI와 Code 탭 모두 거기에서 설정한 수집기로 내보내지 않습니다.

68 

67Claude Code는 저장소의 `.claude/settings.json` 및 `.claude/settings.local.json`에서 [OpenTelemetry 내보내기 변수](/docs/ko/settings-reference#variables-claude-code-ignores-in-env)를 무시하므로 저장소는 이를 사용하여 원격 측정을 켜거나, 이동 위치를 선택하거나, 콘텐츠를 캡처할 수 없습니다. 관리 설정에서 설정하거나 각 개발자가 자신의 셸 또는 `~/.claude/settings.json`에서 설정하세요. 저장소는 `OTEL_LOGS_EXPORTER`와 같은 내보내기 선택기를 `none`으로 설정하여 신호를 끌 수 있습니다. 단, 관리 설정, `--settings` 파일 또는 Claude Code를 시작하는 환경이 해당 변수를 설정하지 않는 경우에만 가능합니다.69Claude Code는 저장소의 `.claude/settings.json` 및 `.claude/settings.local.json`에서 [OpenTelemetry 내보내기 변수](/docs/ko/settings-reference#variables-claude-code-ignores-in-env)를 무시하므로 저장소는 이를 사용하여 원격 측정을 켜거나, 이동 위치를 선택하거나, 콘텐츠를 캡처할 수 없습니다. 관리 설정에서 설정하거나 각 개발자가 자신의 셸 또는 `~/.claude/settings.json`에서 설정하세요. 저장소는 `OTEL_LOGS_EXPORTER`와 같은 내보내기 선택기를 `none`으로 설정하여 신호를 끌 수 있습니다. 단, 관리 설정, `--settings` 파일 또는 Claude Code를 시작하는 환경이 해당 변수를 설정하지 않는 경우에만 가능합니다.

68 70 

69Claude Code는 `OTEL_*` 환경 변수를 Bash 도구, 훅, MCP 서버 및 언어 서버를 포함하여 생성하는 하위 프로세스에 전달하지 않습니다. Bash 도구를 통해 실행하는 OpenTelemetry 계측 애플리케이션은 Claude Code의 내보내기 엔드포인트 또는 헤더를 상속하지 않으므로 해당 애플리케이션이 자신의 원격 측정을 내보내야 하는 경우 명령에서 직접 이러한 변수를 설정합니다.71Claude Code는 `OTEL_*` 환경 변수를 Bash 도구, 훅, MCP 서버 및 언어 서버를 포함하여 생성하는 하위 프로세스에 전달하지 않습니다. Bash 도구를 통해 실행하는 OpenTelemetry 계측 애플리케이션은 Claude Code의 내보내기 엔드포인트 또는 헤더를 상속하지 않으므로 해당 애플리케이션이 자신의 원격 측정을 내보내야 하는 경우 명령에서 직접 이러한 변수를 설정합니다.

network-config.md +16 −14

Details

203 스트리밍 유휴 감시견203 스트리밍 유휴 감시견

204</h2>204</h2>

205 205 

206Claude Code는 네 개의 독립적인 타이머를 실행하여 스트리밍 모델 응답이 조용해지면 중단하므로, 연결이 끊어지면 실패하고 재시도하며 중단되지 않습니다. 첫 바이트 마감 시간은 응답 헤더를 기다리는 동안 응답이 도착하기 전을 포함합니다. 다른 세 개의 타이머는 각각 다른 신호에 대해 라이브 응답을 감시합니다.206Claude Code는 네 개의 독립적인 타이머를 실행하여 스트리밍 모델 응답이 조용해지면 중단하므로, 끊긴 연결이 중단되지 않고 대신 실패하고 재시도합니다. 첫 바이트 데드라인은 응답 헤더를 기다리는 동안 응답이 도착하기 전에 적용됩니다. 다른 세 개의 타이머는 각각 다른 신호에 대해 라이브 응답을 감시합니다.

207 207 

208| 타이머 | 중단 조건 | 실행 위치 | 기본 시간 초과 |208| 타이머 | 중단 조건 | 실행 위치 | 기본 타임아웃 |

209| :- | :- | :- | :- |209| :- | :- | :- | :- |

210| 첫 바이트 마감 시간 | Claude Code가 요청을 보낸 후 응답 헤더가 도착하지 않음 | 직접 Anthropic API 및 [AWS의 Claude Platform](/docs/ko/claude-platform-on-aws) (HTTPS 프록시 포함), 단 `ANTHROPIC_BASE_URL` 또는 `ANTHROPIC_AWS_BASE_URL`이 [게이트웨이](/docs/ko/gateways)를 통해 라우팅하는 경우는 제외. Amazon Bedrock에서 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`로 옵트인; Google Cloud의 Agent Platform 또는 Microsoft Foundry에서는 실행되지 않음 | 직접 Anthropic API에서 180초, 다른 곳에서 300초, 요청 본문 32KB당 1초 추가 |210| 첫 바이트 데드라인 | Claude Code가 요청을 보낸 후 응답 헤더가 도착하지 않음 | 직접 Anthropic API 및 [AWS의 Claude Platform](/docs/ko/claude-platform-on-aws) (HTTPS 프록시 포함), 단 `ANTHROPIC_BASE_URL` 또는 `ANTHROPIC_AWS_BASE_URL`이 [게이트웨이](/docs/ko/gateways)를 통해 라우팅하는 경우는 제외. Amazon Bedrock에서 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`로 옵트인; Google Cloud의 Agent Platform 또는 Microsoft Foundry에서는 실행되지 않음 | 직접 Anthropic API에서 180초, 다른 곳에서 300초, 요청 본문 32KB당 1초 추가 |

211| 이벤트 수준 감시견 | 응답 이벤트가 파싱되지 않음. 바이트 수준 감시견이 실행되는 연결에서는 도착한 바이트(keep-alive ping 포함)도 이 감시견을 재설정하며, 파싱된 이벤트가 없는 상태로 약 5분까지 지속 | 모든 제공자 | 300초 |211| 이벤트 수준 감시견 | 응답 이벤트가 파싱되지 않음. 바이트 수준 감시견이 Amazon Bedrock 이외의 연결에서 실행되는 경우, 도착한 바이트(keep-alive ping 포함)도 이 감시견을 재설정하며, 약 5분 동안 파싱된 이벤트가 없을 수 있음 | 모든 제공자 | 300초 |

212| 바이트 수준 감시견 | 와이어에 바이트가 도착하지 않음 (SSE keep-alive ping 포함) | 직접 Anthropic API, [AWS의 Claude Platform](/docs/ko/claude-platform-on-aws), 및 [게이트웨이](/docs/ko/gateways) 연결 (사용자 정의 `ANTHROPIC_BASE_URL` 포함). Amazon Bedrock `vnd.amazon.eventstream` 응답에서 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`로 옵트인; Google Cloud의 Agent Platform 또는 Microsoft Foundry에서는 실행되지 않음 | 직접 Anthropic API에서 180초, 다른 곳에서 300초 |212| 바이트 수준 감시견 | 와이어에 바이트가 도착하지 않음 (SSE keep-alive ping 포함) | 직접 Anthropic API, [AWS의 Claude Platform](/docs/ko/claude-platform-on-aws), 및 [게이트웨이](/docs/ko/gateways) 연결 (사용자 정의 `ANTHROPIC_BASE_URL` 포함). Amazon Bedrock `vnd.amazon.eventstream` 응답에서 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`로 옵트인; Google Cloud의 Agent Platform 또는 Microsoft Foundry에서는 실행되지 않음 | 직접 Anthropic API에서 180초, 다른 곳에서 300초 |

213| 본문 유휴 시간 초과 | 5분 동안 바이트가 도착하지 않음 | 직접 Anthropic API 및 AWS의 Claude Platform을 제외한 제공자 (단, [`API_FORCE_IDLE_TIMEOUT`](/docs/ko/env-vars)이 변경하지 않는 한) | 5분 |213| 본문 유휴 타임아웃 | 5분 동안 바이트가 도착하지 않음 | 직접 Anthropic API, AWS의 Claude Platform, 및 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`이 설정된 Amazon Bedrock 이외의 제공자 (단, [`API_FORCE_IDLE_TIMEOUT`](/docs/ko/env-vars)이 이를 변경하지 않는 한) | 5분 |

214 214 

215이 변수들로 타이머를 구성하며, 각각은 [환경 변수 참조](/docs/ko/env-vars)에서 자세히 설명합니다:215`CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`을 설정하면, 바이트 수준 감시견이 Bedrock에서 본문 유휴 타임아웃을 대체하며 함께 실행되지 않습니다. 그러면 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`도 Bedrock 스트림이 Claude Code가 연결을 끊긴 것으로 간주하기 전에 얼마나 오래 조용할 수 있는지를 제어하며, 아래 나열된 제한 범위 내입니다. 도착한 바이트는 여전히 Bedrock에서 이벤트 수준 감시견을 재설정하지 않습니다. 디버그 로깅이 켜져 있으면, 각 Bedrock 스트림은 `wire-heartbeat: _chunkTimes absent`로 시작하는 디버그 메시지를 기록합니다.

216 216 

217* `CLAUDE_ENABLE_STREAM_WATCHDOG` 및 `CLAUDE_ENABLE_BYTE_WATCHDOG`는 해당 감시견을 `1`로 강제 활성화하거나 `0`으로 강제 비활성화하며, 테이블에 나열된 연결 내에서만 작동합니다. 어느 변수도 감시견을 적용되지 않는 연결 유형으로 확장하지 않습니다. `CLAUDE_ENABLE_BYTE_WATCHDOG`를 `0`으로 설정하면 첫 바이트 마감 시간도 비활성화됩니다.217이 변수들로 타이머를 구성하며, 각각은 [환경 변수 참조](/docs/ko/env-vars)에서 자세히 설명됩니다:

218* `CLAUDE_STREAM_IDLE_TIMEOUT_MS`는 두 감시견의 시간 초과를 설정합니다. Claude Code는 5분 미만의 값을 5분으로 올리고, 바이트 수준 감시견의 값을 30분으로 제한합니다.218 

219* `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS`는 이벤트 수준 감시견을 변경하지 않고 바이트 수준 감시견의 시간 초과를 설정하며, 10초에서 30분 사이로 제한되고, 해당 감시견에 대해 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`보다 우선합니다.219* `CLAUDE_ENABLE_STREAM_WATCHDOG` 및 `CLAUDE_ENABLE_BYTE_WATCHDOG`는 `1`로 해당 감시견을 강제로 켜거나 `0`으로 끕니다 (테이블에 나열된 연결 범위 내에서); 두 변수 모두 감시견을 적용되지 않는 연결 유형으로 확장하지 않습니다. `CLAUDE_ENABLE_BYTE_WATCHDOG`를 `0`으로 설정하면 첫 바이트 데드라인도 끕니다.

220* `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`는 첫 바이트 마감 시간을 직접 설정합니다. 설정하지 않으면 Claude Code는 바이트 수준 감시견의 시간 초과를 사용하므로, `CLAUDE_STREAM_IDLE_TIMEOUT_MS` 및 `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS`도 마감 시간을 변경합니다. 제한, 업로드 허용량, `API_TIMEOUT_MS` 상한, 응답 없음 중단 후 재시도 대기 시간에 대해서는 [API에서 응답 없음](/docs/ko/errors#no-response-from-api)을 참조하세요.220* `CLAUDE_STREAM_IDLE_TIMEOUT_MS`는 두 감시견의 타임아웃을 설정합니다. Claude Code는 5분 미만의 값을 5분으로 올리고, 바이트 수준 감시견의 값을 30분으로 제한합니다.

221* `API_FORCE_IDLE_TIMEOUT`을 `0`으로 설정하면 본문 유휴 시간 초과가 비활성화되고, `1`로 설정하면 모든 제공자에 대해 활성화됩니다. 감시견은 독립적으로 실행되므로, 스트림이 해당 임계값보다 오래 일시 중지되도록 하려면 감시견도 올리거나 비활성화하세요.221* `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS`는 이벤트 수준 감시견을 변경하지 않고 바이트 수준 감시견의 타임아웃을 설정하며, 10초에서 30분 사이로 제한되고, 해당 감시견에 대해 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`보다 우선합니다.

222* `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`는 첫 바이트 데드라인을 직접 설정합니다. 설정하지 않으면 Claude Code는 바이트 수준 감시견의 타임아웃을 사용하므로, `CLAUDE_STREAM_IDLE_TIMEOUT_MS` 및 `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS`도 데드라인을 변경합니다. 제한, 업로드 허용량, `API_TIMEOUT_MS` 상한, 및 응답 없음 중단 후 재시도가 대기하는 시간에 대해서는 [API에서 응답 없음](/docs/ko/errors#no-response-from-api)을 참조하세요.

223* `API_FORCE_IDLE_TIMEOUT`을 `0`으로 설정하면 본문 유휴 타임아웃이 꺼지고, `1`로 설정하면 모든 제공자에 대해 켜집니다. 감시견은 이와 독립적으로 실행되므로, 스트림이 해당 임계값보다 오래 일시 중지되도록 하려면 감시견도 올리거나 비활성화하세요.

222 224 

223감시견이 정체된 스트림을 중단하면, Claude Code는 중단을 스트림 중간 실패로 취급하며, 표시되는 내용은 응답이 얼마나 진행되었는지에 따라 달라집니다. Claude Code는 요청을 재시도하거나 오류로 턴을 종료하고, 완료된 출력을 유지하며 [불완전한 응답 알림](/docs/ko/errors#the-response-above-may-be-incomplete)을 표시하거나, 턴을 정상적으로 종료합니다. [자동 재시도](/docs/ko/errors#automatic-retries)는 각 결과가 적용되는 위치를 설명합니다.225감시견이 정체된 스트림을 중단하면, Claude Code는 중단을 스트림 중간 실패로 취급하며, 표시되는 내용은 응답이 얼마나 진행되었는지에 따라 달라집니다. Claude Code는 요청을 재시도하거나 오류로 턴을 종료하고, 완료된 출력을 유지하며 [불완전한 응답 알림](/docs/ko/errors#the-response-above-may-be-incomplete)을 표시하거나, 턴을 정상적으로 종료합니다. [자동 재시도](/docs/ko/errors#automatic-retries)는 각 결과가 적용되는 위치를 설명합니다.

224 226 

225[비대화형 세션](/docs/ko/headless)에서 및 모든 세션에서 서브에이전트의 응답에 대해, Claude Code는 먼저 Claude에 잘린 응답을 계속하도록 프롬프트할 수 있습니다. [해당 알림의 항목](/docs/ko/errors#the-response-above-may-be-incomplete)은 언제 이를 수행하는지 및 언제 여전히 알림을 표시하는지를 설명합니다.227[비대화형 세션](/docs/ko/headless)에서, 및 모든 세션에서 서브에이전트의 응답에 대해, Claude Code는 먼저 Claude에 잘린 응답을 계속하도록 프롬프트할 수 있습니다. [해당 알림의 항목](/docs/ko/errors#the-response-above-may-be-incomplete)은 언제 이를 수행하는지, 언제 여전히 알림을 표시하는지를 설명합니다.

226 228 

227첫 바이트 마감 시간이 발생하면 응답이 시작되지 않았으므로 유지할 부분 출력이 없습니다. Claude Code가 요청을 다시 보내는 방법 및 턴이 대신 종료되는 시기에 대해서는 [API에서 응답 없음](/docs/ko/errors#no-response-from-api)을 참조하세요.229첫 바이트 데드라인이 발동하면, 응답이 시작되지 않았으므로 유지할 부분 출력이 없습니다. Claude Code가 요청을 다시 보내는 방법 및 턴이 대신 종료되는 시기에 대해서는 [API에서 응답 없음](/docs/ko/errors#no-response-from-api)을 참조하세요.

228 230 

229<h2 id="network-access-requirements">231<h2 id="network-access-requirements">

230 네트워크 액세스 요구사항232 네트워크 액세스 요구사항


277 279 

278GitHub Enterprise Cloud 조직이 IP 주소로 액세스를 제한하는 경우, [설치된 GitHub 앱에 대한 IP 허용 목록 상속](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps)을 활성화하고 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)에 대한 [허용 목록 항목을 추가](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address)하십시오. 상속은 Claude GitHub 앱이 설치로 수행하는 요청만 다루며, 사용자를 대신하여 수행하는 요청은 다루지 않습니다. 다른 방화벽의 경우 [Anthropic API IP 주소](https://platform.claude.com/docs/en/api/ip-addresses)를 참조하십시오.280GitHub Enterprise Cloud 조직이 IP 주소로 액세스를 제한하는 경우, [설치된 GitHub 앱에 대한 IP 허용 목록 상속](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps)을 활성화하고 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)에 대한 [허용 목록 항목을 추가](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address)하십시오. 상속은 Claude GitHub 앱이 설치로 수행하는 요청만 다루며, 사용자를 대신하여 수행하는 요청은 다루지 않습니다. 다른 방화벽의 경우 [Anthropic API IP 주소](https://platform.claude.com/docs/en/api/ip-addresses)를 참조하십시오.

279 281 

280방화벽 뒤의 자체 호스팅 [GitHub Enterprise Server](/docs/ko/github-enterprise-server) 인스턴스의 경우, Anthropic 인프라가 GHES 호스트에 도달하여 리포지토리를 복제하고 검토 의견을 게시할 수 있도록 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)를 허용 목록에 추가하십시오. [자체 호스팅 환경](/docs/ko/self-hosted-environments-deploy#configure-git)의 세션은 네트워크 내부에서 GHES 호스트에 도달하므로, 해당 노출은 Anthropic 호스팅 세션, 리포지토리 선택기와 같은 호스팅 사전 세션 흐름 및 [Anthropic git 프록시](/docs/ko/self-hosted-environments-deploy#use-the-anthropic-git-proxy)를 선택하는 자체 호스팅 실행자에만 적용되며, 이는 Anthropic 측에서 가져옵니다. 네트워크 내부에서만 라우팅 가능한 GHES 호스트의 경우, [SCM 커넥터](/docs/ko/self-hosted-environments-reference#scm-connector-flags)는 호스팅된 사전 세션 흐름을 아웃바운드 연결을 통해 전달하므로 허용 목록이 필요하지 않습니다.282방화벽 뒤의 자체 호스팅 [GitHub Enterprise Server](/docs/ko/github-enterprise-server) 인스턴스의 경우, Anthropic 인프라가 GHES 호스트에 도달하여 리포지토리를 복제하고 검토 의견을 게시할 수 있도록 Anthropic의 [아웃바운드 IP 주소](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses)를 허용 목록에 추가하십시오. [자체 호스팅 환경](/docs/ko/self-hosted-environments-deploy#configure-git)의 세션은 네트워크 내부에서 GHES 호스트에 도달하므로, 해당 노출은 Anthropic 호스팅 세션, 리포지토리 선택기와 같은 호스팅 사전 세션 흐름 및 [Anthropic git 프록시](/docs/ko/self-hosted-environments-deploy#use-the-anthropic-git-proxy)를 선택하는 자체 호스팅 실행자에만 적용되며, 이는 Anthropic 측에서 가져옵니다. [SCM 커넥터](/docs/ko/self-hosted-environments-reference#scm-connector-flags)는 사용할 수 없으므로, 호스팅된 사전 세션 흐름은 네트워크 내부에서만 라우팅 가능한 GHES 호스트에 도달할 수 없습니다.

281 283 

282<h3 id="desktop-and-claude-ai">284<h3 id="desktop-and-claude-ai">

283 데스크톱 및 claude.ai285 데스크톱 및 claude.ai

Details

351 분류기가 기본적으로 차단하는 것351 분류기가 기본적으로 차단하는 것

352</h3>352</h3>

353 353 

354분류기는 작업 디렉토리와 세션이 시작될 때 이에 대해 구성된 원격을 신뢰합니다. 세션 중에 `git remote add` 또는 `git remote set-url`로 추가되거나 다시 가리킨 원격은 신뢰되지 않으며, 다른 모든 것은 [신뢰할 수 있는 인프라를 구성](/docs/ko/auto-mode-config)할 때까지 외부로 취급됩니다. v2.1.200 이전에는 세션 중에 추가된 원격도 신뢰되었습니다.354분류기는 작업 디렉토리와 세션이 시작될 때 이에 대해 구성된 원격을 신뢰합니다. 세션 중에 `git remote add` 또는 `git remote set-url`로 추가되거나 다시 가리킨 원격은 신뢰되지 않으며, 다른 모든 것은 [신뢰할 수 있는 인프라를 구성](/docs/ko/auto-mode-config#define-trusted-infrastructure)할 때까지 외부로 취급됩니다. v2.1.200 이전에는 세션 중에 추가된 원격도 신뢰되었습니다.

355 355 

356**기본적으로 차단됨**:356**기본적으로 차단됨**:

357 357 


368* HEAD의 커밋이 이 세션에서 생성되지 않았을 때 `git commit --amend`368* HEAD의 커밋이 이 세션에서 생성되지 않았을 때 `git commit --amend`

369* v2.1.198부터는 HEAD의 커밋이 이미 푸시되었을 때 `git commit --amend`. 메시지 전용 리워드는 차단되지 않습니다: 새로 스테이징된 것이 없는 `--amend -m`은 Claude가 이 세션 중에 생성한 커밋에서입니다.369* v2.1.198부터는 HEAD의 커밋이 이미 푸시되었을 때 `git commit --amend`. 메시지 전용 리워드는 차단되지 않습니다: 새로 스테이징된 것이 없는 `--amend -m`은 Claude가 이 세션 중에 생성한 커밋에서입니다.

370* `terraform destroy`, `pulumi destroy`, `cdk destroy` 또는 `terragrunt destroy`, 그리고 리소스를 파괴하는 계획 적용370* `terraform destroy`, `pulumi destroy`, `cdk destroy` 또는 `terragrunt destroy`, 그리고 리소스를 파괴하는 계획 적용

371 

372Claude Code v2.1.195 이상은 기본적으로 더 많은 범주를 차단합니다. 여러 개는 민감한 원격 대상 및 보호된 IaC 범위와 같이 구체적인 이름으로 좁힐 수 있는 [환경](/docs/ko/auto-mode-config#define-trusted-infrastructure) 항목에 따라 달라집니다.

373 

374* 비밀 관리자에 쓰기, 또는 DNS 레코드 또는 TLS 인증서 변경371* 비밀 관리자에 쓰기, 또는 DNS 레코드 또는 TLS 인증서 변경

375* 인간이 승인하지 않은 풀 요청 병합, Claude의 자체 풀 요청 승인, 또는 CI 검사 비활성화372* 인간이 승인하지 않은 풀 요청 병합, Claude의 자체 풀 요청 승인, 또는 CI 검사 비활성화

376* `atlantis apply` 또는 봇의 `/deploy` 또는 `/merge`와 같은 자동화에 대한 명령 자체인 댓글 게시373* `atlantis apply` 또는 봇의 `/deploy` 또는 `/merge`와 같은 자동화에 대한 명령 자체인 댓글 게시


387* `--dangerously-skip-permissions` 또는 `--no-sandbox`로 시작된 것과 같이 인간 승인이나 샌드박스 없이 실행되는 자율 에이전트 루프 시작. v2.1.198부터는 이것도 `--yes-always`로 시작된 러너와 같이 격리 및 작업별 승인이 비활성화된 상태로 제3자 에이전트 또는 평가 하네스를 실행하는 것을 다룹니다.384* `--dangerously-skip-permissions` 또는 `--no-sandbox`로 시작된 것과 같이 인간 승인이나 샌드박스 없이 실행되는 자율 에이전트 루프 시작. v2.1.198부터는 이것도 `--yes-always`로 시작된 러너와 같이 격리 및 작업별 승인이 비활성화된 상태로 제3자 에이전트 또는 평가 하네스를 실행하는 것을 다룹니다.

388* [Chrome의 Claude](/docs/ko/chrome) 브라우저 작업으로 페이지 콘텐츠, 쿠키 또는 자격 증명을 원본 외부로 보낼 수 있습니다.385* [Chrome의 Claude](/docs/ko/chrome) 브라우저 작업으로 페이지 콘텐츠, 쿠키 또는 자격 증명을 원본 외부로 보낼 수 있습니다.

389 386 

387여러 개는 민감한 원격 대상 및 보호된 IaC 범위와 같이 구체적인 이름으로 좁힐 수 있는 [환경](/docs/ko/auto-mode-config#define-trusted-infrastructure) 항목에 따라 달라집니다.

388 

390Claude Code v2.1.198 이상도 기본적으로 이를 차단합니다:389Claude Code v2.1.198 이상도 기본적으로 이를 차단합니다:

391 390 

392* 와일드카드, glob 또는 나이 필터가 아닌 특정 명명된 경로로 `/tmp`, `$TMPDIR` 또는 다른 공유 스크래치 또는 캐시 디렉토리의 파일 삭제391* 와일드카드, glob 또는 나이 필터가 아닌 특정 명명된 경로로 `/tmp`, `$TMPDIR` 또는 다른 공유 스크래치 또는 캐시 디렉토리의 파일 삭제


433* `.env` 읽기 및 자격 증명을 일치하는 API로 전송432* `.env` 읽기 및 자격 증명을 일치하는 API로 전송

434* 읽기 전용 HTTP 요청433* 읽기 전용 HTTP 요청

435* 기본 분기를 포함하여 작업 중인 리포지토리의 모든 분기로 푸시합니다. 이름이 배포 또는 게시 대상으로 표시된 비기본 분기(예: `production` 또는 `gh-pages`)는 포함되지 않습니다: 분류기는 거기로의 푸시를 자체 조건에 따라 판단합니다. 푸시의 콘텐츠는 여전히 다른 규칙에 대해 검사되고, [`permissions.deny` 규칙](/docs/ko/permissions#manage-permissions)은 여전히 모든 모드에서 [작성된 대로](/docs/ko/permissions#bash-rule-limits) 푸시 명령을 차단할 수 있으며, 원격의 자체 분기 보호는 여전히 적용됩니다. v2.1.211 이전에는 시작한 분기, Claude가 생성한 분기 및 기본 분기로의 일상적인 푸시만 기본적으로 허용되었으며, v2.1.203 이전에는 기본 분기로의 직접 푸시가 차단되었습니다.434* 기본 분기를 포함하여 작업 중인 리포지토리의 모든 분기로 푸시합니다. 이름이 배포 또는 게시 대상으로 표시된 비기본 분기(예: `production` 또는 `gh-pages`)는 포함되지 않습니다: 분류기는 거기로의 푸시를 자체 조건에 따라 판단합니다. 푸시의 콘텐츠는 여전히 다른 규칙에 대해 검사되고, [`permissions.deny` 규칙](/docs/ko/permissions#manage-permissions)은 여전히 모든 모드에서 [작성된 대로](/docs/ko/permissions#bash-rule-limits) 푸시 명령을 차단할 수 있으며, 원격의 자체 분기 보호는 여전히 적용됩니다. v2.1.211 이전에는 시작한 분기, Claude가 생성한 분기 및 기본 분기로의 일상적인 푸시만 기본적으로 허용되었으며, v2.1.203 이전에는 기본 분기로의 직접 푸시가 차단되었습니다.

436 

437Claude Code v2.1.195 이상도 기본적으로 이를 허용합니다:

438 

439* 같은 세션에서 Claude가 이전에 생성한 정확한 작업 삭제435* 같은 세션에서 Claude가 이전에 생성한 정확한 작업 삭제

440* 작업의 일부로 보안 관련 코드, 구성 및 위협 모델 읽기, 검토 또는 작성436* 작업의 일부로 보안 관련 코드, 구성 및 위협 모델 읽기, 검토 또는 작성

441* 같은 다중 에이전트 세션에서 함께 작업하는 에이전트 간의 메시지437* 같은 다중 에이전트 세션에서 함께 작업하는 에이전트 간의 메시지


458 454 

459답변에 관계없이 Claude는 계속 작업합니다:455답변에 관계없이 Claude는 계속 작업합니다:

460 456 

461* **계속 허용**: 읽기가 실행되고, 작업 디렉토리 외부의 이후 읽기는 이전과 같이 실행되며, Claude Code는 프롬프트가 다시 나타나지 않도록 답변을 기록합니다.457* **예, 계속 허용**: 읽기가 실행되고, 작업 디렉토리 외부의 이후 읽기는 이전과 같이 실행되며, Claude Code는 프롬프트가 다시 나타나지 않도록 답변을 기록합니다.

462* **지금부터 차단**: 읽기가 거부되고, Claude Code는 [`permissions.blockReadsOutsideWorkingDirectories`](/docs/ko/settings-reference#permissions-blockreadsoutsideworkingdirectories)를 사용자 설정에서 `true`로 설정하여 파일 도구가 모든 이후 세션 및 모든 권한 모드에서 이러한 읽기를 거부하도록 합니다. 나중에 Claude가 이러한 경로를 읽도록 하려면 `/add-dir`로 디렉토리를 추가하거나 설정을 제거하세요.458* **아니요, 지금부터 차단**: 읽기가 거부되고, Claude Code는 [`permissions.blockReadsOutsideWorkingDirectories`](/docs/ko/settings-reference#permissions-blockreadsoutsideworkingdirectories)를 사용자 설정에서 `true`로 설정하여 파일 도구가 모든 이후 세션 및 모든 권한 모드에서 이러한 읽기를 거부하도록 합니다. 나중에 Claude가 이러한 경로를 읽도록 하려면 `/add-dir`로 디렉토리를 추가하거나 설정을 제거하세요.

463* **다음에 다시 묻기**: 읽기가 거부되고, 작업 디렉토리 외부의 다음 읽기가 다시 프롬프트합니다.459* **아니요, 다음에 다시 묻기**: 읽기가 거부되고, 작업 디렉토리 외부의 다음 읽기가 다시 프롬프트합니다.

464* **계속 허용하지만 다음에 다시 묻기**: 읽기가 실행되고, 아무것도 저장되지 않으며, 작업 디렉토리 외부의 다음 읽기가 다시 프롬프트합니다.460* **예, 하지만 다음에 다시 묻기**: 읽기가 실행되고, 아무것도 저장되지 않으며, 작업 디렉토리 외부의 다음 읽기가 다시 프롬프트합니다.

465 461 

466<h3 id="boundaries-you-state-in-conversation">462<h3 id="boundaries-you-state-in-conversation">

467 대화에서 명시한 경계463 대화에서 명시한 경계

plugin-evals.md +43 −35

Details

130 케이스 작성 및 개선130 케이스 작성 및 개선

131</h2>131</h2>

132 132 

133`claude plugin eval init`이 작성하는 케이스는 열고, 변경하고, 추가할 수 있는 일반 파일입니다. 케이스는 `prompt.md`, `case.yaml` 또는 둘 다를 포함하는 플러그인의 eval 디렉토리 아래의 디렉토리입니다. 케이스를 그룹화하려면 케이스 자체가 아닌 디렉토리 아래에 중첩합니다. `graders/` 및 고정 파일과 같은 케이스 디렉토리 내부의 모든 것은 해당 케이스에 속합니다.133`claude plugin eval init`이 작성하는 케이스는 열고, 변경하고, 추가할 수 있는 일반 파일입니다. 케이스는 `prompt.md`, `case.yaml` 또는 둘 다를 포함하는 플러그인의 eval 디렉토리 아래의 디렉토리입니다. 각 케이스에 최소한 하나의 채점자를 `graders/<name>.md` 파일 또는 `case.yaml`의 `graders:` 항목으로 제공합니다. 채점자가 없는 케이스는 로드에 실패하기 때문입니다. 케이스를 그룹화하려면 케이스 자체가 아닌 디렉토리 아래에 중첩합니다. `graders/` 및 고정 파일과 같은 케이스 디렉토리 내부의 모든 것은 해당 케이스에 속합니다.

134 134 

135이것은 `claude plugin eval init`이 작성하는 레이아웃이며 새 모음에 사용할 레이아웃입니다. [eval 모음 참조](#eval-suite-reference)에는 모의 및 결과를 포함한 전체 트리가 있습니다.135이것은 `claude plugin eval init`이 작성하는 레이아웃이며 새 모음에 사용할 레이아웃입니다. [eval 모음 참조](#eval-suite-reference)에는 모의 및 결과를 포함한 전체 트리가 있습니다.

136 136 


238 플러그인 없는 기준선에 대해 채점238 플러그인 없는 기준선에 대해 채점

239</h3>239</h3>

240 240 

241플러그인이 테스트 중일 때 각 케이스는 기본적으로 두 개의 arm에서 실행됩니다. with-arm은 플러그인이 로드된 실행이고, without-arm은 플러그인이 전혀 로드되지 않은 동일한 수의 실행입니다. 요약 및 보고서는 두 점수와 `Δ`(with-arm 점수에서 without-arm 점수를 뺀 값)를 표시합니다. 비교가 필요하지 않을 때(예: 채점자를 반복할 때) 비용을 절반으로 줄이려면 `--ablation none`을 전달합니다.241플러그인이 테스트 중일 때 각 케이스는 기본적으로 두 개의 arm에서 실행됩니다. with-arm은 플러그인이 로드된 실행이고, without-arm은 플러그인이 전혀 로드되지 않은 동일한 수의 실행입니다. 요약 및 보고서는 두 점수와 `Δ`(with-arm 점수에서 without-arm 점수를 뺀 값)를 표시합니다.

242 

243이러한 상황에서 케이스는 with-arm만 실행하므로 `W/OUT` 점수나 `Δ`를 얻지 못합니다.

244 

245* **`--ablation none`을 전달합니다**: 모든 케이스는 하나의 arm을 실행합니다. 이는 채점자를 반복할 때와 같이 비교가 필요하지 않을 때 비용을 절반으로 줄입니다.

246* **케이스가 기록을 재개하고 대상이 경로입니다**: `.` 대신 설치된 플러그인의 이름과 같은 [대상](#choose-what-to-evaluate)을 사용하면, [`context.history_file`](#add-setup-or-history-with-case-yaml) 케이스는 기본적으로 하나의 arm을 실행합니다. 기록된 대화가 이미 플러그인을 반영한다는 가정 하에입니다. 실행은 stderr에 이러한 케이스의 이름을 지정하는 `single-arm (no Δ)` 공지를 인쇄합니다. 재개된 턴을 플러그인 있음과 없음으로 비교하려면 `--ablation with-without`을 전달합니다.

247* **케이스에 대해 플러그인을 찾을 수 없습니다**: 대상이 경로일 때, Claude Code가 찾을 수 없는 플러그인이 있는 케이스도 기본적으로 하나의 arm을 실행합니다. [기준선 arm이 플러그인을 표시하지 않습니다](#the-baseline-arm-shows-no-plugin-or-delta-is-zero)를 참조하여 수정합니다.

242 248 

243두 arm 실행에서 일부 채점자는 `scored: false`로 보고됩니다. "스킬이 호출되었습니다"와 같은 확인은 플러그인 없이는 절대 통과할 수 없으므로 계산하면 without-arm이 0으로 향하고 `Δ`를 부풀립니다. 두 arm을 비교 가능하게 유지하기 위해 Claude Code는 두 arm에서 이러한 채점자를 점수에서 제외하고 with-arm에서 통과/실패 표시기로만 보고합니다. 여기에는 다음이 포함됩니다.249두 arm 실행에서 일부 채점자는 `scored: false`로 보고됩니다. "스킬이 호출되었습니다"와 같은 확인은 플러그인 없이는 절대 통과할 수 없으므로 계산하면 without-arm이 0으로 향하고 `Δ`를 부풀립니다. 두 arm을 비교 가능하게 유지하기 위해 Claude Code는 두 arm에서 이러한 채점자를 점수에서 제외하고 with-arm에서 통과/실패 표시기로만 보고합니다. 여기에는 다음이 포함됩니다.

244 250 


276각 실행은 빈 작업 공간에서 시작됩니다. 케이스가 프롬프트 이상이 필요할 때 `prompt.md` 옆에 `context` 블록이 있는 `case.yaml`을 추가합니다.282각 실행은 빈 작업 공간에서 시작됩니다. 케이스가 프롬프트 이상이 필요할 때 `prompt.md` 옆에 `context` 블록이 있는 `case.yaml`을 추가합니다.

277 283 

278* **고정 파일 또는 git 저장소**: 케이스 디렉토리에 Bash 스크립트를 작성하고 `context.scaffold_script`에서 이름을 지정합니다. 스크립트는 에이전트의 샌드박스 외부에서 사용자로 실행되며 `--scaffold`를 전달할 때만 실행되므로 해당 플래그는 사용자 또는 조직이 작성한 모음에만 전달합니다.284* **고정 파일 또는 git 저장소**: 케이스 디렉토리에 Bash 스크립트를 작성하고 `context.scaffold_script`에서 이름을 지정합니다. 스크립트는 에이전트의 샌드박스 외부에서 사용자로 실행되며 `--scaffold`를 전달할 때만 실행되므로 해당 플래그는 사용자 또는 조직이 작성한 모음에만 전달합니다.

279* **이전 대화를 계속하려면**: 기록을 `.jsonl` 파일로 저장하고 `context.history_file`에서 이름을 지정합니다. 그러면 케이스의 프롬프트가 다음 사용자 턴이 됩니다.285* **이전 대화를 계속하려면**: 기록을 `.jsonl` 파일로 저장하고 `context.history_file`에서 이름을 지정합니다. 그러면 케이스의 프롬프트가 다음 사용자 턴이 됩니다. 대상이 경로인 경우, 이러한 케이스는 기본적으로 [플러그인 없는 기준선과 비교하지 않고](#compare-against-a-no-plugin-baseline) 실행됩니다.

280* **Claude가 실행 중에 읽을 수 있는 고정 디렉토리**: `context.add_dirs`에 나열합니다.286* **Claude가 실행 중에 읽을 수 있는 고정 디렉토리**: `context.add_dirs`에 나열합니다.

281 287 

282`case.yaml`은 또한 `schema_version: "1.1"` 및 `name`이 필요합니다. [case.yaml 필드](#case-yaml-fields) 참조에는 전체 목록이 있습니다.288`case.yaml`은 또한 `schema_version: "1.1"` 및 `name`이 필요합니다. [case.yaml 필드](#case-yaml-fields) 참조에는 전체 목록이 있습니다.


292 add_dirs: [resources]298 add_dirs: [resources]

293```299```

294 300 

301스캐폴드 스크립트는 작은 고정 환경이 있는 빈 작업 공간에서 시작됩니다. 셸의 `PATH`, 실행의 임시 홈 디렉토리로 설정된 `HOME`, `TMPDIR`, 그리고 `TERM=dumb`와 같은 몇 가지 상수입니다. 셸의 다른 것은 도달하지 않으며, 케이스의 `EVAL_*` 변수도 도달하지 않습니다. 스크립트가 0이 아닌 값으로 종료되거나 120초보다 오래 실행되면 해당 실행은 `scaffold failed` 오류로 0점을 받습니다. 프로젝트 구성이 [로드되지 않으므로](#how-runs-are-isolated) 파일 및 git 상태에만 스크립트를 사용합니다.

302 

295<h3 id="mock-mcp-servers">303<h3 id="mock-mcp-servers">

296 MCP 서버 모의304 MCP 서버 모의

297</h3>305</h3>


386| `-j`, `--concurrency <n>` | `1` | 최대 이 많은 에이전트 실행을 동시에 실행합니다(1\~8). 계정의 속도 제한을 공유하므로 이는 벽시계 시간을 단축하지만 해당 제한을 초과하는 처리량을 높이지는 않습니다. 결과는 케이스 순서를 유지합니다 |394| `-j`, `--concurrency <n>` | `1` | 최대 이 많은 에이전트 실행을 동시에 실행합니다(1\~8). 계정의 속도 제한을 공유하므로 이는 벽시계 시간을 단축하지만 해당 제한을 초과하는 처리량을 높이지는 않습니다. 결과는 케이스 순서를 유지합니다 |

387| `--model <model>` | 각 케이스의 `model`, 그렇지 않으면 설정된 경우 `ANTHROPIC_MODEL`, 그렇지 않으면 Claude Code의 기본값 | 테스트 중인 에이전트의 모델. 모델 롤아웃이 플러그인 회귀로 잘못 인식되지 않도록 CI에서 고정합니다 |395| `--model <model>` | 각 케이스의 `model`, 그렇지 않으면 설정된 경우 `ANTHROPIC_MODEL`, 그렇지 않으면 Claude Code의 기본값 | 테스트 중인 에이전트의 모델. 모델 롤아웃이 플러그인 회귀로 잘못 인식되지 않도록 CI에서 고정합니다 |

388| `--judge-model <model>` | 작고 빠른 모델 | `llm` 및 `baseline` 채점자의 모델 |396| `--judge-model <model>` | 작고 빠른 모델 | `llm` 및 `baseline` 채점자의 모델 |

389| `--ablation <mode>` | 플러그인이 해결될 때 `with-without`, 그렇지 않으면 `none` | 플러그인 없이 각 케이스를 실행하여 추가되는 항목을 측정할지 여부. `none`은 한 팔을 실행합니다. `with-without`은 플러그인 없는 기준선을 추가합니다 |397| `--ablation <mode>` | 케이스별로 결정됨; [플러그인 없는 기준선과 비교](#compare-against-a-no-plugin-baseline) 참조 | 플러그인 없이 각 케이스를 실행하여 추가되는 항목을 측정할지 여부. `none`은 한 팔을 실행합니다. `with-without`은 플러그인 없는 기준선을 추가합니다 |

390| `--threshold <0..1>` | `1.0` | 케이스는 with-arm 점수가 최소한 이 값일 때 통과합니다. 이 값 아래의 모든 케이스는 명령이 1로 종료되도록 합니다 |398| `--threshold <0..1>` | `1.0` | 케이스는 with-arm 점수가 최소한 이 값일 때 통과합니다. 이 값 아래의 모든 케이스는 명령이 1로 종료되도록 합니다 |

391| `--max-cost-usd <usd>` | 상한 없음 | 실행의 정가 비용 추정에 대한 상한, 플랜 사용에 대한 상한이 아닙니다. 각 실행이 시작되기 전에 확인됩니다. 소비되면 더 이상 시작되지 않습니다. 이미 진행 중인 실행은 완료되므로 지출이 해당 실행으로 상한을 초과할 수 있습니다. 시작되지 않은 실행이 있으면 명령은 부분 결과와 함께 2로 종료됩니다 |399| `--max-cost-usd <usd>` | 상한 없음 | 실행의 정가 비용 추정에 대한 상한, 플랜 사용에 대한 상한이 아닙니다. 각 실행이 시작되기 전에 확인됩니다. 소비되면 더 이상 시작되지 않습니다. 이미 진행 중인 실행은 완료되므로 지출이 해당 실행으로 상한을 초과할 수 있습니다. 시작되지 않은 실행이 있으면 명령은 부분 결과와 함께 2로 종료됩니다 |

392| `--allow-tools <tools...>` | 없음 | 읽기 전용 세트 이상의 도구를 부여합니다. [도구 부여](#grant-tools) 참조 |400| `--allow-tools <tools...>` | 없음 | 읽기 전용 세트 이상의 도구를 부여합니다. [도구 부여](#grant-tools) 참조 |


496 플러그인 디렉토리 신뢰504 플러그인 디렉토리 신뢰

497</h3>505</h3>

498 506 

499처음으로 디렉토리에 대해 `claude plugin eval`을 실행할 때 Claude Code는 `Trust this plugin directory?`를 묻습니다. 이미 대화형 `claude` 세션에서 신뢰 프롬프트를 수락하지 않은 경우입니다. git 저장소 내에서 예로 답하면 전체 저장소를 신뢰합니다. 대화형 세션도 마찬가지입니다. stdin 또는 stdout이 터미널이 아니거나 `--json` 아래에서 또는 `CI` 환경 변수가 `true`와 같은 참 값으로 설정되어 있을 때 실행은 물을 수 없고 종료 1로 거부됩니다. `--trust-plugin`을 전달하여 신뢰를 직접 주장합니다. 머신에서 직접 실행할 플러그인에만 해당합니다. 경로가 아닌 이름으로 지정하는 대상(설치된 플러그인 또는 스킬 디렉토리 플러그인)은 프롬프트를 건너뜁니다.507처음으로 디렉토리에 대해 `claude plugin eval`을 실행할 때 Claude Code는 `Trust this plugin directory?`를 묻습니다. 이미 대화형 `claude` 세션에서 신뢰 프롬프트를 수락하지 않은 경우입니다. git 저장소 내에서 예로 답하면 전체 저장소를 신뢰합니다. 대화형 세션도 마찬가지입니다. stdin 또는 stdout이 터미널이 아니거나 `--json` 아래에서 실행은 물을 수 없고 종료 1로 거부됩니다. `--trust-plugin`을 전달하여 신뢰를 직접 주장합니다. 머신에서 직접 실행할 플러그인에만 해당합니다. 경로가 아닌 이름으로 지정하는 대상(설치된 플러그인 또는 스킬 디렉토리 플러그인)은 프롬프트를 건너뜁니다.

500 508 

501플러그인과 모음의 일부는 해당 실행을 위해 플래그를 전달할 때만 실행됩니다.509플러그인과 모음의 일부는 해당 실행을 위해 플래그를 전달할 때만 실행됩니다.

502 510 


514 522 

515각 실행은 일회용 홈 디렉토리, 작업 디렉토리 및 Claude Code 구성을 얻고, 테스트 중인 에이전트는 플러그인만 로드된 `claude -p` 자식 프로세스로 거기서 실행됩니다. 케이스를 작성할 때 이러한 결과를 염두에 두십시오.523각 실행은 일회용 홈 디렉토리, 작업 디렉토리 및 Claude Code 구성을 얻고, 테스트 중인 에이전트는 플러그인만 로드된 `claude -p` 자식 프로세스로 거기서 실행됩니다. 케이스를 작성할 때 이러한 결과를 염두에 두십시오.

516 524 

517* **개인 또는 프로젝트 수준이 로드되지 않습니다.** 사용자 설정, 훅, `CLAUDE.md` 파일, MCP 서버, 다른 설치된 플러그인, 메모리 및 스킬이 없고, 샌드박스 위의 프로젝트 범위 `.claude/` 또는 `.mcp.json`이 읽혀지지 않습니다. 대부분의 셸 환경도 보류됩니다. [허용 목록](#prompt-md-fields) 및 `EVAL_*` 변수만 실행에 도달합니다. 플러그인이 설정이 필요하면 플러그인에 제공하거나, `scaffold_script`에서 만들거나, `EVAL_*` 변수를 전달합니다.525* **개인 또는 프로젝트 수준이 로드되지 않습니다.** 사용자 설정, 훅, `CLAUDE.md` 파일, MCP 서버, 다른 설치된 플러그인, 메모리 및 스킬이 없습니다. 프로젝트 범위 구성은 어디서도 읽혀지지 않습니다. `.claude/` 디렉토리, `CLAUDE.md` 또는 `.mcp.json`이 워크스페이스 위 또는 내부에서 로드되지 않습니다. `scaffold_script`가 작성한 것도 마찬가지이고, `add_dirs` 디렉토리는 읽기 액세스만 부여합니다. 대부분의 셸 환경도 보류됩니다. [허용 목록](#prompt-md-fields) 및 `EVAL_*` 변수만 실행에 도달합니다. 케이스가 의존하는 모든 스킬, 에이전트, 훅 또는 MCP 서버를 테스트 중인 플러그인에 제공합니다. [`scaffold_script`](#add-setup-or-history-with-case-yaml)는 파일과 git 상태만 제공할 수 있기 때문입니다.

518* **관리 정책은 여전히 실행을 제한할 수 있습니다.** 관리자가 머신에 배포한 [관리 설정](/docs/ko/managed-settings)의 제한은 실행 내에서 적용되므로 관리 머신의 결과는 해당 정책에 의해 관리되지 않은 머신과 다를 수 있습니다.526* **관리 정책은 여전히 실행을 제한할 수 있습니다.** 관리자가 머신에 배포한 [관리 설정](/docs/ko/managed-settings)의 제한은 실행 내에서 적용되므로 관리 머신의 결과는 해당 정책에 의해 관리되지 않은 머신과 다를 수 있습니다.

519* **아티팩트 도구가 꺼져 있습니다.** [아티팩트](/docs/ko/artifacts)를 게시하는 스킬은 해당 단계 전에 생성하는 것에 대해서만 채점될 수 있습니다.527* **아티팩트 도구가 꺼져 있습니다.** [아티팩트](/docs/ko/artifacts)를 게시하는 스킬은 해당 단계 전에 생성하는 것에 대해서만 채점될 수 있습니다.

520* **케이스 정의가 에이전트에서 숨겨집니다.** 실행은 eval 디렉토리를 읽을 수 없으므로 Claude는 케이스의 프롬프트, 채점자 또는 형제 케이스를 볼 수 없습니다.528* **케이스 정의가 에이전트에서 숨겨집니다.** 실행은 eval 디렉토리를 읽을 수 없으므로 Claude는 케이스의 프롬프트, 채점자 또는 형제 케이스를 볼 수 없습니다.


524 Eval 모음 참조532 Eval 모음 참조

525</h2>533</h2>

526 534 

527eval 모음이 포함할 수 있는 모든 것은 플러그인의 eval 디렉토리 아래에 있습니다. `evals/` 달리 [다른 것을 구성](#use-a-different-eval-directory)하지 않은 경우입니다. 이 트리는 `claude plugin eval`이 거기서 읽거나 작성하는 모든 파일을 보여줍니다. 케이스가 존재하려면 `prompt.md` 또는 `case.yaml`만 필요합니다.535eval 모음이 포함할 수 있는 모든 것은 플러그인의 eval 디렉토리 아래에 있습니다. `evals/` 달리 [다른 것을 구성](#use-a-different-eval-directory)하지 않은 경우입니다. 디렉토리는 `prompt.md` 또는 `case.yaml`을 보유할 때 케이스로 계산되며, 최소한 하나의 채점자가 없는 케이스는 `graders`를 명명하는 `invalid case.yaml` 오류로 로드되지 않습니다. 이 트리는 `claude plugin eval`이 eval 디렉토리에서 읽거나 작성하는 모든 파일을 보여줍니다.

528 536 

529```text theme={null}537```text theme={null}

530evals/538evals/


580 588 

581| 필드 | 목적 |589| 필드 | 목적 |

582| :- | :- |590| :- | :- |

583| `context.scaffold_script` | Claude가 시작하기 전에 빈 작업 공간에서 실행되는 케이스 디렉토리의 Bash 스크립트. 고정 파일 또는 git 저장소를 만듭니다. [`--scaffold`](#add-setup-or-history-with-case-yaml)를 전달할 때만 실행됩니다. |591| `context.scaffold_script` | Claude가 시작하기 전에 빈 작업 공간에서 실행되는 케이스 디렉토리의 Bash 스크립트. 고정 파일 또는 git 저장소를 만듭니다. [`--scaffold`](#add-setup-or-history-with-case-yaml)를 전달할 때만 실행되며, 최소 환경과 120초 제한이 있고, 0이 아닌 종료는 실행을 실패합니다. |

584| `context.history_file` | 케이스 디렉토리의 `.jsonl` 기록을 재개합니다. 케이스의 프롬프트가 다음 사용자 턴이 됩니다. |592| `context.history_file` | 케이스 디렉토리의 `.jsonl` 기록을 재개합니다. 케이스의 프롬프트가 다음 사용자 턴이 됩니다. |

585| `context.add_dirs` | Claude가 실행 중에 읽을 수 있는 케이스 디렉토리 내부의 디렉토리, 읽기 전용으로 부여됨 |593| `context.add_dirs` | Claude가 실행 중에 읽을 수 있는 케이스 디렉토리 내부의 디렉토리, 읽기 전용으로 부여됨 |

586| `execution.prompt` | 전체 케이스를 `case.yaml`에 유지하고 `prompt.md`를 생략할 때 프롬프트 |594| `execution.prompt` | 전체 케이스를 `case.yaml`에 유지하고 `prompt.md`를 생략할 때 프롬프트 |


657 "plugin eval is currently in early access"665 "plugin eval is currently in early access"

658</h3>666</h3>

659 667 

660빌드가 명령어의 일반 공개 이전 버전입니다. `claude update`를 실행한 후 새로운 세션에서 명령어를 다시 실행하세요.668빌드가 명령의 일반 공개 이전 버전입니다. `claude update`를 실행한 후 새로운 세션에서 명령을 다시 실행하세요.

661 669 

662<h3 id="plugin-eval-is-currently-unavailable">670<h3 id="plugin-eval-is-currently-unavailable">

663 "plugin eval is currently unavailable"671 "plugin eval is currently unavailable"

664</h3>672</h3>

665 673 

666Anthropic이 서버 측에서 명령어를 비활성화했습니다. 머신의 어떤 것도 이를 다시 켤 수 없습니다. `claude update`를 실행하고 나중에 새로운 세션에서 다시 시도하세요.674Anthropic이 서버 측에서 명령을 비활성화했습니다. 머신의 어떤 것도 이를 다시 켤 수 없습니다. `claude update`를 실행하고 나중에 새로운 세션에서 다시 시도하세요.

667 675 

668<h3 id="is-not-a-trusted-plugin-directory-and-this-run-cannot-stop-to-ask-you-about-it">676<h3 id="is-not-a-trusted-plugin-directory-and-this-run-cannot-stop-to-ask-you-about-it">

669 "is not a trusted plugin directory, and this run cannot stop to ask you about it"677 "is not a trusted plugin directory, and this run cannot stop to ask you about it"

670</h3>678</h3>

671 679 

672이는 Claude Code가 아직 신뢰하지 않는 디렉토리에 대한 첫 번째 실행이며, stdin 또는 stdout이 터미널이 아니거나 `--json`을 전달했거나 `CI` 환경 변수가 `true`와 같은 참 값으로 설정되어 있기 때문에 물어볼 수 없습니다. 터미널에서 `claude plugin eval <dir>`을 한 번 실행하고 프롬프트에 답하거나, 플러그인의 코드와 스위트를 신뢰한다면 `--trust-plugin`을 전달하세요. [실행이 접근할 수 있는 것](#security)을 참조하세요.680이는 Claude Code가 아직 신뢰하지 않는 디렉토리에 대한 첫 번째 실행이며, stdin 또는 stdout이 터미널이 아니거나 `--json`을 전달했기 때문에 물어볼 수 없습니다. 터미널에서 `claude plugin eval <dir>`을 한 번 실행하고 프롬프트에 답하거나, 플러그인의 코드와 스위트를 신뢰한다면 `--trust-plugin`을 전달하세요. [실행이 접근할 수 있는 것](#security)을 참조하세요.

673 681 

674<h3 id="git-is-too-old-for-claude-plugin-eval">682<h3 id="git-is-too-old-for-claude-plugin-eval">

675 "is too old for claude plugin eval"683 "is too old for claude plugin eval"

676</h3>684</h3>

677 685 

678`PATH`의 `git`이 2.31보다 오래되었으므로, `claude plugin eval`은 어떤 케이스도 실행하기 전에 중지되고 버전을 이름 지으며 1로 종료됩니다:686`PATH`의 `git`이 2.31보다 오래되었으므로, `claude plugin eval`은 어떤 케이스도 실행하기 전에 중지되고 버전을 명명하는 메시지와 함께 종료 코드 1로 종료됩니다:

679 687 

680```text theme={null}688```text theme={null}

681git 2.30 is too old for claude plugin eval: it ignores the environment configuration (GIT_CONFIG_COUNT, added in git 2.31) that switches off the repository's git hooks and helper programs for the run. Install git 2.31 or newer.689git 2.30 is too old for claude plugin eval: it ignores the environment configuration (GIT_CONFIG_COUNT, added in git 2.31) that switches off the repository's git hooks and helper programs for the run. Install git 2.31 or newer.

682```690```

683 691 

684각 실행에 대해 Claude Code는 git 훅, 자격 증명 도우미 및 저장소의 git 구성이 시작할 수 있는 다른 프로그램을 비활성화합니다. 이는 git이 버전 2.31에서만 읽는 환경 구성을 통해 수행됩니다. 더 오래된 git은 해당 구성을 무시하므로, 스위트는 해당 프로그램이 실행될 수 있는 실행을 점수 매기는 것보다 중지합니다. git 2.31 이상을 설치하고 스위트를 다시 실행하세요.692각 실행마다 Claude Code는 git hooks, 자격 증명 헬퍼 및 저장소의 git 구성이 시작할 수 있는 다른 프로그램들을 비활성화합니다. 이는 git이 버전 2.31에서만 읽는 환경 구성을 통해 수행됩니다. 더 오래된 git은 해당 구성을 무시하므로, 스위트는 이러한 프로그램들이 실행될 수 있는 실행을 채점하는 것보다는 중지합니다. git 2.31 이상을 설치하고 스위트를 다시 실행하세요.

685 693 

686v2.1.283 이전에는 `claude plugin eval`이 git 버전을 확인하지 않았으며, 더 오래된 git에서 스위트는 해당 프로그램이 켜진 상태로 실행되었습니다.694v2.1.283 이전에는 `claude plugin eval`이 git 버전을 확인하지 않았으며, 더 오래된 git에서는 스위트가 이러한 프로그램들이 켜진 상태로 실행되었습니다.

687 695 

688<h3 id="no-eval-cases-found">696<h3 id="no-eval-cases-found">

689 "No eval cases found"697 "No eval cases found"

690</h3>698</h3>

691 699 

692eval 디렉토리 아래에 `<case>/prompt.md` 또는 `<case>/case.yaml`이 존재하지 않거나, `--case` 및 `--tag` 필터가 어떤 케이스와도 일치하지 않습니다. 플러그인 루트에서 실행하거나 `claude plugin eval init`을 실행하여 스위트를 생성하세요.700eval 디렉토리 아래에 `<case>/prompt.md` 또는 `<case>/case.yaml`이 존재하지 않거나, `--case` 및 `--tag` 필터가 어떤 케이스도 일치하지 않습니다. 플러그인 루트에서 실행하거나, `claude plugin eval init`을 실행하여 스위트를 생성하세요.

693 701 

694<h3 id="the-baseline-arm-shows-no-plugin-or-delta-is-zero">702<h3 id="the-baseline-arm-shows-no-plugin-or-delta-is-zero">

695 기준선 팔이 플러그인을 표시하지 않거나 델타가 0입니다703 기준선 팔이 플러그인을 표시하지 않거나 델타가 0입니다

696</h3>704</h3>

697 705 

698기준선에 `W/OUT` 열이 없거나 케이스가 "ablation requested but no plugin resolved"로 실패하면 케이스에 대해 플러그인을 찾을 수 없습니다. 케이스에 `plugins: ["../.."]`을 추가하여 케이스 디렉토리에서 플러그인 디렉토리로의 경로를 제공하세요.706요약에 `W/OUT` 열이 없거나 케이스가 "ablation requested but no plugin resolved"로 실패하면, 일반적인 원인은 케이스에 대해 플러그인을 찾을 수 없다는 것입니다. 모든 케이스가 `context.history_file`을 통해 트랜스크립트를 재개하면, 누락된 열은 대신 예상되는 것입니다. 왜냐하면 이러한 케이스들은 [기본적으로 한 팔로 실행](#compare-against-a-no-plugin-baseline)되기 때문입니다. 그렇지 않으면, 케이스 디렉토리에서 플러그인 디렉토리로의 경로를 제공하는 `plugins: ["../.."]`을 케이스에 추가하세요.

699 707 

700플러그인이 로드되었고 `Δ`가 여전히 `tool_used: Skill` 그레이더가 실패하는 상태에서 0에 가깝다면, 이는 보통 실제 발견을 의미하며, 스킬의 `description`이 프롬프트의 표현에 트리거되지 않음을 의미합니다. 설명을 조정하고 동일한 스위트를 다시 실행하세요.708플러그인이 로드되었고 `Δ`가 여전히 0에 가까우며 `tool_used: Skill` 그레이더가 실패하면, 이는 일반적으로 실제 발견을 의미하며, 스킬의 `description`이 프롬프트의 표현에 트리거되지 않음을 의미합니다. 설명을 조정하고 동일한 스위트를 다시 실행하세요.

701 709 

702<h3 id="agent-type-’-’-not-found-for-one-of-your-plugin’s-agents">710<h3 id="agent-type-’-’-not-found-for-one-of-your-plugin’s-agents">

703 플러그인의 에이전트 중 하나에 대해 "Agent type '...' not found"711 플러그인의 에이전트 중 하나에 대해 "Agent type '...' not found"

704</h3>712</h3>

705 713 

706기본적으로 각 케이스는 플러그인 있이 실행되고 없이도 실행되며, 플러그인 없이 실행되는 것은 [플러그인 없는 기준선](#the-no-plugin-baseline)입니다. Claude가 기준선 실행에서 플러그인의 에이전트 중 하나를 디스패치할 때, Agent 도구 호출은 `Agent type '<plugin>:<agent-name>' not found. Available agents: ...`로 실패합니다. 목록은 [내장 서브에이전트](/docs/ko/sub-agents#built-in-subagents)와 같이 플러그인 없이 존재하는 에이전트만 이름을 지정합니다.714기본적으로 각 케이스는 플러그인이 있는 경우와 없는 경우 모두에서 실행되며, 플러그인이 없는 실행은 [플러그인 없음 기준선](#the-no-plugin-baseline)입니다. Claude가 기준선 실행에서 플러그인의 에이전트 중 하나를 디스패치할 때, Agent 도구 호출은 `Agent type '<plugin>:<agent-name>' not found. Available agents: ...`로 실패합니다. 목록은 [내장 서브에이전트](/docs/ko/sub-agents#built-in-subagents)와 같이 플러그인 없이 존재하는 에이전트만 명명합니다.

707 715 

708오류는 예상되는 것입니다. `Δ`가 플러그인 없는 기준선에 대해 플러그인의 실행을 비교하기 때문입니다. JSON 결과에서 기준선 실행은 `cases[].arms.without` 아래에 있습니다.716오류는 예상되는 것입니다. `Δ`가 플러그인이 없는 기준선에 대해 플러그인의 실행을 비교하기 때문입니다. JSON 결과에서 기준선 실행은 `cases[].arms.without` 아래에 있습니다.

709 717 

710플러그인이 로드된 실행에서, `allowed_tools`에 `Agent`를 나열하는 케이스는 `my-plugin:code-reviewer`와 같은 네임스페이스 이름으로 플러그인의 에이전트 중 하나를 디스패치할 수 있습니다. 이는 `my-plugin`이라는 이름의 플러그인에서 `code-reviewer` 에이전트입니다. 기준선 실행을 건너뛰려면 `--ablation none`을 전달하세요.718플러그인이 로드된 실행에서, `allowed_tools`에 `Agent`를 나열하는 케이스는 `my-plugin:code-reviewer`와 같은 네임스페이스 이름으로 플러그인의 에이전트 중 하나를 디스패치할 수 있습니다. 이는 `my-plugin`이라는 플러그인의 `code-reviewer` 에이전트입니다. 기준선 실행을 건너뛰려면 `--ablation none`을 전달하세요.

711 719 

712<h3 id="everything-scores-zero-although-the-right-files-were-produced">720<h3 id="everything-scores-zero-although-the-right-files-were-produced">

713 올바른 파일이 생성되었음에도 불구하고 모든 것이 0점입니다721 올바른 파일이 생성되었음에도 불구하고 모든 것이 0으로 채점됩니다

714</h3>722</h3>

715 723 

716그레이더가 생성된 경로의 목록인 `files`를 대상으로 하지만, 파일의 내용을 의도했습니다. `{ source: file, path: <path> }`를 `target` 또는 `focus`로 사용하세요.724그레이더가 생성된 경로 목록인 `files`를 대상으로 하지만, 파일의 내용을 의도했습니다. `{ source: file, path: <path> }`를 `target` 또는 `focus`로 사용하세요.

717 725 

718별도로, `file_exists`는 실행 중에 생성된 파일만 계산하므로, 스캐폴드가 생성했거나 Claude가 편집한 파일은 보이지 않습니다. 내용을 등급 매기거나 `Edit`에서 `tool_used`를 사용하세요.726별도로, `file_exists`는 실행 중에 생성된 파일만 계산하므로, 스캐폴드가 생성했거나 Claude가 편집한 파일은 보이지 않습니다. 내용을 채점하거나 `Edit`에서 `tool_used`를 사용하세요.

719 727 

720<h3 id="a-regex-over-the-trace-doesn’t-match-text-i-can-see">728<h3 id="a-regex-over-the-trace-doesn’t-match-text-i-can-see">

721 추적에 대한 정규식이 볼 수 있는 텍스트와 일치하지 않습니다729 트레이스에 대한 정규식이 볼 수 있는 텍스트와 일치하지 않습니다

722</h3>730</h3>

723 731 

724* **잘못된 대상**: 기본 `target`은 추적이 아니라 `last_message`입니다.732* **잘못된 대상**: 기본 `target`은 트레이스가 아니라 `last_message`입니다.

725* **JSON 이스케이핑**: `target` 추적을 수행할 때, 줄당 JSON이므로 따옴표는 `\"`로 나타납니다.733* **JSON 이스케이핑**: `trace`를 대상으로 할 때, 이는 줄당 JSON이므로 따옴표는 `\"`로 나타납니다.

726* **정규식 구문**: 정규식은 JavaScript 구문을 사용하므로 `(?i)`를 작성하는 대신 `flags`에 `i`를 넣으세요.734* **정규식 구문**: 정규식은 JavaScript 구문을 사용하므로, `(?i)`를 작성하는 대신 `flags`에 `i`를 넣으세요.

727 735 

728<h3 id="tools-are-denied-mcp-tools-are-missing-or-bash-won’t-run">736<h3 id="tools-are-denied-mcp-tools-are-missing-or-bash-won’t-run">

729 도구가 거부되거나, MCP 도구가 누락되거나, Bash가 실행되지 않습니다737 도구가 거부되거나, MCP 도구가 누락되거나, Bash가 실행되지 않습니다

730</h3>738</h3>

731 739 

732읽기 전용 세트를 초과하는 모든 것은 `--allow-tools Bash Write`와 같은 권한이 필요합니다. 개인 MCP 서버는 실행에서 로드되지 않습니다. 플러그인의 자체 서버는 [옵트인](#mock-mcp-servers)하지 않는 한 시작되지 않으며, 그 도구는 `--allow-tools "mcp__plugin_<plugin>_<server>__*"` 권한도 필요합니다. 모의 도구는 둘 다 필요하지 않습니다.740읽기 전용 세트를 초과하는 모든 것은 `--allow-tools Bash Write`와 같은 권한이 필요합니다. 개인 MCP 서버는 실행에서 로드되지 않습니다. 플러그인의 자체 서버는 [옵트인](#mock-mcp-servers)하지 않으면 시작되지 않으며, 그 도구들은 `--allow-tools "mcp__plugin_<plugin>_<server>__*"` 권한도 필요합니다. 모의 도구는 둘 다 필요하지 않습니다.

733 741 

734<h3 id="the-run-exits-1-but-the-results-look-fine">742<h3 id="the-run-exits-1-but-the-results-look-fine">

735 실행이 1로 종료되지만 결과는 정상으로 보입니다743 실행이 1로 종료되지만 결과는 정상으로 보입니다

736</h3>744</h3>

737 745 

738기본 `--threshold`는 1.0이므로, 어떤 케이스가 완벽 이하로 점수를 받으면 명령어는 1로 종료됩니다. 기준과 일치하는 임계값을 설정하세요. 종료 1은 로드에 실패한 케이스 파일도 포함하며, 이는 테이블 위의 stderr에 보고됩니다.746기본 `--threshold`는 1.0이므로, 어떤 케이스가 완벽 이하로 채점될 때 명령이 1로 종료됩니다. 필요한 점수와 일치하는 임계값을 설정하세요. 종료 1은 또한 로드에 실패한 케이스 파일을 포함하며, 이는 테이블 위의 stderr에 보고됩니다.

739 747 

740<h3 id="json-output-path-must-end-in-json">748<h3 id="json-output-path-must-end-in-json">

741 `--json output path must end in .json`749 `--json output path must end in .json`

742</h3>750</h3>

743 751 

744대상을 `--json` 뒤에 놓았으므로 출력 경로로 읽혔습니다. `claude plugin eval . --json`과 같이 대상을 먼저 놓거나 `--json`에 명시적 `.json` 경로를 제공하세요.752대상을 `--json` 뒤에 넣었으므로 출력 경로로 읽혔습니다. `claude plugin eval . --json`과 같이 대상을 먼저 넣거나, `--json`에 명시적 `.json` 경로를 제공하세요.

745 753 

746<h3 id="a-grader-shows-passed-false-under-a-run-that-scored-1-0">754<h3 id="a-grader-shows-passed-false-under-a-run-that-scored-1-0">

747 그레이더가 1.0으로 점수를 받은 실행 아래에서 passed: false를 표시합니다755 그레이더가 1.0으로 채점된 실행 아래에서 passed: false를 표시합니다

748</h3>756</h3>

749 757 

750해당 그레이더는 설계상 2팔 실행에서 점수에서 제외되며, `scored` 필드는 `false`입니다. [플러그인 없는 기준선과 비교](#compare-against-a-no-plugin-baseline)를 참조하세요.758해당 그레이더는 설계상 2팔 실행에서 점수에서 제외되며, `scored` 필드는 `false`입니다. [플러그인 없음 기준선에 대해 채점](#compare-against-a-no-plugin-baseline)을 참조하세요.

751 759 

752<h3 id="runs-fail-with-a-usage-limit-or-rate-limit-error-partway-through">760<h3 id="runs-fail-with-a-usage-limit-or-rate-limit-error-partway-through">

753 실행이 중간에 사용량 제한 또는 속도 제한 오류로 실패합니다761 실행이 도중에 사용량 제한 또는 속도 제한 오류로 실패합니다

754</h3>762</h3>

755 763 

756계정이 스위트 실행 중에 플랜의 사용량 제한 또는 API 속도 제한에 도달하면, 각 이후 실행은 해당 오류로 끝나고, 생성한 것에 대해 등급이 매겨지며, 보통 0점을 받습니다. 스위트는 여전히 완료되고 `partial`로 표시되지 않으므로, 결과는 회귀처럼 보일 수 있습니다. 점수를 신뢰하기 전에 `NOTES` 열 또는 JSON의 `cases[].arms.with[].error`에서 제한 메시지를 확인한 후, 제한이 재설정된 후 `--runs 1` 또는 `--case` 필터를 사용하여 다시 실행하세요.764계정이 스위트 실행 중에 플랜의 사용량 제한 또는 API 속도 제한에 도달하면, 각 이후 실행은 해당 오류로 끝나고, 생성한 것에 대해 채점되며, 일반적으로 0으로 채점됩니다. 스위트는 여전히 완료되고 `partial`로 표시되지 않으므로, 결과는 회귀처럼 보일 수 있습니다. 점수를 신뢰하기 전에 `NOTES` 열 또는 JSON의 `cases[].arms.with[].error`에서 제한 메시지를 확인한 후, 제한이 재설정된 후 `--runs 1` 또는 `--case` 필터를 사용하여 다시 실행하세요.

757 765 

758<h3 id="runs-time-out-or-hit-the-turn-cap">766<h3 id="runs-time-out-or-hit-the-turn-cap">

759 실행이 시간 초과되거나 턴 상한에 도달합니다767 실행이 시간 초과되거나 턴 상한에 도달합니다

760</h3>768</h3>

761 769 

762기본값은 10턴과 300초입니다. 더 많은 것이 필요한 작업의 경우 케이스에서 `max_turns` 및 `timeout_seconds`를 높이고, 실행당 제한이 아닌 비용 상한으로 `--max-cost-usd`를 사용하세요.770기본값은 10턴과 300초입니다. 더 많은 것이 필요한 작업의 경우 케이스에서 `max_turns` 및 `timeout_seconds`를 높이고, 엄격한 실행당 제한 대신 비용 상한으로 `--max-cost-usd`를 사용하세요.

763 771 

764<h2 id="see-also">772<h2 id="see-also">

765 참고 항목773 참고 항목

Details

469claude plugin eval init [name] [options]469claude plugin eval init [name] [options]

470```470```

471 471 

472플러그인의 루트 폴더(`.claude-plugin/plugin.json` 또는 스킬의 `SKILL.md`를 보유한 디렉토리)에서 명령어를 실행합니다. 의도적으로 다른 디렉토리에 스위트를 스캐폴드하려면 `--eval-dir`을 전달하세요.

473 

472터미널에서 명령어는 작성 인터뷰를 위해 대화형 Claude Code 세션을 엽니다. 인터뷰에서 Claude는 다음을 수행합니다:474터미널에서 명령어는 작성 인터뷰를 위해 대화형 Claude Code 세션을 엽니다. 인터뷰에서 Claude는 다음을 수행합니다:

473 475 

4741. 플러그인을 읽습니다4761. 플러그인을 읽습니다


479 481 

480`--bare`를 사용하거나 터미널이 없으면 명령어는 대신 빈 단일 케이스 템플릿을 씁니다. Claude가 Claude Code 세션 내에서 명령어를 실행하면 명령어는 해당 세션이 따를 인터뷰 지침을 출력합니다.482`--bare`를 사용하거나 터미널이 없으면 명령어는 대신 빈 단일 케이스 템플릿을 씁니다. Claude가 Claude Code 세션 내에서 명령어를 실행하면 명령어는 해당 세션이 따를 인터뷰 지침을 출력합니다.

481 483 

482선택적 `name`은 케이스 이름입니다. `--bare`를 사용하거나 터미널이 없을 때 필요합니다. 명령어가 해당 케이스에 대한 빈 템플릿을 쓰기 때문입니다. 인터뷰는 하나가 필요하지 않습니다.484선택적 `name`은 케이스 이름입니다. `--bare`를 사용하거나 터미널이 없을 때 필요합니다. 명령어가 해당 케이스에 대한 빈 템플릿을 쓰기 때문입니다. 케이스 이름은 문자 또는 숫자로 시작하고 문자, 숫자, `.`, `_` 및 `-`만 포함합니다. 모든 플랫폼에서 명령어는 Windows가 저장할 수 없는 이름(예: `con` 또는 `.`로 끝나는 이름)도 거부합니다.

483 485 

484명령어는 다음 옵션을 수락합니다:486명령어는 다음 옵션을 수락합니다:

485 487 


636| :- | :- | :- |638| :- | :- | :- |

637| `owner/repo`, `owner/repo#ref` 또는 `owner/repo@ref` | `github` | GitHub 저장소를 복제하고 주어진 경우 `ref`로 고정합니다. 소유자와 저장소는 GitHub 명명 규칙을 따라야 합니다 |639| `owner/repo`, `owner/repo#ref` 또는 `owner/repo@ref` | `github` | GitHub 저장소를 복제하고 주어진 경우 `ref`로 고정합니다. 소유자와 저장소는 GitHub 명명 규칙을 따라야 합니다 |

638| `user@host:path[.git][#ref]` | `git` | SSH를 통해 복제합니다 |640| `user@host:path[.git][#ref]` | `git` | SSH를 통해 복제합니다 |

639| `https://example.com/repo.git[#ref]` 또는 `/_git/`를 포함하는 URL | `git` | Azure DevOps URL을 포함하여 HTTPS를 통해 복제합니다 |641| `http://` 또는 `https://` URL로 `.git[#ref]`로 끝나거나 `/_git/`를 포함하는 경우(예: `https://example.com/repo.git`) | `git` | Azure DevOps URL을 포함하여 URL을 복제합니다 |

640| `https://github.com/owner/repo` 또는 `https://gitlab.com/namespace/project` | `git` | `.git`을 추가한 후 HTTPS를 통해 복제합니다 |642| `https://github.com/owner/repo` 또는 `https://gitlab.com/namespace/project`, 또는 `http://`를 통한 동일한 형식 | `git` | `.git`을 추가한 후 URL을 복제합니다 |

641| `.git`이 없는 자체 호스팅 git 호스트를 포함한 다른 `http://` 또는 `https://` URL | `url` | URL을 `marketplace.json`으로 가져옵니다. 대신 저장소를 복제하려면 `.git`을 추가하세요 |643| `.git`이 없는 자체 호스팅 git 호스트를 포함한 다른 `http://` 또는 `https://` URL | `url` | URL을 `marketplace.json`으로 가져옵니다. 대신 저장소를 복제하려면 `.git`을 추가하세요 |

642| `./path`, `../path`, `/path` 또는 `~/path`에서 디렉토리로 | `directory` | 디렉토리를 제자리에서 읽습니다. Windows에서 `.\`, `..\` 및 `C:\` 형식도 작동합니다 |644| `./path`, `../path`, `/path` 또는 `~/path`에서 디렉토리로 | `directory` | 디렉토리를 제자리에서 읽습니다. Windows에서 `.\`, `..\` 및 `C:\` 형식도 작동합니다 |

643| 동일한 경로 형식(`.json` 파일로) | `file` | 파일을 제자리에서 읽습니다 |645| 동일한 경로 형식(`.json` 파일로) | `file` | 파일을 제자리에서 읽습니다 |


709설정에서 마켓플레이스의 선언을 제거합니다. `rm`은 `remove`의 별칭입니다.711설정에서 마켓플레이스의 선언을 제거합니다. `rm`은 `remove`의 별칭입니다.

710 712 

711<Warning>713<Warning>

712 마켓플레이스를 선언하는 마지막 범위에서 제거하면 Claude Code는 캐시도 삭제하고 설치한 모든 플러그인을 제거합니다. `--scope` 없이 명령어는 모든 범위에서 선언을 제거합니다. 플러그인을 잃지 않고 마켓플레이스를 새로고침하려면 `plugin marketplace update`를 대신 실행하세요.714 마켓플레이스를 선언하는 마지막 범위에서 제거하면 Claude Code는 캐시도 삭제하고 설치한 모든 플러그인을 제거합니다. 또한 저장된 [옵션 및 비밀](/docs/ko/plugins/manifest-reference#user-configuration) 및 [데이터](/docs/ko/plugins/components#path-variables-and-persistent-data)를 삭제합니다.

715 

716 플러그인을 잃지 않고 마켓플레이스를 새로고침하려면 `plugin marketplace update`를 대신 실행하세요.

713</Warning>717</Warning>

714 718 

715```bash theme={null}719```bash theme={null}


728claude plugin marketplace remove your-marketplace732claude plugin marketplace remove your-marketplace

729```733```

730 734 

731Claude Code는 `Successfully removed marketplace: your-marketplace`를 출력하고 범위를 지정할 때 `(from project settings)`를 추가합니다. 마켓플레이스를 선언하지 않는 설정 파일로 범위를 지정하면 명령어는 `Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.`로 실패합니다.735Claude Code는 `Successfully removed marketplace: your-marketplace`를 출력합니다. 명령어가 플러그인을 제거할 때 출력은 `Also uninstalled 2 plugins from this marketplace:`와 같은 줄 아래에 나열합니다. 다시 사용하려면 마켓플레이스를 다시 추가하고 플러그인을 다시 설치하세요.

736 

737마켓플레이스를 선언하지 않는 설정 파일로 범위를 지정하면 명령어는 `Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.`로 실패합니다.

732 738 

733<h3 id="plugin-marketplace-update">739<h3 id="plugin-marketplace-update">

734 plugin marketplace update740 plugin marketplace update


771| `/plugin list [--enabled\|--disabled]` | `ls` | 마켓플레이스에서 설치한 플러그인을 버전, 범위 및 상태와 함께 인라인으로 출력합니다. 필터 플래그는 해당 상태만 표시합니다. 활성화 상태가 아직 적용되지 않은 플러그인은 `— run /reload-plugins to apply`로 표시됩니다. Claude Code v2.1.163 이상 필요 |777| `/plugin list [--enabled\|--disabled]` | `ls` | 마켓플레이스에서 설치한 플러그인을 버전, 범위 및 상태와 함께 인라인으로 출력합니다. 필터 플래그는 해당 상태만 표시합니다. 활성화 상태가 아직 적용되지 않은 플러그인은 `— run /reload-plugins to apply`로 표시됩니다. Claude Code v2.1.163 이상 필요 |

772| `/plugin install` | `i` | **Discover** 탭을 엽니다 |778| `/plugin install` | `i` | **Discover** 탭을 엽니다 |

773| `/plugin install <plugin>` | `i` | **Discover** 탭에서 플러그인의 세부 정보를 엽니다. `name@marketplace`를 사용하면 해당 마켓플레이스의 목록에서 엽니다 |779| `/plugin install <plugin>` | `i` | **Discover** 탭에서 플러그인의 세부 정보를 엽니다. `name@marketplace`를 사용하면 해당 마켓플레이스의 목록에서 엽니다 |

780| `/plugin install <source>` | `i` | 대상이 경로, URL 또는 `owner/repo`인 경우 [마켓플레이스를 찾을 수 없음](/docs/ko/plugins/troubleshooting#marketplace-not-found) 오류를 보고하고 아무것도 설치하지 않습니다. 이미 추가한 소스도 마찬가지입니다. 소스에서 설치하려면 [마켓플레이스 추가 및 한 명령어로 설치](/docs/ko/plugins/install#add-a-marketplace-and-install-in-one-command)를 참조하세요 |

774| `/plugin install <plugin> --marketplace <source>` | `i` | 아직 추가하지 않은 경우 `<source>`에서 마켓플레이스를 추가하고 먼저 확인을 요청한 후 플러그인의 세부 정보를 엽니다. [마켓플레이스 추가 및 한 명령어로 설치](/docs/ko/plugins/install#add-a-marketplace-and-install-in-one-command)를 참조하세요. Claude Code v2.1.275 이상 필요 |781| `/plugin install <plugin> --marketplace <source>` | `i` | 아직 추가하지 않은 경우 `<source>`에서 마켓플레이스를 추가하고 먼저 확인을 요청한 후 플러그인의 세부 정보를 엽니다. [마켓플레이스 추가 및 한 명령어로 설치](/docs/ko/plugins/install#add-a-marketplace-and-install-in-one-command)를 참조하세요. Claude Code v2.1.275 이상 필요 |

775| `/plugin manage` | | **Installed** 탭을 엽니다 |782| `/plugin manage` | | **Installed** 탭을 엽니다 |

776| `/plugin stats` | | [`/skill-doctor`](/docs/ko/skills#find-unused-skills)를 사용할 수 있는 세션에서 **Stats** 탭을 엽니다. 다른 곳에서는 **Discover** 탭에서 패널을 엽니다 |783| `/plugin stats` | | [`/skill-doctor`](/docs/ko/skills#find-unused-skills)를 사용할 수 있는 세션에서 **Stats** 탭을 엽니다. 다른 곳에서는 **Discover** 탭에서 패널을 엽니다 |


843| `--plugin-dir <path>` | 디렉토리 또는 그 디렉토리의 `.zip` 아카이브에서 플러그인을 로드합니다. 플러그인 폴더는 `.claude-plugin/plugin.json`을 보유하는 각 자식 폴더를 로드합니다. 각 플래그는 하나의 경로를 사용합니다 | `claude --plugin-dir ./my-plugin --plugin-dir ./other.zip` |850| `--plugin-dir <path>` | 디렉토리 또는 그 디렉토리의 `.zip` 아카이브에서 플러그인을 로드합니다. 플러그인 폴더는 `.claude-plugin/plugin.json`을 보유하는 각 자식 폴더를 로드합니다. 각 플래그는 하나의 경로를 사용합니다 | `claude --plugin-dir ./my-plugin --plugin-dir ./other.zip` |

844| `--plugin-url <url>` | URL에서 플러그인 `.zip` 아카이브를 가져옵니다. 플래그를 반복하거나 하나의 인용된 값에서 여러 URL을 공백으로 구분하여 전달합니다 | `claude --plugin-url "https://example.com/a.zip https://example.com/b.zip"` |851| `--plugin-url <url>` | URL에서 플러그인 `.zip` 아카이브를 가져옵니다. 플래그를 반복하거나 하나의 인용된 값에서 여러 URL을 공백으로 구분하여 전달합니다 | `claude --plugin-url "https://example.com/a.zip https://example.com/b.zip"` |

845 852 

846이러한 플래그가 로드하는 플러그인은 세션 전용 플러그인입니다. `claude plugin list`는 `<name>@inline`으로 범위 `session`으로 표시하지만 같은 플래그가 하위 명령어 앞에 올 때만 표시합니다. 예를 들어 `claude --plugin-dir ./my-plugin plugin list`를 실행합니다.853이러한 플래그가 로드하는 플러그인은 세션 전용 플러그인입니다. [`claude plugin list`](#plugin-list)는 같은 플래그가 하위 명령어 앞에 올 때만 표시합니다. 예를 들어 `claude --plugin-dir ./my-plugin plugin list`를 실행합니다. 플러그인은 `세션 전용 플러그인`으로 시작하는 제목 아래에 `<name>@inline`으로 표시되며, `--json`은 해당 `scope`를 `session`으로 보고합니다.

847 854 

848세션 전용 플러그인이 설치된 플러그인과 이름을 공유하면 Claude Code는 해당 세션에 대해 세션 전용 복사본을 로드하고 설치된 것을 건너뜁니다. `claude plugin disable <name>@inline`으로 세션 전용 복사본을 비활성화했거나 관리되는 설정이 해당 플러그인 이름을 잠그면 설치된 복사본이 대신 로드됩니다. 우선순위는 [플러그인 로딩 참조](/docs/ko/plugins/loading)를 참조하세요.855세션 전용 플러그인이 설치된 플러그인과 이름을 공유하면 Claude Code는 해당 세션에 대해 세션 전용 복사본을 로드하고 설치된 것을 건너뜁니다. `claude plugin disable <name>@inline`으로 세션 전용 복사본을 비활성화했거나 관리되는 설정이 해당 플러그인 이름을 잠그면 설치된 복사본이 대신 로드됩니다. 우선순위는 [플러그인 로딩 참조](/docs/ko/plugins/loading)를 참조하세요.

849 856 

Details

126 126 

127배포하는 모든 플러그인은 `marketplace.json`의 `plugins` 배열의 하나의 객체입니다. 두 번째 플러그인을 추가하려면 두 번째 객체를 추가합니다. 이 필드는 대부분의 항목을 다룹니다:127배포하는 모든 플러그인은 `marketplace.json`의 `plugins` 배열의 하나의 객체입니다. 두 번째 플러그인을 추가하려면 두 번째 객체를 추가합니다. 이 필드는 대부분의 항목을 다룹니다:

128 128 

129* `name`: 설치할 때 `@` 앞에 입력하는 식별자입니다. 공백을 포함할 수 없습니다.129* `name`: 설치할 때 `@` 앞에 입력하는 식별자입니다. [플러그인 항목](/docs/ko/plugins/marketplace-reference#plugin-entries)에서 이름이 사용할 수 있는 문자를 확인합니다.

130* `source`: Claude Code가 플러그인을 가져오는 위치입니다. [연습](#create-a-marketplace)에서처럼 마켓플레이스 디렉터리 내의 플러그인에 대해 상대 경로 문자열을 작성하거나, 외부의 플러그인에 대해 소스 객체를 작성합니다. [플러그인 소스 선택](#choose-a-plugin-source)을 참조하세요.130* `source`: Claude Code가 플러그인을 가져오는 위치입니다. [연습](#create-a-marketplace)에서처럼 마켓플레이스 디렉터리 내의 플러그인에 대해 상대 경로 문자열을 작성하거나, 외부의 플러그인에 대해 소스 객체를 작성합니다. [플러그인 소스 선택](#choose-a-plugin-source)을 참조하세요.

131* `description`: 사용자가 `/plugin`에서 마켓플레이스를 탐색할 때 플러그인 옆에 표시되는 줄입니다.131* `description`: 사용자가 `/plugin`에서 마켓플레이스를 탐색할 때 플러그인 옆에 표시되는 줄입니다.

132 132 


199 199 

200* JSON 구문 오류, `json: Invalid JSON syntax: <reason>`로200* JSON 구문 오류, `json: Invalid JSON syntax: <reason>`로

201* `owner: Invalid input`과 같은 필수 필드 누락201* `owner: Invalid input`과 같은 필수 필드 누락

202* 공백, 비ASCII 문자, 또는 `claude-official`과 같은 공식 Anthropic 마켓플레이스를 모방하는 형식의 마켓플레이스 이름202* [마켓플레이스 참조](/docs/ko/plugins/marketplace-reference#top-level-fields)의 명명 규칙을 위반하는 마켓플레이스 또는 플러그인 이름

203* `..`를 포함하는 상대 `source`203* `..`를 포함하는 상대 `source`

204* 최상위 또는 플러그인 항목의 알 수 없는 필드, 경고로204* 최상위 또는 플러그인 항목의 알 수 없는 필드, 경고로

205* 상대 경로 플러그인의 `plugin.json`의 문제, `plugins[N] plugin.json → <field>: <message>`로205* 상대 경로 플러그인의 `plugin.json`의 문제, `plugins[N] plugin.json → <field>: <message>`로

Details

50 50 

51사용자가 마켓플레이스를 베어 `marketplace.json` URL로 추가할 때 Claude Code는 해당 파일만 다운로드합니다. `plugins` 배열의 항목 중 `source`가 `./plugins/formatter`와 같은 상대 경로인 경우 설치 시 [`its marketplace entry path does not stay inside the marketplace directory`](/docs/ko/plugins/troubleshooting#plugins-with-relative-paths-fail-in-url-based-marketplaces)로 실패합니다. 모든 항목에 `github` 저장소 또는 `archive` URL과 같이 자체적으로 가져올 수 있는 소스를 제공하거나, Claude Code가 전체 트리를 복제할 수 있도록 마켓플레이스를 git 저장소에서 호스팅하세요.51사용자가 마켓플레이스를 베어 `marketplace.json` URL로 추가할 때 Claude Code는 해당 파일만 다운로드합니다. `plugins` 배열의 항목 중 `source`가 `./plugins/formatter`와 같은 상대 경로인 경우 설치 시 [`its marketplace entry path does not stay inside the marketplace directory`](/docs/ko/plugins/troubleshooting#plugins-with-relative-paths-fail-in-url-based-marketplaces)로 실패합니다. 모든 항목에 `github` 저장소 또는 `archive` URL과 같이 자체적으로 가져올 수 있는 소스를 제공하거나, Claude Code가 전체 트리를 복제할 수 있도록 마켓플레이스를 git 저장소에서 호스팅하세요.

52 52 

53<h3 id="stay-within-the-download-limits-for-hosted-files">

54 호스팅된 파일의 다운로드 제한 내 유지

55</h3>

56 

57사용자가 마켓플레이스를 `marketplace.json` URL로 추가하거나 [`archive`](/docs/ko/plugins/marketplace-reference#archive-plugin-source) 소스를 가진 항목을 설치할 때 Claude Code는 서버에서 파일을 다운로드합니다. 다운로드는 이 표의 제한을 초과하면 실패하므로 파일 크기를 조정하고 서버를 구성하여 제한 내에 유지하세요.

58 

59| 파일 | 최대 다운로드 | 서버가 응답하는 시간 | 리다이렉트 |

60| :- | :- | :- | :- |

61| `url` 마켓플레이스 소스의 `marketplace.json` | 5 MiB | 10초 | 다른 출처로의 리다이렉트는 `https://`를 사용해야 하며 루프백, 링크-로컬 또는 클라우드 메타데이터 호스트를 가리킬 수 없으므로 `https://`에서 `http://`로의 리다이렉트는 실패합니다 |

62| `archive` 플러그인 소스의 Zip | 256 MiB | 120초 | 최대 5개. 모든 리다이렉트 대상은 `https://`를 사용해야 하며 루프백, 링크-로컬 또는 클라우드 메타데이터 호스트를 가리킬 수 없습니다 |

63 

64리다이렉트가 다른 출처로 보내는 요청은 마켓플레이스 소스 또는 플러그인 항목에서 구성한 헤더를 전혀 포함하지 않습니다.

65 

66아카이브가 다운로드된 후 zip이 다음 추출 제한을 초과하면 설치가 실패합니다:

67 

68* **항목**: 100,000개 파일 및 디렉터리

69* **파일 크기**: 압축 해제된 모든 파일에 대해 512 MiB

70* **총 크기**: 압축 해제된 1 GiB

71* **압축 비율**: 압축 해제된 콘텐츠가 zip 크기의 50배

72 

53<h3 id="edit-plugins-in-place-on-a-shared-directory">73<h3 id="edit-plugins-in-place-on-a-shared-directory">

54 공유 디렉터리에서 플러그인을 제자리에서 편집74 공유 디렉터리에서 플러그인을 제자리에서 편집

55</h3>75</h3>

Details

121 121 

122터미널에서 플러그인은 claude.ai 계정으로 로그인하는 세션에서만 동기화됩니다.122터미널에서 플러그인은 claude.ai 계정으로 로그인하는 세션에서만 동기화됩니다.

123 123 

124Claude Code는 이러한 터미널 세션에서 동기화된 플러그인을 다운로드하거나 로드하지 않습니다. `/login`으로 로그인한 후에도 마찬가지입니다:

125 

126* `ANTHROPIC_AUTH_TOKEN`, `CLAUDE_CODE_OAUTH_TOKEN` 또는 `apiKeyHelper` 스크립트가 해당 로그인 대신 자격 증명을 제공하는 세션

127* Anthropic에서 [기능 플래그를 가져오지 않는](/docs/ko/env-vars#features-that-need-feature-flag-fetching) 세션(예: `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`을 설정한 세션)

128* [베어 모드](/docs/ko/headless#start-faster-with-bare-mode)의 세션 또는 `--safe-mode`로 시작한 세션

129* `user`를 제외하는 [`--setting-sources`](/docs/ko/cli-reference#cli-flags) 목록으로 시작한 세션

130 

124이전 버전의 Claude Code에 로그인한 경우 해당 로그인은 Claude Code가 백그라운드에서 갱신할 때까지 플러그인을 포함하지 않습니다. 더 빨리 액세스하려면 `/login`을 다시 실행합니다. 플러그인 동기화는 다음 번 Claude Code를 시작할 때 시작됩니다.131이전 버전의 Claude Code에 로그인한 경우 해당 로그인은 Claude Code가 백그라운드에서 갱신할 때까지 플러그인을 포함하지 않습니다. 더 빨리 액세스하려면 `/login`을 다시 실행합니다. 플러그인 동기화는 다음 번 Claude Code를 시작할 때 시작됩니다.

125 132 

126<h4 id="control-which-synced-plugins-load">133<h4 id="control-which-synced-plugins-load">


190| `.trash/` | claude.ai 동기화가 제거한 플러그인, 예를 들어 claude.ai에서 하나를 끈 후 또는 동기화를 중지한 후 |197| `.trash/` | claude.ai 동기화가 제거한 플러그인, 예를 들어 claude.ai에서 하나를 끈 후 또는 동기화를 중지한 후 |

191| `installed_plugins.json` 및 `known_marketplaces.json` | Claude Code가 설치한 것과 가져온 마켓플레이스의 기록, [플러그인이 도달한 단계 확인](#check-which-stage-a-plugin-reached) 아래에 설명됨. [claude.ai에서 호스팅되는 마켓플레이스](/docs/ko/plugins/install#add-from-claude-ai)는 대신 `known_marketplaces_claudeai.json`에 기록됩니다 |198| `installed_plugins.json` 및 `known_marketplaces.json` | Claude Code가 설치한 것과 가져온 마켓플레이스의 기록, [플러그인이 도달한 단계 확인](#check-which-stage-a-plugin-reached) 아래에 설명됨. [claude.ai에서 호스팅되는 마켓플레이스](/docs/ko/plugins/install#add-from-claude-ai)는 대신 `known_marketplaces_claudeai.json`에 기록됩니다 |

192| `flagged-plugins.json` | Claude Code가 마켓플레이스가 목록에서 제거했기 때문에 제거한 플러그인. `/plugin`의 **Flagged** 섹션에 나타나며, [마켓플레이스 호스팅](/docs/ko/plugins/host-marketplace)을 참조합니다 |199| `flagged-plugins.json` | Claude Code가 마켓플레이스가 목록에서 제거했기 때문에 제거한 플러그인. `/plugin`의 **Flagged** 섹션에 나타나며, [마켓플레이스 호스팅](/docs/ko/plugins/host-marketplace)을 참조합니다 |

200| `installed_plugins.set-aside.<date>.<hash>.json` 및 `installed_plugins.unreadable.<date>.<hash>.kept` | Claude Code가 Claude Code의 어떤 버전도 사용할 수 없는 설치 기록을 삭제하거나 읽을 수 없는 `installed_plugins.json`을 재구성하기 전에 유지하는 날짜가 지정된 복사본. [복구 노트](/docs/ko/plugins/troubleshooting#installed-plugins-json-could-not-be-read-and-was-rebuilt)를 참조합니다. [`cleanupPeriodDays`](/docs/ko/settings-reference#cleanupperioddays) 일정에 따라 만료됩니다 |

193 201 

194`${CLAUDE_PLUGIN_ROOT}`는 버전 디렉토리를 가리키기 때문에 플러그인의 루트 경로는 모든 버전과 함께 변경됩니다. 플러그인의 내구성 있는 파일을 `${CLAUDE_PLUGIN_DATA}` 대신에 유지합니다.202`${CLAUDE_PLUGIN_ROOT}`는 버전 디렉토리를 가리키기 때문에 플러그인의 루트 경로는 모든 버전과 함께 변경됩니다. 플러그인의 내구성 있는 파일을 `${CLAUDE_PLUGIN_DATA}` 대신에 유지합니다.

195 203 

Details

48* **커뮤니티 마켓플레이스 이름**: `claude-community`, `claude-plugins-community`, `healthcare`. 공식 이름과 동일한 규칙 아래 예약됨.48* **커뮤니티 마켓플레이스 이름**: `claude-community`, `claude-plugins-community`, `healthcare`. 공식 이름과 동일한 규칙 아래 예약됨.

49* **플러그인 디렉토리 이름**: `anthropic-plugin-directory`, `claude-plugin-directory`. 공식 이름과 동일한 규칙 아래 예약됨.49* **플러그인 디렉토리 이름**: `anthropic-plugin-directory`, `claude-plugin-directory`. 공식 이름과 동일한 규칙 아래 예약됨.

50* **공식 마켓플레이스를 사칭하는 이름**: `official-claude-plugins` 또는 `claude-plugins-v2`와 같은 이름, 그리고 비ASCII 문자를 포함하는 모든 이름. 오류는 `Marketplace name impersonates an official Anthropic/Claude marketplace`입니다. 이름의 제어 또는 양방향 서식 문자도 `Marketplace name cannot contain control or bidirectional-formatting characters`를 보고합니다. 이러한 이름으로 이미 등록된 마켓플레이스는 해당 플러그인과 함께 로드를 중지합니다.50* **공식 마켓플레이스를 사칭하는 이름**: `official-claude-plugins` 또는 `claude-plugins-v2`와 같은 이름, 그리고 비ASCII 문자를 포함하는 모든 이름. 오류는 `Marketplace name impersonates an official Anthropic/Claude marketplace`입니다. 이름의 제어 또는 양방향 서식 문자도 `Marketplace name cannot contain control or bidirectional-formatting characters`를 보고합니다. 이러한 이름으로 이미 등록된 마켓플레이스는 해당 플러그인과 함께 로드를 중지합니다.

51* <span id="reserved-name-spellings" />**예약된 이름의 다른 철자**: 예약된 이름과 후행 점으로만 다르거나 하이픈 대신 다른 기호를 사용하는 이름이므로 `claude.code.plugins`는 `claude-code-plugins`로 계산됩니다. `claude plugin validate`는 이러한 이름을 수락합니다. 마켓플레이스 추가는 [`is another spelling of "<reserved>", a reserved marketplace name`](/docs/ko/errors#marketplace-name-is-another-spelling-of-a-reserved-name)으로 실패하고, 하나 아래에 등록된 마켓플레이스는 로드를 중지합니다. 이 확인에는 Claude Code v2.1.280 이상이 필요합니다.51* <span id="reserved-name-spellings" />**예약된 이름의 다른 철자**: 예약된 이름과 후행 점으로만 다르거나 하이픈 대신 다른 기호(언더스코어 제외)를 사용하는 이름이므로 `claude.code.plugins`는 `claude-code-plugins`로 계산됩니다. 마켓플레이스 추가는 [`is another spelling of "<reserved>", a reserved marketplace name`](/docs/ko/errors#marketplace-name-is-another-spelling-of-a-reserved-name)으로 실패하고, 하나 아래에 등록된 마켓플레이스는 로드를 중지합니다. 이 확인에는 Claude Code v2.1.280 이상이 필요합니다.

52* **Claude Code가 마켓플레이스에서 오지 않는 플러그인에 사용하는 이름**: [`--plugin-dir`](/docs/ko/cli-reference)로 로드된 플러그인의 경우 `inline`, 기본 제공 플러그인의 경우 `builtin`, [`.claude/skills/`](/docs/ko/skills)에서 자동 로드되는 플러그인의 경우 `skills-dir`, claude.ai 계정에서 동기화된 플러그인의 경우 `synced`. `claude-plugin-test`도 예약됩니다. `skills-dir`은 `{"source": "skills-dir"}`로도 `strictKnownMarketplaces` 및 `blockedMarketplaces`에 나타나며, [소스 값이 정책 목록에서만 유효함](#source-values-valid-only-in-policy-lists)에서 설명합니다.52* **Claude Code가 마켓플레이스에서 오지 않는 플러그인에 사용하는 이름**: [`--plugin-dir`](/docs/ko/cli-reference)로 로드된 플러그인의 경우 `inline`, 기본 제공 플러그인의 경우 `builtin`, [`.claude/skills/`](/docs/ko/skills)에서 자동 로드되는 플러그인의 경우 `skills-dir`, claude.ai 계정에서 동기화된 플러그인의 경우 `synced`. `claude-plugin-test`도 예약됩니다. `skills-dir`은 `{"source": "skills-dir"}`로도 `strictKnownMarketplaces` 및 `blockedMarketplaces`에 나타나며, [소스 값이 정책 목록에서만 유효함](#source-values-valid-only-in-policy-lists)에서 설명합니다.

53* **`npm`, `pip`, `uv`, `cargo`, `github`, `gh`**: 모든 대소문자로 예약됨. 이 확인에는 Claude Code v2.1.275 이상이 필요합니다.53* **`npm`, `pip`, `uv`, `cargo`, `github`, `gh`**: 모든 대소문자로 예약됨. 이 확인에는 Claude Code v2.1.275 이상이 필요합니다.

54* **`claudeai-`로 시작하는 이름**: claude.ai에서 호스팅되는 마켓플레이스를 위해 예약됨. `claude plugin marketplace add`는 `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`로 이를 사용하는 다른 마켓플레이스를 거부합니다.54* **`claudeai-`로 시작하는 이름**: claude.ai에서 호스팅되는 마켓플레이스를 위해 예약됨. `claude plugin marketplace add`는 `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`로 이를 사용하는 다른 마켓플레이스를 거부합니다.


63 63 

64| 필드 | 유형 | 설명 |64| 필드 | 유형 | 설명 |

65| :- | :- | :- |65| :- | :- | :- |

66| `name` | string | 마켓플레이스 식별자. 공백, 제어 문자 또는 양방향 서식 문자 없음, `/` 또는 `\` 없음, `..` 없음, `.` 아님. [예약된 이름](#reserved-names) 참조. 사용자는 플러그인을 설치할 때 `@` 뒤에 입력합니다 |66| `name` | string | 마켓플레이스 식별자: 문자, 숫자, `.`, `_`, `-`로 구성되며, 문자 또는 숫자로 시작하고 `..`가 없습니다. 마켓플레이스에서 설치된 모든 [플러그인 id](/docs/ko/plugins/loading#find-where-a-plugin-came-from)의 `@` 뒤 부분을 형성하므로, `claude plugin validate`는 다른 이름을 실패합니다. [예약된 이름](#reserved-names) 참조 |

67| `owner` | object | 유지보수자 정보. `name`은 필수이고 `email` 및 `url`은 선택사항입니다 |67| `owner` | object | 유지보수자 정보. `name`은 필수이고 `email` 및 `url`은 선택사항입니다 |

68| `plugins` | array | [플러그인 항목](#plugin-entries). 각 항목은 독립적으로 검증되므로 하나의 잘못된 항목이 마켓플레이스를 실패하게 하지 않습니다 |68| `plugins` | array | [플러그인 항목](#plugin-entries). 각 항목은 독립적으로 검증되므로 하나의 잘못된 항목이 마켓플레이스를 실패하게 하지 않습니다 |

69| `$schema` | string | 편집기 자동 완성을 위한 JSON Schema URL. 로드 시간에 무시됨 |69| `$schema` | string | 편집기 자동 완성을 위한 JSON Schema URL. 로드 시간에 무시됨 |


87 87 

88| 필드 | 유형 | 설명 |88| 필드 | 유형 | 설명 |

89| :- | :- | :- |89| :- | :- | :- |

90| `name` | string | 공백, 제어 문자 또는 양방향 서식 문자가 없는 플러그인 식별자. 사용자는 플러그인의 자체 `plugin.json`이 다른 `name`을 설정하더라도 설치할 때 `@` 앞에 입력합니다 |90| `name` | string | 플러그인 식별자: 문자, 숫자, `.`, `_`, `-`로 구성되며, 문자 또는 숫자로 시작합니다. `claude plugin validate`는 다른 이름을 실패하며, Claude Code는 설치할 수 없습니다. 사용자는 플러그인의 자체 `plugin.json`이 다른 `name`을 설정하더라도 설치할 때 `@` 앞에 입력합니다 |

91| `source` | string or object | 플러그인을 가져올 위치. [플러그인 소스](#plugin-sources) 참조 |91| `source` | string or object | 플러그인을 가져올 위치. [플러그인 소스](#plugin-sources) 참조 |

92| `description` | string | [`/plugin`](/docs/ko/plugins/install) 목록 및 세부 정보에 표시됨 |92| `description` | string | [`/plugin`](/docs/ko/plugins/install) 목록 및 세부 정보에 표시됨 |

93| `version` | string | 플러그인의 버전 문자열. `plugin.json`도 `version`을 설정할 때, `plugin.json`이 우선이고 `claude plugin validate`가 경고합니다. [플러그인 로딩 참조](/docs/ko/plugins/loading) 참조 |93| `version` | string | 플러그인의 버전 문자열. `plugin.json`도 `version`을 설정할 때, `plugin.json`이 우선이고 `claude plugin validate`가 경고합니다. [플러그인 로딩 참조](/docs/ko/plugins/loading) 참조 |


280 archive 플러그인 소스280 archive 플러그인 소스

281</h3>281</h3>

282 282 

283`url`은 `https://`를 사용해야 하며 루프백, 링크-로컬 또는 클라우드 메타데이터 호스트를 가리킬 수 없습니다.283`url`은 `https://`를 사용해야 하며 루프백, 링크-로컬 또는 클라우드 메타데이터 호스트를 가리킬 수 없습니다. 다운로드의 크기, 타임아웃, 리디렉션 및 추출 제한에 대해서는 [호스팅된 파일의 다운로드 제한 내에 유지](/docs/ko/plugins/host-marketplace#stay-within-the-download-limits-for-hosted-files)를 참조하세요.

284 284 

285플러그인 루트는 zip의 맨 위 또는 한 디렉토리 아래에 있을 수 있습니다.285플러그인 루트는 zip의 맨 위 또는 한 디렉토리 아래에 있을 수 있습니다.

286 286 


385| :- | :- | :- | :- | :- | :- |385| :- | :- | :- | :- | :- | :- |

386| `url` | `url`, `headers`, `headersHelper` | git 형식과 일치하지 않는 `http://` 또는 `https://` URL | 로드 | 동일한 URL 허용 | 동일한 URL 차단 |386| `url` | `url`, `headers`, `headersHelper` | git 형식과 일치하지 않는 `http://` 또는 `https://` URL | 로드 | 동일한 URL 허용 | 동일한 URL 차단 |

387| `github` | `repo`, `ref`, `path`, `sparsePaths` | `owner/repo`, `owner/repo@ref`, 또는 `owner/repo#ref` | 로드 | 동일한 `repo`, `ref`, `path` 허용. `repo`는 `owner/*`일 수 있음 | 동일한 것 차단, 동일한 저장소에 대한 `git` URL |387| `github` | `repo`, `ref`, `path`, `sparsePaths` | `owner/repo`, `owner/repo@ref`, 또는 `owner/repo#ref` | 로드 | 동일한 `repo`, `ref`, `path` 허용. `repo`는 `owner/*`일 수 있음 | 동일한 것 차단, 동일한 저장소에 대한 `git` URL |

388| `git` | `url`, `ref`, `path`, `sparsePaths` | `user@host:path` URL, 또는 `.git`로 끝나거나 `/_git/`를 포함하거나 github.com 또는 gitlab.com 저장소를 이름 지정하는 `https://` URL. `#ref`는 ref를 고정 | 로드 | 동일한 URL, `ref`, `path` 허용 | 동일한 것 차단, 동일한 github.com 저장소의 다른 철자 |388| `git` | `url`, `ref`, `path`, `sparsePaths` | `user@host:path` URL, 또는 `.git`로 끝나거나 `/_git/`를 포함하거나 github.com 또는 gitlab.com 저장소를 이름 지정하는 `http://` 또는 `https://` URL. `#ref`는 ref를 고정 | 로드 | 동일한 URL, `ref`, `path` 허용 | 동일한 것 차단, 동일한 github.com 저장소의 다른 철자 |

389| `npm` | `package` | 생성되지 않음 | 로드 실패: `NPM marketplace sources not yet implemented` | 구문 분석되지만 아무것도 등록하지 않으므로 일치하는 것이 없음 | 구문 분석되지만 일치하는 것이 없음 |389| `npm` | `package` | 생성되지 않음 | 로드 실패: `NPM marketplace sources not yet implemented` | 구문 분석되지만 아무것도 등록하지 않으므로 일치하는 것이 없음 | 구문 분석되지만 일치하는 것이 없음 |

390| `file` | `path` | `.json` 파일의 경로 | 로드 | 동일한 경로 허용 | 동일한 경로 차단 |390| `file` | `path` | `.json` 파일의 경로 | 로드 | 동일한 경로 허용 | 동일한 경로 차단 |

391| `directory` | `path` | 디렉토리의 경로 | 로드 | 동일한 경로 허용 | 동일한 경로 차단 |391| `directory` | `path` | 디렉토리의 경로 | 로드 | 동일한 경로 허용 | 동일한 경로 차단 |


402 402 

403| 필드 | 유형 | 설명 |403| 필드 | 유형 | 설명 |

404| :- | :- | :- |404| :- | :- | :- |

405| `url` | `url` | `marketplace.json` 파일에 대한 링크. Claude Code는 해당 파일만 다운로드하므로, 마켓플레이스의 플러그인은 [상대 경로 소스](#relative-path-plugin-source)를 사용할 수 없습니다 |405| `url` | `url` | `marketplace.json` 파일에 대한 링크. Claude Code는 해당 파일만 다운로드하므로, 마켓플레이스의 플러그인은 [상대 경로 소스](#relative-path-plugin-source)를 사용할 수 없습니다. [호스팅된 파일의 다운로드 제한 내에서 유지](/docs/ko/plugins/host-marketplace#stay-within-the-download-limits-for-hosted-files)의 크기, 시간 초과 및 리디렉션 제한을 참조하세요 |

406| `url` | `git` | 복제할 git 저장소 |406| `url` | `git` | 복제할 git 저장소 |

407| `headers` | `url` | Claude Code가 가져오기와 함께 보내는 HTTP 헤더의 맵, 인증된 호스트의 경우 |407| `headers` | `url` | Claude Code가 가져오기와 함께 보내는 HTTP 헤더의 맵, 인증된 호스트의 경우 |

408| `headersHelper` | `url` | 값이 너무 단기간인 헤더를 인쇄하는 명령. Claude Code v2.1.238 이상 필요. [아카이브 다운로드 인증](/docs/ko/plugins/host-marketplace#authenticate-archive-downloads) 참조 |408| `headersHelper` | `url` | 값이 너무 단기간인 헤더를 인쇄하는 명령. Claude Code v2.1.238 이상 필요. [아카이브 다운로드 인증](/docs/ko/plugins/host-marketplace#authenticate-archive-downloads) 참조 |


469 469 

470항목 인덱스 및 `plugin.json →`으로 시작하는 메시지(예: `plugins[2] plugin.json →`)는 해당 플러그인의 자체 파일에 관한 것입니다. [`claude plugin validate` 오류 보고](/docs/ko/plugins/troubleshooting#claude-plugin-validate-reports-errors)에서 이러한 메시지와 해결 방법을 나열합니다.470항목 인덱스 및 `plugin.json →`으로 시작하는 메시지(예: `plugins[2] plugin.json →`)는 해당 플러그인의 자체 파일에 관한 것입니다. [`claude plugin validate` 오류 보고](/docs/ko/plugins/troubleshooting#claude-plugin-validate-reports-errors)에서 이러한 메시지와 해결 방법을 나열합니다.

471 471 

472Claude Desktop 플래그 이름을 언급하는 경고는 Claude Code가 허용하지만 Claude Desktop이 거부하는 것입니다. Claude Desktop의 이름 규칙이 더 엄격하기 때문입니다.472Claude Desktop 플래그 이름을 언급하는 경고는 Claude Desktop이 거부하는 것입니다.

473 473 

474표는 마켓플레이스 수준의 메시지를 각 메시지가 관련된 필드에 매핑합니다.474표는 마켓플레이스 수준의 메시지를 각 메시지가 관련된 필드에 매핑합니다.

475 475 


484| `Author name cannot be empty` | 오류 | `owner.name` |484| `Author name cannot be empty` | 오류 | `owner.name` |

485| `Plugin name cannot contain spaces. Use kebab-case (e.g., "my-plugin")` | 오류 | `plugins[i].name` |485| `Plugin name cannot contain spaces. Use kebab-case (e.g., "my-plugin")` | 오류 | `plugins[i].name` |

486| `Plugin name cannot contain control or bidirectional-formatting characters` | 오류 | `plugins[i].name` |486| `Plugin name cannot contain control or bidirectional-formatting characters` | 오류 | `plugins[i].name` |

487| `Claude Code cannot install plugins from marketplace "x". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change the marketplace's "name".` | 오류 | `name` |

488| `Claude Code cannot install plugin "x". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change this entry's "name".` | 오류 | `plugins[i].name` |

487| `Duplicate plugin name "x" found in marketplace` | 오류 | 두 항목이 `name` 공유 |489| `Duplicate plugin name "x" found in marketplace` | 오류 | 두 항목이 `name` 공유 |

488| `plugins.i.source: Invalid input` | 오류 | 항목의 `source`가 어떤 유형과도 일치하지 않음. [source의 잘못된 입력](#invalid-input-on-a-source) 참조 |490| `plugins.i.source: Invalid input` | 오류 | 항목의 `source`가 어떤 유형과도 일치하지 않음. [source의 잘못된 입력](#invalid-input-on-a-source) 참조 |

489| `plugins[i].source: Path contains "..": <path>` | 오류 | 마켓플레이스 루트를 벗어나는 상대 `source` |491| `plugins[i].source: Path contains "..": <path>` | 오류 | 마켓플레이스 루트를 벗어나는 상대 `source` |

Details

145 `Marketplace "<name>" not found`145 `Marketplace "<name>" not found`

146</h3>146</h3>

147 147 

148세션에서 `/plugin install <plugin>@<name>`을 실행했으며, 종종 누군가가 보낸 설치 줄에서 Claude Code가 해당 이름의 마켓플레이스가 없다고 보고했습니다.148세션에서 `/plugin install`을 실행했고 Claude Code가 해당 이름의 마켓플레이스가 없다고 보고했습니다. 이 메시지에 도달하는 명령의 두 가지 형식이 있습니다:

149 

150* **`/plugin install <plugin>@<name>`**: 설치 줄, 종종 누군가가 보낸 줄에서 추가하지 않은 마켓플레이스의 이름을 지정합니다. 이 항목의 나머지 부분은 찾기 및 추가를 다룹니다.

151* **`/plugin install <source>` (경로, URL 또는 `owner/repo` 포함)**: 이 형식은 이미 추가한 소스에 대해서도 설치하는 대신 메시지를 보고합니다. 한 명령에서 소스에서 설치하려면 [마켓플레이스 추가 및 한 명령에서 설치](/docs/ko/plugins/install#add-a-marketplace-and-install-in-one-command)를 참조합니다.

149 152 

150이름이 `claudeai-`로 시작하면 마켓플레이스가 claude.ai에서 호스팅되며, 셸에서 `claude plugin marketplace add --claudeai <name>`으로 이름으로 추가합니다. [claude.ai에서 마켓플레이스 추가](/docs/ko/plugins/install#add-from-claude-ai)를 참조합니다.153이름이 `claudeai-`로 시작하면 마켓플레이스가 claude.ai에서 호스팅되며, 셸에서 `claude plugin marketplace add --claudeai <name>`으로 이름으로 추가합니다. [claude.ai에서 마켓플레이스 추가](/docs/ko/plugins/install#add-from-claude-ai)를 참조합니다.

151 154 


646 649 

647그런 다음 세션에서 `/reload-plugins`를 실행합니다. **Errors** 탭 항목이 사라지고 플러그인이 **Installed** 아래로 돌아옵니다.650그런 다음 세션에서 `/reload-plugins`를 실행합니다. **Errors** 탭 항목이 사라지고 플러그인이 **Installed** 아래로 돌아옵니다.

648 651 

652<h3 id="installed-plugins-json-holds-a-record-this-version-cannot-read">

653 `installed_plugins.json holds a record under "<id>" that this version of Claude Code cannot read`

654</h3>

655 

656메시지는 다음 형식으로 표시됩니다:

657 

658* **`claude plugin list`**: `Note:`로 인쇄합니다.

659* **`claude plugin install`, `uninstall`, 및 `update`**: `Plugin "<name>" was not installed:`, `Plugin "<name>" was not uninstalled:`, 또는 `Plugin "<name>" was not updated:`로 거부하고 동일한 텍스트가 뒤따릅니다.

660* **이 세 명령 중 하나에서 `--json`**: 결과 줄은 동일한 `message` 및 `failureCode: "install_records_unreadable"`을 전달합니다.

661* **여러 개의 그러한 기록**: 메시지는 `holds records under`를 읽습니다.

662* **전체 파일이 이 버전이 알 수 없는 형식을 선언**: 메시지는 `installed_plugins.json is in a format (version <N>) that this version of Claude Code does not know` 대신 읽습니다.

663 

664`installed_plugins.json`의 명명된 기록은 유효한 플러그인 id 아래의 유효한 JSON이지만 해당 필드는 이 버전에 대해 구문 분석되지 않습니다. 아마도 다른 버전의 Claude Code(아마도 더 최신 버전)가 작성했을 것입니다.

665 

666기록이 있는 동안 이 버전은 파일을 다시 작성하지 않으므로 기록이 손실되지 않습니다.

667 

668메시지의 옵션을 순서대로 가져옵니다:

669 

6701. `claude update`로 Claude Code를 업데이트합니다.

6712. 업데이트할 수 없으면 기록을 작성한 Claude Code 버전으로 명명된 플러그인을 제거합니다.

6723. 둘 다 도움이 되지 않으면 `installed_plugins.json`에서 기록을 수동으로 삭제한 다음 Claude Code를 다시 시작하거나 `/reload-plugins`를 실행합니다.

673 

674<h3 id="installed-plugins-json-could-not-be-read-and-was-rebuilt">

675 `installed_plugins.json could not be read and was rebuilt`

676</h3>

677 

678`claude plugin list`는 이 메모를 `installed_plugins.json` 옆에 있는 `installed_plugins.unreadable.<date>.<hash>.kept`라는 보관된 파일의 경로와 함께 인쇄합니다.

679 

680유효한 JSON이 아니거나 플러그인 목록이 아닌 `installed_plugins.json`은 설치한 내용을 말할 수 없습니다.

681 

682`.kept` 파일을 열어 이전 파일이 기록한 내용을 확인하고 누락된 플러그인을 다시 설치합니다. Claude Code는 파일을 다시 읽지 않으며 파일은 [`cleanupPeriodDays`](/docs/ko/settings-reference#cleanupperioddays) 일정에 따라 만료됩니다.

683 

684<h3 id="install-records-under-names-that-no-version-can-use">

685 `install records under names that no version of Claude Code can use were removed from installed_plugins.json`

686</h3>

687 

688`claude plugin list`는 이 메모를 `installed_plugins.json` 옆에 있는 `installed_plugins.set-aside.<date>.<hash>.json`이라는 복사본의 경로와 함께 인쇄합니다. 메모는 `Nothing needs doing about these copies.`로 끝납니다.

689 

690`installed_plugins.json`의 기록은 유효한 플러그인 id가 아닌 키 아래에 있었으므로 Claude Code의 어떤 버전도 사용할 수 없습니다. 파일의 나머지는 정상적으로 로드됩니다.

691 

692Claude Code는 사용할 수 없는 기록을 `.set-aside` 파일로 복사하고 목록에서 삭제합니다. Claude Code는 복사본을 다시 읽지 않으며 복사본은 [`cleanupPeriodDays`](/docs/ko/settings-reference#cleanupperioddays) 일정에 따라 만료됩니다.

693 

649<h3 id="a-plugin-you-disabled-still-loads">694<h3 id="a-plugin-you-disabled-still-loads">

650 `Disabled in ~/.claude/settings.json but still loads`695 `Disabled in ~/.claude/settings.json but still loads`

651</h3>696</h3>


981| `Path contains "..": <path>` (under `plugins[N].source`) | 오류 | `..` 세그먼트 없이 마켓플레이스 루트에 상대적인 경로를 사용합니다. |1026| `Path contains "..": <path>` (under `plugins[N].source`) | 오류 | `..` 세그먼트 없이 마켓플레이스 루트에 상대적인 경로를 사용합니다. |

982| `Marketplace name cannot contain control or bidirectional-formatting characters` | 오류 | 이름에서 문자(예: 이스케이프 또는 줄 바꿈)를 제거합니다. |1027| `Marketplace name cannot contain control or bidirectional-formatting characters` | 오류 | 이름에서 문자(예: 이스케이프 또는 줄 바꿈)를 제거합니다. |

983| `Plugin name cannot contain control or bidirectional-formatting characters` | 오류 | 플러그인 `name`에서 문자를 제거합니다. |1028| `Plugin name cannot contain control or bidirectional-formatting characters` | 오류 | 플러그인 `name`에서 문자를 제거합니다. |

1029| `Claude Code cannot install plugins from marketplace "<name>". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change the marketplace's "name".` | 오류 | 마켓플레이스의 이름을 메시지에서 명시한 규칙에 맞게 변경합니다. |

1030| `Claude Code cannot install plugin "<name>". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change this entry's "name".` | 오류 | 항목의 이름을 메시지에서 명시한 규칙에 맞게 변경합니다. |

984| `Marketplace has no plugins defined` | 경고 | `plugins`에 최소 하나의 항목을 추가합니다. |1031| `Marketplace has no plugins defined` | 경고 | `plugins`에 최소 하나의 항목을 추가합니다. |

985| `No marketplace description provided` | 경고 | 최상위 수준 `description`을 추가합니다. |1032| `No marketplace description provided` | 경고 | 최상위 수준 `description`을 추가합니다. |

986| `Plugin name "<name>" is not kebab-case` (under `plugins[N] plugin.json → name`) | 경고 | 소문자, 숫자 및 하이픈으로 이름을 바꿉니다. Claude Code는 다른 형식을 허용하지만 claude.ai 마켓플레이스 동기화는 거부합니다. |1033| `Plugin name "<name>" is not kebab-case` under `plugins[N] plugin.json → name` | 경고 | 소문자, 숫자 및 하이픈으로 이름을 바꿉니다. claude.ai 마켓플레이스 동기화는 해당 형식을 요구합니다. |

987| `Entry declares version "<a>" but <path>/plugin.json says "<b>"` | 경고 | 항목을 `plugin.json`과 일치하도록 업데이트합니다. 이는 설치 시간에 권위 있습니다. |1034| `Entry declares version "<a>" but <path>/plugin.json says "<b>"` | 경고 | 항목을 `plugin.json`과 일치하도록 업데이트합니다. 이는 설치 시간에 권위 있습니다. |

988| `Marketplace name "<name>" is reserved in Claude Desktop` | 경고 | 마켓플레이스의 이름을 바꿉니다. Claude Desktop의 관리 마켓플레이스 동기화는 모든 대소문자에서 `org`, `org-provisioned` 및 `unknown`을 거부합니다. |1035| `Marketplace name "<name>" is reserved in Claude Desktop` | 경고 | 마켓플레이스의 이름을 바꿉니다. Claude Desktop의 관리 마켓플레이스 동기화는 모든 대소문자에서 `org`, `org-provisioned` 및 `unknown`을 거부합니다. |

989| `Marketplace name "<name>" is not accepted by Claude Desktop` 또는 `Plugin name "<name>" is not accepted by Claude Desktop` | 경고 | 최대 128자의 문자, 숫자, `.`, `_` 및 `-`로 이름을 바꾸고 문자 또는 숫자로 시작합니다. |1036| `Marketplace name "<name>" is not accepted by Claude Desktop` 또는 `Plugin name "<name>" is not accepted by Claude Desktop` | 경고 | 최대 128자의 문자, 숫자, `.`, `_` 및 `-`로 이름을 바꾸고 문자 또는 숫자로 시작합니다. |

Details

412| - | - |412| - | - |

413| `DISABLE_PROMPT_CACHING` | 모든 모델에 대해 비활성화 |413| `DISABLE_PROMPT_CACHING` | 모든 모델에 대해 비활성화 |

414| `DISABLE_PROMPT_CACHING_HAIKU` | 기본 Haiku 모델에 대해 비활성화 |414| `DISABLE_PROMPT_CACHING_HAIKU` | 기본 Haiku 모델에 대해 비활성화 |

415| `DISABLE_PROMPT_CACHING_SONNET` | Sonnet만 비활성화 |415| `DISABLE_PROMPT_CACHING_SONNET` | 기본 Sonnet 모델에 대해 비활성화 |

416| `DISABLE_PROMPT_CACHING_OPUS` | Opus만 비활성화 |416| `DISABLE_PROMPT_CACHING_OPUS` | 기본 Opus 모델에 대해 비활성화 |

417| `DISABLE_PROMPT_CACHING_FABLE` | Fable만 비활성화 |417| `DISABLE_PROMPT_CACHING_FABLE` | Fable만 비활성화 |

418 418 

419`DISABLE_PROMPT_CACHING_HAIKU`는 기본 Haiku 모델, 즉 `haiku` 별칭이 확인되는 모델에 적용됩니다. 이는 해당 모델이 실행되는 모든 곳에서 caching을 비활성화하며, 이것이 사용자의 주 모델일 때 주 대화도 포함됩니다. 주 대화를 포함하려면 Claude Code v2.1.283 이상이 필요합니다.419`DISABLE_PROMPT_CACHING_HAIKU`는 기본 Haiku 모델, 즉 `haiku` 별칭이 확인되는 모델에 적용됩니다. 이는 해당 모델이 실행되는 모든 곳에서 caching을 비활성화하며, 이것이 사용자의 주 모델일 때 주 대화도 포함됩니다. 주 대화를 포함하려면 Claude Code v2.1.283 이상이 필요합니다.


422 422 

423주 모델로 고정한 다른 Haiku 버전은 caching을 유지합니다. 이에 대해 caching을 비활성화하려면 `DISABLE_PROMPT_CACHING`을 설정합니다.423주 모델로 고정한 다른 Haiku 버전은 caching을 유지합니다. 이에 대해 caching을 비활성화하려면 `DISABLE_PROMPT_CACHING`을 설정합니다.

424 424 

425`DISABLE_PROMPT_CACHING_SONNET`과 `DISABLE_PROMPT_CACHING_OPUS`는 각각 `sonnet` 또는 `opus` 별칭이 확인되는 모델에 적용됩니다. 다른 Sonnet 또는 Opus 모델 ID를 주 모델로 설정하면 해당 모델은 caching을 유지합니다. 예를 들어, `claude-sonnet-5`에서의 세션은 caching을 유지하지만 `sonnet`은 `claude-sonnet-5-5`로 확인됩니다. 해당 모델에 대해 caching을 비활성화하려면 `DISABLE_PROMPT_CACHING`을 설정합니다.

426 

425조직 전체에서 caching 정책을 설정하려면 이러한 변수 중 하나 또는 [TTL 변수](#cache-lifetime)를 [관리되는 설정](/docs/ko/managed-settings)의 `env` 블록에 넣습니다. 일반적인 사용을 위해서는 caching을 활성화된 상태로 두십시오.427조직 전체에서 caching 정책을 설정하려면 이러한 변수 중 하나 또는 [TTL 변수](#cache-lifetime)를 [관리되는 설정](/docs/ko/managed-settings)의 `env` 블록에 넣습니다. 일반적인 사용을 위해서는 caching을 활성화된 상태로 두십시오.

426 428 

427<h2 id="related-resources">429<h2 id="related-resources">

routines.md +16 −6

Details

66 66 

67다른 모든 경우, 새로운 artifact를 게시하는 경우를 포함하여 Claude는 먼저 묻습니다. 루틴의 작업이 페이지를 최신 상태로 유지하는 것일 때, 이미 게시한 artifact를 제공하십시오.67다른 모든 경우, 새로운 artifact를 게시하는 경우를 포함하여 Claude는 먼저 묻습니다. 루틴의 작업이 페이지를 최신 상태로 유지하는 것일 때, 이미 게시한 artifact를 제공하십시오.

68 68 

69루틴은 개별 claude.ai 계정에 속합니다. 팀원과 공유되지 않으며, 계정의 일일 실행 한도에 포함됩니다. 루틴이 연결된 GitHub 신원이나 커넥터를 통해 수행하는 모든 작업은 사용자로 표시됩니다. 커밋과 풀 요청은 GitHub 사용자를 포함하며, Slack 메시지, Linear 티켓 또는 기타 커넥터 작업은 해당 서비스에 대한 연결된 계정을 사용합니다.69루틴은 개별 claude.ai 계정에 속합니다. 팀원과 공유되지 않으며, 계정의 [사용량 및 한도](#usage-and-limits)에 포함됩니다. 루틴이 연결된 GitHub 신원이나 커넥터를 통해 수행하는 모든 작업은 사용자로 표시됩니다. 커밋과 풀 요청은 GitHub 사용자를 포함하며, Slack 메시지, Linear 티켓 또는 기타 커넥터 작업은 해당 서비스에 대한 연결된 계정을 사용합니다.

70 70 

71<h3 id="create-from-the-web">71<h3 id="create-from-the-web">

72 웹에서 만들기72 웹에서 만들기


174 174 

175반복 일정과 동일한 로컬-UTC 변환이 일회성 타임스탬프에 적용됩니다.175반복 일정과 동일한 로컬-UTC 변환이 일회성 타임스탬프에 적용됩니다.

176 176 

177일회성 실행은 일일 루틴 실행 상한선에 포함되지 않습니다. [사용량 및 제한](#usage-and-limits)을 참조하세요.177일회성 실행은 다른 예약된 실행과 동일한 시간당 제한에 포함됩니다. [사용량 및 제한](#usage-and-limits)을 참조하세요.

178 178 

179<h3 id="add-an-api-trigger">179<h3 id="add-an-api-trigger">

180 API 트리거 추가180 API 트리거 추가


256GitHub 트리거는 연결된 저장소에서 일치하는 이벤트가 발생할 때 자동으로 새 세션을 시작합니다. Claude Code는 이벤트 간에 세션을 재사용하지 않으므로 두 PR 업데이트는 두 개의 독립적인 세션을 생성합니다.256GitHub 트리거는 연결된 저장소에서 일치하는 이벤트가 발생할 때 자동으로 새 세션을 시작합니다. Claude Code는 이벤트 간에 세션을 재사용하지 않으므로 두 PR 업데이트는 두 개의 독립적인 세션을 생성합니다.

257 257 

258<Note>258<Note>

259 연구 미리보기 중에 GitHub 웹훅 이벤트는 루틴별 및 계정별 시간당 상한선이 있습니다. 제한을 초과하는 이벤트는 윈도우가 재설정될 때까지 삭제됩니다. [claude.ai/code/routines](https://claude.ai/code/routines)에서 현재 제한을 확인하세요.259 GitHub 웹훅 이벤트는 루틴별 및 계정별 시간당 상한선이 있습니다. 제한을 초과하는 이벤트는 윈도우가 재설정될 때까지 삭제됩니다.

260</Note>260</Note>

261 261 

262Claude GitHub 앱은 트리거를 구성하려는 저장소에 설치되어야 합니다.262Claude GitHub 앱은 트리거를 구성하려는 저장소에 설치되어야 합니다.


421 사용 및 제한421 사용 및 제한

422</h2>422</h2>

423 423 

424루틴은 대화형 세션과 동일한 방식으로 구독 사용을 소비합니다. 표준 구독 제한 외에도 루틴은 계정당 시작할 수 있는 실행 수에 대한 일일 상한선이 있습니다. [claude.ai/code/routines](https://claude.ai/code/routines) 또는 [claude.ai/settings/usage](https://claude.ai/settings/usage)에서 현재 소비 및 남은 일일 루틴 실행을 확인하세요.424루틴은 대화형 세션과 동일한 방식으로 구독 사용을 소비합니다. [claude.ai/settings/usage](https://claude.ai/settings/usage)에서 현재 소비를 확인하세요.

425 425 

426루틴이 일일 상한선 또는 구독 사용 제한에 도달할 때 사용 크레딧이 활성화된 조직은 계량된 초과 요금으로 루틴을 계속 실행할 수 있습니다. 사용 크레딧이 없으면 윈도우가 재설정될 때까지 추가 실행이 거부됩니다. [claude.ai/settings/usage](https://claude.ai/settings/usage)에서 사용 크레딧을 활성화하세요. Team 및 Enterprise 플랜에서는 관리자가 [claude.ai/admin-settings/usage](https://claude.ai/admin-settings/usage)에서 조직에 대해 사용 크레딧을 활성화합니다.426구독 사용과는 별도로, 실행을 시작하는 각 방식에는 시간당 제한이 있습니다:

427 427 

428일회성 실행은 일일 루틴 실행 상한선에 포함되지 않습니다. 다른 세션과 마찬가지로 정기 구독 사용을 소비합니다.428| 작업 | 제한 | 계산 대상 | 제한 초과 시 |

429| :- | :- | :- | :- |

430| 예약된 실행(일회성 실행 포함) | 시간당 100회 | 계정 | 제한이 재설정될 때까지 실행 대기 |

431| **지금 실행**, API 실행 및 일회성 루틴을 다시 실행하도록 설정 | 시간당 30회 | 각 루틴, 세 가지 모두에서 공유되는 1회 계산 | 제한이 재설정될 때까지 작업 실패 |

432| **지금 실행** 및 일회성 루틴을 다시 실행하도록 설정 | 시간당 100회 | 계정 | 동일 |

433| API 실행 | 시간당 100회 | 계정, **지금 실행**과는 별도로 계산됨 | 동일 |

434| GitHub 이벤트 | [GitHub 트리거 추가](#add-a-github-trigger) 참조 | | |

435 

436이러한 시간당 제한 중 어느 것도 초과 요금이 없습니다.

437 

438루틴이 구독 사용 제한에 도달하면, 사용 크레딧이 활성화된 조직은 계량된 초과 요금으로 루틴을 계속 실행할 수 있습니다. 사용 크레딧이 없으면 사용 윈도우가 재설정될 때까지 추가 실행이 거부됩니다. [claude.ai/settings/usage](https://claude.ai/settings/usage)에서 사용 크레딧을 활성화하세요. Team 및 Enterprise 플랜에서는 관리자가 [claude.ai/admin-settings/usage](https://claude.ai/admin-settings/usage)에서 조직에 대해 사용 크레딧을 활성화합니다.

429 439 

430구독이 일시 중지된 동안 루틴은 보류 상태가 되며 실행되지 않습니다. 구독이 다시 활성화되면 루틴을 다시 켜세요.440구독이 일시 중지된 동안 루틴은 보류 상태가 되며 실행되지 않습니다. 구독이 다시 활성화되면 루틴을 다시 켜세요.

431 441 

Details

48* **Zero Data Retention**: [Zero Data Retention](/docs/ko/zero-data-retention)이 활성화된 조직에서는 사용할 수 없습니다.48* **Zero Data Retention**: [Zero Data Retention](/docs/ko/zero-data-retention)이 활성화된 조직에서는 사용할 수 없습니다.

49* **모델 추론**: 세션은 Anthropic API를 사용하며, 추론은 [Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry](/docs/ko/third-party-integrations) 또는 [LLM 게이트웨이](/docs/ko/llm-gateway)를 통해 라우팅될 수 없습니다.49* **모델 추론**: 세션은 Anthropic API를 사용하며, 추론은 [Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry](/docs/ko/third-party-integrations) 또는 [LLM 게이트웨이](/docs/ko/llm-gateway)를 통해 라우팅될 수 없습니다.

50* **표면**: [claude.ai/code](https://claude.ai/code), 모바일 및 데스크톱 앱, [예약된 루틴](/docs/ko/routines), 터미널에서 [`claude --cloud`](/docs/ko/claude-code-on-the-web#from-terminal-to-cloud) 또는 [`--environment` 디스패치](/docs/ko/self-hosted-environments-testing#run-the-test-loop)로 시작된 세션은 자체 호스팅 환경에서 실행될 수 있습니다. [Claude Tag](https://claude.com/docs/claude-tag/overview) 세션도 실행될 수 있지만, Claude는 아직 해당 세션에서 [Access 번들](https://claude.com/docs/claude-tag/concepts/glossary#access-bundle)을 사용할 수 없습니다. [Claude Security](/docs/ko/claude-security) 및 [Code Review](/docs/ko/code-review) 세션은 아직 라우팅되지 않습니다. 이 두 표면에 대한 지원은 별도로 따릅니다.50* **표면**: [claude.ai/code](https://claude.ai/code), 모바일 및 데스크톱 앱, [예약된 루틴](/docs/ko/routines), 터미널에서 [`claude --cloud`](/docs/ko/claude-code-on-the-web#from-terminal-to-cloud) 또는 [`--environment` 디스패치](/docs/ko/self-hosted-environments-testing#run-the-test-loop)로 시작된 세션은 자체 호스팅 환경에서 실행될 수 있습니다. [Claude Tag](https://claude.com/docs/claude-tag/overview) 세션도 실행될 수 있지만, Claude는 아직 해당 세션에서 [Access 번들](https://claude.com/docs/claude-tag/concepts/glossary#access-bundle)을 사용할 수 없습니다. [Claude Security](/docs/ko/claude-security) 및 [Code Review](/docs/ko/code-review) 세션은 아직 라우팅되지 않습니다. 이 두 표면에 대한 지원은 별도로 따릅니다.

51* **저장소**: 세션은 GitHub에서 저장소를 체크아웃합니다. [GitHub 인증 옵션](/docs/ko/claude-code-on-the-web#github-authentication-options)을 참조하세요.51* **저장소**: 세션은 GitHub에서 저장소를 체크아웃합니다. [GitHub 인증 옵션](/docs/ko/claude-code-on-the-web#github-authentication-options)을 참조하세요. GitHub Enterprise Server 호스트의 경우 해당 [네트워크 요구 사항](/docs/ko/github-enterprise-server#network-requirements)을 참조하세요.

52* **청구**: 자체 호스팅 환경의 세션은 Anthropic 호스팅 환경의 세션과 동일한 방식으로 조직의 Claude Code 사용량을 소비합니다.52* **청구**: 자체 호스팅 환경의 세션은 Anthropic 호스팅 환경의 세션과 동일한 방식으로 조직의 Claude Code 사용량을 소비합니다.

53 53 

54<h2 id="why-self-host">54<h2 id="why-self-host">

Details

170 170 

171git 호스트가 자격증명을 거부하거나 구성하지 않은 경우 러너는 몇 번 재시도한 다음 리포지토리 준비에 실패합니다. 세션이 결과를 푸시하는 리포지토리인 경우입니다. 세션이 읽기만 하는 리포지토리의 경우 [문제 해결](#troubleshooting)에서 러너가 대신 건너뛸 때를 다룹니다. 러너는 이러한 설정을 세션의 환경에 전달하지 않습니다.171git 호스트가 자격증명을 거부하거나 구성하지 않은 경우 러너는 몇 번 재시도한 다음 리포지토리 준비에 실패합니다. 세션이 결과를 푸시하는 리포지토리인 경우입니다. 세션이 읽기만 하는 리포지토리의 경우 [문제 해결](#troubleshooting)에서 러너가 대신 건너뛸 때를 다룹니다. 러너는 이러한 설정을 세션의 환경에 전달하지 않습니다.

172 172 

173`GIT_SSH_COMMAND` 또는 `GIT_ASKPASS`에서 이름을 지정하는 모든 프로그램을 세션이 쓸 수 없는 곳에 보관하세요. [강화 체크리스트](#harden-your-deployment)가 훅 디렉토리 및 래퍼 스크립트에 대해 요청하는 방식과 같습니다. 해당 프로그램의 명령줄에 있는 모든 키 또는 파일도 마찬가지입니다. 러너의 자신의 git은 클론 또는 페치할 때 해당 프로그램을 실행합니다.

174 

173체크아웃 디렉토리가 러너 프로세스와 다른 uid로 소유된 경우 git은 이에 대해 작동하기를 거부합니다. `safe.directory`를 추가하세요:175체크아웃 디렉토리가 러너 프로세스와 다른 uid로 소유된 경우 git은 이에 대해 작동하기를 거부합니다. `safe.directory`를 추가하세요:

174 176 

175```dockerfile theme={null}177```dockerfile theme={null}


184 186 

185프록시는 `--capacity 1`이 필요합니다. 프록시 URL은 세션별이고 Git 2.32 이상이 필요합니다. 더 오래된 git은 프록시가 세션을 서로 격리하는 데 사용하는 구성 메커니즘을 무시합니다. 러너는 요구사항이 충족되지 않으면 시작을 거부합니다. 프록시가 Anthropic 측에서 가져오기 때문에 git 호스트는 Anthropic 인프라에서 도달할 수 있어야 합니다. 이는 Anthropic 호스팅 세션이 가진 동일한 요구사항입니다. 네트워크 내부에서만 라우팅 가능한 git 호스트의 경우 대신 [`checkout` 수명 주기 훅](/docs/ko/self-hosted-environments-configuration#checkout)을 사용하세요. 각 러너 프로세스는 한 번에 하나의 세션을 처리하므로 병렬 처리를 위해 더 많은 복제본을 실행하세요. 프록시가 활성화되면 `--git-host-rewrite` 및 `--git-ssh-rewrite`는 효과가 없습니다: 프록시 URL은 git 호스트가 아닌 `api.anthropic.com`을 가리킵니다.187프록시는 `--capacity 1`이 필요합니다. 프록시 URL은 세션별이고 Git 2.32 이상이 필요합니다. 더 오래된 git은 프록시가 세션을 서로 격리하는 데 사용하는 구성 메커니즘을 무시합니다. 러너는 요구사항이 충족되지 않으면 시작을 거부합니다. 프록시가 Anthropic 측에서 가져오기 때문에 git 호스트는 Anthropic 인프라에서 도달할 수 있어야 합니다. 이는 Anthropic 호스팅 세션이 가진 동일한 요구사항입니다. 네트워크 내부에서만 라우팅 가능한 git 호스트의 경우 대신 [`checkout` 수명 주기 훅](/docs/ko/self-hosted-environments-configuration#checkout)을 사용하세요. 각 러너 프로세스는 한 번에 하나의 세션을 처리하므로 병렬 처리를 위해 더 많은 복제본을 실행하세요. 프록시가 활성화되면 `--git-host-rewrite` 및 `--git-ssh-rewrite`는 효과가 없습니다: 프록시 URL은 git 호스트가 아닌 `api.anthropic.com`을 가리킵니다.

186 188 

189<Warning>

190 이 페이지의 [Kubernetes](#kubernetes) 및 [Docker Compose](#docker-compose) 레시피는 `--capacity 4`를 사용합니다. `--use-anthropic-git-proxy` 또는 `CLAUDE_RUNNER_USE_GIT_PROXY=1`을 용량을 `1`로 변경하지 않고 이 중 하나에 추가하면 오케스트레이터가 이를 다시 시작할 때마다 러너가 시작 시 종료됩니다. `--capacity 1`을 설정하고 병렬 처리를 위해 더 많은 복제본을 실행하세요. [러너가 종료될 때](#when-the-runner-exits)는 러너가 출력하는 라인을 보여줍니다.

191</Warning>

192 

187러너는 또한 등록할 때 Anthropic에 옵트인을 보고하며, 시작 시 `Registering as opted in to Anthropic-managed git (--use-anthropic-git-proxy)`를 출력합니다. 옵트인 보고에는 Claude Code v2.1.267 이상이 필요하며, 이전 버전은 플래그를 수락하지만 이를 보고하거나 해당 라인을 출력하지 않습니다. 옵트인된 러너의 각 세션은 Anthropic 관리 git 또는 세션별 프록시 URL을 사용합니다. 세션이 세션별 프록시 URL을 사용할 때 러너는 그렇게 하는 것을 나타내는 `[runner:warn]` 라인 하나를 기록합니다.193러너는 또한 등록할 때 Anthropic에 옵트인을 보고하며, 시작 시 `Registering as opted in to Anthropic-managed git (--use-anthropic-git-proxy)`를 출력합니다. 옵트인 보고에는 Claude Code v2.1.267 이상이 필요하며, 이전 버전은 플래그를 수락하지만 이를 보고하거나 해당 라인을 출력하지 않습니다. 옵트인된 러너의 각 세션은 Anthropic 관리 git 또는 세션별 프록시 URL을 사용합니다. 세션이 세션별 프록시 URL을 사용할 때 러너는 그렇게 하는 것을 나타내는 `[runner:warn]` 라인 하나를 기록합니다.

188 194 

195<h4 id="trust-a-private-certificate-authority-with-anthropic-managed-git">

196 Anthropic 관리 git으로 개인 인증 기관 신뢰

197</h4>

198 

199이 섹션은 세션이 Anthropic 관리 git을 사용하는 러너의 환경에서 `GIT_SSL_CAINFO` 또는 `GIT_SSL_NO_VERIFY`를 설정한 경우에 적용됩니다. 설명하는 처리에는 러너가 Claude Code v2.1.283 이상을 실행해야 합니다.

200 

201러너의 git이 TLS 검사 프록시가 서명하는 개인 인증 기관(CA)과 같은 개인 인증 기관을 신뢰해야 하는 경우 일반적인 접근 방식은 다음과 같이 작동합니다:

202 

203* **시스템 인증서 저장소**: 러너 호스트의 시스템 인증서 저장소에 CA를 설치하면 git은 변수 없이 신뢰합니다.

204* **`GIT_SSL_CAINFO`**: CA의 PEM 파일로 설정하세요(예: `GIT_SSL_CAINFO=/etc/ssl/corp-ca.pem`).

205* **`GIT_SSL_NO_VERIFY`**: 재서명 프록시 뒤에서는 도움이 되지 않습니다. 러너의 자신의 클론은 Anthropic 관리 git을 통해 변수가 설정된 경우에도 인증서를 확인하므로 git이 다른 두 접근 방식 중 하나를 통해 CA를 신뢰할 때까지 해당 클론이 실패합니다.

206 

207세션의 토큰을 Anthropic 관리 git으로 전달하는 git 연결의 경우 러너는 두 변수를 다음과 같이 적용합니다. [`command` 훅](/docs/ko/self-hosted-environments-configuration#command)은 세션의 환경으로 시작하므로 세션 내부의 git이 얻는 것을 얻습니다:

208 

209* **`GIT_SSL_CAINFO`**: git이 Anthropic 관리 git에 대해 확인하는 것은 git이 실행되는 위치에 따라 다릅니다:

210 * **러너의 자신의 클론 및 페치**: 변수 없이 실행되고 러너가 작성하는 세션별 인증서 파일에 대해 Anthropic 관리 git을 확인합니다. 해당 파일은 러너 호스트의 시스템 CA 번들과 파일의 인증서를 보유합니다.

211 * **세션 내부의 git**: 변수 대신 파일을 이름으로 지정하는 `http.sslCAInfo` 구성을 얻고, Anthropic 관리 git을 세션별 파일에 대해 확인하는 `http.<url>.sslCAInfo` 항목을 얻습니다.

212 * **`checkout` 및 `post-session` 훅**: 변수를 변경하지 않고 상속합니다.

213* **`GIT_SSL_NO_VERIFY`**: 어떤 인증서 확인이 꺼져 있는지는 git이 실행되는 위치에 따라 다릅니다:

214 * **러너의 자신의 클론 및 페치**: 변수 없이 실행되고 제시된 인증서를 확인합니다.

215 * **세션 내부의 git**: 변수 대신 `http.sslVerify=false` 구성을 얻으므로 다른 호스트에 대한 확인이 꺼져 있습니다. 또한 Anthropic 관리 git에 대한 확인을 유지하는 `http.<url>.sslVerify=true` 항목을 얻습니다.

216 * **`checkout` 및 `post-session` 훅**: 세션이 Anthropic 관리 git에 리포지토리를 가지고 있을 때 변수 대신 `http.sslVerify=false` 구성을 얻습니다. 또한 Anthropic 관리 git에 대한 확인을 유지하는 `http.<url>.sslVerify=true` 항목을 얻습니다.

217 

218세션별 인증서 파일은 러너 호스트의 `/etc/ssl/certs/ca-certificates.crt` 또는 `/etc/pki/tls/certs/ca-bundle.crt`에서 시스템 CA 번들이 필요합니다. 또한 러너의 사용자가 읽을 수 있고, PEM `CERTIFICATE` 블록을 보유하며, 최대 1 MiB인 `GIT_SSL_CAINFO` 파일이 필요합니다. 러너가 세션별 파일을 빌드할 수 없으면 `did not build the certificate file`을 포함하는 `[runner:warn]` 라인과 이유를 기록합니다. 그러면 git은 Anthropic 관리 git에 대해 파일을 그대로 사용합니다. 라인이 이름을 지정하는 것을 수정하세요.

219 

220Anthropic 관리 git을 사용하는 각 세션에 대해 러너는 `governed git: GIT_SSL_CAINFO is set` 또는 `governed git: GIT_SSL_NO_VERIFY is set`로 시작하는 `[runner:warn]` 라인도 기록합니다. 라인은 러너가 자신의 git, 세션 내부의 git, 수명 주기 훅에 대해 해당 변수로 수행한 작업을 나타냅니다. 변경해야 할 사항이 있는지 여부로 끝납니다.

221 

189<h3 id="rewrite-git-urls-for-private-networks">222<h3 id="rewrite-git-urls-for-private-networks">

190 개인 네트워크에 대한 git URL 다시 쓰기223 개인 네트워크에 대한 git URL 다시 쓰기

191</h3>224</h3>


203 236 

204Anthropic은 사전 빌드된 러너 이미지를 게시하지 않습니다. `claude` 바이너리 주위에 자신의 이미지를 빌드하고, 리포지토리가 필요로 하는 모든 도구 체인을 계층화하세요: 언어 런타임, 컴파일러, 패키지 관리자, [MCP](/docs/ko/mcp) 사이드카.237Anthropic은 사전 빌드된 러너 이미지를 게시하지 않습니다. `claude` 바이너리 주위에 자신의 이미지를 빌드하고, 리포지토리가 필요로 하는 모든 도구 체인을 계층화하세요: 언어 런타임, 컴파일러, 패키지 관리자, [MCP](/docs/ko/mcp) 사이드카.

205 238 

206아래 레시피는 `--capacity 4`를 사용하므로 하나의 컨테이너는 동일한 잠긴 소유자의 최대 4개의 동시 세션을 제공합니다. 이는 [강화 섹션](#harden-your-deployment)의 세션별 컨테이너 격리를 제공하지 않습니다: 환경을 프로덕션 시스템에 연결하기 전에 레시피를 `--capacity 1`로 실행하여 세션당 하나의 컨테이너를 사용하거나 [온디맨드 러너](/docs/ko/self-hosted-environments-configuration#on-demand-runners)를 사용하세요. 이는 또한 환경 시크릿을 세션 실행 호스트에서 벗어나게 유지합니다.239아래 레시피는 `--capacity 4`를 사용하므로 하나의 컨테이너는 동일한 잠긴 소유자의 최대 4개의 동시 세션을 제공합니다. 이는 [강화 섹션](#harden-your-deployment)의 세션별 컨테이너 격리를 제공하지 않습니다: 환경을 프로덕션 시스템에 연결하기 전에 레시피를 `--capacity 1`로 실행하여 세션당 하나의 컨테이너를 사용하거나 [온디맨드 러너](/docs/ko/self-hosted-environments-configuration#on-demand-runners)를 사용하세요. 이는 또한 환경 시크릿을 세션 실행 호스트에서 벗어나게 유지합니다. 이 레시피 중 하나에 [Anthropic git 프록시](#use-the-anthropic-git-proxy)를 추가하면 `--capacity`를 `1`로 변경하세요.

207 240 

208이 Dockerfile은 최소한의 시작점입니다:241이 Dockerfile은 최소한의 시작점입니다:

209 242 


338 371 

339아래 Compose 서비스는 종료될 때마다 러너를 재시작합니다. 이는 충돌과 드레인 후 정상 종료를 모두 다룹니다. Docker 재시작 정책은 쓰기 가능한 계층이 그대로 있는 동일한 컨테이너를 재시작하므로 러너는 [강화 태세](#harden-your-deployment)가 권장하는 새로운 파일 시스템이 아닌 재사용된 파일 시스템에서 돌아옵니다. 평가를 위해 이 레시피를 사용하고, 프로덕션의 경우 실행당 컨테이너를 재생성하거나 이를 수행하는 오케스트레이터를 사용하세요.372아래 Compose 서비스는 종료될 때마다 러너를 재시작합니다. 이는 충돌과 드레인 후 정상 종료를 모두 다룹니다. Docker 재시작 정책은 쓰기 가능한 계층이 그대로 있는 동일한 컨테이너를 재시작하므로 러너는 [강화 태세](#harden-your-deployment)가 권장하는 새로운 파일 시스템이 아닌 재사용된 파일 시스템에서 돌아옵니다. 평가를 위해 이 레시피를 사용하고, 프로덕션의 경우 실행당 컨테이너를 재생성하거나 이를 수행하는 오케스트레이터를 사용하세요.

340 373 

374Docker는 계속 종료되는 컨테이너를 재시작하기 전에 더 오래 기다리며, 상한선까지 도달합니다. 따라서 시작할 수 없는 러너는 이 레시피에서 타이트 루프로 계속 재시작되지 않습니다. [러너가 종료될 때](#when-the-runner-exits)는 그런 일이 발생할 때 확인할 사항을 설명합니다.

375 

341```yaml theme={null}376```yaml theme={null}

342services:377services:

343 claude-runner:378 claude-runner:


451 486 

452각 세션의 자식 Claude Code 프로세스는 러너의 자신의 바이너리를 실행하고, 러너는 생성하는 세션 내에서 자동 업데이트를 끕니다. 따라서 모든 세션은 호스트에 설치하거나 이미지에 빌드한 버전을 실행합니다. 호스트 수준 업데이트는 러너가 다음 번에 시작할 때 적용됩니다.487각 세션의 자식 Claude Code 프로세스는 러너의 자신의 바이너리를 실행하고, 러너는 생성하는 세션 내에서 자동 업데이트를 끕니다. 따라서 모든 세션은 호스트에 설치하거나 이미지에 빌드한 버전을 실행합니다. 호스트 수준 업데이트는 러너가 다음 번에 시작할 때 적용됩니다.

453 488 

489세션이 사용하는 모델은 실행 중인 Claude Code 버전보다 최신 Claude Code 버전이 필요할 수 있습니다. 그러면 서버는 해당 모델에 대한 요청을 [Claude Code does not support this model](/docs/ko/errors#claude-code-does-not-support-this-model)로 거부합니다. 버전을 고정하기 전에 세션이 사용하는 모든 모델에 대해 [모델이 필요로 하는 Claude Code 버전](/docs/ko/model-config#available-models)을 확인하세요.

490 

454* **플릿을 한 버전으로 유지하려면**: 이미지를 고정된 버전으로 빌드하거나 베어 호스트에 특정 버전을 설치하고 [자동 업데이트를 비활성화](/docs/ko/setup#disable-auto-updates)하세요.491* **플릿을 한 버전으로 유지하려면**: 이미지를 고정된 버전으로 빌드하거나 베어 호스트에 특정 버전을 설치하고 [자동 업데이트를 비활성화](/docs/ko/setup#disable-auto-updates)하세요.

455* **업그레이드하려면**: 새로운 버전을 설치하거나 이미지를 다시 빌드한 다음 러너를 재시작하세요.492* **업그레이드하려면**: 새로운 버전을 설치하거나 이미지를 다시 빌드한 다음 러너를 재시작하세요.

456* **플러그인**: 플러그인 마켓플레이스도 자동 업데이트되지 않습니다. 바이너리가 고정된 상태로 유지되는 동안 플러그인이 자동 업데이트되도록 하려면 러너의 환경에서 `FORCE_AUTOUPDATE_PLUGINS=1`을 설정하세요.493* **플러그인**: 플러그인 마켓플레이스도 자동 업데이트되지 않습니다. 바이너리가 고정된 상태로 유지되는 동안 플러그인이 자동 업데이트되도록 하려면 러너의 환경에서 `FORCE_AUTOUPDATE_PLUGINS=1`을 설정하세요.


554 591 

555각 세션의 자식 프로세스는 별도의 디버그 로그를 작성합니다. 실패 시 러너는 로그의 꼬리를 claude.ai/code의 세션과 함께 표시합니다. [`--remove-session-state`](/docs/ko/self-hosted-environments-reference#runner-cli-flags)로 러너를 시작하지 않은 경우 실패한 세션의 로그를 디스크에 유지하고 러너 로그에서 해당 경로를 인쇄합니다.592각 세션의 자식 프로세스는 별도의 디버그 로그를 작성합니다. 실패 시 러너는 로그의 꼬리를 claude.ai/code의 세션과 함께 표시합니다. [`--remove-session-state`](/docs/ko/self-hosted-environments-reference#runner-cli-flags)로 러너를 시작하지 않은 경우 실패한 세션의 로그를 디스크에 유지하고 러너 로그에서 해당 경로를 인쇄합니다.

556 593 

594<h3 id="when-the-runner-exits">

595 러너가 종료될 때

596</h3>

597 

598[온디맨드 러너](/docs/ko/self-hosted-environments-configuration#on-demand-runners)를 다시 시작하지 마세요. 해당 작업 주문은 일회용입니다. 시작 직후에 종료되는 러너는 다른 이유로 종료되는 러너와 다르게 처리해야 합니다.

599 

600* **정상 종료**: 러너가 세션을 완료하고 드레인했거나, 은퇴 시간에 도달했거나, 중지하도록 지시받았습니다. 환경이 다시 용량을 가지도록 다시 시작하세요. [러너 수명 주기](/docs/ko/self-hosted-environments#runner-lifecycle)는 이러한 종료를 설명합니다.

601* **실패한 시작**: 러너가 주어진 구성 또는 호스트로 시작할 수 없으므로 시작 후 몇 초 후에 종료되며, 다시 시작할 때마다 동일한 방식으로 종료됩니다. 더 빠르게 다시 시작하는 것은 도움이 되지 않습니다. 누군가가 출력을 읽고 원인을 수정해야 합니다.

602 

603러너가 종료될 때마다 다시 시작하도록 감독자를 구성하고, 러너가 시작 직후에 계속 종료될 때 재시작 사이에 더 오래 기다리고, 그것이 계속 발생할 때 누군가에게 알리세요.

604 

605<h4 id="recognize-a-failed-start">

606 실패한 시작 인식

607</h4>

608 

609러너가 시작할 수 없을 때 이유를 말하는 라인을 인쇄한 다음 종료됩니다. 대부분의 원인에 대해 라인에는 `[runner:fatal]`이 포함됩니다. 일부 원인의 경우 라인은 대신 `error:`로 시작합니다. 여기에는 러너가 플래그를 구문 분석할 수 없거나, 환경 시크릿을 읽을 수 없거나, 기본 디렉토리를 생성하거나 쓸 수 없을 때가 포함됩니다. 다음 라인은 `--help`를 가리킵니다.

610 

611대부분의 로그 라인은 타임스탬프와 `[self-hosted-runner]`로 시작하며, 아래 샘플은 이를 생략합니다. 예를 들어, Anthropic git 프록시와 1보다 큰 용량으로 시작된 러너는 다음과 같은 라인을 인쇄합니다:

612 

613```text theme={null}

614[runner:fatal] --use-anthropic-git-proxy requires --capacity 1 (the proxy URL is per-session and linked worktrees share origin). Omit --use-anthropic-git-proxy or set --capacity 1.

615```

616 

617러너의 표준 출력 및 표준 오류, 플랫폼의 컨테이너 로그, 또는 [`--log-file`](/docs/ko/self-hosted-environments-reference#runner-cli-flags)로 설정한 파일에서 라인을 찾으세요. 러너는 로그 파일을 열기 전에 `error:` 라인을 인쇄하므로 [문제 해결](#troubleshooting)에서 언급한 대로 터미널 또는 컨테이너 로그에서 찾으세요.

618 

619실패한 시작을 읽을 때 이것들도 도움이 됩니다:

620 

621* **라인이 없음**: 호스트가 종료하는 러너는 둘 다 인쇄하지 않습니다. 출력이 `[runner:fatal]` 라인이나 `error:` 라인 없이 끝나면 호스트 또는 오케스트레이터가 프로세스를 중지했는지 확인하세요. 예를 들어 메모리 제한을 초과했을 수 있습니다.

622* **종료 코드**: 러너는 모든 시작에서 반복되는 오류에 대해 종료 코드를 따로 설정하지 않습니다. 지원되지 않는 플래그 조합과 같은 구성 오류와 API가 러너 자체의 재시도를 통해 도달할 수 없는 것과 같이 자체적으로 해결될 수 있는 실패에 대해 동일한 코드로 종료됩니다. 더 오래 기다릴 결정을 러너가 얼마나 빨리 종료되었는지에 따라 기반하고, 러너의 출력을 읽어 이유를 알아보세요.

623* **건강해 보이는 환경**: 일부 시작 단계는 러너가 환경에 등록한 후에 실행됩니다. 예를 들어 [`--configure-git`](#let-the-runner-configure-git) 및 Anthropic git 프록시의 자격증명 설정입니다. 이러한 단계 중 하나가 실패하면 환경은 프로세스가 종료된 후 몇 분 동안 해당 러너를 계속 나열할 수 있으며, **클라우드 환경** 페이지는 **건강함**을 읽을 수 있지만 러너는 작업을 선택하지 않습니다. 건강해 보이는 환경에서 세션이 대기 중 상태로 유지되면 감독자가 러너를 다시 시작하는지 확인하세요.

624 

625<h4 id="restart-with-a-wait-that-grows">

626 증가하는 대기로 다시 시작

627</h4>

628 

629증가하는 대기를 얻는 방법은 감독자에 따라 다릅니다.

630 

631* **Kubernetes**: 이 페이지의 [배포](#kubernetes)는 변경이 필요하지 않습니다. 컨테이너가 종료된 후 kubelet은 기본적으로 컨테이너를 다시 시작하기 전에 기다리며, 각 재시작에서 대기가 천장까지 증가합니다. 컨테이너가 한동안 종료되지 않고 실행된 후 대기가 다시 시작됩니다.

632 

633 kubelet은 컨테이너가 짧은 시간만 실행되었을 때 정상 종료 후에도 동일한 대기를 적용합니다. 자주 드레인하는 러너는 따라서 `CrashLoopBackOff` 상태도 표시할 수 있으므로 러너가 시작할 수 없다고 결론 내리기 전에 출력을 읽으세요. 아래 명령은 배포의 한 pod에서 마지막 실행의 출력을 읽습니다:

634 

635 ```bash theme={null}

636 kubectl logs --previous -n claude-runners deploy/claude-runner

637 ```

638 

639 마지막 실행이 실패한 시작이었을 때 `[runner:fatal]` 또는 `error:` 라인은 출력의 마지막 라인 중에 있습니다. 다른 pod의 마지막 실행을 읽으려면 `deploy/claude-runner` 대신 해당 pod의 이름을 지정하세요.

640* **Docker 및 Docker Compose**: 이 페이지의 [Compose 레시피](#docker-compose)는 변경이 필요하지 않습니다. `restart: always`를 사용하면 Docker는 계속 종료되는 컨테이너의 각 재시작 전에 더 오래 기다리며, 천장까지 증가합니다. 아래 명령에서 `<container>`를 컨테이너의 이름으로 바꾸세요. 이는 Docker가 컨테이너를 재시작한 횟수를 읽습니다:

641 

642 ```bash theme={null}

643 docker inspect --format '{{.RestartCount}}' <container>

644 ```

645 

646 명령은 숫자를 인쇄합니다. 계속 증가하는 숫자는 Docker가 러너를 계속 재시작한다는 의미입니다.

647* **systemd 단위**: 기본적으로 systemd는 모든 재시작 전에 동일한 `RestartSec`을 기다리며 이를 연장하지 않으므로 `Restart=always`가 있는 단위는 시작할 수 없는 러너를 동일한 간격으로 재시작합니다. 시작이 단위의 시작 속도 제한에 도달할 만큼 빠르게 오면 기본적으로 10초 내 5회 시작, systemd는 단위 재시작을 중지합니다. 단위는 누군가가 다시 시작할 때까지 중지된 상태로 유지되며, systemd는 속도 제한의 간격이 지나거나 `systemctl reset-failed` 후에 이를 허용합니다. `RestartSec`은 모든 재시작에 적용되므로 더 긴 값은 정상 종료 후 재시작도 지연합니다. 두 가지를 균형 있게 하는 값을 선택하고 단위의 재시작 횟수에 대해 경고하세요.

648* **셸 루프 또는 자신의 감독자**: 동일한 규칙을 직접 적용하세요. 5초의 대기로 시작하세요. 1분 이내에 끝난 각 실행 후 다음 재시작을 위해 대기를 두 배로 늘리세요. 최대 5분까지. 1분 이상 지속된 실행 후 5초로 돌아가세요.

649 

650<h4 id="check-why-the-runner-keeps-exiting">

651 러너가 계속 종료되는 이유 확인

652</h4>

653 

654러너가 연속으로 시작 직후에 여러 번 종료되었을 때 다시 시작하기 전에 이것들을 중지하고 확인하세요.

655 

656* **마지막 `[runner:fatal]` 또는 `error:` 라인**: 러너가 중지된 이유를 말합니다. [문제 해결](#troubleshooting)은 일반적인 원인을 나열합니다.

657* **플래그의 조합**: [Anthropic git 프록시](#use-the-anthropic-git-proxy)는 `--capacity 1`을 요구합니다. 이 페이지의 레시피는 더 높은 용량을 사용하므로 프록시를 추가할 때 이를 낮추세요.

658* **서비스의 환경이 도달할 수 있는 것**: 러너가 손으로 시작되고 감독자 아래에서 실패하면 사용자, 홈 디렉토리, `PATH`, 메모리 제한을 비교하세요. `--configure-git` 및 Anthropic git 프록시는 `PATH`에 git이 필요하고 쓰기 가능한 `~/.gitconfig`가 필요합니다.

659* **환경 시크릿**: 시크릿을 취소했거나 잘못 입력했으면 러너는 `RegisterRunner auth failed`를 포함하는 라인을 인쇄합니다.

660* **환경의 활동 탭**: 환경을 열고 **활동**을 선택하세요. 새 러너가 계속 나타나고 아무도 작업을 선택하지 않으면 감독자가 러너를 재시작합니다.

661 

662러너 호스트에서 안내 진단을 위해 [doctor 서브명령](#troubleshooting)을 실행하세요.

663 

557<h2 id="what’s-next">664<h2 id="what’s-next">

558 다음 단계665 다음 단계

559</h2>666</h2>

Details

105 </Step>105 </Step>

106</Steps>106</Steps>

107 107 

108러너는 활성 세션이 완료되면 설계상 종료됩니다. [러너 수명 주기](/docs/ko/self-hosted-environments#runner-lifecycle)를 참조하세요. 프로덕션의 경우, 종료 시 다시 시작하는 오케스트레이터 아래에 배포하세요. [프로덕션에 배포](/docs/ko/self-hosted-environments-deploy)를 참조하세요.108러너는 활성 세션이 완료되면 설계상 종료됩니다. [러너 수명 주기](/docs/ko/self-hosted-environments#runner-lifecycle)를 참조하세요. 프로덕션의 경우, 종료 시 다시 시작하는 오케스트레이터 아래에 배포하세요. [프로덕션에 배포](/docs/ko/self-hosted-environments-deploy) 및 [러너가 종료될 때](/docs/ko/self-hosted-environments-deploy#when-the-runner-exits)를 참조하세요.

109 109 

110<h2 id="send-a-follow-up-message-to-a-running-session">110<h2 id="send-a-follow-up-message-to-a-running-session">

111 실행 중인 세션에 후속 메시지 전송111 실행 중인 세션에 후속 메시지 전송

Details

80 SCM 커넥터 플래그80 SCM 커넥터 플래그

81</h3>81</h3>

82 82 

83오케스트레이터는 Anthropic의 제어 평면에 대한 상시 WebSocket 연결을 유지할 수 있으므로 저장소 선택기 및 분기 또는 ref 리졸버와 같은 호스팅된 사전 세션 흐름이 네트워크 내부에서만 라우팅 가능한 GitHub Enterprise Server 호스트에 도달할 수 있습니다. 커넥터는 `--scm-connector-host`를 설정하지 않으면 꺼져 있습니다.83SCM 커넥터를 사용할 수 없으므로 이 섹션의 플래그를 설정하지 않은 상태로 두세요. `--scm-connector-host`를 설정하면 연결이 열리지 않으며 오케스트레이터는 계속 재시도합니다. 러너는 여전히 세션 큐로 시작합니다.

84 

85커넥터는 오케스트레이터에서 Anthropic의 제어 평면으로의 상시 WebSocket 연결입니다. 저장소 선택기 및 분기 또는 ref 리졸버와 같은 호스팅된 사전 세션 흐름이 네트워크 내부에서만 라우팅 가능한 GitHub Enterprise Server 호스트에 도달할 수 있도록 설계되었습니다. GitHub Enterprise Server 페이지의 [네트워크 요구 사항](/docs/ko/github-enterprise-server#network-requirements)을 참조하여 이러한 흐름에 필요한 사항을 확인하세요.

84 86 

85| 플래그 | 기본값 | 설명 |87| 플래그 | 기본값 | 설명 |

86| :- | :- | :- |88| :- | :- | :- |

87| `--scm-connector-host <host[:port]>` | 설정되지 않음 | 요청을 전달할 GitHub Enterprise Server 호스트명입니다. 포트는 기본값이 `443`입니다. 이 플래그를 설정하면 커넥터가 활성화됩니다. |89| `--scm-connector-host <host[:port]>` | 설정되지 않음 | 요청을 전달할 GitHub Enterprise Server 호스트명입니다. 포트는 기본값이 `443`입니다. |

88| `--scm-connector-id <n>` | `--scm-connector-host`와 필수 | 조직의 GitHub Enterprise Server 연결의 숫자 ID입니다. 커넥터를 활성화할 때 Anthropic 계정 팀에 문의하여 값을 얻으세요. |90| `--scm-connector-id <n>` | `--scm-connector-host`와 필수 | 조직의 GitHub Enterprise Server 연결의 숫자 ID입니다. |

89| `--scm-connector-provider <slug>` | `ghe` | 공급자를 식별하는 경로 세그먼트이며, `^[a-z0-9-]{1,32}$`와 일치합니다. |91| `--scm-connector-provider <slug>` | `ghe` | 공급자를 식별하는 경로 세그먼트이며, `^[a-z0-9-]{1,32}$`와 일치합니다. |

90| `--scm-connector-ca-file <path>` | 설정되지 않음 | GitHub Enterprise Server 호스트에 대한 TLS 연결을 위한 추가 CA 번들(PEM 형식)입니다. |92| `--scm-connector-ca-file <path>` | 설정되지 않음 | GitHub Enterprise Server 호스트에 대한 TLS 연결을 위한 추가 CA 번들(PEM 형식)입니다. |

91| `--scm-connector-host-rewrite <from>=<to_host:to_port>` | 설정되지 않음 | 엔드투엔드 테스트 전용: Host 헤더 및 TLS SNI를 `--scm-connector-host`로 유지하면서 TCP 연결을 리디렉션합니다. |93| `--scm-connector-host-rewrite <from>=<to_host:to_port>` | 설정되지 않음 | 엔드투엔드 테스트 전용: Host 헤더 및 TLS SNI를 `--scm-connector-host`로 유지하면서 TCP 연결을 리디렉션합니다. |

92 94 

93커넥터는 오케스트레이터의 기존 환경 비밀로 인증하고 자동으로 다시 연결합니다: 끊어진 연결에서 지수 백오프를 사용하거나, 다른 오케스트레이터 복제본이 이미 이를 보유하고 있기 때문에 제어 평면이 연결을 닫을 때 고정 30초 지연입니다.95각 연결 시도 시 오케스트레이터는 기존 환경 비밀을 전송하며, 30초 플러스 지터로 제한되는 지수 백오프를 사용하여 자동으로 재시도합니다.

94 96 

95<h2 id="environment-variable-only-settings">97<h2 id="environment-variable-only-settings">

96 환경 변수 전용 설정98 환경 변수 전용 설정

Details

595| [`agent`](#agent) | 모든 세션을 명명된 [subagent](/docs/ko/sub-agents)로 시작하고 프롬프트, 도구, 모델 포함 | 에이전트, 세션, 워크트리 | 모든 파일 |595| [`agent`](#agent) | 모든 세션을 명명된 [subagent](/docs/ko/sub-agents)로 시작하고 프롬프트, 도구, 모델 포함 | 에이전트, 세션, 워크트리 | 모든 파일 |

596| [`agentPushNotifEnabled`](#agentpushnotifenabled) | Claude가 결정할 때 [휴대폰으로 푸시 알림](/docs/ko/remote-control#mobile-push-notifications)을 보낼 수 있도록 허용 | 원격, 데스크톱, 알림 | 모든 파일 |596| [`agentPushNotifEnabled`](#agentpushnotifenabled) | Claude가 결정할 때 [휴대폰으로 푸시 알림](/docs/ko/remote-control#mobile-push-notifications)을 보낼 수 있도록 허용 | 원격, 데스크톱, 알림 | 모든 파일 |

597| [`allowAllClaudeAiMcps`](#allowallclaudeaimcps) | Claude Code가 배포된 [`managed-mcp.json`](/docs/ko/managed-mcp#exclusive-control-with-managed-mcp-json)과 함께 자체적으로 가져오는 [claude.ai 커넥터](/docs/ko/mcp) 로드 | MCP | 관리됨 |597| [`allowAllClaudeAiMcps`](#allowallclaudeaimcps) | Claude Code가 배포된 [`managed-mcp.json`](/docs/ko/managed-mcp#exclusive-control-with-managed-mcp-json)과 함께 자체적으로 가져오는 [claude.ai 커넥터](/docs/ko/mcp) 로드 | MCP | 관리됨 |

598| [`allowClaudeInChromeWithManagedMcp`](#allowclaudeinchromewithmanagedmcp) | 배포된 [`managed-mcp.json`](/docs/ko/managed-mcp#exclusive-control-with-managed-mcp-json)과 함께 기본 제공 [Claude in Chrome](/docs/ko/chrome) 서버가 실행되도록 허용 | MCP | 관리됨 |

598| [`allowedChannelPlugins`](#allowedchannelplugins) | 메시지를 푸시할 수 있는 [채널 플러그인](/docs/ko/channels#restrict-which-channel-plugins-can-run)의 기본 허용 목록 교체 | 플러그인 및 기술 | 관리됨 |599| [`allowedChannelPlugins`](#allowedchannelplugins) | 메시지를 푸시할 수 있는 [채널 플러그인](/docs/ko/channels#restrict-which-channel-plugins-can-run)의 기본 허용 목록 교체 | 플러그인 및 기술 | 관리됨 |

599| [`allowedHttpHookUrls`](#allowedhttphookurls) | [HTTP hooks](/docs/ko/hooks)가 대상으로 할 수 있는 URL 제한 | 훅 및 자동화 | 모든 파일 |600| [`allowedHttpHookUrls`](#allowedhttphookurls) | [HTTP hooks](/docs/ko/hooks)가 대상으로 할 수 있는 URL 제한 | 훅 및 자동화 | 모든 파일 |

600| [`allowedMcpServers`](#allowedmcpservers) | 사용자가 추가할 수 있는 [MCP 서버](/docs/ko/mcp) 허용 목록 | MCP | 모든 파일 |601| [`allowedMcpServers`](#allowedmcpservers) | 사용자가 추가할 수 있는 [MCP 서버](/docs/ko/mcp) 허용 목록 | MCP | 모든 파일 |


3064</h4>3065</h4>

3065 3066 

3066* 여기의 값은 셸에서 내보낸 동일한 변수를 덮어쓰며, 둘 이상의 설정 파일이 변수를 설정할 때 [가장 높은 우선순위](/docs/ko/settings#settings-precedence)가 적용됩니다. [Claude Code가 `env`에서 무시하는 변수](#variables-claude-code-ignores-in-env)는 프로젝트 및 로컬 설정의 예외를 나열합니다.3067* 여기의 값은 셸에서 내보낸 동일한 변수를 덮어쓰며, 둘 이상의 설정 파일이 변수를 설정할 때 [가장 높은 우선순위](/docs/ko/settings#settings-precedence)가 적용됩니다. [Claude Code가 `env`에서 무시하는 변수](#variables-claude-code-ignores-in-env)는 프로젝트 및 로컬 설정의 예외를 나열합니다.

3068* Claude Desktop 앱 또는 [자체 호스팅 환경](/docs/ko/self-hosted-environments) 러너가 세션을 시작할 때, 빌드하는 시작 환경이 대신 우선합니다. Claude Code는 시작 환경이 이미 설정한 변수에 대해 설정 파일의 `env` 값을 무시합니다. [디버그 로그](/docs/ko/debug-your-config)는 무시된 각 변수의 이름을 지정합니다.

3067* 셸 내보내기를 취소하려면 변수를 `""`로 설정합니다. Claude Code는 공 값을 공급자 선택에 대해 설정되지 않은 것으로 취급하며, 서브프로세스는 공 값을 상속합니다.3069* 셸 내보내기를 취소하려면 변수를 `""`로 설정합니다. Claude Code는 공 값을 공급자 선택에 대해 설정되지 않은 것으로 취급하며, 서브프로세스는 공 값을 상속합니다.

3068* `NO_COLOR` 및 `FORCE_COLOR`는 여기에서 설정하면 서브프로세스에만 도달합니다. Claude Code 자체 인터페이스 색상을 변경하려면 `claude`를 시작하기 전에 셸에서 설정합니다.3070* `NO_COLOR` 및 `FORCE_COLOR`는 여기에서 설정하면 서브프로세스에만 도달합니다. Claude Code 자체 인터페이스 색상을 변경하려면 `claude`를 시작하기 전에 셸에서 설정합니다.

3069* 여기의 값은 설정 파일의 일반 텍스트이며 Claude Code가 시작하는 모든 서브프로세스에 도달합니다. 회전하는 OTLP 베어러 토큰의 경우 [`otelHeadersHelper`](#otelheadershelper)를 사용합니다. API 자격 증명의 경우 [`apiKeyHelper`](#apikeyhelper)를 사용합니다.3071* 여기의 값은 설정 파일의 일반 텍스트이며 Claude Code가 시작하는 모든 서브프로세스에 도달합니다. 회전하는 OTLP 베어러 토큰의 경우 [`otelHeadersHelper`](#otelheadershelper)를 사용합니다. API 자격 증명의 경우 [`apiKeyHelper`](#apikeyhelper)를 사용합니다.


5157 5159 

5158[`allowedMcpServers`](#allowedmcpservers) 및 [`deniedMcpServers`](#deniedmcpservers)는 여전히 이 키가 로드하는 커넥터에 적용됩니다. `managed-mcp.json`을 포함하는 호스트(예: 자체 호스팅 러너)의 [클라우드 세션](/docs/ko/claude-code-on-the-web)에 전달된 커넥터는 억제된 상태로 유지됩니다. [관리형 세트와 함께 claude.ai 커넥터 허용](/docs/ko/managed-mcp#allow-claude-ai-connectors-alongside-the-managed-set)을 참조하세요.5160[`allowedMcpServers`](#allowedmcpservers) 및 [`deniedMcpServers`](#deniedmcpservers)는 여전히 이 키가 로드하는 커넥터에 적용됩니다. `managed-mcp.json`을 포함하는 호스트(예: 자체 호스팅 러너)의 [클라우드 세션](/docs/ko/claude-code-on-the-web)에 전달된 커넥터는 억제된 상태로 유지됩니다. [관리형 세트와 함께 claude.ai 커넥터 허용](/docs/ko/managed-mcp#allow-claude-ai-connectors-alongside-the-managed-set)을 참조하세요.

5159 5161 

5162<h3 id="allowclaudeinchromewithmanagedmcp">

5163 `allowClaudeInChromeWithManagedMcp`

5164</h3>

5165 

5166배포된 `managed-mcp.json`과 함께 기본 제공 [Claude in Chrome](/docs/ko/chrome) 서버를 실행합니다. 이 키가 없으면 배포된 `managed-mcp.json`이 터미널 세션에서 Claude in Chrome을 차단합니다. Claude Code v2.1.282 이상이 필요합니다.

5167 

5168* **범위**: [`Managed`](#scopes), 기기의 자체 관리형 설정에서만: MDM 배포 plist 또는 HKLM 레지스트리 키, 또는 시스템 `managed-settings.json` 파일. Claude Code는 서버 관리형 설정, 사용자 쓰기 가능 HKCU 레지스트리, 사용자 또는 프로젝트 설정에서는 무시합니다.

5169* **유형**: Boolean

5170 * `true`: 기본 제공 Claude in Chrome 서버는 배포된 `managed-mcp.json`과 함께 실행할 수 있습니다

5171 * `false`: 배포된 `managed-mcp.json`이 터미널 세션에서 Claude in Chrome을 차단합니다

5172* **기본값**: `false`이므로 배포된 `managed-mcp.json`이 터미널 세션에서 Claude in Chrome을 차단합니다

5173 

5174```json managed-settings.json theme={null}

5175{

5176 "allowClaudeInChromeWithManagedMcp": true

5177}

5178```

5179 

5180`claude-in-chrome`에 대한 [`deniedMcpServers`](#deniedmcpservers) 항목은 이 키가 켜져 있어도 여전히 서버를 차단합니다. [관리형 세트와 함께 Claude in Chrome 허용](/docs/ko/managed-mcp#allow-claude-in-chrome-alongside-the-managed-set)을 참조하세요.

5181 

5160<h3 id="allowedmcpservers">5182<h3 id="allowedmcpservers">

5161 `allowedMcpServers`5183 `allowedMcpServers`

5162</h3>5184</h3>

5163 5185 

5164사용자가 추가할 수 있는 MCP 서버를 허용 목록에 추가합니다. Claude Code는 플러그인 서버, `--mcp-config`로 전달된 서버, claude.ai의 서버를 포함하여 정의된 모든 위치에서 항목과 일치하지 않는 모든 서버를 차단합니다.5186사용자가 추가할 수 있는 MCP 서버를 허용 목록에 추가합니다. Claude Code는 플러그인 서버, `--mcp-config`로 전달된 서버, claude.ai의 서버를 포함하여 정의된 모든 위치에서 항목과 일치하지 않는 모든 서버를 차단합니다.

5165 5187 

5166Chrome의 Claude, Claude Code가 실행 중인 [VS Code](/docs/ko/vs-code#the-built-in-ide-mcp-server) 또는 [JetBrains](/docs/ko/jetbrains#the-built-in-ide-mcp-server) IDE에 연결하는 `ide` 서버, CLI 자체가 구성하는 서버와 같은 기본 제공 서버는 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 프로세스 내 `type: "sdk"` 서버는 두 목록 모두에서 제외됩니다. [세션을 시작한 앱](/docs/ko/mcp#how-connectors-reach-claude-code)이 이들을 등록합니다.5188Chrome의 Claude, Claude Code가 실행 중인 [VS Code](/docs/ko/vs-code#the-built-in-ide-mcp-server) 또는 [JetBrains](/docs/ko/jetbrains#the-built-in-ide-mcp-server) IDE에 연결하는 `ide` 서버, CLI 자체가 구성하는 서버와 같은 기본 제공 서버는 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. Claude Code v2.1.268 이상에서 [Claude Tag](/docs/ko/claude-tag) 세션의 Slack 도구도 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 프로세스 내 `type: "sdk"` 서버는 두 목록 모두에서 제외됩니다. [세션을 시작한 앱](/docs/ko/mcp#how-connectors-reach-claude-code)이 이들을 등록합니다.

5167 5189 

5168조직이 제공하는 서버도 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 이 제외는 모든 [`managedMcpServers`](#managedmcpservers) 항목과 `${VAR}` 확장을 사용하지 않는 값을 가진 모든 [`managed-mcp.json`](/docs/ko/managed-mcp#exclusive-control-with-managed-mcp-json) 항목을 포함합니다. 전체 확인 순서는 [서버 평가 방법](/docs/ko/managed-mcp#how-a-server-is-evaluated)을 참조하세요. v2.1.259 이전에는 `managed-mcp.json`의 서버도 일치해야 했습니다.5190조직이 제공하는 서버도 허용 목록에서 제외되며, 거부 목록은 여전히 이들에게 적용됩니다. 이 제외는 모든 [`managedMcpServers`](#managedmcpservers) 항목과 `${VAR}` 확장을 사용하지 않는 값을 가진 모든 [`managed-mcp.json`](/docs/ko/managed-mcp#exclusive-control-with-managed-mcp-json) 항목을 포함합니다. 전체 확인 순서는 [서버 평가 방법](/docs/ko/managed-mcp#how-a-server-is-evaluated)을 참조하세요. v2.1.259 이전에는 `managed-mcp.json`의 서버도 일치해야 했습니다.

5169 5191 


6304 `disableSideloadFlags`6326 `disableSideloadFlags`

6305</h3>6327</h3>

6306 6328 

6307`--plugin-dir`, `--plugin-url`, `--agents`, `--mcp-config` CLI 플래그를 시작 시 거부하여 사용자가 [`strictKnownMarketplaces`](#strictknownmarketplaces)를 단일 실행으로 우회하는 데 사용할 수 없도록 합니다. Claude Code는 거부된 플래그의 이름을 지정하는 오류로 종료되며, 현재 데스크톱 앱의 [Cowork](/docs/ko/desktop) 로컬 세션을 포함하여 이러한 플래그로 CLI를 내부적으로 시작하는 표면에 동일한 검사를 적용합니다. [클라우드 세션](/docs/ko/claude-code-on-the-web)에서 Claude Code는 `--mcp-config`를 통해 서버가 제공한 MCP 서버를 삭제합니다(인프로세스 `type: "sdk"` 항목 제외). 세션을 시작합니다. Claude Code v2.1.193 이상이 필요합니다.6329`--plugin-dir`, `--plugin-url`, `--agents`, `--mcp-config` CLI 플래그를 시작 시 거부하여 사용자가 [`strictKnownMarketplaces`](#strictknownmarketplaces)를 단일 실행으로 우회하는 데 사용할 수 없도록 합니다. Claude Code는 거부된 플래그의 이름을 지정하는 오류로 종료되며, 현재 데스크톱 앱의 [Cowork](/docs/ko/desktop) 로컬 세션을 포함하여 이러한 플래그로 CLI를 내부적으로 시작하는 표면에 동일한 검사를 적용합니다. [클라우드 세션](/docs/ko/claude-code-on-the-web)에서 Claude Code는 세션을 시작하고 인프로세스 `type: "sdk"` 항목 및 [Claude Tag](/docs/ko/claude-tag) 세션의 Slack 도구를 제외한 모든 서버 제공 `--mcp-config` 항목을 삭제합니다. Claude Code v2.1.193 이상이 필요합니다.

6308 6330 

6309* **범위**: [`Managed`](#scopes)6331* **범위**: [`Managed`](#scopes)

6310* **유형**: Boolean6332* **유형**: Boolean

6311 * `true`: Claude Code는 시작 시 `--plugin-dir`, `--plugin-url`, `--agents`, `--mcp-config`를 거부하고 이름을 지정하는 오류로 종료됩니다. 단, 클라우드 세션에서는 `--mcp-config`를 통해 서버가 제공한 MCP 서버를 삭제합니다(인프로세스 `type: "sdk"` 항목 제외). 세션을 시작합니다.6333 * `true`: Claude Code는 시작 시 `--plugin-dir`, `--plugin-url`, `--agents`, `--mcp-config`를 거부하고 이름을 지정하는 오류로 종료됩니다. 클라우드 세션에서는 세션을 시작하고 인프로세스 `type: "sdk"` 항목 및 Claude Tag 세션의 Slack 도구를 제외한 모든 서버 제공 `--mcp-config` 항목을 삭제합니다.

6312 * `false`: Claude Code는 해당 플래그를 수락합니다.6334 * `false`: Claude Code는 해당 플래그를 수락합니다.

6313* **기본값**: `false`6335* **기본값**: `false`

6314 6336 


6322 6344 

6323동일한 검사는 [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/ko/env-vars#variables) 환경 변수에 명명된 플러그인 폴더를 포함합니다. 이는 Claude Code v2.1.280 이상이 필요합니다. 변수가 폴더의 이름을 지정하면 Claude Code는 동일한 오류로 종료되며, 오류는 변수를 설정 해제하도록 지시합니다.6345동일한 검사는 [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/ko/env-vars#variables) 환경 변수에 명명된 플러그인 폴더를 포함합니다. 이는 Claude Code v2.1.280 이상이 필요합니다. 변수가 폴더의 이름을 지정하면 Claude Code는 동일한 오류로 종료되며, 오류는 변수를 설정 해제하도록 지시합니다.

6324 6346 

6325클라우드 세션에서 Claude Code는 또한 서버 제공 중간 세션 MCP 업데이트를 무시합니다. 이는 클라우드 세션 구성 및 SDK `setMcpServers()` 호출 뒤의 경로이며, 이러한 세션에 도달합니다. 인프로세스 `type: "sdk"` 항목은 거기서도 면제됩니다. v2.1.239 이전에는 서버 제공 `--mcp-config`가 클라우드 세션이 시작되는 것을 차단했습니다.6347클라우드 세션에서 Claude Code는 또한 서버 제공 중간 세션 MCP 업데이트를 무시합니다. 이는 클라우드 세션 구성 및 SDK `setMcpServers()` 호출 뒤의 경로이며, 이러한 세션에 도달합니다. 인프로세스 `type: "sdk"` 항목 및 Claude Tag 세션의 Slack 도구는 거기서도 면제됩니다. v2.1.268 이전에는 이 삭제와 시작 삭제 모두 Claude Tag 세션의 Slack 도구를 제거했습니다. v2.1.239 이전에는 서버 제공 `--mcp-config`가 클라우드 세션이 시작되는 것을 차단했습니다.

6326 6348 

6327<h3 id="forceremotesettingsrefresh">6349<h3 id="forceremotesettingsrefresh">

6328 `forceRemoteSettingsRefresh`6350 `forceRemoteSettingsRefresh`

sub-agents.md +77 −79

Details

30 내장 subagent30 내장 subagent

31</h2>31</h2>

32 32 

33Claude Code에는 Claude가 적절할 때 자동으로 사용하는 내장 subagent가 포함되어 있습니다. 각각은 부모 대화의 권한을 상속합니다. 대부분은 제한된 도구 세트로 실행됩니다.33Claude Code에는 Claude가 적절할 때 자동으로 사용하는 내장 subagent가 포함되어 있습니다. 각각은 부모 대화의 권한 규칙을 상속합니다. 대부분은 제한된 도구 세트로 실행됩니다.

34 34 

35Explore와 Plan은 연구를 빠르고 저렴하게 유지하기 위해 CLAUDE.md 파일과 git 상태 스냅샷을 건너뜁니다. 다른 모든 내장 및 [사용자 정의 subagent](#configure-subagents)는 둘 다 로드합니다. 정의가 [`omitClaudeMd`](#supported-frontmatter-fields) 필드를 설정하여 사용자, 프로젝트 및 로컬 CLAUDE.md 파일을 건너뛰지 않는 한, subagent에 도달하는 항목의 전체 분석은 [startup에서 로드되는 항목](#what-loads-at-startup)을 참조하십시오.35Explore와 Plan은 연구를 빠르고 저렴하게 유지하기 위해 CLAUDE.md 파일과 git 상태 스냅샷을 건너뜁니다. 다른 모든 내장 및 [사용자 정의 subagent](#configure-subagents)는 둘 다 로드합니다. 정의가 [`omitClaudeMd`](#supported-frontmatter-fields) 필드를 설정하여 사용자, 프로젝트 및 로컬 CLAUDE.md 파일을 건너뛰지 않는 한, subagent에 도달하는 항목의 전체 분석은 [startup에서 로드되는 항목](#what-loads-at-startup)을 참조하십시오.

36 36 


180 180 

181프로젝트 서브에이전트는 현재 작업 디렉토리에서 위로 걸어가며 발견되므로, 거기서 저장소 루트까지의 모든 `.claude/agents/`가 스캔됩니다. 이러한 중첩된 디렉토리 중 하나 이상이 같은 `name`을 정의할 때, Claude Code는 작업 디렉토리에 가장 가까운 정의를 사용합니다.181프로젝트 서브에이전트는 현재 작업 디렉토리에서 위로 걸어가며 발견되므로, 거기서 저장소 루트까지의 모든 `.claude/agents/`가 스캔됩니다. 이러한 중첩된 디렉토리 중 하나 이상이 같은 `name`을 정의할 때, Claude Code는 작업 디렉토리에 가장 가까운 정의를 사용합니다.

182 182 

183`--add-dir` 또는 `/add-dir`로 디렉토리를 추가할 때, Claude Code는 프로젝트 서브에이전트와 함께 해당 `.claude/agents/` 폴더도 로드합니다. 어떤 다른 구성 유형이 `--add-dir`에서 로드되는지는 [추가 디렉토리](/docs/ko/permissions#additional-directories-grant-file-access-not-configuration)를 참조하세요. `--add-dir` 없이 프로젝트 간에 서브에이전트를 공유하려면 `~/.claude/agents/`를 사용하거나 [플러그인](/docs/ko/plugins/overview)을 사용하세요.183`--add-dir` 또는 `/add-dir`으로 디렉토리를 추가할 때, Claude Code는 프로젝트 서브에이전트와 함께 해당 `.claude/agents/` 폴더도 로드합니다. 어떤 다른 구성 유형이 `--add-dir`에서 로드되는지는 [추가 디렉토리](/docs/ko/permissions#additional-directories-grant-file-access-not-configuration)를 참조하세요. `--add-dir` 없이 프로젝트 간에 서브에이전트를 공유하려면 `~/.claude/agents/`를 사용하거나 [플러그인](/docs/ko/plugins/overview)을 사용하세요.

184 184 

185**사용자 서브에이전트** (`~/.claude/agents/`)는 모든 프로젝트에서 사용 가능한 개인 서브에이전트입니다.185**사용자 서브에이전트** (`~/.claude/agents/`)는 모든 프로젝트에서 사용 가능한 개인 서브에이전트입니다.

186 186 


802 - matcher: "Bash"802 - matcher: "Bash"

803 hooks:803 hooks:

804 - type: command804 - type: command

805 command: "./scripts/validate-command.sh $TOOL_INPUT"805 command: "./scripts/validate-command.sh"

806 PostToolUse:806 PostToolUse:

807 - matcher: "Edit|Write"807 - matcher: "Edit|Write"

808 hooks:808 hooks:


850}850}

851```851```

852 852 

853하이픈이 있는 매처 `db-agent`는 Claude Code v2.1.195 이상에서 정확히 일치합니다. 이전 버전에서는 고정되지 않은 정규식으로 평가되고 `prod-db-agent`와 같이 포함하는 모든 에이전트 유형에 대해서도 발생합니다. 이러한 버전에서는 `^db-agent$`로 고정하세요.

854 

855[훅](/docs/ko/hooks)에서 전체 훅 구성 형식을 참조하세요.853[훅](/docs/ko/hooks)에서 전체 훅 구성 형식을 참조하세요.

856 854 

857<h2 id="work-with-subagents">855<h2 id="work-with-subagents">

858 서브에이전트와 함께 작업하기856 서브에이전트로 작업하기

859</h2>857</h2>

860 858 

861<h3 id="understand-automatic-delegation">859<h3 id="understand-automatic-delegation">

862 자동 위임 이해하기860 자동 위임 이해하기

863</h3>861</h3>

864 862 

865Claude는 요청의 작업 설명, 서브에이전트 구성의 `description` 필드, 그리고 현재 컨텍스트를 기반으로 작업을 자동으로 위임합니다. 사전 예방적 위임을 장려하려면 서브에이전트의 설명 필드에 "use proactively"와 같은 문구를 포함하십시오.863Claude는 요청의 작업 설명, 서브에이전트 구성의 `description` 필드, 현재 컨텍스트를 기반으로 작업을 자동으로 위임합니다. 사전 예방적 위임을 장려하려면 서브에이전트의 설명 필드에 "use proactively"와 같은 문구를 포함하십시오.

866 864 

867설명은 간결하게 유지하십시오. Claude Code는 서브에이전트의 결합된 설명이 [15,000토큰 제한](/docs/ko/errors#agent-descriptions-are-over-the-15000-token-limit)을 초과할 때 시작 경고를 표시하며, 모든 서브에이전트를 계속 로드합니다.865설명은 간결하게 유지하십시오. Claude Code는 서브에이전트의 결합된 설명이 [15,000토큰 제한](/docs/ko/errors#agent-descriptions-are-over-the-15000-token-limit)을 초과할 때 시작 경고를 표시하며, 모든 서브에이전트를 계속 로드합니다.

868 866 


876 874 

877* **자연어**: 프롬프트에서 서브에이전트의 이름을 지정하면 Claude가 위임 여부를 결정합니다.875* **자연어**: 프롬프트에서 서브에이전트의 이름을 지정하면 Claude가 위임 여부를 결정합니다.

878* **@-멘션**: 서브에이전트가 한 작업에 대해 실행되도록 보장합니다.876* **@-멘션**: 서브에이전트가 한 작업에 대해 실행되도록 보장합니다.

879* **세션 전체**: 전체 세션이 `--agent` 플래그 또는 `agent` 설정을 통해 해당 서브에이전트의 시스템 프롬프트, 도구 제한, 모델을 사용합니다.877* **세션 전체**: `--agent` 플래그 또는 `agent` 설정을 통해 전체 세션이 해당 서브에이전트로 실행됩니다.

880 878 

881자연어의 경우 특별한 구문이 없습니다. 서브에이전트의 이름을 지정하면 Claude는 일반적으로 위임합니다.879자연어의 경우 특별한 구문이 없습니다. 서브에이전트의 이름을 지정하면 Claude가 일반적으로 위임합니다.

882 880 

883```text wrap theme={null}881```text wrap theme={null}

884test-runner 서브에이전트를 사용하여 실패한 테스트를 수정하세요882test-runner 서브에이전트를 사용하여 실패한 테스트를 수정하세요

885code-reviewer 서브에이전트에게 최근 변경 사항을 검토하도록 하세요883code-reviewer 서브에이전트에 최근 변경 사항을 검토하도록 하세요

886```884```

887 885 

888**서브에이전트를 @-멘션하십시오.** `@`를 입력하고 파일을 @-멘션하는 것과 같은 방식으로 드롭다운에서 서브에이전트를 선택합니다. 이렇게 하면 Claude가 선택하도록 하는 대신 특정 서브에이전트가 실행되도록 보장합니다.886**서브에이전트를 @-멘션하세요.** `@`를 입력하고 파일을 @-멘션하는 것과 같은 방식으로 타입어헤드에서 서브에이전트를 선택합니다. 이렇게 하면 Claude에게 선택을 맡기지 않고 특정 서브에이전트가 실행되도록 보장합니다.

889 887 

890```text wrap theme={null}888```text wrap theme={null}

891@"code-reviewer (agent)" auth 변경 사항을 검토하세요889@"code-reviewer (agent)" 인증 변경 사항을 검토하세요

892```890```

893 891 

894전체 메시지는 여전히 Claude로 이동하며, Claude는 요청한 내용을 기반으로 서브에이전트의 작업 프롬프트를 작성합니다. @-멘션은 Claude가 호출하는 서브에이전트를 제어하며, 수신하는 프롬프트는 제어하지 않습니다.892전체 메시지는 여전히 Claude로 이동하며, Claude는 요청한 내용을 기반으로 서브에이전트의 작업 프롬프트를 작성합니다. @-멘션은 Claude가 호출하는 서브에이전트를 제어하며, 수신하는 프롬프트는 제어하지 않습니다.

895 893 

896활성화된 [플러그인](/docs/ko/plugins/overview)에서 제공하는 서브에이전트는 `my-plugin:code-reviewer` 또는 플러그인이 [서브폴더로 에이전트를 구성](#choose-the-subagent-scope)할 때 `my-plugin:review:security`와 같은 범위가 지정된 이름으로 드롭다운에 나타납니다. 세션에서 현재 실행 중인 명명된 백그라운드 서브에이전트도 드롭다운에 나타나며, 이름 옆에 상태를 표시합니다.894활성화된 [플러그인](/docs/ko/plugins/overview)에서 제공하는 서브에이전트는 `my-plugin:code-reviewer` 또는 플러그인이 [에이전트를 하위 폴더로 구성](#choose-the-subagent-scope)할 때 `my-plugin:review:security`와 같은 범위가 지정된 이름으로 타입어헤드에 나타납니다. 세션에서 현재 실행 중인 명명된 백그라운드 서브에이전트도 타입어헤드에 나타나며, 이름 옆에 상태를 표시합니다.

897 895 

898피커를 사용하지 않고 멘션을 수동으로 입력할 수도 있습니다. 로컬 서브에이전트의 경우 `@agent-<name>`, 플러그인 서브에이전트의 경우 `@agent-` 뒤에 범위가 지정된 이름을 입력합니다. 예를 들어 `@agent-my-plugin:code-reviewer`입니다. 이 형식을 입력하는 동안 드롭다운은 에이전트가 아닌 파일 일치를 표시합니다. 에이전트 멘션은 제출할 때 여전히 해결됩니다.896피커를 사용하지 않고 멘션을 수동으로 입력할 수도 있습니다. 로컬 서브에이전트의 경우 `@agent-<name>`, 플러그인 서브에이전트의 경우 `@agent-` 다음에 범위가 지정된 이름(예: `@agent-my-plugin:code-reviewer`)을 입력합니다. 이 형식을 입력하는 동안 타입어헤드는 에이전트가 아닌 파일 일치를 표시합니다. 에이전트 멘션은 제출할 때 여전히 해결됩니다.

899 897 

900**전체 세션을 서브에이전트로 실행하십시오.** [`--agent <name>`](/docs/ko/cli-reference)을 전달하여 메인 스레드 자체가 해당 서브에이전트의 시스템 프롬프트, 도구 제한, 모델을 갖는 세션을 시작합니다.898**전체 세션을 서브에이전트로 실행하세요.** [`--agent <name>`](/docs/ko/cli-reference)을 전달하여 메인 스레드 자체가 해당 서브에이전트의 도구 제한 및 모델을 갖는 세션을 시작합니다.

901 899 

902```bash theme={null}900```bash theme={null}

903claude --agent code-reviewer901claude --agent code-reviewer

904```902```

905 903 

906에이전트의 [프롬프트가 비어 있지 않으면](#choose-the-subagent-scope), 서브에이전트의 시스템 프롬프트는 [`--system-prompt`](/docs/ko/cli-reference)와 같은 방식으로 기본 Claude Code 시스템 프롬프트를 완전히 대체합니다. `CLAUDE.md` 파일과 프로젝트 메모리는 에이전트의 정의가 [`omitClaudeMd`](#supported-frontmatter-fields)를 설정하더라도 일반적인 메시지 흐름을 통해 계속 로드됩니다.904에이전트의 [프롬프트가 비어 있지 않으면](#choose-the-subagent-scope), 사용자 정의 서브에이전트의 시스템 프롬프트는 [`--system-prompt`](/docs/ko/cli-reference)와 같은 방식으로 기본 Claude Code 시스템 프롬프트를 완전히 대체합니다. `CLAUDE.md` 파일 및 프로젝트 메모리는 에이전트의 정의가 [`omitClaudeMd`](#supported-frontmatter-fields)를 설정하더라도 일반 메시지 흐름을 통해 계속 로드됩니다.

907 905 

908에이전트 이름은 시작 헤더에 `@<name>`으로 나타나므로 활성화되었는지 확인할 수 있습니다.906에이전트 이름은 시작 헤더에 `@<name>`으로 나타나므로 활성화되었는지 확인할 수 있습니다.

909 907 

910이는 기본 제공 및 사용자 정의 서브에이전트와 함께 작동하며, 세션을 재개할 때 선택이 유지됩니다. Claude Code는 대화를 재개할 때 에이전트의 도구 제한 및 모델을 복원합니다. 재개할 때 에이전트가 더 이상 존재하지 않으면 세션은 기본 도구로 계속되며 [에이전트의 이름을 지정하는 경고](/docs/ko/errors#session-agent-no-longer-available)를 표시합니다. 두 경우 모두 시스템 프롬프트는 [재개된 대화에서 시스템 프롬프트 플래그](/docs/ko/cli-reference#system-prompt-flags-in-resumed-conversations)를 참조하십시오.908이는 기본 제공 및 사용자 정의 서브에이전트에서 작동하며, 세션을 재개할 때 선택이 유지됩니다. Claude Code는 대화를 재개할 때 에이전트의 도구 제한 및 모델을 복원합니다. 재개할 때 에이전트가 더 이상 존재하지 않으면 세션은 기본 도구로 계속되며 [에이전트의 이름을 지정하는 경고](/docs/ko/errors#session-agent-no-longer-available)를 표시합니다. 두 경우 모두 시스템 프롬프트는 [재개된 대화에서 시스템 프롬프트 플래그](/docs/ko/cli-reference#system-prompt-flags-in-resumed-conversations)를 참조하십시오.

911 909 

912플러그인에서 제공하는 서브에이전트의 경우 에이전트 이름만 전달하면 Claude Code가 찾습니다.910플러그인에서 제공하는 서브에이전트의 경우 에이전트 이름만 전달하면 Claude Code가 찾습니다.

913 911 


921claude --agent my-plugin:security-reviewer919claude --agent my-plugin:security-reviewer

922```920```

923 921 

924플러그인이 에이전트를 `agents/` 디렉토리의 서브폴더에 배치하는 경우 범위가 지정된 이름에 서브폴더를 포함합니다. 예를 들어 `claude --agent my-plugin:review:security`입니다.922플러그인이 에이전트를 `agents/` 디렉토리의 하위 폴더에 배치하는 경우 범위가 지정된 이름에 하위 폴더를 포함합니다(예: `claude --agent my-plugin:review:security`).

925 923 

926프로젝트의 모든 세션에 대한 기본값으로 설정하려면 `.claude/settings.json`에서 `agent`를 설정합니다.924프로젝트의 모든 세션에 대한 기본값으로 설정하려면 `.claude/settings.json`에서 `agent`를 설정합니다.

927 925 


945Claude가 Agent 도구로 생성하는 각 서브에이전트에 대해 Claude Code는 적용되는 첫 번째 경우에서 포그라운드 또는 백그라운드를 선택합니다.943Claude가 Agent 도구로 생성하는 각 서브에이전트에 대해 Claude Code는 적용되는 첫 번째 경우에서 포그라운드 또는 백그라운드를 선택합니다.

946 944 

947* 진행 중인 [에이전트 팀](/docs/ko/agent-teams#limitations) 팀원이 서브에이전트를 생성한 경우 Claude Code는 포그라운드에서 실행합니다. Claude Code는 정의가 [`background: true`](#supported-frontmatter-fields)를 설정하는 팀원의 서브에이전트를 생성하기를 거부하고 오류를 표시합니다. [포크 모드](#turn-fork-mode-on-or-off)가 꺼져 있고 [백그라운드 작업을 끄지 않은](/docs/ko/env-vars) 경우 Claude Code는 팀원이 `run_in_background: true`를 설정할 때도 오류를 표시하며 거부합니다.945* 진행 중인 [에이전트 팀](/docs/ko/agent-teams#limitations) 팀원이 서브에이전트를 생성한 경우 Claude Code는 포그라운드에서 실행합니다. Claude Code는 정의가 [`background: true`](#supported-frontmatter-fields)를 설정하는 팀원의 서브에이전트를 생성하기를 거부하고 오류를 표시합니다. [포크 모드](#turn-fork-mode-on-or-off)가 꺼져 있고 [백그라운드 작업을 끄지 않은](/docs/ko/env-vars) 경우 Claude Code는 팀원이 `run_in_background: true`를 설정할 때도 오류를 표시하며 거부합니다.

948* [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](/docs/ko/env-vars)를 `1`로 설정하면 Claude Code는 모든 종류의 세션과 포크 모드 여부와 관계없이 포그라운드에서 서브에이전트를 실행합니다.946* [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](/docs/ko/env-vars)를 `1`로 설정하면 Claude Code는 모든 종류의 세션에서 포그라운드에서 서브에이전트를 실행하며 포크 모드가 켜져 있는지 여부와 관계없이 실행합니다.

949* [포크 모드](#turn-fork-mode-on-or-off)가 켜져 있으면(대화형 세션에서 기본값) Claude Code는 포크 및 비포크 서브에이전트 모두 백그라운드에서 실행하며, Claude는 포그라운드를 요청할 수 없습니다.947* [포크 모드](#turn-fork-mode-on-or-off)가 켜져 있으면(대화형 세션에서 기본값) Claude Code는 포크 및 비포크 서브에이전트 모두 백그라운드에서 실행하며 Claude는 포그라운드를 요청할 수 없습니다.

950* 포크 모드가 꺼져 있으면 Claude는 기본적으로 서브에이전트를 백그라운드에서 실행하고 계속하기 전에 결과가 필요할 때 포그라운드에서 실행합니다. 포크 모드는 `-p`를 사용한 [비대화형 모드](/docs/ko/headless)와 Agent SDK에서 꺼져 있으며, 켜지 않으면 꺼져 있습니다. 특정 서브에이전트를 Claude가 결과를 원할 때도 백그라운드에 유지하려면 프론트매터 [`background`](#supported-frontmatter-fields) 필드를 `true`로 설정합니다.948* 포크 모드가 꺼져 있으면 Claude는 기본적으로 서브에이전트를 백그라운드에서 실행하고 결과가 필요할 때 포그라운드에서 실행합니다. 포크 모드는 `-p`를 사용한 [비대화형 모드](/docs/ko/headless)에서 꺼져 있으며 Agent SDK에서도 꺼져 있습니다(켜지 않으면). 특정 서브에이전트를 Claude가 결과를 원할 때도 백그라운드에 유지하려면 프론트매터 [`background`](#supported-frontmatter-fields) 필드를 `true`로 설정합니다.

951 949 

952`context: fork`를 가진 스킬의 경우 Claude Code는 포크 모드 여부와 관계없이 [서브에이전트에서 스킬 실행](/docs/ko/skills#run-skills-in-a-subagent)의 규칙을 따릅니다.950`context: fork`를 가진 스킬의 경우 Claude Code는 포크 모드가 켜져 있는지 여부와 관계없이 [서브에이전트에서 스킬 실행](/docs/ko/skills#run-skills-in-a-subagent)의 규칙을 따릅니다.

953 951 

954백그라운드 서브에이전트는 대화 포크 및 [재개된](#resume-subagents) 포그라운드 서브에이전트를 제외하고 포그라운드 서브에이전트보다 [더 작은 기본 제공 도구 세트](#available-tools)로 실행됩니다.952백그라운드 서브에이전트는 대화 포크 및 [재개된](#resume-subagents) 포그라운드 서브에이전트를 제외하고 포그라운드 서브에이전트보다 [더 작은 기본 제공 도구 세트](#available-tools)로 실행됩니다.

955 953 

956백그라운드 서브에이전트는 메인 세션에서 모든 권한 프롬프트를 표시합니다. 해당 도구 호출을 초과하는 지속되는 선택(예: 세션의 나머지 기간 동안 지속되는 부여)으로 이러한 프롬프트 중 하나에 답하면 Claude Code는 메인 대화를 포함한 전체 세션에 답변을 적용합니다.954백그라운드 서브에이전트는 메인 세션에서 모든 권한 프롬프트를 표시합니다. 해당 도구 호출 하나를 초과하여 지속되는 선택(예: 세션의 나머지 기간 동안 지속되는 권한 부여)으로 프롬프트 중 하나에 답하면 Claude Code는 메인 대화를 포함한 전체 세션에 답변을 적용합니다.

957 955 

958백그라운드 서브에이전트는 백그라운드 [Bash 또는 PowerShell 명령](/docs/ko/tools-reference#background-commands)을 [해당 턴의 끝을 넘어 실행](/docs/ko/interactive-mode#how-backgrounding-works)할 수 있습니다. 해당 명령이 끝나면 Claude Code는 서브에이전트에 알림을 보냅니다.956백그라운드 서브에이전트는 백그라운드 [Bash 또는 PowerShell 명령](/docs/ko/tools-reference#background-commands)을 [해당 턴의 끝을 넘어 실행](/docs/ko/interactive-mode#how-backgrounding-works)할 수 있습니다. 해당 명령이 끝나면 Claude Code는 서브에이전트에 알림을 보냅니다.

959 957 

960백그라운드 서브에이전트의 결과는 나중 턴에서 완료 알림으로 Claude에 도달합니다. Claude는 해당 알림을 기다린 후 서브에이전트의 결과를 보고하며, 먼저 진행 상황을 묻는 경우 서브에이전트가 여전히 실행 중임을 보고합니다. v2.1.211 이전에는 Claude가 아직 완료되지 않은 백그라운드 서브에이전트의 결과를 보고하기도 했습니다.958백그라운드 서브에이전트의 결과는 나중 턴의 완료 알림으로 Claude에 도달합니다. Claude는 해당 알림을 기다린 후 서브에이전트의 결과를 보고하며, 먼저 진행 상황을 묻는 경우 서브에이전트가 여전히 실행 중임을 보고합니다. v2.1.211 이전에는 Claude가 완료되지 않은 백그라운드 서브에이전트의 결과를 보고하기도 했습니다.

961 959 

962또한 직접 조종할 수 있습니다.960이를 직접 제어할 수도 있습니다.

963 961 

964* 포크 모드가 꺼져 있으면 Claude에게 작업을 백그라운드 또는 포그라운드에서 실행하도록 요청합니다.962* 포크 모드가 꺼져 있으면 Claude에 작업을 백그라운드 또는 포그라운드에서 실행하도록 요청합니다.

965* **Ctrl+B**를 눌러 실행 중인 작업을 백그라운드로 이동합니다.963* **Ctrl+B**를 눌러 실행 중인 작업을 백그라운드로 이동합니다.

966 964 

967Claude Code는 서브에이전트가 어떻게 끝났는지에 따라 두 가지 방식으로 프롬프트 입력 아래의 서브에이전트 패널에서 백그라운드 서브에이전트의 행을 지웁니다.965Claude Code는 서브에이전트가 끝난 방식에 따라 두 가지 방법 중 하나로 프롬프트 입력 아래의 서브에이전트 패널에서 백그라운드 서브에이전트의 행을 지웁니다.

968 966 

969* 서브에이전트가 성공적으로 완료되면 Claude Code는 행을 즉시 제거하고 [화면 읽기 모드](/docs/ko/accessibility)를 제외하고 30초 동안 바닥글에 `/tasks to see subagents`를 표시합니다. 이 30초 동안 [`/tasks`](/docs/ko/commands)를 실행하고 서브에이전트에서 `Enter`를 눌러 해당 기록을 엽니다. v2.1.232 이전에는 Claude Code가 실패한 것과 같은 방식으로 서브에이전트가 완료된 후 30초 동안 행을 유지했으며 바닥글 힌트를 표시하지 않았습니다.967* 서브에이전트가 성공적으로 완료되면 Claude Code는 행을 즉시 제거하고 [화면 읽기 모드](/docs/ko/accessibility)를 제외하고 30초 동안 바닥글에 `/tasks to see subagents`를 표시합니다. 이 30초 동안 [`/tasks`](/docs/ko/commands)를 실행하고 서브에이전트에서 `Enter`를 눌러 해당 트랜스크립트를 엽니다. v2.1.232 이전에는 Claude Code가 실패한 행과 같이 서브에이전트가 완료된 후 30초 동안 행을 유지했으며 바닥글 힌트를 표시하지 않았습니다.

970* 서브에이전트가 실패하거나 중지하면 Claude Code는 30초 동안 행을 유지합니다. 행을 더 빨리 지우려면 선택하고 `x`를 누릅니다.968* 서브에이전트가 실패하거나 중지하면 Claude Code는 행을 30초 동안 유지합니다. 행을 더 빨리 지우려면 선택하고 `x`를 누릅니다.

971 969 

972완료된 백그라운드 서브에이전트는 [`/tasks`](/docs/ko/commands)에 나열된 상태로 유지되며, 완료로 표시되고 실행 중인 작업 아래에 정렬되며, 바닥글 힌트와 동일한 30초 동안 유지됩니다. 서브에이전트가 완료될 때 세부 정보 보기가 열린 상태로 유지됩니다. 실패하거나 중지한 서브에이전트는 목록을 떠납니다. v2.1.208 이전에는 완료된 서브에이전트가 완료되는 순간 목록을 떠났고 세부 정보 보기가 닫혔습니다.970완료된 백그라운드 서브에이전트는 [`/tasks`](/docs/ko/commands)에 나열된 상태로 유지되며, 완료로 표시되고 실행 중인 작업 아래에 정렬되며 바닥글 힌트와 동일한 30초 동안 유지됩니다. 세부 정보 보기는 서브에이전트가 완료될 때 열린 상태로 유지됩니다. 실패하거나 중지한 서브에이전트는 목록을 떠납니다. v2.1.208 이전에는 완료된 서브에이전트가 완료되는 순간 목록을 떠났고 세부 정보 보기가 닫혔습니다.

973 971 

974<h3 id="subagent-names">972<h3 id="subagent-names">

975 서브에이전트 이름973 서브에이전트 이름


977 975 

978Claude는 Agent 도구 호출에서 `name` 매개변수를 전달하여 서브에이전트에 이름을 지정할 수 있으며, 먼저 묻지 않고 자체적으로 이름을 지정할 수 있습니다. 이름은 서브에이전트를 주소 지정 가능하게 만듭니다. Claude는 완료 후 [이름으로 메시지를 보내거나 재개](#resume-subagents)할 수 있습니다.976Claude는 Agent 도구 호출에서 `name` 매개변수를 전달하여 서브에이전트에 이름을 지정할 수 있으며, 먼저 묻지 않고 자체적으로 이름을 지정할 수 있습니다. 이름은 서브에이전트를 주소 지정 가능하게 만듭니다. Claude는 완료 후 [이름으로 메시지를 보내거나 재개](#resume-subagents)할 수 있습니다.

979 977 

980[에이전트 팀](/docs/ko/agent-teams)이 활성화된 대화형 세션에서 Claude가 메인 대화에서 `name`으로 생성하는 서브에이전트는 호출이 [포크](#fork-the-current-conversation)이거나 호출 자체에서 `isolation`을 전달하지 않으면 팀원으로 시작합니다. 서브에이전트의 프론트매터의 `isolation` 값은 이를 방지하지 않으며, 팀원은 메인 세션의 작업 디렉토리에서 실행됩니다. [Claude가 에이전트 팀을 시작하는 방법](/docs/ko/agent-teams#how-claude-starts-agent-teams)을 참조하십시오.978[에이전트 팀](/docs/ko/agent-teams)이 활성화된 대화형 세션에서 Claude가 메인 대화에서 `name`으로 생성하는 서브에이전트는 호출이 [포크](#fork-the-current-conversation)이거나 호출 자체에서 `isolation`을 전달하지 않으면 팀원으로 시작합니다. 서브에이전트의 프론트매터의 `isolation` 값은 이를 방지하지 않으며 팀원은 메인 세션의 작업 디렉토리에서 실행됩니다. [Claude가 에이전트 팀을 시작하는 방법](/docs/ko/agent-teams#how-claude-starts-agent-teams)을 참조하십시오.

981 979 

982<h3 id="api-errors-in-subagents">980<h3 id="api-errors-in-subagents">

983 서브에이전트의 API 오류981 서브에이전트의 API 오류

984</h3>982</h3>

985 983 

986무언가가 [서브에이전트의 응답을 스트림 중간에 중단](/docs/ko/errors#the-response-above-may-be-incomplete)하고 부분 응답에 텍스트가 포함되지만 도구 호출이 없으면 Claude Code는 실행을 종료하는 대신 서브에이전트에 계속하도록 프롬프트합니다. 이는 대화형 세션에서도 발생합니다. 실행은 이러한 연속이 사용될 때만 오류에서 종료됩니다.984무언가가 [서브에이전트의 응답을 스트림 중간에 중단](/docs/ko/errors#the-response-above-may-be-incomplete)하고 부분 응답에 텍스트가 포함되지만 도구 호출이 없으면 Claude Code는 실행을 종료하지 않고 서브에이전트에 계속하도록 프롬프트합니다. 이는 대화형 세션에서도 발생합니다. 실행은 이러한 연속이 소진될 때만 오류에서 종료됩니다.

987 985 

988v2.1.199부터 API 오류(예: 사용 제한 또는 반복된 서버 오류)로 인해 실행이 종료되는 서브에이전트는 오류 텍스트를 서브에이전트의 결과인 것처럼 반환하는 대신 해당 실패를 Claude에 다시 보고합니다. Claude가 수신하는 내용은 서브에이전트가 실행된 위치에 따라 다릅니다.986v2.1.199부터 API 오류(예: 사용 제한 또는 반복된 서버 오류)로 인해 실행이 종료되는 서브에이전트는 오류 텍스트를 서브에이전트의 결과인 것처럼 반환하는 대신 해당 실패를 Claude에 다시 보고합니다. Claude가 수신하는 내용은 서브에이전트가 실행된 위치에 따라 다릅니다.

989 987 

990* **포그라운드**: 속도 제한, 과부하 또는 서버 오류가 이미 텍스트 출력을 생성한 서브에이전트를 중단하면 Agent 도구는 해당 부분 출력을 서브에이전트가 중단되었으며 작업을 완료하지 못했다는 메모와 함께 반환합니다. 아무것도 생성하지 않았거나 유일한 출력이 도구 호출인 서브에이전트는 [`Agent terminated early due to an API error`](/docs/ko/errors#agent-terminated-early-due-to-an-api-error)로 실패하며, 그 뒤에 오류 세부 정보가 따릅니다. v2.1.199에서 도구 호출 전용 형태를 중단한 속도 제한, 과부하 또는 서버 오류는 중단 메모만 포함하는 빈 부분 결과를 반환했습니다.988* **포그라운드**: 속도 제한, 과부하 또는 서버 오류가 이미 텍스트 출력을 생성한 서브에이전트를 중단하면 Agent 도구는 서브에이전트가 중단되었고 작업을 완료하지 못했다는 메모와 함께 해당 부분 출력을 반환합니다. 아무것도 생성하지 않았거나 유일한 출력이 도구 호출인 서브에이전트는 [`Agent terminated early due to an API error`](/docs/ko/errors#agent-terminated-early-due-to-an-api-error)로 실패하며 오류 세부 정보가 뒤따릅니다. v2.1.199에서 도구 호출 전용 형태를 중단한 속도 제한, 과부하 또는 서버 오류는 중단 메모만 포함하는 빈 부분 결과를 반환했습니다.

991* **백그라운드**: 서브에이전트는 실패로 표시되며 Claude가 종료될 때 수신하는 메시지는 API 오류의 이름을 지정하고 서브에이전트의 마지막 출력을 포함하므로 부분 작업이 손실되지 않습니다.989* **백그라운드**: 서브에이전트는 실패로 표시되며 Claude가 종료될 때 수신하는 메시지는 API 오류의 이름을 지정하고 서브에이전트의 마지막 출력을 포함하므로 부분 작업이 손실되지 않습니다.

992 990 

993[폴백 모델 체인](/docs/ko/model-config#fallback-model-chains)을 구성하고 서브에이전트가 체인이 다루는 실패(예: 모델을 사용할 수 없음)를 만나면 Claude Code는 서브에이전트를 요청을 수락하는 체인의 첫 번째 모델로 전환합니다. 서브에이전트는 오류에서 종료되는 대신 계속 작동합니다.991[폴백 모델 체인](/docs/ko/model-config#fallback-model-chains)을 구성하고 서브에이전트가 체인이 다루는 실패(예: 모델을 사용할 수 없음)를 만나면 Claude Code는 서브에이전트를 요청을 수락하는 체인의 첫 번째 모델로 전환합니다. 서브에이전트는 오류에서 종료되지 않고 계속 작동합니다.

994 992 

995기본 API 오류가 해결되면 Claude에게 작업을 다시 시도하거나 [서브에이전트를 재개](#resume-subagents)하도록 요청합니다.993기본 API 오류가 해결되면 Claude에 작업을 다시 시도하거나 [서브에이전트를 재개](#resume-subagents)하도록 요청합니다.

996 994 

997<h3 id="subagent-output-scanning">995<h3 id="subagent-output-scanning">

998 서브에이전트 출력 스캔996 서브에이전트 출력 스캔

999</h3>997</h3>

1000 998 

1001Claude Code는 Claude가 읽기 전에 각 서브에이전트의 최종 보고서를 스캔합니다. 서브에이전트는 파일, 웹 페이지 또는 명령 출력을 읽었을 수 있으며, 이러한 소스의 텍스트는 메인 대화를 대상으로 하는 지침을 포함할 수 있습니다. 스캔은 아무것도 제거하거나 다시 표현하지 않습니다. 보고서에서 알 수 있는 두 가지 종류의 변경을 만듭니다.999Claude Code는 Claude가 읽기 전에 각 서브에이전트의 최종 보고서를 스캔합니다. 서브에이전트는 파일, 웹 페이지 또는 검토하지 않은 명령 출력을 읽었을 수 있으며 이러한 소스의 텍스트는 메인 대화를 대상으로 하는 지시사항을 전달할 수 있습니다. 스캔은 아무것도 제거하거나 다시 표현하지 않습니다. 보고서에서 알 수 있는 두 가지 종류의 변경을 만듭니다.

1002 1000 

1003* **백슬래시 삽입**: 스캔은 `<system-reminder>` 태그 또는 `Human:` 또는 `Assistant:`로 시작하는 줄과 같은 Claude Code 자체의 출력을 모방하는 텍스트에 백슬래시를 삽입하므로 모방이 대화의 일부로 잘못 인식되는 대신 일반 텍스트로 읽힙니다.1001* **백슬래시 삽입**: 스캔은 `<system-reminder>` 태그 또는 `Human:` 또는 `Assistant:`로 시작하는 줄과 같이 Claude Code 자체의 출력을 모방하는 텍스트에 백슬래시를 삽입하므로 모방이 대화의 일부로 잘못 인식되지 않고 일반 텍스트로 읽힙니다.

1004* **마커 줄**: 스캔은 `<system-reminder>`와 같은 태그를 모방하거나 `bypassPermissions` 또는 `--dangerously-skip-permissions`와 같은 권한 설정을 언급할 때 `[harness: subagent output matched instruction-shaped pattern(s):`로 시작하는 줄을 앞에 붙입니다. 권한 설정 언급은 마커 줄을 받지만 텍스트 자체는 작성된 대로 유지됩니다.1002* **마커 줄**: 스캔은 `<system-reminder>`와 같은 태그를 모방하거나 `bypassPermissions` 또는 `--dangerously-skip-permissions`와 같은 권한 설정을 언급할 때 `[harness: subagent output matched instruction-shaped pattern(s):`로 시작하는 줄을 앞에 붙입니다. 권한 설정 언급은 마커 줄을 받지만 텍스트 자체는 작성된 대로 유지됩니다.

1005 1003 

1006스캔은 콘텐츠가 악의적인지 판단하지 않으며 보고서의 지침이 할 수 있는 일을 변경하지 않습니다. 보고서가 Claude를 만드는 도구 호출은 여전히 세션의 [권한 확인](/docs/ko/permissions) 및 [샌드박싱](/docs/ko/sandboxing)을 거칩니다. [서브에이전트가 도달할 수 있는 것을 제한](#control-subagent-capabilities)하는 것의 대체물이 아닙니다.1004스캔은 콘텐츠가 악의적인지 판단하지 않으며 보고서의 지시사항이 할 수 있는 일을 변경하지 않습니다. 보고서가 Claude를 만드는 도구 호출은 여전히 세션의 [권한 확인](/docs/ko/permissions) 및 [샌드박싱](/docs/ko/sandboxing)을 거칩니다. [서브에이전트가 도달할 수 있는 것을 제한](#control-subagent-capabilities)하는 것의 대체물이 아닙니다.

1007 1005 

1008서브에이전트의 결과로 Claude에 반환되는 보고서는 서브에이전트 출력으로 표시하는 헤더 아래에도 도착합니다. 헤더는 보고서 내의 지침 또는 승인 주장이 서브에이전트의 말이며 사용자로부터 권한을 갖지 않음을 나타냅니다.1006Claude의 결과로 반환되는 보고서는 서브에이전트 출력으로 표시하는 헤더 아래에도 도착합니다. 헤더는 보고서 내의 지시사항 또는 승인 주장이 서브에이전트의 말이며 사용자로부터 권한을 갖지 않음을 나타냅니다.

1009 1007 

1010[백그라운드 서브에이전트의 보고서](#run-subagents-in-foreground-or-background)는 자동화된 이벤트가 아닌 사용자로부터의 메시지로 표시되는 완료 알림 내에 도착합니다.1008[백그라운드 서브에이전트의 보고서](#run-subagents-in-foreground-or-background)는 자동화된 이벤트로 표시되는 완료 알림 내에 도착하며 사용자로부터의 메시지가 아닙니다.

1011 1009 

1012<Note>1010<Note>

1013 서브에이전트 출력 스캔에는 Claude Code v2.1.210 이상이 필요합니다.1011 서브에이전트 출력 스캔에는 Claude Code v2.1.210 이상이 필요합니다.


1040각 서브에이전트는 자신의 영역을 독립적으로 탐색한 다음 Claude가 결과를 종합합니다. 이는 연구 경로가 서로 의존하지 않을 때 가장 잘 작동합니다.1038각 서브에이전트는 자신의 영역을 독립적으로 탐색한 다음 Claude가 결과를 종합합니다. 이는 연구 경로가 서로 의존하지 않을 때 가장 잘 작동합니다.

1041 1039 

1042<Warning>1040<Warning>

1043 서브에이전트가 완료되면 결과가 메인 대화로 반환됩니다. 각각 자세한 결과를 반환하는 많은 서브에이전트를 실행하면 상당한 컨텍스트를 소비할 수 있으며, 각 서브에이전트는 실행되는 동안 자신의 토큰을 소비합니다.1041 서브에이전트가 완료되면 해당 결과가 메인 대화로 반환됩니다. 각각 자세한 결과를 반환하는 많은 서브에이전트를 실행하면 상당한 컨텍스트를 소비할 수 있으며 각 서브에이전트는 실행되는 동안 자신의 토큰을 소비합니다.

1044</Warning>1042</Warning>

1045 1043 

1046병렬로 계속 실행되어야 하거나 하나의 컨텍스트 윈도우에 맞지 않는 작업의 경우 [별도의 세션](/docs/ko/agents)에서 실행하고 Claude가 [세션 간에 결과를 전달](/docs/ko/cross-session-messaging)하도록 합니다.1044병렬로 계속 실행되어야 하거나 하나의 컨텍스트 윈도우에 맞지 않는 작업의 경우 [별도의 세션](/docs/ko/agents)에서 실행하고 Claude가 [세션 간에 결과를 전달](/docs/ko/cross-session-messaging)하도록 합니다.

1047 1045 

1048<h4 id="chain-subagents">1046<h4 id="chain-subagents">

1049 서브에이전트 체인1047 서브에이전트 연결

1050</h4>1048</h4>

1051 1049 

1052다단계 워크플로우의 경우 Claude에게 서브에이전트를 순차적으로 사용하도록 요청합니다. 각 서브에이전트는 작업을 완료하고 결과를 Claude에 반환하며, Claude는 관련 컨텍스트를 다음 서브에이전트에 전달합니다.1050다단계 워크플로우의 경우 Claude에 서브에이전트를 순차적으로 사용하도록 요청합니다. 각 서브에이전트는 작업을 완료하고 결과를 Claude로 반환하며, Claude는 관련 컨텍스트를 다음 서브에이전트로 전달합니다.

1053 1051 

1054```text wrap theme={null}1052```text wrap theme={null}

1055code-reviewer 서브에이전트를 사용하여 성능 문제를 찾은 다음 optimizer 서브에이전트를 사용하여 수정하세요1053code-reviewer 서브에이전트를 사용하여 성능 문제를 찾은 다음 optimizer 서브에이전트를 사용하여 수정하세요


1062**메인 대화**를 사용하는 경우:1060**메인 대화**를 사용하는 경우:

1063 1061 

1064* 작업에 빈번한 왕복 또는 반복적 개선이 필요합니다.1062* 작업에 빈번한 왕복 또는 반복적 개선이 필요합니다.

1065* 여러 단계가 계획, 구현, 테스트와 같은 상당한 컨텍스트를 공유합니다.1063* 계획, 구현 및 테스트와 같이 여러 단계가 상당한 컨텍스트를 공유합니다.

1066* 빠르고 대상이 지정된 변경을 수행하고 있습니다.1064* 빠르고 대상이 지정된 변경을 수행하고 있습니다.

1067* 지연 시간이 중요합니다. [포크](#fork-the-current-conversation)가 아닌 서브에이전트는 새로 시작하며 컨텍스트를 수집하는 데 시간이 걸릴 수 있습니다.1065* 지연 시간이 중요합니다. [포크](#fork-the-current-conversation)가 아닌 서브에이전트는 새로 시작하며 컨텍스트를 수집하는 데 시간이 걸릴 수 있습니다.

1068 1066 


1080 서브에이전트가 자신의 서브에이전트를 생성하도록 허용1078 서브에이전트가 자신의 서브에이전트를 생성하도록 허용

1081</h3>1079</h3>

1082 1080 

1083기본적으로 서브에이전트는 메인 대화 아래로 최대 3개 계층까지 자신의 서브에이전트를 생성할 수 있습니다. 깊이 제한에서 Claude Code는 [포크](#fork-the-current-conversation)를 제외한 모든 서브에이전트에서 `Agent` 도구를 보류하므로 제한에서 서브에이전트는 위임된 작업을 자체적으로 수행하고 하나의 요약을 반환합니다. 제한에서 포크는 상속된 도구 목록에서 `Agent`를 유지하지만 도구는 생성하는 대신 오류를 반환합니다.1081기본적으로 서브에이전트는 메인 대화 아래로 최대 3개 계층까지 자신의 서브에이전트를 생성할 수 있습니다. 깊이 제한에서 Claude Code는 [포크](#fork-the-current-conversation)를 제외한 모든 서브에이전트에서 `Agent` 도구를 보류하므로 제한에 있는 서브에이전트는 위임된 작업을 자체적으로 수행하고 하나의 요약을 반환합니다. 제한에 있는 포크는 상속된 도구 목록에서 `Agent`를 유지하지만 도구는 생성하는 대신 오류를 반환합니다.

1084 1082 

1085중첩된 서브에이전트는 자체적으로 병렬 부작업으로 분할되는 위임된 작업에 적합합니다. 예를 들어 검토자 서브에이전트가 발견 항목당 검증자를 발송합니다. 대화형 세션에서는 최상위 서브에이전트의 요약만 반환되고 중간 출력은 메인 대화 밖에 유지됩니다. 백그라운드 서브에이전트를 시작하는 서브에이전트는 완료되기 전에 결과를 기다립니다. [비대화형 모드](/docs/ko/headless) 및 Agent SDK에서 시작 서브에이전트는 기다리지 않으므로 시작자가 종료된 후 완료되는 중첩된 백그라운드 서브에이전트는 메인 대화에 대신 보고합니다.1083중첩된 서브에이전트는 자체적으로 병렬 부작업으로 분할되는 위임된 작업에 적합합니다. 예를 들어 검토자 서브에이전트가 발견 사항당 검증자를 발송합니다. 대화형 세션에서는 최상위 서브에이전트의 요약만 반환되고 중간 출력은 메인 대화에서 벗어납니다. 백그라운드 서브에이전트를 시작하는 서브에이전트는 완료될 때까지 기다립니다. [비대화형 모드](/docs/ko/headless) 및 Agent SDK에서 시작 서브에이전트는 기다리지 않으므로 시작자가 종료된 후 완료되는 중첩된 백그라운드 서브에이전트는 메인 대화로 보고합니다.

1086 1084 

1087제한을 변경하려면 [`CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH`](/docs/ko/env-vars)를 메인 대화 아래에서 원하는 서브에이전트 계층 수로 설정합니다. 예를 들어 [`settings.json`](/docs/ko/settings)의 이 항목은 중첩을 2개 계층으로 제한합니다.1085제한을 변경하려면 [`CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH`](/docs/ko/env-vars)를 메인 대화 아래에 원하는 서브에이전트 계층 수로 설정합니다. 예를 들어 [`settings.json`](/docs/ko/settings)의 이 항목은 중첩을 2개 계층으로 제한합니다.

1088 1086 

1089```json theme={null}1087```json theme={null}

1090{1088{


1096 1094 

1097이 값을 사용하면 서브에이전트는 자신의 두 번째 계층으로 위임할 수 있으며 해당 두 번째 계층은 더 이상 위임할 수 없습니다. `1`로 설정하여 중첩을 끕니다.1095이 값을 사용하면 서브에이전트는 자신의 두 번째 계층으로 위임할 수 있으며 해당 두 번째 계층은 더 이상 위임할 수 없습니다. `1`로 설정하여 중첩을 끕니다.

1098 1096 

1099중첩된 서브에이전트는 최상위 서브에이전트와 같은 방식으로 구성되며 동일한 [범위](#choose-the-subagent-scope)에서 해결됩니다. 한 서브에이전트(예: 읽기 전용으로 유지해야 하는 검토자)가 중첩이 켜져 있는 동안 생성되지 않도록 하려면 [`tools`](#available-tools) 목록에서 `Agent`를 생략하거나 `disallowedTools`에 추가합니다.1097중첩된 서브에이전트는 최상위 서브에이전트와 같은 방식으로 구성되며 동일한 [범위](#choose-the-subagent-scope)에서 해결됩니다. 읽기 전용으로 유지되어야 하는 검토자와 같이 하나의 서브에이전트가 중첩이 켜져 있는 동안 생성되지 않도록 하려면 [`tools`](#available-tools) 목록에서 `Agent`를 생략하거나 `disallowedTools`에 추가합니다.

1100 1098 

1101터미널에서 Claude Code는 중첩된 서브에이전트를 프롬프트 입력 아래의 서브에이전트 패널에 트리로 표시하고 패널에서 여전히 자손이 있는 각 행을 `(+N)` 개수로 표시합니다. 행을 열어 해당 서브에이전트의 형제 및 직계 자식을 `main`으로 돌아가는 경로와 함께 봅니다.1099터미널에서 Claude Code는 중첩된 서브에이전트를 프롬프트 입력 아래의 서브에이전트 패널에 트리로 표시하고 패널에서 여전히 자손이 있는 각 행을 `(+N)` 개수로 표시합니다. 행을 열어 해당 서브에이전트의 형제 및 직계 자식을 `main`으로 돌아가는 경로와 함께 봅니다.

1102 1100 

1103<Note>1101<Note>

1104 이전 버전은 다른 기본값을 사용했습니다.1102 이전 버전은 다른 기본값을 사용했습니다.

1105 1103 

1106 * **v2.1.172부터 v2.1.216까지**: 서브에이전트는 기본적으로 최대 5개 계층 깊이까지 중첩될 수 있었으며 제한을 변경할 수 없었습니다.1104 * **v2.1.172부터 v2.1.216까지**: 서브에이전트는 기본적으로 중첩될 수 있으며 최대 5개 계층 깊이까지 가능했으며 제한을 변경할 수 없었습니다.

1107 * **v2.1.217부터 v2.1.218까지**: 제한이 기본값 1로 설정되어 있어 서브에이전트가 올리지 않으면 자신의 서브에이전트를 생성할 수 없었습니다. v2.1.219는 기본값을 3으로 올렸습니다.1105 * **v2.1.217부터 v2.1.218까지**: 제한이 기본값 1로 설정되어 있어 높이지 않으면 서브에이전트가 자신의 것을 생성할 수 없었습니다. v2.1.219는 기본값을 3으로 올렸습니다.

1108</Note>1106</Note>

1109 1107 

1110<h3 id="concurrent-subagent-limit">1108<h3 id="concurrent-subagent-limit">

1111 동시 서브에이전트 제한1109 동시 서브에이전트 제한

1112</h3>1110</h3>

1113 1111 

1114두 제한이 서브에이전트 사용을 제어하며, 각각 자신의 변수를 가집니다. 이 제한은 Claude가 너무 많은 서브에이전트가 실행되는 동안 더 많은 서브에이전트를 생성하지 못하도록 하며, [깊이 제한](#let-subagents-spawn-their-own-subagents)은 서브에이전트가 얼마나 깊게 중첩되는지를 제한합니다. 세션 동안 Claude가 생성할 수 있는 서브에이전트의 총 개수에는 제한이 없습니다.1112두 제한이 서브에이전트 사용을 제어하며 각각 자신의 변수를 가집니다. 이 제한은 Claude가 너무 많은 서브에이전트가 실행되는 동안 더 많은 서브에이전트를 생성하지 못하도록 하며 [깊이 제한](#let-subagents-spawn-their-own-subagents)은 서브에이전트가 얼마나 깊게 중첩되는지를 제한합니다. 세션 동안 Claude가 생성할 수 있는 서브에이전트의 총 개수에는 제한이 없습니다.

1115 1113 

1116기본적으로 20개의 서브에이전트가 세션에서 실행 중일 때 Agent 도구로 다른 서브에이전트를 생성하면 `Concurrent subagent limit reached`로 실패하며 오류는 Claude에 재시도하지 않도록 지시합니다. 실행 중인 개수가 제한 아래로 떨어지면 생성이 다시 성공합니다. 제한을 변경하려면 [`CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS`](/docs/ko/env-vars)를 양의 정수로 설정합니다. [ultracode](/docs/ko/model-config#adjust-effort-level)가 활성화된 세션은 면제됩니다. 제한이 적용되지 않습니다. Claude Code v2.1.217 이상이 필요합니다.1114기본적으로 20개의 서브에이전트가 세션에서 실행 중일 때 Agent 도구로 다른 서브에이전트를 생성하려고 하면 `Concurrent subagent limit reached`로 실패하며 오류는 Claude에 재시도하지 않도록 알립니다. 실행 중인 개수가 제한 아래로 떨어지면 생성이 다시 성공합니다. 제한을 변경하려면 [`CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS`](/docs/ko/env-vars)를 양의 정수로 설정합니다. [ultracode](/docs/ko/model-config#adjust-effort-level)가 활성화된 세션은 면제됩니다. 제한이 적용되지 않습니다. Claude Code v2.1.217 이상이 필요합니다.

1117 1115 

1118제한은 Claude가 Agent 도구로 생성하는 서브에이전트만 차단하지만 다른 실행은 동일한 슬롯을 차지합니다.1116제한은 Claude가 Agent 도구로 생성하는 서브에이전트만 차단하지만 다른 실행은 동일한 슬롯을 차지합니다.

1119 1117 


1130 시작 시 로드되는 것1128 시작 시 로드되는 것

1131</h4>1129</h4>

1132 1130 

1133각 서브에이전트는 새로운 격리된 컨텍스트 윈도우로 시작합니다. 대화 기록, 이미 호출한 스킬, 또는 Claude가 이미 읽은 파일을 보지 못합니다. Claude는 작업을 요약하는 위임 메시지를 작성하고 서브에이전트는 거기서부터 작동합니다. 예외는 부모 대화를 상속하는 [포크](#fork-the-current-conversation)입니다.1131각 서브에이전트는 새로운 격리된 컨텍스트 윈도우로 시작합니다. 대화 기록, 이미 호출한 스킬 또는 Claude가 이미 읽은 파일을 보지 못합니다. Claude는 작업을 요약하는 위임 메시지를 작성하고 서브에이전트는 거기에서 작동합니다. 예외는 부모 대화를 상속하는 [포크](#fork-the-current-conversation)입니다.

1134 1132 

1135비포크 서브에이전트의 초기 컨텍스트에는 다음이 포함됩니다.1133비포크 서브에이전트의 초기 컨텍스트에는 다음이 포함됩니다.

1136 1134 

1137* **시스템 프롬프트**: 에이전트 자신의 프롬프트와 Claude Code가 추가하는 환경 세부 정보이며, Claude Code 시스템 프롬프트는 아닙니다. 사용자 정의 서브에이전트는 [마크다운 본문](#write-subagent-files) 또는 `prompt` 필드에서 정의합니다. 기본 제공 에이전트는 미리 정의된 프롬프트를 가집니다.1135* **시스템 프롬프트**: 에이전트 자신의 프롬프트 및 Claude Code가 추가하는 환경 세부 정보이며 Claude Code 시스템 프롬프트는 아닙니다. 사용자 정의 서브에이전트는 [마크다운 본문](#write-subagent-files) 또는 `prompt` 필드에서 정의합니다. 기본 제공 에이전트는 미리 정의된 프롬프트를 가집니다.

1138* **작업 메시지**: Claude가 작업을 넘길 때 작성하는 위임 프롬프트입니다.1136* **작업 메시지**: Claude가 작업을 넘길 때 작성하는 위임 프롬프트입니다.

1139* **CLAUDE.md 파일**: 메인 대화가 로드하는 [CLAUDE.md 계층 구조](/docs/ko/memory#how-claude-md-files-load)의 모든 수준(\~/.claude/CLAUDE.md, 프로젝트 규칙, CLAUDE.local.md, 관리되는 정책 파일, 그리고 프로젝트 지침으로 로드된 모든 [`AGENTS.md` 파일](/docs/ko/memory#agents-md)). 기본 제공 Explore 및 Plan 에이전트는 이를 건너뜁니다. 정의가 [`omitClaudeMd`](#supported-frontmatter-fields)를 설정하는 서브에이전트는 관리되는 정책 파일만 로드하거나 정의가 [관리되는 설정](#choose-the-subagent-scope)에서 올 때 아무것도 로드하지 않습니다.1137* **CLAUDE.md 파일**: 메인 대화가 로드하는 [CLAUDE.md 계층 구조](/docs/ko/memory#how-claude-md-files-load)의 모든 수준(\~/.claude/CLAUDE.md, 프로젝트 규칙, CLAUDE.local.md, 관리되는 정책 파일 및 프로젝트 지시사항으로 로드된 모든 [`AGENTS.md` 파일](/docs/ko/memory#agents-md) 포함). 기본 제공 Explore 및 Plan 에이전트는 이를 건너뜁니다. 정의가 [`omitClaudeMd`](#supported-frontmatter-fields)를 설정하는 서브에이전트는 관리되는 정책 파일만 로드하거나 정의가 [관리되는 설정](#choose-the-subagent-scope)에서 올 때 아무것도 로드하지 않습니다.

1140* **Git 상태**: 서브에이전트가 시작할 때 Claude Code가 저장소에서 읽는 스냅샷입니다. Git 저장소 외부에서는 없거나 스냅샷이 꺼져 있을 때마다 없습니다. [`includeGitInstructions`](/docs/ko/settings-reference#includegitinstructions)를 참조하십시오. Explore 및 Plan은 관계없이 건너뜁니다.1138* **Git 상태**: 서브에이전트가 시작할 때 Claude Code가 저장소에서 읽는 스냅샷입니다. Git 저장소 외부에서는 없으며 스냅샷이 꺼져 있을 때도 없습니다. [`includeGitInstructions`](/docs/ko/settings-reference#includegitinstructions)를 참조하십시오. Explore 및 Plan은 관계없이 건너뜁니다.

1141* **미리 로드된 스킬**: 에이전트의 [`skills` 필드](#preload-skills-into-subagents)에 명명된 모든 스킬의 전체 콘텐츠입니다. 기본 제공 에이전트는 스킬을 미리 로드하지 않습니다.1139* **미리 로드된 스킬**: 에이전트의 [`skills` 필드](#preload-skills-into-subagents)에 명명된 모든 스킬의 전체 콘텐츠입니다. 기본 제공 에이전트는 스킬을 미리 로드하지 않습니다.

1142* **형제 명단**: `main` 및 세션의 다른 모든 명명된 에이전트를 나열하는 [시스템 알림](/docs/ko/glossary#system-reminder)이며, 각각은 [`SendMessage`](#resume-subagents)에 대한 유효한 `to` 값입니다. Claude Code v2.1.206 이상이 필요합니다. 명단은 서브에이전트의 도구에 `SendMessage`가 포함되고 최소한 다른 하나의 에이전트가 이름을 가질 때만 나타나며, Claude가 생성할 때 이름을 지정했거나 [에이전트 팀](/docs/ko/agent-teams) 팀원으로 실행되는지 여부입니다. 이는 서브에이전트가 시작할 때 찍은 스냅샷이므로 나중에 명명된 에이전트는 나타나지 않습니다.1140* **형제 명단**: `main` 및 세션의 다른 모든 명명된 에이전트를 나열하는 [시스템 알림](/docs/ko/glossary#system-reminder)이며 각각은 [`SendMessage`](#resume-subagents)의 유효한 `to` 값입니다. Claude Code v2.1.206 이상이 필요합니다. 명단은 서브에이전트의 도구에 `SendMessage`가 포함되고 적어도 하나의 다른 에이전트가 이름을 가질 때만 나타나며, Claude가 생성할 때 이름을 지정했는지 또는 [에이전트 팀](/docs/ko/agent-teams) 팀원으로 실행되는지 여부와 관계없이 나타납니다. 이는 서브에이전트가 시작할 때 찍은 스냅샷이므로 나중에 명명된 에이전트는 나타나지 않습니다.

1143 1141 

1144사용자, 프로젝트, 로컬 CLAUDE.md 파일 없이 자신의 서브에이전트 중 하나를 시작하려면 프론트매터 또는 `--agents` JSON에서 [`omitClaudeMd: true`](#supported-frontmatter-fields)를 설정합니다.1142사용자, 프로젝트 및 로컬 CLAUDE.md 파일 없이 자신의 서브에이전트 중 하나를 시작하려면 프론트매터 또는 `--agents` JSON에서 [`omitClaudeMd: true`](#supported-frontmatter-fields)를 설정합니다.

1145 1143 

1146메인 대화는 이러한 서브에이전트의 결과를 읽을 때 여전히 전체 CLAUDE.md를 가지므로 대부분의 규칙이 서브에이전트 자체에 도달할 필요가 없습니다. 규칙이 필요한 경우(예: "`vendor/` 디렉토리 무시"), 위임할 때 Claude에 제공하는 프롬프트에서 다시 명시하십시오.1144메인 대화는 이러한 서브에이전트의 결과를 읽을 때 여전히 전체 CLAUDE.md를 가지므로 대부분의 규칙이 서브에이전트 자체에 도달할 필요가 없습니다. 규칙이 필요한 경우(예: "`vendor/` 디렉토리 무시") 위임할 때 Claude에 제공하는 프롬프트에서 다시 명시합니다.

1147 1145 

1148어떤 서브에이전트가 git 상태를 수신하는지 변경할 수 없습니다. Explore 및 Plan만 건너뜁니다.1146서브에이전트가 git 상태를 받는 것을 변경할 수 없습니다. Explore 및 Plan만 건너뜁니다.

1149 1147 

1150일부 메인 대화 상태는 비포크 서브에이전트에 도달하지 않습니다.1148일부 메인 대화 상태는 비포크 서브에이전트에 도달하지 않습니다.

1151 1149 

1152* **출력 스타일**: 서브에이전트는 자신의 시스템 프롬프트를 실행하므로 [포크](#fork-the-current-conversation)를 제외하고 [출력 스타일](/docs/ko/output-styles)이 응답을 형성하지 않습니다.1150* **출력 스타일**: 서브에이전트는 자신의 시스템 프롬프트를 실행하므로 [포크](#fork-the-current-conversation)를 제외하고 [출력 스타일](/docs/ko/output-styles)이 응답을 형성하지 않습니다.

1153* **자동 메모리**: 메인 대화의 [자동 메모리](/docs/ko/memory#auto-memory)는 로드되지 않습니다. 서브에이전트에 자신의 지속적인 메모리를 제공하려면 [`memory` 필드](#enable-persistent-memory)를 사용합니다.1151* **자동 메모리**: 메인 대화의 [자동 메모리](/docs/ko/memory#auto-memory)는 로드되지 않습니다. 서브에이전트에 자신의 지속적인 메모리를 제공하려면 [`memory` 필드](#enable-persistent-memory)를 사용합니다.

1154* **컨텍스트 윈도우 크기**: 서브에이전트의 컨텍스트 윈도우는 자신의 모델에 의해 크기가 조정되며, 부모의 모델이 아닙니다. 더 작은 윈도우를 가진 모델로 위임하면 해당 서브에이전트에 더 작은 윈도우를 제공합니다.1152* **컨텍스트 윈도우 크기**: 서브에이전트의 컨텍스트 윈도우는 부모의 것이 아닌 자신의 모델에 의해 크기가 조정됩니다. 더 작은 윈도우를 가진 모델로 위임하면 해당 서브에이전트에 더 작은 윈도우가 제공됩니다.

1155 1153 

1156<h4 id="resume-subagents">1154<h4 id="resume-subagents">

1157 서브에이전트 재개1155 서브에이전트 재개

1158</h4>1156</h4>

1159 1157 

1160각 서브에이전트 호출은 이전 호출을 계속하는 대신 새 인스턴스를 생성합니다. 기존 서브에이전트의 작업을 계속하려면 처음부터 시작하는 대신 Claude에게 재개하도록 요청합니다.1158각 서브에이전트 호출은 이전 호출을 계속하는 것이 아니라 새 인스턴스를 만듭니다. 처음부터 시작하는 대신 기존 서브에이전트의 작업을 계속하려면 Claude에 재개하도록 요청합니다.

1161 1159 

1162재개된 서브에이전트는 모든 이전 도구 호출, 결과, 추론을 포함한 전체 대화 기록을 유지합니다. 서브에이전트가 [자신의 백그라운드 서브에이전트](#let-subagents-spawn-their-own-subagents)를 생성한 경우 해당 기록에는 실행되는 동안 전달한 결과가 포함됩니다. 서브에이전트는 새로 시작하는 대신 정확히 중단한 위치에서 계속됩니다.1160재개된 서브에이전트는 모든 이전 도구 호출, 결과 및 추론을 포함한 전체 대화 기록을 유지합니다. 서브에이전트가 [자신의 백그라운드 서브에이전트](#let-subagents-spawn-their-own-subagents)를 생성한 경우 해당 기록에는 실행 중에 전달한 결과가 포함됩니다. 서브에이전트는 처음부터 시작하지 않고 정확히 중단한 위치에서 계속합니다.

1163 1161 

1164* 서브에이전트가 완료되면 Claude는 에이전트 ID를 수신합니다.1162* 서브에이전트가 완료되면 Claude는 에이전트 ID를 받습니다.

1165* 기본 제공 Explore 및 Plan 에이전트는 일회성이며 에이전트 ID를 반환하지 않으므로 Claude는 재개할 수 없습니다. 작업을 계속해야 할 때 `general-purpose` 또는 사용자 정의 서브에이전트를 사용합니다.1163* 기본 제공 Explore 및 Plan 에이전트는 일회성이며 에이전트 ID를 반환하지 않으므로 Claude는 재개할 수 없습니다. 작업을 계속해야 할 때 `general-purpose` 또는 사용자 정의 서브에이전트를 사용합니다.

1166* 서브에이전트가 [`maxTurns`](#supported-frontmatter-fields) 제한에서 중지되면 Claude Code는 반환된 출력을 부분으로 표시합니다. 에이전트 ID를 반환하는 서브에이전트의 경우 Claude Code는 또한 Claude가 중단한 위치에서 계속하도록 서브에이전트에 메시지를 보낼 수 있음을 결과에 표시합니다.1164* 서브에이전트가 [`maxTurns`](#supported-frontmatter-fields) 제한에서 중지되면 Claude Code는 반환된 출력을 부분으로 표시합니다. 에이전트 ID를 반환하는 서브에이전트의 경우 Claude Code는 또한 Claude가 중단한 위치에서 계속하도록 서브에이전트에 메시지를 보낼 수 있음을 결과에 기록합니다.

1167 1165 

1168Claude는 에이전트의 ID 또는 이름을 `to` 필드로 하여 `SendMessage` 도구를 사용하여 재개합니다. `SendMessage`는 [에이전트 팀](/docs/ko/agent-teams)이 활성화되어야 하지 않습니다. `shutdown_request` 및 `plan_approval_response`와 같은 구조화된 팀 프로토콜 메시지만 필요합니다. 서브에이전트 및 팀원을 넘어 교차 세션 메시징이 활성화된 세션에서 Claude는 동일한 도구를 사용하여 [다른 Claude Code 세션](/docs/ko/cross-session-messaging)에 메시지를 보낼 수 있으며, 이 머신 또는 [그 이상](/docs/ko/cross-session-messaging#message-sessions-on-other-machines)입니다.1166Claude는 에이전트의 ID 또는 이름을 `to` 필드로 하여 `SendMessage` 도구를 사용하여 재개합니다. `SendMessage`는 [에이전트 팀](/docs/ko/agent-teams)이 활성화되어야 하지 않습니다. `shutdown_request` 및 `plan_approval_response`와 같은 구조화된 팀 프로토콜 메시지만 필요합니다. 서브에이전트 및 팀원 외에도 교차 세션 메시징이 활성화된 세션에서 Claude는 동일한 도구를 사용하여 [다른 Claude Code 세션](/docs/ko/cross-session-messaging)에 메시지를 보낼 수 있으며 이 컴퓨터 또는 [그 이상](/docs/ko/cross-session-messaging#message-sessions-on-other-machines)에 있습니다.

1169 1167 

1170서브에이전트를 재개하려면 Claude에게 이전 작업을 계속하도록 요청합니다.1168서브에이전트를 재개하려면 Claude에 이전 작업을 계속하도록 요청합니다.

1171 1169 

1172```text wrap theme={null}1170```text wrap theme={null}

1173code-reviewer 서브에이전트를 사용하여 인증 모듈을 검토하세요1171code-reviewer 서브에이전트를 사용하여 인증 모듈을 검토하세요

1174[에이전트 완료]1172[에이전트 완료]

1175 1173 

1176해당 코드 검토를 계속하고 이제 권한 부여 논리를 분석하세요1174해당 코드 검토를 계속하고 이제 인증 논리를 분석하세요

1177[Claude는 이전 대화의 전체 컨텍스트로 서브에이전트를 재개합니다]1175[Claude는 이전 대화의 전체 컨텍스트로 서브에이전트를 재개합니다]

1178```1176```

1179 1177 

1180Claude가 `SendMessage` 도구로 완료된 서브에이전트에 메시지를 보낼 때 서브에이전트는 새 `Agent` 호출 없이 백그라운드에서 재개됩니다. 동일한 사항이 Claude가 `TaskStop` 도구로 중지한 서브에이전트에 적용되며, 중지된 실행이 종료되면 적용됩니다. 재개된 실행은 서브에이전트가 처음 실행된 위치에서 [도구 세트](#run-subagents-in-foreground-or-background)를 유지하고 원본 실행이 워밍한 [프롬프트 캐시](/docs/ko/prompt-caching#subagents-and-the-cache)를 계속 읽을 수 있습니다.1178Claude가 완료된 서브에이전트에 `SendMessage` 도구로 메시지를 보낼 때 서브에이전트는 새 `Agent` 호출 없이 백그라운드에서 재개됩니다. 동일한 사항이 Claude가 `TaskStop` 도구로 중지한 서브에이전트에도 적용되며 중지된 실행이 종료된 후입니다. 재개된 실행은 [서브에이전트가 처음 실행된 위치에서 도구 세트](#run-subagents-in-foreground-or-background)를 유지하고 원본 실행이 워밍한 [프롬프트 캐시](/docs/ko/prompt-caching#subagents-and-the-cache)를 계속 읽을 수 있습니다.

1181 1179 

1182`SendMessage` 도구를 가진 서브에이전트는 해당 메시지도 보낼 수 있습니다. 대화형 세션에서 재개된 에이전트는 메인 대화가 아닌 재개한 서브에이전트에 다시 보고합니다. 해당 서브에이전트는 자신의 작업을 완료하기 전에 결과를 기다립니다. 서브에이전트가 자신이 보고하는 에이전트(예: 자신의 시작자)에 메시지를 보낼 때 Claude Code는 결과를 리디렉션하지 않고 해당 에이전트를 재개합니다.1180`SendMessage` 도구를 가진 서브에이전트는 해당 메시지도 보낼 수 있습니다. 대화형 세션에서 재개된 에이전트는 메인 대화가 아닌 재개한 서브에이전트에 다시 보고합니다. 해당 서브에이전트는 자신의 작업을 완료하기 전에 결과를 기다립니다. 서브에이전트가 자신이 보고하는 에이전트(예: 자신의 시작자)에 메시지를 보낼 때 Claude Code는 결과를 리디렉션하지 않고 해당 에이전트를 재개합니다.

1183 1181 

1184자신이 중지한 서브에이전트(`/tasks`에서 `x` 또는 SDK `stop_task` 요청)는 자동으로 재개되지 않습니다. Claude가 메시지를 보내면 메시지가 거부되고 Claude는 에이전트가 취소되었음을 알립니다.1182`/tasks`에서 `x`로 또는 SDK `stop_task` 요청으로 직접 중지한 서브에이전트는 자동으로 재개되지 않습니다. Claude가 메시지를 보내면 메시지가 거부되고 Claude는 에이전트가 취소되었음을 알립니다.

1185 1183 

1186[해당 서브에이전트의 행이 여전히 서브에이전트 패널에 있는 동안](#run-subagents-in-foreground-or-background) 해당 기록에 입력하여 직접 재개할 수 있습니다. 그 후 Claude의 메시지는 다시 자동으로 재개할 수 있습니다.1184[해당 서브에이전트의 행이 여전히 서브에이전트 패널에 있는 동안](#run-subagents-in-foreground-or-background) 해당 트랜스크립트에 입력하여 직접 재개할 수 있습니다. 그 후 Claude의 메시지는 다시 자동으로 재개할 수 있습니다.

1187 1185 

1188재개는 동일한 ID 아래에서 에이전트의 새 실행을 시작하므로 이미 실패했거나 완료된 서브에이전트는 작업 목록 및 Agent SDK의 작업 이벤트에서 다시 실행 중으로 표시됩니다. v2.1.205 이전에는 재개된 실행이 작동하는 동안 이전 실패 또는 완료 상태를 계속 표시했습니다.1186재개는 동일한 ID 아래에서 에이전트의 새 실행을 시작하므로 이미 실패했거나 완료된 서브에이전트는 작업 목록 및 Agent SDK의 작업 이벤트에서 다시 실행 중으로 표시됩니다. v2.1.205 이전에는 재개된 실행이 작동하는 동안 이전 실패 또는 완료 상태를 계속 표시했습니다.

1189 1187 

1190v2.1.199부터 `SendMessage`는 이름이 여전히 대화에서 이전에 도달한 동일한 에이전트를 참조하는지 확인합니다. 더 새로운 에이전트가 이름을 가져간 경우(예: 이름을 재사용한 재생성된 백그라운드 에이전트) Claude Code는 잘못된 에이전트에 전달하는 대신 전송을 거부하며 오류는 이름이 현재 도달하는 에이전트를 보고하므로 Claude가 재대상화할 수 있습니다. 여전히 실행 중인 이전 에이전트에 도달하려면 Claude는 생성할 때 수신한 에이전트 ID로 주소를 지정합니다. 확인은 현재 대화로 범위가 지정되고 `/clear`에서 재설정됩니다.1188v2.1.199부터 `SendMessage`는 이름이 여전히 대화에서 이전에 도달한 동일한 에이전트를 참조하는지 확인합니다. 더 새로운 에이전트가 이름을 가져간 경우(예: 이름을 재사용한 재생성된 백그라운드 에이전트) Claude Code는 잘못된 에이전트로 전달하지 않고 전송을 거부하며 오류는 이름이 현재 도달하는 에이전트를 보고하므로 Claude가 재대상화할 수 있습니다. 여전히 실행 중인 이전 에이전트에 도달하려면 Claude는 생성할 때 받은 에이전트 ID로 주소를 지정합니다. 확인은 현재 대화로 범위가 지정되고 `/clear`에서 재설정됩니다.

1191 1189 

1192v2.1.198부터 서브에이전트는 시작한 에이전트로부터의 메시지를 일반적인 작업 방향(중간 작업 과정 수정 포함)으로 취급하고 자신의 권한 설정 내에서 작동합니다. 두 제한은 여전히 누가 메시지를 보냈는지 관계없이 유지됩니다. 어떤 에이전트로부터의 메시지도 보류 중인 권한 프롬프트에 대한 승인으로 계산되지 않으며, 어떤 에이전트 메시지도 서브에이전트의 권한 설정, `CLAUDE.md`, 또는 구성을 변경할 수 없습니다. 권한 시스템 또는 자신의 메시지만 승인을 부여할 수 있습니다.1190v2.1.198부터 서브에이전트는 자신을 시작한 에이전트로부터의 메시지를 일반 작업 방향으로 취급하며 작업 중 과정 수정을 포함하고 자신의 권한 설정 내에서 작동합니다. 두 제한은 여전히 메시지를 보낸 사람과 관계없이 유지됩니다. 어떤 에이전트의 메시지도 보류 중인 권한 프롬프트에 대한 승인으로 계산되지 않으며 어떤 에이전트 메시지도 서브에이전트의 권한 설정, `CLAUDE.md` 또는 구성을 변경할 수 없습니다. 권한 시스템 또는 자신의 메시지만 승인을 부여할 수 있습니다.

1193 1191 

1194또한 Claude에게 에이전트 ID를 명시적으로 참조하려는 경우 요청하거나 `~/.claude/projects/{project}/{sessionId}/subagents/`의 기록 파일에서 ID를 찾을 수 있습니다. 각 기록은 `agent-{agentId}.jsonl`로 저장됩니다.1192명시적으로 참조하려면 Claude에 에이전트 ID를 요청할 수도 있으며 `~/.claude/projects/{project}/{sessionId}/subagents/`의 트랜스크립트 파일에서 ID를 찾을 수 있습니다. 각 트랜스크립트는 `agent-{agentId}.jsonl`로 저장됩니다.

1195 1193 

1196서브에이전트 기록은 메인 대화와 독립적으로 유지됩니다.1194서브에이전트 트랜스크립트는 메인 대화와 독립적으로 유지됩니다.

1197 1195 

1198* **메인 대화 압축**: 메인 대화가 압축될 때 서브에이전트 기록은 영향을 받지 않습니다. 별도의 파일에 저장됩니다.1196* **메인 대화 압축**: 메인 대화가 압축될 때 서브에이전트 트랜스크립트는 영향을 받지 않습니다. 별도의 파일에 저장됩니다.

1199* **세션 지속성**: 서브에이전트 기록은 세션 내에서 유지됩니다. Claude Code를 다시 시작하여 동일한 세션을 재개하면 [서브에이전트를 재개](#resume-subagents)할 수 있습니다.1197* **세션 지속성**: 서브에이전트 트랜스크립트는 세션 내에서 유지됩니다. Claude Code를 다시 시작하여 동일한 세션을 재개하면 [서브에이전트를 재개](#resume-subagents)할 수 있습니다.

1200* **자동 정리**: Claude Code는 `cleanupPeriodDays` 보존 기간(기본값 30일) 후 서브에이전트 기록을 삭제하며, [보존 스윕 규칙](/docs/ko/claude-directory#cleaned-up-automatically)을 따릅니다.1198* **자동 정리**: Claude Code는 `cleanupPeriodDays` 보존 기간(기본값 30일) 후 서브에이전트 트랜스크립트를 삭제하며 [보존 스윕 규칙](/docs/ko/claude-directory#cleaned-up-automatically)을 따릅니다.

1201 1199 

1202<h4 id="auto-compaction">1200<h4 id="auto-compaction">

1203 자동 압축1201 자동 압축


1205 1203 

1206서브에이전트는 메인 대화와 동일한 논리를 사용하여 자동 압축을 지원합니다. 압축은 동일한 조건에서 트리거되며 `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`는 서브에이전트에도 적용됩니다. 재정의가 적용되는 시기는 [환경 변수](/docs/ko/env-vars)를 참조하십시오.1204서브에이전트는 메인 대화와 동일한 논리를 사용하여 자동 압축을 지원합니다. 압축은 동일한 조건에서 트리거되며 `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`는 서브에이전트에도 적용됩니다. 재정의가 적용되는 시기는 [환경 변수](/docs/ko/env-vars)를 참조하십시오.

1207 1205 

1208압축 이벤트는 서브에이전트 기록 파일에 기록됩니다.1206압축 이벤트는 서브에이전트 트랜스크립트 파일에 기록됩니다.

1209 1207 

1210```json theme={null}1208```json theme={null}

1211{1209{

Details

122 122 

123 <tr>123 <tr>

124 <td>청구</td>124 <td>청구</td>

125 <td><strong>Teams:</strong> \$150/seat (Premium) PAYG 사용 가능<br /><strong>Enterprise:</strong> <a href="https://claude.com/contact-sales?utm_source=claude_code&utm_medium=docs&utm_content=third_party_enterprise">영업팀에 문의</a></td>125 <td><strong>Teams:</strong> 좌석당 구독 (PAYG 사용 가능), <a href="https://claude.com/pricing?utm_source=claude_code&utm_medium=docs&utm_content=third_party_pricing#team-&-enterprise">가격 책정</a> 참조<br /><strong>Enterprise:</strong> <a href="https://claude.com/contact-sales?utm_source=claude_code&utm_medium=docs&utm_content=third_party_enterprise">영업팀에 문의</a></td>

126 <td>PAYG</td>126 <td>PAYG</td>

127 <td>AWS를 통한 PAYG</td>127 <td>AWS를 통한 PAYG</td>

128 <td>AWS Marketplace를 통한 PAYG</td>128 <td>AWS Marketplace를 통한 PAYG</td>

Details

382 WebSocket 소스382 WebSocket 소스

383</h3>383</h3>

384 384 

385<Note>

386 WebSocket 소스에는 Claude Code v2.1.195 이상이 필요합니다.

387</Note>

388 

389서버가 이미 WebSocket을 통해 이벤트를 푸시하는 경우 Claude는 폴링 스크립트를 작성하는 대신 직접 연결할 수 있습니다. 각 종류의 소켓 활동은 이벤트가 되거나 감시를 종료합니다:385서버가 이미 WebSocket을 통해 이벤트를 푸시하는 경우 Claude는 폴링 스크립트를 작성하는 대신 직접 연결할 수 있습니다. 각 종류의 소켓 활동은 이벤트가 되거나 감시를 종료합니다:

390 386 

391* **텍스트 메시지**: 각각이 하나의 이벤트가 되며, 메시지가 여러 줄에 걸쳐 있어도 마찬가지입니다.387* **텍스트 메시지**: 각각이 하나의 이벤트가 되며, 메시지가 여러 줄에 걸쳐 있어도 마찬가지입니다.

Details

349 일반적인 설치 문제349 일반적인 설치 문제

350</h2>350</h2>

351 351 

352이는 가장 자주 발생하는 설치 문제와 해결책입니다.352가장 자주 발생하는 설치 문제와 해결 방법입니다.

353 353 

354<h3 id="install-script-returns-html-instead-of-a-shell-script">354<h3 id="install-script-returns-html-instead-of-a-shell-script">

355 설치 스크립트가 셸 스크립트 대신 HTML 반환355 설치 스크립트가 셸 스크립트 대신 HTML을 반환합니다

356</h3>356</h3>

357 357 

358설치 명령을 실행할 때 다음 오류 중 하나가 표시될 수 있습니다:358설치 명령을 실행할 때 다음 오류 중 하나가 표시될 수 있습니다.

359 359 

360```text theme={null}360```text theme={null}

361bash: line 1: syntax error near unexpected token `<'361bash: line 1: syntax error near unexpected token `<'

362bash: line 1: `<!DOCTYPE html>'362bash: line 1: `<!DOCTYPE html>'

363```363```

364 364 

365PowerShell에서 동일한 문제는 반환된 페이지로 파싱 오류로 나타나며, `iex`가 HTML과 CSS를 PowerShell로 실행하려고 시도합니다:365PowerShell에서는 동일한 문제가 반환된 페이지를 가리키는 구문 분석 오류로 나타나며, `iex`가 HTML과 CSS를 PowerShell로 실행하려고 시도합니다.

366 366 

367```text theme={null}367```text theme={null}

368iex : At line:1 char:2310368iex : At line:1 char:2310


371...371...

372```372```

373 373 

374표현은 PowerShell 버전 및 시스템 언어에 따라 다릅니다: `Missing expression after unary operator '--'` 또는 `ParserError`와 함께 `ParseException`이 표시될 수 있습니다. 인용된 텍스트의 HTML 태그 또는 CSS는 이 실패를 식별합니다. 대신 `-OutFile install.ps1`로 다운로드하면 저장된 파일은 동일한 웹 페이지이므로 도움이 되지 않습니다.374표현은 PowerShell 버전과 시스템 언어에 따라 다릅니다. `Missing expression after unary operator '--'` 또는 `ParserError`와 함께 `ParseException`이 표시될 수 있습니다. 인용된 텍스트의 HTML 태그 또는 CSS는 이 오류를 식별합니다. `-OutFile install.ps1`로 다운로드하면 저장된 파일도 동일한 웹 페이지이므로 도움이 되지 않습니다.

375 375 

376요청이 라우팅된 방식에 따라 HTML 본문이 없는 403이 대신 표시될 수 있습니다:376요청이 라우팅된 방식에 따라 HTML 본문이 없는 403이 표시될 수 있습니다.

377 377 

378```text theme={null}378```text theme={null}

379curl: (22) The requested URL returned error: 403379curl: (22) The requested URL returned error: 403

380```380```

381 381 

382이 모든 것은 설치 URL이 설치 스크립트 대신 HTML 페이지 또는 오류 상태를 반환했음을 의미합니다. HTML 페이지에 "App unavailable in region"이 표시되면 Claude Code는 귀국에서 사용할 수 없습니다. [지원되는 국가](https://www.anthropic.com/supported-countries)를 참조하세요.382이 모든 경우는 설치 URL이 설치 스크립트 대신 HTML 페이지 또는 오류 상태를 반환했음을 의미합니다. HTML 페이지에 "App unavailable in region"이라고 표시되면 Claude Code를 사용할 수 없는 국가입니다. [지원되는 국가](https://www.anthropic.com/supported-countries)를 참조하세요.

383 383 

384본문이 없는 단순 403은 종종 동일한 원인을 가지지만 회사 프록시 또는 방화벽이 다운로드를 차단하는 것에서 비롯될 수도 있습니다. 지원되는 국가에 있는데도 여전히 403이 표시되면 아래의 대체 설치 프로그램을 시도하기 전에 [네트워크 연결 확인](#check-network-connectivity)을 진행하세요. 대체 설치 프로그램도 동일한 호스트에 도달하기 때문입니다.384본문이 없는 단순 403은 동일한 원인을 가질 수 있지만 회사 프록시 또는 방화벽이 다운로드를 차단할 수도 있습니다. 지원되는 국가에 있는데도 403이 표시되면 아래의 대체 설치 프로그램을 시도하기 전에 [네트워크 연결 확인](#check-network-connectivity)을 진행하세요. 대체 설치 프로그램도 동일한 호스트에 도달하기 때문입니다.

385 385 

386그렇지 않으면 네트워크 문제, 지역 라우팅 또는 일시적인 서비스 중단으로 인해 발생할 수 있습니다.386그 외에는 네트워크 문제, 지역 라우팅 또는 일시적인 서비스 중단으로 인해 발생할 수 있습니다.

387 387 

388**해결책:**388**해결 방법:**

389 389 

3901. **대체 설치 방법 사용**:3901. **대체 설치 방법 사용**:

391 391 

392 macOS에서 Homebrew를 통해 설치:392 macOS에서는 Homebrew를 통해 설치합니다.

393 393 

394 ```bash theme={null}394 ```bash theme={null}

395 brew install --cask claude-code395 brew install --cask claude-code

396 ```396 ```

397 397 

398 Windows에서 WinGet을 통해 설치:398 Windows에서는 WinGet을 통해 설치합니다.

399 399 

400 ```powershell theme={null}400 ```powershell theme={null}

401 winget install Anthropic.ClaudeCode401 winget install Anthropic.ClaudeCode

402 ```402 ```

403 403 

404 그런 다음 `claude --version`을 실행하여 확인하세요: 명령은 `2.1.211 (Claude Code)`와 같은 버전 번호를 인쇄합니다. 셸이 `claude`를 찾을 수 없다고 보고하면 새 터미널 창을 열고 다시 시도하세요: 설치한 세션은 이전 `PATH`를 유지합니다.404 그런 다음 `claude --version`을 실행하여 확인합니다. 명령은 `2.1.211 (Claude Code)`와 같은 버전 번호를 출력합니다. 셸에서 `claude`를 찾을 수 없다고 보고하면 새 터미널 창을 열고 다시 시도합니다. 설치한 세션은 이전 `PATH`를 유지합니다.

405 405 

4062. **몇 분 후 다시 시도**: 문제는 종종 일시적입니다. 기다렸다가 원래 명령을 다시 시도하세요.4062. **몇 분 후 다시 시도합니다**: 이 문제는 종종 일시적입니다. 기다렸다가 원래 명령을 다시 시도합니다.

407 407 

408<h3 id="command-not-found-claude-after-installation">408<h3 id="command-not-found-claude-after-installation">

409 설치 후 `command not found: claude`409 설치 후 `command not found: claude`

410</h3>410</h3>

411 411 

412설치가 완료되었지만 `claude`가 작동하지 않습니다. 정확한 오류는 플랫폼에 따라 다릅니다:412설치가 완료되었지만 `claude`가 작동하지 않습니다. 정확한 오류는 플랫폼에 따라 다릅니다.

413 413 

414| 플랫폼 | 오류 메시지 |414| 플랫폼 | 오류 메시지 |

415| :- | :- |415| :- | :- |


418| Windows CMD | `'claude' is not recognized as an internal or external command` |418| Windows CMD | `'claude' is not recognized as an internal or external command` |

419| PowerShell | `claude : The term 'claude' is not recognized as the name of a cmdlet` |419| PowerShell | `claude : The term 'claude' is not recognized as the name of a cmdlet` |

420 420 

421이는 설치 디렉토리가 셸의 검색 경로에 없음을 의미합니다. 각 플랫폼의 수정 사항은 [PATH 확인](#verify-your-path)을 참조하세요.421이는 설치 디렉토리가 셸의 검색 경로에 없음을 의미합니다. 각 플랫폼의 수정 방법은 [PATH 확인](#verify-your-path)을 참조하세요.

422 422 

423<h3 id="curl-56-failure-writing-output-to-destination">423<h3 id="curl-56-failure-writing-output-to-destination">

424 `curl: (56) Failure writing output to destination`424 `curl: (56) Failure writing output to destination`

425</h3>425</h3>

426 426 

427`curl ... | bash` 명령은 스크립트를 다운로드하고 Bash에 파이프하여 실행합니다. 이 오류와 관련된 `curl: (23) Failure writing output to destination`은 Bash가 완전한 스크립트를 받지 못했음을 의미합니다. 종료 코드 56은 다운로드 자체가 중단되었음을 나타내고 종료 코드 23은 curl이 받은 것을 파이프에 쓸 수 없었음을 나타내며, 일반적으로 Bash가 조기에 종료되었기 때문입니다.427`curl ... | bash` 명령은 스크립트를 다운로드하고 Bash로 실행하기 위해 파이프합니다. 이 오류와 관련된 `curl: (23) Failure writing output to destination`은 Bash가 완전한 스크립트를 받지 못했음을 의미합니다. 종료 코드 56은 다운로드 자체가 중단되었음을 나타내고, 종료 코드 23은 curl이 받은 내용을 파이프에 쓸 수 없었음을 나타냅니다. 보통 Bash가 조기에 종료되었기 때문입니다.

428 428 

429[네트워크 연결 확인](#check-network-connectivity)의 확인으로 `downloads.claude.ai`에 도달할 수 있는지 테스트하세요. 서버에 도달했으면 원래 실패는 일시적이었을 가능성이 높습니다. 설치 명령을 다시 시도하세요. [대체 설치 방법](/docs/ko/setup#install-claude-code)을 시도할 수도 있습니다.429[네트워크 연결 확인](#check-network-connectivity)의 확인으로 `downloads.claude.ai`에 도달할 수 있는지 테스트합니다. 서버에 도달했다면 원래 오류는 일시적일 가능성이 높습니다. 설치 명령을 다시 시도합니다. [대체 설치 방법](/docs/ko/setup#install-claude-code)을 시도할 수도 있습니다.

430 430 

431<h3 id="homebrew-cask-unavailable-or-outdated">431<h3 id="homebrew-cask-unavailable-or-outdated">

432 Homebrew cask를 사용할 수 없거나 오래됨432 Homebrew cask를 사용할 수 없거나 오래되었습니다

433</h3>433</h3>

434 434 

435Homebrew가 `Error: Cask 'claude-code' is unavailable: No Cask with this name exists`를 보고하면 Homebrew cask 인덱스의 로컬 복사본이 cask의 게시 이전입니다. 인덱스를 새로 고치고 다시 시도하세요:435Homebrew가 `Error: Cask 'claude-code' is unavailable: No Cask with this name exists`를 보고하면 Homebrew cask 인덱스의 로컬 복사본이 cask의 게시 이전입니다. 인덱스를 새로 고치고 다시 시도합니다.

436 436 

437```bash theme={null}437```bash theme={null}

438brew update438brew update

439brew install --cask claude-code439brew install --cask claude-code

440```440```

441 441 

442Homebrew가 예상보다 이전 Claude Code 버전을 설치하면 동일한 오래된 인덱스가 일반적으로 원인입니다. `claude-code` cask는 안정적인 채널을 추적하며 일반적으로 최신 릴리스보다 약 1주일 뒤떨어져 있습니다. 최신 버전의 경우 대신 `brew install --cask claude-code@latest`를 실행하세요. 두 cask의 차이점은 [릴리스 채널 구성](/docs/ko/setup#configure-release-channel)을 참조하세요.442Homebrew가 예상보다 오래된 Claude Code 버전을 설치하면 동일한 오래된 인덱스가 보통 원인입니다. `claude-code` cask는 안정 채널을 추적하며 보통 최신 릴리스보다 약 1주일 뒤떨어져 있습니다. 최신 버전을 원하면 `brew install --cask claude-code@latest`를 대신 실행합니다. 두 cask의 차이점은 [릴리스 채널 구성](/docs/ko/setup#configure-release-channel)을 참조하세요.

443 443 

444<h3 id="tls-or-ssl-connection-errors">444<h3 id="tls-or-ssl-connection-errors">

445 TLS 또는 SSL 연결 오류445 TLS 또는 SSL 연결 오류

446</h3>446</h3>

447 447 

448`curl: (35) TLS connect error`, `schannel: next InitializeSecurityContext failed` 또는 PowerShell의 `Could not establish trust relationship for the SSL/TLS secure channel`과 같은 오류는 TLS 핸드셰이크 실패를 나타냅니다.448다음과 같은 오류는 TLS 핸드셰이크가 실패했음을 의미합니다.

449 449 

450**해결책:**450* `curl: (35) TLS connect error`

451* `schannel: next InitializeSecurityContext failed`

452* PowerShell의 `Could not create SSL/TLS secure channel`

453* PowerShell의 `Could not establish trust relationship for the SSL/TLS secure channel`

454 

455**해결 방법:**

451 456 

4521. **시스템 CA 인증서 업데이트**:4571. **시스템 CA 인증서 업데이트**:

453 458 


457 sudo apt-get update && sudo apt-get install ca-certificates462 sudo apt-get update && sudo apt-get install ca-certificates

458 ```463 ```

459 464 

460 macOS에서 시스템 curl은 Keychain 신뢰 저장소를 사용합니다. macOS 자체를 업데이트하면 루트 인증서가 업데이트됩니다.465 macOS에서는 시스템 curl이 Keychain 신뢰 저장소를 사용합니다. macOS 자체를 업데이트하면 루트 인증서가 업데이트됩니다.

461 466 

4622. **Windows에서 설치 프로그램을 실행하기 전에 PowerShell에서 TLS 1.2 활성화**:4672. **Windows에서 설치 프로그램을 실행하기 전에 PowerShell에서 TLS 1.2 활성화**:

463 ```powershell theme={null}468 ```powershell theme={null}


465 irm https://claude.ai/install.ps1 | iex470 irm https://claude.ai/install.ps1 | iex

466 ```471 ```

467 472 

4683. **프록시 또는 방화벽 간섭 확인**: TLS 검사를 수행하는 회사 프록시는 `unable to get local issuer certificate` 및 `SELF_SIGNED_CERT_IN_CHAIN`을 포함한 이러한 오류를 유발할 수 있습니다. 설치 단계의 경우 설치 다운로드가 회사 프록시의 CA를 신뢰하도록 하세요:4733. **프록시 또는 방화벽 간섭 확인**: TLS 검사를 수행하는 회사 프록시는 `unable to get local issuer certificate` 및 `SELF_SIGNED_CERT_IN_CHAIN`을 포함한 이러한 오류를 유발할 수 있습니다. 설치 단계의 경우 설치 다운로드가 회사 프록시의 CA를 신뢰하도록 합니다.

469 474 

470 <Tabs>475 <Tabs>

471 <Tab title="macOS/Linux">476 <Tab title="macOS/Linux">


475 </Tab>480 </Tab>

476 481 

477 <Tab title="Windows PowerShell">482 <Tab title="Windows PowerShell">

478 PowerShell 설치 프로그램은 .NET을 통해 다운로드하며, 이는 Windows 인증서 저장소에 대해 TLS를 검증합니다. IT 팀에 프록시의 CA 인증서를 Windows 저장소에 추가하도록 요청하세요(아직 없는 경우). 그런 다음 설치 프로그램을 실행하세요:483 PowerShell 설치 프로그램은 .NET을 통해 다운로드하며, Windows 인증서 저장소에 대해 TLS를 검증합니다. IT 팀에 프록시의 CA 인증서를 Windows 저장소에 추가하도록 요청합니다(아직 없는 경우). 그런 다음 설치 프로그램을 실행합니다.

479 484 

480 ```powershell theme={null}485 ```powershell theme={null}

481 irm https://claude.ai/install.ps1 | iex486 irm https://claude.ai/install.ps1 | iex


483 </Tab>488 </Tab>

484 </Tabs>489 </Tabs>

485 490 

486 설치된 Claude Code 자체의 경우 `NODE_EXTRA_CA_CERTS`를 설정하여 API 요청이 동일한 번들을 신뢰하도록 하세요:491 설치된 Claude Code 자체의 경우 `NODE_EXTRA_CA_CERTS`를 설정하여 API 요청이 동일한 번들을 신뢰하도록 합니다.

487 492 

488 <Tabs>493 <Tabs>

489 <Tab title="macOS/Linux">494 <Tab title="macOS/Linux">


499 </Tab>504 </Tab>

500 </Tabs>505 </Tabs>

501 506 

502 인증서 파일이 없으면 IT 팀에 문의하세요. 프록시가 원인인지 확인하기 위해 직접 연결에서 시도할 수도 있습니다.507 인증서 파일이 없으면 IT 팀에 요청합니다. 프록시가 원인인지 확인하기 위해 직접 연결에서 시도할 수도 있습니다.

503 508 

5044. **Windows에서 차단된 해지 확인 해결**. `CRYPT_E_NO_REVOCATION_CHECK (0x80092012)` 및 `CRYPT_E_REVOCATION_OFFLINE (0x80092013)` 오류는 curl이 서버에 도달했지만 네트워크가 인증서 해지 조회를 차단함을 의미하며, 이는 회사 방화벽 뒤에서 일반적입니다. 실패한 명령이 `install.cmd`를 다운로드하는 `curl`인 경우 `--ssl-revoke-best-effort`를 추가하여 명령 프롬프트에서 다시 실행하세요:5094. **Windows에서 차단된 해지 확인 해결**. 오류 `CRYPT_E_NO_REVOCATION_CHECK (0x80092012)` 및 `CRYPT_E_REVOCATION_OFFLINE (0x80092013)`은 curl이 서버에 도달했지만 네트워크가 인증서 해지 조회를 차단함을 의미합니다. 이는 회사 방화벽 뒤에서 일반적입니다. 실패한 명령이 `install.cmd`를 다운로드하는 `curl`인 경우 `--ssl-revoke-best-effort`를 추가하여 명령 프롬프트에서 다시 실행합니다.

505 ```batch theme={null}510 ```batch theme={null}

506 curl --ssl-revoke-best-effort -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd511 curl --ssl-revoke-best-effort -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

507 ```512 ```

508 스크립트 자체의 다운로드가 동일한 오류를 겪으면 자동으로 최선의 노력 해지 확인으로 다시 시도하므로 플래그는 직접 실행하는 명령에만 필요합니다. 최선의 노력 확인은 도달할 수 없는 해지 서버를 허용하지만 알려진 해지된 인증서는 거부하며, 브라우저가 해지를 처리하는 방식과 일치합니다. PowerShell에서 PowerShell 설치 프로그램을 실행하여 curl의 해지 확인을 완전히 피할 수도 있습니다. 이는 .NET을 통해 다운로드하며 해지 서버에 도달할 수 없을 때 실패하지 않습니다:513 스크립트 자체의 다운로드가 동일한 오류에 직면하면 자동으로 최선의 노력 해지 확인으로 다시 시도하므로 플래그는 직접 실행하는 명령에만 필요합니다. 최선의 노력 확인은 도달할 수 없는 해지 서버를 허용하지만 알려진 해지된 인증서는 거부하며, 브라우저가 해지를 처리하는 방식과 일치합니다. PowerShell에서 PowerShell 설치 프로그램을 실행하여 curl의 해지 확인을 완전히 피할 수도 있습니다. PowerShell 설치 프로그램은 .NET을 통해 다운로드하며 해지 서버에 도달할 수 없을 때 실패하지 않습니다.

509 ```powershell theme={null}514 ```powershell theme={null}

510 irm https://claude.ai/install.ps1 | iex515 irm https://claude.ai/install.ps1 | iex

511 ```516 ```


515 `Failed to fetch version from downloads.claude.ai`520 `Failed to fetch version from downloads.claude.ai`

516</h3>521</h3>

517 522 

518설치 프로그램이 다운로드 서버에 도달할 수 없습니다. 이는 일반적으로 `downloads.claude.ai`가 네트워크에서 차단됨을 의미합니다. [네트워크 연결 확인](#check-network-connectivity)을 참조하세요.523설치 프로그램이 다운로드 서버에 도달할 수 없습니다. 이는 보통 `downloads.claude.ai`가 네트워크에서 차단되었음을 의미합니다. [네트워크 연결 확인](#check-network-connectivity)을 참조하세요.

519 524 

520<h3 id="wrong-install-command-on-windows">525<h3 id="wrong-install-command-on-windows">

521 Windows에서 잘못된 설치 명령526 Windows에서 잘못된 설치 명령

522</h3>527</h3>

523 528 

524`'irm' is not recognized`, `The token '&&' is not valid`, `A parameter cannot be found that matches parameter name 'fsSL'` 또는 `'bash' is not recognized as the name of a cmdlet`이 표시되면 다른 셸 또는 운영 체제의 설치 명령을 복사했습니다. 명령이 스크립트의 텍스트를 인쇄하면 부분만 실행했습니다.529`'irm' is not recognized`, `The token '&&' is not a valid statement separator`, `A parameter cannot be found that matches parameter name 'fsSL'` 또는 `'bash' is not recognized as the name of a cmdlet`이 표시되면 다른 셸 또는 운영 체제의 설치 명령을 복사했습니다. 명령이 스크립트의 텍스트를 출력하면 일부만 실행했습니다.

525 530 

526* **`irm` 인식 안 됨**: CMD에 있고 PowerShell이 아닙니다. 두 가지 옵션이 있습니다:531* **`irm` not recognized**: CMD에 있으며 PowerShell이 아닙니다. 두 가지 옵션이 있습니다.

527 532 

528 시작 메뉴에서 "PowerShell"을 검색하여 PowerShell을 열고 원래 설치 명령을 실행하세요:533 시작 메뉴에서 "PowerShell"을 검색하여 PowerShell을 열고 원래 설치 명령을 실행합니다.

529 534 

530 ```powershell theme={null}535 ```powershell theme={null}

531 irm https://claude.ai/install.ps1 | iex536 irm https://claude.ai/install.ps1 | iex

532 ```537 ```

533 538 

534 또는 CMD에 머물러 있고 CMD 설치 프로그램을 대신 사용하세요:539 또는 CMD에 머물러 있고 CMD 설치 프로그램을 대신 사용합니다.

535 540 

536 ```batch theme={null}541 ```batch theme={null}

537 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd542 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

538 ```543 ```

539 544 

540* **`&&` 유효하지 않음**: PowerShell에 있지만 CMD 설치 프로그램 명령을 실행했습니다. PowerShell 설치 프로그램을 사용하십시오:545* **`&&` not a valid statement separator**: PowerShell에 있지만 CMD 설치 프로그램 명령을 실행했습니다. PowerShell 설치 프로그램을 사용합니다.

541 ```powershell theme={null}546 ```powershell theme={null}

542 irm https://claude.ai/install.ps1 | iex547 irm https://claude.ai/install.ps1 | iex

543 ```548 ```

544 549 

545* **`A parameter cannot be found that matches parameter name 'fsSL'`**: Windows PowerShell에서 macOS/Linux `curl -fsSL ... | bash` 설치 프로그램을 실행했습니다. 여기서 `curl`은 `Invoke-WebRequest`의 별칭이며 `-fsSL` 플래그를 거부합니다. 대신 PowerShell 설치 프로그램을 사용하세요:550* **`A parameter cannot be found that matches parameter name 'fsSL'`**: Windows PowerShell에서 macOS/Linux `curl -fsSL ... | bash` 설치 프로그램을 실행했습니다. 여기서 `curl`은 `Invoke-WebRequest`의 별칭이며 `-fsSL` 플래그를 거부합니다. PowerShell 설치 프로그램을 대신 사용합니다.

546 ```powershell theme={null}551 ```powershell theme={null}

547 irm https://claude.ai/install.ps1 | iex552 irm https://claude.ai/install.ps1 | iex

548 ```553 ```

549 554 

550* **`bash` 인식 안 됨**: Windows에서 macOS/Linux 설치 프로그램을 실행했습니다. 대신 PowerShell 설치 프로그램을 사용하세요:555* **`bash` not recognized**: Windows에서 macOS/Linux 설치 프로그램을 실행했습니다. PowerShell 설치 프로그램을 대신 사용합니다.

551 ```powershell theme={null}556 ```powershell theme={null}

552 irm https://claude.ai/install.ps1 | iex557 irm https://claude.ai/install.ps1 | iex

553 ```558 ```

554 559 

555* **명령이 스크립트 텍스트를 인쇄함**: 다운로드 절반을 실행하는 부분 없이 실행했습니다. `irm https://claude.ai/install.ps1`만으로는 다운로드된 스크립트를 터미널에 인쇄합니다. 이를 실행하려면 `iex`에 파이프하세요:560* **명령이 스크립트 텍스트를 출력합니다**: 실행하는 부분 없이 명령의 다운로드 절반만 실행했습니다. `irm https://claude.ai/install.ps1`은 단독으로 다운로드된 스크립트를 터미널에 출력합니다. `iex`로 파이프하여 실행합니다.

556 561 

557 ```powershell theme={null}562 ```powershell theme={null}

558 irm https://claude.ai/install.ps1 | iex563 irm https://claude.ai/install.ps1 | iex

559 ```564 ```

560 565 

561 CMD에서 `-o` 없이 `curl -fsSL https://claude.ai/install.cmd`는 배치 스크립트를 저장하는 대신 인쇄합니다. 완전한 명령을 실행하세요:566 CMD에서 `-o` 없이 `curl -fsSL https://claude.ai/install.cmd`는 배치 스크립트를 저장하는 대신 출력합니다. 완전한 명령을 실행합니다.

562 567 

563 ```batch theme={null}568 ```batch theme={null}

564 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd569 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

565 ```570 ```

566 571 

567어느 설치 프로그램을 사용하든 작동했는지 확인하세요: 새 터미널을 열고 `claude --version`을 실행하세요. 이는 `2.1.211 (Claude Code)`와 같은 버전 번호를 인쇄합니다.572어떤 설치 프로그램을 사용하든 작동했는지 확인합니다. 새 터미널을 열고 `claude --version`을 실행합니다. 이는 `2.1.211 (Claude Code)`와 같은 버전 번호를 출력합니다.

568 573 

569<h3 id="running-scripts-is-disabled-on-this-system">574<h3 id="running-scripts-is-disabled-on-this-system">

570 `running scripts is disabled on this system`575 `running scripts is disabled on this system`

571</h3>576</h3>

572 577 

573Windows에서 npm을 통해 Claude Code를 설치하거나 실행하면 `SecurityError`로 실패할 수 있습니다:578Windows에서 npm을 통해 Claude Code를 설치하거나 실행하면 `SecurityError`로 실패할 수 있습니다.

574 579 

575```text theme={null}580```text theme={null}

576npm : File C:\Program Files\nodejs\npm.ps1 cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.581npm : File C:\Program Files\nodejs\npm.ps1 cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.


578 + CategoryInfo : SecurityError: (:) [], PSSecurityException583 + CategoryInfo : SecurityError: (:) [], PSSecurityException

579```584```

580 585 

581npm 설치 후 `claude`를 실행할 때 동일한 오류가 `claude.ps1`의 이름을 지정합니다. PowerShell의 실행 정책은 npm이 명령에 대해 생성하는 `.ps1` 런처 스크립트를 차단하고 있습니다. 정책은 스크립트 파일에 적용되므로 다운로드된 텍스트를 직접 실행하는 PowerShell 설치 프로그램 `irm https://claude.ai/install.ps1 | iex`에는 영향을 주지 않습니다.586npm 설치 후 `claude`를 실행할 때 동일한 오류가 `claude.ps1`의 이름을 지정합니다. PowerShell의 실행 정책이 npm이 명령에 대해 생성하는 `.ps1` 런처 스크립트를 차단합니다. 정책은 스크립트 파일에 적용되므로 다운로드된 텍스트를 직접 실행하는 PowerShell 설치 프로그램 `irm https://claude.ai/install.ps1 | iex`에는 영향을 주지 않습니다.

582 587 

583**해결책:**588**해결 방법:**

584 589 

5851. **사용자에 대해 로컬로 생성된 스크립트 허용**한 다음 다시 시도하세요:5901. **사용자에 대해 로컬로 생성된 스크립트 허용**한 다음 다시 시도합니다.

586 ```powershell theme={null}591 ```powershell theme={null}

587 Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser592 Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

588 ```593 ```

5892. **`.cmd` 런처 대신 호출**: `npm.cmd` 및 `claude.cmd`는 동일한 작업을 수행하며 정책은 이들을 다루지 않습니다.5942. **`.cmd` 런처 대신 호출**: `npm.cmd` 및 `claude.cmd`는 동일한 작업을 수행하며 정책이 이를 적용하지 않습니다.

5903. **npm 대신 [PowerShell 설치 프로그램](/docs/ko/setup#install-claude-code) 사용**. 이는 `.ps1` 스크립트가 아닌 바이너리를 설치합니다.5953. **npm 대신 [PowerShell 설치 프로그램](/docs/ko/setup#install-claude-code) 사용**. `.ps1` 스크립트가 아닌 바이너리를 설치합니다.

591 596 

592<h3 id="the-process-cannot-access-the-file-during-windows-install">597<h3 id="the-process-cannot-access-the-file-during-windows-install">

593 Windows 설치 중 `The process cannot access the file`598 Windows 설치 중 `The process cannot access the file`

594</h3>599</h3>

595 600 

596PowerShell 설치 프로그램이 `Failed to download binary: The process cannot access the file ... because it is being used by another process`로 실패하면 설치 프로그램이 `%USERPROFILE%\.claude\downloads`에 쓸 수 없습니다. 이는 일반적으로 이전 설치 시도가 여전히 실행 중이거나 바이러스 백신 소프트웨어가 해당 폴더의 부분적으로 다운로드된 바이너리를 스캔하고 있음을 의미합니다.601PowerShell 설치 프로그램이 `Failed to download binary: The process cannot access the file ... because it is being used by another process`로 실패하면 설치 프로그램이 `%USERPROFILE%\.claude\downloads`에 쓸 수 없습니다. 이는 보통 이전 설치 시도가 여전히 실행 중이거나 바이러스 백신 소프트웨어가 해당 폴더의 부분적으로 다운로드된 바이너리를 스캔하고 있음을 의미합니다.

597 602 

598설치 프로그램을 실행하는 다른 PowerShell 창을 닫고 바이러스 백신 스캔이 파일을 해제할 때까지 기다리세요. 그런 다음 다운로드 폴더를 삭제하고 설치 프로그램을 다시 실행하세요:603설치 프로그램을 실행하는 다른 PowerShell 창을 닫고 바이러스 백신 스캔이 파일을 해제할 때까지 기다립니다. 그런 다음 다운로드 폴더를 삭제하고 설치 프로그램을 다시 실행합니다.

599 604 

600```powershell theme={null}605```powershell theme={null}

601Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\downloads"606Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\downloads"


606 Windows에서 업데이트 후 `claude.exe` 누락611 Windows에서 업데이트 후 `claude.exe` 누락

607</h3>612</h3>

608 613 

609Claude Code가 Windows에서 업데이트된 직후 터미널이 `'claude' is not recognized`를 보고하면 `%USERPROFILE%\.local\bin`에 여전히 `claude.exe`가 포함되어 있는지 확인하세요. 해당 디렉토리가 PATH에 없으면 [PATH 수정](#command-not-found-claude-after-installation)을 참조하세요. Windows에서 업데이트하려면 Claude Code는 기존 `claude.exe`를 백업으로 옆으로 이름을 바꾸고 새 버전을 제자리에 이동합니다. 새 버전을 제자리에 이동하지 못하고 Claude Code가 백업을 다시 이름을 바꿀 수도 없으면 디렉토리는 백업을 유지하지만 `claude.exe`가 없습니다.614터미널이 Windows에서 Claude Code가 업데이트된 직후 `'claude' is not recognized`를 보고하면 `%USERPROFILE%\.local\bin`에 여전히 `claude.exe`가 포함되어 있는지 확인합니다. 해당 디렉토리가 PATH에 없으면 [PATH 수정](#command-not-found-claude-after-installation)을 참조하세요. Windows에서 업데이트하려면 Claude Code가 기존 `claude.exe`를 백업으로 이름을 바꾸고 새 버전을 제자리에 이동합니다. 새 버전을 제자리에 이동하지 못하고 Claude Code가 백업을 다시 이름을 바꿀 수도 없으면 디렉토리는 백업을 유지하지만 `claude.exe`가 없습니다.

610 615 

611백업은 `claude.exe.old.` 다음에 숫자 타임스탬프가 오는 동일한 디렉토리의 파일입니다. PowerShell에서 다음을 실행하여 최신 백업을 `claude.exe`로 이름을 바꾸세요:616백업은 `claude.exe.old.` 다음에 숫자 타임스탬프가 오는 이름으로 시작하는 동일한 디렉토리의 파일입니다. PowerShell에서 다음을 실행하여 최신 백업을 `claude.exe`로 이름을 바꿉니다.

612 617 

613```powershell theme={null}618```powershell theme={null}

614Get-ChildItem "$env:USERPROFILE\.local\bin\claude.exe.old.*" | Sort-Object Name | Select-Object -Last 1 | Rename-Item -NewName claude.exe619Get-ChildItem "$env:USERPROFILE\.local\bin\claude.exe.old.*" | Sort-Object Name | Select-Object -Last 1 | Rename-Item -NewName claude.exe

615```620```

616 621 

617그런 다음 `claude --version`을 실행하여 수정을 확인하세요. 복원된 `claude.exe`는 버전 번호를 인쇄합니다.622그런 다음 `claude --version`을 실행하여 수정을 확인합니다. 복원된 `claude.exe`는 버전 번호를 출력합니다.

618 623 

619`claude.exe.old.*` 파일이 없거나 이름 바꾸기 후에도 `claude`가 여전히 실패하면 대신 다시 설치하세요:624`claude.exe.old.*` 파일이 없거나 이름 바꾸기 후에도 `claude`가 실패하면 대신 다시 설치합니다.

620 625 

621```powershell theme={null}626```powershell theme={null}

622irm https://claude.ai/install.ps1 | iex627irm https://claude.ai/install.ps1 | iex

623```628```

624 629 

625v2.1.281 이전에는 Claude Code가 `claude.exe`가 여전히 누락된 동안 백업을 삭제할 수 있었습니다.630v2.1.281 이전에는 Claude Code가 `claude.exe`가 여전히 누락된 상태에서 백업을 삭제할 수 있었습니다.

626 631 

627<h3 id="install-killed-on-low-memory-linux-servers">632<h3 id="install-killed-on-low-memory-linux-servers">

628 저메모리 Linux 서버에서 설치 중단633 메모리 부족 Linux 서버에서 설치 중단

629</h3>634</h3>

630 635 

631설치 중에 `Killed` 메시지가 표시되면 일반적으로 Linux OOM(메모리 부족) killer가 시스템이 메모리 부족으로 인해 `claude install` 단계를 종료했음을 의미합니다. 이는 작은 VPS 및 클라우드 인스턴스에서 일반적입니다. 설치 스크립트는 원인을 보고하고 종료 코드 137로 종료됩니다. 이 예에서 줄 번호와 프로세스 ID는 릴리스 및 실행에 따라 다릅니다:636설치 중 `Killed` 메시지는 보통 Linux OOM(메모리 부족) 킬러가 시스템의 여유 메모리가 부족하여 `claude install` 단계를 종료했음을 의미합니다. 이는 작은 VPS 및 클라우드 인스턴스에서 일반적입니다. 설치 스크립트는 원인을 보고하고 코드 137로 종료합니다. 이 예에서 줄 번호와 프로세스 ID는 릴리스 및 실행에 따라 다릅니다.

632 637 

633```text theme={null}638```text theme={null}

634Setting up Claude Code...639Setting up Claude Code...


637Claude Code needs roughly 512MB of free memory to install. Free up memory, then run this script again.642Claude Code needs roughly 512MB of free memory to install. Free up memory, then run this script again.

638```643```

639 644 

640설치에는 대략 512MB의 여유 메모리가 필요하며 Claude Code를 실행하려면 더 많은 메모리가 필요합니다. [시스템 요구사항](/docs/ko/setup#system-requirements)을 참조하세요.645설치하려면 대략 512MB의 여유 메모리가 필요하며, Claude Code를 실행하려면 더 많은 메모리가 필요합니다. [시스템 요구 사항](/docs/ko/setup#system-requirements)을 참조하세요.

641 646 

642**해결책:**647**해결 방법:**

643 648 

6441. **서버의 RAM이 제한된 경우 스왑 공간 추가**. 스왑은 디스크 공간을 오버플로우 메모리로 사용하여 낮은 물리적 RAM으로도 설치를 완료할 수 있게 합니다.6491. **서버의 RAM이 제한되어 있으면 스왑 공간 추가**. 스왑은 디스크 공간을 오버플로우 메모리로 사용하여 물리적 RAM이 낮아도 설치를 완료할 수 있습니다.

645 650 

646 2GB 스왑 파일을 만들고 활성화하세요:651 2GB 스왑 파일을 생성하고 활성화합니다.

647 652 

648 ```bash theme={null}653 ```bash theme={null}

649 sudo fallocate -l 2G /swapfile654 sudo fallocate -l 2G /swapfile


652 sudo swapon /swapfile657 sudo swapon /swapfile

653 ```658 ```

654 659 

655 그런 다음 설치를 다시 시도하세요:660 그런 다음 설치를 다시 시도합니다.

656 661 

657 ```bash theme={null}662 ```bash theme={null}

658 curl -fsSL https://claude.ai/install.sh | bash663 curl -fsSL https://claude.ai/install.sh | bash

659 ```664 ```

660 665 

6612. **설치하기 전에 다른 프로세스를 닫아** 메모리를 확보하세요.6662. **설치 전에 다른 프로세스를 닫아** 메모리를 확보합니다.

662 667 

6633. **가능하면 더 큰 인스턴스 사용**. Claude Code는 최소 4GB의 RAM이 필요합니다.6683. **가능하면 더 큰 인스턴스 사용**. Claude Code는 최소 4GB의 RAM이 필요합니다.

664 669 


666 Docker에서 설치 중단671 Docker에서 설치 중단

667</h3>672</h3>

668 673 

669Docker 컨테이너에서 Claude Code를 설치할 때 root로 `/`에 설치하면 중단될 수 있습니다.674Docker 컨테이너에서 Claude Code를 설치할 때 `/`에 루트로 설치하면 중단될 수 있습니다.

670 675 

671**해결책:**676**해결 방법:**

672 677 

6731. **설치 프로그램을 실행하기 전에 작업 디렉토리 설정**. `/`에서 실행하면 설치 프로그램이 전체 파일 시스템을 스캔하여 과도한 메모리 사용을 유발합니다. `WORKDIR`을 설정하면 스캔이 작은 디렉토리로 제한됩니다:6781. **설치 프로그램을 실행하기 전에 작업 디렉토리 설정**. `/`에서 실행하면 설치 프로그램이 전체 파일 시스템을 스캔하여 과도한 메모리 사용을 유발합니다. `WORKDIR`을 설정하면 스캔이 작은 디렉토리로 제한됩니다.

674 ```dockerfile theme={null}679 ```dockerfile theme={null}

675 WORKDIR /tmp680 WORKDIR /tmp

676 RUN curl -fsSL https://claude.ai/install.sh | bash681 RUN curl -fsSL https://claude.ai/install.sh | bash

677 ```682 ```

678 683 

6792. **Docker에 더 많은 메모리 제공** Docker Desktop을 사용하는 경우. **Settings > Resources**를 열고 메모리 제한을 높이고 빌드를 다시 실행하세요.6842. **Docker Desktop을 사용하는 경우 Docker에 더 많은 메모리 제공**. 빌드 컨테이너는 Docker Desktop 가상 머신에 할당된 메모리를 공유하므로 Docker Desktop에서 **Settings > Resources**를 열고 메모리 제한을 높인 다음 빌드를 다시 실행합니다.

680 685 

681<h3 id="raw-mode-is-not-supported-during-install">686<h3 id="raw-mode-is-not-supported-during-install">

682 설치 중 `Raw mode is not supported`687 설치 중 `Raw mode is not supported`

683</h3>688</h3>

684 689 

685조직의 [서버 관리 설정](/docs/ko/server-managed-settings)에 [보안 승인](/docs/ko/server-managed-settings#security-approval-dialogs)이 필요한 변경 사항이 포함되어 있으면 Claude Code 버전 2.1.246 이전에는 `claude install` 중에 승인 대화 상자를 표시하려고 시도합니다. 대화 상자는 stdin의 터미널이 필요합니다. 설치 프로그램이 `curl -fsSL https://claude.ai/install.sh | bash`처럼 파이프에서 `claude install`을 실행하면 stdin은 터미널이 아닌 파이프이므로 설치가 `Raw mode is not supported`를 포함하는 오류로 실패합니다.690조직의 [서버 관리 설정](/docs/ko/server-managed-settings)에 [보안 승인](/docs/ko/server-managed-settings#security-approval-dialogs)이 필요한 변경 사항이 포함되어 있으면 v2.1.246 이전의 Claude Code 버전은 `claude install` 중에 승인 대화 상자를 표시하려고 시도합니다. 대화 상자는 stdin의 터미널이 필요합니다. 설치 프로그램이 `curl -fsSL https://claude.ai/install.sh | bash`처럼 파이프에서 `claude install`을 실행하면 stdin은 터미널이 아닌 파이프이므로 설치가 `Raw mode is not supported`를 포함하는 오류로 실패합니다.

686 691 

687Claude Code v2.1.246 이상은 `claude install` 또는 `claude update` 중에 대화 상자를 표시하지 않습니다. 명령은 마지막으로 승인한 설정으로 실행되며 Claude Code는 다음 대화형 세션에서 대화 상자를 표시합니다. 조직의 시작 구성이 [설정 가져오기를 기다리는 경우](/docs/ko/server-managed-settings#enforce-fail-closed-startup)(예: `forceRemoteSettingsRefresh`를 설정할 때) 대화 상자는 여전히 이러한 명령 중에 나타나며 파이프에서 실행되는 설치는 여전히 실패합니다.692Claude Code v2.1.246 이상은 `claude install` 또는 `claude update` 중에 대화 상자를 표시하지 않습니다. 명령은 마지막으로 승인한 설정으로 실행되며 Claude Code는 다음 대화형 세션에서 대화 상자를 표시합니다. 조직의 시작 구성이 [설정 가져오기를 기다리는](/docs/ko/server-managed-settings#enforce-fail-closed-startup) 경우(예: `forceRemoteSettingsRefresh`를 설정할 때) 대화 상자는 여전히 이러한 명령 중에 나타나며 파이프에서 실행되는 설치는 여전히 실패합니다.

688 693 

689다른 모든 구성에서 설치 프로그램을 다시 실행하면 이 오류를 지나갑니다. 스크립트는 이전 버전을 설치하도록 요청할 때도 최신 릴리스의 `install` 명령을 실행하기 때문입니다. 플랫폼에 대한 명령을 다시 실행하세요:694다른 모든 구성에서는 설치 프로그램을 다시 실행하면 이 오류를 지나갑니다. 스크립트는 이전 버전을 설치하도록 요청할 때도 최신 릴리스의 `install` 명령을 실행하기 때문입니다. 플랫폼에 대한 명령을 다시 실행합니다.

690 695 

691<Tabs>696<Tabs>

692 <Tab title="macOS/Linux">697 <Tab title="macOS/Linux">


702 </Tab>707 </Tab>

703</Tabs>708</Tabs>

704 709 

705`claude --version`은 다시 실행이 설치한 버전을 인쇄합니다.710`claude --version`은 다시 실행이 설치한 버전을 출력합니다.

706 711 

707<h3 id="claude-update-or-claude-doctor-hangs">712<h3 id="claude-update-or-claude-doctor-hangs">

708 `claude update` 또는 `claude doctor` 중단713 `claude update` 또는 `claude doctor` 중단

709</h3>714</h3>

710 715 

711`claude update` 및 `claude doctor`는 셸 구성 파일에서 오래된 `claude` 별칭을 스캔합니다: `~/.zshrc`, `~/.bashrc` 및 `~/.config/fish/config.fish`. macOS에서는 존재하는 `~/.bash_profile`, `~/.bash_login` 또는 `~/.profile` 중 첫 번째입니다. `ZDOTDIR`을 설정하면 Zsh 파일은 `$ZDOTDIR/.zshrc`입니다. 이러한 경로 중 하나가 디렉토리인 경우 Claude Code는 이를 건너뛰고 두 명령 모두 정상적으로 완료됩니다. v2.1.214 이전에는 이러한 경로의 디렉토리로 인해 두 명령 모두 중단되었으며 `/status`의 System diagnostics 섹션이 비어 있었습니다. `claude doctor`는 출력 없이 중단되었습니다. `claude update`는 `Checking for updates`를 인쇄한 직후 중단되었습니다.716`claude update` 및 `claude doctor`는 셸 구성 파일에서 오래된 `claude` 별칭을 스캔합니다. `~/.zshrc`, `~/.bashrc` 및 `~/.config/fish/config.fish`, macOS에서는 존재하는 `~/.bash_profile`, `~/.bash_login` 또는 `~/.profile` 중 첫 번째입니다. `ZDOTDIR`을 설정하면 Zsh 파일은 `$ZDOTDIR/.zshrc`입니다. 이러한 경로 중 하나가 디렉토리인 경우 Claude Code는 이를 건너뛰고 두 명령 모두 정상적으로 완료됩니다. v2.1.214 이전에는 이러한 경로의 디렉토리가 두 명령을 중단하게 했으며 `/status`의 System diagnostics 섹션을 비워 두었습니다. `claude doctor`는 출력 없이 중단되었습니다. `claude update`는 `Checking for updates`를 출력한 직후 중단되었습니다.

712 717 

713이전 버전에서 중단을 겪으면 디렉토리를 찾으세요. 이 명령의 출력에서 `d`로 시작하는 줄은 해당 경로를 디렉토리로 표시합니다. `No such file or directory` 줄은 해당 경로에 아무것도 없으며 원인이 아님을 의미합니다:718이전 버전에서 중단이 발생하면 디렉토리를 찾습니다. 이 명령의 출력에서 `d`로 시작하는 줄은 해당 경로를 디렉토리로 표시합니다. `No such file or directory` 줄은 해당 경로에 아무것도 없으며 원인이 아님을 의미합니다.

714 719 

715```bash theme={null}720```bash theme={null}

716ls -ld ~/.zshrc ~/.bashrc ~/.bash_profile ~/.bash_login ~/.profile ~/.config/fish/config.fish721ls -ld ~/.zshrc ~/.bashrc ~/.bash_profile ~/.bash_login ~/.profile ~/.config/fish/config.fish

717```722```

718 723 

719디렉토리를 옆으로 이동하거나 v2.1.214 이상으로 업데이트하세요. `claude update`는 영향을 받는 버전에서 중단되므로 [설치 스크립트](/docs/ko/setup#install-claude-code)를 다시 실행하여 업데이트하세요.724디렉토리를 옆으로 이동하거나 v2.1.214 이상으로 업데이트합니다. `claude update`는 영향을 받는 버전에서 중단되므로 [설치 스크립트](/docs/ko/setup#install-claude-code)를 다시 실행하여 업데이트합니다.

720 725 

721<h3 id="claude-desktop-overrides-the-claude-command-on-windows">726<h3 id="claude-desktop-overrides-the-claude-command-on-windows">

722 Claude Desktop이 Windows에서 `claude` 명령 무시727 Claude Desktop이 Windows에서 `claude` 명령을 재정의합니다

723</h3>728</h3>

724 729 

725Claude Desktop의 이전 버전을 설치한 경우 `WindowsApps` 디렉토리에 `Claude.exe`를 등록할 수 있으며, 이는 Claude Code CLI보다 PATH 우선순위를 가집니다. `claude`를 실행하면 CLI 대신 Desktop 앱이 열립니다.730이전 버전의 Claude Desktop을 설치했으면 `WindowsApps` 디렉토리에 `Claude.exe`를 등록할 수 있으며, 이는 Claude Code CLI보다 PATH 우선 순위를 가집니다. `claude`를 실행하면 CLI 대신 Desktop 앱이 열립니다.

726 731 

727Claude Desktop을 최신 버전으로 업데이트하여 이 문제를 해결하세요.732Claude Desktop을 최신 버전으로 업데이트하여 이 문제를 해결합니다.

728 733 

729<h3 id="claude-code-on-windows-requires-either-git-for-windows-for-bash-or-powershell">734<h3 id="claude-code-on-windows-requires-either-git-for-windows-for-bash-or-powershell">

730 Windows에서 Claude Code는 Git for Windows(Bash용) 또는 PowerShell 필요735 Claude Code on Windows requires either Git for Windows (for bash) or PowerShell

731</h3>736</h3>

732 737 

733Git for Windows는 선택 사항입니다. Claude Code는 Git Bash가 없을 때 [PowerShell 도구](/docs/ko/tools-reference#powershell-tool)를 사용하므로 이 오류는 어느 셸도 찾을 수 없음을 의미합니다.738Git for Windows는 선택 사항입니다. Claude Code는 Git Bash가 없을 때 [PowerShell 도구](/docs/ko/tools-reference#powershell-tool)를 사용하므로 이 오류는 어느 셸도 찾을 수 없음을 의미합니다.

734 739 

735**PowerShell이 PATH에서 누락된 경우** 기본 위치는 `C:\Windows\System32\WindowsPowerShell\v1.0\`입니다. 해당 디렉토리를 `PATH`에 추가하거나 `pwsh`를 제공하는 [PowerShell 7](https://aka.ms/powershell)을 설치하세요.740**PowerShell이 PATH에서 누락된 경우** 기본 위치는 `C:\Windows\System32\WindowsPowerShell\v1.0\`입니다. 해당 디렉토리를 `PATH`에 추가하거나 `pwsh`를 제공하는 [PowerShell 7](https://aka.ms/powershell)을 설치합니다.

736 741 

737**Git for Windows를 설치하려면** [git-scm.com/downloads/win](https://git-scm.com/downloads/win)에서 다운로드하세요. 설정 중에 "Add to PATH"를 선택하세요. 설치 후 터미널을 다시 시작하세요. 설치하면 Bash 도구가 활성화되어 Bash 기반 스크립트 및 도구로 작업할 때 유용합니다.742**Git for Windows를 대신 설치하려면** [git-scm.com/downloads/win](https://git-scm.com/downloads/win)에서 다운로드합니다. 설정 중에 "Add to PATH"를 선택합니다. 설치 후 터미널을 다시 시작합니다. 설치하면 Bash 도구가 활성화되어 Bash 기반 스크립트 및 도구로 작업할 때 유용합니다.

738 743 

739**Git이 이미 설치되어 있지만** Claude Code가 찾을 수 없으면 위치를 Claude Code가 확인하는 위치와 비교하세요. `CLAUDE_CODE_GIT_BASH_PATH`가 설정되지 않으면 Claude Code는 다음 순서로 `bash.exe`를 찾습니다:744**Git이 이미 설치되어 있지만 Claude Code가 찾을 수 없으면** 해당 위치를 Claude Code가 확인하는 위치와 비교합니다. `CLAUDE_CODE_GIT_BASH_PATH`가 설정되지 않으면 Claude Code는 다음 순서로 `bash.exe`를 찾습니다.

740 745 

7411. 기본 설치 위치 `C:\Program Files\Git` 및 `C:\Program Files (x86)\Git`.7461. 기본 설치 위치 `C:\Program Files\Git` 및 `C:\Program Files (x86)\Git`.

7422. `PATH`의 `git`. 해당 Git 설치에서 `bin\bash.exe`를 사용합니다.7472. `PATH`의 `git`을 사용하여 해당 Git 설치의 `bin\bash.exe`.

743 748 

7442단계에서 Claude Code는 Claude Code를 시작한 폴더에 있거나 `node_modules` 또는 `.venv` 또는 `env`와 같은 가상 환경 폴더를 포함하는 경로 아래에 있는 `git`을 건너뜁니다. 예를 들어 `C:\dev\env\myproject`에서 시작했을 때 `C:\dev\env\myproject\Git`. 이는 Claude Code가 프로젝트가 거기에 배치한 실행 파일을 실행하지 않도록 합니다. Git이 그런 위치에 있으면 `CLAUDE_CODE_GIT_BASH_PATH`를 가리키세요.7492단계에서 Claude Code는 Claude Code를 시작한 폴더에 있거나 `node_modules` 또는 `.venv` 또는 `env`와 같은 가상 환경 폴더를 포함하는 경로 아래에 있는 `git`을 건너뜁니다. 예를 들어 `C:\dev\env\myproject`에서 시작했을 때 `C:\dev\env\myproject\Git`. 이는 Claude Code가 프로젝트가 배치한 실행 파일을 실행하지 않도록 합니다. Git이 그러한 위치에 있으면 `CLAUDE_CODE_GIT_BASH_PATH`를 가리킵니다.

745 750 

746**Claude Code를 특정 Git 설치로 가리키려면** PowerShell에서 `where.exe git`을 실행하여 찾고 해당 설치에서 `bin\bash.exe` 경로를 [settings.json 파일](/docs/ko/settings)에서 `CLAUDE_CODE_GIT_BASH_PATH`로 설정하세요:751**Claude Code를 특정 Git 설치로 가리키려면** PowerShell에서 `where.exe git`을 실행하여 찾은 다음 해당 설치의 `bin\bash.exe` 경로를 [settings.json 파일](/docs/ko/settings)에서 `CLAUDE_CODE_GIT_BASH_PATH`로 설정합니다.

747 752 

748```json theme={null}753```json theme={null}

749{754{


753}758}

754```759```

755 760 

756**`CLAUDE_CODE_GIT_BASH_PATH`가 올바른 경로로 설정되고 파일이 존재하지만** Claude Code가 여전히 사용하지 않으면 파일의 이름을 먼저 확인하세요. Claude Code는 `bash.exe`, `sh.exe`, `bash` 또는 `sh`라는 파일만 허용합니다. Git for Windows의 `git-bash.exe` 런처와 같은 다른 이름이면 변수를 무시하고 설정되지 않은 것처럼 자동 감지하며 `--debug`로 볼 수 있는 경고를 기록합니다. 존재하지 않는 경로는 동일한 폴백과 경고를 받습니다. v2.1.219 이전에는 Claude Code가 이름을 확인하지 않고 모든 기존 파일을 셸로 사용했으며 경로가 존재하지 않으면 `Claude Code was unable to find CLAUDE_CODE_GIT_BASH_PATH path`로 시작 시 종료되었습니다.761**`CLAUDE_CODE_GIT_BASH_PATH`가 올바른 경로로 설정되고 파일이 존재하지만** Claude Code가 여전히 사용하지 않으면 먼저 파일의 이름을 확인합니다. Claude Code는 `bash.exe`, `sh.exe`, `bash` 또는 `sh`라는 이름의 파일만 허용합니다. Git for Windows의 `git-bash.exe` 런처와 같은 다른 이름의 경우 변수를 무시하고 설정되지 않은 것처럼 자동 감지하며 `--debug`로 볼 수 있는 경고를 기록합니다. 존재하지 않는 경로는 동일한 폴백 및 경고를 받습니다. v2.1.219 이전에는 Claude Code가 이름을 확인하지 않고 존재하는 모든 파일을 셸로 사용했으며 경로가 존재하지 않을 때 `Claude Code was unable to find CLAUDE_CODE_GIT_BASH_PATH path`로 시작 시 종료되었습니다.

757 762 

758파일의 이름이 맞으면 AppLocker, 그룹 정책 소프트웨어 제한 정책 또는 EDR 에이전트와 같은 엔드포인트 보안 소프트웨어가 간섭할 수 있습니다. IT 팀에 `claude.exe` 및 `cmd.exe` 및 `bash.exe`를 포함한 생성하는 프로세스를 엔드포인트 보호 정책에서 허용 목록에 추가하도록 요청하세요.763파일의 이름이 맞으면 AppLocker, 그룹 정책 소프트웨어 제한 정책 또는 EDR 에이전트와 같은 엔드포인트 보안 소프트웨어가 간섭할 수 있습니다. IT 팀에 엔드포인트 보호 정책에서 `claude.exe` 및 `cmd.exe` 및 `bash.exe`를 포함한 생성하는 프로세스를 허용 목록에 추가하도록 요청합니다.

759 764 

760<h3 id="claude-code-does-not-support-32-bit-windows">765<h3 id="claude-code-does-not-support-32-bit-windows">

761 Claude Code는 32비트 Windows를 지원하지 않음766 Claude Code는 32비트 Windows를 지원하지 않습니다

762</h3>767</h3>

763 768 

764Windows는 시작 메뉴에 두 개의 PowerShell 항목을 포함합니다: `Windows PowerShell` 및 `Windows PowerShell (x86)`. x86 항목은 32비트 프로세스로 실행되며 64비트 머신에서도 이 오류를 트리거합니다. 어느 경우인지 확인하려면 오류를 생성한 동일한 창에서 이를 실행하세요:769Windows는 시작 메뉴에 두 개의 PowerShell 항목을 포함합니다. `Windows PowerShell` 및 `Windows PowerShell (x86)`. x86 항목은 32비트 프로세스로 실행되며 64비트 머신에서도 이 오류를 트리거합니다. 어느 경우인지 확인하려면 오류를 생성한 동일한 창에서 다음을 실행합니다.

765 770 

766```powershell theme={null}771```powershell theme={null}

767[Environment]::Is64BitOperatingSystem772[Environment]::Is64BitOperatingSystem

768```773```

769 774 

770이것이 `True`를 인쇄하면 운영 체제는 정상입니다. 창을 닫고 x86 접미사 없이 `Windows PowerShell`을 열고 설치 명령을 다시 실행하세요.775이것이 `True`를 출력하면 운영 체제는 정상입니다. 창을 닫고 x86 접미사 없이 `Windows PowerShell`을 열고 설치 명령을 다시 실행합니다.

771 776 

772이것이 `False`를 인쇄하면 32비트 Windows 버전을 사용 중입니다. Claude Code는 64비트 운영 체제가 필요합니다. [시스템 요구사항](/docs/ko/setup#system-requirements)을 참조하세요.777이것이 `False`를 출력하면 32비트 Windows 버전에 있습니다. Claude Code는 64비트 운영 체제가 필요합니다. [시스템 요구 사항](/docs/ko/setup#system-requirements)을 참조하세요.

773 778 

774<h3 id="linux-musl-or-glibc-binary-mismatch">779<h3 id="linux-musl-or-glibc-binary-mismatch">

775 Linux musl 또는 glibc 바이너리 불일치780 Linux musl 또는 glibc 바이너리 불일치

776</h3>781</h3>

777 782 

778설치 후 `libstdc++.so.6` 또는 `libgcc_s.so.1`과 같은 누락된 공유 라이브러리에 대한 오류가 표시되면 설치 프로그램이 시스템에 맞는 잘못된 바이너리 변형을 다운로드했을 수 있습니다.783설치 후 `libstdc++.so.6` 또는 `libgcc_s.so.1`과 같은 누락된 공유 라이브러리에 대한 오류가 표시되면 설치 프로그램이 시스템에 대해 잘못된 바이너리 변형을 다운로드했을 수 있습니다.

779 784 

780```text theme={null}785```text theme={null}

781Error loading shared library libstdc++.so.6: No such file or directory786Error loading shared library libstdc++.so.6: No such file or directory

782```787```

783 788 

784이는 musl 크로스 컴파일 패키지가 설치된 glibc 기반 시스템에서 발생할 수 있으며, 설치 프로그램이 시스템을 musl로 잘못 감지하게 합니다.789이는 musl 교차 컴파일 패키지가 설치된 glibc 기반 시스템에서 발생할 수 있으며, 설치 프로그램이 시스템을 musl로 잘못 감지하게 합니다.

785 790 

786**해결책:**791**해결 방법:**

787 792 

7881. **시스템이 어느 libc를 사용하는지 확인**:7931. **시스템이 사용하는 libc 확인**:

789 ```bash theme={null}794 ```bash theme={null}

790 ldd --version 2>&1 | head -1795 ldd --version 2>&1 | head -1

791 ```796 ```

792 `GNU libc` 또는 `GLIBC`를 언급하는 출력은 glibc를 의미합니다. `musl`을 언급하는 출력은 musl을 의미합니다.797 `GNU libc` 또는 `GLIBC`를 언급하는 출력은 glibc를 의미합니다. `musl`을 언급하는 출력은 musl을 의미합니다.

793 798 

7942. **glibc에 있지만 musl 바이너리를 받은 경우** 설치를 제거하고 다시 설치하세요. `https://downloads.claude.ai/claude-code-releases/{VERSION}/manifest.json`의 매니페스트를 사용하여 올바른 바이너리를 수동으로 다운로드할 수도 있습니다. `ldd --version` 및 `ls /lib/libc.musl*`의 출력과 함께 [GitHub 이슈](https://github.com/anthropics/claude-code/issues)를 제출하세요.7992. **glibc에 있지만 musl 바이너리를 받은 경우** 설치를 제거하고 다시 설치합니다. `https://downloads.claude.ai/claude-code-releases/{VERSION}/manifest.json`의 매니페스트를 사용하여 올바른 바이너리를 수동으로 다운로드할 수도 있습니다. `ldd --version` 및 `ls /lib/libc.musl*`의 출력으로 [GitHub 이슈](https://github.com/anthropics/claude-code/issues)를 제출합니다.

795 800 

7963. **실제로 musl에 있는 경우** Alpine Linux와 같이 필요한 패키지를 설치하세요:8013. **실제로 Alpine Linux와 같은 musl에 있으면** 필요한 패키지를 설치합니다.

797 ```bash theme={null}802 ```bash theme={null}

798 apk add libgcc libstdc++ ripgrep803 apk add libgcc libstdc++ ripgrep

799 ```804 ```


803 `Illegal instruction`808 `Illegal instruction`

804</h3>809</h3>

805 810 

806`claude`를 실행하거나 설치 프로그램이 `Illegal instruction`을 인쇄하면 네이티브 바이너리는 프로세서가 지원하지 않는 CPU 명령어를 사용합니다. 두 가지 서로 다른 원인이 있습니다.811`claude`를 실행하거나 설치 프로그램이 `Illegal instruction`을 출력하면 네이티브 바이너리가 프로세서가 지원하지 않는 CPU 명령을 사용합니다. 두 가지 서로 다른 원인이 있습니다.

807 812 

808**아키텍처 불일치.** 설치 프로그램이 잘못된 바이너리를 다운로드했습니다. 예를 들어 ARM 서버의 x86. macOS 또는 Linux에서 `uname -m`으로 확인하거나 PowerShell에서 `$env:PROCESSOR_ARCHITECTURE`로 확인하세요. 결과가 받은 바이너리와 일치하지 않으면 출력과 함께 [GitHub 이슈](https://github.com/anthropics/claude-code/issues)를 제출하세요.813**아키텍처 불일치.** 설치 프로그램이 잘못된 바이너리를 다운로드했습니다. 예를 들어 ARM 서버의 x86. macOS 또는 Linux에서 `uname -m`으로 확인하거나 PowerShell에서 `$env:PROCESSOR_ARCHITECTURE`로 확인합니다. 결과가 받은 바이너리와 일치하지 않으면 출력으로 [GitHub 이슈](https://github.com/anthropics/claude-code/issues)를 제출합니다.

809 814 

810**누락된 AVX 명령어 세트.** 아키텍처는 올바르지만 여전히 `Illegal instruction`이 표시되면 CPU에 바이너리가 필요로 하는 AVX 또는 다른 명령어가 없을 가능성이 높습니다. 이는 대략 2013년 이전의 Intel 및 AMD 프로세서에 영향을 미치며, 하이퍼바이저가 게스트에게 AVX를 전달하지 않는 가상 머신에도 영향을 미칩니다.815**AVX 명령 집합 누락.** 아키텍처는 맞지만 여전히 `Illegal instruction`이 표시되면 CPU에 바이너리가 필요로 하는 AVX 또는 다른 명령이 없을 가능성이 높습니다. 이는 대략 2013년 이전의 Intel 및 AMD 프로세서와 하이퍼바이저가 게스트에 AVX를 전달하지 않는 가상 머신에 영향을 줍니다.

811 816 

812VPS 또는 VM에서 `grep -m1 -ow avx /proc/cpuinfo`를 실행하세요. 빈 결과는 AVX를 게스트에서 사용할 수 없음을 의미합니다.817VPS 또는 VM에서 `grep -m1 -ow avx /proc/cpuinfo`를 실행합니다. 빈 결과는 AVX를 게스트에서 사용할 수 없음을 의미합니다.

813 818 

814네이티브 바이너리 해결 방법이 없습니다. [이슈 #50384](https://github.com/anthropics/claude-code/issues/50384)를 추적하고 Linux에서 `grep -m1 "model name" /proc/cpuinfo`의 CPU 모델 또는 macOS에서 `sysctl -n machdep.cpu.brand_string`을 보고할 때 포함하세요.819네이티브 바이너리 해결 방법이 없습니다. [이슈 #50384](https://github.com/anthropics/claude-code/issues/50384)에서 상태를 추적하고 보고할 때 Linux의 `grep -m1 "model name" /proc/cpuinfo` 또는 macOS의 `sysctl -n machdep.cpu.brand_string`에서 CPU 모델을 포함합니다.

815 820 

816대체 설치 방법은 동일한 네이티브 바이너리를 다운로드하며 어느 원인도 해결하지 않습니다.821대체 설치 방법은 동일한 네이티브 바이너리를 다운로드하며 어느 원인도 해결하지 않습니다.

817 822 


819 macOS에서 `dyld: cannot load`824 macOS에서 `dyld: cannot load`

820</h3>825</h3>

821 826 

822설치 중에 `dyld: Symbol not found`, `dyld: cannot load` 또는 `Abort trap: 6`이 표시되면 바이너리는 macOS 버전 또는 하드웨어와 호환되지 않습니다.827설치 중에 `dyld: Symbol not found`, `dyld: cannot load` 또는 `Abort trap: 6`이 표시되면 바이너리가 macOS 버전 또는 하드웨어와 호환되지 않습니다.

823 828 

824`libicucore`를 참조하는 `Symbol not found` 오류는 macOS 버전이 바이너리가 지원하는 것보다 오래되었음을 의미합니다:829`libicucore`를 참조하는 `Symbol not found` 오류는 macOS 버전이 바이너리가 지원하는 것보다 오래되었음을 의미합니다.

825 830 

826```text theme={null}831```text theme={null}

827dyld: Symbol not found: _ubrk_clone832dyld: Symbol not found: _ubrk_clone


829 Expected in: /usr/lib/libicucore.A.dylib834 Expected in: /usr/lib/libicucore.A.dylib

830```835```

831 836 

832로더는 대신 바이너리의 로드 명령을 거부할 수 있으며, 이는 macOS 버전이 너무 오래되었음을 의미합니다:837로더는 대신 바이너리의 로드 명령을 거부할 수 있으며, 이는 macOS 버전이 너무 오래되었음을 의미합니다.

833 838 

834```text theme={null}839```text theme={null}

835dyld: cannot load 'claude-2.1.42-darwin-x64' (load command 0x80000034 is unknown)840dyld: cannot load 'claude-2.1.42-darwin-x64' (load command 0x80000034 is unknown)

836Abort trap: 6841Abort trap: 6

837```842```

838 843 

839**해결책:**844**해결 방법:**

840 845 

8411. **macOS 버전 확인**: Claude Code는 macOS 13.0 이상이 필요합니다. Apple 메뉴를 열고 이 Mac에 관하여를 선택하여 버전을 확인하세요.8461. **macOS 버전 확인**: Claude Code는 macOS 13.0 이상이 필요합니다. Apple 메뉴를 열고 이 Mac에 대해를 선택하여 버전을 확인합니다.

842 847 

8432. **이전 버전을 사용 중인 경우 macOS 업데이트**. 바이너리는 이전 macOS 버전이 지원하지 않는 로드 명령 및 시스템 라이브러리를 사용합니다. Homebrew와 같은 대체 설치 방법은 동일한 바이너리를 다운로드하며 이 오류를 해결하지 않습니다.8482. **이전 버전에 있으면 macOS 업데이트**. 바이너리는 이전 macOS 버전이 지원하지 않는 로드 명령 및 시스템 라이브러리를 사용합니다. Homebrew와 같은 대체 설치 방법은 동일한 바이너리를 다운로드하며 이 오류를 해결하지 않습니다.

844 849 

845<h3 id="exec-format-error-on-wsl1">850<h3 id="exec-format-error-on-wsl1">

846 WSL1에서 `Exec format error`851 WSL1에서 `Exec format error`

847</h3>852</h3>

848 853 

849WSL에서 `claude`를 실행하면 `cannot execute binary file: Exec format error`가 인쇄되면 WSL1에 있으며 [이슈 #38788](https://github.com/anthropics/claude-code/issues/38788)에서 추적되는 알려진 네이티브 바이너리 회귀를 겪고 있습니다. 바이너리의 프로그램 헤더가 WSL1의 로더가 처리할 수 없는 방식으로 변경되었습니다.854WSL에서 `claude`를 실행하면 `cannot execute binary file: Exec format error`가 출력되면 WSL1에 있으며 [이슈 #38788](https://github.com/anthropics/claude-code/issues/38788)에서 추적되는 알려진 네이티브 바이너리 회귀에 직면하고 있습니다. 바이너리의 프로그램 헤더가 WSL1의 로더가 처리할 수 없는 방식으로 변경되었습니다.

850 855 

851가장 깔끔한 수정은 PowerShell에서 배포판을 WSL2로 변환하는 것입니다:856가장 깔끔한 수정은 PowerShell에서 배포판을 WSL2로 변환하는 것입니다.

852 857 

853```powershell theme={null}858```powershell theme={null}

854wsl --set-version <DistroName> 2859wsl --set-version <DistroName> 2

855```860```

856 861 

857WSL1에 머물러야 하는 경우 동적 링커를 통해 바이너리를 호출하세요. WSL 내 `~/.bashrc`에 이 함수를 추가하고 홈 디렉토리가 다르면 경로를 바꾸세요:862WSL1에 머물러야 하면 동적 링커를 통해 바이너리를 호출합니다. WSL 내의 `~/.bashrc`에 이 함수를 추가하고 홈 디렉토리가 다르면 경로를 바꿉니다.

858 863 

859```bash theme={null}864```bash theme={null}

860claude() {865claude() {


862}867}

863```868```

864 869 

865그런 다음 `source ~/.bashrc`를 실행하고 `claude`를 다시 시도하세요.870그런 다음 `source ~/.bashrc`를 실행하고 `claude`를 다시 시도합니다.

866 871 

867<h3 id="npm-install-errors-in-wsl">872<h3 id="npm-install-errors-in-wsl">

868 WSL에서 npm 설치 오류873 WSL에서 npm 설치 오류

869</h3>874</h3>

870 875 

871이 문제는 WSL 내에서 `npm install -g`로 Claude Code를 설치한 경우 적용됩니다. [네이티브 설치 프로그램](/docs/ko/setup)을 사용한 경우 이 섹션을 건너뛰세요.876이러한 문제는 WSL 내에서 `npm install -g`로 Claude Code를 설치한 경우 적용됩니다. [네이티브 설치 프로그램](/docs/ko/setup)을 사용한 경우 이 섹션을 건너뜁니다.

872 877 

873**OS 또는 플랫폼 감지 문제.** npm이 설치 중에 플랫폼 불일치를 보고하면 WSL이 Windows `npm`을 선택하고 있을 가능성이 높습니다. 먼저 `npm config set os linux`를 실행한 다음 `npm install -g @anthropic-ai/claude-code --force`로 설치하세요. `sudo`를 사용하지 마세요.878**OS 또는 플랫폼 감지 문제.** npm이 설치 중에 플랫폼 불일치를 보고하면 WSL이 Windows `npm`을 선택하고 있을 가능성이 높습니다. 먼저 `npm config set os linux`를 실행한 다음 `npm install -g @anthropic-ai/claude-code --force`로 설치합니다. `sudo`를 사용하지 마세요.

874 879 

875**`claude` 실행 시 `exec: node: not found`.** WSL 환경이 Node.js의 Windows 설치를 사용하고 있을 가능성이 높습니다. `which npm` 및 `which node`로 확인하세요: `/mnt/c/`로 시작하는 경로는 Windows 바이너리이고 Linux 경로는 `/usr/`로 시작합니다. 이를 수정하려면 Linux 배포판의 패키지 관리자 또는 [`nvm`](https://github.com/nvm-sh/nvm)을 통해 Node를 설치하세요.880**`claude` 실행 시 `exec: node: not found`.** WSL 환경이 Node.js의 Windows 설치를 사용하고 있을 가능성이 높습니다. `which npm` 및 `which node`로 확인합니다. `/mnt/c/`로 시작하는 경로는 Windows 바이너리이고 Linux 경로는 `/usr/`로 시작합니다. 이를 수정하려면 Linux 배포판의 패키지 관리자 또는 [`nvm`](https://github.com/nvm-sh/nvm)을 통해 Node를 설치합니다.

876 881 

877**nvm 버전 충돌.** WSL과 Windows 모두에 nvm이 설치되어 있으면 WSL에서 Node 버전을 전환하면 WSL이 기본적으로 Windows PATH를 가져오고 Windows nvm이 우선순위를 가지기 때문에 중단될 수 있습니다. 가장 일반적인 원인은 nvm이 셸에 로드되지 않는 것입니다. nvm 로더를 `~/.bashrc` 또는 `~/.zshrc`에 추가하세요:882**nvm 버전 충돌.** WSL과 Windows 모두에 nvm이 설치되어 있으면 WSL에서 Node 버전을 전환하면 WSL이 기본적으로 Windows PATH를 가져오고 Windows nvm이 우선 순위를 가지기 때문에 중단될 수 있습니다. 가장 일반적인 원인은 nvm이 셸에 로드되지 않는 것입니다. nvm 로더를 `~/.bashrc` 또는 `~/.zshrc`에 추가합니다.

878 883 

879```bash theme={null}884```bash theme={null}

880export NVM_DIR="$HOME/.nvm"885export NVM_DIR="$HOME/.nvm"


882[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"887[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

883```888```

884 889 

885또는 현재 세션에서 로드하세요:890또는 현재 세션에서 로드합니다.

886 891 

887```bash theme={null}892```bash theme={null}

888source ~/.nvm/nvm.sh893source ~/.nvm/nvm.sh

889```894```

890 895 

891nvm이 로드되었지만 Windows 경로가 여전히 우선순위를 가지면 Linux Node 경로를 명시적으로 앞에 추가하세요:896nvm이 로드되었지만 Windows 경로가 여전히 우선 순위를 가지면 Linux Node 경로를 명시적으로 앞에 추가합니다.

892 897 

893```bash theme={null}898```bash theme={null}

894export PATH="$HOME/.nvm/versions/node/$(node -v)/bin:$PATH"899export PATH="$HOME/.nvm/versions/node/$(node -v)/bin:$PATH"

895```900```

896 901 

897<Warning>902<Warning>

898 `appendWindowsPath = false`를 통해 Windows PATH 가져오기를 비활성화하지 마세요. WSL에서 Windows 실행 파일을 호출하는 기능이 중단됩니다. 마찬가지로 Windows 개발에 사용하는 경우 Windows에서 Node.js를 제거하지 마세요.903 `appendWindowsPath = false`를 통해 Windows PATH 가져오기를 비활성화하지 마세요. 이는 WSL에서 Windows 실행 파일을 호출하는 기능을 중단합니다. 마찬가지로 Windows 개발에 사용하는 경우 Windows에서 Node.js를 제거하지 마세요.

899</Warning>904</Warning>

900 905 

901<h3 id="permission-errors-during-installation">906<h3 id="permission-errors-during-installation">


904 909 

905네이티브 설치 프로그램이 권한 오류로 실패하면 대상 디렉토리를 쓸 수 없을 수 있습니다. [디렉토리 권한 확인](#check-directory-permissions)을 참조하세요.910네이티브 설치 프로그램이 권한 오류로 실패하면 대상 디렉토리를 쓸 수 없을 수 있습니다. [디렉토리 권한 확인](#check-directory-permissions)을 참조하세요.

906 911 

907이전에 npm으로 설치했고 npm 특정 권한 오류를 겪고 있으면 네이티브 설치 프로그램으로 전환하세요:912이전에 npm으로 설치했고 npm 특정 권한 오류에 직면하면 네이티브 설치 프로그램으로 전환합니다.

908 913 

909```bash theme={null}914```bash theme={null}

910curl -fsSL https://claude.ai/install.sh | bash915curl -fsSL https://claude.ai/install.sh | bash

911```916```

912 917 

913<h3 id="native-binary-not-found-after-npm-install">918<h3 id="native-binary-not-found-after-npm-install">

914 npm 설치 후 네이티브 바이너리를 찾을 수 없음919 npm 설치 후 네이티브 바이너리를 찾을 수 없습니다

915</h3>920</h3>

916 921 

917`@anthropic-ai/claude-code` npm 패키지는 `@anthropic-ai/claude-code-darwin-arm64`와 같은 플랫폼별 선택적 종속성을 통해 네이티브 바이너리를 다운로드합니다. npm은 패키지의 postinstall 스크립트를 실행하여 해당 바이너리를 `claude` 명령으로 제자리에 복사합니다. 실행될 때까지 `claude`는 자리 표시자 스크립트입니다. 다운로드 또는 postinstall 단계가 건너뛰어지면 자리 표시자가 제자리에 남아 있으며 macOS 및 Linux에서 `claude`를 실행하면 다음이 인쇄됩니다:922`@anthropic-ai/claude-code` npm 패키지는 `@anthropic-ai/claude-code-darwin-arm64`와 같은 플랫폼별 선택적 종속성으로 네이티브 바이너리를 다운로드합니다. npm은 패키지의 postinstall 스크립트를 실행하여 해당 바이너리를 `claude` 명령으로 제자리에 복사합니다. 실행될 때까지 `claude`는 자리 표시자 스크립트입니다. 다운로드 또는 postinstall 단계 중 하나가 건너뛰어지면 자리 표시자가 제자리에 남아 있으며 macOS 및 Linux에서 `claude`를 실행하면 다음이 출력됩니다.

918 923 

919```text theme={null}924```text theme={null}

920Error: claude native binary not installed.925Error: claude native binary not installed.


929Or reinstall without --ignore-scripts / --omit=optional.934Or reinstall without --ignore-scripts / --omit=optional.

930```935```

931 936 

932Windows에서 `bin/claude.exe`는 동일한 셸 스크립트 자리 표시자이므로 PowerShell 및 CMD는 이 메시지를 인쇄하는 대신 파일을 실행할 수 없다고 보고합니다.937Windows에서 `bin/claude.exe`는 실제 실행 파일이 아닌 동일한 셸 스크립트 자리 표시자이므로 PowerShell 및 CMD는 이 메시지를 출력하는 대신 파일을 실행할 수 없다고 보고합니다.

933 938 

934다음 원인을 확인하세요:939다음 원인을 확인합니다.

935 940 

936* **선택적 종속성이 비활성화됨.** npm 설치 명령에서 `--omit=optional`을 제거하고 pnpm에서 `--no-optional`을 제거하고 yarn에서 `--ignore-optional`을 제거하고 `.npmrc`가 `optional=false`를 설정하지 않는지 확인하세요. 그런 다음 다시 설치하세요. 네이티브 바이너리는 선택적 종속성으로만 제공되므로 건너뛰면 JavaScript 폴백이 없으며 `install.cjs`를 다시 실행해도 다운로드되지 않은 바이너리를 배치할 수 없습니다.941* **선택적 종속성이 비활성화됨.** npm 설치 명령에서 `--omit=optional`을 제거하고 pnpm에서 `--no-optional`을 제거하고 yarn에서 `--ignore-optional`을 제거하고 `.npmrc`가 `optional=false`를 설정하지 않는지 확인합니다. 그런 다음 다시 설치합니다. 네이티브 바이너리는 선택적 종속성으로만 제공되므로 건너뛰어지면 JavaScript 폴백이 없으며 `install.cjs`를 다시 실행해도 다운로드되지 않은 바이너리를 배치할 수 없습니다.

937* **설치 스크립트가 비활성화됨.** `--ignore-scripts` 및 일부 pnpm 구성은 postinstall 단계를 건너뛰지만 여전히 플랫폼 패키지를 다운로드합니다. 메시지가 제안하는 대로 `node node_modules/@anthropic-ai/claude-code/install.cjs`를 실행하거나 플래그 없이 다시 설치하세요. postinstall이 환경에서 실행될 수 없으면 `node node_modules/@anthropic-ai/claude-code/cli-wrapper.cjs`가 다운로드된 패키지를 찾아 시작하며, 각 시작 시 추가 Node 프로세스의 비용이 발생합니다. 래퍼가 `Could not find native binary package` 대신 인쇄하면 플랫폼 패키지가 다운로드되지 않았으므로 먼저 위의 선택적 종속성 원인을 수정하세요.942* **설치 스크립트가 비활성화됨.** `--ignore-scripts` 및 일부 pnpm 구성은 postinstall 단계를 건너뛰지만 여전히 플랫폼 패키지를 다운로드합니다. 메시지가 제안하는 대로 `node node_modules/@anthropic-ai/claude-code/install.cjs`를 실행하거나 플래그 없이 다시 설치합니다. postinstall이 환경에서 실행될 수 없으면 `node node_modules/@anthropic-ai/claude-code/cli-wrapper.cjs`가 다운로드된 패키지를 찾고 시작하며, 각 시작 시 추가 Node 프로세스의 비용이 발생합니다. 래퍼가 `Could not find native binary package`를 출력하면 플랫폼 패키지가 다운로드되지 않았으므로 먼저 위의 선택적 종속성 원인을 수정합니다.

938* **지원되지 않는 플랫폼.** 미리 빌드된 바이너리는 `darwin-arm64`, `darwin-x64`, `linux-x64`, `linux-arm64`, `linux-x64-musl`, `linux-arm64-musl`, `win32-x64` 및 `win32-arm64`에 대해 게시됩니다. Claude Code는 다른 플랫폼에 대한 바이너리를 제공하지 않습니다. [시스템 요구사항](/docs/ko/setup#system-requirements)을 참조하세요. FreeBSD에서 설치 프로그램은 플랫폼을 지원되지 않음으로 보고합니다. v2.1.205 이전에는 FreeBSD를 Linux로 취급하고 실행할 수 없는 바이너리를 다운로드했습니다.943* **지원되지 않는 플랫폼.** 미리 빌드된 바이너리는 `darwin-arm64`, `darwin-x64`, `linux-x64`, `linux-arm64`, `linux-x64-musl`, `linux-arm64-musl`, `win32-x64` 및 `win32-arm64`에 대해 게시됩니다. Claude Code는 다른 플랫폼에 대한 바이너리를 제공하지 않습니다. [시스템 요구 사항](/docs/ko/setup#system-requirements)을 참조하세요. FreeBSD에서 설치 프로그램은 플랫폼을 지원되지 않는 것으로 보고합니다. v2.1.205 이전에는 FreeBSD를 Linux로 취급하고 실행할 수 없는 바이너리를 다운로드했습니다.

939* **회사 npm 미러가 플랫폼 패키지를 누락함.** 레지스트리가 메타 패키지 외에도 8개의 `@anthropic-ai/claude-code-*` 플랫폼 패키지를 모두 미러링하는지 확인하세요.944* **회사 npm 미러가 플랫폼 패키지를 누락함.** 레지스트리가 메타 패키지 외에도 8개의 `@anthropic-ai/claude-code-*` 플랫폼 패키지를 모두 미러링하는지 확인합니다.

940 945 

941<h3 id="npm-enotempty-during-update-or-reinstall">946<h3 id="npm-enotempty-during-update-or-reinstall">

942 npm `ENOTEMPTY` 오류 업데이트 또는 재설치 중947 npm 업데이트 또는 재설치 중 `ENOTEMPTY` 오류

943</h3>948</h3>

944 949 

945기존 설치에 대해 `npm install -g @anthropic-ai/claude-code`를 실행하면 npm이 이전 패키지 디렉토리를 옆으로 이동하는 동안 실패할 수 있습니다:950기존 설치에 대해 `npm install -g @anthropic-ai/claude-code`를 실행하면 npm이 이전 패키지 디렉토리를 옆으로 이동하는 동안 실패할 수 있습니다.

946 951 

947```text theme={null}952```text theme={null}

948npm error code ENOTEMPTY953npm error code ENOTEMPTY


953npm error ENOTEMPTY: directory not empty, rename '...'958npm error ENOTEMPTY: directory not empty, rename '...'

954```959```

955 960 

956`npm error path` 줄은 npm이 이동할 수 없는 디렉토리의 이름을 지정합니다. 해당 디렉토리와 옆에 있는 모든 남은 `.claude-code-*` 디렉토리를 삭제하세요. 이전 중단된 실행은 뒤에 남길 수 있습니다. 아래 명령은 `npm root -g`로 전역 패키지 디렉토리를 찾습니다. `npm error path` 줄이 이름을 지정하는 디렉토리가 `npm root -g`가 인쇄하는 디렉토리 아래에 없으면(예: nvm으로 Node 버전을 전환했기 때문에) 오류가 이름을 지정하는 디렉토리를 대신 삭제하세요:961`npm error path` 줄은 npm이 이동할 수 없는 디렉토리의 이름을 지정합니다. 해당 디렉토리와 옆에 있는 모든 `.claude-code-*` 디렉토리를 삭제합니다. 이전 중단된 실행이 남길 수 있습니다. 아래 명령은 `npm root -g`로 전역 패키지 디렉토리를 찾습니다. `npm error path` 줄이 이름을 지정하는 디렉토리가 `npm root -g`가 출력하는 디렉토리 아래에 없으면(예: nvm으로 Node 버전을 전환했기 때문에) 오류가 이름을 지정하는 디렉토리를 대신 삭제합니다.

957 962 

958<Tabs>963<Tabs>

959 <Tab title="macOS/Linux">964 <Tab title="macOS/Linux">


961 rm -rf "$(npm root -g)/@anthropic-ai/claude-code"966 rm -rf "$(npm root -g)/@anthropic-ai/claude-code"

962 ```967 ```

963 968 

964 그런 다음 남은 임시 디렉토리를 제거하세요. zsh가 `no matches found`를 인쇄하면 제거할 것이 없었습니다:969 그런 다음 남은 임시 디렉토리를 제거합니다. Zsh가 `no matches found`를 출력하면 제거할 것이 없었습니다.

965 970 

966 ```bash theme={null}971 ```bash theme={null}

967 rm -rf "$(npm root -g)/@anthropic-ai/.claude-code-"*972 rm -rf "$(npm root -g)/@anthropic-ai/.claude-code-"*


975 </Tab>980 </Tab>

976</Tabs>981</Tabs>

977 982 

978그런 다음 다시 설치하세요:983그런 다음 다시 설치합니다.

979 984 

980```bash theme={null}985```bash theme={null}

981npm install -g @anthropic-ai/claude-code986npm install -g @anthropic-ai/claude-code

982```987```

983 988 

984`claude --version`으로 확인하세요. 이는 `2.1.211 (Claude Code)`와 같은 버전 번호를 인쇄합니다.989`claude --version`으로 확인합니다. 이는 `2.1.211 (Claude Code)`와 같은 버전 번호를 출력합니다.

985 990 

986<h2 id="login-and-authentication">991<h2 id="login-and-authentication">

987 로그인 및 인증992 로그인 및 인증

Details

52 `.heapsnapshot` 파일에는 프로세스의 모든 문자열이 포함되어 있으며, 전체 대화 및 자격 증명을 포함합니다. 공개 이슈에 첨부하거나 공유하지 마십시오.52 `.heapsnapshot` 파일에는 프로세스의 모든 문자열이 포함되어 있으며, 전체 대화 및 자격 증명을 포함합니다. 공개 이슈에 첨부하거나 공유하지 마십시오.

53</Warning>53</Warning>

54 54 

55명령은 또한 대화에 요약을 인쇄하여 상주 집합 크기, JS 힙, 배열 버퍼 및 설명되지 않은 네이티브 메모리를 표시하고, 높은 메모리 증가율 또는 비정상적으로 높은 열린 핸들 수와 같이 감지된 누수 표시기를 표시합니다. 요약은 대부분의 메모리가 스냅샷이 캡처하는 JS 힙에 있는지 또는 스냅샷이 캡처하지 않는 네이티브 메모리에 있는지 나타냅니다.55명령은 또한 대화에 요약을 인쇄하여 프로세스의 총 메모리, JS 힙에 있는 양, 힙 외부에 있는 양을 표시합니다. 요약은 또한 높은 메모리 증가율 또는 비정상적으로 높은 열린 핸들 수와 같은 누수 표시기를 나열합니다. 요약은 대부분의 메모리가 스냅샷이 캡처하는 JS 힙에 있는지 또는 스냅샷이 캡처하지 않는 네이티브 메모리에 있는지 나타냅니다.

56 56 

57출력으로 다음 두 가지 중 하나를 수행합니다:57출력으로 다음 두 가지 중 하나를 수행합니다:

58 58 

workflows.md +1 −1

Details

91 실행 확인91 실행 확인

92</h3>92</h3>

93 93 

94워크플로우는 백그라운드에서 실행되므로 에이전트가 작동하는 동안 세션이 반응성을 유지합니다. 언제든지 `/workflows`를 실행하여 실행 중이거나 완료된 워크플로우를 나열한 후 하나를 선택하여 진행 상황 보기를 엽니다.94워크플로우는 백그라운드에서 실행되므로 에이전트가 작동하는 동안 세션이 반응성을 유지합니다. 언제든지 `/workflows`를 실행하여 실행 중이거나 완료된 워크플로우를 나열한 후 하나를 선택하여 진행 상황 보기를 엽니다. 실행 중인 워크플로우를 열지 않고 중지하려면 목록에서 선택하고 `x`를 누르세요.

95 95 

96진행 상황 보기에는 각 단계가 에이전트 수, 토큰 총계, 경과 시간과 함께 표시됩니다. 바닥글에는 각 작업의 키가 나열됩니다:96진행 상황 보기에는 각 단계가 에이전트 수, 토큰 총계, 경과 시간과 함께 표시됩니다. 바닥글에는 각 작업의 키가 나열됩니다:

97 97