SpyBara
Go Premium

Documentation 2026-06-22 23:59 UTC to 2026-06-23 22:00 UTC

44 files changed +2,113 −113. View all changes and history on the product overview
2026
Tue 23 22:00 Mon 22 23:59 Fri 19 22:58 Thu 18 22:00 Wed 17 17:02 Tue 16 21:57 Mon 15 23:02 Sat 13 21:59 Fri 12 22:00 Thu 11 23:01 Wed 10 23:57 Tue 9 06:34 Mon 8 06:52 Sat 6 06:24 Fri 5 06:45 Thu 4 06:52 Wed 3 06:53 Tue 2 06:51
Details

86`settingSources`는 사용자, 프로젝트 및 로컬 설정을 다룹니다. 몇 가지 입력은 해당 값과 관계없이 읽혀집니다:86`settingSources`는 사용자, 프로젝트 및 로컬 설정을 다룹니다. 몇 가지 입력은 해당 값과 관계없이 읽혀집니다:

87 87 

88| 입력 | 동작 | 비활성화하려면 |88| 입력 | 동작 | 비활성화하려면 |

89| :---------------------------------------------------------- | :---------------------------------------------------------------- | :----------------------------------------------------------------------------------- |89| :---------------------------------------------------------- | :---------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------- |

90| 관리형 정책 설정 | 호스트에 있을 때 항상 로드됨 | 관리형 설정 파일 제거 |90| 관리형 정책 설정 | 호스트에 있을 때 항상 로드됨 | 관리형 설정 파일 제거 |

91| `~/.claude.json` 전역 구성 | 항상 읽음 | `env`의 `CLAUDE_CONFIG_DIR`로 재배치 |91| `~/.claude.json` 전역 구성 | 항상 읽음 | `env`의 `CLAUDE_CONFIG_DIR`로 재배치 |

92| `~/.claude/projects/<project>/memory/`의 자동 메모리 | 기본적으로 시스템 프롬프트에 로드됨 | 설정에서 `autoMemoryEnabled: false` 설정 또는 `env`에서 `CLAUDE_CODE_DISABLE_AUTO_MEMORY=1` 설정 |92| `~/.claude/projects/<project>/memory/`의 자동 메모리 | 기본적으로 시스템 프롬프트에 로드됨 | 설정에서 `autoMemoryEnabled: false` 설정 또는 `env`에서 `CLAUDE_CODE_DISABLE_AUTO_MEMORY=1` 설정 |

93| [claude.ai MCP 커넥터](/ko/mcp#use-mcp-servers-from-claude-ai) | 활성 인증 방법이 claude.ai 구독일 때 로드됨. `mcpServers: {}`를 전달해도 이들을 억제하지 않음 | `strictMcpConfig: true` 설정 또는 `env`에서 `ENABLE_CLAUDEAI_MCP_SERVERS=false` 설정 |93| [claude.ai MCP 커넥터](/ko/mcp#use-mcp-servers-from-claude-ai) | 활성 인증 방법이 claude.ai 구독일 때 로드됨. `mcpServers: {}`를 전달해도 이들을 억제하지 않음 | `strictMcpConfig: true` 설정, [`disableClaudeAiConnectors: true`](/ko/mcp#disable-claude-ai-connectors) 설정 또는 `env`에서 `ENABLE_CLAUDEAI_MCP_SERVERS=false` 설정 |

94 94 

95<Warning>95<Warning>

96 다중 테넌트 격리를 위해 기본 `query()` 옵션에 의존하지 마세요. 위의 입력이 `settingSources`와 관계없이 읽혀지므로, SDK 프로세스는 호스트 수준 구성 및 디렉토리별 메모리를 선택할 수 있습니다. 다중 테넌트 배포의 경우 각 테넌트를 자체 파일시스템에서 실행하고 `settingSources: []` 및 `env`에서 `CLAUDE_CODE_DISABLE_AUTO_MEMORY=1`을 설정합니다. [안전한 배포](/ko/agent-sdk/secure-deployment)를 참조하세요.96 다중 테넌트 격리를 위해 기본 `query()` 옵션에 의존하지 마세요. 위의 입력이 `settingSources`와 관계없이 읽혀지므로, SDK 프로세스는 호스트 수준 구성 및 디렉토리별 메모리를 선택할 수 있습니다. 다중 테넌트 배포의 경우 각 테넌트를 자체 파일시스템에서 실행하고 `settingSources: []` 및 `env`에서 `CLAUDE_CODE_DISABLE_AUTO_MEMORY=1`을 설정합니다. [안전한 배포](/ko/agent-sdk/secure-deployment)를 참조하세요.

Details

958```958```

959 959 

960* `API_TIMEOUT_MS`: Anthropic 클라이언트의 요청당 시간 초과 (밀리초). 기본값 `600000`. 주 루프 및 모든 서브에이전트에 적용됩니다.960* `API_TIMEOUT_MS`: Anthropic 클라이언트의 요청당 시간 초과 (밀리초). 기본값 `600000`. 주 루프 및 모든 서브에이전트에 적용됩니다.

961* `CLAUDE_CODE_MAX_RETRIES`: 최대 API 재시도. 기본값 `10`. 각 재시도는 자체 `API_TIMEOUT_MS` 윈도우를 가지므로, 최악의 경우 벽시간은 대략 `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` 더하기 백오프입니다.961* `CLAUDE_CODE_MAX_RETRIES`: 최대 API 재시도. 기본값 `10`, 최대 `15`로 제한됨. 각 재시도는 자체 `API_TIMEOUT_MS` 윈도우를 가지므로, 최악의 경우 벽시간은 대략 `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` 더하기 백오프입니다. 더 긴 중단을 기다려야 하는 무인 실행의 경우, `CLAUDE_CODE_RETRY_WATCHDOG=1`을 설정하여 용량 오류를 무한정 재시도합니다.

962* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: `run_in_background`으로 시작된 서브에이전트의 정지 감시견. 기본값 `600000`. 각 스트림 이벤트에서 재설정됩니다. 정지 시 서브에이전트를 중단하고, 작업을 실패로 표시하고, 부분 결과와 함께 오류를 부모에게 표시합니다. 동기 서브에이전트에는 적용되지 않습니다.962* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: `run_in_background`으로 시작된 서브에이전트의 정지 감시견. 기본값 `600000`. 각 스트림 이벤트에서 재설정됩니다. 정지 시 서브에이전트를 중단하고, 작업을 실패로 표시하고, 부분 결과와 함께 오류를 부모에게 표시합니다. 동기 서브에이전트에는 적용되지 않습니다.

963* `CLAUDE_ENABLE_STREAM_WATCHDOG=1` with `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: 헤더가 도착했지만 응답 본문이 스트리밍을 중지할 때 요청을 중단합니다. `CLAUDE_ENABLE_STREAM_WATCHDOG`이 설정되지 않으면 기본값은 직접 Anthropic API에서는 서버 제어이고 다른 공급자에서는 꺼져 있습니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`는 기본값 `300000`이고 해당 최소값으로 제한됩니다. 중단된 요청은 정상 재시도 경로를 거칩니다.963* `CLAUDE_ENABLE_STREAM_WATCHDOG=1` with `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: 헤더가 도착했지만 응답 본문이 스트리밍을 중지할 때 요청을 중단합니다. `CLAUDE_ENABLE_STREAM_WATCHDOG`이 설정되지 않으면 기본값은 직접 Anthropic API에서는 서버 제어이고 다른 공급자에서는 꺼져 있습니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`는 기본값 `300000`이고 해당 최소값으로 제한됩니다. 중단된 요청은 정상 재시도 경로를 거칩니다.

964 964 

Details

196Python SDK에서 이러한 필드 이름은 와이어 형식과 일치하도록 camelCase를 사용합니다. 자세한 내용은 [`AgentDefinition` 참조](/ko/agent-sdk/python#agentdefinition)를 참조하세요.196Python SDK에서 이러한 필드 이름은 와이어 형식과 일치하도록 camelCase를 사용합니다. 자세한 내용은 [`AgentDefinition` 참조](/ko/agent-sdk/python#agentdefinition)를 참조하세요.

197 197 

198<Note>198<Note>

199 {/* min-version: 2.1.172 */}Claude Code v2.1.172부터 서브에이전트는 자신의 서브에이전트를 생성할 수 있습니다. 메인 에이전트 아래 5단계 깊이의 백그라운드 서브에이전트는 추가 서브에이전트를 생성할 수 없습니다. 포그라운드 서브에이전트는 모든 깊이에서 생성할 있습니다. 서브에이전트가 다른 서브에이전트를 생성하지 못하도록 하려면 `tools` 배열에서 `Agent`를 생략하거나 `disallowedTools`에 추가합니다. 전체 깊이 규칙은 [중첩된 서브에이전트](/ko/sub-agents#spawn-nested-subagents)를 참조하세요.199 {/* min-version: 2.1.172 */}Claude Code v2.1.172부터 서브에이전트는 자신의 서브에이전트를 생성할 수 있습니다. 메인 에이전트 아래 5단계 깊이의 서브에이전트는 추가 서브에이전트를 생성할 수 없습니다. 포그라운드 또는 백그라운드에서 실행되는지 여부와 관계없이 이 제한이 적용됩니다. 서브에이전트가 다른 서브에이전트를 생성하지 못하도록 하려면 `tools` 배열에서 `Agent`를 생략하거나 `disallowedTools`에 추가합니다. 전체 깊이 규칙은 [중첩된 서브에이전트](/ko/sub-agents#spawn-nested-subagents)를 참조하세요.

200</Note>200</Note>

201 201 

202<h3 id="filesystem-based-definition-alternative">202<h3 id="filesystem-based-definition-alternative">

Details

551```551```

552 552 

553* `API_TIMEOUT_MS`: Anthropic 클라이언트의 요청당 타임아웃 (밀리초 단위). 기본값 `600000`. 메인 루프 및 모든 서브에이전트에 적용됩니다.553* `API_TIMEOUT_MS`: Anthropic 클라이언트의 요청당 타임아웃 (밀리초 단위). 기본값 `600000`. 메인 루프 및 모든 서브에이전트에 적용됩니다.

554* `CLAUDE_CODE_MAX_RETRIES`: 최대 API 재시도 횟수. 기본값 `10`. 각 재시도는 자체 `API_TIMEOUT_MS` 윈도우를 가지므로 최악의 경우 벽시간은 대략 `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` 더하기 백오프입니다.554* `CLAUDE_CODE_MAX_RETRIES`: 최대 API 재시도 횟수. 기본값 `10`, 최대 `15`로 제한됩니다. 각 재시도는 자체 `API_TIMEOUT_MS` 윈도우를 가지므로 최악의 경우 벽시간은 대략 `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` 더하기 백오프입니다. 더 긴 중단을 기다려야 하는 무인 실행의 경우 `CLAUDE_CODE_RETRY_WATCHDOG=1`을 설정하여 용량 오류를 무한정 재시도합니다.

555* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: `run_in_background`으로 시작된 서브에이전트에 대한 정지 감시견입니다. 기본값 `600000`. 각 스트림 이벤트에서 재설정되며, 정지 시 서브에이전트를 중단하고 작업을 실패로 표시하며 부분 결과와 함께 오류를 부모에게 표시합니다. 동기 서브에이전트에는 적용되지 않습니다.555* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: `run_in_background`으로 시작된 서브에이전트에 대한 정지 감시견입니다. 기본값 `600000`. 각 스트림 이벤트에서 재설정되며, 정지 시 서브에이전트를 중단하고 작업을 실패로 표시하며 부분 결과와 함께 오류를 부모에게 표시합니다. 동기 서브에이전트에는 적용되지 않습니다.

556* `CLAUDE_ENABLE_STREAM_WATCHDOG=1` 및 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: 헤더가 도착했지만 응답 본문이 스트리밍을 중지할 때 요청을 중단합니다. `CLAUDE_ENABLE_STREAM_WATCHDOG`이 설정되지 않으면 기본값은 직접 Anthropic API에서는 서버 제어이고 다른 공급자에서는 꺼져 있습니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`는 기본값 `300000`이고 해당 최소값으로 고정됩니다. 중단된 요청은 일반 재시도 경로를 거칩니다.556* `CLAUDE_ENABLE_STREAM_WATCHDOG=1` 및 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: 헤더가 도착했지만 응답 본문이 스트리밍을 중지할 때 요청을 중단합니다. `CLAUDE_ENABLE_STREAM_WATCHDOG`이 설정되지 않으면 기본값은 직접 Anthropic API에서는 서버 제어이고 다른 공급자에서는 꺼져 있습니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`는 기본값 `300000`이고 해당 최소값으로 고정됩니다. 중단된 요청은 일반 재시도 경로를 거칩니다.

557 557 


1418```1418```

1419 1419 

1420| `kind` | 의미 |1420| `kind` | 의미 |

1421| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |1421| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1422| `human` | 최종 사용자의 직접 입력입니다. 사용자 메시지에서 없는 `origin`도 인간 입력을 의미합니다. |1422| `human` | 최종 사용자의 직접 입력입니다. 사용자 메시지에서 없는 `origin`도 인간 입력을 의미합니다. |

1423| `channel` | [채널](/ko/channels)에 도착한 메시지입니다. `server`는 소스 MCP 서버 이름입니다. |1423| `channel` | [채널](/ko/channels)에 도착한 메시지입니다. `server`는 소스 MCP 서버 이름입니다. |

1424| `peer` | 다른 에이전트 세션의 메시지를 위해 예약되어 있습니다. `from`은 발신자 주소이고 `name`은 사용 가능할 발신자의 표시 이름입니다. `senderTaskId`는 메시지를 보낸 프로세스 백그라운드 서브에이전트의 작업 ID입니다. 교차 세션 피어의 경우 없습니다. Agent SDK는 출처를 내보내지 않습니다. 알 수 없는 출처로 취급하십시오. |1424| `peer` | 다른 에이전트의 메시지입니다. 프로세스 [팀원](/ko/agent-teams)이 `SendMessage` 통해 `main`으로 보내는 경우, `from`은 팀원의 이름이고 `senderTaskId`는 해당 작업 ID입니다. 다른 로컬 Claude Code 프로세스와 같은 교차 세션 피어의 경우, `from`은 발신자 주소이고 `senderTaskId`는 없습니다. `name` 필드는 예약되어 있습니다. |

1425| `task-notification` | 백그라운드 작업이 완료된 후 주입된 합성 턴입니다. [`SDKTaskNotificationMessage`](#sdktasknotificationmessage)를 참조하십시오. |1425| `task-notification` | 백그라운드 작업이 완료된 후 주입된 합성 턴입니다. [`SDKTaskNotificationMessage`](#sdktasknotificationmessage)를 참조하십시오. |

1426| `coordinator` | [에이전트 팀](/ko/agent-teams)의 팀 코디네이터로부터의 메시지입니다. |1426| `coordinator` | [에이전트 팀](/ko/agent-teams)의 팀 코디네이터로부터의 메시지입니다. |

1427| `auto-continuation` | 새로운 사용자 입력 없이 세션이 계속될 때 주입된 합성 턴입니다. 예를 들어 후속 프롬프트를 트리거하는 명령 결과입니다. |1427| `auto-continuation` | 새로운 사용자 입력 없이 세션이 계속될 때 주입된 합성 턴입니다. 예를 들어 후속 프롬프트를 트리거하는 명령 결과입니다. |


3654 status: "allowed" | "allowed_warning" | "rejected";3654 status: "allowed" | "allowed_warning" | "rejected";

3655 resetsAt?: number;3655 resetsAt?: number;

3656 utilization?: number;3656 utilization?: number;

3657 errorCode?: "credits_required";

3658 canUserPurchaseCredits?: boolean;

3659 hasChargeableSavedPaymentMethod?: boolean;

3657 };3660 };

3658 uuid: UUID;3661 uuid: UUID;

3659 session_id: string;3662 session_id: string;

3660};3663};

3661```3664```

3662 3665 

3666{/* min-version: 2.1.181 */}`errorCode`가 `"credits_required"`일 때, 거부는 포함된 사용량이 소진된 claude.ai 구독에서 발생하며, 사용자가 사용 크레딧을 구매할 때까지 세션을 계속할 수 없습니다. `canUserPurchaseCredits`는 인증된 사용자가 계정에 대한 크레딧을 구매할 수 있는지 여부를 나타내고, `hasChargeableSavedPaymentMethod`는 저장된 결제 방법이 파일에 있는지 여부를 나타냅니다. 세 필드 모두 크레딧 필수 거부가 아닌 속도 제한 이벤트에서는 없습니다. Claude Code v2.1.181 이상이 필요합니다.

3667 

3663<h3 id="sdklocalcommandoutputmessage">3668<h3 id="sdklocalcommandoutputmessage">

3664 `SDKLocalCommandOutputMessage`3669 `SDKLocalCommandOutputMessage`

3665</h3>3670</h3>

agent-teams.md +21 −10

Details

90 90 

91그러면 Claude는 [공유 작업 목록](/ko/interactive-mode#task-list)을 채우고, 각 관점에 대한 팀원들을 생성하며, 문제를 탐색하고, 완료되었을 때 발견을 종합합니다.91그러면 Claude는 [공유 작업 목록](/ko/interactive-mode#task-list)을 채우고, 각 관점에 대한 팀원들을 생성하며, 문제를 탐색하고, 완료되었을 때 발견을 종합합니다.

92 92 

93리더의 터미널은 모든 팀원과 그들이 작업 중인 내용을 나열합니다. Shift+Down을 사용하여 팀원들을 순환하고 직접 메시지를 보냅니다. 마지막 팀원 이후, Shift+Down은 리더로 돌아갑니다.93리더의 터미널은 프롬프트 입력 아래의 에이전트 패널에 팀원들을 나열합니다. 패널에서:

94 

95* **위아래 화살표**: 팀원 선택

96* **Enter**: 선택한 팀원의 대화 기록을 열고 직접 메시지 전송

97* **Escape**: 선택한 팀원의 현재 턴 중단

98 

99{/* min-version: 2.1.181 */}v2.1.181부터, 유휴 팀원의 행은 30초 후 숨겨지고 다음 턴에 다시 나타납니다. 팀원은 숨겨진 상태에서도 계속 실행되고 주소 지정 가능합니다.

94 100 

95각 팀원이 자신의 분할 창에 있기를 원하면 [표시 모드 선택](#choose-a-display-mode)을 참조합니다.101각 팀원이 자신의 분할 창에 있기를 원하면 [표시 모드 선택](#choose-a-display-mode)을 참조합니다.

96 102 


106 112 

107에이전트 팀은 두 가지 표시 모드를 지원합니다:113에이전트 팀은 두 가지 표시 모드를 지원합니다:

108 114 

109* **In-process**: 모든 팀원이 메인 터미널 내에서 실행됩니다. Shift+Down을 사용하여 팀원들을 순환하고 입력하여 직접 메시지를 보냅니다. 모든 터미널에서 작동하며 추가 설정이 필요하지 않습니다.115* **In-process**: 모든 팀원이 메인 터미널 내에서 실행됩니다. 에이전트 패널에서 위아래 화살표 키를 사용하여 팀원을 선택한 후 Enter를 눌러 보고 입력하여 직접 메시지를 보냅니다. 모든 터미널에서 작동하며 추가 설정이 필요하지 않습니다.

110* **분할 창**: 각 팀원이 자신의 창을 가집니다. 모든 사람의 출력을 한 번에 볼 수 있고 창을 클릭하여 직접 상호작용할 수 있습니다. tmux 또는 iTerm2가 필요합니다.116* **분할 창**: 각 팀원이 자신의 창을 가집니다. 모든 사람의 출력을 한 번에 볼 수 있고 창을 클릭하여 직접 상호작용할 수 있습니다. tmux 또는 iTerm2가 필요합니다.

111 117 

112<Note>118<Note>

113 `tmux`는 특정 운영 체제에서 알려진 제한 사항이 있으며 전통적으로 macOS에서 가장 잘 작동합니다. iTerm2에서 `tmux -CC`를 사용하는 것이 `tmux`로의 권장 진입점입니다.119 `tmux`는 특정 운영 체제에서 알려진 제한 사항이 있으며 전통적으로 macOS에서 가장 잘 작동합니다. iTerm2에서 `tmux -CC`를 사용하는 것이 `tmux`로의 권장 진입점입니다.

114</Note>120</Note>

115 121 

116기본값은 `"auto"`이며, 이미 tmux 세션 내에서 실행 중이거나 터미널이 iTerm2인 경우 분할 창을 사용하고, 그렇지 않으면 in-process를 사용합니다. `"tmux"` 설정은 분할 창 모드를 활성화하고 터미널에 따라 tmux 또는 iTerm2를 사용할지 자동으로 감지합니다. 재정의하려면 `~/.claude/settings.json`에서 [`teammateMode`](/ko/settings#available-settings)를 설정합니다:122기본값은 `"in-process"`입니다. v2.1.179 이전에는 기본값이 `"auto"`였으므로, 이전에 분할 창을 열었던 업그레이드된 세션은 모드를 명시적으로 설정하지 않으면 이제 한 터미널에 머물러 있습니다. `"auto"`를 설정하여 이미 tmux 세션 내에서 실행 중이거나 터미널이 iTerm2인 경우 분할 창을 활성화하고, 그렇지 않으면 in-process로 폴백합니다. `"tmux"` 설정은 분할 창 모드를 활성화하고 터미널에 따라 tmux 또는 iTerm2를 사용할지 자동으로 감지합니다.

123 

124{/* min-version: 2.1.186 */}v2.1.186부터는 `"iterm2"`를 설정하여 iTerm2 네이티브 분할 창을 명시적으로 사용합니다. 이 모드는 [`it2` CLI](https://github.com/mkusaka/it2)가 필요하며 `it2`가 누락된 경우 설치 명령과 함께 오류를 표시합니다. 터미널이 iTerm2이고 tmux를 폴백으로 사용할 수 있을 때 `"auto"` 또는 `"tmux"` 아래에 `it2`를 설치하거나 tmux로 전환할 것을 제안하는 설정 프롬프트가 나타납니다.

125 

126기본값을 재정의하려면 `~/.claude/settings.json`에서 [`teammateMode`](/ko/settings#available-settings)를 설정합니다:

117 127 

118```json theme={null}128```json theme={null}

119{129{

120 "teammateMode": "in-process"130 "teammateMode": "auto"

121}131}

122```132```

123 133 

124단일 세션에 대해 in-process 모드를 강제하려면 플래그로 전달합니다:134단일 세션에 대해 모드를 설정하려면 플래그로 전달합니다:

125 135 

126```bash theme={null}136```bash theme={null}

127claude --teammate-mode in-process137claude --teammate-mode auto

128```138```

129 139 

130분할 창 모드는 [tmux](https://github.com/tmux/tmux/wiki) 또는 [`it2` CLI](https://github.com/mkusaka/it2)가 있는 iTerm2가 필요합니다. 수동으로 설치하려면:140분할 창 모드는 [tmux](https://github.com/tmux/tmux/wiki) 또는 [`it2` CLI](https://github.com/mkusaka/it2)가 있는 iTerm2가 필요합니다. 수동으로 설치하려면:


166 176 

167각 팀원은 완전하고 독립적인 Claude Code 세션입니다. 모든 팀원에게 직접 메시지를 보내 추가 지시를 제공하고, 후속 질문을 하거나, 접근 방식을 재지정할 수 있습니다.177각 팀원은 완전하고 독립적인 Claude Code 세션입니다. 모든 팀원에게 직접 메시지를 보내 추가 지시를 제공하고, 후속 질문을 하거나, 접근 방식을 재지정할 수 있습니다.

168 178 

169* **In-process 모드**: Shift+Down을 사용하여 팀원들을 순환한 입력하여 메시지를 보냅니다. Enter를 눌러 팀원의 세션을 보고, Escape를 눌러 현재 턴을 중단합니다. Ctrl+T를 눌러 작업 목록을 전환합니다.179* **In-process 모드**: 에이전트 패널에서 위아래 화살표 키를 사용하여 팀원을 선택한 Enter를 눌러 세션을 보고 입력하여 메시지를 보냅니다. 선택된 팀원에서 `x`를 눌러 중지합니다. Ctrl+T를 눌러 작업 목록을 전환합니다.

170* **분할 창 모드**: 팀원의 창을 클릭하여 세션과 직접 상호작용합니다. 각 팀원은 자신의 터미널의 전체 보기를 가집니다.180* **분할 창 모드**: 팀원의 창을 클릭하여 세션과 직접 상호작용합니다. 각 팀원은 자신의 터미널의 전체 보기를 가집니다.

171 181 

172<h3 id="assign-and-claim-tasks">182<h3 id="assign-and-claim-tasks">


422 432 

423Claude에게 팀원을 생성하도록 요청한 후 팀원이 나타나지 않으면:433Claude에게 팀원을 생성하도록 요청한 후 팀원이 나타나지 않으면:

424 434 

425* In-process 모드에서, 팀원들이 이미 실행 중이지만 보이지 않을 있습니다. Shift+Down을 눌러 활성 팀원들을 순환합니다.435* In-process 모드에서, 팀원들이 프롬프트 입력 아래의 에이전트 패널에 나타납니다. 위아래 화살표 키를 사용하여 팀원을 선택한 후 Enter를 눌러 확인합니다.

426* Claude에게 작업이 팀원을 보증할 만큼 복잡한지 확인합니다. Claude는 작업에 따라 팀원을 생성할지 결정합니다.436* 유휴 상태로 앉아 있다가 사라진 팀원 행은 중지된 것이 아니라 숨겨진 것입니다. 유휴 행은 30초 후에 숨겨지며 팀원의 다음 차례에 다시 나타납니다. 팀원의 이름으로 메시지를 보내 다시 표시합니다.

437* Claude에게 준 작업이 팀을 보증할 만큼 복잡한지 확인합니다. Claude는 작업에 따라 팀원을 생성할지 결정합니다.

427* 분할 창을 명시적으로 요청했으면, tmux가 설치되어 있고 PATH에서 사용 가능한지 확인합니다:438* 분할 창을 명시적으로 요청했으면, tmux가 설치되어 있고 PATH에서 사용 가능한지 확인합니다:

428 ```bash theme={null}439 ```bash theme={null}

429 which tmux440 which tmux


440 팀원들이 오류에서 중지됨451 팀원들이 오류에서 중지됨

441</h3>452</h3>

442 453 

443팀원들은 오류를 만난 후 복구하지 않고 중지할 수 있습니다. In-process 모드에서 Shift+Down을 사용하거나 분할 모드에서 창을 클릭하여 출력을 확인한 후:454팀원들은 오류를 만난 후 복구하지 않고 중지할 수 있습니다. In-process 모드에서 에이전트 패널에서 팀원을 선택하고 Enter를 누르거나, 분할 모드에서 창을 클릭하여 출력을 확인한 후 다음 중 하나를 수행합니다:

444 455 

445* 직접 추가 지시를 제공합니다456* 직접 추가 지시를 제공합니다

446* 작업을 계속하기 위해 대체 팀원을 생성합니다457* 작업을 계속하기 위해 대체 팀원을 생성합니다

agent-view.md +32 −3

Details

281| `#<number>` 또는 풀 리퀘스트 URL | 세션이 이미 해당 PR에서 작업 중이면 디스패치 대신 선택합니다 |281| `#<number>` 또는 풀 리퀘스트 URL | 세션이 이미 해당 PR에서 작업 중이면 디스패치 대신 선택합니다 |

282| `Shift+Enter` | 디스패치하고 즉시 새 세션에 연결합니다 |282| `Shift+Enter` | 디스패치하고 즉시 새 세션에 연결합니다 |

283 283 

284에이전트 뷰 자체에서만 실행되는 작은 명령 집합이 있습니다: `/exit` 및 `/quit`는 에이전트 뷰를 닫고, `/logout`은 로그아웃합니다. 다른 모든 명령과 스킬은 새로운 백그라운드 세션으로 첫 번째 프롬프트로 전송됩니다.284에이전트 뷰 자체에서만 실행되는 작은 명령 집합이 있습니다: `/exit` 및 `/quit`는 에이전트 뷰를 닫고, `/logout`은 로그아웃하며, `/model`은 [디스패치 모델](#set-the-model)을 설정합니다. 스킬, 사용자 정의 명령 및 `/init`과 같은 프롬프트 확장 기본 제공 명령은 새로운 백그라운드 세션으로 첫 번째 프롬프트로 전송됩니다. 다른 기본 제공 명령은 대신 `세션에 연결하여 실행` 힌트를 표시합니다.

285 285 

286반복되는 작업을 [스킬](/ko/skills)로 패키징하면 프롬프트를 다시 입력하지 않고 에이전트 뷰에서 동일한 워크플로우를 여러 번 시작할 수 있습니다.286반복되는 작업을 [스킬](/ko/skills)로 패키징하면 프롬프트를 다시 입력하지 않고 에이전트 뷰에서 동일한 워크플로우를 여러 번 시작할 수 있습니다.

287 287 


412 412 

413에이전트 뷰 헤더에 표시된 모델 이름은 디스패치 기본값입니다. 입력에서 시작하는 새로운 세션은 이 모델을 사용하며, 이는 사용자 설정의 [`model` 설정](/ko/settings#available-settings)에서 제공됩니다. [`/model` 선택기](/ko/model-config)에서 모델을 선택하여 설정하거나 설정을 직접 편집합니다. 전체 에이전트 뷰 세션에 대해 이를 재정의하려면 에이전트 뷰를 열 때 `--model`을 전달합니다. [권한 모드, 모델 및 노력](#permission-mode-model-and-effort)을 참조하십시오.413에이전트 뷰 헤더에 표시된 모델 이름은 디스패치 기본값입니다. 입력에서 시작하는 새로운 세션은 이 모델을 사용하며, 이는 사용자 설정의 [`model` 설정](/ko/settings#available-settings)에서 제공됩니다. [`/model` 선택기](/ko/model-config)에서 모델을 선택하여 설정하거나 설정을 직접 편집합니다. 전체 에이전트 뷰 세션에 대해 이를 재정의하려면 에이전트 뷰를 열 때 `--model`을 전달합니다. [권한 모드, 모델 및 노력](#permission-mode-model-and-effort)을 참조하십시오.

414 414 

415에이전트 뷰 내에서 디스패치 기본값을 변경하려면 디스패치 입력에서 `/model` 뒤에 모델 이름을 입력하고 `Enter`를 누릅니다. 헤더는 `(session)` 마커와 함께 해당 모델을 표시하도록 업데이트되며, 그 후 디스패치하는 세션은 이를 사용합니다. `/model default`를 입력하여 재정의를 지우고 디스패치 기본값으로 돌아갑니다. 이 재정의는 현재 `claude agents` 실행의 나머지 동안 지속되며, 설정 파일에 쓰지 않으며, Claude Code v2.1.172 이상이 필요합니다. 다음 예제는 Opus에서 한 세션을 디스패치하고 Sonnet에서 다음 세션을 디스패치합니다:

416 

417```text theme={null}

418/model opus

419refactor auth

420/model sonnet

421run the test suite

422```

423 

415각 백그라운드 세션은 다른 모델에서 실행될 수 있습니다. 한 세션에 대해 이를 재정의하려면:424각 백그라운드 세션은 다른 모델에서 실행될 수 있습니다. 한 세션에 대해 이를 재정의하려면:

416 425 

417* 셸에서 `claude --bg`와 함께 `--model`을 전달합니다.426* 셸에서 `claude --bg`와 함께 `--model`을 전달합니다.


422 권한 모드, 모델 및 노력431 권한 모드, 모델 및 노력

423</h3>432</h3>

424 433 

425백그라운드 세션은 실행되는 디렉토리에서 [설정](/ko/settings)을 읽으며, 마치 거기서 `claude`를 시작한 것처럼 동일합니다.434백그라운드 세션은 실행되는 디렉토리에서 [설정](/ko/settings)을 읽으며, 마치 거기서 `claude`를 시작한 것처럼 동일합니다. 여기에는 프로젝트 설정의 [`env` 값](/ko/settings#available-settings)이 포함되므로 거기에 설정된 `ANTHROPIC_MODEL` 또는 공급자 변수가 해당 디렉토리의 백그라운드 세션에 적용됩니다.

435 

436`CLAUDE_CODE_USE_BEDROCK` 또는 `CLAUDE_CODE_USE_VERTEX`와 같은 클라우드 공급자 선택 및 `ANTHROPIC_DEFAULT_*_MODEL` 별칭은 세션을 디스패치한 셸을 따릅니다. `ANTHROPIC_BASE_URL` 및 쌍을 이루는 `ANTHROPIC_AUTH_TOKEN`과 같은 게이트웨이 엔드포인트 변수는 따르지 않습니다. 백그라운드 세션이 공급자 설정 및 자격 증명을 소싱하는 방법에 대해서는 [감독자 프로세스](#the-supervisor-process)를 참조하십시오.

426 437 

427[권한 모드](/ko/permissions)는 세션을 시작한 방식에 따라 달라집니다. `/bg` 또는 `←`로 기존 세션을 백그라운드로 이동하면 현재 권한 모드가 유지되므로 `acceptEdits` 또는 `auto`로 전환한 세션은 분리 후에도 해당 모드에 유지됩니다. 에이전트 뷰 입력에서 디스패치하거나 셸에서 `claude --bg`를 실행하면 해당 디렉토리의 설정에서 `defaultMode`를 사용하거나 디스패치된 [서브에이전트의 프론트매터](/ko/sub-agents#supported-frontmatter-fields)에서 `permissionMode`를 사용합니다.438[권한 모드](/ko/permissions)는 세션을 시작한 방식에 따라 달라집니다. `/bg` 또는 `←`로 기존 세션을 백그라운드로 이동하면 현재 권한 모드가 유지되므로 `acceptEdits` 또는 `auto`로 전환한 세션은 분리 후에도 해당 모드에 유지됩니다. 에이전트 뷰 입력에서 디스패치하거나 셸에서 `claude --bg`를 실행하면 해당 디렉토리의 설정에서 `defaultMode`를 사용하거나 디스패치된 [서브에이전트의 프론트매터](/ko/sub-agents#supported-frontmatter-fields)에서 `permissionMode`를 사용합니다.

428 439 


508 519 

509백그라운드 세션은 터미널 및 에이전트 뷰와 별도의 사용자별 감독자 프로세스에 의해 호스팅됩니다. 감독자는 세션을 백그라운드로 보내거나 에이전트 뷰를 열 때 자동으로 시작되며 직접 관리하지 않습니다.520백그라운드 세션은 터미널 및 에이전트 뷰와 별도의 사용자별 감독자 프로세스에 의해 호스팅됩니다. 감독자는 세션을 백그라운드로 보내거나 에이전트 뷰를 열 때 자동으로 시작되며 직접 관리하지 않습니다.

510 521 

511감독자 세션은 대화형 세션과 동일한 자격 증명으로 인증하고 모델 API 이상의 추가 네트워크 연결을 하지 않습니다.522감독자는 에이전트 또는 `claude --bg`에서의 디스패치가 콜드 런칭의 지연 없이 시작되도록 미리 준비된 워커 프로세스 하나를 준비 상태로 유지합니다. 디스패치할 때 감독자는 미리 준비된 워커를 세션에 할당하고, 해당 세션의 디렉토리, 설정 및 자격 증명을 적용한 다음, 다음 디스패치를 위한 대체 프로세스를 시작합니다. 건강한 미리 준비된 워커를 사용할 수 없으면 감독자는 대신 새로운 프로세스를 시작합니다.

523 

524감독자 및 세션은 대화형 세션과 동일한 저장된 자격 증명으로 인증하고 모델 API 이상의 추가 네트워크 연결을 하지 않습니다. `CLAUDE_CODE_USE_BEDROCK` 및 `ANTHROPIC_DEFAULT_*_MODEL` 별칭과 같은 공급자 선택 변수는 각 세션을 디스패치한 셸에서 읽혀지고 해당 워커에 적용됩니다.

525 

526{/* min-version: 2.1.174 */}백그라운드 세션은 `ANTHROPIC_BASE_URL`, 동등한 Bedrock, Vertex 및 Foundry 기본 URL 변수, 또는 감독자를 시작한 셸이나 디스패칭 셸에서 쌍을 이루는 `ANTHROPIC_AUTH_TOKEN`과 같은 게이트웨이 엔드포인트 변수를 상속하지 않습니다. 세션은 저장된 자격 증명과 프로젝트 디렉토리의 [설정](/ko/settings)에 있는 `env` 값을 사용합니다. 프로젝트의 백그라운드 세션을 [LLM 게이트웨이](/ko/llm-gateway)로 지정하려면 셸에서 내보내는 대신 해당 프로젝트의 `.claude/settings.json` `env` 블록에 `ANTHROPIC_BASE_URL`을 설정합니다. v2.1.174 이전에는 백그라운드 세션이 감독자의 시작 셸에서 이러한 변수를 상속했으므로 프로젝트 디렉토리에 구성된 게이트웨이 대신 해당 셸에 구성된 게이트웨이를 사용할 수 있었습니다.

512 527 

513각 백그라운드 세션은 자체 Claude Code 프로세스이며 터미널이 아닌 감독자에 의해 관리됩니다. 적극적으로 작업 중이거나, 입력을 기다리거나, 터미널이 연결된 세션은 프로세스를 실행 상태로 유지합니다. 실행 중인 백그라운드 셸 명령, 서브에이전트, 동적 워크플로우 또는 모니터는 활성 작업으로 간주되므로 개발 서버와 같은 장기 실행 프로세스는 세션을 활성 상태로 유지합니다.528각 백그라운드 세션은 자체 Claude Code 프로세스이며 터미널이 아닌 감독자에 의해 관리됩니다. 적극적으로 작업 중이거나, 입력을 기다리거나, 터미널이 연결된 세션은 프로세스를 실행 상태로 유지합니다. 실행 중인 백그라운드 셸 명령, 서브에이전트, 동적 워크플로우 또는 모니터는 활성 작업으로 간주되므로 개발 서버와 같은 장기 실행 프로세스는 세션을 활성 상태로 유지합니다.

514 529 


599 614 

600Windows에서 감독자가 중지 요청에 응답하지 않으면, 명령이 프로세스 ID를 출력합니다. `taskkill /PID <pid>`로 해당 프로세스를 종료하여 복구를 완료합니다. `--keep-workers`를 전달했으면 백그라운드 세션은 여전히 보존됩니다.615Windows에서 감독자가 중지 요청에 응답하지 않으면, 명령이 프로세스 ID를 출력합니다. `taskkill /PID <pid>`로 해당 프로세스를 종료하여 복구를 완료합니다. `--keep-workers`를 전달했으면 백그라운드 세션은 여전히 보존됩니다.

601 616 

617<h3 id="dispatch-fails-with-could-not-resolve-authentication-method">

618 `Could not resolve authentication method` 오류로 디스패치 실패

619</h3>

620 

621{/* min-version: 2.1.174 */}백그라운드 디스패치가 `Could not resolve authentication method` 오류로 실패하지만 대화형 세션은 정상적으로 인증되면, 디스패치를 받은 워커가 자격 증명을 선택하지 못했습니다. v2.1.174 이상에서 감독자는 [사전 준비된 워커](#the-supervisor-process)를 할당할 때 새로운 자격 증명 스냅샷을 제공하므로, 이 오류는 감독자 프로세스 자체에서 저장된 자격 증명을 사용할 수 없음을 의미합니다. `/login`을 실행했거나 API 키를 구성했는지 확인한 후 감독자를 중지합니다:

622 

623```bash theme={null}

624claude daemon stop --any --keep-workers

625```

626 

627다음 `claude agents` 또는 `claude --bg`는 저장된 자격 증명을 읽는 새로운 감독자를 시작합니다. `ANTHROPIC_API_KEY`와 같은 환경 변수로 인증하는 경우 `/login` 대신 변수가 설정된 셸에서 다음 명령을 실행합니다.

628 

629원인 및 해결 방법의 전체 목록은 [오류 참조](/ko/errors#could-not-resolve-authentication-method)를 참조합니다. v2.1.174 이전에는 유휴 상태로 있던 사전 준비된 워커가 자격 증명이 유효한 경우에도 디스패치에 할당될 때 이 오류를 표시할 수 있습니다. 업그레이드하여 복구합니다.

630 

602<h3 id="background-sessions-cannot-read-desktop-documents-or-downloads-on-macos">631<h3 id="background-sessions-cannot-read-desktop-documents-or-downloads-on-macos">

603 macOS에서 백그라운드 세션이 Desktop, Documents 또는 Downloads를 읽을 수 없음632 macOS에서 백그라운드 세션이 Desktop, Documents 또는 Downloads를 읽을 수 없음

604</h3>633</h3>

Details

219}219}

220```220```

221 221 

222{/* min-version: 2.1.181 */}`aws configure export-credentials --format process`의 평면 출력도 허용되며, 동일한 키가 `Credentials` 아래에 중첩되지 않고 최상위 수준에 있습니다.

223 

222`Expiration`은 선택 사항입니다. {/* min-version: 2.1.176 */}Claude Code v2.1.176부터 명령이 유효한 ISO 8601 `Expiration`을 반환하면 Claude Code는 해당 시간 5분 전까지 자격 증명을 캐시합니다. 이것이 없거나 이전 버전에서는 자격 증명이 1시간 동안 캐시됩니다.224`Expiration`은 선택 사항입니다. {/* min-version: 2.1.176 */}Claude Code v2.1.176부터 명령이 유효한 ISO 8601 `Expiration`을 반환하면 Claude Code는 해당 시간 5분 전까지 자격 증명을 캐시합니다. 이것이 없거나 이전 버전에서는 자격 증명이 1시간 동안 캐시됩니다.

223 225 

224<h3 id="3-configure-claude-code">226<h3 id="3-configure-claude-code">

artifacts.md +270 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 아티팩트로 세션 출력 공유

6 

7> 아티팩트는 Claude Code의 작업을 조직 내에서 공유할 수 있는 비공개 URL의 라이브 인터랙티브 페이지로 변환합니다.

8 

9{/* plan-availability: feature=artifacts plans=team,enterprise providers=anthropic */}

10 

11<Note>

12 아티팩트는 베타 버전입니다. Team 또는 Enterprise 플랜과 [`/login`](/ko/setup#authenticate)으로 로그인한 세션이 필요합니다. 전체 요구사항은 [가용성](#availability)을 참조하십시오.

13</Note>

14 

15아티팩트는 Claude Code가 세션에서 claude.ai의 비공개 URL로 게시하는 라이브 인터랙티브 웹 페이지입니다. 브라우저에서 열면 세션이 계속되면서 제자리에서 업데이트됩니다. 팀원이 보기를 원할 때 페이지 헤더에서 공유하십시오. 예를 들어, 아티팩트를 사용하여 주석이 달린 diff로 풀 요청을 검토자에게 설명하거나, 세션 데이터에서 대시보드를 구축하거나, Claude가 작업하면서 채워지는 조사 타임라인을 유지할 수 있습니다.

16 

17<Frame>

18 <img src="https://mintcdn.com/claude-code/kaHIYYMIYMYPxQg9/images/artifacts-viewer.png?fit=max&auto=format&n=kaHIYYMIYMYPxQg9&q=85&s=dbfd671cdb0d15f49f808b9e89778fe1" alt="claude.ai/code/artifact에서 열린 아티팩트입니다. 뷰어 헤더는 아티팩트 제목 acme-funnel-fix, 공유 버튼, 작성자 아바타를 표시합니다. 공유 메뉴는 최신 버전 항상 공유 토글, 버전 2를 읽는 버전 선택기, Acme 대상 선택기, 링크 복사 버튼과 함께 열려 있습니다. 헤더 아래에서 아티팩트 페이지는 두 개의 모바일 목업을 나란히, 깔때기 차트, 메트릭 카드 행을 표시합니다." width="2511" height="1890" data-path="images/artifacts-viewer.png" />

19</Frame>

20 

21이 페이지에서 다루는 내용:

22 

23* [아티팩트를 사용할 시기](#when-to-use-an-artifact) 결정

24* 아티팩트 [생성](#create-an-artifact), [업데이트](#update-an-artifact), [공유](#share-an-artifact)

25* 더 풍부한 페이지를 위한 [프롬프팅 패턴](#what-you-can-build) 적용

26* [시각적 디자인 개선](#improve-the-visual-design)으로 아티팩트가 제품 브랜딩과 일치하도록 설정

27* [페이지 제약](#page-constraints) 및 [가용성 요구사항](#availability) 이해

28* [아티팩트 비활성화](#disable-artifacts) 또는 [조직의 아티팩트 관리](#manage-artifacts-for-your-organization)

29 

30<h2 id="when-to-use-an-artifact">

31 아티팩트를 사용할 시기

32</h2>

33 

34Claude가 생성한 출력이 터미널 텍스트로는 부적절한 경우 아티팩트를 사용하십시오. 즉, 한 줄씩 읽는 것보다 보고 상호작용하기가 더 쉬운 출력입니다. Claude는 코드베이스와 [연결된 도구](/ko/mcp)를 통해 가져오는 데이터를 포함하여 세션이 도달할 수 있는 모든 것에서 페이지를 구축하므로, 페이지는 설명하는 데 여러 문단이 필요한 것들을 표시할 수 있습니다. 예를 들어 Claude에 다음을 요청하십시오:

35 

36* 주석이 달린 diff로 풀 요청을 검토자에게 설명

37* 세션이 이미 가져온 데이터에서 대시보드 렌더링

38* 여러 디자인 또는 구현 옵션을 나란히 배치

39* 긴 작업이 실행되는 동안 채워지는 조사 타임라인 유지

40* Slack에 출력을 붙여넣는 대신 팀원에게 링크 전송

41 

42각각에 일치하는 프롬프트는 [빌드할 수 있는 것](#what-you-can-build)을 참조하십시오.

43 

44<h3 id="what-an-artifact-is-not">

45 아티팩트가 아닌 것

46</h3>

47 

48아티팩트는 작업의 캡처이지 애플리케이션이 아닙니다. 백엔드가 없는 하나의 자체 포함 페이지이므로 양식 입력을 저장하거나, 보기 시간에 API를 호출하거나, 여러 경로를 제공할 수 없습니다. 백엔드가 있는 호스팅된 내부 도구의 경우 자신의 인프라에 배포하십시오. 전체 제한 사항 목록은 [페이지 제약](#page-constraints)을 참조하십시오.

49 

50<h2 id="create-an-artifact">

51 아티팩트 생성

52</h2>

53 

54Claude는 출력이 페이지에 적합할 때 자동으로 아티팩트를 게시하거나 직접 요청할 수 있습니다. 요청하려면 원하는 기능이나 시각적 출력을 일반 언어로 설명하십시오. 좋은 후보는 텍스트로 읽는 것보다 보기가 더 쉬운 모든 것입니다. 예를 들어 주석이 달린 diff, 차트 또는 비교할 옵션 집합입니다. 아래 프롬프트는 두 가지 예입니다. 더 많은 패턴은 [빌드할 수 있는 것](#what-you-can-build)을 참조하십시오.

55 

56```text wrap theme={null}

57이 PR을 인라인 주석이 달린 diff로 설명하는 아티팩트를 만드십시오.

58```

59 

60```text wrap theme={null}

61지난주 배포 실패를 서비스별로 표시하는 대시보드 아티팩트를 구축하고 조사하면서 업데이트된 상태로 유지하십시오.

62```

63 

64Claude는 페이지를 프로젝트의 HTML 또는 Markdown 파일에 작성한 다음 게시합니다. 새 아티팩트를 게시하기 전에 Claude Code는 권한을 요청합니다. `Claude wants to publish "Deploy failures by service" (deploy-failures.html) to a private page on claude.ai`와 같은 내용이 표시될 수 있습니다. 이미 승인한 아티팩트를 다시 게시하면 다시 묻지 않습니다.

65 

66**예**를 선택하여 게시하십시오. Claude는 URL을 인쇄하고 브라우저가 새 페이지로 열립니다. 터미널에서 언제든지 `Ctrl+]`를 눌러 가장 최근 아티팩트를 다시 열 수 있습니다.

67 

68Claude는 아티팩트의 제목과 브라우저 탭 아이콘용 이모지를 선택합니다. 둘 다 claude.ai의 [아티팩트 갤러리](#share-an-artifact)와 공유 링크에 나타나므로, 특정 제목이나 아이콘을 원하면 Claude에 사용하도록 요청하십시오.

69 

70새 아티팩트가 게시될 때 브라우저가 자동으로 열리지 않도록 하려면 환경에서 `CLAUDE_CODE_ARTIFACT_AUTO_OPEN=0`을 설정하십시오.

71 

72Claude가 게시할 수 없다고 응답하거나 링크 없이 로컬 HTML 파일을 작성하면 도구가 세션에 대해 활성화되지 않은 것입니다. [가용성](#availability) 요구사항을 확인하십시오.

73 

74<h2 id="update-an-artifact">

75 아티팩트 업데이트

76</h2>

77 

78Claude에 페이지를 수정하도록 요청하거나 진행 상황을 다시 게시하는 장기 실행 작업을 허용하십시오. Claude는 기본 파일을 편집하고 동일한 URL로 다시 게시합니다.

79 

80```text wrap theme={null}

81요약 차트 아래에 지역별 분석을 추가하고 다시 게시하십시오.

82```

83 

84페이지를 열고 있는 모든 사람이 제자리에서 업데이트를 봅니다. 각 게시는 버전이 되며, 페이지 헤더의 **공유** 컨트롤에서 뷰어가 보는 버전을 선택할 수 있습니다.

85 

86다른 세션에서 아티팩트를 업데이트하려면 Claude에 아티팩트의 URL을 제공하고 수정하도록 요청하십시오. URL이 없으면 새 세션은 항상 기존 아티팩트를 업데이트하는 대신 새 아티팩트를 생성합니다.

87 

88```text wrap theme={null}

89https://claude.ai/code/artifact/5fbea6f3-...을 오늘의 숫자로 업데이트하십시오.

90```

91 

92<h2 id="share-an-artifact">

93 아티팩트 공유

94</h2>

95 

96새 아티팩트는 사용자에게만 표시됩니다. 브라우저에서 열고 페이지 헤더의 **공유** 컨트롤을 사용하여 조직의 특정 사람 또는 모든 사람에게 액세스 권한을 부여하십시오. 헤더는 사용자를 아티팩트의 작성자로 표시하므로 공유하는 모든 사람이 페이지를 게시한 사람을 볼 수 있습니다. 또한 [claude.ai/code/artifacts](https://claude.ai/code/artifacts)의 갤러리에 링크되어 생성한 모든 아티팩트를 나열합니다.

97 

98공유는 조직에서 중지됩니다. 뷰어는 아티팩트를 게시한 동일한 조직의 구성원으로 claude.ai에 로그인해야 하며, 조직 외부에서 볼 수 있도록 하는 옵션이 없습니다. 기본 콘텐츠를 조직 외부의 누군가에게 보내려면 Claude에 HTML 파일을 요청하고 해당 파일을 직접 공유하십시오.

99 

100아티팩트는 보기 가능하지만 공동 편집은 불가능합니다. 공유하는 사람들은 게시하는 각 버전을 보지만 페이지를 변경할 수 없습니다. 사용자만이 유일한 작성자입니다.

101 

102<h2 id="what-you-can-build">

103 빌드할 수 있는 것

104</h2>

105 

106아티팩트는 단일 HTML 페이지이므로 HTML, CSS 및 인라인 JavaScript로 표현할 수 있는 모든 것이 범위 내입니다. 아래 패턴이 가장 자주 나타납니다.

107 

108<h3 id="walk-through-a-change">

109 변경 사항 설명

110</h3>

111 

112diff 또는 디자인 변경을 관련 줄 옆에 주석과 함께 렌더링하는 페이지를 요청하여 검토자가 설명에서 재구성하는 대신 코드 옆에서 추론을 읽을 수 있도록 하십시오.

113 

114```text wrap theme={null}

115이 PR을 설명하는 아티팩트를 만드십시오. 여백 주석이 있는 diff를 렌더링하고 심각도별로 결과를 색상 코딩하십시오.

116```

117 

118<h3 id="compare-alternatives">

119 대안 비교

120</h3>

121 

122한 페이지에 여러 변형을 요청하여 서로 평가할 수 있도록 하십시오. 이는 레이아웃, 복사, API 모양 또는 구현 계획에 적합합니다.

123 

124```text wrap theme={null}

125설정 패널에 대해 뚜렷하게 다른 4가지 레이아웃이 있는 아티팩트를 만드십시오. 밀도와 그룹화를 변경하고 각각 아래에 한 줄의 트레이드오프가 있는 그리드로 배치하십시오.

126```

127 

128<h3 id="tune-with-interactive-controls">

129 인터랙티브 컨트롤로 조정

130</h3>

131 

132조정 중인 것에 바인딩된 슬라이더, 토글 또는 입력 필드를 요청하여 설명하는 대신 값을 직접 탐색할 수 있도록 하십시오.

133 

134```text wrap theme={null}

135이 전환에 대한 이징 곡선, 지속 시간 및 지연에 대한 슬라이더가 있는 아티팩트를 구축하십시오. 이동하면서 애니메이션을 라이브로 표시하십시오.

136```

137 

138<h3 id="bring-the-result-back-to-your-session">

139 결과를 세션으로 다시 가져오기

140</h3>

141 

142아티팩트는 Claude에 다시 전달하는 결정을 위한 경량 편집기로 작동할 수 있습니다. 페이지와 상호작용한 결과가 페이지에 남아 있는 대신 세션으로 흐르도록 터미널에 붙여넣을 수 있는 텍스트를 생성하는 내보내기 컨트롤을 요청하십시오.

143 

144```text wrap theme={null}

145각 미해결 문제를 Now, Next, Later, Cut 열 전체에서 드래그 가능한 카드로 하는 트리아지 보드 아티팩트를 만드십시오. "프롬프트로 복사" 버튼을 추가하여 여기에 붙여넣을 최종 순서를 제공하십시오.

146```

147 

148<h3 id="track-work-in-progress">

149 진행 중인 작업 추적

150</h3>

151 

152Claude가 긴 작업이 실행되는 동안 아티팩트를 최신 상태로 유지하도록 요청하여 링크가 있는 모든 사람이 터미널을 읽지 않고도 따라갈 수 있도록 하십시오.

153 

154```text wrap theme={null}

155이 마이그레이션 계획을 체크리스트 아티팩트로 변환하십시오. 완료하면서 항목을 확인하고 건너뛴 항목에 대한 메모를 추가하십시오.

156```

157 

158<h2 id="improve-the-visual-design">

159 시각적 디자인 개선

160</h2>

161 

162Claude는 아티팩트를 구축할 때 기본 제공 디자인 기술을 적용하므로 페이지는 추가 프롬프팅 없이 의도적인 팔레트, 타이포그래피 및 레이아웃을 얻습니다. 해당 기술은 또한 자신의 기술을 선택하기 전에 프로젝트의 기존 디자인 시스템을 찾습니다. 아티팩트를 제품 브랜딩과 일치시키려면 Claude가 찾을 수 있는 위치(예: 프로젝트의 [CLAUDE.md](/ko/memory) 또는 저장소의 테마 파일)에 디자인 토큰을 기록하십시오:

163 

164```markdown theme={null}

165## Design system

166 

167- Colors: primary #1a4d8f, accent #f59e0b, surface #f8fafc

168- Typography: Inter for body, JetBrains Mono for code

169- Spacing: 8px scale, 6px border radius

170```

171 

172Claude는 디자인 시스템을 자신의 선택보다 높은 우선순위로 취급하고 프롬프트를 둘 다보다 높은 우선순위로 취급합니다. 위의 제목과 형식은 예입니다. 색상, 글꼴 및 간격의 명확한 목록이면 됩니다.

173 

174<h2 id="page-constraints">

175 페이지 제약

176</h2>

177 

178각 아티팩트는 하나의 자체 포함 페이지입니다. Claude Code는 게시하는 파일을 HTML 문서 셸로 래핑하고 엄격한 콘텐츠 보안 정책(CSP) 아래에서 제공하며, 이는 페이지가 할 수 있는 것을 형성합니다.

179 

180| 제약 | 효과 |

181| :------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------- |

182| 외부 요청 없음 | CSP는 다른 호스트에서 로드된 스크립트, 스타일시트, 글꼴 및 이미지와 `fetch`, XHR 및 WebSocket 호출을 차단합니다. Claude는 CSS 및 JavaScript를 인라인하고 이미지를 데이터 URI로 포함하여 페이지가 외부 요청 없이 렌더링되도록 합니다. |

183| 백엔드 없음 | 아티팩트는 정적 페이지입니다. 양식을 통해 제출된 데이터를 저장하거나, 뷰어를 자체 인증하거나, 보기 시간에 API를 호출할 수 없습니다. |

184| 단일 페이지 | 상대 링크는 페이지와 함께 배포된 것이 없기 때문에 해결되지 않습니다. 다중 섹션 콘텐츠의 경우 Claude는 별도 파일 대신 페이지 내 앵커를 사용합니다. |

185| 소스 파일 유형 | 게시된 파일은 `.html`, `.htm` 또는 `.md`여야 합니다. Markdown 파일은 스타일이 지정된 HTML로 렌더링됩니다. |

186| 렌더링된 크기 | 렌더링된 페이지는 16 MiB 이하여야 합니다. 큰 포함된 이미지는 게시가 크기로 인해 실패할 때 일반적인 원인입니다. |

187 

188아티팩트를 생성하면 다른 응답과 마찬가지로 출력 토큰을 사용하며, 스타일이 지정된 페이지는 동일한 콘텐츠를 터미널 텍스트로 사용하는 것보다 더 토큰 집약적입니다. 인라인 CSS, 인터랙티브 컨트롤용 JavaScript, 특히 데이터 URI로 포함된 이미지가 주요 기여자입니다. 아티팩트의 토큰 비용을 줄이려면:

189 

190* 포함된 래스터 이미지보다 다이어그램에 SVG 또는 HTML 및 CSS를 선호합니다.

191* 필요하지 않은 상호작용을 생략합니다.

192* 페이지가 전체를 인라인하는 대신 큰 데이터 세트를 요약하도록 합니다.

193 

194<h2 id="availability">

195 가용성

196</h2>

197 

198아티팩트는 아래의 모든 조건이 필요합니다. 하나가 충족되지 않으면 Claude는 로컬 HTML 파일을 작성하거나 게시할 수 없다고 말합니다.

199 

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

201| :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

202| 플랜 | Team 또는 Enterprise. Team 플랜에서는 아티팩트가 기본적으로 켜져 있습니다. Enterprise 플랜에서는 관리자가 claude.ai 관리 설정에서 [활성화](#manage-artifacts-for-your-organization)합니다. |

203| 인증 | `/login`으로 claude.ai에 로그인했습니다. API 키, [게이트웨이 토큰](/ko/llm-gateway) 또는 클라우드 공급자 자격증명을 사용하는 세션은 게시할 수 없습니다. |

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

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

206| 표면 | Claude Code CLI 또는 Claude 데스크톱 앱 버전 1.13576.0 이상. [Agent SDK](/ko/agent-sdk/overview), GitHub Action 및 MCP 서버 컨텍스트에서 기본적으로 꺼져 있으며 [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/ko/env-vars)이 설정된 경우입니다. |

207 

208<h2 id="disable-artifacts">

209 아티팩트 비활성화

210</h2>

211 

212조직의 설정에 관계없이 자신의 세션에 대해 아티팩트를 끄려면 다음 중 하나를 사용하십시오:

213 

214| 방법 | 설정 |

215| :----------------------- | :-------------------------------- |

216| [설정 파일](/ko/settings) | `"disableArtifact": true` |

217| [환경 변수](/ko/env-vars) | `CLAUDE_CODE_DISABLE_ARTIFACT=1` |

218| [권한 규칙](/ko/permissions) | `permissions.deny`에 `Artifact` 추가 |

219 

220<h2 id="manage-artifacts-for-your-organization">

221 조직의 아티팩트 관리

222</h2>

223 

224Team 및 Enterprise 플랜의 관리자는 [claude.ai 관리 설정](https://claude.ai/admin-settings/claude-code)에서 아티팩트를 제어합니다. 아티팩트 콘텐츠는 Anthropic 운영 인프라에 저장되며 게시 조직의 인증된 구성원에게만 표시됩니다.

225 

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

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

228</h3>

229 

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

231 

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

233 보존 정책 설정

234</h3>

235 

236아티팩트가 자동 삭제 전에 유지되는 기간을 설정하려면 **설정 > 데이터 및 개인정보 보호 제어**로 이동하십시오. 작성자에게만 비공개인 아티팩트와 공유된 아티팩트에 대해 별도의 보존 기간을 설정할 수 있습니다.

237 

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

239 감사 로그 검토

240</h3>

241 

242아티팩트 게시, 공유 및 삭제는 각각 조직의 감사 로그에 `claude_artifact_*` 이벤트 유형 아래에 나타나며, 이는 claude.ai 대화에서 생성된 아티팩트에 사용되는 동일한 제품군입니다.

243 

244<h3 id="allowlist-the-viewer-domain">

245 뷰어 도메인 허용 목록

246</h3>

247 

248claude.ai의 뷰어는 샌드박스된 `*.claudeusercontent.com` 원본에서 각 아티팩트를 로드합니다. 조직이 아웃바운드 네트워크 액세스를 제한하는 경우 `claude.ai`와 함께 해당 도메인을 허용 목록에 추가하십시오. 전체 목록은 [네트워크 액세스 요구사항](/ko/network-config#network-access-requirements)을 참조하십시오.

249 

250<h3 id="list-and-delete-artifacts-with-the-compliance-api">

251 Compliance API를 사용하여 아티팩트 나열 및 삭제

252</h3>

253 

254[Compliance API](https://docs.claude.com/en/api/compliance)는 조직의 아티팩트를 나열하고, 특정 버전의 콘텐츠를 검색하고, 아티팩트를 삭제하는 엔드포인트를 제공합니다:

255 

256| 메서드 | 엔드포인트 |

257| :------- | :------------------------------------------------------------------ |

258| `GET` | `/v1/compliance/code/artifacts` |

259| `GET` | `/v1/compliance/code/artifacts/{artifact_id}/versions/{version_id}` |

260| `DELETE` | `/v1/compliance/code/artifacts/{artifact_id}` |

261 

262요청 및 응답 스키마는 [Compliance API 참조](https://docs.claude.com/en/api/compliance/code/artifacts)를 참조하십시오.

263 

264<h2 id="related-resources">

265 관련 리소스

266</h2>

267 

268* 아티팩트와 쌍을 이루는 [프롬프팅 패턴 및 워크플로우](/ko/prompt-library) 찾아보기

269* 재사용하는 아티팩트 프롬프트를 [기술](/ko/skills)로 변환하여 명령으로 호출할 수 있도록 하기

270* [MCP 서버 연결](/ko/mcp)하여 Claude가 라이브 데이터를 아티팩트로 가져올 수 있도록 하기

chrome.md +1 −1

Details

198 확장 프로그램이 감지되지 않음198 확장 프로그램이 감지되지 않음

199</h3>199</h3>

200 200 

201Claude Code의 setup-issues 라인에 `chrome`이 나열되는 경우:201Claude Code에서 Chrome 확장 프로그램을 감지할 수 없는 경우:

202 202 

2031. Chrome 확장 프로그램이 설치되어 있고 `chrome://extensions`에서 활성화되어 있는지 확인합니다.2031. Chrome 확장 프로그램이 설치되어 있고 `chrome://extensions`에서 활성화되어 있는지 확인합니다.

2042. `claude --version`을 실행하여 Claude Code가 최신 버전인지 확인합니다.2042. `claude --version`을 실행하여 Claude Code가 최신 버전인지 확인합니다.

Details

124 </Step>124 </Step>

125</Steps>125</Steps>

126 126 

127<h3 id="link-artifacts-back-to-the-session">127<h3 id="link-output-back-to-the-session">

128 아티팩트를 세션으로 다시 연결128 세션으로 출력 다시 연결

129</h3>129</h3>

130 130 

131각 클라우드 세션에는 claude.ai의 트랜스크립트 URL이 있으며, 세션은 `CLAUDE_CODE_REMOTE_SESSION_ID` 환경 변수에서 자신의 ID를 읽을 수 있습니다. 이를 사용하여 PR 본문, 커밋 메시지, Slack 게시물 또는 생성된 보고서에 추적 가능한 링크를 넣어서 검토자가 이를 생성한 실행을 열 수 있습니다.131각 클라우드 세션에는 claude.ai의 트랜스크립트 URL이 있으며, 세션은 `CLAUDE_CODE_REMOTE_SESSION_ID` 환경 변수에서 자신의 ID를 읽을 수 있습니다. 이를 사용하여 PR 본문, 커밋 메시지, Slack 게시물 또는 생성된 보고서에 추적 가능한 링크를 넣어서 검토자가 이를 생성한 실행을 열 수 있습니다.

132 132 

133변수의 값은 `cse_` 접두사를 사용하고, 트랜스크립트 URL 경로는 `session_` 접두사를 사용하는 동일한 ID를 사용합니다. 링크를 구성할 접두사를 대체하세요. 다음 명령은 URL을 인쇄합니다:133v2.1.179부터 Claude가 웹 세션에서 생성하는 커밋에는 `Claude-Session: <url>` git 트레일러가 포함되며, PR 본문에는 세션 URL이 자체 줄에 포함됩니다. {/* min-version: 2.1.182 */}v2.1.182부터 [`attribution.sessionUrl`](/ko/settings#attribution-settings)을 `false`로 설정하여 트레일러와 PR 본문 링크를 생략할 수 있습니다.

134 

135커밋이나 PR이 아닌 다른 것(예: Claude가 게시하는 Slack 메시지 또는 작성하는 보고서 파일)에 세션 링크를 포함하려면 Claude에 다음 명령을 실행하도록 하고 출력을 사용하세요. 이 명령은 환경 변수의 값에서 `cse_` 접두사를 트랜스크립트 URL이 예상하는 `session_` 접두사로 변환합니다:

134 136 

135```bash theme={null}137```bash theme={null}

136echo "https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID/#cse_/session_}"138echo "https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID/#cse_/session_}"


902* [설정 참조](/ko/settings): 모든 구성 옵션904* [설정 참조](/ko/settings): 모든 구성 옵션

903* [보안](/ko/security): 격리 보장 및 데이터 처리905* [보안](/ko/security): 격리 보장 및 데이터 처리

904* [데이터 사용](/ko/data-usage): Anthropic이 클라우드 세션에서 보유하는 것906* [데이터 사용](/ko/data-usage): Anthropic이 클라우드 세션에서 보유하는 것

907* [Claude Tag](https://claude.com/docs/claude-tag/overview): 동일한 클라우드 환경에서 실행되는 조직 관리형 Slack의 @Claude

Details

238}238}

239```239```

240 240 

241`awsAuthRefresh`가 구성되면 `/login`은 **Using 3rd-party platforms** 아래에 **Claude Platform on AWS · refresh credentials** 옵션을 표시합니다. 이를 선택하면 구성된 명령을 실행하고 Claude Code를 다시 시작하지 않고 AWS 자격 증명을 다시 읽습니다.

242 

241**옵션 B: 워크스페이스 API 키**243**옵션 B: 워크스페이스 API 키**

242 244 

243워크스페이스 API 키는 장기 보안 비밀이며, 페더레이션된 AWS 자격 증명을 관리하지 않으려는 경우에 유용합니다. AWS Console의 **Claude Platform on AWS → API keys** 아래에서 생성하고 `ANTHROPIC_AWS_API_KEY`로 설정하십시오.245워크스페이스 API 키는 장기 보안 비밀이며, 페더레이션된 AWS 자격 증명을 관리하지 않으려는 경우에 유용합니다. AWS Console의 **Claude Platform on AWS → API keys** 아래에서 생성하고 `ANTHROPIC_AWS_API_KEY`로 설정하십시오.


251워크스페이스 API 키를 다른 프로덕션 자격 증명처럼 취급하십시오. [사용자 설정 파일](/ko/settings) `env` 블록은 전역으로 내보내지 않고 키를 컴퓨터로 범위를 지정하는 편리한 방법입니다.253워크스페이스 API 키를 다른 프로덕션 자격 증명처럼 취급하십시오. [사용자 설정 파일](/ko/settings) `env` 블록은 전역으로 내보내지 않고 키를 컴퓨터로 범위를 지정하는 편리한 방법입니다.

252 254 

253<Note>255<Note>

254 `/login` 및 `/logout` 명령은 Claude Platform on AWS 인증을 변경하지 않습니다. 인증은 Claude.ai 구독이 아닌 AWS 자격 증명 또는 워크스페이스 API 키를 통해 실행됩니다.256 `/login` 및 `/logout` 명령은 Claude Platform on AWS에 대해 Claude.ai 구독에 로그인하지 않습니다. 인증은 AWS 자격 증명 또는 워크스페이스 API 키를 통해 실행됩니다. 예외는 `awsAuthRefresh`가 구성될 때 `/login`이 표시하는 **refresh credentials** 옵션이며, 이는 위에서 설명한 대로 AWS 자격 증명을 다시 읽습니다.

255</Note>257</Note>

256 258 

257<h3 id="2-configure-claude-code">259<h3 id="2-configure-claude-code">

Details

33| `claude daemon stop --any` | 백그라운드 세션 [감독자](/ko/agent-view#the-supervisor-process)와 이를 호스팅하는 세션을 중지합니다. `--keep-workers`를 전달하여 백그라운드 세션을 실행 중인 상태로 두면 다음 감독자가 이들에 다시 연결됩니다. `--any`는 기본값인 온디맨드 감독자 중지를 확인합니다. 이를 사용하여 [응답하지 않는 감독자](/ko/agent-view#agent-view-says-the-background-service-did-not-respond)에서 복구합니다 | `claude daemon stop --any --keep-workers` |33| `claude daemon stop --any` | 백그라운드 세션 [감독자](/ko/agent-view#the-supervisor-process)와 이를 호스팅하는 세션을 중지합니다. `--keep-workers`를 전달하여 백그라운드 세션을 실행 중인 상태로 두면 다음 감독자가 이들에 다시 연결됩니다. `--any`는 기본값인 온디맨드 감독자 중지를 확인합니다. 이를 사용하여 [응답하지 않는 감독자](/ko/agent-view#agent-view-says-the-background-service-did-not-respond)에서 복구합니다 | `claude daemon stop --any --keep-workers` |

34| `claude logs <id>` | [백그라운드 세션](/ko/agent-view#manage-sessions-from-the-shell)의 최근 출력을 인쇄합니다 | `claude logs 7c5dcf5d` |34| `claude logs <id>` | [백그라운드 세션](/ko/agent-view#manage-sessions-from-the-shell)의 최근 출력을 인쇄합니다 | `claude logs 7c5dcf5d` |

35| `claude mcp` | Model Context Protocol (MCP) 서버 구성 | [Claude Code MCP 문서](/ko/mcp) 참조 |35| `claude mcp` | Model Context Protocol (MCP) 서버 구성 | [Claude Code MCP 문서](/ko/mcp) 참조 |

36| `claude mcp login <name>` | {/* min-version: 2.1.186 */}구성된 MCP 서버의 OAuth 흐름을 대화형 `/mcp` 패널을 열지 않고 실행합니다. HTTP, SSE 및 claude.ai 커넥터 서버에서 작동합니다. SSH를 통해 `--no-browser`를 추가하여 브라우저를 열지 않고 인증 URL을 인쇄한 다음 리다이렉트 URL을 프롬프트에 다시 붙여넣습니다. Claude Code v2.1.186 이상이 필요합니다. [명령줄에서 인증](/ko/mcp#authenticate-from-the-command-line) 참조 | `claude mcp login sentry` |

37| `claude mcp logout <name>` | {/* min-version: 2.1.186 */}MCP 서버에 대해 저장된 OAuth 자격 증명을 지웁니다. Claude Code v2.1.186 이상이 필요합니다 | `claude mcp logout sentry` |

36| `claude plugin` | Claude Code [plugins](/ko/plugins)를 관리합니다. 별칭: `claude plugins`. 하위 명령어는 [plugin 참조](/ko/plugins-reference#cli-commands-reference)를 참조하세요 | `claude plugin install code-review@claude-plugins-official` |38| `claude plugin` | Claude Code [plugins](/ko/plugins)를 관리합니다. 별칭: `claude plugins`. 하위 명령어는 [plugin 참조](/ko/plugins-reference#cli-commands-reference)를 참조하세요 | `claude plugin install code-review@claude-plugins-official` |

37| `claude project purge [path]` | 프로젝트의 모든 로컬 Claude Code 상태를 삭제합니다: 대화 기록, 작업 목록, 디버그 로그, 파일 편집 기록, 프롬프트 기록 라인 및 `~/.claude.json`의 프로젝트 항목. `[path]`를 생략하면 대화형 목록에서 선택할 수 있습니다. 플래그: `--dry-run`으로 미리 보기, `-y`/`--yes`로 확인 건너뛰기, `-i`/`--interactive`로 각 항목 확인, `--all`로 모든 프로젝트. [로컬 데이터 지우기](/ko/claude-directory#clear-local-data) 참조 | `claude project purge ~/work/repo --dry-run` |39| `claude project purge [path]` | 프로젝트의 모든 로컬 Claude Code 상태를 삭제합니다: 대화 기록, 작업 목록, 디버그 로그, 파일 편집 기록, 프롬프트 기록 라인 및 `~/.claude.json`의 프로젝트 항목. `[path]`를 생략하면 대화형 목록에서 선택할 수 있습니다. 플래그: `--dry-run`으로 미리 보기, `-y`/`--yes`로 확인 건너뛰기, `-i`/`--interactive`로 각 항목 확인, `--all`로 모든 프로젝트. [로컬 데이터 지우기](/ko/claude-directory#clear-local-data) 참조 | `claude project purge ~/work/repo --dry-run` |

38| `claude remote-control` | Claude.ai 또는 Claude 앱에서 Claude Code를 제어하기 위한 [Remote Control](/ko/remote-control) 서버를 시작합니다. 서버 모드에서 실행됩니다(로컬 대화형 세션 없음). [서버 모드 플래그](/ko/remote-control#start-a-remote-control-session) 참조 | `claude remote-control --name "My Project"` |40| `claude remote-control` | Claude.ai 또는 Claude 앱에서 Claude Code를 제어하기 위한 [Remote Control](/ko/remote-control) 서버를 시작합니다. 서버 모드에서 실행됩니다(로컬 대화형 세션 없음). [서버 모드 플래그](/ko/remote-control#start-a-remote-control-session) 참조 | `claude remote-control --name "My Project"` |


60| `--allowedTools`, `--allowed-tools` | 권한 프롬프트 없이 실행되는 도구입니다. 패턴 매칭에 대해 [권한 규칙 구문](/ko/settings#permission-rule-syntax)을 참조하세요. 사용 가능한 도구를 제한하려면 `--tools`를 대신 사용하세요 | `"Bash(git log *)" "Bash(git diff *)" "Read"` |62| `--allowedTools`, `--allowed-tools` | 권한 프롬프트 없이 실행되는 도구입니다. 패턴 매칭에 대해 [권한 규칙 구문](/ko/settings#permission-rule-syntax)을 참조하세요. 사용 가능한 도구를 제한하려면 `--tools`를 대신 사용하세요 | `"Bash(git log *)" "Bash(git diff *)" "Read"` |

61| `--append-system-prompt` | 기본 시스템 프롬프트의 끝에 사용자 정의 텍스트를 추가합니다 | `claude --append-system-prompt "Always use TypeScript"` |63| `--append-system-prompt` | 기본 시스템 프롬프트의 끝에 사용자 정의 텍스트를 추가합니다 | `claude --append-system-prompt "Always use TypeScript"` |

62| `--append-system-prompt-file` | 파일에서 추가 시스템 프롬프트 텍스트를 로드하고 기본 프롬프트에 추가합니다 | `claude --append-system-prompt-file ./extra-rules.txt` |64| `--append-system-prompt-file` | 파일에서 추가 시스템 프롬프트 텍스트를 로드하고 기본 프롬프트에 추가합니다 | `claude --append-system-prompt-file ./extra-rules.txt` |

65| `--ax-screen-reader` | {/* min-version: 2.1.181 */}스크린 리더 친화적 출력을 렌더링합니다: 장식용 테두리나 애니메이션 없는 평문입니다. 클래식 렌더러를 강제하므로 이 세션에 대해 [`tui`](/ko/settings#available-settings) 설정은 효과가 없습니다. [`CLAUDE_AX_SCREEN_READER`](/ko/env-vars) 및 [`axScreenReader`](/ko/settings#available-settings) 설정보다 우선합니다. Claude Code v2.1.181 이상이 필요합니다 | `claude --ax-screen-reader` |

63| `--bare` | 최소 모드: hooks, skills, plugins, MCP 서버, 자동 메모리 및 CLAUDE.md의 자동 검색을 건너뜁니다. 스크립트된 호출이 더 빠르게 시작됩니다. Claude는 Bash, 파일 읽기 및 파일 편집 도구에 액세스할 수 있습니다. [`CLAUDE_CODE_SIMPLE`](/ko/env-vars)을 설정합니다. [bare 모드](/ko/headless#start-faster-with-bare-mode) 참조 | `claude --bare -p "query"` |66| `--bare` | 최소 모드: hooks, skills, plugins, MCP 서버, 자동 메모리 및 CLAUDE.md의 자동 검색을 건너뜁니다. 스크립트된 호출이 더 빠르게 시작됩니다. Claude는 Bash, 파일 읽기 및 파일 편집 도구에 액세스할 수 있습니다. [`CLAUDE_CODE_SIMPLE`](/ko/env-vars)을 설정합니다. [bare 모드](/ko/headless#start-faster-with-bare-mode) 참조 | `claude --bare -p "query"` |

64| `--betas` | API 요청에 포함할 베타 헤더(API 키 사용자만 해당) | `claude --betas interleaved-thinking` |67| `--betas` | API 요청에 포함할 베타 헤더(API 키 사용자만 해당) | `claude --betas interleaved-thinking` |

65| `--bg` | 세션을 [백그라운드 에이전트](/ko/agent-view)로 시작하고 즉시 반환합니다. 세션 ID와 관리 명령어를 인쇄합니다. `--exec`과 결합하여 Claude 세션 대신 셸 명령어를 백그라운드 작업으로 실행하거나, `--agent`와 결합하여 특정 subagent를 실행합니다 | `claude --bg "investigate the flaky test"` |68| `--bg` | 세션을 [백그라운드 에이전트](/ko/agent-view)로 시작하고 즉시 반환합니다. 세션 ID와 관리 명령어를 인쇄합니다. `--exec`과 결합하여 Claude 세션 대신 셸 명령어를 백그라운드 작업으로 실행하거나, `--agent`와 결합하여 특정 subagent를 실행합니다 | `claude --bg "investigate the flaky test"` |


114| `--system-prompt` | 전체 시스템 프롬프트를 사용자 정의 텍스트로 바꿉니다 | `claude --system-prompt "You are a Python expert"` |117| `--system-prompt` | 전체 시스템 프롬프트를 사용자 정의 텍스트로 바꿉니다 | `claude --system-prompt "You are a Python expert"` |

115| `--system-prompt-file` | 파일에서 시스템 프롬프트를 로드하여 기본 프롬프트를 바꿉니다 | `claude --system-prompt-file ./custom-prompt.txt` |118| `--system-prompt-file` | 파일에서 시스템 프롬프트를 로드하여 기본 프롬프트를 바꿉니다 | `claude --system-prompt-file ./custom-prompt.txt` |

116| `--teleport` | 로컬 터미널에서 [웹 세션](/ko/claude-code-on-the-web)을 재개합니다 | `claude --teleport` |119| `--teleport` | 로컬 터미널에서 [웹 세션](/ko/claude-code-on-the-web)을 재개합니다 | `claude --teleport` |

117| `--teammate-mode` | [에이전트 팀](/ko/agent-teams) 팀원 표시 방식을 설정합니다: `auto`(기본값), `in-process` 또는 `tmux`. [`teammateMode`](/ko/settings#available-settings) 설정을 이 세션에 대해 재정의합니다. [디스플레이 모드 선택](/ko/agent-teams#choose-a-display-mode) 참조 | `claude --teammate-mode in-process` |120| `--teammate-mode` | [에이전트 팀](/ko/agent-teams) 팀원 표시 방식을 설정합니다: `in-process`(기본값), `auto`, `tmux` 또는 {/* min-version: 2.1.186 */}`iterm2`(v2.1.186에서 추가됨). 기본값은 v2.1.179에서 `auto`에서 변경되었습니다. [`teammateMode`](/ko/settings#available-settings) 설정을 이 세션에 대해 재정의합니다. [디스플레이 모드 선택](/ko/agent-teams#choose-a-display-mode) 참조 | `claude --teammate-mode auto` |

118| `--tmux` | worktree에 대한 tmux 세션을 생성합니다. `--worktree`가 필요합니다. 사용 가능한 경우 iTerm2 네이티브 창을 사용합니다. 기존 tmux의 경우 `--tmux=classic`을 전달합니다 | `claude -w feature-auth --tmux` |121| `--tmux` | worktree에 대한 tmux 세션을 생성합니다. `--worktree`가 필요합니다. 사용 가능한 경우 iTerm2 네이티브 창을 사용합니다. 기존 tmux의 경우 `--tmux=classic`을 전달합니다 | `claude -w feature-auth --tmux` |

119| `--tools` | Claude가 사용할 수 있는 기본 제공 도구를 제한합니다. 모두 비활성화하려면 `""`를 사용하고, 모두 사용하려면 `"default"`를 사용하거나, `"Bash,Edit,Read"`와 같은 도구 이름을 사용합니다. MCP 도구는 영향을 받지 않습니다. 이들도 거부하려면 `--disallowedTools "mcp__*"`를 사용하거나, `--mcp-config` 없이 `--strict-mcp-config`를 전달하여 MCP 서버가 로드되지 않도록 합니다 | `claude --tools "Bash,Edit,Read"` |122| `--tools` | Claude가 사용할 수 있는 기본 제공 도구를 제한합니다. 모두 비활성화하려면 `""`를 사용하고, 모두 사용하려면 `"default"`를 사용하거나, `"Bash,Edit,Read"`와 같은 도구 이름을 사용합니다. MCP 도구는 영향을 받지 않습니다. 이들도 거부하려면 `--disallowedTools "mcp__*"`를 사용하거나, `--mcp-config` 없이 `--strict-mcp-config`를 전달하여 MCP 서버가 로드되지 않도록 합니다 | `claude --tools "Bash,Edit,Read"` |

120| `--verbose` | 자세한 로깅을 활성화하고 전체 턴별 출력을 표시합니다. [`viewMode`](/ko/settings#available-settings) 설정을 이 세션에 대해 재정의합니다 | `claude --verbose` |123| `--verbose` | 자세한 로깅을 활성화하고 전체 턴별 출력을 표시합니다. [`viewMode`](/ko/settings#available-settings) 설정을 이 세션에 대해 재정의합니다 | `claude --verbose` |

commands.md +4 −4

Details

24 24 

25**병렬로 작업 실행.** `/agents`는 Claude가 부작업을 위임할 수 있는 [subagent](/ko/sub-agents)의 관리자를 열고, `/tasks`는 현재 세션의 백그라운드에서 실행 중인 작업을 나열합니다. `/background`는 전체 세션을 분리하여 [background agent](/ko/agent-view)로 계속 실행되도록 하고 터미널을 해제합니다. 코드베이스에 걸친 큰 변경의 경우, `/batch`는 이를 독립적인 단위로 분해하고 각각을 자신의 [worktree](/ko/worktrees)에서 실행합니다. [병렬로 agent 실행](/ko/agents)을 참조하여 이러한 접근 방식이 어떻게 관련되는지 확인하십시오.25**병렬로 작업 실행.** `/agents`는 Claude가 부작업을 위임할 수 있는 [subagent](/ko/sub-agents)의 관리자를 열고, `/tasks`는 현재 세션의 백그라운드에서 실행 중인 작업을 나열합니다. `/background`는 전체 세션을 분리하여 [background agent](/ko/agent-view)로 계속 실행되도록 하고 터미널을 해제합니다. 코드베이스에 걸친 큰 변경의 경우, `/batch`는 이를 독립적인 단위로 분해하고 각각을 자신의 [worktree](/ko/worktrees)에서 실행합니다. [병렬로 agent 실행](/ko/agents)을 참조하여 이러한 접근 방식이 어떻게 관련되는지 확인하십시오.

26 26 

27**배포 전.** `/diff`는 변경된 내용을 표시하고, `/code-review`는 diff를 정확성 버그 및 정리에 대해 확인하며 `--fix`로 결과를 적용할 수 있고, `/review` 또는 `/security-review`는 더 깊은 읽기 전용 검토를 제공합니다. `/code-review ultra`는 클라우드에서 다중 agent 검토를 실행합니다.27**배포 전.** `/diff`는 변경된 내용을 표시하고, `/code-review`는 diff를 정확성 버그 및 정리에 대해 확인하며 `--fix`로 결과를 적용할 수 있고, `/review` GitHub pull request에서 동일한 읽기 전용 검토를 실행하며, `/security-review`는 더 깊은 읽기 전용 검토를 제공합니다. `/code-review ultra`는 클라우드에서 다중 agent 검토를 실행합니다.

28 28 

29**세션 간.** `/clear`는 프로젝트 메모리를 유지하면서 새 작업을 새로 시작합니다. `/resume` 및 `/branch`를 사용하면 이전 대화로 돌아가거나 분기할 수 있습니다. `/teleport`는 웹 세션을 이 터미널로 가져오고, `/remote-control`을 사용하면 다른 기기에서 이 로컬 세션을 계속할 수 있습니다.29**세션 간.** `/clear`는 프로젝트 메모리를 유지하면서 새 작업을 새로 시작합니다. `/resume` 및 `/branch`를 사용하면 이전 대화로 돌아가거나 분기할 수 있습니다. `/teleport`는 웹 세션을 이 터미널로 가져오고, `/remote-control`을 사용하면 다른 기기에서 이 로컬 세션을 계속할 수 있습니다.

30 30 


64| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [target]` | **[Skill](/ko/skills#bundled-skills).** 현재 diff를 정확성 버그에 대해 검토하고 재사용, 단순화 및 효율성 정리에 대해 검토합니다. `--fix`를 전달하여 결과를 작업 트리에 적용하고, `--comment`를 전달하여 현재 GitHub PR에 인라인 댓글로 게시하거나, `ultra`를 전달하여 깊은 [cloud review](/ko/ultrareview)를 실행합니다. {/* min-version: 2.1.154 */}v2.1.154부터 `/simplify`는 버그를 찾지 않고 정리만 수행하는 별도의 검토를 실행합니다. 노력 수준 및 대상 지정에 대해서는 [Review a diff locally](/ko/code-review#review-a-diff-locally)를 참조하세요 |64| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [target]` | **[Skill](/ko/skills#bundled-skills).** 현재 diff를 정확성 버그에 대해 검토하고 재사용, 단순화 및 효율성 정리에 대해 검토합니다. `--fix`를 전달하여 결과를 작업 트리에 적용하고, `--comment`를 전달하여 현재 GitHub PR에 인라인 댓글로 게시하거나, `ultra`를 전달하여 깊은 [cloud review](/ko/ultrareview)를 실행합니다. {/* min-version: 2.1.154 */}v2.1.154부터 `/simplify`는 버그를 찾지 않고 정리만 수행하는 별도의 검토를 실행합니다. 노력 수준 및 대상 지정에 대해서는 [Review a diff locally](/ko/code-review#review-a-diff-locally)를 참조하세요 |

65| `/color [color\|default]` | 현재 세션의 프롬프트 바 색상을 설정합니다. 사용 가능한 색상: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. 초기화하려면 `default`를 사용합니다. 인수 없이 실행하면 무작위 색상을 선택합니다. [Remote Control](/ko/remote-control)이 연결되면 색상이 claude.ai/code와 동기화됩니다 |65| `/color [color\|default]` | 현재 세션의 프롬프트 바 색상을 설정합니다. 사용 가능한 색상: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. 초기화하려면 `default`를 사용합니다. 인수 없이 실행하면 무작위 색상을 선택합니다. [Remote Control](/ko/remote-control)이 연결되면 색상이 claude.ai/code와 동기화됩니다 |

66| `/compact [instructions]` | 지금까지의 대화를 요약하여 컨텍스트를 확보합니다. 선택적으로 요약에 대한 포커스 지침을 전달합니다. [compaction이 규칙, skills 및 메모리 파일을 처리하는 방법](/ko/context-window#what-survives-compaction)을 참조하세요 |66| `/compact [instructions]` | 지금까지의 대화를 요약하여 컨텍스트를 확보합니다. 선택적으로 요약에 대한 포커스 지침을 전달합니다. [compaction이 규칙, skills 및 메모리 파일을 처리하는 방법](/ko/context-window#what-survives-compaction)을 참조하세요 |

67| `/config` | [Settings](/ko/settings) 인터페이스를 열어 테마, 모델, [output style](/ko/output-styles) 및 기타 기본 설정을 조정합니다. 별칭: `/settings` |67| `/config [key=value ...]` | [Settings](/ko/settings) 인터페이스를 열어 테마, 모델, [output style](/ko/output-styles) 및 기타 기본 설정을 조정합니다. {/* min-version: 2.1.181 */}v2.1.181부터 하나 이상의 `key=value` 쌍을 전달하여 인터페이스를 열지 않고 설정을 직접 설정할 수 있습니다. 예를 들어 `/config thinking=false`. {/* min-version: 2.1.182 */}v2.1.182부터 명명된 약칭 키도 허용됩니다. 예를 들어 `/config theme=dark` 또는 `/config model=sonnet`. `key=value` 형식은 비대화형 모드(`-p`)와 [Remote Control](/ko/remote-control)에서도 작동합니다. `/config --help`를 실행하여 설정할 수 있는 모든 키를 나열합니다. 별칭: `/settings` |

68| `/context [all]` | 현재 컨텍스트 사용량을 색상 그리드로 시각화합니다. 컨텍스트 집약적 도구, 메모리 부풀림 및 용량 경고에 대한 최적화 제안을 표시합니다. [fullscreen mode](/ko/fullscreen)에서는 항목별 분석이 그리드를 표시하기 위해 축소됩니다. `all`을 전달하여 확장합니다 |68| `/context [all]` | 현재 컨텍스트 사용량을 색상 그리드로 시각화합니다. 컨텍스트 집약적 도구, 메모리 부풀림 및 용량 경고에 대한 최적화 제안을 표시합니다. [fullscreen mode](/ko/fullscreen)에서는 항목별 분석이 그리드를 표시하기 위해 축소됩니다. `all`을 전달하여 확장합니다 |

69| `/copy [N]` | 마지막 어시스턴트 응답을 클립보드에 복사합니다. 숫자 `N`을 전달하여 N번째 최신 응답을 복사합니다: `/copy 2`는 두 번째 마지막 응답을 복사합니다. 코드 블록이 있을 때는 개별 블록 또는 전체 응답을 선택할 수 있는 대화형 선택기를 표시합니다. 선택기에서 `w`를 누르면 클립보드 대신 파일에 선택 항목을 작성하며, 이는 SSH를 통해 유용합니다 |69| `/copy [N]` | 마지막 어시스턴트 응답을 클립보드에 복사합니다. 숫자 `N`을 전달하여 N번째 최신 응답을 복사합니다: `/copy 2`는 두 번째 마지막 응답을 복사합니다. 코드 블록이 있을 때는 개별 블록 또는 전체 응답을 선택할 수 있는 대화형 선택기를 표시합니다. 선택기에서 `w`를 누르면 클립보드 대신 파일에 선택 항목을 작성하며, 이는 SSH를 통해 유용합니다 |

70| `/cost` | `/usage`의 별칭입니다 |70| `/cost` | `/usage`의 별칭입니다 |


80| `/feedback [report]` | 피드백을 제출하거나, 버그를 보고하거나, 대화를 공유합니다. 별칭: `/bug`, `/share` |80| `/feedback [report]` | 피드백을 제출하거나, 버그를 보고하거나, 대화를 공유합니다. 별칭: `/bug`, `/share` |

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

82| `/focus` | 포커스 뷰를 전환합니다. 마지막 프롬프트, 편집 diffstats가 있는 한 줄 도구 호출 요약 및 최종 응답만 표시합니다. 선택 항목은 세션 전체에서 유지됩니다. 설정에서 [`viewMode`](/ko/settings#available-settings)를 설정하여 재정의할 수 있습니다. [fullscreen rendering](/ko/fullscreen)에서만 사용 가능합니다 |82| `/focus` | 포커스 뷰를 전환합니다. 마지막 프롬프트, 편집 diffstats가 있는 한 줄 도구 호출 요약 및 최종 응답만 표시합니다. 선택 항목은 세션 전체에서 유지됩니다. 설정에서 [`viewMode`](/ko/settings#available-settings)를 설정하여 재정의할 수 있습니다. [fullscreen rendering](/ko/fullscreen)에서만 사용 가능합니다 |

83| `/fork <directive>` | {/* min-version: 2.1.161 */}}[forked subagent](/ko/sub-agents#fork-the-current-conversation)를 생성합니다. 이는 전체 대화를 상속하고 지시문에서 작업하는 백그라운드 subagent이며, 당신은 계속 진행합니다. 그 결과는 완료되면 당신의 대화로 돌아옵니다. 대화의 복사본으로 자신이 전환하려면 `/branch`를 사용하세요. v2.1.161 이전에는 `/fork`가 `/branch`의 별칭입니다 |83| `/fork <directive>` | {/* min-version: 2.1.161 */}[forked subagent](/ko/sub-agents#fork-the-current-conversation)를 생성합니다. 이는 전체 대화를 상속하고 지시문에서 작업하는 백그라운드 subagent이며, 당신은 계속 진행합니다. 그 결과는 완료되면 당신의 대화로 돌아옵니다. 대화의 복사본으로 자신이 전환하려면 `/branch`를 사용하세요. v2.1.161 이전에는 `/fork`가 `/branch`의 별칭입니다 |

84| `/goal [condition\|clear]` | [goal](/ko/goal)을 설정합니다. Claude는 조건이 충족될 때까지 여러 턴에 걸쳐 계속 작업합니다. 인수 없이 현재 또는 가장 최근에 달성한 goal을 표시합니다. `clear`, `stop`, `off`, `reset`, `none` 또는 `cancel`은 활성 goal을 조기에 제거합니다 |84| `/goal [condition\|clear]` | [goal](/ko/goal)을 설정합니다. Claude는 조건이 충족될 때까지 여러 턴에 걸쳐 계속 작업합니다. 인수 없이 현재 또는 가장 최근에 달성한 goal을 표시합니다. `clear`, `stop`, `off`, `reset`, `none` 또는 `cancel`은 활성 goal을 조기에 제거합니다 |

85| `/heapdump` | JavaScript 힙 스냅샷 및 메모리 분석을 `~/Desktop`에 작성하거나, Desktop 폴더가 없는 Linux의 경우 홈 디렉토리에 작성하여 높은 메모리 사용량을 진단합니다. [troubleshooting](/ko/troubleshooting#high-cpu-or-memory-usage)을 참조하세요 |85| `/heapdump` | JavaScript 힙 스냅샷 및 메모리 분석을 `~/Desktop`에 작성하거나, Desktop 폴더가 없는 Linux의 경우 홈 디렉토리에 작성하여 높은 메모리 사용량을 진단합니다. [troubleshooting](/ko/troubleshooting#high-cpu-or-memory-usage)을 참조하세요 |

86| `/help` | 도움말 및 사용 가능한 명령어를 표시합니다 |86| `/help` | 도움말 및 사용 가능한 명령어를 표시합니다 |


114| `/remote-env` | [cloud agents](/ko/claude-code-on-the-web#configure-your-environment)에 대한 기본 환경을 선택합니다 |114| `/remote-env` | [cloud agents](/ko/claude-code-on-the-web#configure-your-environment)에 대한 기본 환경을 선택합니다 |

115| `/rename [name]` | 현재 세션의 이름을 바꾸고 프롬프트 바에 이름을 표시합니다. 이름이 없으면 대화 기록에서 자동으로 생성합니다 |115| `/rename [name]` | 현재 세션의 이름을 바꾸고 프롬프트 바에 이름을 표시합니다. 이름이 없으면 대화 기록에서 자동으로 생성합니다 |

116| `/resume [session]` | ID 또는 이름으로 대화를 재개하거나 세션 선택기를 엽니다. v2.1.144부터 [background sessions](/ko/agent-view)이 선택기에 `bg`로 표시됩니다. 별칭: `/continue` |116| `/resume [session]` | ID 또는 이름으로 대화를 재개하거나 세션 선택기를 엽니다. v2.1.144부터 [background sessions](/ko/agent-view)이 선택기에 `bg`로 표시됩니다. 별칭: `/continue` |

117| `/review [PR]` | 현재 세션에서 로컬로 pull request를 검토합니다. 깊은 클라우드 기반 검토는 [`/code-review ultra`](/ko/ultrareview)를 참조하세요 |117| `/review [PR]` | GitHub pull request를 번호로 검토합니다. `/code-review`와 동일한 검토 엔진을 사용합니다. 인수 없이 선택할 열린 PR을 나열합니다. 클라우드 기반 검토의 경우 [`/code-review ultra`](/ko/ultrareview)를 참조하세요 |

118| `/rewind` | 대화 및/또는 코드를 이전 지점으로 되감기하거나 선택한 메시지에서 요약합니다. [checkpointing](/ko/checkpointing)을 참조하세요. 별칭: `/checkpoint`, `/undo` |118| `/rewind` | 대화 및/또는 코드를 이전 지점으로 되감기하거나 선택한 메시지에서 요약합니다. [checkpointing](/ko/checkpointing)을 참조하세요. 별칭: `/checkpoint`, `/undo` |

119| `/run` | **[Skill](/ko/skills#bundled-skills).** 프로젝트의 앱을 시작하고 구동하여 테스트나 타입 검사가 아닌 실행 중인 앱에서 변경 사항이 작동하는 것을 확인합니다. [Run and verify your app](/ko/skills#run-and-verify-your-app)을 참조하세요. {/* min-version: 2.1.145 */}Claude Code v2.1.145 이상이 필요합니다 |119| `/run` | **[Skill](/ko/skills#bundled-skills).** 프로젝트의 앱을 시작하고 구동하여 테스트나 타입 검사가 아닌 실행 중인 앱에서 변경 사항이 작동하는 것을 확인합니다. [Run and verify your app](/ko/skills#run-and-verify-your-app)을 참조하세요. {/* min-version: 2.1.145 */}Claude Code v2.1.145 이상이 필요합니다 |

120| `/run-skill-generator` | **[Skill](/ko/skills#bundled-skills).** 깨끗한 환경에서 프로젝트의 앱을 빌드, 시작 및 구동하는 방법을 `/run` 및 `/verify`에 가르치고, 프로젝트별 [skill](/ko/skills#run-and-verify-your-app)을 작성합니다. {/* min-version: 2.1.145 */}Claude Code v2.1.145 이상이 필요합니다 |120| `/run-skill-generator` | **[Skill](/ko/skills#bundled-skills).** 깨끗한 환경에서 프로젝트의 앱을 빌드, 시작 및 구동하는 방법을 `/run` 및 `/verify`에 가르치고, 프로젝트별 [skill](/ko/skills#run-and-verify-your-app)을 작성합니다. {/* min-version: 2.1.145 */}Claude Code v2.1.145 이상이 필요합니다 |

env-vars.md +25 −16

Details

148| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | 모든 기본 제공 [subagent](/ko/sub-agents) 유형(예: Explore 및 Plan)을 비활성화하려면 `1`로 설정합니다. 비대화형 모드(`-p` 플래그)에만 적용됩니다. SDK 사용자가 백지 상태를 원할 때 유용합니다. |148| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | 모든 기본 제공 [subagent](/ko/sub-agents) 유형(예: Explore 및 Plan)을 비활성화하려면 `1`로 설정합니다. 비대화형 모드(`-p` 플래그)에만 적용됩니다. SDK 사용자가 백지 상태를 원할 때 유용합니다. |

149| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | SDK에서 생성한 MCP 서버의 도구 이름에서 `mcp__<server>__` 접두사를 건너뛰려면 `1`로 설정합니다. 도구는 원래 이름을 사용합니다. SDK 사용만 해당 |149| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | SDK에서 생성한 MCP 서버의 도구 이름에서 `mcp__<server>__` 접두사를 건너뛰려면 `1`로 설정합니다. 도구는 원래 이름을 사용합니다. SDK 사용만 해당 |

150| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | 백그라운드 subagent의 정체 타임아웃(밀리초). 기본값 `600000`(10분). 타이머는 각 스트리밍 진행 이벤트에서 재설정됩니다. 윈도우 내에 진행이 도착하지 않으면 subagent가 중단되고 작업이 실패로 표시되며 부분 결과가 부모에게 표시됩니다. |150| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | 백그라운드 subagent의 정체 타임아웃(밀리초). 기본값 `600000`(10분). 타이머는 각 스트리밍 진행 이벤트에서 재설정됩니다. 윈도우 내에 진행이 도착하지 않으면 subagent가 중단되고 작업이 실패로 표시되며 부분 결과가 부모에게 표시됩니다. |

151| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | 자동 압축이 트리거되는 자동 압축 윈도우의 백분율(1-100)을 설정합니다. `50`과 같은 낮은 값을 사용하여 더 일찍 압축합니다. 이 변수는 Claude Code가 사전에 압축할 때만 더 일찍 압축을 유발합니다: `CLAUDE_CODE_AUTO_COMPACT_WINDOW`가 설정되었을 때, [클라우드 세션](/ko/claude-code-on-the-web)에서, [Remote Control](/ko/remote-control) 세션에서, [확장 컨텍스트](/ko/model-config#extended-context) 없이 Sonnet 4.6 및 Opus 4.6에서 기본적으로 200K 경계에서 압축합니다. 기본 로컬 세션과 같은 다른 경우에는 대화가 모델의 컨텍스트 제한에 도달할 때 자동 압축이 트리거됩니다. 재정의는 기본 임계값만 낮출 수 있으므로 기본값보다 높은 값은 효과가 없습니다. 주 대화와 subagent 모두에 적용됩니다. |151| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | 자동 압축이 트리거되는 자동 압축 윈도우의 백분율(1-100)을 설정합니다. `50`과 같은 낮은 값을 사용하여 더 일찍 압축합니다. 이 변수는 Claude Code가 사전에 압축할 때만 더 일찍 압축을 유발합니다: `CLAUDE_CODE_AUTO_COMPACT_WINDOW`가 설정되었을 때, [클라우드 세션](/ko/claude-code-on-the-web)에서, [확장 컨텍스트](/ko/model-config#extended-context) 없이 Sonnet 4.6 및 Opus 4.6에서 기본적으로 200K 경계에서 압축합니다. 기본 로컬 세션과 같은 다른 경우에는 대화가 모델의 컨텍스트 제한에 도달할 때 자동 압축이 트리거됩니다. 재정의는 기본 임계값만 낮출 수 있으므로 기본값보다 높은 값은 효과가 없습니다. 주 대화와 subagent 모두에 적용됩니다. |

152| `CLAUDE_AUTO_BACKGROUND_TASKS` | 장시간 실행되는 에이전트 작업의 자동 백그라운드 처리를 강제로 활성화하려면 `1`로 설정합니다. 활성화되면 subagent는 약 2분 동안 실행한 후 백그라운드로 이동합니다. |152| `CLAUDE_AUTO_BACKGROUND_TASKS` | 장시간 실행되는 에이전트 작업의 자동 백그라운드 처리를 강제로 활성화하려면 `1`로 설정합니다. 활성화되면 subagent는 약 2분 동안 실행한 후 백그라운드로 이동합니다. |

153| `CLAUDE_AX_SCREEN_READER` | {/* min-version: 2.1.181 */}화면 판독기 친화적 출력을 렌더링하려면 `1`로 설정합니다: 장식 테두리 또는 애니메이션 없는 평면 텍스트. [`axScreenReader`](/ko/settings#available-settings)가 `true`인 경우에도 화면 판독기 모드를 강제로 끄려면 `0`으로 설정합니다. [`--ax-screen-reader`](/ko/cli-reference#cli-flags) 플래그가 우선합니다. Claude Code v2.1.181 이상이 필요합니다. |

153| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | 주 세션에서 각 Bash 또는 PowerShell 명령 후 원래 작업 디렉토리로 돌아갑니다. |154| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | 주 세션에서 각 Bash 또는 PowerShell 명령 후 원래 작업 디렉토리로 돌아갑니다. |

155| `CLAUDE_CLIENT_PRESENCE_FILE` | {/* min-version: 2.1.181 */}화면 잠금 수신기와 같은 외부 도구가 화면을 잠금 해제할 때 생성하고 잠금할 때 삭제하는 파일의 경로입니다. 파일이 존재하는 동안 Claude Code는 [Remote Control 모바일 푸시 알림](/ko/remote-control#mobile-push-notifications)을 건너뜁니다. 따라서 컴퓨터를 적극적으로 사용하는 동안 푸시를 받지 않습니다. 파일이 없거나 읽을 수 없으면 알림이 정상적으로 전송됩니다. Claude Code는 파일을 폴링하지 않고 푸시 트리거 이벤트당 한 번 확인합니다. Claude Code v2.1.181 이상이 필요합니다. |

154| `CLAUDE_CODE_ACCESSIBILITY` | 기본 터미널 커서를 표시하고 반전된 텍스트 커서 표시기를 비활성화하려면 `1`로 설정합니다. macOS Zoom과 같은 화면 확대기가 커서 위치를 추적할 수 있습니다. |156| `CLAUDE_CODE_ACCESSIBILITY` | 기본 터미널 커서를 표시하고 반전된 텍스트 커서 표시기를 비활성화하려면 `1`로 설정합니다. macOS Zoom과 같은 화면 확대기가 커서 위치를 추적할 수 있습니다. |

155| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | `--add-dir`로 지정된 디렉토리에서 메모리 파일을 로드하려면 `1`로 설정합니다. `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md`, `CLAUDE.local.md`를 로드합니다. 기본적으로 추가 디렉토리는 메모리 파일을 로드하지 않습니다. |157| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | `--add-dir`로 지정된 디렉토리에서 메모리 파일을 로드하려면 `1`로 설정합니다. `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md`, `CLAUDE.local.md`를 로드합니다. 기본적으로 추가 디렉토리는 메모리 파일을 로드하지 않습니다. |

156| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | [전체 화면 렌더링](/ko/fullscreen)에서 증분 업데이트를 전송하는 대신 모든 프레임에서 전체 화면을 다시 칠하려면 `1`로 설정합니다. 전체 화면 모드에서 오래된 텍스트 또는 잘못된 위치의 텍스트 조각이 표시되면 이를 사용합니다. Claude Code는 Windows의 백그라운드 세션 및 [에이전트 보기](/ko/agent-view)에 대해 자동으로 이를 활성화합니다. |158| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | [전체 화면 렌더링](/ko/fullscreen)에서 증분 업데이트를 전송하는 대신 모든 프레임에서 전체 화면을 다시 칠하려면 `1`로 설정합니다. 전체 화면 모드에서 오래된 텍스트 또는 잘못된 위치의 텍스트 조각이 표시되면 이를 사용합니다. Claude Code는 Windows의 백그라운드 세션 및 [에이전트 보기](/ko/agent-view)에 대해 자동으로 이를 활성화합니다. |

157| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Claude Code가 모델 ID를 노력 가능으로 인식하지 못할 때에도 모든 요청과 함께 [노력](/ko/model-config#adjust-effort-level) 매개변수를 전송하려면 `1`로 설정합니다. [LLM 게이트웨이](/ko/llm-gateway) 또는 사용자 정의 식별자 아래에서 모델을 제공하는 타사 공급자를 통해 라우팅할 때 사용합니다. Claude 3 모델, Sonnet 4.0 및 4.5, Opus 4.0 및 4.1, Haiku 4.5를 포함하여 API에서 노력 매개변수를 거부하는 모델은 요청이 실패하지 않도록 제외됩니다. |159| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Claude Code가 모델 ID를 노력 가능으로 인식하지 못할 때에도 모든 요청과 함께 [노력](/ko/model-config#adjust-effort-level) 매개변수를 전송하려면 `1`로 설정합니다. [LLM 게이트웨이](/ko/llm-gateway) 또는 사용자 정의 식별자 아래에서 모델을 제공하는 타사 공급자를 통해 라우팅할 때 사용합니다. Claude 3 모델, Sonnet 4.0 및 4.5, Opus 4.0 및 4.1, Haiku 4.5를 포함하여 API에서 노력 매개변수를 거부하는 모델은 요청이 실패하지 않도록 제외됩니다. |

158| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | 자격 증명을 새로 고쳐야 하는 간격(밀리초)([`apiKeyHelper`](/ko/settings#available-settings) 사용 시) |160| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | 자격 증명을 새로 고쳐야 하는 간격(밀리초)([`apiKeyHelper`](/ko/settings#available-settings) 사용 시) |

161| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | 새 [아티팩트](/ko/artifacts)가 게시될 때 Claude Code가 브라우저를 자동으로 열지 않도록 하려면 `0`으로 설정합니다. 기존 아티팩트를 다시 게시해도 이 설정과 관계없이 브라우저를 열지 않습니다. |

159| `CLAUDE_CODE_ATTRIBUTION_HEADER` | 시스템 프롬프트의 시작 부분에서 속성 블록(클라이언트 버전 및 프롬프트 지문)을 생략하려면 `0`으로 설정합니다. 비활성화하면 [LLM 게이트웨이](/ko/llm-gateway)를 통해 라우팅할 때 프롬프트 캐시 히트율이 향상됩니다. Anthropic API 캐싱은 영향을 받지 않습니다. |162| `CLAUDE_CODE_ATTRIBUTION_HEADER` | 시스템 프롬프트의 시작 부분에서 속성 블록(클라이언트 버전 및 프롬프트 지문)을 생략하려면 `0`으로 설정합니다. 비활성화하면 [LLM 게이트웨이](/ko/llm-gateway)를 통해 라우팅할 때 프롬프트 캐시 히트율이 향상됩니다. Anthropic API 캐싱은 영향을 받지 않습니다. |

160| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | 자동 압축 계산에 사용되는 컨텍스트 용량을 토큰 단위로 설정합니다. 기본값은 모델의 컨텍스트 윈도우입니다: 표준 모델의 경우 200K 또는 [확장 컨텍스트](/ko/model-config#extended-context) 모델의 경우 1M입니다. 1M 모델에서 `500000`과 같은 낮은 값을 사용하여 압축 목적상 윈도우를 500K로 취급합니다. 값은 모델의 실제 컨텍스트 윈도우로 제한됩니다. `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`는 이 값의 백분율로 적용됩니다. 이 변수를 설정하면 압축 임계값이 상태 줄의 `used_percentage`에서 분리되며, 이는 항상 모델의 전체 컨텍스트 윈도우를 사용합니다. |163| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | 자동 압축 계산에 사용되는 컨텍스트 용량을 토큰 단위로 설정합니다. 기본값은 모델의 컨텍스트 윈도우입니다: 표준 모델의 경우 200K 또는 [확장 컨텍스트](/ko/model-config#extended-context) 모델의 경우 1M입니다. 1M 모델에서 `500000`과 같은 낮은 값을 사용하여 압축 목적상 윈도우를 500K로 취급합니다. 값은 모델의 실제 컨텍스트 윈도우로 제한됩니다. `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`는 이 값의 백분율로 적용됩니다. 이 변수를 설정하면 압축 임계값이 상태 줄의 `used_percentage`에서 분리되며, 이는 항상 모델의 전체 컨텍스트 윈도우를 사용합니다. |

161| `CLAUDE_CODE_AUTO_CONNECT_IDE` | 자동 [IDE 연결](/ko/vs-code)을 재정의합니다. 기본적으로 Claude Code는 지원되는 IDE의 통합 터미널 내에서 실행될 때 자동으로 연결됩니다. 이를 방지하려면 `false`로 설정합니다. tmux가 부모 터미널을 가리는 경우와 같이 자동 감지가 실패할 때 연결을 강제하려면 `true`로 설정합니다. [`autoConnectIde`](/ko/settings#global-config-settings) 전역 구성 설정보다 우선합니다. |164| `CLAUDE_CODE_AUTO_CONNECT_IDE` | 자동 [IDE 연결](/ko/vs-code)을 재정의합니다. 기본적으로 Claude Code는 지원되는 IDE의 통합 터미널 내에서 실행될 때 자동으로 연결됩니다. 이를 방지하려면 `false`로 설정합니다. tmux가 부모 터미널을 가리는 경우와 같이 자동 감지가 실패할 때 연결을 강제하려면 `true`로 설정합니다. [`autoConnectIde`](/ko/settings#global-config-settings) 전역 구성 설정보다 우선합니다. |


164| `CLAUDE_CODE_CLIENT_CERT` | mTLS 인증용 클라이언트 인증서 파일의 경로 |167| `CLAUDE_CODE_CLIENT_CERT` | mTLS 인증용 클라이언트 인증서 파일의 경로 |

165| `CLAUDE_CODE_CLIENT_KEY` | mTLS 인증용 클라이언트 개인 키 파일의 경로 |168| `CLAUDE_CODE_CLIENT_KEY` | mTLS 인증용 클라이언트 개인 키 파일의 경로 |

166| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | 암호화된 CLAUDE\_CODE\_CLIENT\_KEY의 암호(선택 사항) |169| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | 암호화된 CLAUDE\_CODE\_CLIENT\_KEY의 암호(선택 사항) |

170| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | {/* max-version: 2.1.185 */}v2.1.186에서 제거되었으며 이제 작동하지 않습니다. 이전에는 스트리밍 API 요청의 연결, TLS, 응답 헤더 단계에 대한 별도의 타임아웃을 설정했습니다. 요청별 타임아웃의 경우 `API_TIMEOUT_MS`를 사용합니다. |

167| `CLAUDE_CODE_DEBUG_LOGS_DIR` | 디버그 로그 파일 경로를 재정의합니다. 이름과 달리 이는 디렉토리가 아닌 파일 경로입니다. 디버그 모드를 `--debug`, `/debug`, 또는 `DEBUG` 환경 변수를 통해 별도로 활성화해야 합니다. 이 변수만 설정해도 로깅이 활성화되지 않습니다. [`--debug-file`](/ko/cli-reference#cli-flags) 플래그는 둘 다 한 번에 수행합니다. 기본값은 `~/.claude/debug/<session-id>.txt`입니다. |171| `CLAUDE_CODE_DEBUG_LOGS_DIR` | 디버그 로그 파일 경로를 재정의합니다. 이름과 달리 이는 디렉토리가 아닌 파일 경로입니다. 디버그 모드를 `--debug`, `/debug`, 또는 `DEBUG` 환경 변수를 통해 별도로 활성화해야 합니다. 이 변수만 설정해도 로깅이 활성화되지 않습니다. [`--debug-file`](/ko/cli-reference#cli-flags) 플래그는 둘 다 한 번에 수행합니다. 기본값은 `~/.claude/debug/<session-id>.txt`입니다. |

168| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | 디버그 로그 파일에 기록되는 최소 로그 수준입니다. 값: `verbose`, `debug`(기본값), `info`, `warn`, `error`. 전체 상태 줄 명령 출력과 같은 대용량 진단을 포함하려면 `verbose`로 설정하거나, 노이즈를 줄이려면 `error`로 올립니다. |172| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | 디버그 로그 파일에 기록되는 최소 로그 수준입니다. 값: `verbose`, `debug`(기본값), `info`, `warn`, `error`. 전체 상태 줄 명령 출력과 같은 대용량 진단을 포함하려면 `verbose`로 설정하거나, 노이즈를 줄이려면 `error`로 올립니다. |

169| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | [1M 컨텍스트 윈도우](/ko/model-config#extended-context) 지원을 비활성화하려면 `1`로 설정합니다. 설정하면 1M 모델 변형을 모델 선택기에서 사용할 수 없습니다. 규정 준수 요구 사항이 있는 엔터프라이즈 환경에 유용합니다. |173| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | [1M 컨텍스트 윈도우](/ko/model-config#extended-context) 지원을 비활성화하려면 `1`로 설정합니다. 설정하면 1M 모델 변형을 모델 선택기에서 사용할 수 없습니다. 규정 준수 요구 사항이 있는 엔터프라이즈 환경에 유용합니다. |


171| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | {/* min-version: 2.1.98 */}[어드바이저 도구](/ko/advisor)를 비활성화하려면 `1`로 설정합니다. `/advisor` 명령 및 `--advisor` 플래그를 사용할 수 없게 되고 구성된 `advisorModel`은 무시됩니다. Claude Code v2.1.98 이상이 필요합니다. |175| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | {/* min-version: 2.1.98 */}[어드바이저 도구](/ko/advisor)를 비활성화하려면 `1`로 설정합니다. `/advisor` 명령 및 `--advisor` 플래그를 사용할 수 없게 되고 구성된 `advisorModel`은 무시됩니다. Claude Code v2.1.98 이상이 필요합니다. |

172| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | [백그라운드 에이전트 및 에이전트 보기](/ko/agent-view)를 끄려면 `1`로 설정합니다: `claude agents`, `--bg`, `/background`, 온디맨드 감독자. [`disableAgentView`](/ko/settings#available-settings) 설정과 동일합니다. |176| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | [백그라운드 에이전트 및 에이전트 보기](/ko/agent-view)를 끄려면 `1`로 설정합니다: `claude agents`, `--bg`, `/background`, 온디맨드 감독자. [`disableAgentView`](/ko/settings#available-settings) 설정과 동일합니다. |

173| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | [전체 화면 렌더링](/ko/fullscreen)을 비활성화하려면 `1`로 설정합니다. 클래식 메인 화면 렌더러를 사용합니다. 대화가 터미널의 기본 스크롤백에 남아 있으므로 `Cmd+f` 및 tmux 복사 모드가 평소처럼 작동합니다. `CLAUDE_CODE_NO_FLICKER` 및 [`tui`](/ko/settings#available-settings) 설정보다 우선합니다. `/tui default`로도 전환할 수 있습니다. [에이전트 보기](/ko/agent-view)에서 열린 백그라운드 세션에는 적용되지 않으며, 항상 전체 화면 렌더링을 사용합니다. |177| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | [전체 화면 렌더링](/ko/fullscreen)을 비활성화하려면 `1`로 설정합니다. 클래식 메인 화면 렌더러를 사용합니다. 대화가 터미널의 기본 스크롤백에 남아 있으므로 `Cmd+f` 및 tmux 복사 모드가 평소처럼 작동합니다. `CLAUDE_CODE_NO_FLICKER` 및 [`tui`](/ko/settings#available-settings) 설정보다 우선합니다. `/tui default`로도 전환할 수 있습니다. [에이전트 보기](/ko/agent-view)에서 열린 백그라운드 세션에는 적용되지 않으며, 항상 전체 화면 렌더링을 사용합니다. |

178| `CLAUDE_CODE_DISABLE_ARTIFACT` | [아티팩트](/ko/artifacts) 도구를 비활성화하려면 `1`로 설정합니다. 이는 세션 출력을 claude.ai의 비공개 웹 페이지로 게시합니다. [`disableArtifact`](/ko/settings#available-settings) 설정과 동일합니다. |

174| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | 첨부 파일 처리를 비활성화하려면 `1`로 설정합니다. `@` 구문이 있는 파일 언급은 파일 내용으로 확장되지 않고 일반 텍스트로 전송됩니다. |179| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | 첨부 파일 처리를 비활성화하려면 `1`로 설정합니다. `@` 구문이 있는 파일 언급은 파일 내용으로 확장되지 않고 일반 텍스트로 전송됩니다. |

175| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | [자동 메모리](/ko/memory#auto-memory)를 비활성화하려면 `1`로 설정합니다. `0`으로 설정하여 `--bare` 모드 또는 [`autoMemoryEnabled: false`](/ko/settings#available-settings)가 그렇지 않으면 비활성화할 때에도 자동 메모리를 강제로 켭니다. 비활성화되면 Claude는 자동 메모리 파일을 생성하거나 로드하지 않습니다. |180| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | [자동 메모리](/ko/memory#auto-memory)를 비활성화하려면 `1`로 설정합니다. `0`으로 설정하여 `--bare` 모드 또는 [`autoMemoryEnabled: false`](/ko/settings#available-settings)가 그렇지 않으면 비활성화할 때에도 자동 메모리를 강제로 켭니다. 비활성화되면 Claude는 자동 메모리 파일을 생성하거나 로드하지 않습니다. |

176| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Bash 및 subagent 도구의 `run_in_background` 매개변수, 자동 백그라운드 처리, Ctrl+B 단축키를 포함한 모든 백그라운드 작업 기능을 비활성화하려면 `1`로 설정합니다. |181| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Bash 및 subagent 도구의 `run_in_background` 매개변수, 자동 백그라운드 처리, Ctrl+B 단축키를 포함한 모든 백그라운드 작업 기능을 비활성화하려면 `1`로 설정합니다. |


207| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | [에이전트 팀](/ko/agent-teams)을 활성화하려면 `1`로 설정합니다. 에이전트 팀은 실험적이며 기본적으로 비활성화됩니다. |212| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | [에이전트 팀](/ko/agent-teams)을 활성화하려면 `1`로 설정합니다. 에이전트 팀은 실험적이며 기본적으로 비활성화됩니다. |

208| `CLAUDE_CODE_EXTRA_BODY` | 모든 API 요청 본문의 최상위 수준으로 병합할 JSON 객체입니다. Claude Code가 직접 노출하지 않는 공급자 특정 매개변수를 전달하는 데 유용합니다. |213| `CLAUDE_CODE_EXTRA_BODY` | 모든 API 요청 본문의 최상위 수준으로 병합할 JSON 객체입니다. Claude Code가 직접 노출하지 않는 공급자 특정 매개변수를 전달하는 데 유용합니다. |

209| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | 파일 읽기의 기본 토큰 제한을 재정의합니다. 전체 파일을 읽어야 할 때 유용합니다. |214| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | 파일 읽기의 기본 토큰 제한을 재정의합니다. 전체 파일을 읽어야 할 때 유용합니다. |

210| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | {/* min-version: 2.1.172 */}이 `claude`가 다른 Claude Code 세션 내부에서 시작되었을 때에도 트랜스크립트 지속성, 프롬프트 기록, `claude agents` 등록을 강제하려면 `1`로 설정합니다. 예를 들어 Claude Code의 Bash 도구에서 처음 시작된 tmux 서버에서 상속된 `CLAUDE_CODE_CHILD_SESSION` 값이 진정한 최상위 세션을 중첩으로 잘못 분류할 때 사용합니다. v2.1.169 이상에서도 인정됩니다. v2.1.170 및 v2.1.171에서는 효과가 없으며, 이를 재정의한 중첩 세션 감지가 제거되었습니다. |215| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | {/* min-version: 2.1.172 */}}이 `claude`가 다른 Claude Code 세션 내부에서 시작되었을 때에도 트랜스크립트 지속성, 프롬프트 기록, `claude agents` 등록을 강제하려면 `1`로 설정합니다. 예를 들어 Claude Code의 Bash 도구에서 처음 시작된 tmux 서버에서 상속된 `CLAUDE_CODE_CHILD_SESSION` 값이 진정한 최상위 세션을 중첩으로 잘못 분류할 때 사용합니다. {/* min-version: 2.1.178 */}v2.1.178부터 Claude Code는 tmux 경우를 자동으로 감지하고 상속된 마커를 무시하므로 tmux는 더 이상 이 변수가 필요하지 않습니다. v2.1.169 이상에서도 인정됩니다. v2.1.170 및 v2.1.171에서는 효과가 없으며, 이를 재정의한 중첩 세션 감지가 제거되었습니다. |

216| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | {/* min-version: 2.1.186 */}}터미널이 지원하지만 자동 감지되지 않을 때 Claude의 응답에서 `~~text~~`에 대한 취소선 렌더링을 강제하려면 `1`로 설정합니다. SSH를 통해 `TERM_PROGRAM`이 전달되지 않는 경우와 같습니다. 이 없으면 감지되지 않은 터미널은 취소선으로 렌더링하는 대신 리터럴 `~~` 마커를 표시합니다. Claude Code v2.1.186 이상이 필요합니다. |

211| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | 터미널이 지원하지만 자동 감지되지 않을 때 DEC 개인 모드 2026 [동기화된 출력](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036)을 강제로 활성화하려면 `1`로 설정합니다. Emacs `eat`과 같은 BSU/ESU를 구현하지만 기능 프로브에 응답하지 않는 에뮬레이터에 유용합니다. tmux에서는 효과가 없습니다. |217| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | 터미널이 지원하지만 자동 감지되지 않을 때 DEC 개인 모드 2026 [동기화된 출력](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036)을 강제로 활성화하려면 `1`로 설정합니다. Emacs `eat`과 같은 BSU/ESU를 구현하지만 기능 프로브에 응답하지 않는 에뮬레이터에 유용합니다. tmux에서는 효과가 없습니다. |

212| `CLAUDE_CODE_FORK_SUBAGENT` | [포크된 subagent](/ko/sub-agents#fork-the-current-conversation)를 모델의 기본값으로 만들려면 `1`로 설정하거나, 비활성화하려면 `0`으로 설정합니다. 서버 측 롤아웃을 재정의합니다. 활성화되면 Claude는 일반 목적 subagent를 사용하는 대신 포크를 생성합니다. 포크는 새로 시작하는 대신 전체 대화 컨텍스트를 상속하는 subagent이며, 모든 subagent 생성은 백그라운드에서 실행됩니다. 명시적 [`/fork`](/ko/commands) 명령은 이 변수 없이도 작동합니다. 대화형 모드와 SDK 또는 `claude -p`를 통해 작동합니다. |218| `CLAUDE_CODE_FORK_SUBAGENT` | [포크된 subagent](/ko/sub-agents#fork-the-current-conversation)를 모델의 기본값으로 만들려면 `1`로 설정하거나, 비활성화하려면 `0`으로 설정합니다. 서버 측 롤아웃을 재정의합니다. 활성화되면 Claude는 일반 목적 subagent를 사용하는 대신 포크를 생성합니다. 포크는 새로 시작하는 대신 전체 대화 컨텍스트를 상속하는 subagent이며, 모든 subagent 생성은 백그라운드에서 실행됩니다. 명시적 [`/fork`](/ko/commands) 명령은 이 변수 없이도 작동합니다. 대화형 모드와 SDK 또는 `claude -p`를 통해 작동합니다. |

213| `CLAUDE_CODE_GIT_BASH_PATH` | Windows 전용: Git Bash 실행 파일(`bash.exe`)의 경로입니다. Git Bash가 설치되었지만 PATH에 없을 때 사용합니다. [Windows 설정](/ko/setup#set-up-on-windows) 참조 |219| `CLAUDE_CODE_GIT_BASH_PATH` | Windows 전용: Git Bash 실행 파일(`bash.exe`)의 경로입니다. Git Bash가 설치되었지만 PATH에 없을 때 사용합니다. [Windows 설정](/ko/setup#set-up-on-windows) 참조 |


220| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | 연결 중 IDE 잠금 파일 항목의 유효성 검사를 건너뛰려면 `1`로 설정합니다. 자동 연결이 실행 중인 IDE를 찾지 못할 때 사용합니다. |226| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | 연결 중 IDE 잠금 파일 항목의 유효성 검사를 건너뛰려면 `1`로 설정합니다. 자동 연결이 실행 중인 IDE를 찾지 못할 때 사용합니다. |

221| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Claude Code가 활성 모델에 대해 가정하는 컨텍스트 윈도우 크기를 재정의합니다. `DISABLE_COMPACT`도 설정되어 있을 때만 적용됩니다. `ANTHROPIC_BASE_URL`을 통해 이름의 기본 제공 크기와 일치하지 않는 컨텍스트 윈도우를 가진 모델로 라우팅할 때 사용합니다. |227| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Claude Code가 활성 모델에 대해 가정하는 컨텍스트 윈도우 크기를 재정의합니다. `DISABLE_COMPACT`도 설정되어 있을 때만 적용됩니다. `ANTHROPIC_BASE_URL`을 통해 이름의 기본 제공 크기와 일치하지 않는 컨텍스트 윈도우를 가진 모델로 라우팅할 때 사용합니다. |

222| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | 대부분의 요청에 대한 최대 출력 토큰 수를 설정합니다. 기본값 및 상한은 모델에 따라 다릅니다. [최대 출력 토큰](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) 참조. 이 값을 증가시키면 [자동 압축](/ko/costs#reduce-token-usage)이 트리거되기 전에 사용 가능한 효과적인 컨텍스트 윈도우가 감소합니다. |228| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | 대부분의 요청에 대한 최대 출력 토큰 수를 설정합니다. 기본값 및 상한은 모델에 따라 다릅니다. [최대 출력 토큰](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) 참조. 이 값을 증가시키면 [자동 압축](/ko/costs#reduce-token-usage)이 트리거되기 전에 사용 가능한 효과적인 컨텍스트 윈도우가 감소합니다. |

223| `CLAUDE_CODE_MAX_RETRIES` | 실패한 API 요청을 재시도할 횟수를 재정의합니다(기본값: 10) |229| `CLAUDE_CODE_MAX_RETRIES` | 실패한 API 요청을 재시도할 횟수를 재정의합니다(기본값: 10). {/* min-version: 2.1.186 */}}v2.1.186부터 최대 15로 제한됩니다. 더 긴 중단을 기다려야 하는 무인 세션의 경우 `CLAUDE_CODE_RETRY_WATCHDOG`을 대신 설정합니다. |

224| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 병렬로 실행할 수 있는 읽기 전용 도구 및 subagent의 최대 수(기본값: 10). 더 높은 값은 병렬 처리를 증가시키지만 더 많은 리소스를 소비합니다. |230| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 병렬로 실행할 수 있는 읽기 전용 도구 및 subagent의 최대 수(기본값: 10). 더 높은 값은 병렬 처리를 증가시키지만 더 많은 리소스를 소비합니다. |

225| `CLAUDE_CODE_MAX_TURNS` | 명시적 제한이 전달되지 않을 때 에이전트 턴 수를 제한합니다. [`--max-turns`](/ko/cli-reference#cli-flags) 전달과 동일하며, 둘 다 설정되면 우선합니다. 양의 정수가 아닌 값은 제한이 없는 것으로 취급되지 않고 오류와 함께 시작 시 거부됩니다. |231| `CLAUDE_CODE_MAX_TURNS` | 명시적 제한이 전달되지 않을 때 에이전트 턴 수를 제한합니다. [`--max-turns`](/ko/cli-reference#cli-flags) 전달과 동일하며, 둘 다 설정되면 우선합니다. 양의 정수가 아닌 값은 제한이 없는 것으로 취급되지 않고 오류와 함께 시작 시 거부됩니다. |

226| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | stdio MCP 서버를 안전한 기본 환경과 서버의 구성된 `env`만으로 생성하려면 `1`로 설정합니다. 셸 환경을 상속하지 않습니다. |232| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | stdio MCP 서버를 안전한 기본 환경과 서버의 구성된 `env`만으로 생성하려면 `1`로 설정합니다. 셸 환경을 상속하지 않습니다. |


230| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Claude.ai 인증용 OAuth 새로 고침 토큰입니다. 설정하면 `claude auth login`이 브라우저를 열지 않고 이 토큰을 직접 교환합니다. `CLAUDE_CODE_OAUTH_SCOPES`가 필요합니다. 자동화된 환경에서 인증을 프로비저닝하는 데 유용합니다. |236| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Claude.ai 인증용 OAuth 새로 고침 토큰입니다. 설정하면 `claude auth login`이 브라우저를 열지 않고 이 토큰을 직접 교환합니다. `CLAUDE_CODE_OAUTH_SCOPES`가 필요합니다. 자동화된 환경에서 인증을 프로비저닝하는 데 유용합니다. |

231| `CLAUDE_CODE_OAUTH_SCOPES` | 새로 고침 토큰이 발급된 공백으로 구분된 OAuth 범위(예: `"user:profile user:inference user:sessions:claude_code"`). `CLAUDE_CODE_OAUTH_REFRESH_TOKEN`이 설정되면 필수입니다. |237| `CLAUDE_CODE_OAUTH_SCOPES` | 새로 고침 토큰이 발급된 공백으로 구분된 OAuth 범위(예: `"user:profile user:inference user:sessions:claude_code"`). `CLAUDE_CODE_OAUTH_REFRESH_TOKEN`이 설정되면 필수입니다. |

232| `CLAUDE_CODE_OAUTH_TOKEN` | Claude.ai 인증용 OAuth 액세스 토큰입니다. `/login`의 대안으로 SDK 및 자동화된 환경에 사용됩니다. 키체인 저장 자격 증명보다 우선합니다. [`claude setup-token`](/ko/authentication#generate-a-long-lived-token)으로 생성합니다. |238| `CLAUDE_CODE_OAUTH_TOKEN` | Claude.ai 인증용 OAuth 액세스 토큰입니다. `/login`의 대안으로 SDK 및 자동화된 환경에 사용됩니다. 키체인 저장 자격 증명보다 우선합니다. [`claude setup-token`](/ko/authentication#generate-a-long-lived-token)으로 생성합니다. |

233| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | {/* max-version: 2.1.159 */}v2.1.160에서 제거되었으며 이제 작동하지 않습니다. 이전에는 [빠른 모드](/ko/fast-mode)를 Claude Opus 4.6에 고정했습니다. Opus 4.6이 폐기될 때까지 Opus 4.6에서 빠른 모드를 실행하려면 먼저 `/model`로 모델을 선택한 다음 `/fast on`을 실행합니다. |239| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | {/* max-version: 2.1.159 */}}v2.1.160에서 제거되었으며 이제 작동하지 않습니다. 이전에는 [빠른 모드](/ko/fast-mode)를 Claude Opus 4.6에 고정했습니다. Opus 4.6이 폐기될 때까지 Opus 4.6에서 빠른 모드를 실행하려면 먼저 `/model`로 모델을 선택한 다음 `/fast on`을 실행합니다. |

240| `CLAUDE_CODE_OTEL_DIAG_STDERR` | {/* min-version: 2.1.179 */}}OpenTelemetry 내보내기 진단 오류를 stderr에 쓰려면 `1`로 설정합니다. 기본적으로 이러한 오류는 `--debug`에서만 나타나므로 Prometheus 포트 충돌과 같은 잘못 구성된 내보내기는 그렇지 않으면 자동으로 실패합니다. Claude Code v2.1.179 이상이 필요합니다. [모니터링](/ko/monitoring-usage) 참조 |

234| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | 보류 중인 OpenTelemetry 스팬을 플러시하는 타임아웃(밀리초)(기본값: 5000). [모니터링](/ko/monitoring-usage) 참조 |241| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | 보류 중인 OpenTelemetry 스팬을 플러시하는 타임아웃(밀리초)(기본값: 5000). [모니터링](/ko/monitoring-usage) 참조 |

235| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | 동적 OpenTelemetry 헤더를 새로 고치는 간격(밀리초)(기본값: 1740000 / 29분). [동적 헤더](/ko/monitoring-usage#dynamic-headers) 참조 |242| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | 동적 OpenTelemetry 헤더를 새로 고치는 간격(밀리초)(기본값: 1740000 / 29분). [동적 헤더](/ko/monitoring-usage#dynamic-headers) 참조 |

236| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | 종료 시 OpenTelemetry 내보내기가 완료되는 타임아웃(밀리초)(기본값: 2000). 메트릭이 종료 시 삭제되면 증가시킵니다. [모니터링](/ko/monitoring-usage) 참조 |243| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | 종료 시 OpenTelemetry 내보내기가 완료되는 타임아웃(밀리초)(기본값: 2000). 메트릭이 종료 시 삭제되면 증가시킵니다. [모니터링](/ko/monitoring-usage) 참조 |


242| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | GitHub `owner/repo` 플러그인 소스를 SSH 대신 HTTPS를 통해 복제하려면 `1`로 설정합니다. CI 러너, 컨테이너 또는 `github.com`에 대해 구성된 SSH 키가 없는 모든 환경에서 유용합니다. |249| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | GitHub `owner/repo` 플러그인 소스를 SSH 대신 HTTPS를 통해 복제하려면 `1`로 설정합니다. CI 러너, 컨테이너 또는 `github.com`에 대해 구성된 SSH 키가 없는 모든 환경에서 유용합니다. |

243| `CLAUDE_CODE_PLUGIN_SEED_DIR` | 하나 이상의 읽기 전용 플러그인 시드 디렉토리의 경로이며, Unix에서는 `:`로, Windows에서는 `;`로 구분됩니다. 이를 사용하여 사전 채워진 플러그인 디렉토리를 컨테이너 이미지에 번들로 제공합니다. Claude Code는 시작 시 이러한 디렉토리에서 마켓플레이스를 등록하고 다시 복제하지 않고 사전 캐시된 플러그인을 사용합니다. [컨테이너용 플러그인 사전 채우기](/ko/plugin-marketplaces#pre-populate-plugins-for-containers) 참조 |250| `CLAUDE_CODE_PLUGIN_SEED_DIR` | 하나 이상의 읽기 전용 플러그인 시드 디렉토리의 경로이며, Unix에서는 `:`로, Windows에서는 `;`로 구분됩니다. 이를 사용하여 사전 채워진 플러그인 디렉토리를 컨테이너 이미지에 번들로 제공합니다. Claude Code는 시작 시 이러한 디렉토리에서 마켓플레이스를 등록하고 다시 복제하지 않고 사전 캐시된 플러그인을 사용합니다. [컨테이너용 플러그인 사전 채우기](/ko/plugin-marketplaces#pre-populate-plugins-for-containers) 참조 |

244| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Claude Code가 PowerShell을 생성할 때 `-ExecutionPolicy Bypass`를 전달하지 않으려면 `1`로 설정합니다. 도구 호출, 훅, 상태 줄 명령의 경우 대신 머신의 효과적인 실행 정책을 존중합니다. 기본적으로 Claude Code는 프로세스 범위에서 실행 정책을 우회하므로 `.ps1` 스크립트 및 모듈 가져오기가 기본 제한 Windows 설치에서 작동합니다. 프로세스 범위 우회는 이 설정과 관계없이 Group Policy `MachinePolicy` 또는 `UserPolicy`를 재정의하지 않습니다. |251| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Claude Code가 PowerShell을 생성할 때 `-ExecutionPolicy Bypass`를 전달하지 않으려면 `1`로 설정합니다. 도구 호출, 훅, 상태 줄 명령의 경우 대신 머신의 효과적인 실행 정책을 존중합니다. 기본적으로 Claude Code는 프로세스 범위에서 실행 정책을 우회하므로 `.ps1` 스크립트 및 모듈 가져오기가 기본 제한 Windows 설치에서 작동합니다. 프로세스 범위 우회는 이 설정과 관계없이 Group Policy `MachinePolicy` 또는 `UserPolicy`를 재정의하지 않습니다. |

245| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | {/* min-version: 2.1.152 */}}`ANTHROPIC_BASE_URL` 사용자 정의 프록시를 가리킬 W3C 추적 컨텍스트를 전파하려면 `1`로 설정합니다. 전파는 모델 HTTP MCP 요청의 `traceparent` 헤더와 Bash, PowerShell, subprocess의 `TRACEPARENT` 환경 변수를 포함합니다. 기본적으로 전파는 Anthropic API에 직접 연결할 때만 활성화됩니다. v2.1.152에서 추가됨. [추적(베타)](/ko/monitoring-usage#traces-beta) 참조 |252| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | {/* min-version: 2.1.182 */}}[비대화형 모드](/ko/headless#background-tasks-at-exit)에서 `-p` 플래그를 사용하여 최종 결과가 출력의 일부인 백그라운드 subagent 워크플로우를 기다리는 최대 시간(밀리초). 기본값: `600000`, 또는 10분. 제한을 초과하면 남은 백그라운드 작업이 종료되고 프로세스가 종료됩니다. 일반 백그라운드 셸에 적용되는 5초 유예 기간과는 별개입니다. `0`으로 설정하여 무한정 대기합니다. |

253| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | {/* min-version: 2.1.152 */}}}`ANTHROPIC_BASE_URL`이 사용자 정의 프록시를 가리킬 때 W3C 추적 컨텍스트를 전파하려면 `1`로 설정합니다. 전파는 모델 및 HTTP MCP 요청의 `traceparent` 헤더와 Bash, PowerShell, 훅 subprocess의 `TRACEPARENT` 환경 변수를 포함합니다. 기본적으로 전파는 Anthropic API에 직접 연결할 때만 활성화됩니다. v2.1.152에서 추가됨. [추적(베타)](/ko/monitoring-usage#traces-beta) 참조 |

246| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Claude Code를 포함하고 대신 모델 공급자 라우팅을 관리하는 호스트 플랫폼에서 설정합니다. 설정하면 설정 파일의 `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL`, `ANTHROPIC_API_KEY`와 같은 공급자 선택, 엔드포인트, 인증 변수가 무시되므로 사용자 설정이 호스트의 라우팅을 재정의할 수 없습니다. Bedrock, Vertex, Foundry에 대한 자동 원격 분석 옵트아웃도 건너뛰므로 원격 분석은 표준 `DISABLE_TELEMETRY` 옵트아웃을 따릅니다. [API 공급자별 기본 동작](/ko/data-usage#default-behaviors-by-api-provider) 참조 |254| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Claude Code를 포함하고 대신 모델 공급자 라우팅을 관리하는 호스트 플랫폼에서 설정합니다. 설정하면 설정 파일의 `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL`, `ANTHROPIC_API_KEY`와 같은 공급자 선택, 엔드포인트, 인증 변수가 무시되므로 사용자 설정이 호스트의 라우팅을 재정의할 수 없습니다. Bedrock, Vertex, Foundry에 대한 자동 원격 분석 옵트아웃도 건너뛰므로 원격 분석은 표준 `DISABLE_TELEMETRY` 옵트아웃을 따릅니다. [API 공급자별 기본 동작](/ko/data-usage#default-behaviors-by-api-provider) 참조 |

247| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | 호출자 대신 프록시가 DNS 해석을 수행하도록 허용하려면 `1`로 설정합니다. 프록시가 호스트명 해석을 처리해야 하는 환경에 대해 옵트인합니다. |255| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | 호출자 대신 프록시가 DNS 해석을 수행하도록 허용하려면 `1`로 설정합니다. 프록시가 호스트명 해석을 처리해야 하는 환경에 대해 옵트인합니다. |

248| `CLAUDE_CODE_REMOTE` | Claude Code가 [클라우드 세션](/ko/claude-code-on-the-web)으로 실행 중일 때 자동으로 `true`로 설정됩니다. 훅 또는 설정 스크립트에서 이를 읽어 클라우드 환경에 있는지 감지합니다. |256| `CLAUDE_CODE_REMOTE` | Claude Code가 [클라우드 세션](/ko/claude-code-on-the-web)으로 실행 중일 때 자동으로 `true`로 설정됩니다. 훅 또는 설정 스크립트에서 이를 읽어 클라우드 환경에 있는지 감지합니다. |

249| `CLAUDE_CODE_REMOTE_SESSION_ID` | [클라우드 세션](/ko/claude-code-on-the-web)에서 현재 세션의 ID로 자동으로 설정됩니다. 세션 트랜스크립트로 다시 연결하는 링크를 구성하려면 이를 읽습니다. [세션으로 아티팩트 다시 연결](/ko/claude-code-on-the-web#link-artifacts-back-to-the-session) 참조 |257| `CLAUDE_CODE_REMOTE_SESSION_ID` | [클라우드 세션](/ko/claude-code-on-the-web)에서 현재 세션의 ID로 자동으로 설정됩니다. 세션 트랜스크립트로 다시 연결하는 링크를 구성하려면 이를 읽습니다. [세션으로 출력 다시 연결](/ko/claude-code-on-the-web#link-output-back-to-the-session) 참조 |

250| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | 이전 세션이 중간에 끝난 경우 자동으로 재개하려면 `1`로 설정합니다. SDK 모드에서 사용되므로 모델이 SDK가 프롬프트를 다시 전송할 필요 없이 계속됩니다. |258| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | 이전 세션이 중간에 끝난 경우 자동으로 재개하려면 `1`로 설정합니다. SDK 모드에서 사용되므로 모델이 SDK가 프롬프트를 다시 전송할 필요 없이 계속됩니다. |

251| `CLAUDE_CODE_RESUME_PROMPT` | 세션이 중간에 끝난 후 재개할 때 주입되는 계속 메시지를 재정의합니다. 기본값은 `Continue from where you left off.`입니다. 장시간 실행되는 에이전트의 스폰 스크립트는 이를 더 지시적인 부팅 메시지로 설정할 수 있습니다. 빈 문자열은 기본값을 사용합니다. |259| `CLAUDE_CODE_RESUME_PROMPT` | 세션이 중간에 끝난 후 재개할 때 주입되는 계속 메시지를 재정의합니다. 기본값은 `Continue from where you left off.`입니다. 장시간 실행되는 에이전트의 스폰 스크립트는 이를 더 지시적인 부팅 메시지로 설정할 수 있습니다. 빈 문자열은 기본값을 사용합니다. |

260| `CLAUDE_CODE_RETRY_WATCHDOG` | {/* min-version: 2.1.186 */}}평가 하네스, CI 작업 또는 원격 작업자와 같은 무인 세션의 경우 `1`로 설정합니다. `429` 및 `529` 용량 오류를 `CLAUDE_CODE_MAX_RETRIES` 시도 후 실패하는 대신 무한정 재시도합니다. 감시견은 시도 사이에 최대 5분까지 백오프하거나 응답이 속도 제한 재설정 시간을 전달할 때 제한이 재설정될 때까지 대기합니다. 사용량 제한에 도달한 세션은 남은 윈도우를 기다립니다. Claude Code v2.1.186 이상이 필요합니다. |

252| `CLAUDE_CODE_SAFE_MODE` | 안전 모드에서 시작하려면 `1`로 설정합니다: CLAUDE.md, skill, 플러그인, 훅, MCP 서버, 사용자 정의 명령 및 에이전트, 출력 스타일, 워크플로우, 사용자 정의 테마, 사용자 정의 키 바인딩, 상태 줄 및 파일 제안 명령, LSP 서버, 자동 메모리는 로드되지 않습니다. 손상된 구성을 문제 해결하기 위해. 관리 설정 정책은 여전히 적용되며, 정책 구성 훅, 상태 줄, 파일 제안 명령을 포함합니다. 관리 플러그인, 관리 skill, 관리 CLAUDE.md, 정책 구성 MCP 서버는 로드되지 않습니다. [`--safe-mode`](/ko/cli-reference#cli-flags) 전달과 동일합니다. 직접 생성된 자식 프로세스는 변수를 상속합니다. |261| `CLAUDE_CODE_SAFE_MODE` | 안전 모드에서 시작하려면 `1`로 설정합니다: CLAUDE.md, skill, 플러그인, 훅, MCP 서버, 사용자 정의 명령 및 에이전트, 출력 스타일, 워크플로우, 사용자 정의 테마, 사용자 정의 키 바인딩, 상태 줄 및 파일 제안 명령, LSP 서버, 자동 메모리는 로드되지 않습니다. 손상된 구성을 문제 해결하기 위해. 관리 설정 정책은 여전히 적용되며, 정책 구성 훅, 상태 줄, 파일 제안 명령을 포함합니다. 관리 플러그인, 관리 skill, 관리 CLAUDE.md, 정책 구성 MCP 서버는 로드되지 않습니다. [`--safe-mode`](/ko/cli-reference#cli-flags) 전달과 동일합니다. 직접 생성된 자식 프로세스는 변수를 상속합니다. |

253| `CLAUDE_CODE_SCRIPT_CAPS` | `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`이 설정되었을 때 세션당 특정 스크립트를 호출할 수 있는 횟수를 제한하는 JSON 객체입니다. 키는 명령 텍스트에 대해 일치하는 부분 문자열입니다. 값은 정수 호출 제한입니다. 예를 들어 `{"deploy.sh": 2}`는 `deploy.sh`를 최대 2번 호출할 수 있습니다. 일치는 부분 문자열 기반이므로 `./scripts/deploy.sh $(evil)`과 같은 셸 확장 트릭도 여전히 제한에 포함됩니다. `xargs` 또는 `find -exec`을 통한 런타임 팬아웃은 감지되지 않습니다. 이는 심층 방어 제어입니다. |262| `CLAUDE_CODE_SCRIPT_CAPS` | `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`이 설정되었을 때 세션당 특정 스크립트를 호출할 수 있는 횟수를 제한하는 JSON 객체입니다. 키는 명령 텍스트에 대해 일치하는 부분 문자열입니다. 값은 정수 호출 제한입니다. 예를 들어 `{"deploy.sh": 2}`는 `deploy.sh`를 최대 2번 호출할 수 있습니다. 일치는 부분 문자열 기반이므로 `./scripts/deploy.sh $(evil)`과 같은 셸 확장 트릭도 여전히 제한에 포함됩니다. `xargs` 또는 `find -exec`을 통한 런타임 팬아웃은 감지되지 않습니다. 이는 심층 방어 제어입니다. |

254| `CLAUDE_CODE_SCROLL_SPEED` | [전체 화면 렌더링](/ko/fullscreen#mouse-wheel-scrolling)에서 마우스 휠 스크롤 배수를 설정합니다. 1부터 20까지의 값을 허용합니다. 그리고 `0.5`와 같은 1 미만의 분수 값을 허용하여 터미널의 기본 스크롤 경로에서 가속 트랙패드 및 휠 스크롤을 느리게 합니다. 터미널이 증폭 없이 노치당 하나의 휠 이벤트를 보내는 경우 `vim`과 일치하도록 `3`으로 설정합니다. JetBrains IDE 터미널에서는 무시되며, Claude Code는 자체 스크롤 처리를 사용합니다. |263| `CLAUDE_CODE_SCROLL_SPEED` | [전체 화면 렌더링](/ko/fullscreen#mouse-wheel-scrolling)에서 마우스 휠 스크롤 배수를 설정합니다. 1부터 20까지의 값을 허용합니다. 그리고 `0.5`와 같은 1 미만의 분수 값을 허용하여 터미널의 기본 스크롤 경로에서 가속 트랙패드 및 휠 스크롤을 느리게 합니다. 터미널이 증폭 없이 노치당 하나의 휠 이벤트를 보내는 경우 `vim`과 일치하도록 `3`으로 설정합니다. JetBrains IDE 터미널에서는 무시되며, Claude Code는 자체 스크롤 처리를 사용합니다. |


275| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | diff 출력에서 구문 강조를 비활성화하려면 `false`로 설정합니다. 색상이 터미널 설정을 방해할 때 유용합니다. 코드 블록 및 파일 미리보기에서 강조를 비활성화하려면 [`syntaxHighlightingDisabled`](/ko/settings) 설정을 사용합니다. |284| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | diff 출력에서 구문 강조를 비활성화하려면 `false`로 설정합니다. 색상이 터미널 설정을 방해할 때 유용합니다. 코드 블록 및 파일 미리보기에서 강조를 비활성화하려면 [`syntaxHighlightingDisabled`](/ko/settings) 설정을 사용합니다. |

276| `CLAUDE_CODE_TASK_LIST_ID` | 세션 간에 작업 목록을 공유합니다. 여러 Claude Code 인스턴스에서 동일한 ID를 설정하여 공유 작업 목록에서 조정합니다. [작업 목록](/ko/interactive-mode#task-list) 참조 |285| `CLAUDE_CODE_TASK_LIST_ID` | 세션 간에 작업 목록을 공유합니다. 여러 Claude Code 인스턴스에서 동일한 ID를 설정하여 공유 작업 목록에서 조정합니다. [작업 목록](/ko/interactive-mode#task-list) 참조 |

277| `CLAUDE_CODE_TEAM_NAME` | 이 팀원이 속한 에이전트 팀의 이름입니다. [에이전트 팀](/ko/agent-teams) 멤버에서 자동으로 설정됩니다. |286| `CLAUDE_CODE_TEAM_NAME` | 이 팀원이 속한 에이전트 팀의 이름입니다. [에이전트 팀](/ko/agent-teams) 멤버에서 자동으로 설정됩니다. |

278| `CLAUDE_CODE_TMPDIR` | 내부 임시 파일에 사용되는 임시 디렉토리를 재정의합니다. Claude Code는 이 경로에 `/claude-{uid}/`(Unix) 또는 `/claude/`(Windows)를 추가합니다. 기본값: macOS의 경우 `/tmp`, Linux/Windows의 경우 `os.tmpdir()`. {/* min-version: 2.1.161 */}v2.1.161부터 macOS 및 Linux에서 [샌드박스](/ko/sandboxing) Bash subprocess는 경로가 너무 길어지면 일부 도구가 실패하므로 시스템 기본값 아래에 짧은 폴백 `$TMPDIR`을 받습니다. 샌드박스되지 않은 Bash 명령은 셸의 `$TMPDIR`을 변경되지 않고 상속합니다. Claude Code의 자체 임시 파일은 항상 재정의를 사용합니다. |287| `CLAUDE_CODE_TMPDIR` | 내부 임시 파일에 사용되는 임시 디렉토리를 재정의합니다. Claude Code는 이 경로에 `/claude-{uid}/`(Unix) 또는 `/claude/`(Windows)를 추가합니다. 기본값: macOS의 경우 `/tmp`, Linux/Windows의 경우 `os.tmpdir()`. {/* min-version: 2.1.161 */}}v2.1.161부터 macOS 및 Linux에서 [샌드박스](/ko/sandboxing) Bash subprocess는 경로가 너무 길어지면 일부 도구가 실패하므로 시스템 기본값 아래에 짧은 폴백 `$TMPDIR`을 받습니다. 샌드박스되지 않은 Bash 명령은 셸의 `$TMPDIR`을 변경되지 않고 상속합니다. Claude Code의 자체 임시 파일은 항상 재정의를 사용합니다. |

279| `CLAUDE_CODE_TMUX_TRUECOLOR` | tmux 내에서 24비트 truecolor 출력을 허용하려면 `1`로 설정합니다. 기본적으로 `$TMUX`가 설정되면 Claude Code는 256색으로 제한합니다. tmux는 구성되지 않으면 truecolor 이스케이프 시퀀스를 통과하지 않기 때문입니다. `~/.tmux.conf`에 `set -ga terminal-overrides ',*:Tc'`를 추가한 후 이를 설정합니다. [터미널 구성](/ko/terminal-config)에서 다른 tmux 설정을 참조합니다. |288| `CLAUDE_CODE_TMUX_TRUECOLOR` | tmux 내에서 24비트 truecolor 출력을 허용하려면 `1`로 설정합니다. 기본적으로 `$TMUX`가 설정되면 Claude Code는 256색으로 제한합니다. tmux는 구성되지 않으면 truecolor 이스케이프 시퀀스를 통과하지 않기 때문입니다. `~/.tmux.conf`에 `set -ga terminal-overrides ',*:Tc'`를 추가한 후 이를 설정합니다. [터미널 구성](/ko/terminal-config)에서 다른 tmux 설정을 참조합니다. |

280| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | [Claude Platform on AWS](/ko/claude-platform-on-aws) 사용 |289| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | [Claude Platform on AWS](/ko/claude-platform-on-aws) 사용 |

281| `CLAUDE_CODE_USE_BEDROCK` | [Bedrock](/ko/amazon-bedrock) 사용 |290| `CLAUDE_CODE_USE_BEDROCK` | [Bedrock](/ko/amazon-bedrock) 사용 |


288| `CLAUDE_EFFORT` | Bash 도구 subprocess 및 훅 명령에서 활성 [노력 수준](/ko/model-config#adjust-effort-level)으로 자동으로 설정됩니다: `low`, `medium`, `high`, `xhigh`, 또는 `max`. Ultracode는 별개의 수준이 아니며 `xhigh`로 보고됩니다. [훅](/ko/hooks)에 전달된 `effort.level` 필드와 일치합니다. 현재 모델이 노력 매개변수를 지원할 때만 설정됩니다. |297| `CLAUDE_EFFORT` | Bash 도구 subprocess 및 훅 명령에서 활성 [노력 수준](/ko/model-config#adjust-effort-level)으로 자동으로 설정됩니다: `low`, `medium`, `high`, `xhigh`, 또는 `max`. Ultracode는 별개의 수준이 아니며 `xhigh`로 보고됩니다. [훅](/ko/hooks)에 전달된 `effort.level` 필드와 일치합니다. 현재 모델이 노력 매개변수를 지원할 때만 설정됩니다. |

289| `CLAUDE_ENABLE_BYTE_WATCHDOG` | 바이트 수준 스트리밍 유휴 감시견을 강제로 활성화하려면 `1`로 설정하거나, 강제로 비활성화하려면 `0`으로 설정합니다. 설정하지 않으면 감시견은 직접 Anthropic API 및 [Claude Platform on AWS](/ko/claude-platform-on-aws) 연결에 대해 기본적으로 활성화됩니다. 바이트 감시견은 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`로 설정된 기간 동안 와이어에 바이트가 도착하지 않으면 연결을 중단합니다. 최소 5분이며 이벤트 수준 감시견과 독립적입니다. |298| `CLAUDE_ENABLE_BYTE_WATCHDOG` | 바이트 수준 스트리밍 유휴 감시견을 강제로 활성화하려면 `1`로 설정하거나, 강제로 비활성화하려면 `0`으로 설정합니다. 설정하지 않으면 감시견은 직접 Anthropic API 및 [Claude Platform on AWS](/ko/claude-platform-on-aws) 연결에 대해 기본적으로 활성화됩니다. 바이트 감시견은 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`로 설정된 기간 동안 와이어에 바이트가 도착하지 않으면 연결을 중단합니다. 최소 5분이며 이벤트 수준 감시견과 독립적입니다. |

290| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Amazon Bedrock `vnd.amazon.eventstream` 응답에서 바이트 수준 스트리밍 유휴 감시견을 활성화하려면 `1`로 설정합니다. 기본적으로 꺼져 있습니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`로 타임아웃을 구성합니다. |299| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Amazon Bedrock `vnd.amazon.eventstream` 응답에서 바이트 수준 스트리밍 유휴 감시견을 활성화하려면 `1`로 설정합니다. 기본적으로 꺼져 있습니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`로 타임아웃을 구성합니다. |

291| `CLAUDE_ENABLE_STREAM_WATCHDOG` | 이벤트 수준 스트리밍 유휴 감시견을 강제로 활성화하려면 `1`로 설정하거나, 강제로 비활성화하려면 `0`으로 설정합니다. 설정하지 않으면 기본값은 직접 Anthropic API에서 서버 제어이고 다른 공급자에서는 꺼져 있습니다. {/* min-version: 2.1.169 */}v2.1.169부터 직접 Anthropic API 및 Claude Platform on AWS 이외의 공급자도 `API_FORCE_IDLE_TIMEOUT`에 설명된 독립적인 5분 본문 유휴 타임아웃을 가집니다. Bedrock에서는 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`로 독립적인 바이트 수준 감시견을 활성화할 수도 있습니다. 둘 다 설정하면 함께 실행됩니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`로 타임아웃을 구성합니다. |300| `CLAUDE_ENABLE_STREAM_WATCHDOG` | 이벤트 수준 스트리밍 유휴 감시견을 강제로 활성화하려면 `1`로 설정하거나, 강제로 비활성화하려면 `0`으로 설정합니다. 설정하지 않으면 기본값은 직접 Anthropic API에서 서버 제어이고 다른 공급자에서는 꺼져 있습니다. {/* min-version: 2.1.169 */}}v2.1.169부터 직접 Anthropic API 및 Claude Platform on AWS 이외의 공급자도 `API_FORCE_IDLE_TIMEOUT`에 설명된 독립적인 5분 본문 유휴 타임아웃을 가집니다. Bedrock에서는 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`로 독립적인 바이트 수준 감시견을 활성화할 수도 있습니다. 둘 다 설정하면 함께 실행됩니다. `CLAUDE_STREAM_IDLE_TIMEOUT_MS`로 타임아웃을 구성합니다. |

292| `CLAUDE_ENV_FILE` | Claude Code가 각 Bash 명령 전에 같은 셸 프로세스에서 실행하는 셸 스크립트의 경로이므로 파일의 내보내기가 명령에 표시됩니다. virtualenv 또는 conda 활성화를 명령 간에 유지하는 데 사용합니다. [SessionStart](/ko/hooks#persist-environment-variables), [Setup](/ko/hooks#setup), [CwdChanged](/ko/hooks#cwdchanged), [FileChanged](/ko/hooks#filechanged) 훅으로도 동적으로 채워집니다. |301| `CLAUDE_ENV_FILE` | Claude Code가 각 Bash 명령 전에 같은 셸 프로세스에서 실행하는 셸 스크립트의 경로이므로 파일의 내보내기가 명령에 표시됩니다. virtualenv 또는 conda 활성화를 명령 간에 유지하는 데 사용합니다. [SessionStart](/ko/hooks#persist-environment-variables), [Setup](/ko/hooks#setup), [CwdChanged](/ko/hooks#cwdchanged), [FileChanged](/ko/hooks#filechanged) 훅으로도 동적으로 채워집니다. |

293| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | 명시적 이름이 제공되지 않을 때 자동 생성된 [Remote Control](/ko/remote-control) 세션 이름의 접두사입니다. 기본값은 머신의 호스트명이며, `myhost-graceful-unicorn`과 같은 이름을 생성합니다. `--remote-control-session-name-prefix` CLI 플래그는 단일 호출에 대해 동일한 값을 설정합니다. |302| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | 명시적 이름이 제공되지 않을 때 자동 생성된 [Remote Control](/ko/remote-control) 세션 이름의 접두사입니다. 기본값은 머신의 호스트명이며, `myhost-graceful-unicorn`과 같은 이름을 생성합니다. `--remote-control-session-name-prefix` CLI 플래그는 단일 호출에 대해 동일한 값을 설정합니다. |

294| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | 스트리밍 유휴 감시견이 정체된 연결을 닫기 전의 타임아웃(밀리초). 설정하지 않으면 이벤트 수준 감시견은 기본값 300초이고 바이트 수준 감시견은 직접 Anthropic API 연결에서 기본값 180초입니다(Claude Platform on AWS 및 다른 공급자에서 300초). 설정하지 않은 180초 바이트 감시견 기본값은 별개의 값이며 5분 제한을 받지 않습니다. 타사 공급자의 이벤트 수준 감시견의 경우 `CLAUDE_ENABLE_STREAM_WATCHDOG=1`이 필요합니다. `API_FORCE_IDLE_TIMEOUT`에 설명된 본문 유휴 타임아웃은 독립적으로 적용됩니다. Bedrock에서는 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`일 때도 적용됩니다. |303| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | 스트리밍 유휴 감시견이 정체된 연결을 닫기 전의 타임아웃(밀리초). 설정하지 않으면 이벤트 수준 감시견은 기본값 300초이고 바이트 수준 감시견은 직접 Anthropic API 연결에서 기본값 180초입니다(Claude Platform on AWS 및 다른 공급자에서 300초). 설정하지 않은 180초 바이트 감시견 기본값은 별개의 값이며 5분 제한을 받지 않습니다. 타사 공급자의 이벤트 수준 감시견의 경우 `CLAUDE_ENABLE_STREAM_WATCHDOG=1`이 필요합니다. `API_FORCE_IDLE_TIMEOUT`에 설명된 본문 유휴 타임아웃은 독립적으로 적용됩니다. Bedrock에서는 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`일 때도 적용됩니다. |


316| `DISABLE_UPDATES` | 수동 `claude update` 및 `claude install`을 포함한 모든 업데이트를 차단하려면 `1`로 설정합니다. `DISABLE_AUTOUPDATER`보다 더 엄격합니다. 자신의 채널을 통해 Claude Code를 배포하고 사용자가 자체 업데이트하지 않아야 할 때 사용합니다. |325| `DISABLE_UPDATES` | 수동 `claude update` 및 `claude install`을 포함한 모든 업데이트를 차단하려면 `1`로 설정합니다. `DISABLE_AUTOUPDATER`보다 더 엄격합니다. 자신의 채널을 통해 Claude Code를 배포하고 사용자가 자체 업데이트하지 않아야 할 때 사용합니다. |

317| `DISABLE_UPGRADE_COMMAND` | `/upgrade` 명령을 숨기려면 `1`로 설정합니다. |326| `DISABLE_UPGRADE_COMMAND` | `/upgrade` 명령을 숨기려면 `1`로 설정합니다. |

318| `DO_NOT_TRACK` | 원격 분석을 거부하려면 `1`로 설정합니다. `DISABLE_TELEMETRY` 설정과 동일합니다. Claude Code는 많은 개발자 CLI에서 인정하는 교차 도구 규칙으로 이를 존중합니다. |327| `DO_NOT_TRACK` | 원격 분석을 거부하려면 `1`로 설정합니다. `DISABLE_TELEMETRY` 설정과 동일합니다. Claude Code는 많은 개발자 CLI에서 인정하는 교차 도구 규칙으로 이를 존중합니다. |

319| `ENABLE_CLAUDEAI_MCP_SERVERS` | Claude Code에서 [claude.ai MCP 서버](/ko/mcp#use-mcp-servers-from-claude-ai)를 비활성화하려면 `false`로 설정합니다. 로그인한 사용자의 경우 기본적으로 활성화됩니다. |328| `ENABLE_CLAUDEAI_MCP_SERVERS` | Claude Code에서 [claude.ai MCP 서버](/ko/mcp#use-mcp-servers-from-claude-ai)를 비활성화하려면 `false`로 설정합니다. 로그인한 사용자의 경우 기본적으로 활성화됩니다. 프로젝트별 또는 조직별로 비활성화하려면 설정 대신 [`disableClaudeAiConnectors`](/ko/settings#available-settings)를 설정합니다. |

320| `ENABLE_PROMPT_CACHING_1H` | API 키, [Bedrock](/ko/amazon-bedrock), [Vertex](/ko/google-vertex-ai), [Foundry](/ko/microsoft-foundry), [Claude Platform on AWS](/ko/claude-platform-on-aws) 사용자를 위해 기본 5분 대신 1시간 [프롬프트 캐시 TTL](/ko/prompt-caching#cache-lifetime)을 요청하려면 `1`로 설정합니다. 구독 사용자는 자동으로 1시간 TTL을 받습니다. 1시간 캐시 쓰기는 더 높은 요금으로 청구됩니다. |329| `ENABLE_PROMPT_CACHING_1H` | API 키, [Bedrock](/ko/amazon-bedrock), [Vertex](/ko/google-vertex-ai), [Foundry](/ko/microsoft-foundry), [Claude Platform on AWS](/ko/claude-platform-on-aws) 사용자를 위해 기본 5분 대신 1시간 [프롬프트 캐시 TTL](/ko/prompt-caching#cache-lifetime)을 요청하려면 `1`로 설정합니다. 구독 사용자는 자동으로 1시간 TTL을 받습니다. 1시간 캐시 쓰기는 더 높은 요금으로 청구됩니다. |

321| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | 더 이상 사용되지 않음. 대신 `ENABLE_PROMPT_CACHING_1H` 사용 |330| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | 더 이상 사용되지 않음. 대신 `ENABLE_PROMPT_CACHING_1H` 사용 |

322| `ENABLE_TOOL_SEARCH` | [MCP 도구 검색](/ko/mcp#scale-with-mcp-tool-search)을 제어합니다. 설정 해제: 모든 MCP 도구는 기본적으로 연기되지만 Vertex AI에서 또는 `ANTHROPIC_BASE_URL`이 비자사 호스트를 가리킬 때 미리 로드됩니다. 값: `true`(항상 연기 및 베타 헤더 전송, Vertex AI 모델 Sonnet 4.5 또는 Opus 4.5보다 이전 또는 `tool_reference`를 지원하지 않는 프록시에서 요청 실패), `auto`(임계값 모드: 도구가 컨텍스트의 10% 이내에 맞으면 미리 로드), `auto:N`(사용자 정의 임계값, 예: 5%의 경우 `auto:5`), `false`(모두 미리 로드) |331| `ENABLE_TOOL_SEARCH` | [MCP 도구 검색](/ko/mcp#scale-with-mcp-tool-search)을 제어합니다. 설정 해제: 모든 MCP 도구는 기본적으로 연기되지만 Vertex AI에서 또는 `ANTHROPIC_BASE_URL`이 비자사 호스트를 가리킬 때 미리 로드됩니다. 값: `true`(항상 연기 및 베타 헤더 전송, Vertex AI 모델 Sonnet 4.5 또는 Opus 4.5보다 이전 또는 `tool_reference`를 지원하지 않는 프록시에서 요청 실패), `auto`(임계값 모드: 도구가 컨텍스트의 10% 이내에 맞으면 미리 로드), `auto:N`(사용자 정의 임계값, 예: 5%의 경우 `auto:5`), `false`(모두 미리 로드) |

323| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | 모든 기본 모델에서 반복된 과부하 오류 후 폴백을 트리거하려면 비어 있지 않은 값으로 설정합니다. {/* min-version: 2.1.160 */}v2.1.160부터 구성된 [폴백 모델 체인](/ko/model-config#fallback-model-chains)은 모든 기본 모델에 대해 반복된 과부하 오류에서 트리거되므로 이 변수는 폴백 모델로 전환하는 데 영향을 주지 않습니다. |332| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | 모든 기본 모델에서 반복된 과부하 오류 후 폴백을 트리거하려면 비어 있지 않은 값으로 설정합니다. {/* min-version: 2.1.160 */}}v2.1.160부터 구성된 [폴백 모델 체인](/ko/model-config#fallback-model-chains)은 모든 기본 모델에 대해 반복된 과부하 오류에서 트리거되므로 이 변수는 폴백 모델로 전환하는 데 영향을 주지 않습니다. |

324| `FORCE_AUTOUPDATE_PLUGINS` | `DISABLE_AUTOUPDATER`를 통해 주 자동 업데이터가 비활성화된 경우에도 플러그인 자동 업데이트를 강제하려면 `1`로 설정합니다. |333| `FORCE_AUTOUPDATE_PLUGINS` | `DISABLE_AUTOUPDATER`를 통해 주 자동 업데이터가 비활성화된 경우에도 플러그인 자동 업데이트를 강제하려면 `1`로 설정합니다. |

325| `FORCE_PROMPT_CACHING_5M` | 1시간 TTL이 적용되는 경우에도 5분 프롬프트 캐시 TTL을 강제하려면 `1`로 설정합니다. `ENABLE_PROMPT_CACHING_1H` 재정의 |334| `FORCE_PROMPT_CACHING_5M` | 1시간 TTL이 적용되는 경우에도 5분 프롬프트 캐시 TTL을 강제하려면 `1`로 설정합니다. `ENABLE_PROMPT_CACHING_1H` 재정의 |

326| `HTTP_PROXY` | 네트워크 연결을 위한 HTTP 프록시 서버를 지정합니다. |335| `HTTP_PROXY` | 네트워크 연결을 위한 HTTP 프록시 서버를 지정합니다. |


330| `MAX_STRUCTURED_OUTPUT_RETRIES` | 비대화형 모드(`-p` 플래그)에서 모델의 응답이 [`--json-schema`](/ko/cli-reference#cli-flags)에 대한 유효성 검사에 실패할 때 재시도할 횟수입니다. 기본값은 5입니다. |339| `MAX_STRUCTURED_OUTPUT_RETRIES` | 비대화형 모드(`-p` 플래그)에서 모델의 응답이 [`--json-schema`](/ko/cli-reference#cli-flags)에 대한 유효성 검사에 실패할 때 재시도할 횟수입니다. 기본값은 5입니다. |

331| `MAX_THINKING_TOKENS` | [확장 사고](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) 토큰 예산을 재정의합니다. 상한은 모델의 [최대 출력 토큰](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison)에서 1을 뺀 값입니다. `0`으로 설정하여 Anthropic API에서 사고를 비활성화합니다. Fable 5는 사고를 끌 수 없으므로 이는 효과가 없습니다. [타사 공급자](/ko/third-party-integrations)에서 `0`은 마찬가지로 매개변수를 생략하므로 [적응형 추론](/ko/model-config#adjust-effort-level)이 있는 모델은 여전히 생각할 수 있습니다. 0이 아닌 값의 경우 적응형 추론 모델에서 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING`을 통해 적응형 추론이 비활성화되지 않으면 예산이 무시됩니다. |340| `MAX_THINKING_TOKENS` | [확장 사고](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) 토큰 예산을 재정의합니다. 상한은 모델의 [최대 출력 토큰](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison)에서 1을 뺀 값입니다. `0`으로 설정하여 Anthropic API에서 사고를 비활성화합니다. Fable 5는 사고를 끌 수 없으므로 이는 효과가 없습니다. [타사 공급자](/ko/third-party-integrations)에서 `0`은 마찬가지로 매개변수를 생략하므로 [적응형 추론](/ko/model-config#adjust-effort-level)이 있는 모델은 여전히 생각할 수 있습니다. 0이 아닌 값의 경우 적응형 추론 모델에서 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING`을 통해 적응형 추론이 비활성화되지 않으면 예산이 무시됩니다. |

332| `MCP_CLIENT_SECRET` | [사전 구성된 자격 증명](/ko/mcp#use-pre-configured-oauth-credentials)이 필요한 MCP 서버의 OAuth 클라이언트 시크릿입니다. `--client-secret`으로 서버를 추가할 때 대화형 프롬프트를 방지합니다. |341| `MCP_CLIENT_SECRET` | [사전 구성된 자격 증명](/ko/mcp#use-pre-configured-oauth-credentials)이 필요한 MCP 서버의 OAuth 클라이언트 시크릿입니다. `--client-secret`으로 서버를 추가할 때 대화형 프롬프트를 방지합니다. |

333| `MCP_CONNECTION_NONBLOCKING` | 시작이 첫 번째 쿼리 전에 MCP 서버 연결을 기다리는지 여부를 제어합니다. {/* min-version: 2.1.142 */}Claude Code v2.1.142부터 MCP 시작은 기본적으로 비블로킹입니다: 서버는 백그라운드에서 연결되고 완료되면 도구를 사용할 수 있게 됩니다. `0`으로 설정하여 블로킹 5초 연결 대기를 복원합니다. [`alwaysLoad: true`](/ko/mcp#exempt-a-server-from-deferral)로 구성된 서버는 도구가 첫 번째 프롬프트를 빌드할 때 존재해야 하므로 이 변수와 관계없이 항상 시작을 차단합니다. |342| `MCP_CONNECTION_NONBLOCKING` | 시작이 첫 번째 쿼리 전에 MCP 서버 연결을 기다리는지 여부를 제어합니다. {/* min-version: 2.1.142 */}}Claude Code v2.1.142부터 MCP 시작은 기본적으로 비블로킹입니다: 서버는 백그라운드에서 연결되고 완료되면 도구를 사용할 수 있게 됩니다. `0`으로 설정하여 블로킹 5초 연결 대기를 복원합니다. [`alwaysLoad: true`](/ko/mcp#exempt-a-server-from-deferral)로 구성된 서버는 도구가 첫 번째 프롬프트를 빌드할 때 존재해야 하므로 이 변수와 관계없이 항상 시작을 차단합니다. |

334| `MCP_CONNECT_TIMEOUT_MS` | 블로킹 MCP 시작이 연결 배치를 기다리는 시간(밀리초)을 설정하고 도구 목록을 스냅샷하기 전입니다(기본값: 5000). [`alwaysLoad: true`](/ko/mcp#exempt-a-server-from-deferral)로 표시된 서버에 적용됩니다. 마감 시점에 여전히 보류 중인 서버는 백그라운드에서 계속 연결되지만 다음 쿼리까지 나타나지 않습니다. `MCP_TIMEOUT`과 다르며, 이는 개별 서버의 연결 시도를 제한합니다. |343| `MCP_CONNECT_TIMEOUT_MS` | 블로킹 MCP 시작이 연결 배치를 기다리는 시간(밀리초)을 설정하고 도구 목록을 스냅샷하기 전입니다(기본값: 5000). [`alwaysLoad: true`](/ko/mcp#exempt-a-server-from-deferral)로 표시된 서버에 적용됩니다. 마감 시점에 여전히 보류 중인 서버는 백그라운드에서 계속 연결되지만 다음 쿼리까지 나타나지 않습니다. `MCP_TIMEOUT`과 다르며, 이는 개별 서버의 연결 시도를 제한합니다. |

335| `MCP_OAUTH_CALLBACK_PORT` | [사전 구성된 자격 증명](/ko/mcp#use-pre-configured-oauth-credentials)으로 MCP 서버를 추가할 때 `--callback-port`의 대안으로 OAuth 리디렉션 콜백의 고정 포트입니다. |344| `MCP_OAUTH_CALLBACK_PORT` | [사전 구성된 자격 증명](/ko/mcp#use-pre-configured-oauth-credentials)으로 MCP 서버를 추가할 때 `--callback-port`의 대안으로 OAuth 리디렉션 콜백의 고정 포트입니다. |

336| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | 시작 중에 병렬로 연결할 원격 MCP 서버(HTTP/SSE)의 최대 수(기본값: 20) |345| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | 시작 중에 병렬로 연결할 원격 MCP 서버(HTTP/SSE)의 최대 수(기본값: 20) |


343| `OTEL_LOG_TOOL_DETAILS` | 도구 입력 인수, MCP 서버 이름, 도구 실패 시 원본 오류 문자열, 기타 도구 세부 정보를 OpenTelemetry 추적 및 로그에 포함하려면 `1`로 설정합니다. PII를 보호하기 위해 기본적으로 비활성화됩니다. [모니터링](/ko/monitoring-usage) 참조 |352| `OTEL_LOG_TOOL_DETAILS` | 도구 입력 인수, MCP 서버 이름, 도구 실패 시 원본 오류 문자열, 기타 도구 세부 정보를 OpenTelemetry 추적 및 로그에 포함하려면 `1`로 설정합니다. PII를 보호하기 위해 기본적으로 비활성화됩니다. [모니터링](/ko/monitoring-usage) 참조 |

344| `OTEL_LOG_USER_PROMPTS` | 사용자 프롬프트 텍스트를 OpenTelemetry 추적 및 로그에 포함하려면 `1`로 설정합니다. 기본적으로 비활성화됩니다(프롬프트는 수정됨). [모니터링](/ko/monitoring-usage) 참조 |353| `OTEL_LOG_USER_PROMPTS` | 사용자 프롬프트 텍스트를 OpenTelemetry 추적 및 로그에 포함하려면 `1`로 설정합니다. 기본적으로 비활성화됩니다(프롬프트는 수정됨). [모니터링](/ko/monitoring-usage) 참조 |

345| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | 메트릭 속성에서 계정 UUID를 제외하려면 `false`로 설정합니다(기본값: 포함). [모니터링](/ko/monitoring-usage) 참조 |354| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | 메트릭 속성에서 계정 UUID를 제외하려면 `false`로 설정합니다(기본값: 포함). [모니터링](/ko/monitoring-usage) 참조 |

346| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | {/* min-version: 2.1.152 */}메트릭 속성에 세션 진입점을 포함하려면 `true`로 설정합니다(기본값: 제외). v2.1.152에서 추가됨. [모니터링](/ko/monitoring-usage) 참조 |355| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | {/* min-version: 2.1.152 */}}메트릭 속성에 세션 진입점을 포함하려면 `true`로 설정합니다(기본값: 제외). v2.1.152에서 추가됨. [모니터링](/ko/monitoring-usage) 참조 |

347| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | {/* min-version: 2.1.161 */}v2.1.161부터 Claude Code는 `OTEL_RESOURCE_ATTRIBUTES` 키를 메트릭 데이터포인트 레이블에 첨부합니다. 이를 제외하려면 `false`로 설정합니다(기본값: 포함). [모니터링](/ko/monitoring-usage#multi-team-organization-support) 참조 |356| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | {/* min-version: 2.1.161 */}}v2.1.161부터 Claude Code는 `OTEL_RESOURCE_ATTRIBUTES` 키를 메트릭 데이터포인트 레이블에 첨부합니다. 이를 제외하려면 `false`로 설정합니다(기본값: 포함). [모니터링](/ko/monitoring-usage#multi-team-organization-support) 참조 |

348| `OTEL_METRICS_INCLUDE_SESSION_ID` | 메트릭 속성에서 세션 ID를 제외하려면 `false`로 설정합니다(기본값: 포함). [모니터링](/ko/monitoring-usage) 참조 |357| `OTEL_METRICS_INCLUDE_SESSION_ID` | 메트릭 속성에서 세션 ID를 제외하려면 `false`로 설정합니다(기본값: 포함). [모니터링](/ko/monitoring-usage) 참조 |

349| `OTEL_METRICS_INCLUDE_VERSION` | 메트릭 속성에 Claude Code 버전을 포함하려면 `true`로 설정합니다(기본값: 제외). [모니터링](/ko/monitoring-usage) 참조 |358| `OTEL_METRICS_INCLUDE_VERSION` | 메트릭 속성에 Claude Code 버전을 포함하려면 `true`로 설정합니다(기본값: 제외). [모니터링](/ko/monitoring-usage) 참조 |

350| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | [Skill 도구](/ko/skills#control-who-invokes-a-skill)에 표시되는 skill 메타데이터의 문자 예산을 재정의합니다. 예산은 컨텍스트 윈도우의 1%에서 동적으로 확장되며, 8,000자의 폴백이 있습니다. 이전 버전과의 호환성을 위해 레거시 이름이 유지됩니다. |359| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | [Skill 도구](/ko/skills#control-who-invokes-a-skill)에 표시되는 skill 메타데이터의 문자 예산을 재정의합니다. 예산은 컨텍스트 윈도우의 1%에서 동적으로 확장되며, 8,000자의 폴백이 있습니다. 이전 버전과의 호환성을 위해 레거시 이름이 유지됩니다. |


360| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Vertex AI 사용 시 Claude Sonnet 4.5의 리전을 재정의합니다. |369| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Vertex AI 사용 시 Claude Sonnet 4.5의 리전을 재정의합니다. |

361| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Vertex AI 사용 시 Claude Opus 4.6의 리전을 재정의합니다. |370| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Vertex AI 사용 시 Claude Opus 4.6의 리전을 재정의합니다. |

362| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Vertex AI 사용 시 Claude Sonnet 4.6의 리전을 재정의합니다. |371| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Vertex AI 사용 시 Claude Sonnet 4.6의 리전을 재정의합니다. |

363| `VERTEX_REGION_CLAUDE_4_7_OPUS` | {/* min-version: 2.1.111 */}Vertex AI 사용 시 Claude Opus 4.7의 리전을 재정의합니다. v2.1.111에서 추가됨. |372| `VERTEX_REGION_CLAUDE_4_7_OPUS` | {/* min-version: 2.1.111 */}}Vertex AI 사용 시 Claude Opus 4.7의 리전을 재정의합니다. v2.1.111에서 추가됨. |

364| `VERTEX_REGION_CLAUDE_4_8_OPUS` | {/* min-version: 2.1.154 */}Vertex AI 사용 시 Claude Opus 4.8의 리전을 재정의합니다. v2.1.154에서 추가됨. |373| `VERTEX_REGION_CLAUDE_4_8_OPUS` | {/* min-version: 2.1.154 */}}Vertex AI 사용 시 Claude Opus 4.8의 리전을 재정의합니다. v2.1.154에서 추가됨. |

365| `VERTEX_REGION_CLAUDE_FABLE_5` | {/* min-version: 2.1.170 */}Vertex AI 사용 시 Claude Fable 5의 리전을 재정의합니다. v2.1.170에서 추가됨. |374| `VERTEX_REGION_CLAUDE_FABLE_5` | {/* min-version: 2.1.170 */}}Vertex AI 사용 시 Claude Fable 5의 리전을 재정의합니다. v2.1.170에서 추가됨. |

366| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Vertex AI 사용 시 Claude Haiku 4.5의 리전을 재정의합니다. |375| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Vertex AI 사용 시 Claude Haiku 4.5의 리전을 재정의합니다. |

367 376 

368표준 OpenTelemetry 내보내기 변수(`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` 및 신호별 변형)도 지원됩니다. 구성 세부 정보는 [모니터링](/ko/monitoring-usage)을 참조합니다.377표준 OpenTelemetry 내보내기 변수(`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` 및 신호별 변형)도 지원됩니다. 구성 세부 정보는 [모니터링](/ko/monitoring-usage)을 참조합니다.

errors.md +7 −3

Details

43| `OAuth token revoked` / `OAuth token has expired` | [인증](#oauth-token-revoked-or-expired) |43| `OAuth token revoked` / `OAuth token has expired` | [인증](#oauth-token-revoked-or-expired) |

44| `does not meet scope requirement user:profile` | [인증](#oauth-scope-requirement) |44| `does not meet scope requirement user:profile` | [인증](#oauth-scope-requirement) |

45| `Unable to connect to API` | [네트워크](#unable-to-connect-to-api) |45| `Unable to connect to API` | [네트워크](#unable-to-connect-to-api) |

46| `Waiting for API response · will retry in` | [자동 재시도](#automatic-retries), 또는 지속되는 경우 [네트워크](#unable-to-connect-to-api) |

46| `SSL certificate verification failed` | [네트워크](#ssl-certificate-errors) |47| `SSL certificate verification failed` | [네트워크](#ssl-certificate-errors) |

47| `403` with `x-deny-reason: host_not_allowed` in a cloud or routine session | [네트워크](#host-not-allowed-in-a-cloud-session) |48| `403` with `x-deny-reason: host_not_allowed` in a cloud or routine session | [네트워크](#host-not-allowed-in-a-cloud-session) |

48| `Prompt is too long` | [요청 오류](#prompt-is-too-long) |49| `Prompt is too long` | [요청 오류](#prompt-is-too-long) |


66 67 

67Claude Code는 오류를 표시하기 전에 일시적 오류를 재시도합니다. 서버 오류, 과부하 응답, 요청 시간 초과, 임시 429 스로틀, 끊어진 연결은 모두 지수 백오프를 사용하여 최대 10회 재시도됩니다. 재시도하는 동안 스피너는 `Retrying in Ns · attempt x/y` 카운트다운을 표시합니다.68Claude Code는 오류를 표시하기 전에 일시적 오류를 재시도합니다. 서버 오류, 과부하 응답, 요청 시간 초과, 임시 429 스로틀, 끊어진 연결은 모두 지수 백오프를 사용하여 최대 10회 재시도됩니다. 재시도하는 동안 스피너는 `Retrying in Ns · attempt x/y` 카운트다운을 표시합니다.

68 69 

69 페이지의 오류 하나를 보면 해당 재시도가 이미 소진되었습니다. 가지 환경 변수로 동작을 조정할 있습니다.70{/* min-version: 2.1.185 */}요청이 여전히 대기 중인 상태에서 응답 스트림에 20초 동안 데이터가 도착하지 않으면, 스피너는 재시도가 시작되기 전에 `Waiting for API response · will retry in … · check your network`를 표시합니다. 요청이 아직 실패하지 않았습니다. 카운트다운은 Claude Code가 정지된 연결을 중단하고 재시도하는 지점까지 실행되므로, 데이터가 재개되거나 재시도가 성공하면 배너가 자동으로 사라집니다. v2.1.185부터 임계값은 20초입니다. 이전 버전은 다른 표현으로 10초 후에 배너를 표시합니다. 모든 시도마다 다시 나타나면 [네트워크 문제](#unable-to-connect-to-api)로 취급하십시오.

71 

72이 페이지의 오류 중 하나를 보면 해당 재시도가 이미 소진되었습니다. 다음 환경 변수로 동작을 조정할 수 있습니다.

70 73 

71| 변수 | 기본값 | 효과 |74| 변수 | 기본값 | 효과 |

72| :---------------------------------------- | :----- | :---------------------------------------------------------- |75| :------------------------------------------- | :------ | :-------------------------------------------------------------------------------------------------- |

73| [`CLAUDE_CODE_MAX_RETRIES`](/ko/env-vars) | 10 | 재시도 횟수입니다. 스크립트에서 오류를 빨리 표시하려면 낮추고, 인시던트를 기다리려면 높입니다. |76| [`CLAUDE_CODE_MAX_RETRIES`](/ko/env-vars) | 10 | 재시도 횟수입니다. {/* min-version: 2.1.186 */}v2.1.186부터 15로 제한됩니다. 스크립트에서 오류를 빨리 표시하려면 낮추십시오. |

77| [`CLAUDE_CODE_RETRY_WATCHDOG`](/ko/env-vars) | 설정되지 않음 | CI 작업과 같은 무인 세션에서 `1`로 설정하여 `CLAUDE_CODE_MAX_RETRIES` 시도 후 실패하는 대신 `429` 및 `529` 용량 오류를 무한정 재시도합니다. |

74| [`API_TIMEOUT_MS`](/ko/env-vars) | 600000 | 요청당 시간 초과(밀리초)입니다. 느린 네트워크 또는 프록시의 경우 높입니다. |78| [`API_TIMEOUT_MS`](/ko/env-vars) | 600000 | 요청당 시간 초과(밀리초)입니다. 느린 네트워크 또는 프록시의 경우 높입니다. |

75 79 

76<h2 id="server-errors">80<h2 id="server-errors">

Details

46| **[Code intelligence](/ko/tools-reference#lsp-tool-behavior)** | 언어 서버 네비게이션 및 진단 | 타입 언어, grep이 느리거나 부정확한 대규모 코드베이스 | 전체 파일을 읽는 대신 기호의 정의로 이동 |46| **[Code intelligence](/ko/tools-reference#lsp-tool-behavior)** | 언어 서버 네비게이션 및 진단 | 타입 언어, grep이 느리거나 부정확한 대규모 코드베이스 | 전체 파일을 읽는 대신 기호의 정의로 이동 |

47| **MCP** | 외부 서비스에 연결 | 외부 데이터 또는 작업 | 데이터베이스 쿼리, Slack에 게시, 브라우저 제어 |47| **MCP** | 외부 서비스에 연결 | 외부 데이터 또는 작업 | 데이터베이스 쿼리, Slack에 게시, 브라우저 제어 |

48| **Hook** | 이벤트에서 실행되는 스크립트, HTTP 요청, 프롬프트 또는 subagent | 모든 일치하는 이벤트에서 실행되어야 하는 자동화 | 모든 파일 편집 후 ESLint 실행 |48| **Hook** | 이벤트에서 실행되는 스크립트, HTTP 요청, 프롬프트 또는 subagent | 모든 일치하는 이벤트에서 실행되어야 하는 자동화 | 모든 파일 편집 후 ESLint 실행 |

49| **[Artifact](/ko/artifacts)** | 세션 출력을 비공개 대화형 웹 페이지로 게시 | 터미널 텍스트가 아닌 시각적으로 보거나 공유하려는 출력 | Claude가 조사할 때 업데이트되는 인시던트 타임라인 |

49 50 

50\*\*[Plugins](/ko/plugins)\*\*는 패키징 계층입니다. 플러그인은 skill, hook, subagent 및 MCP 서버를 단일 설치 가능한 단위로 번들합니다. 플러그인 skill은 네임스페이스됩니다(예: `/my-plugin:review`). 따라서 여러 플러그인이 공존할 수 있습니다. 여러 저장소에서 동일한 설정을 재사용하거나 \*\*[marketplace](/ko/plugin-marketplaces)\*\*를 통해 다른 사용자에게 배포하려는 경우 플러그인을 사용하세요.51\*\*[Plugins](/ko/plugins)\*\*는 패키징 계층입니다. 플러그인은 skill, hook, subagent 및 MCP 서버를 단일 설치 가능한 단위로 번들합니다. 플러그인 skill은 네임스페이스됩니다(예: `/my-plugin:review`). 따라서 여러 플러그인이 공존할 수 있습니다. 여러 저장소에서 동일한 설정을 재사용하거나 \*\*[marketplace](/ko/plugin-marketplaces)\*\*를 통해 다른 사용자에게 배포하려는 경우 플러그인을 사용하세요.

51 52 

fullscreen.md +2 −2

Details

44| :-------------------------- | :---------------------------------------------------- | :------------------------------------------------ |44| :-------------------------- | :---------------------------------------------------- | :------------------------------------------------ |

45| `Cmd+f` 또는 tmux 검색으로 텍스트 찾기 | 트랜스크립트 모드의 경우 `Ctrl+o`, 그 다음 `/`로 검색하거나 `[`로 스크롤백에 작성 | [대화 검색 및 검토](#search-and-review-the-conversation) |45| `Cmd+f` 또는 tmux 검색으로 텍스트 찾기 | 트랜스크립트 모드의 경우 `Ctrl+o`, 그 다음 `/`로 검색하거나 `[`로 스크롤백에 작성 | [대화 검색 및 검토](#search-and-review-the-conversation) |

46| 터미널의 기본 클릭 및 드래그로 선택 및 복사 | 앱 내 선택, 마우스 릴리스 시 자동 복사 | [마우스 사용](#use-the-mouse) |46| 터미널의 기본 클릭 및 드래그로 선택 및 복사 | 앱 내 선택, 마우스 릴리스 시 자동 복사 | [마우스 사용](#use-the-mouse) |

47| `Cmd`-클릭으로 URL 열기 | URL 클릭 | [마우스 사용](#use-the-mouse) |47| `Cmd`-클릭으로 URL 열기 | macOS에서는 `Cmd`-클릭, 다른 곳에서는 `Ctrl`-클릭 | [마우스 사용](#use-the-mouse) |

48 48 

49마우스 캡처가 워크플로우를 방해하는 경우 깜빡임 없는 렌더링을 유지하면서 [이를 끌 수 있습니다](#keep-native-text-selection).49마우스 캡처가 워크플로우를 방해하는 경우 깜빡임 없는 렌더링을 유지하면서 [이를 끌 수 있습니다](#keep-native-text-selection).

50 50 


57* **프롬프트 입력에서 클릭**하여 입력 중인 텍스트의 어디든지 커서를 배치합니다.57* **프롬프트 입력에서 클릭**하여 입력 중인 텍스트의 어디든지 커서를 배치합니다.

58* **`/` 명령 또는 `@` 파일 목록의 제안을 클릭**하여 수락합니다. 마우스 커서 위의 행을 강조 표시합니다.58* **`/` 명령 또는 `@` 파일 목록의 제안을 클릭**하여 수락합니다. 마우스 커서 위의 행을 강조 표시합니다.

59* **축소된 도구 결과를 클릭**하여 확장하고 전체 출력을 봅니다. 다시 클릭하면 축소됩니다. 도구 호출과 그 결과가 함께 확장됩니다. 표시할 내용이 더 있는 메시지만 클릭 가능합니다.59* **축소된 도구 결과를 클릭**하여 확장하고 전체 출력을 봅니다. 다시 클릭하면 축소됩니다. 도구 호출과 그 결과가 함께 확장됩니다. 표시할 내용이 더 있는 메시지만 클릭 가능합니다.

60* **URL 또는 파일 경로를 클릭**하여 엽니다. Edit 또는 Write 후 인쇄된 것과 같은 도구 출력의 파일 경로는 기본 애플리케이션에서 열립니다. 일반 `http://` 및 `https://` URL은 브라우저에서 열립니다. 대부분의 터미널에서 이는 마우스 캡처가 가로채는 기본 `Cmd`-클릭 또는 `Ctrl`-클릭을 대체합니다. VS Code 통합 터미널 및 유사한 xterm.js 기반 터미널에서는 `Cmd`-클릭을 계속 사용합니다. Claude Code는 링크가 두 번 열리는 것을 피하기 위해 터미널의 자체 링크 핸들러로 연기합니다.60* **macOS에서 `Cmd`를 누르거나 Linux 및 Windows에서 `Ctrl`을 누르고 URL 또는 파일 경로를 클릭**하여 엽니다. Edit 또는 Write 후 인쇄된 것과 같은 도구 출력의 파일 경로는 기본 애플리케이션에서 열립니다. 일반 `http://` 및 `https://` URL은 브라우저에서 열립니다. v2.1.181부터 `Cmd` 또는 `Ctrl` 누르지 않은 일반 클릭은 더 이상 링크를 열지 않으며, 기본 터미널 동작과 일치합니다. VS Code 통합 터미널 및 유사한 xterm.js 기반 터미널에서는 Claude Code가 터미널의 자체 링크 핸들러로 연기하며, 이는 동일한 제스처를 사용합니다.

61* **클릭 및 드래그**하여 대화의 어디든지 텍스트를 선택합니다. 더블 클릭하면 단어를 선택하며, iTerm2의 단어 경계와 일치하므로 파일 경로가 하나의 단위로 선택됩니다. 트리플 클릭하면 줄을 선택합니다.61* **클릭 및 드래그**하여 대화의 어디든지 텍스트를 선택합니다. 더블 클릭하면 단어를 선택하며, iTerm2의 단어 경계와 일치하므로 파일 경로가 하나의 단위로 선택됩니다. 트리플 클릭하면 줄을 선택합니다.

62* **마우스 휠로 스크롤**하여 대화를 이동합니다.62* **마우스 휠로 스크롤**하여 대화를 이동합니다.

63 63 

glossary.md +8 −0

Details

44 44 

45자세히 알아보기: [Claude Code 작동 방식](/ko/how-claude-code-works#the-agentic-loop)45자세히 알아보기: [Claude Code 작동 방식](/ko/how-claude-code-works#the-agentic-loop)

46 46 

47<h3 id="artifact">

48 Artifact

49</h3>

50 

51Claude Code가 세션에서 claude.ai의 비공개 URL로 게시하는 라이브 대화형 웹 페이지이므로, 터미널 텍스트를 읽는 대신 시각적으로 출력을 보거나 조직 내에서 공유할 수 있습니다. 세션이 다시 게시될 때 페이지가 제자리에서 업데이트됩니다. Claude Code에서 만든 Artifact는 claude.ai 대화에서 만든 Artifact와 동일한 갤러리에 나타나지만, 공유는 조직에서 중단되며 공개할 수 없습니다.

52 

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

54 

47<h3 id="auto-memory">55<h3 id="auto-memory">

48 Auto memory56 Auto memory

49</h3>57</h3>

headless.md +4 −2

Details

66 종료 시 백그라운드 작업66 종료 시 백그라운드 작업

67</h3>67</h3>

68 68 

69Claude가 `claude -p` 실행 중에 [백그라운드 Bash 작업](/ko/tools-reference#bash-tool-behavior)을 시작하는 경우(예: 개발 서버 또는 감시 빌드), 해당 작업은 Claude가 최종 결과를 반환하고 stdin이 닫힌 후 약 5초 후에 종료됩니다. 유예 기간을 통해 결과 직후에 완료되는 작업이 여전히 출력을 전달할 수 있습니다. v2.1.163 이전에는 종료되지 않는 백그라운드 프로세스가 `claude -p` 호출을 무한정 열어 두었습니다.69Claude가 `claude -p` 실행 중에 [백그라운드 Bash 작업](/ko/tools-reference#bash-tool-behavior)을 시작하는 경우(예: 개발 서버 또는 감시 빌드), 해당 셸은 Claude가 최종 결과를 반환하고 stdin이 닫힌 후 약 5초 후에 종료됩니다. 유예 기간을 통해 결과 직후에 완료되는 작업이 여전히 출력을 전달할 수 있습니다. v2.1.163 이전에는 종료되지 않는 백그라운드 프로세스가 `claude -p` 호출을 무한정 열어 두었습니다.

70 

71백그라운드 [서브에이전트](/ko/sub-agents) 및 워크플로우는 5초 유예 기간에서 제외됩니다. 이들의 결과가 최종 출력의 일부이기 때문에 `claude -p`는 이들이 완료될 때까지 기다립니다. v2.1.182부터 해당 대기는 기본적으로 10분으로 제한되므로 중단된 백그라운드 에이전트가 프로세스를 무한정 열어 두지 않습니다. [`CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS`](/ko/env-vars)로 상한을 조정하거나 제한 없이 대기하도록 `0`으로 설정합니다.

70 72 

71<h2 id="examples">73<h2 id="examples">

72 예제74 예제


232`--allowedTools` 플래그는 [권한 규칙 구문](/ko/settings#permission-rule-syntax)을 사용합니다. 뒤의 ` *`는 접두사 일치를 활성화하므로 `Bash(git diff *)`는 `git diff`로 시작하는 모든 명령을 허용합니다. 공백이 중요합니다: 없으면 `Bash(git diff*)`도 `git diff-index`와 일치합니다.234`--allowedTools` 플래그는 [권한 규칙 구문](/ko/settings#permission-rule-syntax)을 사용합니다. 뒤의 ` *`는 접두사 일치를 활성화하므로 `Bash(git diff *)`는 `git diff`로 시작하는 모든 명령을 허용합니다. 공백이 중요합니다: 없으면 `Bash(git diff*)`도 `git diff-index`와 일치합니다.

233 235 

234<Note>236<Note>

235 사용자가 호출한 [skills](/ko/skills) 및 사용자 정의 명령은 `-p` 모드에서 작동합니다: 프롬프트 문자열에 `/skill-name`을 포함하면 Claude Code가 실행하기 전에 이를 확장합니다. `/config` 및 `/login`과 같은 대화형 대화를 열어주는 기본 제공 명령은 `-p` 모드에서 사용할 수 없습니다.237 사용자가 호출한 [skills](/ko/skills) 및 사용자 정의 명령은 `-p` 모드에서 작동합니다: 프롬프트 문자열에 `/skill-name`을 포함하면 Claude Code가 실행하기 전에 이를 확장합니다. `/login`과 같은 대화형 대화를 열어주는 기본 제공 명령은 `-p` 모드에서 사용할 수 없습니다. {/* min-version: 2.1.181 */}`-p` 호출에서 설정을 변경하려면 `/config`에 `key=value`를 전달합니다. 예를 들어 `/config thinking=false`.

236</Note>238</Note>

237 239 

238<h3 id="customize-the-system-prompt">240<h3 id="customize-the-system-prompt">

Details

92</h3>92</h3>

93 93 

94| 단축키 | 설명 | 참고 |94| 단축키 | 설명 | 참고 |

95| :----- | :---------- | :---------------------------------------- |95| :----- | :---------- | :----------------------------------------------- |

96| `/` 시작 | 명령 또는 skill | [명령](#commands) 및 [skills](/ko/skills) 참조 |96| `/` 시작 | 명령 또는 skill | [명령](#commands) 및 [skills](/ko/skills) 참조 |

97| `!` 시작 | Shell 모드 | 명령을 직접 실행하고 실행 출력을 세션에 추가 |97| `!` 시작 | Shell 모드 | 명령을 직접 실행하고 실행 출력을 세션에 추가하며 Claude가 이에 응답하도록 합니다 |

98| `@` | 파일 경로 언급 | 파일 경로 자동 완성 트리거 |98| `@` | 파일 경로 언급 | 파일 경로 자동 완성 트리거 |

99 99 

100<h3 id="transcript-viewer">100<h3 id="transcript-viewer">


326* 빈 프롬프트에서 `Escape`, `Backspace` 또는 `Ctrl+U`로 종료합니다326* 빈 프롬프트에서 `Escape`, `Backspace` 또는 `Ctrl+U`로 종료합니다

327* 빈 프롬프트에 `!`로 시작하는 텍스트를 붙여넣으면 입력된 `!` 동작과 일치하여 shell 모드에 자동으로 진입합니다327* 빈 프롬프트에 `!`로 시작하는 텍스트를 붙여넣으면 입력된 `!` 동작과 일치하여 shell 모드에 자동으로 진입합니다

328 328 

329v2.1.186부터 Claude는 명령 출력이 대화 기록에 나타나면 자동으로 응답하므로 `! npm test`를 실행하고 실패에 대한 설명을 두 번째 프롬프트 없이 얻을 수 있습니다. 응답 비용은 일반 프롬프트를 보내는 것과 동일합니다. 출력이 응답 없이 컨텍스트에 추가되는 이전 동작을 복원하려면 `settings.json`에서 [`respondToBashCommands`](/ko/settings#available-settings)를 `false`로 설정하세요. v2.1.186 이전에는 shell 모드가 항상 응답 없이 출력을 컨텍스트에 추가했습니다.

330 

329이는 대화 컨텍스트를 유지하면서 빠른 셸 작업에 유용합니다.331이는 대화 컨텍스트를 유지하면서 빠른 셸 작업에 유용합니다.

330 332 

331<h2 id="prompt-suggestions">333<h2 id="prompt-suggestions">

keybindings.md +4 −3

Details

347 설정 작업347 설정 작업

348</h3>348</h3>

349 349 

350`Settings` 컨텍스트에서 사용 가능한 작업:350`Settings` 컨텍스트에서 사용 가능한 작업. `select:accept` 및 `confirm:no` 작업은 [선택 작업](#select-actions) 및 [확인 작업](#confirmation-actions) 컨텍스트에서 재사용되며 설정별 동작을 가집니다: 변경 사항은 변경하는 즉시 각 설정에 적용되므로 Escape는 변경 사항을 거부하는 대신 변경 사항을 저장하고 패널을 닫습니다.

351 351 

352| 작업 | 기본값 | 설명 |352| 작업 | 기본값 | 설명 |

353| :---------------- | :---- | :----------------------------------------------- |353| :---------------- | :----------- | :----------------------- |

354| `settings:search` | / | 검색 모드 진입 |354| `settings:search` | / | 검색 모드 진입 |

355| `settings:retry` | R | 사용량 데이터 다시 로드(오류 시) |355| `settings:retry` | R | 사용량 데이터 다시 로드(오류 시) |

356| `settings:close` | Enter | 변경 사항을 저장하고 구성 패널을 닫습니다. Escape는 변경 사항을 버리고 닫습니다 |356| `select:accept` | Enter, Space | 선택한 설정을 변경하거나 해당 서브메뉴 열기 |

357| `confirm:no` | Escape | 패널 닫기. 변경 사항은 이미 저장됨 |

357 358 

358<h3 id="doctor-actions">359<h3 id="doctor-actions">

359 Doctor 작업360 Doctor 작업

managed-mcp.md +8 −1

Details

161| `deniedMcpServers` | 서버 없음 차단 | 서버 없음 차단 | 일치하는 서버 차단 |161| `deniedMcpServers` | 서버 없음 차단 | 서버 없음 차단 | 일치하는 서버 차단 |

162 162 

163<Warning>163<Warning>

164 `serverName` 항목만 사용하는 허용 목록은 보안 제어가 아닙니다. 이름은 `claude mcp add`를 실행하거나 구성 파일을 편집할 때 사용자가 할당하는 레이블이며, 기본 서버가 아니므로, 사용자는 모든 서버를 `github`라고 부를 수 있습니다. 실제로 실행되는 서버를 적용하려면, `serverCommand` 또는 `serverUrl` 항목을 추가합니다.164 `serverName` 항목은 목록 하나에서 보안 제어가 아닙니다. 이름은 `claude mcp add`를 실행하거나 구성 파일을 편집할 때 사용자가 할당하는 레이블이며, 기본 서버가 아니므로, 사용자는 모든 서버를 `github`라고 부를 수 있습니다. claude.ai 커넥터의 경우 이름은 claude.ai에서 반환하는 표시 이름이며, 이는 변경될 수 있습니다. 실제로 실행되는 서버를 적용하려면, `serverCommand` 또는 `serverUrl` 항목을 추가합니다.

165</Warning>165</Warning>

166 166 

167`serverName` 검증은 두 목록 간에 다릅니다:

168 

169* {/* min-version: 2.1.182 */}`deniedMcpServers`에서, `serverName`은 모든 비어있지 않은 문자열을 허용하므로, 표시 이름으로 [claude.ai 커넥터](/ko/mcp#use-mcp-servers-from-claude-ai)를 차단할 수 있습니다. 예를 들어, `{ "serverName": "claude.ai Slack" }`은 Slack 커넥터를 차단합니다. 거부가 이름 변경에 강력해야 할 때 또는 커넥터 이름이 충돌하고 ` (N)` 접미사를 얻을 때 `serverUrl` 항목을 선호합니다.

170* `allowedMcpServers`에서, `serverName`은 문자, 숫자, 하이픈 및 밑줄로 제한됩니다. claude.ai 커넥터를 허용 목록에 추가하려면 `serverUrl`을 사용합니다.

171 

172모든 claude.ai 커넥터를 끄려면, [`disableClaudeAiConnectors`](/ko/mcp#disable-claude-ai-connectors)를 참조합니다.

173 

167<h3 id="how-a-server-is-evaluated">174<h3 id="how-a-server-is-evaluated">

168 서버 평가 방법175 서버 평가 방법

169</h3>176</h3>

mcp.md +39 −1

Details

554 * OAuth 인증은 HTTP 서버에서 작동합니다554 * OAuth 인증은 HTTP 서버에서 작동합니다

555</Tip>555</Tip>

556 556 

557<h3 id="authenticate-from-the-command-line">

558 명령줄에서 인증

559</h3>

560 

561v2.1.186부터 `claude mcp login <name>`은 구성된 서버의 OAuth 흐름을 셸에서 직접 실행하므로 세션 내에서 `/mcp` 패널을 열 필요가 없습니다.

562 

563```bash theme={null}

564claude mcp login sentry

565```

566 

567나중에 저장된 자격 증명을 지우려면 `claude mcp logout <name>`을 실행합니다.

568 

569SSH를 통해 연결되어 있을 때 `--no-browser`를 추가하여 브라우저를 열지 않고 명령이 인증 URL을 출력하도록 합니다. 로컬 머신에서 URL을 열고 브라우저의 주소 표시줄에서 전체 리디렉션 URL을 프롬프트에 다시 붙여넣습니다. 명령은 붙여넣기 단계를 위해 대화형 터미널이 필요하므로 `ssh -t`로 연결합니다.

570 

571```bash theme={null}

572claude mcp login sentry --no-browser

573```

574 

557<h3 id="use-a-fixed-oauth-callback-port">575<h3 id="use-a-fixed-oauth-callback-port">

558 고정 OAuth 콜백 포트 사용576 고정 OAuth 콜백 포트 사용

559</h3>577</h3>


852 870 

853Microsoft 365, Gmail, Google Calendar와 같은 일부 Anthropic 호스팅 커넥터는 업스트림 ID 공급자가 claude.ai에서 등록한 리디렉션 URL만 허용하기 때문에 Claude Code에서 로컬 OAuth를 지원하지 않습니다. v2.1.162부터 이러한 호스트 중 하나를 `/mcp`에서 인증하면 대신 claude.ai의 설정 → 커넥터에서 연결하도록 지시하는 메시지가 표시됩니다. 거기에서 연결되면 커넥터가 Claude Code에 자동으로 나타납니다.871Microsoft 365, Gmail, Google Calendar와 같은 일부 Anthropic 호스팅 커넥터는 업스트림 ID 공급자가 claude.ai에서 등록한 리디렉션 URL만 허용하기 때문에 Claude Code에서 로컬 OAuth를 지원하지 않습니다. v2.1.162부터 이러한 호스트 중 하나를 `/mcp`에서 인증하면 대신 claude.ai의 설정 → 커넥터에서 연결하도록 지시하는 메시지가 표시됩니다. 거기에서 연결되면 커넥터가 Claude Code에 자동으로 나타납니다.

854 872 

855Claude Code에서 claude.ai MCP 서버를 비활성화하려면 `ENABLE_CLAUDEAI_MCP_SERVERS` 환경 변수를 `false`로 설정합니다:873<h3 id="disable-claude-ai-connectors">

874 Claude.ai 커넥터 비활성화

875</h3>

876 

877Claude Code에서 claude.ai MCP 서버를 비활성화하려면 모든 설정 범위에서 [`disableClaudeAiConnectors`](/ko/settings#available-settings)를 `true`로 설정합니다:

878 

879```json theme={null}

880{

881 "disableClaudeAiConnectors": true

882}

883```

884 

885이 설정은 모든 소스 true 의미론을 사용합니다: 모든 설정 소스의 `true`가 우선순위를 갖습니다. 체크인된 프로젝트 `.claude/settings.json`은 클라우드 커넥터에서 저장소를 제외할 수 있지만, 프로젝트 수준의 `false`는 사용자 또는 정책 수준의 `true`가 비활성화한 커넥터를 다시 활성화할 수 없습니다. `--mcp-config`를 통해 명시적으로 전달된 서버는 영향을 받지 않습니다.

886 

887`ENABLE_CLAUDEAI_MCP_SERVERS` 환경 변수를 `false`로 설정할 수도 있으며, 이는 현재 셸 세션에 대해 동일한 효과를 갖습니다:

856 888 

857```bash theme={null}889```bash theme={null}

858ENABLE_CLAUDEAI_MCP_SERVERS=false claude890ENABLE_CLAUDEAI_MCP_SERVERS=false claude

859```891```

860 892 

893모든 claude.ai 커넥터를 비활성화하는 대신 개별 claude.ai 커넥터를 차단하려면 이름 또는 URL 패턴으로 [`deniedMcpServers`](/ko/managed-mcp)에 추가합니다. 예를 들어 `serverName` 항목 `"claude.ai Slack"`은 Slack 커넥터를 차단합니다. 현재 프로젝트에만 커넥터를 켜거나 끄려면 `/mcp` 패널을 사용합니다.

894 

895<Note>

896 이러한 클라이언트 측 설정은 로컬 Claude Code 세션을 관리합니다. [Claude Code on the web](/ko/claude-code-on-the-web) 세션에서는 claude.ai 커넥터가 원격 호스트에 의해 프로비저닝되고 명시적 `--mcp-config` 항목으로 도착하므로 `disableClaudeAiConnectors`는 적용되지 않습니다. 커넥터 URL은 세션 프록시를 통해 다시 작성되므로 공급업체 URL을 대상으로 하는 `deniedMcpServers` `serverUrl` 패턴은 일치하지 않습니다. 클라우드 세션이 사용할 수 있는 커넥터를 관리하려면 claude.ai 조직 설정에서 관리합니다.

897</Note>

898 

861<h2 id="use-claude-code-as-an-mcp-server">899<h2 id="use-claude-code-as-an-mcp-server">

862 Claude Code를 MCP 서버로 사용900 Claude Code를 MCP 서버로 사용

863</h2>901</h2>

Details

61 서버는 상태 표시기와 함께 나타납니다:61 서버는 상태 표시기와 함께 나타납니다:

62 62 

63 | 상태 | 의미 |63 | 상태 | 의미 |

64 | :----------------------- | :-------------------------------------------------------------------------------------------------------------------------- |64 | :--------------------------------- | :-------------------------------------------------------------------------------------------------------------------------- |

65 | `✓ Connected` | 사용할 준비가 되었습니다. `claude-code-docs`에서 이것을 봐야 합니다 |65 | `✓ Connected` | 사용할 준비가 되었습니다. `claude-code-docs`에서 이것을 봐야 합니다 |

66 | `! Connected · tools fetch failed` | 서버가 연결되었지만 도구를 나열할 수 없습니다. 오류 세부 정보는 `claude mcp get <name>`을 실행하세요 |

66 | `! Needs authentication` | 서버에 도달할 수 있지만 브라우저 로그인이 필요하거나 `--header`로 전달된 토큰이 필요합니다. [로그인이 필요한 서버 연결하기](#connect-a-server-that-requires-sign-in)를 참조하세요 |67 | `! Needs authentication` | 서버에 도달할 수 있지만 브라우저 로그인이 필요하거나 `--header`로 전달된 토큰이 필요합니다. [로그인이 필요한 서버 연결하기](#connect-a-server-that-requires-sign-in)를 참조하세요 |

67 | `✗ Failed to connect` | 서버가 응답하지 않았습니다. [문제 해결](#troubleshooting)을 참조하세요 |68 | `✗ Failed to connect` | 서버가 응답하지 않았습니다. [문제 해결](#troubleshooting)을 참조하세요 |

68 | `✗ Connection error` | 연결 시도에서 오류가 발생했습니다. [문제 해결](#troubleshooting)을 참조하세요 |69 | `✗ Connection error` | 연결 시도에서 오류가 발생했습니다. [문제 해결](#troubleshooting)을 참조하세요 |

model-config.md +2 −0

Details

94 94 

95시작 시 활성 모델이 자신의 선택이 아닌 프로젝트 또는 관리되는 설정에서 나온 경우, 시작 헤더는 어느 설정 파일이 이를 설정했는지 표시합니다. `/model`을 실행하여 재정의합니다. 프로젝트 또는 관리되는 설정은 다음 실행 시 다시 적용됩니다.95시작 시 활성 모델이 자신의 선택이 아닌 프로젝트 또는 관리되는 설정에서 나온 경우, 시작 헤더는 어느 설정 파일이 이를 설정했는지 표시합니다. `/model`을 실행하여 재정의합니다. 프로젝트 또는 관리되는 설정은 다음 실행 시 다시 적용됩니다.

96 96 

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

98 

97사용 예시:99사용 예시:

98 100 

99```bash theme={null}101```bash theme={null}

Details

701 API 거부 이벤트701 API 거부 이벤트

702</h4>702</h4>

703 703 

704API 요청이 `stop_reason: "refusal"`을 반환할 때 기록됩니다. 거부는 HTTP 오류가 아닌 성공적인 응답 스트림에 도착하므로 `api_error` 이벤트는 이에 대해 발생하지 않습니다. 이 이벤트를 사용하면 거부 빈도를 추적할 수 있습니다.704API 요청이 `stop_reason: "refusal"`을 반환할 때 기록됩니다. 거부는 HTTP 오류가 아닌 성공적인 응답 스트림에 도착하므로 `api_error` 이벤트는 이에 대해 발생하지 않습니다. 이 이벤트를 사용하면 거부 빈도를 추적하고 거부를 `api_request` 및 `api_error`와 동일한 속성으로 그룹화할 수 있습니다.

705 705 

706**이벤트 이름**: `claude_code.api_refusal`706**이벤트 이름**: `claude_code.api_refusal`

707 707 


713* `event.sequence`: 세션 내 이벤트 순서 지정을 위한 단조 증가 카운터713* `event.sequence`: 세션 내 이벤트 순서 지정을 위한 단조 증가 카운터

714* `model`: 요청의 모델 식별자714* `model`: 요청의 모델 식별자

715* `request_id`: 응답의 `request-id` 헤더의 Anthropic API 요청 ID, 예: `"req_011..."`. API가 반환할 때만 표시됩니다.715* `request_id`: 응답의 `request-id` 헤더의 Anthropic API 요청 ID, 예: `"req_011..."`. API가 반환할 때만 표시됩니다.

716* `query_source`: 요청을 발급한 하위 시스템, 예: `"repl_main_thread"`, `"compact"` 또는 하위 에이전트 이름. [`api_request`](#api-request-event)의 정의를 참조하세요.

717* `speed`: [빠른 모드](/ko/fast-mode)가 활성화되었을 때 `"fast"`, 또는 `"normal"`

718* `attempt`: 재시도 시도 번호. 첫 번째 시도는 `1`입니다.

719* `effort`: 요청에 적용된 [노력 수준](/ko/model-config#adjust-effort-level). 모델이 노력을 지원하지 않을 때는 없음

720* `server_fallback_hop`: API의 서버 측 모델 폴백이 이미 이 거부를 다른 모델에서 재시도했으므로 사용자가 이 특정 거부를 보지 못했을 때 `true`. 요청이 거부로 끝났을 때 `false`. 단일 턴은 나중에 `false` 최종 이벤트가 있는 `true` 홉 이벤트를 모두 내보낼 수 있습니다.

721* `has_category`: API 응답이 `"cyber"`, `"bio"`, `"frontier_llm"` 또는 `"reasoning_extraction"`의 `stop_details.category`를 전달했을 때 `true`. 응답이 카테고리를 전달하지 않았거나 해당 집합 외부의 값을 전달했을 때 `false`. `server_fallback_hop`이 `true`일 때는 없음 (홉 블록은 `stop_details`를 전달하지 않음).

722* `has_explanation`: API 응답이 `stop_details.explanation`을 전달했을 때 `true`, 그 외에는 `false`. `server_fallback_hop`이 `true`일 때는 없음.

723* `category`: API 응답의 `stop_details.category` 값. `"cyber"`, `"bio"`, `"frontier_llm"` 또는 `"reasoning_extraction"` 중 하나. `OTEL_LOG_TOOL_DETAILS=1`이 설정되어 있고 `has_category`가 `true`일 때만 표시됩니다.

724* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: 요청에 대한 스킬, 플러그인, 에이전트 및 MCP 속성. [비용 카운터](#cost-counter)의 정의 및 수정 동작을 참조하세요.

716 725 

717<h4 id="api-request-body-event">726<h4 id="api-request-body-event">

718 API 요청 본문 이벤트727 API 요청 본문 이벤트


1155 1164 

1156Claude Code는 실패한 API 요청을 내부적으로 재시도하고 포기한 후에만 단일 `claude_code.api_error` 이벤트를 내보내므로 이벤트 자체가 해당 요청의 최종 신호입니다. 중간 재시도 시도는 별도의 이벤트로 기록되지 않습니다.1165Claude Code는 실패한 API 요청을 내부적으로 재시도하고 포기한 후에만 단일 `claude_code.api_error` 이벤트를 내보내므로 이벤트 자체가 해당 요청의 최종 신호입니다. 중간 재시도 시도는 별도의 이벤트로 기록되지 않습니다.

1157 1166 

1158이벤트의 `attempt` 속성은 총 시도 횟수를 기록합니다. `CLAUDE_CODE_MAX_RETRIES` (기본값 `10`)보다 큰 값은 요청이 일시적 오류에 대한 모든 재시도를 소진했음을 나타냅니다. 더 낮은 값은 `400` 응답과 같은 재시도 불가능한 오류를 나타냅니다.1167이벤트의 `attempt` 속성은 총 시도 횟수를 기록합니다. `CLAUDE_CODE_MAX_RETRIES` (기본값 `10`, 최대 `15`)보다 큰 값은 요청이 일시적 오류에 대한 모든 재시도를 소진했음을 나타냅니다. 더 낮은 값은 `400` 응답과 같은 재시도 불가능한 오류를 나타냅니다.

1159 1168 

1160복구된 세션과 정체된 세션을 구분하려면 `session.id`로 이벤트를 그룹화하고 오류 후 나중에 `api_request` 이벤트가 존재하는지 확인합니다.1169복구된 세션과 정체된 세션을 구분하려면 `session.id`로 이벤트를 그룹화하고 오류 후 나중에 `api_request` 이벤트가 존재하는지 확인합니다.

1161 1170 

Details

117Claude Code는 다음 URL에 대한 액세스가 필요합니다. 특히 컨테이너화되거나 제한된 네트워크 환경에서 프록시 구성 및 방화벽 규칙에 이러한 URL을 허용 목록에 추가하십시오.117Claude Code는 다음 URL에 대한 액세스가 필요합니다. 특히 컨테이너화되거나 제한된 네트워크 환경에서 프록시 구성 및 방화벽 규칙에 이러한 URL을 허용 목록에 추가하십시오.

118 118 

119| URL | 필요한 용도 |119| URL | 필요한 용도 |

120| ------------------------------ | ------------------------------------------------------------------------------------- |120| ------------------------------ | ------------------------------------------------------------------------------------------------------------ |

121| `api.anthropic.com` | Claude API 요청 |121| `api.anthropic.com` | Claude API 요청 |

122| `claude.ai` | claude.ai 계정 인증 |122| `claude.ai` | claude.ai 계정 인증 |

123| `platform.claude.com` | Anthropic Console 계정 인증 |123| `platform.claude.com` | Anthropic Console 계정 인증 |

124| `downloads.claude.ai` | 플러그인 실행 파일 다운로드; 네이티브 설치 관리자 및 네이티브 자동 업데이터 |124| `downloads.claude.ai` | 플러그인 실행 파일 다운로드; 네이티브 설치 관리자 및 네이티브 자동 업데이터 |

125| `storage.googleapis.com` | {/* max-version: 2.1.115 */}2.1.116 이전 버전의 네이티브 설치 관리자 및 네이티브 자동 업데이터 |125| `storage.googleapis.com` | {/* max-version: 2.1.115 */}2.1.116 이전 버전의 네이티브 설치 관리자 및 네이티브 자동 업데이터 |

126| `bridge.claudeusercontent.com` | [Chrome의 Claude](/ko/chrome) 확장 프로그램 WebSocket 브리지 |126| `bridge.claudeusercontent.com` | [Chrome의 Claude](/ko/chrome) 확장 프로그램 WebSocket 브리지 |

127| `*.claudeusercontent.com` | claude.ai에서 [아티팩트](/ko/artifacts) 보기. 뷰어는 이 원본의 샌드박스 서브도메인에서 각 아티팩트의 콘텐츠를 로드합니다. CLI 자체가 아닌 뷰어의 브라우저에서 필요합니다 |

127| `raw.githubusercontent.com` | [`/release-notes`](/ko/commands)에 대한 변경 로그 피드 및 업데이트 후 표시되는 릴리스 노트; 플러그인 마켓플레이스 설치 횟수 |128| `raw.githubusercontent.com` | [`/release-notes`](/ko/commands)에 대한 변경 로그 피드 및 업데이트 후 표시되는 릴리스 노트; 플러그인 마켓플레이스 설치 횟수 |

128 129 

129npm을 통해 Claude Code를 설치하거나 자신의 바이너리 배포를 관리하는 경우 최종 사용자는 `downloads.claude.ai` 또는 `storage.googleapis.com`에 대한 액세스가 필요하지 않을 수 있습니다.130npm을 통해 Claude Code를 설치하거나 자신의 바이너리 배포를 관리하는 경우 최종 사용자는 `downloads.claude.ai` 또는 `storage.googleapis.com`에 대한 액세스가 필요하지 않을 수 있습니다.

Details

235* 공유 인프라 수정235* 공유 인프라 수정

236* 세션 시작 전에 존재했던 파일을 되돌릴 수 없게 삭제236* 세션 시작 전에 존재했던 파일을 되돌릴 수 없게 삭제

237* 강제 푸시 또는 `main`에 직접 푸시237* 강제 푸시 또는 `main`에 직접 푸시

238* {/* min-version: 2.1.182 */}`git reset --hard`, `git checkout -- .`, `git restore .`, `git clean -fd`, `git stash drop`, 또는 `git stash clear`. 분류기는 이들이 커밋되지 않은 변경 사항을 삭제할 것으로 추정합니다

239* `git commit --amend` (HEAD의 커밋이 이 세션에서 생성되지 않은 경우)

240* `terraform destroy`, `pulumi destroy`, `cdk destroy`, 또는 `terragrunt destroy`, 그리고 리소스를 삭제하는 계획 적용

238 241 

239**기본적으로 허용됨**:242**기본적으로 허용됨**:

240 243 

permissions.md +2 −2

Details

400다음 구성 유형은 `--add-dir` 디렉토리에서 로드됩니다:400다음 구성 유형은 `--add-dir` 디렉토리에서 로드됩니다:

401 401 

402| 구성 | `--add-dir`에서 로드됨 |402| 구성 | `--add-dir`에서 로드됨 |

403| :--------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------- |403| :-------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------- |

404| `.claude/skills/`의 [Skills](/ko/skills) | 예, 라이브 리로드 포함 |404| `.claude/skills/`의 [Skills](/ko/skills) | 예, 라이브 리로드 포함 |

405| `.claude/agents/`의 [Subagents](/ko/sub-agents) | 예 |405| `.claude/agents/`의 [Subagents](/ko/sub-agents) | 예 |

406| `.claude/settings.json`의 플러그인 설정 | `enabledPlugins` 및 `extraKnownMarketplaces`|406| `.claude/settings.json` 및 `.claude/settings.local.json`[Settings](/ko/settings) | `enabledPlugins` 및 `extraKnownMarketplaces` 키만 |

407| [CLAUDE.md](/ko/memory) 파일, `.claude/rules/` 및 `CLAUDE.local.md` | `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1`이 설정된 경우에만. `CLAUDE.local.md`는 추가로 `local` 설정 소스가 필요하며, 이는 기본적으로 활성화됩니다 |407| [CLAUDE.md](/ko/memory) 파일, `.claude/rules/` 및 `CLAUDE.local.md` | `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1`이 설정된 경우에만. `CLAUDE.local.md`는 추가로 `local` 설정 소스가 필요하며, 이는 기본적으로 활성화됩니다 |

408 408 

409명령 및 출력 스타일은 현재 작업 디렉토리 및 해당 부모, `~/.claude/`의 사용자 디렉토리 및 관리형 설정에서 발견됩니다. Hooks 및 기타 `settings.json` 키는 현재 작업 디렉토리의 `.claude/` 폴더에서 로드되며 부모 디렉토리 폴백이 없고, 사용자 `~/.claude/settings.json` 및 관리형 설정과 함께 로드됩니다. 프로젝트 전체에서 해당 구성을 공유하려면 다음 방법 중 하나를 사용합니다:409명령 및 출력 스타일은 현재 작업 디렉토리 및 해당 부모, `~/.claude/`의 사용자 디렉토리 및 관리형 설정에서 발견됩니다. Hooks 및 기타 `settings.json` 키는 현재 작업 디렉토리의 `.claude/` 폴더에서 로드되며 부모 디렉토리 폴백이 없고, 사용자 `~/.claude/settings.json` 및 관리형 설정과 함께 로드됩니다. 프로젝트 전체에서 해당 구성을 공유하려면 다음 방법 중 하나를 사용합니다:

Details

201 플러그인 항목201 플러그인 항목

202</h2>202</h2>

203 203 

204`plugins` 배열의 각 플러그인 항목은 플러그인과 플러그인을 찾을 위치를 설명합니다. [플러그인 매니페스트 스키마](/ko/plugins-reference#plugin-manifest-schema)의 모든 필드(예: `description`, `version`, `author`, `commands`, `hooks` 등)와 이러한 마켓플레이스 특정 필드를 포함할 수 있습니다: `source`, `category`, `tags` 및 `strict`.204`plugins` 배열의 각 플러그인 항목은 플러그인과 플러그인을 찾을 위치를 설명합니다. [플러그인 매니페스트 스키마](/ko/plugins-reference#plugin-manifest-schema)의 모든 필드(예: `description`, `version`, `author`, `commands`, `hooks` 등)와 이러한 마켓플레이스 특정 필드를 포함할 수 있습니다: `source`, `category`, `tags`, `strict`, 및 `relevance`.

205 205 

206<h3 id="required-fields-1">206<h3 id="required-fields-1">

207 필수 필드207 필수 필드


231| `category` | string | 조직을 위한 플러그인 카테고리 |231| `category` | string | 조직을 위한 플러그인 카테고리 |

232| `tags` | array | 검색 가능성을 위한 태그 |232| `tags` | array | 검색 가능성을 위한 태그 |

233| `strict` | boolean | `plugin.json`이 구성 요소 정의의 권한인지 여부를 제어합니다(기본값: true). 아래의 [Strict 모드](#strict-mode)를 참조하세요. |233| `strict` | boolean | `plugin.json`이 구성 요소 정의의 권한인지 여부를 제어합니다(기본값: true). 아래의 [Strict 모드](#strict-mode)를 참조하세요. |

234| `relevance` | object | {/* min-version: 2.1.152 */}Claude Code가 사용자에게 이 플러그인을 제안할 시기를 알려주는 신호입니다. 관리자가 관리 설정에서 허용 목록에 추가한 마켓플레이스에만 적용됩니다. [조직을 위한 플러그인 권장](/ko/plugin-relevance)을 참조하세요. Claude Code v2.1.152 이상이 필요합니다. |

234| `defaultEnabled` | boolean | {/* min-version: 2.1.154 */}플러그인이 설치 후 활성화되는지 여부(기본값: true). 사용자가 옵트인할 때까지 플러그인을 비활성화된 상태로 설치하려면 `false`로 설정합니다. 플러그인의 `plugin.json`에 있는 동일한 필드보다 우선합니다. [기본 활성화](/ko/plugins-reference#default-enablement)를 참조하세요. Claude Code v2.1.154 이상이 필요합니다. |235| `defaultEnabled` | boolean | {/* min-version: 2.1.154 */}플러그인이 설치 후 활성화되는지 여부(기본값: true). 사용자가 옵트인할 때까지 플러그인을 비활성화된 상태로 설치하려면 `false`로 설정합니다. 플러그인의 `plugin.json`에 있는 동일한 필드보다 우선합니다. [기본 활성화](/ko/plugins-reference#default-enablement)를 참조하세요. Claude Code v2.1.154 이상이 필요합니다. |

235 236 

236**구성 요소 구성 필드:**237**구성 요소 구성 필드:**


269 예를 들어, `acme-corp/plugin-catalog`에서 호스팅되는 마켓플레이스(마켓플레이스 소스)는 `acme-corp/code-formatter`에서 가져온 플러그인을 나열할 수 있습니다(플러그인 소스). 마켓플레이스 소스와 플러그인 소스는 다양한 저장소를 가리키며 독립적으로 고정됩니다.270 예를 들어, `acme-corp/plugin-catalog`에서 호스팅되는 마켓플레이스(마켓플레이스 소스)는 `acme-corp/code-formatter`에서 가져온 플러그인을 나열할 수 있습니다(플러그인 소스). 마켓플레이스 소스와 플러그인 소스는 다양한 저장소를 가리키며 독립적으로 고정됩니다.

270</Note>271</Note>

271 272 

272git 기반 소스 유형은 아래의 `github`, `url`, 및 `git-subdir`입니다. `ref`와 `sha`가 모두 설정되면 `sha`가 유효한 핀입니다. Claude Code는 고정된 커밋을 직접 가져오고 체크아웃하므로 분기 또는 태그가 업스트림에서 삭제되었더라도 커밋이 저장소에서 여전히 도달 가능한 한 설치가 성공합니다.273git 기반 소스 유형은 아래의 `github`, `url`, 및 `git-subdir`입니다. `ref`와 `sha`가 모두 설정되면 `sha`가 유효한 핀입니다. Claude Code는 고정된 커밋을 직접 가져오고 체크아웃합니다. GitHub, GitLab, Bitbucket을 포함한 대부분의 git 호스트에서 이는 분기 또는 태그가 업스트림에서 삭제되었더라도 커밋이 저장소에서 여전히 도달 가능한 한 설치가 성공함을 의미합니다. AWS CodeCommit과 같은 일부 서버는 SHA로 커밋을 가져오는 것을 지원하지 않습니다. 이러한 서버에서는 `ref`가 여전히 존재해야 하고 고정된 커밋이 이로부터 도달 가능해야 합니다.

273 274 

274<h3 id="relative-paths">275<h3 id="relative-paths">

275 상대 경로276 상대 경로


507* **`${CLAUDE_PLUGIN_ROOT}`**: hooks 및 MCP 서버 구성에서 이 변수를 사용하여 플러그인의 설치 디렉터리 내의 파일을 참조합니다. 플러그인이 설치될 때 캐시 위치에 복사되기 때문에 필요합니다. 플러그인 업데이트를 통해 유지되어야 하는 종속성 또는 상태의 경우 [`${CLAUDE_PLUGIN_DATA}`](/ko/plugins-reference#persistent-data-directory)를 대신 사용합니다.508* **`${CLAUDE_PLUGIN_ROOT}`**: hooks 및 MCP 서버 구성에서 이 변수를 사용하여 플러그인의 설치 디렉터리 내의 파일을 참조합니다. 플러그인이 설치될 때 캐시 위치에 복사되기 때문에 필요합니다. 플러그인 업데이트를 통해 유지되어야 하는 종속성 또는 상태의 경우 [`${CLAUDE_PLUGIN_DATA}`](/ko/plugins-reference#persistent-data-directory)를 대신 사용합니다.

508* **`strict: false`**: 이것이 false로 설정되어 있으므로 플러그인은 자신의 `plugin.json`이 필요하지 않습니다. 마켓플레이스 항목이 모든 것을 정의합니다. 아래의 [Strict 모드](#strict-mode)를 참조하세요.509* **`strict: false`**: 이것이 false로 설정되어 있으므로 플러그인은 자신의 `plugin.json`이 필요하지 않습니다. 마켓플레이스 항목이 모든 것을 정의합니다. 아래의 [Strict 모드](#strict-mode)를 참조하세요.

509 510 

510기본적으로 플러그인의 skills는 해당 `source` 아래의 `skills/` 디렉터리에서 로드되며, `skills` 아래에 나열된 모든 경로가 해당 스캔에 추가됩니다. 예외는 `source: "./"`와 같은 마켓플레이스 루트 소스이며, 여러 플러그인 항목이 하나의 `skills/` 폴더를 공유합니다. 이 경우 `skills/` 아래에 특정 하위 디렉터리를 나열하면 해당 목록이 항목의 완전한 집합이 되며, `skills/` 아래의 다른 디렉터리는 로드되지 않습니다. `skills/` 디렉터리 자체 또는 플러그인 루트를 나열하면 전체 스캔이 유지됩니다. 나열된 경로 중 어느 것도 존재하지 않으면 기본 스캔이 대신 실행됩니다.511기본적으로 플러그인의 skills는 해당 `source` 아래의 `skills/` 디렉터리에서 로드됩니다. `skills` 필드에 나열된 경로는 해당 스캔에 추가됩니다:

512 

513```json theme={null}

514"skills": ["./skills/", "./extra-skills/"]

515```

516 

517여러 플러그인 항목이 마켓플레이스 루트(`source: "./"`)에서 하나의 `skills/` 폴더를 공유할 때 각 항목이 자신의 skills만 로드하도록 특정 하위 디렉터리를 대신 나열합니다:

518 

519```json theme={null}

520"source": "./",

521"skills": ["./skills/code-review", "./skills/docs"]

522```

523 

524마켓플레이스 루트 `source`를 사용하면 나열된 경로가 해당 항목의 완전한 집합이 되며, 공유된 `skills/` 폴더의 다른 디렉터리는 로드되지 않습니다. `./skills/` 자체 또는 플러그인 루트를 나열하면 전체 스캔이 유지됩니다. 나열된 경로 중 어느 것도 존재하지 않으면 기본 스캔이 대신 실행됩니다.

511 525 

512<h3 id="strict-mode">526<h3 id="strict-mode">

513 Strict 모드527 Strict 모드


1078* 플러그인 디렉터리에 필수 파일이 포함되어 있는지 확인합니다1092* 플러그인 디렉터리에 필수 파일이 포함되어 있는지 확인합니다

1079* GitHub 소스의 경우 저장소가 공개이거나 액세스 권한이 있는지 확인합니다1093* GitHub 소스의 경우 저장소가 공개이거나 액세스 권한이 있는지 확인합니다

1080* 플러그인 소스를 수동으로 복제/다운로드하여 테스트합니다1094* 플러그인 소스를 수동으로 복제/다운로드하여 테스트합니다

1081* 소스가 `ref`와 `sha`를 모두 고정하는 경우 삭제된 업스트림 분기 또는 태그는 설치를 차단하지 않습니다. 설치가 계속 실패하면 고정된 커밋이 저장소에 여전히 존재하는지 확인합니다1095* 소스가 `ref`와 `sha`를 모두 고정하는 경우 삭제된 업스트림 분기 또는 태그는 대부분의 git 호스트(GitHub, GitLab 및 Bitbucket 포함)에서 설치를 차단하지 않습니다. AWS CodeCommit과 같이 SHA로 커밋을 가져오기를 지원하지 않는 서버에서는 `ref`가 여전히 존재해야 하고 고정된 커밋이 이로부터 도달 가능해야 합니다. 설치가 계속 실패하면 고정된 커밋이 저장소에 여전히 존재하는지 확인합니다

1082 1096 

1083<h3 id="private-repository-authentication-fails">1097<h3 id="private-repository-authentication-fails">

1084 개인 저장소 인증 실패1098 개인 저장소 인증 실패

plugin-relevance.md +188 −0 created

Details

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# 조직을 위한 플러그인 추천

6 

7> 마켓플레이스 플러그인 항목에 관련성 블록을 추가하여 사용자의 작업이 일치할 때 Claude Code가 플러그인을 제안하도록 합니다.

8 

9조직의 플러그인 마켓플레이스를 운영하는 경우, 사용자가 작업 중인 내용을 기반으로 Claude Code가 특정 플러그인을 제안하도록 할 수 있습니다. `marketplace.json`의 플러그인 항목에 `relevance` 블록을 추가한 다음 관리 설정에서 마켓플레이스를 허용 목록에 추가합니다. 사용자의 세션이 선언된 신호 중 하나와 일치하면 Claude Code가 해당 플러그인에 대한 설치 제안을 표시합니다.

10 

11마켓플레이스에서 선언한 제안은 [관리 설정](/ko/settings#settings-files)을 통해 마켓플레이스별로 선택 사항입니다. 관리자가 공식 Anthropic 마켓플레이스를 포함하여 허용 목록에 추가할 때까지 마켓플레이스의 `relevance` 선언이 제안을 생성하지 않습니다. Claude Code에는 이 허용 목록과 무관한 기본 제안 하나가 포함되어 있습니다. 이 팁과 모든 마켓플레이스에서 선언한 팁은 [`spinnerTipsEnabled`](/ko/settings#available-settings)가 `false`로 설정되면 비활성화됩니다.

12 

13{/* min-version: 2.1.152 */}이 기능을 사용하려면 Claude Code v2.1.152 이상이 필요합니다. 이전 클라이언트는 `relevance` 필드를 무시합니다.

14 

15이 페이지는 마켓플레이스 운영자 및 엔터프라이즈 관리자를 위한 것입니다. 플러그인을 설치하려는 경우 [플러그인 발견 및 설치](/ko/discover-plugins)를 참조하세요.

16 

17<h2 id="how-it-works">

18 작동 방식

19</h2>

20 

21`marketplace.json`의 각 플러그인 항목은 `relevance` 객체를 포함할 수 있습니다. 이 객체는 주제와 하나 이상의 신호를 지정합니다. 신호는 Claude Code가 현재 세션에 대해 테스트하는 패턴입니다. 예를 들어 작업 디렉터리 또는 Claude가 읽은 파일입니다.

22 

23신호 일치는 사용자의 컴퓨터에서 로컬로 발생합니다. 일치는 네트워크 트래픽을 추가하지 않으며 어떤 신호가 일치했는지 또는 해당 값을 Anthropic이나 마켓플레이스 운영자에게 보고하지 않습니다.

24 

25신호가 일치하고 플러그인이 아직 설치되지 않은 경우 Claude Code는 플러그인을 세 곳에 표시합니다.

26 

27* **스피너 팁**: Claude가 응답하는 동안 스피너 아래에 `/plugin install` 명령과 함께 "Working with *topic*? Install the *plugin* plugin" 메시지가 나타납니다.

28* **세션 시작 제안**: {/* min-version: 2.1.153 */}`cwd` 신호가 작업 디렉터리와 일치하면 첫 번째 턴 전에 한 줄의 `plugin suggestion: <name>@<marketplace> · /plugin` 알림이 나타납니다. 이 표면은 Claude Code v2.1.153 이상이 필요합니다.

29* **`/plugin` 발견 탭**: {/* min-version: 2.1.154 */}플러그인이 발견 목록의 맨 위에 고정되며 "suggested for this directory" 또는 "suggested for stripe commands"와 같은 주석이 표시됩니다. 이 표면은 Claude Code v2.1.154 이상이 필요합니다.

30 

31스피너 팁과 세션 시작 알림은 스피너 팁 시스템의 일부입니다. 사용자 또는 프로젝트가 `spinnerTipsEnabled`를 `false`로 설정하거나 `excludeDefault`를 사용하여 사용자 정의 `spinnerTipsOverride`가 구성된 경우 둘 다 비활성화됩니다. 발견 탭 핀은 팁 설정과 무관합니다.

32 

33Claude Code는 플러그인을 자동으로 설치하지 않습니다. 사용자가 항상 확인합니다.

34 

35<h2 id="add-relevance-to-a-plugin-entry">

36 플러그인 항목에 관련성 추가

37</h2>

38 

39`marketplace.json`의 플러그인 항목에 `relevance` 객체를 추가합니다. 다음 예제는 Claude가 `.tf` 파일을 읽거나 Claude가 `terraform`을 실행할 때 `terraform-helpers` 플러그인이 관련이 있음을 선언합니다.

40 

41```json theme={null}

42{

43 "name": "acme-corp-plugins",

44 "owner": { "name": "Acme Platform Team" },

45 "plugins": [

46 {

47 "name": "terraform-helpers",

48 "source": "./plugins/terraform-helpers",

49 "description": "Acme conventions and helpers for Terraform",

50 "relevance": {

51 "topic": "Terraform",

52 "signals": {

53 "cli": ["terraform"],

54 "filesRead": ["**/*.tf"]

55 }

56 }

57 }

58 ]

59}

60```

61 

62`relevance` 블록이 있지만 일치하는 신호가 없는 플러그인은 다른 마켓플레이스 항목처럼 작동합니다. 발견 목록에 정상 위치에 나타나며 스피너 팁으로 표시되지 않습니다.

63 

64<h2 id="field-reference">

65 필드 참조

66</h2>

67 

68<h3 id="relevance">

69 `relevance`

70</h3>

71 

72| 필드 | 유형 | 설명 |

73| :-------- | :----- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

74| `topic` | string | 선택 사항입니다. 스피너 팁에서 "Working with *topic*?"를 채우는 구문입니다. 종종 제품 이름입니다. 예를 들어 `Stripe`입니다. 플러그인 이름이 주제로 자연스럽게 읽히지 않을 때 `design`과 같은 도메인을 사용합니다. 기본값은 각 하이픈 세그먼트가 대문자로 표기된 플러그인 이름입니다. 세션 시작 알림은 이 값을 사용하지 않습니다. 최대 64자입니다. |

75| `signals` | object | 플러그인이 관련이 있는 시기를 결정하는 매처입니다. 플러그인이 제안 가능하려면 최소 하나의 신호가 필요합니다. 아래 표를 참조하세요. |

76 

77<h3 id="relevance-signals">

78 `relevance.signals`

79</h3>

80 

81| 필드 | 유형 | 설명 |

82| :------------- | :--------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

83| `cwd` | array of strings | {/* min-version: 2.1.153 */}세션의 작업 디렉터리에 대해 일치하는 Glob 패턴입니다. 절대 경로로 일치하며, git 저장소 내에 있을 때 저장소 루트에 상대적인 경로로 일치합니다. 정방향 슬래시로 정규화되고 대소문자를 구분하지 않습니다. 모든 패턴은 디렉터리 자체 및 그 아래의 모든 항목과 일치하므로 `infra`, `infra/`, 및 `infra/**`는 동일하게 작동합니다. 이것은 첫 번째 턴 전에 세션 시작 시 일치할 수 있는 유일한 신호입니다. 최대 10개 패턴, 각각 256자입니다. |

84| `cli` | array of strings | Claude가 이 세션에서 실행한 셸 명령의 명령 이름입니다. 예를 들어 `["stripe"]`입니다. 모든 플랫폼에 적용됩니다. Windows에서 PowerShell 또는 Git Bash를 통해 실행된 명령은 동일한 방식으로 기록됩니다. Claude Code는 셸 도구 호출당 하나의 명령 이름을 기록합니다. 선행 환경 변수 할당 및 `sudo` 이후의 첫 번째 토큰입니다. 복합 명령은 선행 명령만 기여하므로 `cd infra && terraform plan`은 `cd`를 기록하며 `terraform`은 기록하지 않습니다. 정확한 일치입니다. 최대 10개 항목, 각각 64자입니다. |

85| `hosts` | array of strings | 이 세션의 Bash 명령에서 `http://` 또는 `https://` URL에서 본 호스트 이름입니다. 예를 들어 `["api.stripe.com"]`입니다. 스키마, 포트 또는 경로 없이 베어 소문자 호스트 이름만 해당합니다. 정확한 대소문자를 구분하지 않는 일치입니다. 최대 20개 항목, 각각 128자입니다. |

86| `filesRead` | array of strings | {/* min-version: 2.1.153 */}Claude가 이 세션에서 읽은 파일의 경로에 대해 일치하는 Glob 패턴입니다. 예를 들어 `["**/*.tf"]`입니다. 정방향 슬래시로 정규화되고 대소문자를 구분하지 않습니다. 최대 10개 패턴, 각각 256자입니다. |

87| `manifestDeps` | array of objects | Claude가 이 세션에서 읽은 패키지 매니페스트에 선언된 종속성입니다. 각 항목은 `{ "file": "...", "pattern": "..." }`이며, 여기서 `file`은 세션 상태에 기록된 매니페스트 파일의 경로(일반적으로 절대 경로)에 대해 일치하는 정규식이고 `pattern`은 해당 파일의 내용에 대해 일치하는 정규식입니다. 절대 경로와 일치하지 않는 시작 앵커 패턴이므로 `file`을 끝에 앵커합니다. 예를 들어 JSON 이스케이프 형식의 `[/\\\\]package\\.json$`입니다. 경로는 이 신호에 대해 구분자로 정규화되지 않으므로 Windows 경로는 백슬래시를 사용합니다. 512 KB보다 큰 매니페스트 파일은 건너뜁니다. 두 값 모두 최대 256자의 JavaScript `RegExp` 소스 문자열입니다. `file`은 대소문자를 구분하지 않게 일치합니다. `pattern`은 대소문자를 구분합니다. 최대 10개 항목입니다. |

88 

89`cli`, `hosts`, `filesRead`, 및 `manifestDeps` 신호는 세션 기록이 필요하므로 스피너 팁과 발견 탭에서만 일치할 수 있습니다. 세션 시작 시에는 `cwd`만 일치할 수 있습니다. `filesRead` 및 `manifestDeps` 신호는 세션의 기록된 파일 상태를 테스트합니다. 여기에는 Claude가 작성하거나 편집한 파일과 자동 로드된 `CLAUDE.md` 메모리 파일도 포함됩니다.

90 

91다음 예제는 `manifestDeps`를 사용하여 Claude가 `stripe`에 의존하는 `package.json`을 읽은 후 Stripe 플러그인을 제안합니다. `file` 패턴은 `[/\\\\]`를 사용하므로 정방향 슬래시와 백슬래시 경로 구분자 모두와 일치하며 `\\.`는 점이 리터럴임을 의미합니다. JSON에서 정규식의 각 백슬래시는 두 번 작성됩니다.

92 

93```json theme={null}

94{

95 "name": "stripe-helpers",

96 "source": "./plugins/stripe-helpers",

97 "relevance": {

98 "topic": "Stripe",

99 "signals": {

100 "manifestDeps": [

101 {

102 "file": "[/\\\\]package\\.json$",

103 "pattern": "\"stripe\"\\s*:"

104 }

105 ]

106 }

107 }

108}

109```

110 

111<Note>

112 `relevance` 및 `relevance.signals` 아래의 알 수 없는 필드는 로드 시 무시되므로 이전 Claude Code 클라이언트는 마켓플레이스를 계속 로드합니다. `claude plugin validate`를 실행하여 경고로 표시합니다.

113</Note>

114 

115<h2 id="enable-suggestions-in-managed-settings">

116 관리 설정에서 제안 활성화

117</h2>

118 

119`marketplace.json`에서 `relevance`를 선언하는 것만으로는 충분하지 않습니다. 관리자는 제안이 사용자에게 나타나기 전에 [관리 설정](/ko/settings#settings-files)에서 마켓플레이스를 허용 목록에 추가해야 합니다.

120 

121마켓플레이스 이름을 `pluginSuggestionMarketplaces`에 추가합니다. 공식 Anthropic 마켓플레이스 이외의 마켓플레이스의 경우 동일한 관리 설정에서 마켓플레이스 소스를 선언합니다. 이는 해당 이름의 `extraKnownMarketplaces` 항목 또는 `strictKnownMarketplaces`의 항목으로 선언합니다. 허용 목록에 추가된 이름은 마켓플레이스가 다른 소스에서 등록된 경우 무시됩니다. 이는 관련 없는 소스가 허용 목록에 추가된 이름으로 등록되어 조직 전체에서 플러그인이 제안되는 것을 방지합니다.

122 

123다음 `managed-settings.json`은 GitHub 저장소에서 조직 마켓플레이스를 등록하고 제안을 활성화합니다.

124 

125```json theme={null}

126{

127 "extraKnownMarketplaces": {

128 "acme-corp-plugins": {

129 "source": {

130 "source": "github",

131 "repo": "acme-corp/claude-plugins"

132 }

133 }

134 },

135 "pluginSuggestionMarketplaces": ["acme-corp-plugins"]

136}

137```

138 

139공식 마켓플레이스는 소스 선언 요구 사항에서 제외됩니다. 이름은 공식 Anthropic 소스에서만 등록할 수 있기 때문입니다. 이름만 허용 목록에 추가하는 것으로 충분합니다.

140 

141```json theme={null}

142{

143 "pluginSuggestionMarketplaces": ["claude-plugins-official"]

144}

145```

146 

147전체 구성 세부 정보는 [설정 참조](/ko/settings)에서 `pluginSuggestionMarketplaces` 및 [`extraKnownMarketplaces`](/ko/settings#extraknownmarketplaces)를 참조하세요.

148 

149<h2 id="what-the-user-sees">

150 사용자가 보는 것

151</h2>

152 

153신호가 세션 중에 일치하면 스피너 팁은 다음과 같이 읽습니다.

154 

155```text theme={null}

156Working with Terraform? Install the terraform-helpers plugin:

157/plugin install terraform-helpers@acme-corp-plugins

158```

159 

160세션 시작 시 일치하는 `cwd` 신호는 한 줄의 알림을 표시합니다.

161 

162```text theme={null}

163plugin suggestion: terraform-helpers@acme-corp-plugins · /plugin

164```

165 

166주어진 플러그인의 제안은 스피너 팁과 세션 시작 알림을 합쳐서 최대 3개 세션마다 한 번씩 나타나며, 플러그인이 설치되면 둘 다 반복되지 않습니다. 세션 시작 알림은 제안이 두 번 표시된 후 나타나지 않습니다.

167 

168{/* min-version: 2.1.154 */}`/plugin` 발견 탭에서 플러그인은 다른 결과 위에 고정되며 `suggested for this directory` 또는 `suggested for terraform commands`와 같이 일치하는 신호의 이름을 지정하는 주석이 표시됩니다. 발견 탭은 주어진 플러그인을 한 번 고정합니다. 이후 방문은 정상 순서로 나열합니다. 발견 탭 핀은 Claude Code v2.1.154 이상이 필요합니다. v2.1.152에서는 스피너 팁만 나타나며 세션 시작 알림은 v2.1.153에서 추가됩니다.

169 

170<h2 id="validate-your-marketplace">

171 마켓플레이스 검증

172</h2>

173 

174마켓플레이스 디렉터리에 대해 `claude plugin validate`를 실행하여 게시하기 전에 `relevance` 블록을 확인합니다.

175 

176```

177claude plugin validate ./my-marketplace

178```

179 

180검증자는 `relevance` 및 `relevance.signals` 아래의 알 수 없는 키를 경고로 보고하고, 객체가 아닌 `relevance` 값을 플래그하며, 스키마, 포트 또는 경로를 포함하는 `signals.hosts` 항목을 거부합니다.

181 

182<h2 id="see-also">

183 참고 항목

184</h2>

185 

186* [플러그인 마켓플레이스 생성 및 배포](/ko/plugin-marketplaces): 플러그인을 호스팅하는 마켓플레이스를 구축합니다.

187* [CLI에서 플러그인 추천](/ko/plugin-hints): Claude Code의 세션 신호 대신 자신의 CLI에서 사용자에게 메시지를 표시합니다.

188* [설정](/ko/settings): `pluginSuggestionMarketplaces` 및 `extraKnownMarketplaces`에 대한 전체 참조입니다.

prompt-library.md +1319 −0

Details

6 6 

7> Claude Code에 복사하여 붙여넣을 수 있는 프롬프트 모음으로, 작업과 역할별로 태그가 지정되어 있습니다.7> Claude Code에 복사하여 붙여넣을 수 있는 프롬프트 모음으로, 작업과 역할별로 태그가 지정되어 있습니다.

8 8 

9export const PromptLibrary = ({text = {}, labels = {}, tagLabels = {}, phaseLabels = {}, sourceLabels = {}, catLabels = {}}) => {

10 const RAW = useMemo(() => [{

11 id: 'get-oriented-in-a',

12 sdlc: 'discover',

13 cat: 'Onboard',

14 startN: 1,

15 roles: [],

16 prompt: 'give me an overview of this codebase: architecture, key directories, and how the pieces connect',

17 nextHref: '/en/memory',

18 src: 'workflows'

19 }, {

20 id: 'explain-unfamiliar-code',

21 sdlc: 'discover',

22 cat: 'Understand',

23 roles: [],

24 prompt: 'explain what {path} does and how data flows through it. write it up as {format}',

25 slots: {

26 path: 'src/scheduler/queue.ts',

27 format: 'an HTML page with a diagram, then open it in my browser'

28 },

29 nextHref: '/en/output-styles',

30 src: 'workflows'

31 }, {

32 id: 'find-where-something-happens',

33 sdlc: 'discover',

34 cat: 'Understand',

35 startN: 2,

36 roles: [],

37 prompt: 'where do we {behavior}?',

38 slots: {

39 behavior: 'validate uploaded file types'

40 },

41 src: 'workflows'

42 }, {

43 id: 'see-what-depends-on',

44 sdlc: 'discover',

45 cat: 'Understand',

46 roles: [],

47 prompt: 'what would break if I deleted {target}?',

48 slots: {

49 target: 'the retryWithBackoff helper'

50 },

51 src: 'workflows'

52 }, {

53 id: 'trace-how-code-evolved',

54 sdlc: 'discover',

55 cat: 'Understand',

56 roles: [],

57 prompt: 'look through the commit history of {path} and summarize how it evolved and why',

58 slots: {

59 path: 'internal/auth/session.go'

60 },

61 src: 'best-practices'

62 }, {

63 id: 'scope-a-change-before',

64 sdlc: 'discover',

65 cat: 'Understand',

66 roles: ['pm', 'design'],

67 prompt: 'which files would I need to touch to {change}?',

68 slots: {

69 change: 'add a dark mode toggle to settings'

70 },

71 src: 'teams'

72 }, {

73 id: 'ask-the-codebase-a',

74 sdlc: 'discover',

75 cat: 'Understand',

76 roles: ['pm'],

77 prompt: 'I am a {role}. walk me through what happens when a user {action}, from the UI down to the result',

78 slots: {

79 role: 'PM',

80 action: 'clicks Export to PDF'

81 },

82 nextHref: '/en/output-styles',

83 src: 'teams'

84 }, {

85 id: 'plan-a-multi-file',

86 sdlc: 'design',

87 cat: 'Plan',

88 roles: ['pm', 'design'],

89 prompt: 'plan how to refactor the {target} to {goal}. list the files you would change, but don\'t edit anything yet',

90 slots: {

91 target: 'payment module',

92 goal: 'support multiple currencies'

93 },

94 src: 'workflows'

95 }, {

96 id: 'draft-a-spec-by',

97 sdlc: 'design',

98 cat: 'Plan',

99 roles: ['pm'],

100 prompt: 'I want to build {feature}. interview me about implementation, UX, edge cases, and tradeoffs until we have covered everything, then write the spec to SPEC.md',

101 slots: {

102 feature: 'per-workspace rate limits'

103 },

104 nextHref: '/en/skills',

105 src: 'best-practices'

106 }, {

107 id: 'turn-a-meeting-into',

108 sdlc: 'design',

109 cat: 'Plan',

110 roles: ['pm'],

111 prompt: 'read {input} and write up the action items, then create a {tracker} ticket for each with acceptance criteria',

112 slots: {

113 input: '@meeting-notes.md',

114 tracker: 'Linear'

115 },

116 needs: 'tracker',

117 nextHref: '/en/skills',

118 src: 'teams'

119 }, {

120 id: 'map-edge-cases-before',

121 sdlc: 'design',

122 cat: 'Plan',

123 roles: ['design', 'pm'],

124 prompt: 'list the error states, empty states, and edge cases for {feature} that the design needs to cover',

125 slots: {

126 feature: 'the file upload flow'

127 },

128 src: 'teams'

129 }, {

130 id: 'turn-a-mockup-into',

131 sdlc: 'design',

132 cat: 'Prototype',

133 roles: ['design', 'pm', 'marketing'],

134 paste: 'mockup',

135 prompt: 'here is a mockup. build a working prototype I can click through, matching the layout and states shown',

136 src: 'teams'

137 }, {

138 id: 'implement-from-a-screenshot',

139 sdlc: 'design',

140 cat: 'Prototype',

141 roles: ['design'],

142 paste: 'design',

143 needs: 'browser',

144 prompt: 'implement this design, then take a screenshot of the result, compare it to the original, and fix any differences',

145 nextHref: '/en/goal',

146 src: 'best-practices'

147 }, {

148 id: 'follow-an-existing-pattern',

149 sdlc: 'build',

150 cat: 'Implement',

151 roles: [],

152 prompt: 'look at how {example} is implemented to understand the pattern, then build {new} the same way',

153 slots: {

154 example: 'the GitHub webhook handler',

155 new: 'a Stripe webhook handler'

156 },

157 nextHref: '/en/memory',

158 src: 'best-practices'

159 }, {

160 id: 'generate-docs-for-code',

161 sdlc: 'build',

162 cat: 'Implement',

163 roles: ['docs'],

164 prompt: 'find {scope} without {format} comments and add them, matching the style already used in the file',

165 slots: {

166 scope: 'the public functions in src/auth/',

167 format: 'JSDoc'

168 },

169 src: 'workflows'

170 }, {

171 id: 'add-a-small-well',

172 sdlc: 'build',

173 cat: 'Implement',

174 roles: [],

175 prompt: 'add a {endpoint} endpoint that returns {payload}',

176 slots: {

177 endpoint: '/health',

178 payload: 'the app version and uptime'

179 },

180 src: 'workflows'

181 }, {

182 id: 'build-a-small-internal',

183 sdlc: 'build',

184 cat: 'Implement',

185 roles: ['pm', 'design', 'marketing', 'docs'],

186 prompt: 'create a {tool} using HTML, CSS, and vanilla JavaScript, then open it in my browser',

187 slots: {

188 tool: 'drag-and-drop Kanban board with three columns'

189 },

190 src: 'teams'

191 }, {

192 id: 'work-an-issue-end',

193 sdlc: 'build',

194 cat: 'Implement',

195 roles: [],

196 prompt: 'read issue #{issue}, implement the fix, and run the tests',

197 slots: {

198 issue: '312'

199 },

200 needs: 'gh',

201 src: 'workflows'

202 }, {

203 id: 'find-and-update-copy',

204 sdlc: 'build',

205 cat: 'Implement',

206 roles: ['design', 'docs', 'marketing'],

207 prompt: 'find every place we say "{copy}" or a close variant, show me each one in context, then update them all to "{new}". leave tests and the changelog alone',

208 slots: {

209 copy: 'Sign up free',

210 new: 'Start free trial'

211 },

212 src: 'teams'

213 }, {

214 id: 'draft-from-past-examples',

215 sdlc: 'build',

216 cat: 'Implement',

217 roles: ['docs', 'marketing', 'pm'],

218 prompt: 'read the {examples} in {folder} to learn the structure and voice, then draft a new one for {topic}',

219 slots: {

220 examples: 'privacy impact assessments',

221 folder: 'legal/pia/',

222 topic: 'the new analytics integration'

223 },

224 nextHref: '/en/skills',

225 src: 'legal'

226 }, {

227 id: 'write-tests-run-them',

228 sdlc: 'build',

229 cat: 'Test',

230 startN: 4,

231 roles: [],

232 prompt: 'write tests for {path}, run them, and fix any failures',

233 slots: {

234 path: 'app/parsers/feed.py'

235 },

236 nextHref: '/en/memory',

237 src: 'workflows'

238 }, {

239 id: 'drive-implementation-from-tests',

240 sdlc: 'build',

241 cat: 'Test',

242 roles: [],

243 prompt: 'write tests for {feature} first, then implement it until they pass',

244 slots: {

245 feature: 'the password reset flow'

246 },

247 src: 'ebook'

248 }, {

249 id: 'fill-gaps-from-a',

250 sdlc: 'build',

251 cat: 'Test',

252 roles: [],

253 prompt: 'read {report} and add tests for the lowest-covered files until each is above {target}%',

254 slots: {

255 report: 'coverage/coverage-summary.json',

256 target: '80'

257 },

258 nextHref: '/en/goal',

259 src: 'workflows'

260 }, {

261 id: 'migrate-a-pattern-across',

262 sdlc: 'build',

263 cat: 'Refactor',

264 roles: [],

265 prompt: 'migrate everything from {from} to {to}: identify every place that needs to change, then make the changes',

266 slots: {

267 from: 'the old logging API',

268 to: 'the structured logger'

269 },

270 src: 'workflows'

271 }, {

272 id: 'port-code-between-languages',

273 sdlc: 'build',

274 cat: 'Refactor',

275 roles: [],

276 prompt: 'port {source} to {target}, keeping the same {keep}',

277 slots: {

278 source: 'this Python module',

279 target: 'Rust',

280 keep: 'public API and test behavior'

281 },

282 src: 'teams'

283 }, {

284 id: 'optimize-against-a-measurable',

285 sdlc: 'build',

286 cat: 'Refactor',

287 roles: ['data'],

288 prompt: 'optimize {target} to bring {metric} from {current} down to under {goal}',

289 slots: {

290 target: 'the search query',

291 metric: 'p95 latency',

292 current: '2s',

293 goal: '500ms'

294 },

295 nextHref: '/en/goal',

296 src: 'ebook'

297 }, {

298 id: 'fix-a-precise-visual',

299 sdlc: 'build',

300 cat: 'Refactor',

301 roles: ['design'],

302 prompt: 'the {element} extends {amount} beyond the {container} on {viewport}. fix it.',

303 slots: {

304 element: 'login button',

305 amount: '20px',

306 container: 'card border',

307 viewport: 'mobile'

308 },

309 nextHref: '/en/desktop#preview-your-app',

310 src: 'ebook'

311 }, {

312 id: 'review-your-changes-before',

313 sdlc: 'build',

314 cat: 'Review',

315 startN: 5,

316 roles: [],

317 prompt: 'review my uncommitted changes and flag anything that looks risky before I commit',

318 nextHref: '/en/commands',

319 src: 'workflows'

320 }, {

321 id: 'review-a-pull-request',

322 sdlc: 'build',

323 cat: 'Review',

324 roles: [],

325 prompt: 'review PR #{pr} and summarize what changed, then list any concerns',

326 slots: {

327 pr: '247'

328 },

329 needs: 'gh',

330 nextHref: '/en/code-review',

331 src: 'workflows'

332 }, {

333 id: 'review-infrastructure-changes-before',

334 sdlc: 'build',

335 cat: 'Review',

336 roles: ['security', 'ops'],

337 paste: 'plan',

338 prompt: 'here is my Terraform plan output. what is this going to do, and is anything here going to cause problems?',

339 src: 'teams'

340 }, {

341 id: 'run-a-security-review',

342 sdlc: 'build',

343 cat: 'Review',

344 roles: ['security'],

345 prompt: 'use a subagent to review {path} for security issues and report what it finds',

346 slots: {

347 path: 'src/api/'

348 },

349 nextHref: '/en/sub-agents',

350 src: 'best-practices'

351 }, {

352 id: 'review-content-before-sending',

353 sdlc: 'build',

354 cat: 'Review',

355 roles: ['marketing', 'docs'],

356 prompt: 'review {file} for {concerns} and list anything I should fix before it goes to {reviewer}',

357 slots: {

358 file: 'launch-post.md',

359 concerns: 'unsupported claims, missing attributions, and brand-guideline issues',

360 reviewer: 'legal'

361 },

362 nextHref: '/en/skills',

363 src: 'legal'

364 }, {

365 id: 'course-correct-a-wrong',

366 sdlc: 'build',

367 cat: 'Steer',

368 roles: [],

369 prompt: 'that is not right: {feedback}. try a different approach',

370 slots: {

371 feedback: 'the function signature needs to stay backward-compatible'

372 },

373 nextHref: '/en/checkpointing',

374 src: 'best-practices'

375 }, {

376 id: 'narrow-the-scope-of',

377 sdlc: 'build',

378 cat: 'Steer',

379 roles: [],

380 prompt: 'that is too much. keep only the changes to {scope} and undo your other edits',

381 slots: {

382 scope: 'the validation logic in src/forms/'

383 },

384 src: 'best-practices'

385 }, {

386 id: 'turn-a-correction-into',

387 sdlc: 'build',

388 cat: 'Steer',

389 roles: [],

390 prompt: 'you keep {mistake}. add a rule to CLAUDE.md so this stops happening',

391 slots: {

392 mistake: 'using default exports when this project uses named exports'

393 },

394 nextHref: '/en/memory',

395 src: 'best-practices'

396 }, {

397 id: 'resolve-merge-conflicts',

398 sdlc: 'ship',

399 cat: 'Git',

400 roles: [],

401 prompt: 'resolve the merge conflicts in this branch and explain what you kept from each side',

402 src: 'workflows'

403 }, {

404 id: 'commit-with-a-generated',

405 sdlc: 'ship',

406 cat: 'Git',

407 roles: [],

408 prompt: 'commit these changes with a message that summarizes what I did',

409 src: 'workflows'

410 }, {

411 id: 'open-a-pull-request',

412 sdlc: 'ship',

413 cat: 'Git',

414 roles: [],

415 prompt: 'find the {tracker} ticket about {topic} and open a PR that implements it',

416 slots: {

417 tracker: 'Linear',

418 topic: 'the login timeout'

419 },

420 needs: 'tracker',

421 src: 'workflows'

422 }, {

423 id: 'draft-release-notes-from',

424 sdlc: 'ship',

425 cat: 'Release',

426 roles: ['pm', 'docs', 'marketing'],

427 prompt: 'compare {from} to {to} and draft release notes grouped by feature, fix, and breaking change',

428 slots: {

429 from: 'v2.3.0',

430 to: 'v2.4.0'

431 },

432 nextHref: '/en/skills',

433 src: 'workflows'

434 }, {

435 id: 'write-a-ci-workflow',

436 sdlc: 'ship',

437 cat: 'Release',

438 roles: ['ops'],

439 prompt: 'write a GitHub Actions workflow that {steps} on every push to {branch}',

440 slots: {

441 steps: 'runs the tests and deploys to staging',

442 branch: 'main'

443 },

444 src: 'workflows'

445 }, {

446 id: 'find-and-fix-a',

447 sdlc: 'operate',

448 cat: 'Debug',

449 startN: 3,

450 roles: [],

451 prompt: 'the {test} test is failing, find out why and fix it',

452 slots: {

453 test: 'UserAuth'

454 },

455 src: 'workflows'

456 }, {

457 id: 'investigate-a-reported-error',

458 sdlc: 'operate',

459 cat: 'Debug',

460 roles: ['ops'],

461 prompt: 'users are seeing {symptom} on {where}. investigate and tell me what is going on',

462 slots: {

463 symptom: '500 errors',

464 where: '/api/settings'

465 },

466 nextHref: '/en/web-quickstart#pre-fill-sessions',

467 src: 'workflows'

468 }, {

469 id: 'fix-a-build-error',

470 sdlc: 'operate',

471 cat: 'Debug',

472 roles: ['ops'],

473 paste: 'error',

474 prompt: 'here is a build error. fix the root cause and verify the build succeeds',

475 src: 'best-practices'

476 }, {

477 id: 'investigate-a-production-incident',

478 sdlc: 'operate',

479 cat: 'Incident',

480 roles: ['ops', 'security'],

481 prompt: '{symptom}. check the logs, recent deploys, and config changes, then tell me the most likely cause',

482 slots: {

483 symptom: 'the checkout endpoint started returning 500s an hour ago'

484 },

485 nextHref: '/en/mcp',

486 src: 'workflows'

487 }, {

488 id: 'diagnose-from-a-console',

489 sdlc: 'operate',

490 cat: 'Incident',

491 roles: ['ops', 'data'],

492 paste: 'screenshot',

493 prompt: 'here is a screenshot of {console}. walk me through why {resource} is failing and give me the exact commands to fix it',

494 slots: {

495 console: 'the GCP Kubernetes dashboard',

496 resource: 'this pod'

497 },

498 src: 'teams'

499 }, {

500 id: 'query-logs-in-plain',

501 sdlc: 'operate',

502 cat: 'Incident',

503 roles: ['security', 'ops', 'data'],

504 prompt: 'show me all {events} for {scope} over {timeframe}. write the query, run it, and tell me what stands out',

505 slots: {

506 events: 'failed logins',

507 scope: 'the auth service',

508 timeframe: 'the past 24 hours'

509 },

510 needs: 'db',

511 src: 'cybersecurity'

512 }, {

513 id: 'analyze-a-data-file',

514 sdlc: 'operate',

515 cat: 'Data',

516 roles: ['data', 'pm', 'marketing'],

517 paste: 'csv',

518 prompt: 'read {file}, summarize the key patterns, and write the results to {output}',

519 slots: {

520 file: '@reports/q1-signups.csv',

521 output: 'an HTML page with charts, then open it in my browser'

522 },

523 nextHref: '/en/mcp',

524 src: 'teams'

525 }, {

526 id: 'generate-variations-from-performance',

527 sdlc: 'operate',

528 cat: 'Data',

529 roles: ['marketing', 'data'],

530 paste: 'csv',

531 prompt: 'read {file}, find the underperforming {items}, and generate {n} new variations that stay under {limit} characters',

532 slots: {

533 file: '@ads-performance.csv',

534 items: 'headlines',

535 n: '20',

536 limit: '90'

537 },

538 nextHref: '/en/mcp',

539 src: 'teams'

540 }, {

541 id: 'turn-a-recurring-task',

542 sdlc: 'operate',

543 cat: 'Automate',

544 roles: [],

545 prompt: 'create a /{name} skill for this project that {steps}',

546 slots: {

547 name: 'ship',

548 steps: 'runs the linter and tests, then drafts a commit message'

549 },

550 src: 'workflows'

551 }, {

552 id: 'add-a-hook-for',

553 sdlc: 'operate',

554 cat: 'Automate',

555 roles: [],

556 prompt: 'write a hook that {action} after every {event}',

557 slots: {

558 action: 'runs prettier',

559 event: 'edit to a .ts or .tsx file'

560 },

561 src: 'best-practices'

562 }, {

563 id: 'connect-a-tool-with',

564 sdlc: 'operate',

565 cat: 'Automate',

566 roles: [],

567 prompt: 'set up the {server} MCP server so you can read my {data} directly',

568 slots: {

569 server: 'Sentry',

570 data: 'error reports'

571 },

572 src: 'workflows'

573 }, {

574 id: 'capture-what-to-remember',

575 sdlc: 'operate',

576 cat: 'Automate',

577 roles: ['pm', 'docs'],

578 prompt: 'summarize what we did this session and suggest what to add to CLAUDE.md',

579 src: 'teams'

580 }], []);

581 const PROMPTS = useMemo(() => {

582 if (typeof window !== 'undefined') {

583 const rawIds = new Set(RAW.map(p => p.id));

584 RAW.forEach(p => {

585 if (!text[p.id]) console.warn('[prompt-library] no text[] entry for id:', p.id);

586 });

587 Object.keys(text).forEach(k => {

588 if (!rawIds.has(k)) console.warn('[prompt-library] orphaned text[] key:', k);

589 });

590 }

591 return RAW.map(p => ({

592 ...p,

593 title: p.id,

594 teaches: '',

595 ...text[p.id] || ({})

596 }));

597 }, [RAW, text]);

598 const L = labels;

599 const TL = k => tagLabels[k] || k;

600 const CAT_TAG = useMemo(() => ({

601 Onboard: 'understand',

602 Understand: 'understand',

603 Plan: 'plan',

604 Prototype: 'prototype',

605 Implement: 'build',

606 Test: 'test',

607 Refactor: 'refactor',

608 Review: 'review',

609 Steer: 'steer',

610 Git: 'git',

611 Release: 'release',

612 Debug: 'debug',

613 Incident: 'debug',

614 Data: 'data',

615 Automate: 'automate'

616 }), []);

617 const TAGS = useMemo(() => ['understand', 'plan', 'prototype', 'build', 'test', 'refactor', 'review', 'steer', 'debug', 'git', 'release', 'data', 'automate', 'pm', 'design', 'docs', 'marketing', 'security', 'ops'], []);

618 const tagsOf = p => [CAT_TAG[p.cat], ...p.roles || []];

619 const doc = useMemo(() => {

620 const p = typeof window !== 'undefined' ? window.location.pathname : '';

621 const base = p.startsWith('/docs/') ? '/docs' : '';

622 const m = p.slice(base.length).match(/^\/([a-z]{2}(?:-[A-Z]{2})?)\//);

623 const locale = m ? m[1] : 'en';

624 return href => {

625 if (!href || href[0] !== '/' || href[1] === '/') return href;

626 return base + (href.startsWith('/en/') ? '/' + locale + href.slice(3) : href);

627 };

628 }, []);

629 const linkify = s => {

630 const out = [];

631 let last = 0;

632 const re = /\[([^\]]+)\]\(([^)]+)\)/g;

633 for (let m; m = re.exec(s); ) {

634 if (m.index > last) out.push(s.slice(last, m.index));

635 out.push(<a key={m.index} href={doc(m[2])}>{m[1]}</a>);

636 last = re.lastIndex;

637 }

638 if (last < s.length) out.push(s.slice(last));

639 return out;

640 };

641 const codeify = s => s.split(/(`[^`]+`)/g).map((part, i) => part[0] === '`' ? <code key={i}>{part.slice(1, -1)}</code> : part);

642 const SOURCES = useMemo(() => ({

643 'workflows': '/en/common-workflows',

644 'teams': 'https://claude.com/blog/how-anthropic-teams-use-claude-code',

645 'legal': 'https://claude.com/blog/how-anthropic-uses-claude-legal',

646 'cybersecurity': 'https://claude.com/blog/how-anthropic-uses-claude-cybersecurity',

647 'best-practices': '/en/best-practices',

648 'ebook': 'https://resources.anthropic.com/hubfs/Scaling%20agentic%20coding%20across%20your%20organization.pdf'

649 }), []);

650 const [mounted, setMounted] = useState(false);

651 const [q, setQ] = useState('');

652 const [start, setStart] = useState(true);

653 const [sel, setSel] = useState(null);

654 const [openId, setOpenId] = useState(null);

655 const [copied, setCopied] = useState(null);

656 const [fills, setFills] = useState({});

657 const copyTimer = useRef(null);

658 useEffect(() => {

659 setMounted(true);

660 return () => clearTimeout(copyTimer.current);

661 }, []);

662 const setFill = (id, key, val) => setFills(f => ({

663 ...f,

664 [id + '.' + key]: val

665 }));

666 const fillOf = (p, key) => {

667 const v = fills[p.id + '.' + key];

668 return v !== undefined ? v : p.slots && p.slots[key] !== undefined ? p.slots[key] : '';

669 };

670 const assemble = p => p.prompt.replace(/\{(\w+)\}/g, (_, k) => fillOf(p, k) || p.slots && p.slots[k] || k);

671 const preview = p => p.prompt.replace(/\{(\w+)\}/g, (_, k) => p.slots && p.slots[k] || k);

672 const bodyText = p => preview(p) + ' ' + p.teaches.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1') + ' ' + (p.next || '');

673 const widthFor = s => (s || '').length + 3 + 'ch';

674 const ql = q.trim().toLowerCase();

675 const toggleTag = k => {

676 setStart(false);

677 setSel(s => !ql && s === k ? null : k);

678 };

679 const clear = () => {

680 setStart(false);

681 setSel(null);

682 setQ('');

683 };

684 const results = useMemo(() => {

685 const list = PROMPTS.filter(p => {

686 if (ql) return p.title.toLowerCase().includes(ql) || bodyText(p).toLowerCase().includes(ql);

687 if (start) return !!p.startN;

688 if (sel) return tagsOf(p).includes(sel);

689 return true;

690 });

691 if (ql) return list;

692 if (start) return list.sort((a, b) => a.startN - b.startN);

693 if (sel) return list.sort((a, b) => (a.roles || []).length - (b.roles || []).length || (b.sdlc === 'operate') - (a.sdlc === 'operate'));

694 return list;

695 }, [PROMPTS, ql, start, sel]);

696 const matchSnippet = p => {

697 if (!ql || p.title.toLowerCase().includes(ql)) return null;

698 const txt = bodyText(p);

699 const at = txt.toLowerCase().indexOf(ql);

700 if (at < 0) return null;

701 const lo = Math.max(0, at - 30), hi = Math.min(txt.length, at + ql.length + 50);

702 return [lo > 0 ? '…' : '', txt.slice(lo, at), <mark key="m">{txt.slice(at, at + ql.length)}</mark>, txt.slice(at + ql.length, hi), hi < txt.length ? '…' : ''];

703 };

704 const grouped = useMemo(() => {

705 if (start && !q.trim()) return [];

706 const g = {};

707 for (const p of results) {

708 const key = p.sdlc + '|' + p.cat;

709 (g[key] = g[key] || ({

710 sdlc: p.sdlc,

711 cat: p.cat,

712 items: []

713 })).items.push(p);

714 }

715 return Object.values(g);

716 }, [results, start, q]);

717 const copy = async (str, id) => {

718 try {

719 await navigator.clipboard.writeText(str);

720 } catch {

721 const ta = document.createElement('textarea');

722 ta.value = str;

723 ta.setAttribute('readonly', '');

724 ta.style.position = 'fixed';

725 ta.style.opacity = '0';

726 document.body.appendChild(ta);

727 ta.select();

728 document.execCommand('copy');

729 document.body.removeChild(ta);

730 }

731 clearTimeout(copyTimer.current);

732 setCopied(id);

733 copyTimer.current = setTimeout(() => setCopied(null), 1600);

734 };

735 const promptBody = p => {

736 if (!p.slots) return <code>{p.prompt}</code>;

737 const parts = p.prompt.split(/(\{\w+\})/g);

738 return <code>

739 {parts.map((part, idx) => {

740 const m = part.match(/^\{(\w+)\}$/);

741 if (!m) return <span key={idx}>{part}</span>;

742 const k = m[1];

743 const val = fillOf(p, k);

744 return <input key={idx} type="text" className="pl-slot" value={val} placeholder={p.slots[k] || k} aria-label={k} style={{

745 width: widthFor(val || p.slots[k])

746 }} onChange={e => setFill(p.id, k, e.target.value)} onFocus={e => e.target.select()} onClick={e => e.stopPropagation()} />;

747 })}

748 </code>;

749 };

750 const card = p => {

751 const open = openId === p.id;

752 const srcHref = SOURCES[p.src];

753 const srcLabel = sourceLabels[p.src];

754 const snip = matchSnippet(p);

755 return <div key={p.id} className={'pl-card' + (open ? ' pl-open' : '')}>

756 <button type="button" className="pl-head" onClick={() => setOpenId(open ? null : p.id)} aria-expanded={open}>

757 <span className="pl-title">{p.title}</span>

758 {!!p.startN && <span className="pl-chip">{L.startHere} · {p.startN}</span>}

759 </button>

760 {snip ? <div className="pl-match">{snip}</div> : <code className="pl-prompt-preview">{preview(p)}</code>}

761 {open && <div className="pl-body">

762 <div className="pl-label">{p.slots ? L.fillAndCopy : L.copyThis}</div>

763 {p.needs && L.needs && L.needs[p.needs] && <div className="pl-hint pl-needs">

764 <span className="pl-needs-label">{L.needsLabel}</span> {linkify(L.needs[p.needs])}

765 </div>}

766 {p.paste && L.paste && L.paste[p.paste] && <div className="pl-hint pl-paste">{L.paste[p.paste]}</div>}

767 {p.slots && <div className="pl-hint">

768 {L.hintBefore} <span className="pl-hint-chip">{L.hintChip}</span> {L.hintAfter}

769 </div>}

770 <div className="pl-prompt-box">

771 <span className="pl-caret">{'❯'}</span>

772 {promptBody(p)}

773 <button type="button" className="pl-copy" onClick={() => copy(assemble(p), p.id)}>

774 {copied === p.id ? L.copied : L.copy}

775 </button>

776 </div>

777 <div className="pl-label">{L.whyWorks}</div>

778 <div className="pl-teaches">{linkify(p.teaches)}</div>

779 {p.nextHref && p.next && <div className="pl-next">

780 <span className="pl-next-label">{L.makeItStick}</span>

781 <a href={doc(p.nextHref)}>{codeify(p.next)} →</a>

782 </div>}

783 {srcLabel && <div className="pl-src">{L.from} {srcHref ? <a href={doc(srcHref)}>{srcLabel}</a> : srcLabel}</div>}

784 </div>}

785 </div>;

786 };

787 const STYLES = useMemo(() => `

788.pl {

789 --pl-accent: #D97757;

790 --pl-accent-bg: rgba(217,119,87,0.07);

791 --pl-bg: #fff;

792 --pl-surface: #FAFAF7;

793 --pl-border: #E8E6DC;

794 --pl-border-subtle: rgba(31,30,29,0.08);

795 --pl-text: #141413;

796 --pl-text-2: #5E5D59;

797 --pl-text-3: #73726C;

798 --pl-text-4: #9C9A92;

799 --pl-mono: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);

800 font-family: 'Anthropic Sans', -apple-system, BlinkMacSystemFont, sans-serif;

801 font-size: 16px; color: var(--pl-text); margin: 8px 0 32px;

802}

803.dark .pl {

804 --pl-bg: #1f1e1d;

805 --pl-surface: #262624;

806 --pl-border: #3d3d3a;

807 --pl-border-subtle: rgba(240,238,230,0.08);

808 --pl-text: #f0eee6;

809 --pl-text-2: #bfbdb4;

810 --pl-text-3: #91908a;

811 --pl-text-4: #73726c;

812}

813.pl *, .pl *::before, .pl *::after { box-sizing: border-box; }

814.pl button { font-family: inherit; cursor: pointer; }

815.pl a { color: var(--pl-accent); text-decoration: none; }

816.pl a:hover { text-decoration: underline; }

817 

818.pl-search {

819 display: flex; align-items: center; gap: 10px;

820 padding: 14px 18px; background: var(--pl-surface);

821 border: 1px solid var(--pl-border); border-radius: 12px;

822 margin-bottom: 14px;

823}

824.pl-search input {

825 flex: 1; border: none; outline: none; background: transparent;

826 font-size: 16px; color: var(--pl-text);

827}

828.pl-search input::placeholder { color: var(--pl-text-4); }

829 

830.pl-tags { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 18px; }

831.pl-tag {

832 padding: 7px 14px; border: 1px solid var(--pl-border); background: var(--pl-bg);

833 font-size: 14px; color: var(--pl-text-2); border-radius: 999px;

834}

835.pl-tag:hover { background: var(--pl-surface); }

836.pl-tag.pl-on { background: var(--pl-text); border-color: var(--pl-text); color: var(--pl-bg); }

837.pl-tag.pl-start { color: var(--pl-accent); font-weight: 500; }

838.pl-tag.pl-start.pl-on { background: var(--pl-accent); border-color: var(--pl-accent); color: #fff; }

839.pl-tags.pl-dim .pl-tag { opacity: 0.5; }

840.pl-tags.pl-dim .pl-tag:hover { opacity: 1; }

841.pl-sep { width: 1px; height: 22px; background: var(--pl-border); margin: 0 4px; }

842.pl-clear { border: none; background: none; font-size: 13px; color: var(--pl-text-4); padding: 4px 6px; }

843.pl-clear:hover { color: var(--pl-text-2); }

844.pl-count { margin-left: auto; font-size: 14px; color: var(--pl-text-4); }

845 

846.pl-group-h {

847 font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase;

848 color: var(--pl-text-4); margin: 24px 0 12px;

849}

850.pl-group-h .pl-phase { color: var(--pl-text-3); }

851.pl-card {

852 border: 1px solid var(--pl-border-subtle); border-radius: 10px;

853 margin-bottom: 12px; background: var(--pl-bg); overflow: hidden;

854 padding: 14px 18px;

855}

856.pl-card.pl-open { border-color: var(--pl-border); background: var(--pl-surface); }

857.pl-head {

858 width: 100%; display: flex; align-items: baseline; gap: 12px;

859 border: none; background: transparent; text-align: left; padding: 0;

860}

861.pl-head:focus-visible { outline: 2px solid var(--pl-accent); outline-offset: 2px; border-radius: 6px; }

862.pl-title {

863 flex: 1; font-size: 17px; font-weight: 500; color: var(--pl-text);

864 white-space: nowrap; overflow: hidden; text-overflow: ellipsis;

865}

866.pl-prompt-preview {

867 display: block; font-family: var(--pl-mono); font-size: 13.5px; color: var(--pl-text-3);

868 margin-top: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;

869}

870.pl-chip {

871 font-size: 11px; letter-spacing: 0.05em; text-transform: uppercase;

872 padding: 3px 9px; border-radius: 999px; flex-shrink: 0;

873 background: var(--pl-accent-bg); color: var(--pl-accent);

874}

875 

876.pl-body { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--pl-border-subtle); }

877.pl-label {

878 font-size: 11.5px; letter-spacing: 0.08em; text-transform: uppercase;

879 color: var(--pl-text-4); margin: 12px 0 8px;

880}

881.pl-prompt-box {

882 display: flex; align-items: center; gap: 10px;

883 padding: 14px 16px; background: #141413; color: #f0eee6;

884 border-radius: 8px; font-family: var(--pl-mono); font-size: 15px;

885}

886.pl-caret { color: var(--pl-accent); flex-shrink: 0; }

887.pl-prompt-box code { flex: 1; background: none; padding: 0; color: inherit; white-space: pre-wrap; line-height: 1.9; }

888.pl-slot {

889 font-family: var(--pl-mono); font-size: inherit;

890 background: rgba(217,119,87,0.15); color: #f0eee6;

891 border: none; border-bottom: 1.5px dashed var(--pl-accent);

892 border-radius: 4px 4px 0 0; padding: 2px 6px; margin: 0 1px;

893 outline: none; min-width: 6ch; max-width: 100%;

894 box-sizing: content-box; cursor: text;

895}

896.pl-slot:hover { background: rgba(217,119,87,0.22); }

897.pl-slot:focus { background: rgba(217,119,87,0.28); border-bottom-style: solid; }

898.pl-slot::placeholder { color: rgba(240,238,230,0.4); font-style: italic; }

899.pl-hint { font-size: 14px; color: var(--pl-text-3); margin: 0 0 10px; }

900.pl-paste { color: var(--pl-text-2); }

901.pl-needs { color: var(--pl-text-2); }

902.pl-needs-label {

903 display: inline-block; font-size: 10.5px; letter-spacing: 0.06em;

904 text-transform: uppercase; padding: 2px 7px; margin-right: 6px;

905 border-radius: 4px; background: var(--pl-accent-bg); color: var(--pl-accent);

906}

907.pl-hint-chip {

908 font-family: var(--pl-mono); font-size: 0.92em;

909 background: var(--pl-accent-bg); color: var(--pl-accent);

910 border-bottom: 1.5px dashed var(--pl-accent);

911 border-radius: 3px 3px 0 0; padding: 1px 5px;

912}

913.pl-copy {

914 font-size: 12.5px; padding: 6px 12px; border-radius: 6px;

915 background: var(--pl-accent); color: #fff; border: none; flex-shrink: 0;

916}

917.pl-teaches { display: block; font-size: 15.5px; color: var(--pl-text-2); margin: 4px 0 0; line-height: 1.6; }

918.pl-match {

919 display: block; font-size: 13.5px; color: var(--pl-text-3);

920 margin-top: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;

921}

922.pl-match mark { background: var(--pl-accent-bg); color: var(--pl-text); padding: 1px 2px; border-radius: 3px; }

923.pl-next {

924 display: flex; align-items: baseline; gap: 10px;

925 margin: 14px 0 0; padding: 10px 12px;

926 background: var(--pl-accent-bg); border-radius: 8px; font-size: 14.5px;

927}

928.pl-next-label {

929 font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase;

930 color: var(--pl-accent); font-weight: 600; flex-shrink: 0;

931}

932.pl-src { display: block; font-size: 14px; color: var(--pl-text-4); margin: 14px 0 0; }

933 

934.pl-show-all {

935 display: block; width: 100%; padding: 14px; margin-top: 4px;

936 border: 1px dashed var(--pl-border); border-radius: 10px;

937 background: transparent; font-size: 15px; color: var(--pl-accent);

938 text-align: center;

939}

940.pl-show-all:hover { background: var(--pl-accent-bg); border-style: solid; }

941 

942.pl-empty {

943 padding: 32px; text-align: center; color: var(--pl-text-4);

944 border: 1px dashed var(--pl-border); border-radius: 10px;

945}

946`, []);

947 if (!mounted) return <div className="pl" style={{

948 minHeight: 480

949 }} />;

950 return <div className="pl">

951 <style>{STYLES}</style>

952 

953 <div className="pl-search">

954 <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" style={{

955 color: 'var(--pl-text-4)'

956 }}>

957 <circle cx="11" cy="11" r="7" /><line x1="21" y1="21" x2="16.65" y2="16.65" />

958 </svg>

959 <input type="text" placeholder={L.search} value={q} onChange={e => {

960 setQ(e.target.value);

961 if (e.target.value) setStart(false);

962 }} aria-label={L.search} />

963 </div>

964 

965 <div className={'pl-tags' + (ql ? ' pl-dim' : '')}>

966 <button type="button" className={'pl-tag pl-start' + (!ql && start ? ' pl-on' : '')} onClick={() => {

967 setQ('');

968 setStart(!start);

969 if (!start) setSel(null);

970 }}>

971 ★ {L.startHere}

972 </button>

973 <span className="pl-sep" />

974 {TAGS.map(k => <button key={k} type="button" aria-pressed={!ql && sel === k} className={'pl-tag' + (!ql && sel === k ? ' pl-on' : '')} onClick={() => {

975 setQ('');

976 toggleTag(k);

977 }}>

978 {TL(k)}

979 </button>)}

980 {(start || sel || q) && <button type="button" className="pl-clear" onClick={clear}>{L.clear}</button>}

981 <span className="pl-count">{results.length} {results.length === 1 ? L.prompt : L.prompts}</span>

982 </div>

983 

984 {results.length === 0 ? <div className="pl-empty">

985 {L.noMatch} {ql ? <code>{q}</code> : null} <button type="button" className="pl-clear" onClick={clear}>{L.clear}</button>

986 </div> : !ql && start ? <div>

987 <div className="pl-group-h">{L.startHereHeader}</div>

988 {results.map(card)}

989 <button type="button" className="pl-show-all" onClick={clear}>

990 {L.showAll && L.showAll.replace('{n}', PROMPTS.length)} →

991 </button>

992 </div> : grouped.map(g => <div key={g.sdlc + '|' + g.cat}>

993 <div className="pl-group-h"><span className="pl-phase">{phaseLabels[g.sdlc] || g.sdlc}</span> · {catLabels[g.cat] || g.cat}</div>

994 {g.items.map(card)}

995 </div>)}

996 </div>;

997};

998 

9이것은 Claude Code에 복사하여 붙여넣을 수 있는 프롬프트 라이브러리입니다. 이를 사용하여 아직 시도하지 않은 작업 방식을 탐색하거나 어디서부터 시작해야 할지 확실하지 않을 때 활용하십시오.999이것은 Claude Code에 복사하여 붙여넣을 수 있는 프롬프트 라이브러리입니다. 이를 사용하여 아직 시도하지 않은 작업 방식을 탐색하거나 어디서부터 시작해야 할지 확실하지 않을 때 활용하십시오.

10 1000 

11프롬프트는 [일반적인 워크플로우](/ko/common-workflows), [모범 사례](/ko/best-practices), [Anthropic 팀이 Claude Code를 사용하는 방법](https://claude.com/blog/how-anthropic-teams-use-claude-code)을 포함한 다양한 Anthropic 가이드에서 수집되었습니다. 이들은 스크립트가 아닌 시작점입니다. 모든 프롬프트 아래의 **이것이 작동하는 이유**를 열어 패턴을 확인하면 자신만의 프롬프트를 작성할 수 있습니다.1001프롬프트는 [일반적인 워크플로우](/ko/common-workflows), [모범 사례](/ko/best-practices), [Anthropic 팀이 Claude Code를 사용하는 방법](https://claude.com/blog/how-anthropic-teams-use-claude-code)을 포함한 다양한 Anthropic 가이드에서 수집되었습니다. 이들은 스크립트가 아닌 시작점입니다. 모든 프롬프트 아래의 **이것이 작동하는 이유**를 열어 패턴을 확인하면 자신만의 프롬프트를 작성할 수 있습니다.

12 1002 

1003export const labels = {

1004 startHere: "여기서 시작",

1005 startHereHeader: "먼저 시도할 다섯 가지 프롬프트",

1006 showAll: "{n}개의 모든 프롬프트 표시",

1007 search: "프롬프트 검색…",

1008 clear: "지우기",

1009 prompt: "프롬프트",

1010 prompts: "프롬프트",

1011 noMatch: "일치하는 프롬프트 없음",

1012 fillAndCopy: "입력하고 복사",

1013 copyThis: "이 프롬프트 복사",

1014 hintBefore: "입력",

1015 hintChip: "강조된",

1016 hintAfter: "필드를 입력하여 사용자 정의한 후 복사하십시오.",

1017 copy: "복사",

1018 copied: "복사됨",

1019 whyWorks: "이것이 작동하는 이유",

1020 makeItStick: "기억하기",

1021 from: "출처",

1022 paste: {

1023 mockup: "목업 이미지를 붙여넣거나, 드래그하거나, @-멘션한 후 다음을 전송하십시오:",

1024 design: "디자인 이미지를 붙여넣거나, 드래그하거나, @-멘션한 후 다음을 전송하십시오:",

1025 screenshot: "스크린샷을 붙여넣거나, 드래그하거나, @-멘션한 후 다음을 전송하십시오:",

1026 plan: "계획 출력을 먼저 프롬프트에 붙여넣은 후 다음을 전송하십시오:",

1027 error: "오류 출력을 먼저 프롬프트에 붙여넣은 후 다음을 전송하십시오:",

1028 csv: "파일을 프롬프트로 드래그하거나, 아래 경로를 자신의 @-멘션으로 바꾸십시오:"

1029 },

1030 needsLabel: "필요",

1031 needs: {

1032 tracker: "이슈 추적기가 [claude.ai 커넥터](/ko/mcp#use-mcp-servers-from-claude-ai) 또는 [MCP 서버](/ko/mcp)로 추가됨.",

1033 gh: "[gh CLI](https://cli.github.com)가 인증되었거나 GitHub이 [claude.ai 커넥터](/ko/mcp#use-mcp-servers-from-claude-ai)로 추가됨.",

1034 browser: "Claude가 결과를 렌더링하고 스크린샷을 찍을 수 있는 방법. [데스크톱 앱](/ko/desktop#preview-your-app)에는 이 기능이 내장되어 있습니다. 터미널에서 [Chrome 확장 프로그램](/ko/chrome)이나 Playwright [MCP](/ko/mcp) 서버를 설치하십시오.",

1035 db: "데이터 웨어하우스 또는 로그 저장소가 [claude.ai 커넥터](/ko/mcp#use-mcp-servers-from-claude-ai) 또는 [MCP 서버](/ko/mcp)로 추가됨."

1036 }

1037};

1038 

1039export const tagLabels = {

1040 understand: "이해",

1041 plan: "계획",

1042 prototype: "프로토타입",

1043 build: "구축",

1044 test: "테스트",

1045 refactor: "리팩토링",

1046 review: "검토",

1047 steer: "조정",

1048 debug: "디버깅",

1049 git: "Git",

1050 release: "릴리스",

1051 data: "데이터",

1052 automate: "자동화",

1053 pm: "제품",

1054 design: "디자인",

1055 docs: "문서",

1056 marketing: "마케팅",

1057 security: "보안",

1058 ops: "온콜"

1059};

1060 

1061export const phaseLabels = {

1062 discover: "발견",

1063 design: "디자인",

1064 build: "구축",

1065 ship: "배포",

1066 operate: "운영"

1067};

1068 

1069export const sourceLabels = {

1070 workflows: "일반적인 워크플로우",

1071 teams: "Anthropic 팀이 Claude Code를 사용하는 방법",

1072 legal: "Anthropic이 법률 분야에서 Claude를 사용하는 방법",

1073 cybersecurity: "Anthropic이 사이버보안 분야에서 Claude를 사용하는 방법",

1074 "best-practices": "모범 사례",

1075 ebook: "에이전트 코딩 확장 가이드"

1076};

1077 

1078export const catLabels = {

1079 Onboard: "온보드",

1080 Understand: "이해",

1081 Plan: "계획",

1082 Prototype: "프로토타입",

1083 Implement: "구현",

1084 Test: "테스트",

1085 Refactor: "리팩토링",

1086 Review: "검토",

1087 Steer: "조정",

1088 Git: "Git",

1089 Release: "릴리스",

1090 Debug: "디버깅",

1091 Incident: "인시던트",

1092 Data: "데이터",

1093 Automate: "자동화"

1094};

1095 

1096export const text = {

1097 "get-oriented-in-a": {

1098 title: "새로운 저장소에서 방향 잡기",

1099 teaches: "읽을 파일을 지정하지 말고 알고 싶은 것을 설명하십시오. Claude가 프로젝트를 자체적으로 탐색하고 어떻게 함께 작동하는지에 대한 요약을 반환합니다.",

1100 next: "`/init`를 실행하여 `CLAUDE.md`를 설정하면 Claude가 매 세션마다 이를 기억합니다"

1101 },

1102 "explain-unfamiliar-code": {

1103 title: "낯선 코드 설명",

1104 teaches: "파일 이름을 지정하고 답변을 원하는 형식을 말하십시오. HTML 페이지를 다이어그램, 글머리 기호 또는 학습 방식에 맞는 형식으로 바꾸십시오.",

1105 next: "출력 스타일을 설정하면 Claude가 항상 선호하는 형식으로 설명합니다"

1106 },

1107 "find-where-something-happens": {

1108 title: "무언가가 발생하는 위치 찾기",

1109 teaches: "파일 이름으로 검색하지 말고 동작으로 검색하십시오. 파일 이름이나 디렉토리를 모르더라도 검색이 작동합니다."

1110 },

1111 "see-what-depends-on": {

1112 title: "삭제하기 전에 무엇이 깨지는지 확인",

1113 teaches: "무언가를 제거하기 전에 물어보십시오. 호출자 목록과 다운스트림 영향은 한 줄 정리인지 아니면 조정이 필요한 변경인지를 알려줍니다."

1114 },

1115 "trace-how-code-evolved": {

1116 title: "코드가 어떻게 진화했는지 추적",

1117 teaches: "무엇이 아닌 왜에 대한 질문일 때 커밋 히스토리를 지적하십시오. Claude가 사용 중인 모든 버전 제어 시스템의 로그와 blame을 읽고 현재 구현 뒤의 결정을 설명합니다."

1118 },

1119 "scope-a-change-before": {

1120 title: "시작하기 전에 변경 범위 지정",

1121 teaches: "로드맵에 커밋하기 전에 작업 규모를 파악하십시오. 파일 목록은 단일 구성 요소인지 아니면 교차 절단 변경인지를 알려줍니다."

1122 },

1123 "ask-the-codebase-a": {

1124 title: "코드베이스에 제품 질문 하기",

1125 teaches: "역할을 명시하면 답변이 적절한 수준으로 제시됩니다. Claude가 소스 코드에서 제품이 실제로 무엇을 하는지 설명하므로 읽을 필요가 없습니다.",

1126 next: "출력 스타일을 설정하면 Claude가 항상 이 수준으로 답변을 제시합니다"

1127 },

1128 "plan-a-multi-file": {

1129 title: "코드를 건드리기 전에 다중 파일 변경 계획",

1130 teaches: "\"아직 편집하지 마\"를 추가하면 탐색과 변경이 분리되므로 코드가 움직이기 전에 접근 방식을 볼 수 있습니다. 모든 프롬프트에서 계획 우선을 기본값으로 만들려면 Shift+Tab을 눌러 [계획 모드](/ko/permission-modes#analyze-before-you-edit-with-plan-mode)를 사용하십시오."

1131 },

1132 "draft-a-spec-by": {

1133 title: "인터뷰로 사양 작성",

1134 teaches: "사양을 직접 작성하는 대신 인터뷰를 요청하십시오. Claude가 요구 사항이 완료될 때까지 구조화된 질문을 하고 결과를 파일에 작성합니다.",

1135 next: "인터뷰 질문을 `/spec` 스킬로 저장하면 모든 사양이 같은 방식으로 시작됩니다"

1136 },

1137 "turn-a-meeting-into": {

1138 title: "회의를 티켓으로 변환",

1139 teaches: "필사 단계를 건너뛰십시오. Claude가 구조화되지 않은 입력에서 작업 항목을 추출하고 [MCP](/ko/mcp)를 통해 추적기에 직접 작성하므로 필사본이 아닌 티켓을 검토합니다.",

1140 next: "이를 `/tickets` 스킬로 저장하십시오"

1141 },

1142 "map-edge-cases-before": {

1143 title: "구축하기 전에 엣지 케이스 매핑",

1144 teaches: "있는 것이 아닌 없는 것을 물어보십시오. Claude가 행복한 경로 디자인이 건너뛰는 오류 상태, 빈 상태 및 엣지 케이스를 나열합니다."

1145 },

1146 "turn-a-mockup-into": {

1147 title: "목업을 작동하는 프로토타입으로 변환",

1148 teaches: "클릭 가능한 프로토타입은 정적 목업이 답할 수 없는 질문에 답합니다. 문서에서 상호 작용을 설명하는 대신 작동하는 코드를 엔지니어링에 전달하십시오."

1149 },

1150 "implement-from-a-screenshot": {

1151 title: "스크린샷에서 구현하고 자체 확인",

1152 teaches: "이것은 Claude에 검증 루프를 제공합니다. 렌더링하고, 소스 이미지와 비교하고, 각 간격을 지적할 필요 없이 반복합니다.",

1153 next: "스크린샷이 일치할 때까지 Claude가 반복하도록 `/goal`을 사용하십시오"

1154 },

1155 "follow-an-existing-pattern": {

1156 title: "기존 패턴 따르기",

1157 teaches: "이미 좋아하는 코드를 지적하십시오. 참조가 없으면 Claude는 일반적인 모범 사례로 기본값을 설정합니다. 참조가 있으면 코드베이스가 실제로 사용하는 규칙과 일치합니다.",

1158 next: "Claude가 따른 패턴을 `CLAUDE.md`에 작성하도록 요청하면 향후 세션이 참조 없이 일치합니다"

1159 },

1160 "add-a-small-well": {

1161 title: "작고 잘 정의된 기능 추가",

1162 teaches: "구축 방법이 아닌 입력과 출력을 명시하십시오. Claude가 유사한 코드가 있는 위치를 찾고 옆에 추가합니다."

1163 },

1164 "build-a-small-internal": {

1165 title: "처음부터 작은 내부 도구 구축",

1166 teaches: "프로젝트, 프레임워크 또는 빌드 단계가 필요하지 않습니다. 도구를 설명하고 Claude에 열도록 요청하면 즉시 작동하는 것을 볼 수 있습니다."

1167 },

1168 "work-an-issue-end": {

1169 title: "이슈를 끝까지 처리",

1170 teaches: "요약이 아닌 이슈 번호를 제공하십시오. Claude가 전체 티켓을 읽으므로 언급하기를 잊을 요구 사항이 포함되고 변경을 검증한 후 보고합니다."

1171 },

1172 "find-and-update-copy": {

1173 title: "코드베이스 전체에서 복사본 찾기 및 업데이트",

1174 teaches: "변형을 요청하고 건너뛸 항목을 말하십시오. Claude가 문자 검색이 놓칠 표현을 찾고 테스트 픽스처와 히스토리는 건드리지 않으므로 사용자가 실제로 보는 복사본만 검토합니다."

1175 },

1176 "draft-from-past-examples": {

1177 title: "과거 예제에서 문서 작성",

1178 teaches: "스타일을 설명하는 대신 완성된 작업 폴더를 지적하십시오. Claude가 이미 배포한 것에서 구조와 음성을 학습하므로 첫 번째 초안이 당신의 것처럼 읽힙니다.",

1179 next: "음성을 스킬로 저장하면 모든 초안이 거기서 시작됩니다"

1180 },

1181 "write-tests-run-them": {

1182 title: "테스트 작성, 실행, 실패 수정",

1183 teaches: "쓰기, 실행, 수정을 함께 요청하면 Claude가 지시를 기다리지 않고 반복합니다.",

1184 next: "Claude가 테스트 명령을 자동으로 학습하도록 `/init`를 실행하십시오"

1185 },

1186 "drive-implementation-from-tests": {

1187 title: "테스트에서 구현 주도",

1188 teaches: "테스트 주도 개발: 테스트가 작업이 완료되는 시점을 정의하고 Claude가 통과할 때까지 구현을 반복합니다."

1189 },

1190 "fill-gaps-from-a": {

1191 title: "커버리지 보고서에서 간격 채우기",

1192 teaches: "추측하는 대신 커버리지 보고서를 지적하십시오. Claude가 실제 숫자를 읽고 가장 필요한 파일에 대한 테스트를 작성합니다.",

1193 next: "이를 `/goal`로 설정하면 Claude가 커버리지가 목표에 도달할 때까지 테스트를 계속 작성합니다"

1194 },

1195 "port-code-between-languages": {

1196 title: "코드를 다른 언어로 포팅",

1197 teaches: "대상 언어만이 아닌 보존할 항목을 말하십시오. 유지해야 하는 API 또는 동작의 이름을 지정하면 Claude가 포트를 확인할 계약을 제공합니다."

1198 },

1199 "generate-docs-for-code": {

1200 title: "문서화되지 않은 코드에 대한 문서 생성",

1201 teaches: "범위와 형식을 지정하십시오. Claude가 누락된 항목을 찾고 파일에 이미 있는 주석 스타일과 일치하므로 새 문서가 나머지처럼 읽힙니다."

1202 },

1203 "migrate-a-pattern-across": {

1204 title: "코드베이스 전체에서 패턴 마이그레이션",

1205 teaches: "이전 패턴과 새 패턴을 설명하십시오. Claude에 먼저 모든 위치를 식별하도록 요청하면 호출 사이트가 응답에 나열되므로 놓친 것이 없는지 확인할 수 있습니다."

1206 },

1207 "optimize-against-a-measurable": {

1208 title: "측정 가능한 목표에 대해 최적화",

1209 teaches: "메트릭과 목표를 명시하면 Claude에 명확한 완료 정의를 제공합니다.",

1210 next: "이를 `/goal`로 설정하면 Claude가 숫자에 도달할 때까지 측정하고 반복합니다"

1211 },

1212 "fix-a-precise-visual": {

1213 title: "정확한 시각적 버그 수정",

1214 teaches: "정확한 시각적 피드백은 정확한 수정을 얻습니다. 정확한 요소, 측정 및 뷰포트를 명시하십시오.",

1215 next: "Claude가 수정을 스크린샷하고 자체적으로 검증하도록 미리보기 도구를 추가하십시오"

1216 },

1217 "review-your-changes-before": {

1218 title: "커밋하기 전에 변경 사항 검토",

1219 teaches: "여전히 수정하기 저렴할 때 문제를 포착하십시오. Claude가 diff 줄만이 아닌 변경된 파일 전체를 읽으므로 빠른 자체 검토가 놓칠 문제를 발견합니다.",

1220 next: "한 명령으로 동일한 확인을 위해 `/code-review`를 실행하십시오"

1221 },

1222 "review-a-pull-request": {

1223 title: "풀 요청 검토",

1224 teaches: "Claude가 diff만이 아닌 전체 코드베이스 컨텍스트로 검토합니다. 변경된 코드와 호출하는 항목을 읽으므로 diff 전용 검토가 놓칠 문제를 포착합니다.",

1225 next: "코드 검토로 모든 PR에 대해 이를 켜십시오"

1226 },

1227 "review-infrastructure-changes-before": {

1228 title: "적용하기 전에 인프라 변경 검토",

1229 teaches: "계획 출력은 밀도가 높고 스캔하기 어렵습니다. 붙여넣으면 적용하기 전에 실제로 변경될 내용의 일반 언어 요약을 얻습니다."

1230 },

1231 "run-a-security-review": {

1232 title: "서브에이전트로 보안 검토 실행",

1233 teaches: "[서브에이전트](/ko/sub-agents)가 자신의 컨텍스트 윈도우에서 감사를 실행하고 요약을 보고하므로 긴 보안 검토가 주 세션을 채우지 않습니다. 기본 제공 범용 서브에이전트가 추가 설정 없이 이를 처리합니다.",

1234 next: "전체 팀이 사용할 수 있는 전용 보안 검토 서브에이전트를 설정하십시오"

1235 },

1236 "review-content-before-sending": {

1237 title: "공식 검토 전에 문제 포착",

1238 teaches: "인간이 시간을 소비하기 전에 첫 번째 통과를 받으십시오. 확인하려는 우려 사항을 지정하면 검토가 집중되고 발견한 항목을 수정한 후 더 깔끔한 초안을 전송합니다.",

1239 next: "검토 체크리스트를 스킬로 캡처하면 전체 팀이 실행할 수 있습니다"

1240 },

1241 "course-correct-a-wrong": {

1242 title: "잘못된 접근 방식 수정",

1243 teaches: "잘못되었다는 것만이 아닌 Claude가 놓친 제약을 지정하십시오. 구체적인 이유는 Claude에 다시 추측하는 대신 재시도에서 만족할 구체적인 제약을 제공합니다.",

1244 next: "코드와 대화를 복원하도록 `Esc`를 두 번 눌러 되감기 메뉴를 열면 재시도가 깔끔하게 시작됩니다"

1245 },

1246 "narrow-the-scope-of": {

1247 title: "변경 범위 좁히기",

1248 teaches: "방향이 맞지만 변경이 너무 광범위할 때 Claude에 일부를 유지하도록 요청하십시오. 명시된 경계는 작은 수정이 리팩토링이 되는 것을 방지합니다."

1249 },

1250 "turn-a-correction-into": {

1251 title: "수정을 규칙으로 변환",

1252 teaches: "채팅의 수정은 팀과 공유되지 않습니다. 프로젝트의 [CLAUDE.md](/ko/memory)의 규칙은 커밋하면 공유되고 Claude가 매 세션의 시작에 읽습니다.",

1253 next: "Claude가 작성한 내용을 검토하려면 `/memory`를 열으십시오"

1254 },

1255 "resolve-merge-conflicts": {

1256 title: "병합 충돌 해결",

1257 teaches: "유지할 마커를 말하지 말고 원하는 상태를 말하십시오. 추론을 요청하면 병합이 검토 가능해지므로 블랙박스가 아닙니다."

1258 },

1259 "commit-with-a-generated": {

1260 title: "생성된 메시지로 커밋",

1261 teaches: "Claude가 diff에서 메시지를 도출하도록 하십시오. 저장소의 기존 커밋 스타일과 일치합니다."

1262 },

1263 "open-a-pull-request": {

1264 title: "티켓에서 풀 요청 열기",

1265 teaches: "추적기, 편집기, GitHub 간의 컨텍스트 전환을 건너뛰십시오. 한 프롬프트가 사양을 읽고, 변경을 하고, PR을 엽니다."

1266 },

1267 "draft-release-notes-from": {

1268 title: "git 히스토리에서 릴리스 노트 작성",

1269 teaches: "두 개의 참조 지점과 원하는 구조를 제공하십시오. Claude가 그 사이의 커밋 로그를 읽고 편집할 수 있는 변경 로그를 작성합니다.",

1270 next: "이를 `/changelog` 스킬로 저장하십시오"

1271 },

1272 "write-a-ci-workflow": {

1273 title: "CI 워크플로우 작성",

1274 teaches: "실행 시기와 수행할 작업을 설명하십시오. YAML은 프로젝트의 빌드 및 테스트 명령과 일치하도록 생성됩니다."

1275 },

1276 "find-and-fix-a": {

1277 title: "실패한 테스트 찾기 및 수정",

1278 teaches: "증상을 설명하십시오. 어느 파일이 깨졌는지 알 필요가 없습니다. Claude가 테스트를 실행하여 실패를 보고, 소스로 추적하고, 수정합니다."

1279 },

1280 "investigate-a-reported-error": {

1281 title: "보고된 오류 조사",

1282 teaches: "증상과 위치를 설명하십시오. Claude가 관련 코드 경로를 읽고 가능한 원인을 추적합니다. 스택 추적이나 로그가 있으면 붙여넣으십시오.",

1283 next: "런북에 깊은 링크를 넣으면 이 프롬프트가 미리 채워진 상태로 Claude를 엽니다"

1284 },

1285 "fix-a-build-error": {

1286 title: "빌드 오류를 근본 원인에서 수정",

1287 teaches: "근본 원인과 검증을 요청하면 오류를 수정하지 않고 억제하는 표면 수준의 패치를 방지합니다."

1288 },

1289 "investigate-a-production-incident": {

1290 title: "프로덕션 인시던트 조사",

1291 teaches: "수행할 단계가 아닌 상관 관계를 지을 증거 소스를 나열하십시오. Claude가 로그, git 히스토리, 구성을 함께 읽어 원인을 좁힙니다.",

1292 next: "MCP를 통해 Sentry 또는 로그 저장소를 연결하십시오"

1293 },

1294 "query-logs-in-plain": {

1295 title: "일반 영어로 로그 쿼리",

1296 teaches: "SQL을 작성하는 대신 질문을 하십시오. Claude가 쿼리를 구축하고 연결된 로그에 대해 실행하고 쿼리와 결과를 모두 표시하므로 실행된 항목을 확인할 수 있습니다."

1297 },

1298 "diagnose-from-a-console": {

1299 title: "콘솔 스크린샷에서 진단",

1300 teaches: "클라우드 콘솔은 문제를 보여주지만 수정할 명령은 보여주지 않습니다. Claude가 스크린샷을 읽고 대시보드를 실행할 kubectl, gcloud 또는 aws 명령으로 변환합니다."

1301 },

1302 "analyze-a-data-file": {

1303 title: "데이터 파일 분석",

1304 teaches: "일회성 질문은 일회성 스크립트가 필요하지 않습니다. 프로젝트 폴더의 파일을 지적하면 Claude가 직접 읽고, 패턴을 찾고, 요청한 위치에 출력을 작성합니다.",

1305 next: "파일을 내보내는 대신 MCP를 통해 데이터 소스를 연결하십시오"

1306 },

1307 "generate-variations-from-performance": {

1308 title: "성능 데이터에서 변형 생성",

1309 teaches: "생성이 제한 내에 머물도록 시작 시 제약을 명시하십시오. Claude가 메트릭을 읽고, 바꿀 항목을 선택하고, 맞는 대안을 생성합니다.",

1310 next: "파일을 내보내는 대신 MCP를 통해 광고 플랫폼을 연결하십시오"

1311 },

1312 "turn-a-recurring-task": {

1313 title: "반복 작업을 스킬로 변환",

1314 teaches: "단계를 한 번 지정하고 명령으로 재사용하십시오. Claude가 팀의 누구나 실행할 수 있는 [스킬](/ko/skills)을 작성합니다."

1315 },

1316 "add-a-hook-for": {

1317 title: "반복 동작을 위한 훅 추가",

1318 teaches: "훅은 동작을 자동으로 만들므로 요청하기를 기억할 필요가 없습니다. 트리거와 작업을 설명하면 Claude가 [훅](/ko/hooks) 구성을 작성합니다."

1319 },

1320 "connect-a-tool-with": {

1321 title: "MCP로 도구 연결",

1322 teaches: "매 세션마다 데이터를 붙여넣는 대신 소스를 한 번 연결하십시오. [MCP](/ko/mcp) 설정 후 Claude가 요청할 때 도구에서 직접 읽습니다."

1323 },

1324 "capture-what-to-remember": {

1325 title: "다음 번을 위해 기억할 항목 캡처",

1326 teaches: "잊기 전에 물어보십시오. Claude가 이 세션에서 파악해야 할 항목을 알고 다음 세션이 그 컨텍스트로 시작하도록 [CLAUDE.md](/ko/memory) 항목을 제안합니다."

1327 }

1328};

1329 

1330<PromptLibrary text={text} labels={labels} tagLabels={tagLabels} phaseLabels={phaseLabels} sourceLabels={sourceLabels} catLabels={catLabels} />

1331 

13<h2 id="what-makes-these-prompts-work">1332<h2 id="what-makes-these-prompts-work">

14 이 프롬프트가 작동하는 이유1333 이 프롬프트가 작동하는 이유

15</h2>1334</h2>

Details

119 119 

120대화형 터미널 세션에서 `/rc active` 표시기는 연결이 유지되는 동안 입력 상자 아래 바닥글에 있으며, 터미널이 너무 좁으면 숨겨집니다. 표시기 텍스트는 claude.ai의 세션으로 연결되는 링크입니다. 아래쪽 화살표 키로 선택하고 Enter를 눌러 세션 URL과 [다른 기기에서 연결](#connect-from-another-device)하는 데 사용할 수 있는 QR 코드가 있는 상태 패널을 열거나, `/remote-control`을 다시 실행하여 다시 시도하세요.120대화형 터미널 세션에서 `/rc active` 표시기는 연결이 유지되는 동안 입력 상자 아래 바닥글에 있으며, 터미널이 너무 좁으면 숨겨집니다. 표시기 텍스트는 claude.ai의 세션으로 연결되는 링크입니다. 아래쪽 화살표 키로 선택하고 Enter를 눌러 세션 URL과 [다른 기기에서 연결](#connect-from-another-device)하는 데 사용할 수 있는 QR 코드가 있는 상태 패널을 열거나, `/remote-control`을 다시 실행하여 다시 시도하세요.

121 121 

122연결이 실패하면 표시기가 빨간색으로 변하고 `/rc failed`로 표시됩니다. 아래쪽 화살표 키로 선택하고 Enter를 눌러 실패 이유와 해제 옵션을 보거나, `/remote-control`을 다시 실행하여 다시 시도하세요.122연결이 실패하면 알림이 나타나고 실패 이유가 표시되며 표시기가 바닥글에서 사라집니다. `/remote-control`을 다시 실행하여 다시 시도하세요.

123 123 

124<h3 id="connect-from-another-device">124<h3 id="connect-from-another-device">

125 다른 기기에서 연결125 다른 기기에서 연결


206* iOS에서 포커스 모드 및 알림 요약이 푸시를 억제하거나 지연시킬 수 있습니다. 설정 → 알림 → Claude를 확인하세요.206* iOS에서 포커스 모드 및 알림 요약이 푸시를 억제하거나 지연시킬 수 있습니다. 설정 → 알림 → Claude를 확인하세요.

207* Android에서 적극적인 배터리 최적화가 전달을 지연시킬 수 있습니다. 시스템 설정에서 Claude 앱을 배터리 최적화에서 제외하세요.207* Android에서 적극적인 배터리 최적화가 전달을 지연시킬 수 있습니다. 시스템 설정에서 Claude 앱을 배터리 최적화에서 제외하세요.

208 208 

209Claude Code는 터미널에 입력하거나 연결된 터미널에 집중하는 동안 모바일 푸시 알림을 건너뜁니다. {/* min-version: 2.1.181 */}v2.1.181부터 [`CLAUDE_CLIENT_PRESENCE_FILE`](/ko/env-vars)을 마커 파일 경로로 설정하여 다른 창에 있더라도 기계에 있는 모든 시간으로 확장할 수 있습니다. 파일이 존재하는 동안 알림이 건너뛰어집니다. 화면 잠금 해제 시 파일을 생성하고 화면이 잠길 때 파일을 삭제하도록 화면 잠금 리스너 또는 유사한 도구를 구성하세요.

210 

209<h2 id="limitations">211<h2 id="limitations">

210 제한 사항212 제한 사항

211</h2>213</h2>


214* **로컬 프로세스는 계속 실행되어야 함**: Remote Control은 로컬 프로세스로 실행됩니다. 터미널을 닫거나, VS Code를 종료하거나, 다른 방식으로 `claude` 프로세스를 중지하면 세션이 종료됩니다.216* **로컬 프로세스는 계속 실행되어야 함**: Remote Control은 로컬 프로세스로 실행됩니다. 터미널을 닫거나, VS Code를 종료하거나, 다른 방식으로 `claude` 프로세스를 중지하면 세션이 종료됩니다.

215* **장시간 네트워크 중단**: 컴퓨터가 켜져 있지만 약 10분 이상 네트워크에 도달할 수 없으면 세션이 시간 초과되고 프로세스가 종료됩니다. `claude remote-control`을 다시 실행하여 새 세션을 시작하세요.217* **장시간 네트워크 중단**: 컴퓨터가 켜져 있지만 약 10분 이상 네트워크에 도달할 수 없으면 세션이 시간 초과되고 프로세스가 종료됩니다. `claude remote-control`을 다시 실행하여 새 세션을 시작하세요.

216* **Ultraplan이 Remote Control 연결 해제**: [ultraplan](/ko/ultraplan) 세션을 시작하면 활성 Remote Control 세션이 연결 해제됩니다. 두 기능 모두 claude.ai/code 인터페이스를 차지하고 한 번에 하나만 연결될 수 있기 때문입니다.218* **Ultraplan이 Remote Control 연결 해제**: [ultraplan](/ko/ultraplan) 세션을 시작하면 활성 Remote Control 세션이 연결 해제됩니다. 두 기능 모두 claude.ai/code 인터페이스를 차지하고 한 번에 하나만 연결될 수 있기 때문입니다.

217* **일부 명령은 로컬 전용**: `/plugin` 또는 `/resume`과 같이 터미널에서 대화형 선택기를 여는 명령은 로컬 CLI에서만 작동합니다. `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits`, `/recap` 및 `/reload-plugins`를 포함하여 텍스트 출력을 생성하는 명령은 모바일 및 웹에서 작동합니다. {/* min-version: 2.1.166 */}v2.1.166부터 `/mcp`도 모바일 및 웹에서 작동합니다. 이는 선택기를 열지 않고 서버 상태의 텍스트 요약을 반환하며, 로컬 CLI와 동일한 `reconnect`, `enable` 및 `disable` [하위 명령](/ko/commands#all-commands)을 허용합니다. 한 가지 차이점이 있습니다. 모바일 및 웹에서 서버 이름 없이 `/mcp reconnect`를 실행하면 실패했거나 인증이 필요한 모든 서버를 다시 연결하는 반면, 로컬 CLI는 `reconnect`에 서버 이름이 필요합니다.219* **일부 명령은 로컬 전용**: `/plugin` 또는 `/resume`과 같이 터미널에서 대화형 선택기를 여는 명령은 로컬 CLI에서만 작동합니다. 다음은 모바일 및 웹에서 작동합니다:

220 * 텍스트 출력 명령: `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits`, `/recap`, `/reload-plugins`

221 * {/* min-version: 2.1.166 */}`/mcp`, v2.1.166부터: 선택기를 열지 않고 서버 상태의 텍스트 요약을 반환하며, `reconnect`, `enable`, `disable` [하위 명령](/ko/commands#all-commands)을 허용합니다. 로컬 CLI와 달리, 서버 이름 없이 `/mcp reconnect`를 실행하면 실패했거나 인증이 필요한 모든 서버를 다시 연결합니다.

222 * {/* min-version: 2.1.181 */}`/config`, v2.1.181부터: `key=value`를 전달하여 설정을 지정하거나, 인수 없이 실행하여 설정할 수 있는 키를 나열합니다.

218 223 

219<h2 id="troubleshooting">224<h2 id="troubleshooting">

220 문제 해결225 문제 해결

sandboxing.md +2 −0

Details

373* **명령이 host-not-allowed 오류로 실패**: 많은 CLI 도구는 특정 호스트에 도달해야 합니다. 프롬프트될 때 권한을 부여하면 호스트가 허용 목록에 추가되므로 도구가 향후 샌드박스 내에서 실행됩니다.373* **명령이 host-not-allowed 오류로 실패**: 많은 CLI 도구는 특정 호스트에 도달해야 합니다. 프롬프트될 때 권한을 부여하면 호스트가 허용 목록에 추가되므로 도구가 향후 샌드박스 내에서 실행됩니다.

374* **`jest`가 중단되거나 실패**: `watchman`은 샌드박스와 호환되지 않습니다. 대신 `jest --no-watchman`을 실행합니다.374* **`jest`가 중단되거나 실패**: `watchman`은 샌드박스와 호환되지 않습니다. 대신 `jest --no-watchman`을 실행합니다.

375* **Go 기반 CLI가 macOS에서 TLS 검증 실패**: `gh`, `gcloud`, `terraform`과 같은 도구는 Seatbelt에서 TLS 검증에 실패할 수 있습니다. 이러한 도구를 `excludedCommands`에 나열하여 샌드박스 외부에서 실행합니다. MITM 프록시 및 사용자 정의 CA와 함께 `httpProxyPort`를 사용하는 경우 대신 [`enableWeakerNetworkIsolation`](/ko/settings#sandbox-settings)을 `true`로 설정합니다.375* **Go 기반 CLI가 macOS에서 TLS 검증 실패**: `gh`, `gcloud`, `terraform`과 같은 도구는 Seatbelt에서 TLS 검증에 실패할 수 있습니다. 이러한 도구를 `excludedCommands`에 나열하여 샌드박스 외부에서 실행합니다. MITM 프록시 및 사용자 정의 CA와 함께 `httpProxyPort`를 사용하는 경우 대신 [`enableWeakerNetworkIsolation`](/ko/settings#sandbox-settings)을 `true`로 설정합니다.

376* **`open`, `osascript`, 또는 브라우저 기반 인증 흐름이 macOS에서 오류 `-600`으로 실패**: 샌드박스는 기본적으로 Apple Events를 차단합니다. 사용자, 관리 또는 CLI 설정에서 [`allowAppleEvents`](/ko/settings#sandbox-settings)를 `true`로 설정하여 이를 허용합니다. 프로젝트 설정은 이 키에 대해 무시됩니다. 이를 활성화하면 샌드박싱된 명령이 사용자 프롬프트 없이 다른 애플리케이션을 비샌드박싱된 상태로 시작할 수 있고 실행 중인 애플리케이션에 AppleScript 명령을 보낼 수 있으므로 코드 실행 격리가 제거됩니다. 이는 macOS 자동화 동의 프롬프트(TCC)의 적용을 받습니다. 또는 명령을 `excludedCommands`에 추가하여 샌드박스 외부에서 실행합니다.

376* **`docker` 명령 실패**: `docker`는 샌드박스와 호환되지 않습니다. `docker *`를 `excludedCommands`에 추가하여 샌드박스 외부에서 실행합니다.377* **`docker` 명령 실패**: `docker`는 샌드박스와 호환되지 않습니다. `docker *`를 `excludedCommands`에 추가하여 샌드박스 외부에서 실행합니다.

377* **컨테이너 내에서 Bubblewrap 시작 실패**: 권한 없는 컨테이너에서 bubblewrap은 새로운 `/proc` 파일시스템을 마운트할 수 없습니다. [`enableWeakerNestedSandbox`](/ko/settings#sandbox-settings)를 `true`로 설정하여 내부 샌드박스가 컨테이너의 기존 `/proc`을 바인드 마운트하도록 합니다. 외부 컨테이너가 이미 필요한 격리 경계를 제공할 때만 이 설정을 사용합니다. 새로운 `/proc` 마운트가 숨길 프로세스 정보를 샌드박싱된 명령에 노출하기 때문입니다.378* **컨테이너 내에서 Bubblewrap 시작 실패**: 권한 없는 컨테이너에서 bubblewrap은 새로운 `/proc` 파일시스템을 마운트할 수 없습니다. [`enableWeakerNestedSandbox`](/ko/settings#sandbox-settings)를 `true`로 설정하여 내부 샌드박스가 컨테이너의 기존 `/proc`을 바인드 마운트하도록 합니다. 외부 컨테이너가 이미 필요한 격리 경계를 제공할 때만 이 설정을 사용합니다. 새로운 `/proc` 마운트가 숨길 프로세스 정보를 샌드박싱된 명령에 노출하기 때문입니다.

378* **Linux의 Seccomp 필터**: seccomp 필터는 Unix 도메인 소켓을 차단하는 데 필요합니다. `/sandbox`의 Dependencies 탭은 사용 가능한지 보여줍니다. 누락된 경우 `npm install -g @anthropic-ai/sandbox-runtime`을 실행하여 도우미를 설치합니다.379* **Linux의 Seccomp 필터**: seccomp 필터는 Unix 도메인 소켓을 차단하는 데 필요합니다. `/sandbox`의 Dependencies 탭은 사용 가능한지 보여줍니다. 누락된 경우 `npm install -g @anthropic-ai/sandbox-runtime`을 실행하여 도우미를 설치합니다.


397* **Unix 소켓을 통한 권한 상승**: `allowUnixSockets` 구성은 실수로 샌드박스 우회로 이어질 수 있는 강력한 시스템 서비스에 대한 액세스를 부여할 수 있습니다. 예를 들어 `/var/run/docker.sock`에 대한 액세스를 허용하면 Docker 소켓을 통해 호스트 시스템에 대한 액세스를 효과적으로 부여합니다. 샌드박스를 통해 허용하는 모든 Unix 소켓을 신중하게 고려합니다.398* **Unix 소켓을 통한 권한 상승**: `allowUnixSockets` 구성은 실수로 샌드박스 우회로 이어질 수 있는 강력한 시스템 서비스에 대한 액세스를 부여할 수 있습니다. 예를 들어 `/var/run/docker.sock`에 대한 액세스를 허용하면 Docker 소켓을 통해 호스트 시스템에 대한 액세스를 효과적으로 부여합니다. 샌드박스를 통해 허용하는 모든 Unix 소켓을 신중하게 고려합니다.

398* **파일시스템 권한 상승**: 과도하게 광범위한 파일시스템 쓰기 권한은 권한 상승 공격을 가능하게 할 수 있습니다. `$PATH`의 실행 파일을 포함하는 디렉토리, 시스템 구성 디렉토리 또는 `.bashrc` 또는 `.zshrc`와 같은 사용자 셸 구성 파일에 대한 쓰기를 허용하면 다른 사용자 또는 시스템 프로세스가 이러한 파일에 액세스할 때 다른 보안 컨텍스트에서 코드 실행으로 이어질 수 있습니다.399* **파일시스템 권한 상승**: 과도하게 광범위한 파일시스템 쓰기 권한은 권한 상승 공격을 가능하게 할 수 있습니다. `$PATH`의 실행 파일을 포함하는 디렉토리, 시스템 구성 디렉토리 또는 `.bashrc` 또는 `.zshrc`와 같은 사용자 셸 구성 파일에 대한 쓰기를 허용하면 다른 사용자 또는 시스템 프로세스가 이러한 파일에 액세스할 때 다른 보안 컨텍스트에서 코드 실행으로 이어질 수 있습니다.

399* **Linux 샌드박스 강도**: Linux 구현은 강력한 파일시스템 및 네트워크 격리를 제공하지만 권한 있는 네임스페이스 없이 Docker 환경 내에서 작동할 수 있도록 하는 `enableWeakerNestedSandbox` 모드를 포함합니다. 또는 권한 없는 사용자 네임스페이스가 sysctl에 의해 비활성화된 Linux 호스트에서. 이 옵션은 보안을 상당히 약화시키며 추가 격리가 다른 방식으로 적용되는 경우에만 사용해야 합니다.400* **Linux 샌드박스 강도**: Linux 구현은 강력한 파일시스템 및 네트워크 격리를 제공하지만 권한 있는 네임스페이스 없이 Docker 환경 내에서 작동할 수 있도록 하는 `enableWeakerNestedSandbox` 모드를 포함합니다. 또는 권한 없는 사용자 네임스페이스가 sysctl에 의해 비활성화된 Linux 호스트에서. 이 옵션은 보안을 상당히 약화시키며 추가 격리가 다른 방식으로 적용되는 경우에만 사용해야 합니다.

401* **macOS의 Apple Events**: macOS 샌드박스는 기본적으로 Apple Events를 차단합니다. `allowAppleEvents` 설정은 이 제한을 해제하여 `open` 및 `osascript`와 같은 도구가 작동하지만 코드 실행 격리를 제거합니다. 샌드박싱된 명령은 사용자 프롬프트 없이 다른 애플리케이션을 샌드박싱되지 않은 상태로 시작할 수 있으며 실행 중인 애플리케이션에 AppleScript 명령을 보낼 수 있습니다. 이는 앱별 macOS 자동화 동의 프롬프트(TCC)의 적용을 받습니다. 이는 사용자, 관리 또는 CLI 설정에서만 적용됩니다. 프로젝트 설정은 이를 활성화할 수 없습니다.

400* **설정 파일 보호**: 샌드박스는 모든 범위의 Claude Code `settings.json` 파일 및 관리 설정 디렉토리에 대한 쓰기 액세스를 자동으로 거부하므로 샌드박싱된 명령은 자신의 정책을 수정할 수 없습니다.402* **설정 파일 보호**: 샌드박스는 모든 범위의 Claude Code `settings.json` 파일 및 관리 설정 디렉토리에 대한 쓰기 액세스를 자동으로 거부하므로 샌드박싱된 명령은 자신의 정책을 수정할 수 없습니다.

401 403 

402<h3 id="platform-and-tool-compatibility">404<h3 id="platform-and-tool-compatibility">

settings.md +16 −9

Details

6 6 

7> 전역 및 프로젝트 수준 설정과 환경 변수로 Claude Code를 구성합니다.7> 전역 및 프로젝트 수준 설정과 환경 변수로 Claude Code를 구성합니다.

8 8 

9Claude Code는 사용자의 필요에 맞게 동작을 구성할 수 있는 다양한 설정을 제공합니다. 대화형 REPL을 사용할 때 `/config` 명령을 실행하여 Claude Code를 구성할 수 있으며, 이는 상태 정보를 보고 구성 옵션을 수정할 수 있는 탭 형식의 설정 인터페이스를 엽니다.9Claude Code는 사용자의 필요에 맞게 동작을 구성할 수 있는 다양한 설정을 제공합니다. `/config` 명령을 실행하여 Claude Code를 구성할 수 있으며, 이는 상태 정보를 보고 구성 옵션을 수정할 수 있는 탭 형식의 설정 인터페이스를 엽니다. {/* min-version: 2.1.181 */}v2.1.181부터는 인터페이스를 열지 않고 `/config`에 `key=value`를 전달하여 단일 옵션을 변경할 수 있습니다. 예를 들어 `/config verbose=true`입니다.

10 10 

11<h2 id="configuration-scopes">11<h2 id="configuration-scopes">

12 구성 범위12 구성 범위


128* **기타 구성**은 `~/.claude.json`에 저장됩니다. 이 파일에는 OAuth 세션, [MCP server](/ko/mcp) 구성 (사용자 및 local 범위), 프로젝트별 상태 (허용된 도구, 신뢰 설정) 및 다양한 캐시가 포함됩니다. 프로젝트 범위 MCP 서버는 `.mcp.json`에 별도로 저장됩니다.128* **기타 구성**은 `~/.claude.json`에 저장됩니다. 이 파일에는 OAuth 세션, [MCP server](/ko/mcp) 구성 (사용자 및 local 범위), 프로젝트별 상태 (허용된 도구, 신뢰 설정) 및 다양한 캐시가 포함됩니다. 프로젝트 범위 MCP 서버는 `.mcp.json`에 별도로 저장됩니다.

129 129 

130<Note>130<Note>

131 Claude Code는 자동으로 구성 파일의 타임스탬프가 지정된 백업을 생성하고 데이터 손실을 방지하기 위해 가장 최근의 5개 백업을 유지합니다.131 Claude Code는 자동으로 구성 파일의 타임스탐프가 지정된 백업을 생성하고 데이터 손실을 방지하기 위해 가장 최근의 5개 백업을 유지합니다.

132</Note>132</Note>

133 133 

134```JSON 예제 settings.json theme={null}134```JSON 예제 settings.json theme={null}


210`settings.json`은 여러 옵션을 지원합니다:210`settings.json`은 여러 옵션을 지원합니다:

211 211 

212| 키 | 설명 | 예제 |212| 키 | 설명 | 예제 |

213| :-------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------ |213| :-------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------ |

214| `advisorModel` | {/* min-version: 2.1.98 */}서버 측 [advisor 도구](/ko/advisor)를 위한 모델입니다. `"opus"`, `"sonnet"` 또는 `"fable"` ({/* min-version: 2.1.170 */}v2.1.170+)과 같은 모델 별칭 또는 전체 모델 ID를 허용합니다. `/advisor`를 실행할 때 자동으로 작성됩니다. Advisor를 비활성화하려면 설정 해제합니다. Claude Code v2.1.98 이상이 필요합니다 | `"opus"` |214| `advisorModel` | {/* min-version: 2.1.98 */}서버 측 [advisor 도구](/ko/advisor)를 위한 모델입니다. `"opus"`, `"sonnet"` 또는 `"fable"` ({/* min-version: 2.1.170 */}v2.1.170+)과 같은 모델 별칭 또는 전체 모델 ID를 허용합니다. `/advisor`를 실행할 때 자동으로 작성됩니다. Advisor를 비활성화하려면 설정 해제합니다. Claude Code v2.1.98 이상이 필요합니다 | `"opus"` |

215| `agent` | 메인 스레드를 명명된 subagent로 실행하고 `claude agents`에서 디스패치된 세션의 기본 에이전트를 설정합니다. 해당 subagent의 시스템 프롬프트, 도구 제한 및 모델을 적용합니다. [subagents 명시적으로 호출](/ko/sub-agents#invoke-subagents-explicitly)을 참조하세요 | `"code-reviewer"` |215| `agent` | 메인 스레드를 명명된 subagent로 실행하고 `claude agents`에서 디스패치된 세션의 기본 에이전트를 설정합니다. 해당 subagent의 시스템 프롬프트, 도구 제한 및 모델을 적용합니다. [subagents 명시적으로 호출](/ko/sub-agents#invoke-subagents-explicitly)을 참조하세요 | `"code-reviewer"` |

216| `agentPushNotifEnabled` | {/* min-version: 2.1.119 */}}[Remote Control](/ko/remote-control)이 연결되어 있을 때 Claude가 장시간 작업이 완료될 때와 같이 휴대폰에 사전 예방적 푸시 알림을 보낼 수 있도록 허용합니다. 기본값: `false`. `/config`에 **Claude가 결정할 때 푸시**로 표시됩니다. [모바일 푸시 알림](/ko/remote-control#mobile-push-notifications)을 참조하세요. Claude Code v2.1.119 이상이 필요합니다 | `true` |216| `agentPushNotifEnabled` | {/* min-version: 2.1.119 */}[Remote Control](/ko/remote-control)이 연결되어 있을 때 Claude가 장시간 작업이 완료될 때와 같이 휴대폰에 사전 예방적 푸시 알림을 보낼 수 있도록 허용합니다. 기본값: `false`. `/config`에 **Claude가 결정할 때 푸시**로 표시됩니다. [모바일 푸시 알림](/ko/remote-control#mobile-push-notifications)을 참조하세요. Claude Code v2.1.119 이상이 필요합니다 | `true` |

217| `allowAllClaudeAiMcps` | (Managed 설정만) 배포된 `managed-mcp.json`과 함께 claude.ai 커넥터를 로드합니다. 그렇지 않으면 독점적 제어를 취하고 이를 억제합니다. [Managed MCP 구성](/ko/managed-mcp)을 참조하세요 | `true` |217| `allowAllClaudeAiMcps` | (Managed 설정만) 배포된 `managed-mcp.json`과 함께 claude.ai 커넥터를 로드합니다. 그렇지 않으면 독점적 제어를 취하고 이를 억제합니다. [Managed MCP 구성](/ko/managed-mcp)을 참조하세요 | `true` |

218| `allowedChannelPlugins` | (Managed 설정만) 메시지를 푸시할 수 있는 채널 플러그인의 허용 목록입니다. 설정되면 기본 Anthropic 허용 목록을 대체합니다. 정의되지 않음 = 기본값으로 폴백, 빈 배열 = 모든 채널 플러그인 차단. `channelsEnabled: true`가 필요합니다. [채널 플러그인 실행 제한](/ko/channels#restrict-which-channel-plugins-can-run)을 참조하세요 | `[{ "marketplace": "claude-plugins-official", "plugin": "telegram" }]` |218| `allowedChannelPlugins` | (Managed 설정만) 메시지를 푸시할 수 있는 채널 플러그인의 허용 목록입니다. 설정되면 기본 Anthropic 허용 목록을 대체합니다. 정의되지 않음 = 기본값으로 폴백, 빈 배열 = 모든 채널 플러그인 차단. `channelsEnabled: true`가 필요합니다. [채널 플러그인 실행 제한](/ko/channels#restrict-which-channel-plugins-can-run)을 참조하세요 | `[{ "marketplace": "claude-plugins-official", "plugin": "telegram" }]` |

219| `allowedHttpHookUrls` | HTTP hooks가 대상으로 할 수 있는 URL 패턴의 허용 목록입니다. `*`를 와일드카드로 지원합니다. 설정되면 일치하지 않는 URL을 가진 hooks는 차단됩니다. 정의되지 않음 = 제한 없음, 빈 배열 = 모든 HTTP hooks 차단. 배열은 설정 소스 전체에서 병합됩니다. [Hook 구성](#hook-configuration)을 참조하세요 | `["https://hooks.example.com/*"]` |219| `allowedHttpHookUrls` | HTTP hooks가 대상으로 할 수 있는 URL 패턴의 허용 목록입니다. `*`를 와일드카드로 지원합니다. 설정되면 일치하지 않는 URL을 가진 hooks는 차단됩니다. 정의되지 않음 = 제한 없음, 빈 배열 = 모든 HTTP hooks 차단. 배열은 설정 소스 전체에서 병합됩니다. [Hook 구성](#hook-configuration)을 참조하세요 | `["https://hooks.example.com/*"]` |


234| `awaySummaryEnabled` | 몇 분 동안 터미널에서 떨어져 있다가 돌아올 때 한 줄 세션 요약을 표시합니다. 비활성화하려면 `false`로 설정하거나 `/config`에서 세션 요약을 끕니다. [`CLAUDE_CODE_ENABLE_AWAY_SUMMARY`](/ko/env-vars)와 동일합니다 | `true` |234| `awaySummaryEnabled` | 몇 분 동안 터미널에서 떨어져 있다가 돌아올 때 한 줄 세션 요약을 표시합니다. 비활성화하려면 `false`로 설정하거나 `/config`에서 세션 요약을 끕니다. [`CLAUDE_CODE_ENABLE_AWAY_SUMMARY`](/ko/env-vars)와 동일합니다 | `true` |

235| `awsAuthRefresh` | `.aws` 디렉토리를 수정하는 사용자 정의 스크립트 ([고급 자격 증명 구성](/ko/amazon-bedrock#advanced-credential-configuration) 참조) | `aws sso login --profile myprofile` |235| `awsAuthRefresh` | `.aws` 디렉토리를 수정하는 사용자 정의 스크립트 ([고급 자격 증명 구성](/ko/amazon-bedrock#advanced-credential-configuration) 참조) | `aws sso login --profile myprofile` |

236| `awsCredentialExport` | AWS 자격 증명이 포함된 JSON을 출력하는 사용자 정의 스크립트 ([고급 자격 증명 구성](/ko/amazon-bedrock#advanced-credential-configuration) 참조) | `/bin/generate_aws_grant.sh` |236| `awsCredentialExport` | AWS 자격 증명이 포함된 JSON을 출력하는 사용자 정의 스크립트 ([고급 자격 증명 구성](/ko/amazon-bedrock#advanced-credential-configuration) 참조) | `/bin/generate_aws_grant.sh` |

237| `axScreenReader` | {/* min-version: 2.1.181 */}화면 판독기 친화적 출력을 렌더링합니다: 장식적 테두리나 애니메이션 없는 평면 텍스트. 화면 판독기 모드는 항상 클래식 렌더러를 사용하므로 활성화되어 있는 동안 `tui` 설정은 영향을 주지 않습니다. [`CLAUDE_AX_SCREEN_READER`](/ko/env-vars) 환경 변수 및 [`--ax-screen-reader`](/ko/cli-reference#cli-flags) 플래그가 우선합니다. Claude Code v2.1.181 이상이 필요합니다 | `true` |

237| `blockedMarketplaces` | (Managed 설정만) 마켓플레이스 소스의 차단 목록입니다. 마켓플레이스 추가 및 플러그인 설치, 업데이트, 새로고침 및 자동 업데이트에 적용되므로 정책이 설정되기 전에 추가된 마켓플레이스는 플러그인을 가져오는 데 사용할 수 없습니다. 차단된 소스는 다운로드 전에 확인되므로 파일 시스템에 닿지 않습니다. [Managed 마켓플레이스 제한](/ko/plugin-marketplaces#managed-marketplace-restrictions)을 참조하세요 | `[{ "source": "github", "repo": "untrusted/plugins" }]` |238| `blockedMarketplaces` | (Managed 설정만) 마켓플레이스 소스의 차단 목록입니다. 마켓플레이스 추가 및 플러그인 설치, 업데이트, 새로고침 및 자동 업데이트에 적용되므로 정책이 설정되기 전에 추가된 마켓플레이스는 플러그인을 가져오는 데 사용할 수 없습니다. 차단된 소스는 다운로드 전에 확인되므로 파일 시스템에 닿지 않습니다. [Managed 마켓플레이스 제한](/ko/plugin-marketplaces#managed-marketplace-restrictions)을 참조하세요 | `[{ "source": "github", "repo": "untrusted/plugins" }]` |

238| `channelsEnabled` | (Managed 설정만) 조직을 위해 [channels](/ko/channels)를 허용합니다. Claude.ai Team 및 Enterprise 플랜에서 설정되지 않거나 `false`이면 채널이 차단됩니다. [Anthropic Console](/ko/authentication#claude-console-authentication) 계정이 API 키 인증을 사용하는 경우 조직이 managed 설정을 배포하지 않으면 기본적으로 채널이 허용되며, 이 경우 이 키를 `true`로 설정해야 합니다 | `true` |239| `channelsEnabled` | (Managed 설정만) 조직을 위해 [channels](/ko/channels)를 허용합니다. Claude.ai Team 및 Enterprise 플랜에서 설정되지 않거나 `false`이면 채널이 차단됩니다. [Anthropic Console](/ko/authentication#claude-console-authentication) 계정이 API 키 인증을 사용하는 경우 조직이 managed 설정을 배포하지 않으면 기본적으로 채널이 허용되며, 이 경우 이 키를 `true`로 설정해야 합니다 | `true` |

239| `claudeMd` | (Managed 설정만) 조직 관리 메모리로 주입된 CLAUDE.md 스타일 지침입니다. Managed 또는 정책 설정에서 설정된 경우에만 적용되며 사용자, 프로젝트 및 local 설정에서는 무시됩니다. [조직 전체 CLAUDE.md](/ko/memory#deploy-organization-wide-claude-md)를 참조하세요 | `"Always run make lint before committing."` |240| `claudeMd` | (Managed 설정만) 조직 관리 메모리로 주입된 CLAUDE.md 스타일 지침입니다. Managed 또는 정책 설정에서 설정된 경우에만 적용되며 사용자, 프로젝트 및 local 설정에서는 무시됩니다. [조직 전체 CLAUDE.md](/ko/memory#deploy-organization-wide-claude-md)를 참조하세요 | `"Always run make lint before committing."` |


244| `deniedMcpServers` | Managed 설정에서 설정되면 명시적으로 차단된 MCP 서버의 거부 목록입니다. Managed 서버를 포함한 모든 범위에 적용됩니다. 거부 목록이 허용 목록보다 우선합니다. [Managed MCP 구성](/ko/managed-mcp)을 참조하세요 | `[{ "serverName": "filesystem" }]` |245| `deniedMcpServers` | Managed 설정에서 설정되면 명시적으로 차단된 MCP 서버의 거부 목록입니다. Managed 서버를 포함한 모든 범위에 적용됩니다. 거부 목록이 허용 목록보다 우선합니다. [Managed MCP 구성](/ko/managed-mcp)을 참조하세요 | `[{ "serverName": "filesystem" }]` |

245| `disableAgentView` | [배경 에이전트 및 에이전트 보기](/ko/agent-view)를 끄려면 `true`로 설정합니다: `claude agents`, `--bg`, `/background` 및 온디맨드 감독자. 일반적으로 [managed 설정](/ko/permissions#managed-settings)에서 설정됩니다. `CLAUDE_CODE_DISABLE_AGENT_VIEW`를 `1`로 설정하는 것과 동일합니다 | `true` |246| `disableAgentView` | [배경 에이전트 및 에이전트 보기](/ko/agent-view)를 끄려면 `true`로 설정합니다: `claude agents`, `--bg`, `/background` 및 온디맨드 감독자. 일반적으로 [managed 설정](/ko/permissions#managed-settings)에서 설정됩니다. `CLAUDE_CODE_DISABLE_AGENT_VIEW`를 `1`로 설정하는 것과 동일합니다 | `true` |

246| `disableAllHooks` | 모든 [hooks](/ko/hooks) 및 사용자 정의 [상태 줄](/ko/statusline) 비활성화 | `true` |247| `disableAllHooks` | 모든 [hooks](/ko/hooks) 및 사용자 정의 [상태 줄](/ko/statusline) 비활성화 | `true` |

248| `disableArtifact` | [Artifact](/ko/artifacts) 도구를 비활성화하려면 `true`로 설정합니다. 이는 세션 출력을 claude.ai의 비공개 웹 페이지로 게시합니다. `CLAUDE_CODE_DISABLE_ARTIFACT`를 `1`로 설정하는 것과 동일합니다 | `true` |

247| `disableAutoMode` | [자동 모드](/ko/permission-modes#eliminate-prompts-with-auto-mode)가 활성화되는 것을 방지하려면 `"disable"`로 설정합니다. `Shift+Tab` 순환에서 `auto`를 제거하고 시작 시 `--permission-mode auto`를 거부합니다. [managed 설정](/ko/permissions#managed-settings)에서 사용자가 재정의할 수 없을 때 가장 유용합니다 | `"disable"` |249| `disableAutoMode` | [자동 모드](/ko/permission-modes#eliminate-prompts-with-auto-mode)가 활성화되는 것을 방지하려면 `"disable"`로 설정합니다. `Shift+Tab` 순환에서 `auto`를 제거하고 시작 시 `--permission-mode auto`를 거부합니다. [managed 설정](/ko/permissions#managed-settings)에서 사용자가 재정의할 수 없을 때 가장 유용합니다 | `"disable"` |

248| `disableBundledSkills` | [skills](/ko/skills) 및 Claude Code와 함께 제공되는 워크플로우를 비활성화하려면 `true`로 설정합니다: 번들 skills 및 워크플로우는 완전히 제거되고, `/init`과 같은 기본 제공 슬래시 명령은 입력 가능하지만 모델에서 숨겨집니다. 플러그인의 skills, `.claude/skills/` 및 `.claude/commands/`는 영향을 받지 않습니다. `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS`를 `1`로 설정하는 것과 동일합니다 | `true` |250| `disableBundledSkills` | [skills](/ko/skills) 및 Claude Code와 함께 제공되는 워크플로우를 비활성화하려면 `true`로 설정합니다: 번들 skills 및 워크플로우는 완전히 제거되고, `/init`과 같은 기본 제공 슬래시 명령은 입력 가능하지만 모델에서 숨겨집니다. 플러그인의 skills, `.claude/skills/` 및 `.claude/commands/`는 영향을 받지 않습니다. `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS`를 `1`로 설정하는 것과 동일합니다 | `true` |

251| `disableClaudeAiConnectors` | {/* min-version: 2.1.182 */}[claude.ai MCP 커넥터](/ko/mcp#use-mcp-servers-from-claude-ai)를 비활성화하여 자동 가져오기 또는 연결되지 않도록 합니다. 모든 설정 범위에서 설정합니다. 모든 소스에서 `true`가 우선하므로 체크인된 프로젝트 `.claude/settings.json`이 저장소를 클라우드 커넥터에서 제외할 수 있지만 프로젝트 수준 `false`는 사용자 또는 정책 수준 `true`를 재정의할 수 없습니다. `--mcp-config`를 통해 명시적으로 전달된 서버는 영향을 받지 않습니다. 모든 커넥터를 거부하는 대신 개별 커넥터를 거부하려면 [`deniedMcpServers`](/ko/managed-mcp)를 사용합니다. Claude Code v2.1.182 이상이 필요합니다 | `true` |

249| `disableDeepLinkRegistration` | Claude Code가 시작 시 운영 체제에 `claude-cli://` 프로토콜 핸들러를 등록하는 것을 방지하려면 `"disable"`로 설정합니다. [Deep links](/ko/deep-links)를 사용하면 외부 도구가 사전 채워진 프롬프트로 Claude Code 세션을 열 수 있습니다. 프로토콜 핸들러 등록이 제한되거나 별도로 관리되는 환경에서 유용합니다 | `"disable"` |252| `disableDeepLinkRegistration` | Claude Code가 시작 시 운영 체제에 `claude-cli://` 프로토콜 핸들러를 등록하는 것을 방지하려면 `"disable"`로 설정합니다. [Deep links](/ko/deep-links)를 사용하면 외부 도구가 사전 채워진 프롬프트로 Claude Code 세션을 열 수 있습니다. 프로토콜 핸들러 등록이 제한되거나 별도로 관리되는 환경에서 유용합니다 | `"disable"` |

250| `disabledMcpjsonServers` | `.mcp.json` 파일에서 거부할 특정 MCP 서버 목록 | `["filesystem"]` |253| `disabledMcpjsonServers` | `.mcp.json` 파일에서 거부할 특정 MCP 서버 목록 | `["filesystem"]` |

251| `disableRemoteControl` | {/* min-version: 2.1.128 */}[Remote Control](/ko/remote-control) 비활성화: `claude remote-control`, `--remote-control` 플래그, 자동 시작 및 세션 내 전환을 차단합니다. 일반적으로 장치별 MDM 적용을 위해 [managed 설정](/ko/permissions#managed-settings)에 배치되지만 모든 범위에서 작동합니다. Claude Code v2.1.128 이상이 필요합니다 | `true` |254| `disableRemoteControl` | {/* min-version: 2.1.128 */}[Remote Control](/ko/remote-control) 비활성화: `claude remote-control`, `--remote-control` 플래그, 자동 시작 및 세션 내 전환을 차단합니다. 일반적으로 장치별 MDM 적용을 위해 [managed 설정](/ko/permissions#managed-settings)에 배치되지만 모든 범위에서 작동합니다. Claude Code v2.1.128 이상이 필요합니다 | `true` |


260| `fallbackModel` | 기본 모델이 과부하이거나 사용할 수 없을 때 순서대로 시도할 폴백 모델입니다. Claude Code는 턴의 나머지 부분에 대해 체인의 다음 사용 가능한 모델로 전환하고 알림을 표시합니다. `"default"`는 기본 모델로 확장됩니다. 체인은 3개 모델로 제한되며 추가 항목은 무시됩니다. 대부분의 배열 설정과 달리 이 키는 설정 파일 전체에서 병합되지 않습니다: 이를 정의하는 최고 우선순위 파일이 전체 체인을 제공합니다. [`--fallback-model`](/ko/cli-reference#cli-flags) 플래그는 한 세션에 대해 이를 재정의합니다. [폴백 모델 체인](/ko/model-config#fallback-model-chains)을 참조하세요 | `["claude-sonnet-4-6", "claude-haiku-4-5"]` |263| `fallbackModel` | 기본 모델이 과부하이거나 사용할 수 없을 때 순서대로 시도할 폴백 모델입니다. Claude Code는 턴의 나머지 부분에 대해 체인의 다음 사용 가능한 모델로 전환하고 알림을 표시합니다. `"default"`는 기본 모델로 확장됩니다. 체인은 3개 모델로 제한되며 추가 항목은 무시됩니다. 대부분의 배열 설정과 달리 이 키는 설정 파일 전체에서 병합되지 않습니다: 이를 정의하는 최고 우선순위 파일이 전체 체인을 제공합니다. [`--fallback-model`](/ko/cli-reference#cli-flags) 플래그는 한 세션에 대해 이를 재정의합니다. [폴백 모델 체인](/ko/model-config#fallback-model-chains)을 참조하세요 | `["claude-sonnet-4-6", "claude-haiku-4-5"]` |

261| `fastModePerSessionOptIn` | `true`일 때 빠른 모드는 세션 간에 지속되지 않습니다. 각 세션은 빠른 모드가 꺼진 상태로 시작되며 사용자가 `/fast`로 활성화해야 합니다. 사용자의 빠른 모드 설정은 여전히 저장됩니다. [세션별 옵트인 필요](/ko/fast-mode#require-per-session-opt-in)를 참조하세요 | `true` |264| `fastModePerSessionOptIn` | `true`일 때 빠른 모드는 세션 간에 지속되지 않습니다. 각 세션은 빠른 모드가 꺼진 상태로 시작되며 사용자가 `/fast`로 활성화해야 합니다. 사용자의 빠른 모드 설정은 여전히 저장됩니다. [세션별 옵트인 필요](/ko/fast-mode#require-per-session-opt-in)를 참조하세요 | `true` |

262| `feedbackSurveyRate` | [세션 품질 설문조사](/ko/data-usage#session-quality-surveys)가 적격일 때 나타날 확률 (0–1). 완전히 억제하려면 `0`으로 설정하거나 `env`에서 [`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY`](/ko/env-vars)를 설정합니다. Bedrock, Vertex 또는 Foundry를 사용할 때 유용하며 기본 샘플 레이트가 적용되지 않습니다 | `0.05` |265| `feedbackSurveyRate` | [세션 품질 설문조사](/ko/data-usage#session-quality-surveys)가 적격일 때 나타날 확률 (0–1). 완전히 억제하려면 `0`으로 설정하거나 `env`에서 [`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY`](/ko/env-vars)를 설정합니다. Bedrock, Vertex 또는 Foundry를 사용할 때 유용하며 기본 샘플 레이트가 적용되지 않습니다 | `0.05` |

263| `fileCheckpointingEnabled` | {/* min-version: 2.1.119 */}}각 편집 전에 파일을 스냅샷하여 [`/rewind`](/ko/checkpointing)가 이를 복원할 수 있도록 합니다. 기본값: `true`. `/config`에 \*\*코드 되감기 (체크포인트)\*\*로 표시됩니다. 환경 변수로 비활성화하려면 `env`에서 [`CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING`](/ko/env-vars)를 설정합니다 | `false` |266| `fileCheckpointingEnabled` | {/* min-version: 2.1.119 */}각 편집 전에 파일을 스냅샷하여 [`/rewind`](/ko/checkpointing)가 이를 복원할 수 있도록 합니다. 기본값: `true`. `/config`에 \*\*코드 되감기 (체크포인트)\*\*로 표시됩니다. 환경 변수로 비활성화하려면 `env`에서 [`CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING`](/ko/env-vars)를 설정합니다 | `false` |

264| `fileSuggestion` | `@` 파일 자동 완성을 위한 사용자 정의 스크립트를 구성합니다. [파일 제안 설정](#file-suggestion-settings)을 참조하세요 | `{"type": "command", "command": "~/.claude/file-suggestion.sh"}` |267| `fileSuggestion` | `@` 파일 자동 완성을 위한 사용자 정의 스크립트를 구성합니다. [파일 제안 설정](#file-suggestion-settings)을 참조하세요 | `{"type": "command", "command": "~/.claude/file-suggestion.sh"}` |

265| `footerLinksRegexes` | {/* min-version: 2.1.176 */}정규식이 턴 출력과 일치할 때 바닥글에 클릭 가능한 배지를 렌더링합니다. 각 항목에는 `pattern`, 명명된 캡처 그룹에서 채워진 `{name}` 자리 표시자가 있는 `url` 템플릿 및 선택적 `label`이 있습니다. 사용자, `--settings` 플래그 및 managed 설정에서만 읽습니다. [바닥글 링크 배지](#footer-link-badges)에서 URL 제약, 스키마 허용 목록 및 제한을 참조하세요. Claude Code v2.1.176 이상이 필요합니다 | `[{"type": "regex", "pattern": "\\b(?<key>PROJ-\\d+)\\b", "url": "https://issues.example.com/browse/{key}", "label": "{key}"}]` |268| `footerLinksRegexes` | {/* min-version: 2.1.176 */}정규식이 턴 출력과 일치할 때 바닥글에 클릭 가능한 배지를 렌더링합니다. 각 항목에는 `pattern`, 명명된 캡처 그룹에서 채워진 `{name}` 자리 표시자가 있는 `url` 템플릿 및 선택적 `label`이 있습니다. 사용자, `--settings` 플래그 및 managed 설정에서만 읽습니다. [바닥글 링크 배지](#footer-link-badges)에서 URL 제약, 스키마 허용 목록 및 제한을 참조하세요. Claude Code v2.1.176 이상이 필요합니다 | `[{"type": "regex", "pattern": "\\b(?<key>PROJ-\\d+)\\b", "url": "https://issues.example.com/browse/{key}", "label": "{key}"}]` |

266| `forceLoginMethod` | `claudeai`를 사용하여 Claude.ai 계정으로만 로그인을 제한하거나, `console`을 사용하여 Claude Console 계정으로만 제한합니다. Managed 설정에서 설정되면 `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` 또는 `apiKeyHelper`로 인증된 세션은 시작 시 차단됩니다. 어느 값도 먼저 자사 OAuth 없이 만족할 수 없기 때문입니다. Bedrock, Vertex 및 Foundry와 같은 제3자 공급자 세션은 차단되지 않습니다: 이들은 Anthropic이 아닌 클라우드 공급자에 대해 인증합니다 | `claudeai` |269| `forceLoginMethod` | `claudeai`를 사용하여 Claude.ai 계정으로만 로그인을 제한하거나, `console`을 사용하여 Claude Console 계정으로만 제한합니다. Managed 설정에서 설정되면 `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` 또는 `apiKeyHelper`로 인증된 세션은 시작 시 차단됩니다. 어느 값도 먼저 자사 OAuth 없이 만족할 수 없기 때문입니다. Bedrock, Vertex 및 Foundry와 같은 제3자 공급자 세션은 차단되지 않습니다: 이들은 Anthropic이 아닌 클라우드 공급자에 대해 인증합니다 | `claudeai` |


288| `preferredNotifChannel` | 작업 완료 및 권한 프롬프트 알림 방법: `"auto"`, `"terminal_bell"`, `"iterm2"`, `"iterm2_with_bell"`, `"kitty"`, `"ghostty"` 또는 `"notifications_disabled"`. 기본값: `"auto"`로, iTerm2, Ghostty 및 Kitty에서 데스크톱 알림을 보내고 다른 터미널에서는 아무것도 하지 않습니다. 모든 터미널에서 벨 문자를 울리려면 `"terminal_bell"`을 설정합니다. `/config`에 **알림**으로 표시됩니다. [터미널 벨 또는 알림 받기](/ko/terminal-config#get-a-terminal-bell-or-notification)를 참조하세요 | `"terminal_bell"` |291| `preferredNotifChannel` | 작업 완료 및 권한 프롬프트 알림 방법: `"auto"`, `"terminal_bell"`, `"iterm2"`, `"iterm2_with_bell"`, `"kitty"`, `"ghostty"` 또는 `"notifications_disabled"`. 기본값: `"auto"`로, iTerm2, Ghostty 및 Kitty에서 데스크톱 알림을 보내고 다른 터미널에서는 아무것도 하지 않습니다. 모든 터미널에서 벨 문자를 울리려면 `"terminal_bell"`을 설정합니다. `/config`에 **알림**으로 표시됩니다. [터미널 벨 또는 알림 받기](/ko/terminal-config#get-a-terminal-bell-or-notification)를 참조하세요 | `"terminal_bell"` |

289| `prefersReducedMotion` | 접근성을 위해 UI 애니메이션 (스피너, shimmer, flash 효과) 감소 또는 비활성화 | `true` |292| `prefersReducedMotion` | 접근성을 위해 UI 애니메이션 (스피너, shimmer, flash 효과) 감소 또는 비활성화 | `true` |

290| `prUrlTemplate` | PR 배지에 대한 URL 템플릿으로 바닥글 및 도구 결과 요약에 표시됩니다. `gh`에서 보고한 PR URL에서 `{host}`, `{owner}`, `{repo}`, `{number}` 및 `{url}`을 대체합니다. `github.com` 대신 내부 코드 검토 도구를 가리키도록 사용합니다. Claude의 산문에서 `#123` 자동 링크에는 영향을 주지 않습니다 | `"https://reviews.example.com/{owner}/{repo}/pull/{number}"` |293| `prUrlTemplate` | PR 배지에 대한 URL 템플릿으로 바닥글 및 도구 결과 요약에 표시됩니다. `gh`에서 보고한 PR URL에서 `{host}`, `{owner}`, `{repo}`, `{number}` 및 `{url}`을 대체합니다. `github.com` 대신 내부 코드 검토 도구를 가리키도록 사용합니다. Claude의 산문에서 `#123` 자동 링크에는 영향을 주지 않습니다 | `"https://reviews.example.com/{owner}/{repo}/pull/{number}"` |

294| `remoteControlAtStartup` | {/* min-version: 2.1.119 */}}각 대화형 세션이 시작될 때 [Remote Control](/ko/remote-control)을 자동으로 연결합니다. `/remote-control`을 기다리는 대신 `true`로 설정하여 항상 자동 연결하거나, `false`로 설정하여 절대 자동 연결하지 않거나, 조직의 기본값을 따르려면 설정 해제합니다. `/config`에 **모든 세션에 대해 Remote Control 활성화**로 표시됩니다. [모든 세션에 대해 Remote Control 활성화](/ko/remote-control#enable-remote-control-for-all-sessions)를 참조하세요 | `false` |

291| `requiredMaximumVersion` | Managed 설정만. 시작할 수 있는 최대 Claude Code 버전입니다. 실행 중인 버전이 더 최신이면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 승인된 버전을 설치하도록 지시합니다. `claude install <version>`도 작동할 수 있습니다. 배경 자동 업데이트 및 `claude update`는 천장 위의 버전을 건너뜁니다. 범위 내 설치는 범위 내로 유지됩니다. `claude update`, `claude install` 및 `claude doctor`는 사용자가 복구할 수 있도록 천장 위에서 계속 작동합니다. 이 설정보다 먼저 나온 버전은 무시합니다 | `"2.1.150"` |295| `requiredMaximumVersion` | Managed 설정만. 시작할 수 있는 최대 Claude Code 버전입니다. 실행 중인 버전이 더 최신이면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 승인된 버전을 설치하도록 지시합니다. `claude install <version>`도 작동할 수 있습니다. 배경 자동 업데이트 및 `claude update`는 천장 위의 버전을 건너뜁니다. 범위 내 설치는 범위 내로 유지됩니다. `claude update`, `claude install` 및 `claude doctor`는 사용자가 복구할 수 있도록 천장 위에서 계속 작동합니다. 이 설정보다 먼저 나온 버전은 무시합니다 | `"2.1.150"` |

292| `requiredMinimumVersion` | Managed 설정만. 시작하는 데 필요한 최소 Claude Code 버전입니다. 실행 중인 버전이 더 오래되면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 업데이트하도록 지시합니다. `claude update`, `claude install` 및 `claude doctor`는 사용자가 복구할 수 있도록 바닥 아래에서 계속 작동합니다. 시작을 차단하지 않지만 다운그레이드를 방지하는 `minimumVersion`과 다릅니다. 이 설정보다 먼저 나온 버전은 무시합니다 | `"2.1.150"` |296| `requiredMinimumVersion` | Managed 설정만. 시작하는 데 필요한 최소 Claude Code 버전입니다. 실행 중인 버전이 더 오래되면 Claude Code는 시작 시 종료되고 사용자에게 조직의 승인된 방법을 통해 업데이트하도록 지시합니다. `claude update`, `claude install` 및 `claude doctor`는 사용자가 복구할 수 있도록 바닥 아래에서 계속 작동합니다. 시작을 차단하지 않지만 다운그레이드를 방지하는 `minimumVersion`과 다릅니다. 이 설정보다 먼저 나온 버전은 무시합니다 | `"2.1.150"` |

297| `respondToBashCommands` | {/* min-version: 2.1.186 */}입력 상자 `!` 셸 명령이 실행된 후 Claude가 응답할지 여부입니다. 응답 없이 명령 출력을 컨텍스트에 추가하려면 `false`로 설정합니다. 기본값: `true`. [접두사 `!`를 사용한 셸 모드](/ko/interactive-mode#shell-mode-with-prefix)를 참조하세요. Claude Code v2.1.186 이상이 필요합니다 | `false` |

293| `respectGitignore` | `@` 파일 선택기가 `.gitignore` 패턴을 존중할지 여부를 제어합니다. `true` (기본값)일 때 `.gitignore` 패턴과 일치하는 파일은 제안에서 제외됩니다 | `false` |298| `respectGitignore` | `@` 파일 선택기가 `.gitignore` 패턴을 존중할지 여부를 제어합니다. `true` (기본값)일 때 `.gitignore` 패턴과 일치하는 파일은 제안에서 제외됩니다 | `false` |

294| `showClearContextOnPlanAccept` | 계획 수락 화면에서 "컨텍스트 지우기" 옵션을 표시합니다. 기본값: `false`. 옵션을 복원하려면 `true`로 설정합니다 | `true` |299| `showClearContextOnPlanAccept` | 계획 수락 화면에서 "컨텍스트 지우기" 옵션을 표시합니다. 기본값: `false`. 옵션을 복원하려면 `true`로 설정합니다 | `true` |

295| `showThinkingSummaries` | 대화형 세션에서 [확장 사고](/ko/model-config#extended-thinking) 요약을 표시합니다. 설정되지 않거나 `false` (대화형 모드의 기본값)일 때 사고 블록은 API에 의해 편집되고 축소된 스텁으로 표시됩니다. 편집은 표시되는 내용만 변경하고 모델이 생성하는 내용은 변경하지 않습니다. 사고 지출을 줄이려면 [예산을 낮추거나 사고를 비활성화](/ko/model-config#extended-thinking)하세요. 이 설정은 비대화형 모드 (`-p`), Agent SDK 또는 VS Code와 같은 IDE 확장에서는 영향을 주지 않습니다 | `true` |300| `showThinkingSummaries` | 대화형 세션에서 [확장 사고](/ko/model-config#extended-thinking) 요약을 표시합니다. 설정되지 않거나 `false` (대화형 모드의 기본값)일 때 사고 블록은 API에 의해 편집되고 축소된 스텁으로 표시됩니다. 편집은 표시되는 내용만 변경하고 모델이 생성하는 내용은 변경하지 않습니다. 사고 지출을 줄이려면 [예산을 낮추거나 사고를 비활성화](/ko/model-config#extended-thinking)하세요. 이 설정은 비대화형 모드 (`-p`), Agent SDK 또는 VS Code와 같은 IDE 확장에서는 영향을 주지 않습니다 | `true` |


305| `strictKnownMarketplaces` | (Managed 설정만) 플러그인 마켓플레이스 소스의 허용 목록입니다. 정의되지 않음 = 제한 없음, 빈 배열 = 잠금. 마켓플레이스 추가 및 플러그인 설치, 업데이트, 새로고침 및 자동 업데이트에 적용되므로 정책이 설정되기 전에 추가된 마켓플레이스는 플러그인을 가져오는 데 사용할 수 없습니다. [Managed 마켓플레이스 제한](/ko/plugin-marketplaces#managed-marketplace-restrictions)을 참조하세요 | `[{ "source": "github", "repo": "acme-corp/plugins" }]` |310| `strictKnownMarketplaces` | (Managed 설정만) 플러그인 마켓플레이스 소스의 허용 목록입니다. 정의되지 않음 = 제한 없음, 빈 배열 = 잠금. 마켓플레이스 추가 및 플러그인 설치, 업데이트, 새로고침 및 자동 업데이트에 적용되므로 정책이 설정되기 전에 추가된 마켓플레이스는 플러그인을 가져오는 데 사용할 수 없습니다. [Managed 마켓플레이스 제한](/ko/plugin-marketplaces#managed-marketplace-restrictions)을 참조하세요 | `[{ "source": "github", "repo": "acme-corp/plugins" }]` |

306| `strictPluginOnlyCustomization` | (Managed 설정만) 플러그인 또는 managed 설정에서만 올 수 있도록 사용자 및 프로젝트 소스에서 skills, agents, hooks 및 MCP 서버를 차단합니다. `true`는 네 가지 모두를 잠그고, 배열은 명명된 것만 잠급니다. [`strictPluginOnlyCustomization`](#strictpluginonlycustomization)을 참조하세요 | `["skills", "hooks"]` |311| `strictPluginOnlyCustomization` | (Managed 설정만) 플러그인 또는 managed 설정에서만 올 수 있도록 사용자 및 프로젝트 소스에서 skills, agents, hooks 및 MCP 서버를 차단합니다. `true`는 네 가지 모두를 잠그고, 배열은 명명된 것만 잠급니다. [`strictPluginOnlyCustomization`](#strictpluginonlycustomization)을 참조하세요 | `["skills", "hooks"]` |

307| `syntaxHighlightingDisabled` | diffs, 코드 블록 및 파일 미리보기에서 구문 강조 비활성화 | `true` |312| `syntaxHighlightingDisabled` | diffs, 코드 블록 및 파일 미리보기에서 구문 강조 비활성화 | `true` |

308| `teammateMode` | [에이전트 팀](/ko/agent-teams) 팀원이 표시되는 방식: `auto` (tmux 또는 iTerm2에서 분할 창 선택, 그 외에는 in-process), `in-process` 또는 `tmux` (tmux 또는 iTerm2를 사용하여 분할 창 선택, 터미널에서 감지됨). `--teammate-mode`은 한 세션에 대해 이를 재정의합니다. [디스플레이 모드 선택](/ko/agent-teams#choose-a-display-mode)을 참조하세요 | `"in-process"` |313| `teammateMode` | [에이전트 팀](/ko/agent-teams) 팀원이 표시되는 방식: `in-process` (기본값), `auto` (tmux 또는 iTerm2에서 분할 창 선택, 그 외에는 in-process), `tmux` (tmux 또는 iTerm2를 사용하여 분할 창 선택, 터미널에서 감지됨) 또는 {/* min-version: 2.1.186 */}}`iterm2` (iTerm2 기본 분할 창 via `it2` CLI, v2.1.186에서 추가됨). 기본값은 v2.1.179에서 `auto`에서 변경되었습니다. `--teammate-mode`은 한 세션에 대해 이를 재정의합니다. [디스플레이 모드 선택](/ko/agent-teams#choose-a-display-mode)을 참조하세요 | `"auto"` |

309| `terminalProgressBarEnabled` | 지원되는 터미널에서 터미널 진행률 표시줄을 표시합니다: ConEmu, Ghostty 1.2.0+ 및 iTerm2 3.6.6+. 기본값: `true`. `/config`에 **터미널 진행률 표시줄**로 표시됩니다 | `false` |314| `terminalProgressBarEnabled` | 지원되는 터미널에서 터미널 진행률 표시줄을 표시합니다: ConEmu, Ghostty 1.2.0+ 및 iTerm2 3.6.6+. 기본값: `true`. `/config`에 **터미널 진행률 표시줄**로 표시됩니다 | `false` |

310| `theme` | {/* min-version: 2.1.119 */}인터페이스의 색상 테마: `"auto"`, `"dark"`, `"light"`, `"dark-daltonized"`, `"light-daltonized"`, `"dark-ansi"`, `"light-ansi"` 또는 `"custom:<slug>"` 또는 `"custom:<plugin-name>:<slug>"`과 같은 사용자 정의 테마 참조. 기본값: `"dark"`. [사용자 정의 테마 만들기](/ko/terminal-config#create-a-custom-theme)를 참조하세요. `/config`에 **테마**로 표시됩니다 | `"dark"` |315| `theme` | {/* min-version: 2.1.119 */}인터페이스의 색상 테마: `"auto"`, `"dark"`, `"light"`, `"dark-daltonized"`, `"light-daltonized"`, `"dark-ansi"`, `"light-ansi"` 또는 `"custom:<slug>"` 또는 `"custom:<plugin-name>:<slug>"`과 같은 사용자 정의 테마 참조. 기본값: `"dark"`. [사용자 정의 테마 만들기](/ko/terminal-config#create-a-custom-theme)를 참조하세요. `/config`에 **테마**로 표시됩니다 | `"dark"` |

311| `tui` | 터미널 UI 렌더러입니다. 깜박임 없는 [alt-screen 렌더러](/ko/fullscreen)가 있는 가상화된 스크롤백을 위해 `"fullscreen"`을 사용합니다. 클래식 메인 화면 렌더러를 위해 `"default"`를 사용합니다. `/tui`를 통해 설정합니다. [`CLAUDE_CODE_NO_FLICKER`](/ko/env-vars) 환경 변수도 설정할 수 있습니다. [에이전트 보기](/ko/agent-view)에서 열린 배경 세션은 이 설정과 관계없이 항상 fullscreen 렌더러를 사용합니다 | `"fullscreen"` |316| `tui` | 터미널 UI 렌더러입니다. 깜박임 없는 [alt-screen 렌더러](/ko/fullscreen)가 있는 가상화된 스크롤백을 위해 `"fullscreen"`을 사용합니다. 클래식 메인 화면 렌더러를 위해 `"default"`를 사용합니다. `/tui`를 통해 설정합니다. [`CLAUDE_CODE_NO_FLICKER`](/ko/env-vars) 환경 변수도 설정할 수 있습니다. [에이전트 보기](/ko/agent-view)에서 열린 배경 세션은 이 설정과 관계없이 항상 fullscreen 렌더러를 사용합니다 | `"fullscreen"` |


389고급 샌드박싱 동작을 구성합니다. 샌드박싱은 bash 명령을 파일 시스템 및 네트워크에서 격리합니다. 자세한 내용은 [Sandboxing](/ko/sandboxing)을 참조하세요.394고급 샌드박싱 동작을 구성합니다. 샌드박싱은 bash 명령을 파일 시스템 및 네트워크에서 격리합니다. 자세한 내용은 [Sandboxing](/ko/sandboxing)을 참조하세요.

390 395 

391| 키 | 설명 | 예제 |396| 키 | 설명 | 예제 |

392| :------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :-------------------------------- |397| :------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------- |

393| `enabled` | bash 샌드박싱 활성화 (macOS, Linux 및 WSL2). 기본값: false | `true` |398| `enabled` | bash 샌드박싱 활성화 (macOS, Linux 및 WSL2). 기본값: false | `true` |

394| `failIfUnavailable` | `sandbox.enabled`가 true이지만 샌드박스를 시작할 수 없는 경우 (종속성 누락, 지원되지 않는 플랫폼) 시작 시 오류로 종료합니다. false (기본값)일 때 경고가 표시되고 명령이 샌드박싱되지 않은 상태로 실행됩니다. Managed 설정 배포에서 샌드박싱을 하드 게이트로 요구하는 경우를 위한 것입니다 | `true` |399| `failIfUnavailable` | `sandbox.enabled`가 true이지만 샌드박스를 시작할 수 없는 경우 (종속성 누락, 지원되지 않는 플랫폼) 시작 시 오류로 종료합니다. false (기본값)일 때 경고가 표시되고 명령이 샌드박싱되지 않은 상태로 실행됩니다. Managed 설정 배포에서 샌드박싱을 하드 게이트로 요구하는 경우를 위한 것입니다 | `true` |

395| `autoAllowBashIfSandboxed` | 샌드박싱되면 bash 명령 자동 승인. 기본값: true | `true` |400| `autoAllowBashIfSandboxed` | 샌드박싱되면 bash 명령 자동 승인. 기본값: true | `true` |


411| `network.socksProxyPort` | 자신의 프록시를 가져오려는 경우 사용되는 SOCKS5 프록시 포트입니다. 지정되지 않으면 Claude가 자신의 프록시를 실행합니다. | `8081` |416| `network.socksProxyPort` | 자신의 프록시를 가져오려는 경우 사용되는 SOCKS5 프록시 포트입니다. 지정되지 않으면 Claude가 자신의 프록시를 실행합니다. | `8081` |

412| `enableWeakerNestedSandbox` | 권한이 없는 Docker 환경에서 더 약한 샌드박스를 활성화합니다 (Linux 및 WSL2만). **보안을 감소시킵니다.** 기본값: false | `true` |417| `enableWeakerNestedSandbox` | 권한이 없는 Docker 환경에서 더 약한 샌드박스를 활성화합니다 (Linux 및 WSL2만). **보안을 감소시킵니다.** 기본값: false | `true` |

413| `enableWeakerNetworkIsolation` | (macOS만) 샌드박스에서 시스템 TLS 신뢰 서비스 (`com.apple.trustd.agent`)에 대한 액세스를 허용합니다. MITM 프록시 및 사용자 정의 CA를 사용하는 `httpProxyPort`를 사용할 때 `gh`, `gcloud` 및 `terraform`과 같은 Go 기반 도구가 TLS 인증서를 확인하는 데 필요합니다. **보안을 감소시킵니다** 잠재적 데이터 유출 경로를 열어서. 기본값: false | `true` |418| `enableWeakerNetworkIsolation` | (macOS만) 샌드박스에서 시스템 TLS 신뢰 서비스 (`com.apple.trustd.agent`)에 대한 액세스를 허용합니다. MITM 프록시 및 사용자 정의 CA를 사용하는 `httpProxyPort`를 사용할 때 `gh`, `gcloud` 및 `terraform`과 같은 Go 기반 도구가 TLS 인증서를 확인하는 데 필요합니다. **보안을 감소시킵니다** 잠재적 데이터 유출 경로를 열어서. 기본값: false | `true` |

419| `allowAppleEvents` | (macOS만) 샌드박싱된 명령이 Apple Events를 보낼 수 있도록 허용합니다. `open`, `osascript` 및 URL을 브라우저에서 열 수 있는 도구에 필요하며, 그렇지 않으면 오류 `-600`으로 실패합니다. **코드 실행 격리를 제거합니다.** 샌드박싱된 명령은 사용자 프롬프트 없이 다른 애플리케이션을 샌드박싱되지 않은 상태로 시작할 수 있습니다. 또한 Terminal과 같은 실행 중인 애플리케이션에 AppleScript 명령을 보낼 수 있으며, 이는 앱별 macOS 자동화 동의 프롬프트 (TCC)의 대상입니다. 사용자, managed 또는 CLI 설정에서만 적용되며 프로젝트 설정에서는 적용되지 않습니다. 기본값: false | `true` |

414| `bwrapPath` | (Managed 설정만, Linux/WSL2) bubblewrap (`bwrap`) 바이너리의 절대 경로입니다. `PATH`를 통한 자동 감지를 재정의합니다. [managed 설정](/ko/settings#settings-files)에서만 적용되며 사용자 또는 프로젝트 설정에서는 적용되지 않습니다. `bwrap`이 managed 환경에서 비표준 위치에 설치된 경우 유용합니다. | `/opt/admin/bwrap` |420| `bwrapPath` | (Managed 설정만, Linux/WSL2) bubblewrap (`bwrap`) 바이너리의 절대 경로입니다. `PATH`를 통한 자동 감지를 재정의합니다. [managed 설정](/ko/settings#settings-files)에서만 적용되며 사용자 또는 프로젝트 설정에서는 적용되지 않습니다. `bwrap`이 managed 환경에서 비표준 위치에 설치된 경우 유용합니다. | `/opt/admin/bwrap` |

415| `socatPath` | (Managed 설정만, Linux/WSL2) 샌드박스 네트워크 프록시에 사용되는 `socat` 바이너리의 절대 경로입니다. `PATH`를 통한 자동 감지를 재정의합니다. Managed 설정에서만 적용됩니다. | `/opt/admin/socat` |421| `socatPath` | (Managed 설정만, Linux/WSL2) 샌드박스 네트워크 프록시에 사용되는 `socat` 바이너리의 절대 경로입니다. `PATH`를 통한 자동 감지를 재정의합니다. Managed 설정에서만 적용됩니다. | `/opt/admin/socat` |

416 422 


467* Pull request 설명은 일반 텍스트입니다473* Pull request 설명은 일반 텍스트입니다

468 474 

469| 키 | 설명 |475| 키 | 설명 |

470| :------- | :------------------------------------------------------------------------ |476| :----------- | :------------------------------------------------------------------------------------------------------------------------------------------------- |

471| `commit` | git 커밋에 대한 attribution으로 모든 trailers를 포함합니다. 빈 문자열은 커밋 attribution을 숨깁니다 |477| `commit` | git 커밋에 대한 attribution으로 모든 trailers를 포함합니다. 빈 문자열은 커밋 attribution을 숨깁니다 |

472| `pr` | Pull request 설명에 대한 attribution입니다. 빈 문자열은 pull request attribution을 숨깁니다 |478| `pr` | Pull request 설명에 대한 attribution입니다. 빈 문자열은 pull request attribution을 숨깁니다 |

479| `sessionUrl` | 웹 또는 Remote Control 세션에서 실행할 때 커밋에 `Claude-Session` trailer로 claude.ai 세션 링크를 추가할지 여부 및 pull request 설명의 링크. 기본값: `true`. 링크를 생략하려면 `false`로 설정합니다 |

473 480 

474**기본 커밋 attribution:**481**기본 커밋 attribution:**

475 482 


497```504```

498 505 

499<Note>506<Note>

500 `attribution` 설정은 더 이상 사용되지 않는 `includeCoAuthoredBy` 설정보다 우선합니다. 모든 attribution을 숨기려면 `commit` 및 `pr`을 빈 문자열로 설정합니다.507 `attribution` 설정은 더 이상 사용되지 않는 `includeCoAuthoredBy` 설정보다 우선합니다. 모든 attribution을 숨기려면 `commit` 및 `pr`을 빈 문자열로 설정하고 `sessionUrl`을 `false`로 설정합니다.

501</Note>508</Note>

502 509 

503<h3 id="file-suggestion-settings">510<h3 id="file-suggestion-settings">

skills.md +38 −1

Details

632 632 

633플러그인 skills은 `skillOverrides`의 영향을 받지 않습니다. `/plugin`을 통해 이를 관리합니다.633플러그인 skills은 `skillOverrides`의 영향을 받지 않습니다. `/plugin`을 통해 이를 관리합니다.

634 634 

635<h2 id="evaluate-and-iterate-on-a-skill">

636 Skills 평가 및 반복

637</h2>

638 

639skill이 트리거되는 것을 보는 것은 Claude가 이를 찾았다는 뜻이지, 의도한 대로 작동했다는 뜻이 아닙니다. skill이 작동하는지 알기 위해 두 가지를 별도로 측정합니다: Claude가 호출해야 하는 프롬프트에서 호출하는지 여부, 그리고 호출할 때 출력이 예상과 일치하는지 여부입니다.

640 

641둘 다에 대한 확인은 기준선 비교입니다. 몇 가지 현실적인 프롬프트를 수집하고, skill을 사용 가능하게 한 새로운 세션에서 각각을 실행한 다음 [비활성화된](#override-skill-visibility-from-settings) 상태에서 다시 실행하고, 결과를 비교합니다. 새로운 세션이 중요합니다. skill 작성의 남은 컨텍스트가 작성된 지침의 간격을 숨기기 때문입니다.

642 

643<h3 id="run-evals-with-skill-creator">

644 skill-creator로 evals 실행

645</h3>

646 

647[`skill-creator` 플러그인](https://github.com/anthropics/claude-plugins-official/tree/main/plugins/skill-creator)은 Claude Code 내에서 비교 루프를 자동화합니다. 공식 마켓플레이스에서 설치합니다:

648 

649```text theme={null}

650/plugin install skill-creator@claude-plugins-official

651```

652 

653Claude Code가 플러그인을 마켓플레이스에서 찾을 수 없다고 보고하면, 마켓플레이스가 누락되었거나 오래되었습니다. `/plugin marketplace update claude-plugins-official`를 실행하여 새로 고치거나, 아직 추가하지 않았다면 `/plugin marketplace add anthropics/claude-plugins-official`를 실행합니다. 그 다음 설치를 다시 시도합니다.

654 

655설치 후 `/reload-plugins`를 실행하여 현재 세션에서 플러그인의 skills를 사용 가능하게 합니다. 그 다음 Claude에게 기존 skill을 평가하도록 요청합니다. 예를 들어 `evaluate my summarize-changes skill with skill-creator`. 플러그인은 테스트 케이스를 작성하고 루프를 실행하도록 안내합니다:

656 

657* **테스트 케이스**: skill 디렉토리 내의 `evals/evals.json`에 프롬프트, 입력 파일 및 예상 동작을 저장합니다.

658* **격리된 실행**: 각 테스트 케이스당 [subagent](/ko/sub-agents)를 생성하므로 각 실행이 깨끗한 컨텍스트로 시작되고, 토큰 수와 기간을 기록합니다.

659* **채점**: 각 어설션을 출력에 대해 확인하고 `grading.json`에 증거와 함께 통과 또는 실패를 작성합니다.

660* **벤치마크**: skill 있음 대 skill 없음에 대한 통과율, 시간 및 토큰을 `benchmark.json`에 집계하므로 토큰 및 시간 오버헤드에 대한 통과율 개선을 비교할 수 있습니다.

661* **버전 비교**: skill의 두 버전 간에 블라인드 A/B를 실행하므로 커밋하기 전에 편집이 개선인지 확인할 수 있습니다.

662* **설명 튜닝**: 트리거해야 하고 트리거하지 않아야 하는 프롬프트를 생성하고, 히트율을 측정하고, skill이 잘못된 요청에서 활성화될 때 설명 편집을 제안합니다.

663* **리뷰 뷰어**: 각 출력을 검사하고 다음 반복이 읽을 정성적 피드백을 기록할 수 있는 HTML 보고서를 엽니다.

664 

665eval 파일 형식 및 전체 반복 워크플로우는 agentskills.io의 [Evaluating skill output quality](https://agentskills.io/skill-creation/evaluating-skills)를 참조하세요. 벤치마크 및 비교 모드의 배경은 [skill-creator 공지](https://claude.com/blog/improving-skill-creator-test-measure-and-refine-agent-skills)를 참조하세요.

666 

635<h2 id="share-skills">667<h2 id="share-skills">

636 Skills 공유668 Skills 공유

637</h2>669</h2>


8503. 설명과 더 가깝게 일치하도록 요청을 다시 표현해봅니다.8823. 설명과 더 가깝게 일치하도록 요청을 다시 표현해봅니다.

8514. skill이 사용자 호출 가능하면 `/skill-name`으로 직접 호출합니다.8834. skill이 사용자 호출 가능하면 `/skill-name`으로 직접 호출합니다.

852 884 

885frontmatter YAML이 잘못된 형식이면, Claude Code는 skill 본문을 빈 메타데이터로 로드하므로 `/skill-name`은 여전히 작동하지만 Claude는 일치시킬 `description`이 없습니다. `--debug`로 실행하여 구문 분석 오류를 확인합니다.

886 

853<h3 id="skill-triggers-too-often">887<h3 id="skill-triggers-too-often">

854 Skill이 너무 자주 트리거됨888 Skill이 너무 자주 트리거됨

855</h3>889</h3>


863 Skill 설명이 잘림897 Skill 설명이 잘림

864</h3>898</h3>

865 899 

866Skill 설명은 Claude가 사용 가능한 항목을 알 수 있도록 컨텍스트에 로드됩니다. 모든 skill 이름은 항상 포함되지만, 많은 skills가 있으면 설명이 단축되어 문자 예산에 맞출 수 있으며, 이는 Claude가 요청과 일치하는 데 필요한 키워드를 제거할 수 있습니다. 예산은 모델의 컨텍스트 윈도우의 1%에서 확장됩니다. 예산이 초과되면, 가장 적게 호출하는 skills의 설명이 먼저 삭제되므로 실제로 사용하는 skills는 전체 텍스트를 유지합니다. `/doctor`를 실행하여 예산이 초과되었는지 확인하고 어떤 skills가 영향을 받는지 확인합니다.900Skill 설명은 Claude가 사용 가능한 항목을 알 수 있도록 컨텍스트에 로드됩니다. 모든 skill 이름은 항상 포함되지만, 많은 skills가 있으면 설명이 단축되어 문자 예산에 맞출 수 있으며, 이는 Claude가 요청과 일치하는 데 필요한 키워드를 제거할 수 있습니다. 예산은 모델의 컨텍스트 윈도우의 1%에서 확장됩니다. 예산이 초과되면, 가장 적게 호출하는 skills의 설명이 먼저 삭제되므로 실제로 사용하는 skills는 전체 텍스트를 유지합니다. `/doctor`를 실행하여 얼마나 많은 skill 설명이 단축되거나 삭제되었는지, 어떤 skills가 영향을 받는지 확인합니다.

867 901 

868예산을 높이려면 [`skillListingBudgetFraction`](/ko/settings#available-settings) 설정(예: `0.02` = 2%)을 설정하거나 `SLASH_COMMAND_TOOL_CHAR_BUDGET` 환경 변수를 고정 문자 수로 설정합니다. 다른 skills를 위해 예산을 확보하려면 [`skillOverrides`](#override-skill-visibility-from-settings)에서 낮은 우선순위 항목을 `"name-only"`로 설정하여 설명 없이 나열되도록 합니다. 또한 소스에서 `description` 및 `when_to_use` 텍스트를 자를 수 있습니다: 주요 사용 사례를 먼저 배치합니다. 각 항목의 결합된 텍스트는 예산과 관계없이 1,536자로 제한되기 때문입니다. 이 제한은 [`maxSkillDescriptionChars`](/ko/settings#available-settings)로 구성할 수 있습니다.902예산을 높이려면 [`skillListingBudgetFraction`](/ko/settings#available-settings) 설정(예: `0.02` = 2%)을 설정하거나 `SLASH_COMMAND_TOOL_CHAR_BUDGET` 환경 변수를 고정 문자 수로 설정합니다. 다른 skills를 위해 예산을 확보하려면 [`skillOverrides`](#override-skill-visibility-from-settings)에서 낮은 우선순위 항목을 `"name-only"`로 설정하여 설명 없이 나열되도록 합니다. 또한 소스에서 `description` 및 `when_to_use` 텍스트를 자를 수 있습니다: 주요 사용 사례를 먼저 배치합니다. 각 항목의 결합된 텍스트는 예산과 관계없이 1,536자로 제한되기 때문입니다. 이 제한은 [`maxSkillDescriptionChars`](/ko/settings#available-settings)로 구성할 수 있습니다.

869 903 


872</h2>906</h2>

873 907 

874* **[구성 디버깅](/ko/debug-your-config)**: skill이 나타나지 않거나 트리거되지 않는 이유 진단908* **[구성 디버깅](/ko/debug-your-config)**: skill이 나타나지 않거나 트리거되지 않는 이유 진단

909* **[Skill 출력 품질 평가](https://agentskills.io/skill-creation/evaluating-skills)**: agentskills.io의 eval 파일 형식 및 반복 워크플로우

910* **[Skill 작성 모범 사례](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)**: Claude 제품 전체에 적용되는 작성 지침

875* **[Subagents](/ko/sub-agents)**: 특화된 에이전트에 작업 위임911* **[Subagents](/ko/sub-agents)**: 특화된 에이전트에 작업 위임

876* **[플러그인](/ko/plugins)**: 다른 확장과 함께 skills 패키징 및 배포912* **[플러그인](/ko/plugins)**: 다른 확장과 함께 skills 패키징 및 배포

877* **[Hooks](/ko/hooks)**: 도구 이벤트 주변 워크플로우 자동화913* **[Hooks](/ko/hooks)**: 도구 이벤트 주변 워크플로우 자동화

878* **[메모리](/ko/memory)**: 지속적인 컨텍스트를 위한 CLAUDE.md 파일 관리914* **[메모리](/ko/memory)**: 지속적인 컨텍스트를 위한 CLAUDE.md 파일 관리

879* **[명령어](/ko/commands)**: 기본 제공 명령어 및 번들 skills 참조915* **[명령어](/ko/commands)**: 기본 제공 명령어 및 번들 skills 참조

880* **[권한](/ko/permissions)**: 도구 및 skill 액세스 제어916* **[권한](/ko/permissions)**: 도구 및 skill 액세스 제어

917* **[Claude Tag skills](https://claude.com/docs/claude-tag/admins/skills-repo)**: 리포지토리에 커밋된 프로젝트 skills는 해당 리포지토리가 Claude Tag 채널에서 사용될 때도 로드됩니다

slack.md +15 −1

Details

6 6 

7> Slack 워크스페이스에서 직접 코딩 작업 위임7> Slack 워크스페이스에서 직접 코딩 작업 위임

8 8 

9<Note>

10 Slack의 Claude Code는 Team 및 Enterprise 워크스페이스를 위해 [Claude Tag](https://claude.com/docs/claude-tag/overview)로 대체되고 있습니다. Claude Tag는 @Claude를 조직의 공유 ID로 실행하며 관리자가 구성한 액세스 권한을 가지고 동일한 Slack 앱에서 실행되므로 다시 설치할 필요가 없으며 기존 설정은 전환 중에 계속 작동합니다. 워크스페이스를 전환하려면 [이전 Slack의 Claude에서 마이그레이션](https://claude.com/docs/claude-tag/admins/migrate-from-earlier)을 참조하십시오.

11</Note>

12 

9Slack의 Claude Code는 Claude Code의 강력한 기능을 Slack 워크스페이스에 직접 가져옵니다. `@Claude`를 언급하여 코딩 작업을 요청하면, Claude는 자동으로 의도를 감지하고 웹에서 Claude Code 세션을 생성하여 팀 대화를 떠나지 않고도 개발 작업을 위임할 수 있습니다.13Slack의 Claude Code는 Claude Code의 강력한 기능을 Slack 워크스페이스에 직접 가져옵니다. `@Claude`를 언급하여 코딩 작업을 요청하면, Claude는 자동으로 의도를 감지하고 웹에서 Claude Code 세션을 생성하여 팀 대화를 떠나지 않고도 개발 작업을 위임할 수 있습니다.

10 14 

11이 통합은 기존 Slack용 Claude 앱을 기반으로 하지만 코딩 관련 요청에 대해 웹의 Claude Code로 지능형 라우팅을 추가합니다.15이 통합은 기존 Slack용 Claude 앱을 기반으로 하지만 코딩 관련 요청에 대해 웹의 Claude Code로 지능형 라우팅을 추가합니다. 각 세션은 사용자의 Claude 계정에서 실행되며, 연결된 저장소와 사용자의 플랜 한도를 사용합니다.

12 16 

13<h2 id="use-cases">17<h2 id="use-cases">

14 사용 사례18 사용 사례


217 문제 해결221 문제 해결

218</h2>222</h2>

219 223 

224<h3 id="claude-code-is-not-enabled-for-your-account">

225 "Claude Code가 계정에서 활성화되지 않았습니다"

226</h3>

227 

228이 오류는 Claude 계정에 아직 클라우드 환경이 없다는 의미이며, 관리자가 무언가를 활성화해야 한다는 뜻이 아닙니다. Slack에 연결한 동일한 계정으로 [claude.ai/code](https://claude.ai/code)에 한 번 로그인합니다. 첫 방문 시 기본 클라우드 환경이 생성되며, 다음 언급 시 오류가 해결됩니다. 각 사용자는 개별적으로 이 작업을 수행해야 합니다.

229 

220<h3 id="sessions-not-starting">230<h3 id="sessions-not-starting">

221 세션이 시작되지 않음231 세션이 시작되지 않음

222</h3>232</h3>


277 일반 Slack용 Claude 문서287 일반 Slack용 Claude 문서

278 </Card>288 </Card>

279 289 

290 <Card title="Claude Tag" icon="users" href="https://claude.com/docs/claude-tag/overview">

291 관리자가 구성한 액세스 권한이 있는 Slack의 조직 관리 @Claude

292 </Card>

293 

280 <Card title="Slack 앱 마켓플레이스" icon="store" href="https://slack.com/marketplace/A08SF47R6P4">294 <Card title="Slack 앱 마켓플레이스" icon="store" href="https://slack.com/marketplace/A08SF47R6P4">

281 Slack 마켓플레이스에서 Claude 앱 설치295 Slack 마켓플레이스에서 Claude 앱 설치

282 </Card>296 </Card>

statusline.md +1 −1

Details

15* 여러 세션에서 작업하고 이들을 구분해야 하는 경우15* 여러 세션에서 작업하고 이들을 구분해야 하는 경우

16* git 브랜치 및 상태를 항상 표시하려는 경우16* git 브랜치 및 상태를 항상 표시하려는 경우

17 17 

18Claude Code는 또한 [바닥글 링크 배지](/ko/settings#footer-link-badges)를 렌더링할 수 있습니다: 구성된 정규식이 대화의 텍스트와 일치할 바닥글에 나타나는 클릭 가능한 칩입니다. 이는 상태 표시줄과 독립적이며 스크립트와 상호작용하지 않습니다. 대신 [`footerLinksRegexes`](/ko/settings#footer-link-badges) 설정으로 구성합니다.18상태 표시줄은 기본 제공 바닥글 배지 위의 자체 행에서 렌더링되며 이를 대체하지 않습니다. 대화에 ID가 나타날 스크립트를 작성하지 않고 바닥글에 클릭 가능한 링크 배지를 추가하려면 대신 [`footerLinksRegexes`](/ko/settings#footer-link-badges) 구성합니다.

19 19 

20다음은 첫 번째 줄에 git 정보를 표시하고 두 번째 줄에 색상으로 구분된 컨텍스트 막대를 표시하는 [다중 줄 상태 표시줄](#display-multiple-lines)의 예입니다.20다음은 첫 번째 줄에 git 정보를 표시하고 두 번째 줄에 색상으로 구분된 컨텍스트 막대를 표시하는 [다중 줄 상태 표시줄](#display-multiple-lines)의 예입니다.

21 21 

sub-agents.md +6 −11

Details

765Subagent는 foreground (차단) 또는 background (동시)에서 실행할 수 있습니다:765Subagent는 foreground (차단) 또는 background (동시)에서 실행할 수 있습니다:

766 766 

767* **Foreground subagent**는 완료될 때까지 주 대화를 차단합니다. 권한 프롬프트는 발생하는 대로 사용자에게 전달됩니다.767* **Foreground subagent**는 완료될 때까지 주 대화를 차단합니다. 권한 프롬프트는 발생하는 대로 사용자에게 전달됩니다.

768* **Background subagent**는 계속 작업하는 동안 동시에 실행됩니다. 세션에서 이미 부여된 권한으로 실행되며 그렇지 않으면 프롬프트가 표시될 모든 도구 호출을 자동으로 거부합니다. Background subagent가 명확한 질문을 해야 하면 해당 도구 호출이 실패하지만 subagent는 계속됩니다.768* **Background subagent**는 계속 작업하는 동안 동시에 실행됩니다. {/* min-version: 2.1.186 */}v2.1.186부터 background subagent가 권한이 필요한 도구 호출에 도달하면 프롬프트가 세션에 표시되고 요청하는 subagent의 이름을 지정합니다. 승인하여 subagent를 계속하거나 Esc를 눌러 subagent를 중지하지 않고 해당 도구 호출을 거부합니다. v2.1.186 이전에는 background subagent가 프롬프트를 표시했을 모든 도구 호출을 자동으로 거부했습니다.

769 

770Background subagent가 권한 부족으로 인해 실패하면 foreground에서 새 foreground subagent를 시작하여 대화형 프롬프트로 다시 시도할 수 있습니다.

771 769 

772Claude는 작업을 기반으로 subagent를 foreground 또는 background에서 실행할지 결정합니다. 다음을 수행할 수도 있습니다:770Claude는 작업을 기반으로 subagent를 foreground 또는 background에서 실행할지 결정합니다. 다음을 수행할 수도 있습니다:

773 771 


776 774 

777모든 background 작업 기능을 비활성화하려면 `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` 환경 변수를 `1`로 설정합니다. [환경 변수](/ko/env-vars)를 참조하세요.775모든 background 작업 기능을 비활성화하려면 `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` 환경 변수를 `1`로 설정합니다. [환경 변수](/ko/env-vars)를 참조하세요.

778 776 

779[`CLAUDE_CODE_FORK_SUBAGENT`](#fork-the-current-conversation)가 `1`로 설정되면 `background` 필드와 관계없이 모든 subagent 생성이 background에서 실행됩니다. Fork는 여전히 터미널에서 발생하는 권한 프롬프트를 표시합니다. 명명된 subagent는 위에서 설명한 대로 모든 프롬프트를 자동으로 거부합니다.777[`CLAUDE_CODE_FORK_SUBAGENT`](#fork-the-current-conversation)가 `1`로 설정되면 `background` 필드와 관계없이 모든 subagent 생성이 background에서 실행됩니다. 이러한 background subagent의 권한 프롬프트는 위에서 설명한 대로 세션에 표시됩니다.

780 778 

781<h3 id="common-patterns">779<h3 id="common-patterns">

782 일반적인 패턴780 일반적인 패턴


849 847 

850중첩된 subagent는 최상위 subagent와 동일한 방식으로 구성되며 동일한 [범위](#choose-the-subagent-scope)에서 해결됩니다. 프롬프트 입력 아래의 subagent 패널은 전체 트리를 표시합니다: 각 행은 하위 항목의 `(+N)` 개수를 표시하고, 행을 열면 해당 subagent의 직접 자식이 `main`으로 돌아가는 경로와 함께 표시됩니다. [`/agents`](#use-the-%2Fagents-command)의 Running 탭은 실행 중인 subagent를 평면 목록으로 나열합니다.848중첩된 subagent는 최상위 subagent와 동일한 방식으로 구성되며 동일한 [범위](#choose-the-subagent-scope)에서 해결됩니다. 프롬프트 입력 아래의 subagent 패널은 전체 트리를 표시합니다: 각 행은 하위 항목의 `(+N)` 개수를 표시하고, 행을 열면 해당 subagent의 직접 자식이 `main`으로 돌아가는 경로와 함께 표시됩니다. [`/agents`](#use-the-%2Fagents-command)의 Running 탭은 실행 중인 subagent를 평면 목록으로 나열합니다.

851 849 

852깊이는 각 수준이 [foreground 또는 background](#run-subagents-in-foreground-or-background)에서 실행되는지 여부와 관계없이 주 대화 아래의 subagent 수준 수로 계산됩니다:850깊이는 각 수준이 [foreground 또는 background](#run-subagents-in-foreground-or-background)에서 실행되는지 여부와 관계없이 주 대화 아래의 subagent 수준 수로 계산됩니다. 깊이 5의 subagent는 Agent 도구를 받지 않으며 추가로 생성할 수 없습니다. 제한은 고정되어 있으며 구성할 수 없습니다.

853 

854* **Foreground subagent**: 모든 깊이에서 생성할 수 있습니다. 각 수준은 반환될 때까지 부모를 차단하므로 체인은 자체 제한됩니다: 주 대화는 전체 체인을 기다립니다.

855* **Background subagent**: 깊이 5의 background subagent는 Agent 도구를 받지 않으며 추가로 생성할 수 없습니다. 제한은 고정되어 있으며 구성할 수 없으며 실행 중인 동시 트리를 방지하기 위해 존재합니다.

856 851 

857특정 subagent가 다른 subagent를 생성하지 못하도록 하려면 [`tools`](#available-tools) 목록에서 `Agent`를 생략하거나 `disallowedTools`에 추가합니다.852특정 subagent가 다른 subagent를 생성하지 못하도록 하려면 [`tools`](#available-tools) 목록에서 `Agent`를 생략하거나 `disallowedTools`에 추가합니다.

858 853 


888 883 

889재개된 subagent는 모든 이전 도구 호출, 결과 및 추론을 포함한 전체 대화 기록을 유지합니다. Subagent는 새로 시작하는 대신 정확히 중단한 위치에서 계속됩니다.884재개된 subagent는 모든 이전 도구 호출, 결과 및 추론을 포함한 전체 대화 기록을 유지합니다. Subagent는 새로 시작하는 대신 정확히 중단한 위치에서 계속됩니다.

890 885 

891Subagent가 완료되면 Claude는 에이전트 ID를 받습니다. 내장 Explore 및 Plan 에이전트는 일회성이며 에이전트 ID를 반환하지 않으므로 재개할 수 없습니다. 작업을 계속해야 할 때는 `general-purpose` 또는 사용자 정의 subagent를 사용합니다. Claude는 에이전트의 ID를 `to` 필드로 사용하여 `SendMessage` 도구를 사용하여 재개합니다. `SendMessage` 도구는 [agent teams](/ko/agent-teams)가 `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`을 통해 활성화될 때만 사용 가능합니다.886Subagent가 완료되면 Claude는 에이전트 ID를 받습니다. 내장 Explore 및 Plan 에이전트는 일회성이며 에이전트 ID를 반환하지 않으므로 재개할 수 없습니다. 작업을 계속해야 할 때는 `general-purpose` 또는 사용자 정의 subagent를 사용합니다. Claude는 에이전트의 ID를 `to` 필드로 사용하여 `SendMessage` 도구를 사용하여 재개합니다. `SendMessage` 도구는 항상 에이전트 ID 또는 이름으로 subagent를 재개하는 데 사용할 수 있습니다. `shutdown_request` 및 `plan_approval_response`와 같은 구조화된 팀 프로토콜 메시지는 [agent teams](/ko/agent-teams)가 활성화되어야 합니다.

892 887 

893Subagent를 재개하려면 Claude에 이전 작업을 계속하도록 요청합니다:888Subagent를 재개하려면 Claude에 이전 작업을 계속하도록 요청합니다:

894 889 


976포크는 생성 시점의 주 세션의 모든 것을 상속합니다. 명명된 subagent는 자신의 정의에서 시작합니다.971포크는 생성 시점의 주 세션의 모든 것을 상속합니다. 명명된 subagent는 자신의 정의에서 시작합니다.

977 972 

978| | 포크 | 명명된 subagent |973| | 포크 | 명명된 subagent |

979| :------------ | :------------- | :------------------------------------------------------------------------- |974| :------------ | :------------- | :--------------------------------------------------------------------------------- |

980| 컨텍스트 | 전체 대화 기록 | 전달하는 프롬프트를 사용한 새로운 컨텍스트 |975| 컨텍스트 | 전체 대화 기록 | 전달하는 프롬프트를 사용한 새로운 컨텍스트 |

981| 시스템 프롬프트 및 도구 | 주 세션과 동일 | [정의 파일](#write-subagent-files)에서 |976| 시스템 프롬프트 및 도구 | 주 세션과 동일 | [정의 파일](#write-subagent-files)에서 |

982| 모델 | 주 세션과 동일 | Subagent의 `model` 필드에서 |977| 모델 | 주 세션과 동일 | Subagent의 `model` 필드에서 |

983| 권한 | 프롬프트가 터미널에 표시됨 | [자동 거부](#run-subagents-in-foreground-or-background) (background에서 실행 중일 때) |978| 권한 | 프롬프트가 터미널에 표시됨 | [background에서 실행 중일 때 프롬프트가 주 세션에 표시됨](#run-subagents-in-foreground-or-background) |

984| 프롬프트 캐시 | 주 세션과 공유 | 별도 캐시 |979| 프롬프트 캐시 | 주 세션과 공유 | 별도 캐시 |

985 980 

986포크의 시스템 프롬프트 및 도구 정의가 부모와 동일하기 때문에 첫 번째 요청은 부모의 [프롬프트 캐시](/ko/prompt-caching#subagents-and-the-cache)를 재사용합니다. 이렇게 하면 동일한 컨텍스트가 필요한 작업에 대해 새로운 subagent를 생성하는 것보다 포크가 더 저렴합니다.981포크의 시스템 프롬프트 및 도구 정의가 부모와 동일하기 때문에 첫 번째 요청은 부모의 [프롬프트 캐시](/ko/prompt-caching#subagents-and-the-cache)를 재사용합니다. 이렇게 하면 동일한 컨텍스트가 필요한 작업에 대해 새로운 subagent를 생성하는 것보다 포크가 더 저렴합니다.

Details

13| 도구 | 설명 | 필요한 권한 |13| 도구 | 설명 | 필요한 권한 |

14| :--------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----- |14| :--------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----- |

15| `Agent` | 작업을 처리하기 위해 자체 context window를 가진 [subagent](/ko/sub-agents)를 생성합니다. [Agent 도구 동작](#agent-tool-behavior) 참조 | 아니오 |15| `Agent` | 작업을 처리하기 위해 자체 context window를 가진 [subagent](/ko/sub-agents)를 생성합니다. [Agent 도구 동작](#agent-tool-behavior) 참조 | 아니오 |

16| `Artifact` | HTML 또는 Markdown 파일을 [artifact](/ko/artifacts)로 게시합니다: 조직 내에서 공유할 수 있는 claude.ai의 비공개 대화형 페이지입니다. {/* plan-availability: feature=artifacts plans=team,enterprise providers=anthropic */}Team 또는 Enterprise 플랜이 필요하며 `/login` 인증이 필요합니다. [가용성](/ko/artifacts#availability) 참조 | 예 |

16| `AskUserQuestion` | 요구사항을 수집하거나 모호함을 명확히 하기 위해 객관식 질문을 합니다 | 아니오 |17| `AskUserQuestion` | 요구사항을 수집하거나 모호함을 명확히 하기 위해 객관식 질문을 합니다 | 아니오 |

17| `Bash` | 환경에서 shell 명령을 실행합니다. [Bash 도구 동작](#bash-tool-behavior) 참조 | 예 |18| `Bash` | 환경에서 shell 명령을 실행합니다. [Bash 도구 동작](#bash-tool-behavior) 참조 | 예 |

18| `CronCreate` | 현재 세션 내에서 반복 또는 일회성 프롬프트를 예약합니다. 작업은 세션 범위이며 `--resume` 또는 `--continue`에서 만료되지 않으면 복원됩니다. [예약된 작업](/ko/scheduled-tasks) 참조 | 아니오 |19| `CronCreate` | 현재 세션 내에서 반복 또는 일회성 프롬프트를 예약합니다. 작업은 세션 범위이며 `--resume` 또는 `--continue`에서 만료되지 않으면 복원됩니다. [예약된 작업](/ko/scheduled-tasks) 참조 | 아니오 |


35| `ReadMcpResourceTool` | URI로 특정 MCP 리소스를 읽습니다 | 아니오 |36| `ReadMcpResourceTool` | URI로 특정 MCP 리소스를 읽습니다 | 아니오 |

36| `RemoteTrigger` | claude.ai에서 [Routines](/ko/routines)를 생성, 업데이트, 실행 및 나열합니다. `/schedule` 명령을 지원합니다. {/* plan-availability: feature=routines plans=pro,max,team,enterprise providers=anthropic */}Routines는 claude.ai에 있으며 Pro, Max, Team 또는 Enterprise 플랜이 필요하므로, 이 도구는 Amazon Bedrock, Google Vertex AI 또는 Microsoft Foundry에서 접근할 수 없습니다 | 아니오 |37| `RemoteTrigger` | claude.ai에서 [Routines](/ko/routines)를 생성, 업데이트, 실행 및 나열합니다. `/schedule` 명령을 지원합니다. {/* plan-availability: feature=routines plans=pro,max,team,enterprise providers=anthropic */}Routines는 claude.ai에 있으며 Pro, Max, Team 또는 Enterprise 플랜이 필요하므로, 이 도구는 Amazon Bedrock, Google Vertex AI 또는 Microsoft Foundry에서 접근할 수 없습니다 | 아니오 |

37| `ScheduleWakeup` | [자체 속도 `/loop`](/ko/scheduled-tasks#let-claude-choose-the-interval)의 다음 반복을 다시 예약합니다. Claude는 각 반복이 끝날 때 이를 호출하여 다음 반복이 실행될 시간을 선택합니다(1분에서 1시간 사이). 사용자가 직접 호출하지는 않습니다. 대기 중인 wakeup은 [Stop hook input](/ko/hooks#stop-input)의 `session_crons`에 나타납니다. {/* plan-availability: feature=loop-dynamic providers=anthropic */}Amazon Bedrock, Google Vertex AI 또는 Microsoft Foundry에서는 사용할 수 없으며, 여기서 간격이 없는 `/loop` 프롬프트는 고정 일정으로 실행됩니다 | 아니오 |38| `ScheduleWakeup` | [자체 속도 `/loop`](/ko/scheduled-tasks#let-claude-choose-the-interval)의 다음 반복을 다시 예약합니다. Claude는 각 반복이 끝날 때 이를 호출하여 다음 반복이 실행될 시간을 선택합니다(1분에서 1시간 사이). 사용자가 직접 호출하지는 않습니다. 대기 중인 wakeup은 [Stop hook input](/ko/hooks#stop-input)의 `session_crons`에 나타납니다. {/* plan-availability: feature=loop-dynamic providers=anthropic */}Amazon Bedrock, Google Vertex AI 또는 Microsoft Foundry에서는 사용할 수 없으며, 여기서 간격이 없는 `/loop` 프롬프트는 고정 일정으로 실행됩니다 | 아니오 |

38| `SendMessage` | [agent team](/ko/agent-teams) 팀원에게 메시지를 보내거나, agent ID로 [subagent를 재개합니다](/ko/sub-agents#resume-subagents). 중지된 subagent는 백그라운드에서 자동으로 재개됩니다. `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`이 설정되었을 때만 사용 가능합니다 | 아니오 |39| `SendMessage` | [agent team](/ko/agent-teams) 팀원에게 메시지를 보내거나, agent ID로 [subagent를 재개합니다](/ko/sub-agents#resume-subagents). 중지된 subagent는 백그라운드에서 자동으로 재개됩니다. 구조화된 프로토콜 메시지는 agent team이 필요합니다 | 아니오 |

39| `ShareOnboardingGuide` | {/* plan-availability: feature=onboarding-guide-share plans=pro,max,team,enterprise providers=anthropic */}}`ONBOARDING.md`를 업로드하고 팀원이 Claude Code에서 열 수 있는 공유 링크를 반환합니다. 가이드가 작성된 후 `/team-onboarding`에서 호출됩니다. Pro, Max, Team 및 Enterprise 플랜의 claude.ai 구독자가 사용 가능합니다 | 예 |40| `ShareOnboardingGuide` | {/* plan-availability: feature=onboarding-guide-share plans=pro,max,team,enterprise providers=anthropic */}}`ONBOARDING.md`를 업로드하고 팀원이 Claude Code에서 열 수 있는 공유 링크를 반환합니다. 가이드가 작성된 후 `/team-onboarding`에서 호출됩니다. Pro, Max, Team 및 Enterprise 플랜의 claude.ai 구독자가 사용 가능합니다 | 예 |

40| `Skill` | 주 대화 내에서 [skill](/ko/skills#control-who-invokes-a-skill)을 실행합니다 | 예 |41| `Skill` | 주 대화 내에서 [skill](/ko/skills#control-who-invokes-a-skill)을 실행합니다 | 예 |

41| `TaskCreate` | 작업 목록에 새 작업을 생성합니다 | 아니오 |42| `TaskCreate` | 작업 목록에 새 작업을 생성합니다 | 아니오 |


102Subagent를 시작하는 것 자체는 권한을 요청하지 않습니다. Subagent의 자체 도구 호출은 실행될 때 권한 규칙에 대해 확인됩니다:103Subagent를 시작하는 것 자체는 권한을 요청하지 않습니다. Subagent의 자체 도구 호출은 실행될 때 권한 규칙에 대해 확인됩니다:

103 104 

104* **포그라운드 subagent**는 각 도구 호출이 발생하는 순간 주 대화에서 보게 될 동일한 권한 프롬프트를 표시합니다.105* **포그라운드 subagent**는 각 도구 호출이 발생하는 순간 주 대화에서 보게 될 동일한 권한 프롬프트를 표시합니다.

105* **백그라운드 subagent** 프롬프트를 표시하지 않습니다. 이들은 세션에서 이미 부여된 권한으로 실행되고 그렇지 않으면 프롬프트를 표시할 도구 호출을 자동으로 거부합니다. 거부 후 subagent는 해당 도구 없이 계속 진행합니다.106* **백그라운드 subagent** {/* min-version: 2.1.186 */}는 v2.1.186부터 주 세션에서 권한 프롬프트를 표시합니다. 프롬프트는 어느 subagent가 요청하는지 표시하며, Esc를 누르면 subagent를 중지하지 않고 해당 도구 호출만 거부합니다. v2.1.186 이전에는 백그라운드 subagent가 그렇지 않으면 프롬프트를 표시할 모든 도구 호출을 자동으로 거부하고 해당 도구 없이 계속 진행했습니다.

106 107 

107Subagent가 먼저 도달할 수 있는 것을 제한하려면 `tools` 필드를 좁히고, Bash를 목록에서 제외하거나, [Subagent 기능 제어](/ko/sub-agents#control-subagent-capabilities)에서 설명한 대로 설정에서 거부 규칙을 설정합니다. 포그라운드와 백그라운드 중 선택에 대한 자세한 내용은 [Subagent를 포그라운드 또는 백그라운드에서 실행](/ko/sub-agents#run-subagents-in-foreground-or-background)을 참조합니다.108Subagent가 먼저 도달할 수 있는 것을 제한하려면 `tools` 필드를 좁히고, Bash를 목록에서 제외하거나, [Subagent 기능 제어](/ko/sub-agents#control-subagent-capabilities)에서 설명한 대로 설정에서 거부 규칙을 설정합니다. 포그라운드와 백그라운드 중 선택에 대한 자세한 내용은 [Subagent를 포그라운드 또는 백그라운드에서 실행](/ko/sub-agents#run-subagents-in-foreground-or-background)을 참조합니다.

108 109 

ultrareview.md +16 −13

Details

12 12 

13Ultrareview는 Claude Code 웹 인프라에서 실행되는 심층 코드 리뷰입니다. `/code-review ultra`를 실행하면 Claude Code는 원격 샌드박스에서 리뷰어 에이전트 플릿을 시작하여 브랜치 또는 풀 요청의 버그를 찾습니다.13Ultrareview는 Claude Code 웹 인프라에서 실행되는 심층 코드 리뷰입니다. `/code-review ultra`를 실행하면 Claude Code는 원격 샌드박스에서 리뷰어 에이전트 플릿을 시작하여 브랜치 또는 풀 요청의 버그를 찾습니다.

14 14 

15로컬 `/review`와 비교하여 ultrareview는 다음을 제공합니다:15로컬 `/code-review` 또는 `/review`와 비교하여 ultrareview는 다음을 제공합니다:

16 16 

17* **더 높은 신호**: 보고된 모든 발견 사항이 독립적으로 재현되고 검증되므로 결과는 스타일 제안보다는 실제 버그에 초점을 맞춥니다17* **더 높은 신호**: 보고된 모든 발견 사항이 독립적으로 재현되고 검증되므로 결과는 스타일 제안보다는 실제 버그에 초점을 맞춥니다

18* **더 광범위한 범위**: 많은 리뷰어 에이전트가 변경 사항을 병렬로 탐색하므로 단일 패스 리뷰에서 놓칠 수 있는 문제를 표면화합니다18* **더 광범위한 범위**: 리뷰어 에이전트 플릿이 변경 사항을 병렬로 탐색하므로 중간 정도의 노력이 필요한 로컬 리뷰에서 놓칠 수 있는 문제를 표면화합니다

19* **로컬 리소스 사용 없음**: 리뷰가 원격 샌드박스에서 완전히 실행되므로 실행 중에 터미널이 다른 작업을 위해 자유로워집니다19* **로컬 리소스 사용 없음**: 리뷰가 원격 샌드박스에서 완전히 실행되므로 실행 중에 터미널이 다른 작업을 위해 자유로워집니다

20 20 

21Ultrareview는 Claude Code 웹 인프라에서 실행되기 때문에 Claude.ai 계정으로 인증이 필요합니다. API 키만으로 로그인한 경우 `/login`을 실행하고 먼저 Claude.ai로 인증하세요. Ultrareview는 Amazon Bedrock, Google Cloud Vertex AI 또는 Microsoft Foundry와 함께 Claude Code를 사용할 때 사용할 수 없으며, Zero Data Retention을 활성화한 조직에서도 사용할 수 없습니다.21Ultrareview는 Claude Code 웹 인프라에서 실행되기 때문에 Claude.ai 계정으로 인증이 필요합니다. API 키만으로 로그인한 경우 `/login`을 실행하고 먼저 Claude.ai로 인증하세요. Ultrareview는 Amazon Bedrock, Google Cloud Vertex AI 또는 Microsoft Foundry와 함께 Claude Code를 사용할 때 사용할 수 없으며, Zero Data Retention을 활성화한 조직에서도 사용할 수 없습니다.


42 42 

43<Tip>43<Tip>

44 저장소가 너무 커서 번들로 묶을 수 없는 경우 Claude Code는 대신 PR 모드를 사용하도록 요청합니다. 브랜치를 푸시하고 초안 PR을 열고 `/code-review ultra <PR-number>`를 실행합니다.44 저장소가 너무 커서 번들로 묶을 수 없는 경우 Claude Code는 대신 PR 모드를 사용하도록 요청합니다. 브랜치를 푸시하고 초안 PR을 열고 `/code-review ultra <PR-number>`를 실행합니다.

45 

46 풀 요청의 차이가 너무 큰 경우 Claude Code는 리뷰 작업이 실행되기 전에 범위 지정 힌트와 함께 리뷰를 거부합니다.

45</Tip>47</Tip>

46 48 

47시작하기 전에 Claude Code는 리뷰 범위(브랜치를 검토할 때 파일 및 라인 수 포함), 남은 무료 실행 횟수 및 예상 비용이 포함된 확인 대화를 표시합니다. 확인한 후 리뷰는 백그라운드에서 계속되며 세션을 계속 사용할 수 있습니다. 명령은 `/code-review ultra`로 호출할 때만 실행되며, Claude는 자동으로 ultrareview를 시작하지 않습니다.49시작하기 전에 Claude Code는 리뷰 범위(브랜치를 검토할 때 파일 및 라인 수 포함), 남은 무료 실행 횟수 및 예상 비용이 포함된 확인 대화를 표시합니다. 확인한 후 리뷰는 백그라운드에서 계속되며 세션을 계속 사용할 수 있습니다. 명령은 `/code-review ultra`로 호출할 때만 실행되며, Claude는 자동으로 ultrareview를 시작하지 않습니다.


95 97 

96GitHub 풀 요청에 대한 자동 리뷰의 경우, [Code Review](/ko/code-review)는 저장소와 직접 통합되고 CLI 단계 없이 발견 사항을 인라인 PR 댓글로 게시합니다.98GitHub 풀 요청에 대한 자동 리뷰의 경우, [Code Review](/ko/code-review)는 저장소와 직접 통합되고 CLI 단계 없이 발견 사항을 인라인 PR 댓글로 게시합니다.

97 99 

98<h2 id="how-ultrareview-compares-to-/review">100<h2 id="how-ultrareview-compares-to-/code-review-and-/review">

99 ultrareview와 /review의 비교101 ultrareview와 /code-review 및 /review의 비교

100</h2>102</h2>

101 103 

102 명령 모두 코드를 검토하지만 워크플로우의 다른 단계를 대상으로 합니다.104 명령 모두 코드를 검토하지만 워크플로우의 다른 단계를 대상으로 합니다.

103 105 

104| | `/review` | `/code-review ultra` |106| | `/code-review` | `/review <pr>` | `/code-review ultra` |

105| ----- | -------------- | ----------------------------- |107| ----- | -------------- | -------------------- | ---------------------------- |

106| 실행 | 세션에서 로컬로 | 클라우드 샌드박스에서 원격으로 |108| 대상 | 작업 중인 diff | GitHub 요청 | 작업 중인 diff 또는 풀 요청 |

107| 깊이 | 단일 패스 리뷰 | 독립적 검증이 있는 다중 에이전트 플릿 |109| 실행 | 세션에서 로컬로 | 세션에서 로컬로 | 클라우드 샌드박스에서 원격으로 |

108| 기간 | 초에서 | 대략 5\~10분 |110| 깊이 | 노력 인수에 따라 확장 | 중간 `/code-review` 엔진 | 독립적 검증이 있는 다중 에이전트 플릿 |

109| 비용 | 일반 사용량으로 계산됨 | 무료 실행, 추가 사용량으로 대략 $5~$20 |111| 기간 | 초에서 분 | 분 | 대략 5\~10분 |

110| 최적 용도 | 반복하는 동안 빠른 피드백 | 실질적인 변경 사항을 병합하기 전에 신뢰도 향상 |112| 비용 | 일반 사용량으로 계산됨 | 일반 사용량으로 계산됨 | 무료 실행, 대략 $5~$20 사용량 크레딧 |

113| 최적 용도 | 반복하는 동안 빠른 피드백 | 승인하기 전에 팀원의 PR 검토 | 실질적인 변경 사항을 병합하기 전에 신뢰도 향상 |

111 114 

112작업하는 동안 빠른 피드백을 위해 `/review`를 사용합니다. 단일 리뷰에서 놓칠 수 있는 문제를 포착하는 더 깊은 패스를 원할 때 실질적인 변경 사항을 병합하기 전에 `/code-review ultra`를 사용합니다.115작업하는 동안 빠른 피드백을 위해 `/code-review`를 사용합니다. 요청을 승인하기 전에 검토하는 방식으로 살펴보려면 `/review <pr>`을 사용합니다. 로컬 검토에서 놓칠 수 있는 문제를 포착하는 더 깊은 패스를 원할 때 실질적인 변경 사항을 병합하기 전에 `/code-review ultra`를 사용합니다.

113 116 

114<h2 id="related-resources">117<h2 id="related-resources">

115 관련 리소스118 관련 리소스

Details

34 <span className="digest-feature-pill">v2.1.172</span>34 <span className="digest-feature-pill">v2.1.172</span>

35 </div>35 </div>

36 36 

37 <p className="digest-feature-lede">하위 에이전트는 이제 자신의 하위 에이전트를 생성할 수 있습니다. 프롬프트 아래의 하위 에이전트 패널은 전체 트리를 표시합니다. 각 행은 자신의 하위 항목 개수와 <code>main</code>으로 돌아가는 경로를 포함합니다. 백그라운드 하위 에이전트는 실행 제어 불능 동시 트리를 방지하기 위해 5단계 깊이로 제한됩니다. 포그라운드 체인은 모든 깊이에서 생성될 수 있으며 자체 제한됩니다.</p>37 <p className="digest-feature-lede">하위 에이전트는 이제 자신의 하위 에이전트를 생성할 수 있습니다. 프롬프트 아래의 하위 에이전트 패널은 전체 트리를 표시합니다. 각 행은 자신의 하위 항목 개수와 <code>main</code>으로 돌아가는 경로를 포함합니다. 하위 에이전트 체인은 실행 제어 불능 동시 트리를 방지하기 위해 5단계 깊이로 제한됩니다.</p>

38 38 

39 <p className="digest-feature-try">에이전트 보기를 열어 작업이 확산될 때 중첩된 트리를 확인합니다:</p>39 <p className="digest-feature-try">에이전트 보기를 열어 작업이 확산될 때 중첩된 트리를 확인합니다:</p>

40 40 

workflows.md +2 −1

Details

105진행 상황 보기는 각 단계를 에이전트 수, 토큰 총계, 경과 시간과 함께 표시합니다. 바닥글은 각 작업의 키를 나열합니다:105진행 상황 보기는 각 단계를 에이전트 수, 토큰 총계, 경과 시간과 함께 표시합니다. 바닥글은 각 작업의 키를 나열합니다:

106 106 

107| 키 | 작업 |107| 키 | 작업 |

108| :------------- | :------------------------------------------------- |108| :------------- | :--------------------------------------------------------------------- |

109| `↑` / `↓` | 단계 또는 에이전트 선택 |109| `↑` / `↓` | 단계 또는 에이전트 선택 |

110| `Enter` 또는 `→` | 선택한 단계로 드릴다운한 후 에이전트로 드릴다운하여 프롬프트, 최근 도구 호출, 결과 읽기 |110| `Enter` 또는 `→` | 선택한 단계로 드릴다운한 후 에이전트로 드릴다운하여 프롬프트, 최근 도구 호출, 결과 읽기 |

111| `Esc` | 한 수준 뒤로 |111| `Esc` | 한 수준 뒤로 |

112| `j` / `k` | 에이전트 세부 정보가 오버플로우할 때 스크롤 |112| `j` / `k` | 에이전트 세부 정보가 오버플로우할 때 스크롤 |

113| `f` | {/* min-version: 2.1.186 */}선택한 단계의 에이전트 목록을 상태별로 필터링합니다. 다시 누르면 순환합니다 |

113| `p` | 실행 일시 중지 또는 재개 |114| `p` | 실행 일시 중지 또는 재개 |

114| `x` | 선택한 에이전트 중지 또는 포커스가 실행에 있을 때 전체 워크플로우 중지 |115| `x` | 선택한 에이전트 중지 또는 포커스가 실행에 있을 때 전체 워크플로우 중지 |

115| `r` | 선택한 실행 중인 에이전트 다시 시작 |116| `r` | 선택한 실행 중인 에이전트 다시 시작 |

Details

58Claude for Enterprise의 Claude Code 조직에 대해 ZDR이 활성화되면 프롬프트 또는 완성을 저장해야 하는 특정 기능이 백엔드 수준에서 자동으로 비활성화됩니다:58Claude for Enterprise의 Claude Code 조직에 대해 ZDR이 활성화되면 프롬프트 또는 완성을 저장해야 하는 특정 기능이 백엔드 수준에서 자동으로 비활성화됩니다:

59 59 

60| 기능 | 이유 |60| 기능 | 이유 |

61| ------------------------------------------------ | ------------------------------------ |61| ------------------------------------------------ | ---------------------------------------- |

62| [웹의 Claude Code](/ko/claude-code-on-the-web) | 대화 기록의 서버 측 저장이 필요합니다. |62| [웹의 Claude Code](/ko/claude-code-on-the-web) | 대화 기록의 서버 측 저장이 필요합니다. |

63| Desktop 앱의 [클라우드 세션](/ko/desktop#cloud-sessions) | 프롬프트 및 완성을 포함하는 지속적인 세션 데이터가 필요합니다. |63| Desktop 앱의 [클라우드 세션](/ko/desktop#cloud-sessions) | 프롬프트 및 완성을 포함하는 지속적인 세션 데이터가 필요합니다. |

64| [Artifacts](/ko/artifacts) | Anthropic 운영 인프라에 게시된 페이지 콘텐츠를 저장해야 합니다. |

64| 피드백 제출(`/feedback`) | 피드백을 제출하면 대화 데이터가 Anthropic으로 전송됩니다. |65| 피드백 제출(`/feedback`) | 피드백을 제출하면 대화 데이터가 Anthropic으로 전송됩니다. |

65 66 

66이러한 기능은 클라이언트 측 표시에 관계없이 백엔드에서 차단됩니다. 시작 중에 Claude Code 터미널에서 비활성화된 기능이 표시되면 이를 사용하려고 시도하면 조직의 정책이 해당 작업을 허용하지 않음을 나타내는 오류가 반환됩니다.67이러한 기능은 클라이언트 측 표시에 관계없이 백엔드에서 차단됩니다. 시작 중에 Claude Code 터미널에서 비활성화된 기능이 표시되면 이를 사용하려고 시도하면 조직의 정책이 해당 작업을 허용하지 않음을 나타내는 오류가 반환됩니다.