104| `Failed to authenticate: OAuth session expired and could not be refreshed` | [인증](#login-expired) |104| `Failed to authenticate: OAuth session expired and could not be refreshed` | [인증](#login-expired) |
105| `Could not refresh your login because another Claude Code process is refreshing it` | [인증](#could-not-refresh-your-login) |105| `Could not refresh your login because another Claude Code process is refreshing it` | [인증](#could-not-refresh-your-login) |
106| `Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh` | [인증](#could-not-refresh-your-login) |106| `Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh` | [인증](#could-not-refresh-your-login) |
107| `Could not refresh your login: the disk that holds the Claude Code config directory (~/.claude by default), or your disk quota on it, is full` | [인증](#could-not-refresh-your-login-disk-full) |
108| `Failed to refresh OAuth token: the disk that holds the Claude Code config directory (~/.claude by default), or your disk quota on it, is full` | [인증](#could-not-refresh-your-login-disk-full) |
107| `Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted` | [인증](#your-account-is-on-hold) |109| `Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted` | [인증](#your-account-is-on-hold) |
108| `Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted` | [인증](#your-account-is-on-hold) |110| `Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted` | [인증](#your-account-is-on-hold) |
109| `Anthropic profile login expired · Re-authenticate your Anthropic profile` | [인증](#anthropic-profile-login-expired) |111| `Anthropic profile login expired · Re-authenticate your Anthropic profile` | [인증](#anthropic-profile-login-expired) |
242| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [명령줄 오류](#the-current-directory-no-longer-exists) |244| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [명령줄 오류](#the-current-directory-no-longer-exists) |
243| `Temp directory <dir> ... Refusing to use it` / `Claude Code's temporary directory <dir> could not be created` | [명령줄 오류](#temp-directory-refused-or-cannot-be-created) |245| `Temp directory <dir> ... Refusing to use it` / `Claude Code's temporary directory <dir> could not be created` | [명령줄 오류](#temp-directory-refused-or-cannot-be-created) |
244| `ENOSPC: no space left on device, mkdir '<dir>'` | [명령줄 오류](#temp-directory-refused-or-cannot-be-created) |246| `ENOSPC: no space left on device, mkdir '<dir>'` | [명령줄 오류](#temp-directory-refused-or-cannot-be-created) |
247| `Error: Claude Code could not save ... because the disk is full (ENOSPC)` / `because your disk quota is used up (EDQUOT)` | [명령줄 오류](#could-not-save-because-the-disk-is-full) |
245| `couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded` | [명령줄 오류](#directory-couldnt-be-resolved-to-a-real-location) |248| `couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded` | [명령줄 오류](#directory-couldnt-be-resolved-to-a-real-location) |
246| `Error: Workspace not trusted` when starting Remote Control | [명령줄 오류](#workspace-not-trusted-when-starting-remote-control) |249| `Error: Workspace not trusted` when starting Remote Control | [명령줄 오류](#workspace-not-trusted-when-starting-remote-control) |
247| `claude ultrareview` 실행 시 표시되는 `Error: Workspace not trusted` | [명령줄 오류](#workspace-not-trusted-when-running-claude-ultrareview) |250| `claude ultrareview` 실행 시 표시되는 `Error: Workspace not trusted` | [명령줄 오류](#workspace-not-trusted-when-running-claude-ultrareview) |
248| `Ultrareview did not start` | [명령줄 오류](#ultrareview-did-not-start) |251| `Ultrareview did not start` | [명령줄 오류](#ultrareview-did-not-start) |
252| `Remote Control did not start: "<question>" got no answer` | [명령줄 오류](#remote-control-did-not-start-got-no-answer) |
249| `` `<flag>` before `remote-control` is not carried over to the sessions Remote Control starts `` | [명령줄 오류](#not-carried-over-to-the-sessions-remote-control-starts) |253| `` `<flag>` before `remote-control` is not carried over to the sessions Remote Control starts `` | [명령줄 오류](#not-carried-over-to-the-sessions-remote-control-starts) |
250| `--sandbox is not supported by claude remote-control` / `--no-sandbox is not supported by claude remote-control` | [명령줄 오류](#sandbox-is-not-supported-by-claude-remote-control) |254| `--sandbox is not supported by claude remote-control` / `--no-sandbox is not supported by claude remote-control` | [명령줄 오류](#sandbox-is-not-supported-by-claude-remote-control) |
251| `` `claude import` is not yet available in this build `` | [명령줄 오류](#claude-import-is-not-yet-available-in-this-build) |255| `` `claude import` is not yet available in this build `` | [명령줄 오류](#claude-import-is-not-yet-available-in-this-build) |
320| `The packages it lists are not installed` / `The packages it lists were not installed, because` | [플러그인 문제 해결](https://code.claude.com/docs/ko/plugins/troubleshooting.md#the-packages-it-lists-are-not-installed) |324| `The packages it lists are not installed` / `The packages it lists were not installed, because` | [플러그인 문제 해결](https://code.claude.com/docs/ko/plugins/troubleshooting.md#the-packages-it-lists-are-not-installed) |
321| `does not load (...), so Claude Code ignores the whole file` | [플러그인 문제 해결](https://code.claude.com/docs/ko/plugins/troubleshooting.md#does-not-load-so-claude-code-ignores-the-whole-file) |325| `does not load (...), so Claude Code ignores the whole file` | [플러그인 문제 해결](https://code.claude.com/docs/ko/plugins/troubleshooting.md#does-not-load-so-claude-code-ignores-the-whole-file) |
322| `path escapes plugin directory` | [플러그인 오류](#path-escapes-plugin-directory) |326| `path escapes plugin directory` | [플러그인 오류](#path-escapes-plugin-directory) |
327| `path not read: <path> is absolute or has a ".." part` | [플러그인 오류](#server-file-path-not-read) |
323| `Plugin not loaded: its manifest <path> was not read` | [플러그인 오류](#plugin-not-loaded-its-manifest-was-not-read) |328| `Plugin not loaded: its manifest <path> was not read` | [플러그인 오류](#plugin-not-loaded-its-manifest-was-not-read) |
324| `path could not be checked` | [플러그인 오류](#path-could-not-be-checked) |329| `path could not be checked` | [플러그인 오류](#path-could-not-be-checked) |
325| `its marketplace entry path does not stay inside the marketplace directory` | [플러그인 오류](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |330| `its marketplace entry path does not stay inside the marketplace directory` | [플러그인 오류](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |
368| `Refusing to write <path>: where it leads on disk could not be determined` / `Refusing to read <path>: where it leads on disk could not be determined` | [도구 오류](#refusing-after-a-symlink-changed) |373| `Refusing to write <path>: where it leads on disk could not be determined` / `Refusing to read <path>: where it leads on disk could not be determined` | [도구 오류](#refusing-after-a-symlink-changed) |
369| `Refusing to search <path>: a path one of its Read deny rules is written through changed while the search was being prepared` / `Refusing to search <path>: it could not be opened` | [도구 오류](#refusing-after-a-symlink-changed) |374| `Refusing to search <path>: a path one of its Read deny rules is written through changed while the search was being prepared` / `Refusing to search <path>: it could not be opened` | [도구 오류](#refusing-after-a-symlink-changed) |
370| `its permission check expired before it ran (too many concurrent file operations)` / `ripgrep was found only by name on PATH` | [도구 오류](#refusing-after-a-symlink-changed) |375| `its permission check expired before it ran (too many concurrent file operations)` / `ripgrep was found only by name on PATH` | [도구 오류](#refusing-after-a-symlink-changed) |
376| `The search failed, so this is not a "no matches" result: matches may exist` | [도구 오류](#the-search-failed) |
371| `task output swap refused (tasks dir moved or linked)` | [도구 오류](#task-output-swap-refused) |377| `task output swap refused (tasks dir moved or linked)` | [도구 오류](#task-output-swap-refused) |
372| `Command killed: its output file was replaced or could no longer be verified` | [도구 오류](#task-output-swap-refused) |378| `Command killed: its output file was replaced or could no longer be verified` | [도구 오류](#task-output-swap-refused) |
373| `Disk full: this computer's volume holding <dir> (Claude Code's temporary directory) has <n> MB free` / `Nearly out of inodes: this computer's volume holding <dir>` | [도구 오류](#disk-quota-or-temp-filesystem-is-full) |379| `Disk full: this computer's volume holding <dir> (Claude Code's temporary directory) has <n> MB free` / `Nearly out of inodes: this computer's volume holding <dir>` | [도구 오류](#disk-quota-or-temp-filesystem-is-full) |
377| `Command output was lost: the temp filesystem at <dir> is full` / `is out of inodes` | [도구 오류](#disk-quota-or-temp-filesystem-is-full) |383| `Command output was lost: the temp filesystem at <dir> is full` / `is out of inodes` | [도구 오류](#disk-quota-or-temp-filesystem-is-full) |
378| `File is not valid UTF-8. It may use a legacy encoding such as Windows-1252, Shift-JIS or GBK, or be binary` | [도구 오류](#file-is-not-valid-utf-8) |384| `File is not valid UTF-8. It may use a legacy encoding such as Windows-1252, Shift-JIS or GBK, or be binary` | [도구 오류](#file-is-not-valid-utf-8) |
379| `git is not installed on this Mac. To install it, run xcode-select --install, then try again.` | [도구 오류](#git-is-not-installed-on-this-mac) |385| `git is not installed on this Mac. To install it, run xcode-select --install, then try again.` | [도구 오류](#git-is-not-installed-on-this-mac) |
386| `Refusing to apply edits to <path>: a hook is configured for file edits in this session` | [도구 오류](#a-hook-is-configured-for-file-edits) |
380| `the source file is not valid UTF-8 text` / `the source file is not valid UTF-16 text` | [도구 오류](#the-source-file-is-not-valid-utf-8-text) |387| `the source file is not valid UTF-8 text` / `the source file is not valid UTF-16 text` | [도구 오류](#the-source-file-is-not-valid-utf-8-text) |
381| `the source file has the replacement character U+FFFD` | [도구 오류](#the-source-file-is-not-valid-utf-8-text) |388| `the source file has the replacement character U+FFFD` | [도구 오류](#the-source-file-is-not-valid-utf-8-text) |
382| `Not published: that file is on a network share` | [도구 오류](#not-published-that-file-is-on-a-network-share) |389| `Not published: that file is on a network share` | [도구 오류](#not-published-that-file-is-on-a-network-share) |
387| `The safety check for domain ... is rate-limited` | [도구 오류](#webfetch-domain-safety-check-failed) |394| `The safety check for domain ... is rate-limited` | [도구 오류](#webfetch-domain-safety-check-failed) |
388| `The safety check for domain ... is temporarily rate-limited` | [도구 오류](#webfetch-domain-safety-check-failed) |395| `The safety check for domain ... is temporarily rate-limited` | [도구 오류](#webfetch-domain-safety-check-failed) |
389| `Unable to verify if domain ... is safe to fetch` | [도구 오류](#webfetch-domain-safety-check-failed) |396| `Unable to verify if domain ... is safe to fetch` | [도구 오류](#webfetch-domain-safety-check-failed) |
397| `MCP tool "<tool>" on server "<server>" gave no answer that could be read` / `answered without its text` | [MCP 도구 훅의 결과를 읽는 방식](https://code.claude.com/docs/ko/hooks.md#how-the-tools-result-is-read) |
390| `Can't open MCP settings while no terminal is attached to this background session` | [백그라운드 세션 오류](#commands-refused-in-a-background-session) |398| `Can't open MCP settings while no terminal is attached to this background session` | [백그라운드 세션 오류](#commands-refused-in-a-background-session) |
391| `Can't open MCP settings in a background session` | [백그라운드 세션 오류](#commands-refused-in-a-background-session) |399| `Can't open MCP settings in a background session` | [백그라운드 세션 오류](#commands-refused-in-a-background-session) |
392| `blocked because the path is spelled in a form that cannot be safely resolved` | [백그라운드 세션 오류](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) |400| `blocked because the path is spelled in a form that cannot be safely resolved` | [백그라운드 세션 오류](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) |
397| `Can't open — this session is running in another terminal` | [백그라운드 세션 오류](#this-session-is-running-in-another-terminal) |405| `Can't open — this session is running in another terminal` | [백그라운드 세션 오류](#this-session-is-running-in-another-terminal) |
398| `This conversation is already open in another running Claude session` | [백그라운드 세션 오류](#this-session-is-running-in-another-terminal) |406| `This conversation is already open in another running Claude session` | [백그라운드 세션 오류](#this-session-is-running-in-another-terminal) |
399| `This session's saved conversation is no longer on disk` | [백그라운드 세션 오류](#this-sessions-saved-conversation-is-no-longer-on-disk) |407| `This session's saved conversation is no longer on disk` | [백그라운드 세션 오류](#this-sessions-saved-conversation-is-no-longer-on-disk) |
408| `This forked session could not be started. Fork the conversation again to retry.` | [백그라운드 세션 오류](#this-forked-session-could-not-be-started) |
400| `Bypass permissions was requested at launch and ignored` | [백그라운드 세션에서 권한 우회가 무시됨](https://code.claude.com/docs/ko/permission-modes.md#bypass-permissions-ignored-in-a-background-session) |409| `Bypass permissions was requested at launch and ignored` | [백그라운드 세션에서 권한 우회가 무시됨](https://code.claude.com/docs/ko/permission-modes.md#bypass-permissions-ignored-in-a-background-session) |
401| `kept <id> — its worktree is still at <path>` | 메시지의 다음 줄에 푸시되지 않은 커밋이 언급된 경우 [백그라운드 세션 오류](#worktree-has-commits-that-are-not-pushed-anywhere), 그렇지 않으면 [세션 삭제 시 제거되는 항목](https://code.claude.com/docs/ko/agent-view.md#what-deleting-a-session-removes) |410| `kept <id> — its worktree is still at <path>` | 메시지의 다음 줄에 푸시되지 않은 커밋이 언급된 경우 [백그라운드 세션 오류](#worktree-has-commits-that-are-not-pushed-anywhere), 그렇지 않으면 [세션 삭제 시 제거되는 항목](https://code.claude.com/docs/ko/agent-view.md#what-deleting-a-session-removes) |
402| `kept <id> — <n> unpushed commits on <branch>` | [백그라운드 세션 오류](#worktree-has-commits-that-are-not-pushed-anywhere) |411| `kept <id> — <n> unpushed commits on <branch>` | [백그라운드 세션 오류](#worktree-has-commits-that-are-not-pushed-anywhere) |
548| [`CLAUDE_CODE_MAX_RETRIES`](https://code.claude.com/docs/ko/env-vars) | 10 | 재시도 횟수입니다. v2.1.186부터 최대 15로 제한됩니다. v2.1.199부터는 `CLAUDE_CODE_RETRY_WATCHDOG`이 기본값을 높이고 상한을 제거합니다. 스크립트에서 실패를 더 빨리 확인하려면 값을 낮추세요. |557| [`CLAUDE_CODE_MAX_RETRIES`](https://code.claude.com/docs/ko/env-vars) | 10 | 재시도 횟수입니다. v2.1.186부터 최대 15로 제한됩니다. v2.1.199부터는 `CLAUDE_CODE_RETRY_WATCHDOG`이 기본값을 높이고 상한을 제거합니다. 스크립트에서 실패를 더 빨리 확인하려면 값을 낮추세요. |
549| [`CLAUDE_CODE_RETRY_WATCHDOG`](https://code.claude.com/docs/ko/env-vars) | 설정 안 됨 | CI 작업과 같은 무인 세션에서 `1`로 설정하면 `CLAUDE_CODE_MAX_RETRIES`회 시도 후 실패하는 대신 `429` 및 `529` 용량 오류를 무기한 재시도합니다. 표준 속도 요청이 지출 한도나 소진된 사용량 크레딧을 보고하는 `429`를 받으면, 일정에 따라 재설정되는 [게이트웨이 지출 한도](#spend-limit-reached)에서 온 것이라도 Claude Code는 즉시 실패합니다. v2.1.239 이전에는 워치독이 이를 무기한 재시도했습니다. 빠른 모드 요청에 대해서는 [속도 제한 처리](https://code.claude.com/docs/ko/fast-mode.md#handle-rate-limits)를 참조하세요. v2.1.199 이상에서는 서버 오류, 시간 초과, 끊어진 연결 등 다른 일시적인 오류의 기본 재시도 횟수도 약 3시간의 백오프에 해당하는 300으로 높이고, `CLAUDE_CODE_MAX_RETRIES`를 명시적으로 설정한 경우 15의 상한을 제거합니다. |558| [`CLAUDE_CODE_RETRY_WATCHDOG`](https://code.claude.com/docs/ko/env-vars) | 설정 안 됨 | CI 작업과 같은 무인 세션에서 `1`로 설정하면 `CLAUDE_CODE_MAX_RETRIES`회 시도 후 실패하는 대신 `429` 및 `529` 용량 오류를 무기한 재시도합니다. 표준 속도 요청이 지출 한도나 소진된 사용량 크레딧을 보고하는 `429`를 받으면, 일정에 따라 재설정되는 [게이트웨이 지출 한도](#spend-limit-reached)에서 온 것이라도 Claude Code는 즉시 실패합니다. v2.1.239 이전에는 워치독이 이를 무기한 재시도했습니다. 빠른 모드 요청에 대해서는 [속도 제한 처리](https://code.claude.com/docs/ko/fast-mode.md#handle-rate-limits)를 참조하세요. v2.1.199 이상에서는 서버 오류, 시간 초과, 끊어진 연결 등 다른 일시적인 오류의 기본 재시도 횟수도 약 3시간의 백오프에 해당하는 300으로 높이고, `CLAUDE_CODE_MAX_RETRIES`를 명시적으로 설정한 경우 15의 상한을 제거합니다. |
550| [`CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS`](https://code.claude.com/docs/ko/env-vars) | 설정 안 됨 | `CLAUDE_CODE_RETRY_WATCHDOG`이 설정된 경우 각 API 요청이 `429` 및 `529` 오류가 해소되기를 기다리는 최대 시간(밀리초)입니다. 설정하지 않으면 대기 시간에 제한이 없습니다. Claude Code v2.1.295 이상이 필요합니다. |559| [`CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS`](https://code.claude.com/docs/ko/env-vars) | 설정 안 됨 | `CLAUDE_CODE_RETRY_WATCHDOG`이 설정된 경우 각 API 요청이 `429` 및 `529` 오류가 해소되기를 기다리는 최대 시간(밀리초)입니다. 설정하지 않으면 대기 시간에 제한이 없습니다. Claude Code v2.1.295 이상이 필요합니다. |
560| `CLAUDE_CODE_RETRY_WATCHDOG_MAX_USAGE_LIMIT_WAIT_MS` | 상한 없음 | `CLAUDE_CODE_RETRY_WATCHDOG`이 설정된 경우, 하나의 요청이 세션 한도나 주간 한도와 같은 플랜의 [사용 한도](#youve-hit-your-session-limit)가 재설정되기를 기다리는 최대 시간(밀리초)입니다. 재설정 시점이 이 상한보다 더 멀리 있으면 요청은 즉시 실패합니다. 단, 사용량 크레딧에 여유가 있거나 API가 이를 확인할 수 없었던 경우는 예외입니다. 이러한 경우 요청은 재시도되며, 성공하기 전에 상한이 지나면 실패합니다. Claude Code v2.1.301 이상이 필요합니다. |
551| [`CLAUDE_CODE_RETRY_WATCHDOG_USAGE_LIMIT_RECHECK_MS`](https://code.claude.com/docs/ko/env-vars) | 설정 안 됨 | `CLAUDE_CODE_RETRY_WATCHDOG`이 설정된 상태에서 요청이 [사용 한도](#youve-hit-your-session-limit)가 재설정되기를 기다리는 동안, 해당 한도가 이미 해제되었는지 확인하는 검사 사이의 최소 간격(밀리초)입니다. 검사에서 한도가 해제된 것으로 확인되면 요청이 즉시 전송됩니다. `60000`에서 `10800000` 사이의 숫자만 입력하세요. 설정하지 않거나 해당 범위를 벗어나면 검사를 수행하지 않습니다. Claude Code가 이러한 검사를 건너뛰는 경우는 [환경 변수 참조](https://code.claude.com/docs/ko/env-vars.md)를 참조하세요. Claude Code v2.1.305 이상이 필요합니다. |561| [`CLAUDE_CODE_RETRY_WATCHDOG_USAGE_LIMIT_RECHECK_MS`](https://code.claude.com/docs/ko/env-vars) | 설정 안 됨 | `CLAUDE_CODE_RETRY_WATCHDOG`이 설정된 상태에서 요청이 [사용 한도](#youve-hit-your-session-limit)가 재설정되기를 기다리는 동안, 해당 한도가 이미 해제되었는지 확인하는 검사 사이의 최소 간격(밀리초)입니다. 검사에서 한도가 해제된 것으로 확인되면 요청이 즉시 전송됩니다. `60000`에서 `10800000` 사이의 숫자만 입력하세요. 설정하지 않거나 해당 범위를 벗어나면 검사를 수행하지 않습니다. Claude Code가 이러한 검사를 건너뛰는 경우는 [환경 변수 참조](https://code.claude.com/docs/ko/env-vars.md)를 참조하세요. Claude Code v2.1.305 이상이 필요합니다. |
552| [`CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MS`](https://code.claude.com/docs/ko/env-vars) | 500 | API가 `529` 과부하 오류로 거부한 요청의 재시도 간 백오프 시작 지연 시간(밀리초)입니다. API가 용량 한계에 도달했을 때 재시도를 더 긴 기간에 걸쳐 분산하려면 최대 32000까지 값을 높이세요. `CLAUDE_CODE_RETRY_WATCHDOG`이 `1`로 설정되어 있거나 거부된 요청이 [빠른 모드](https://code.claude.com/docs/ko/fast-mode.md#handle-rate-limits)로 전송된 경우에는 효과가 없습니다. Claude Code v2.1.292 이상이 필요합니다. |562| [`CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MS`](https://code.claude.com/docs/ko/env-vars) | 500 | API가 `529` 과부하 오류로 거부한 요청의 재시도 간 백오프 시작 지연 시간(밀리초)입니다. API가 용량 한계에 도달했을 때 재시도를 더 긴 기간에 걸쳐 분산하려면 최대 32000까지 값을 높이세요. `CLAUDE_CODE_RETRY_WATCHDOG`이 `1`로 설정되어 있거나 거부된 요청이 [빠른 모드](https://code.claude.com/docs/ko/fast-mode.md#handle-rate-limits)로 전송된 경우에는 효과가 없습니다. Claude Code v2.1.292 이상이 필요합니다. |
553| [`CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS`](https://code.claude.com/docs/ko/env-vars) | 32000 | API가 `529` 과부하 오류로 거부한 요청의 재시도 간 백오프 상한(밀리초)입니다. API가 용량 한계에 도달했을 때 이후 재시도 간격이 계속 벌어지도록 하려면 최대 64000까지 값을 높이세요. `CLAUDE_CODE_RETRY_WATCHDOG`이 `1`로 설정되어 있거나 거부된 요청이 [빠른 모드](https://code.claude.com/docs/ko/fast-mode.md#handle-rate-limits)로 전송된 경우에는 효과가 없습니다. Claude Code v2.1.296 이상이 필요합니다. |563| [`CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS`](https://code.claude.com/docs/ko/env-vars) | 32000 | API가 `529` 과부하 오류로 거부한 요청의 재시도 간 백오프 상한(밀리초)입니다. API가 용량 한계에 도달했을 때 이후 재시도 간격이 계속 벌어지도록 하려면 최대 64000까지 값을 높이세요. `CLAUDE_CODE_RETRY_WATCHDOG`이 `1`로 설정되어 있거나 거부된 요청이 [빠른 모드](https://code.claude.com/docs/ko/fast-mode.md#handle-rate-limits)로 전송된 경우에는 효과가 없습니다. Claude Code v2.1.296 이상이 필요합니다. |
1436 1446
1437이는 [OAuth 토큰이 폐기되었거나 만료됨](#oauth-token-revoked-or-expired)과 같은 상태가 아닙니다. 해당 메시지는 API가 반환한 거부를 보고합니다. `Login expired`는 이미 갱신에 실패한 로그인에 대해 Claude Code 자체가 생성하는 메시지이므로 요청을 보내지 않습니다. 로그인이 오래되어서가 아니라 계정 자체가 정지되어 갱신이 실패한 경우, Claude Code는 대신 [계정이 보류 상태임](#your-account-is-on-hold)을 표시합니다.1447이는 [OAuth 토큰이 폐기되었거나 만료됨](#oauth-token-revoked-or-expired)과 같은 상태가 아닙니다. 해당 메시지는 API가 반환한 거부를 보고합니다. `Login expired`는 이미 갱신에 실패한 로그인에 대해 Claude Code 자체가 생성하는 메시지이므로 요청을 보내지 않습니다. 로그인이 오래되어서가 아니라 계정 자체가 정지되어 갱신이 실패한 경우, Claude Code는 대신 [계정이 보류 상태임](#your-account-is-on-hold)을 표시합니다.
1438 1448
1439API 키, [`CLAUDE_CODE_OAUTH_TOKEN`](https://code.claude.com/docs/ko/env-vars) 또는 타사 공급자로 인증된 세션은 저장된 로그인을 사용하지 않으므로 이 메시지가 표시되지 않습니다.
1440
1441요청이 실패하기 전에 이 상태를 확인할 수 있습니다. [`/status`](https://code.claude.com/docs/ko/commands)에 `Expired — log in again`이라고 표시된 `Login` 행과 함께, 만료된 로그인에 대해 저장된 조직과 이메일이 표시됩니다. 이 행은 저장된 로그인이 활성 자격 증명이고 더 이상 갱신할 수 없을 때만 나타납니다. 다른 방식으로 인증된 세션에서는 만료된 로그인이 저장되어 있더라도 이 행이 표시되지 않습니다. v2.1.210 이전에는 자격 증명이 삭제되어 보고할 내용이 없었기 때문에, 이 상태에서 `/status`가 로그인이 존재했었다는 어떤 표시도 하지 않았습니다.1449요청이 실패하기 전에 이 상태를 확인할 수 있습니다. [`/status`](https://code.claude.com/docs/ko/commands)에 `Expired — log in again`이라고 표시된 `Login` 행과 함께, 만료된 로그인에 대해 저장된 조직과 이메일이 표시됩니다. 이 행은 저장된 로그인이 활성 자격 증명이고 더 이상 갱신할 수 없을 때만 나타납니다. 다른 방식으로 인증된 세션에서는 만료된 로그인이 저장되어 있더라도 이 행이 표시되지 않습니다. v2.1.210 이전에는 자격 증명이 삭제되어 보고할 내용이 없었기 때문에, 이 상태에서 `/status`가 로그인이 존재했었다는 어떤 표시도 하지 않았습니다.
1442 1450
1443**해결 방법:**1451**해결 방법:**
1461Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh. This is usually transient; retry in a minute, and if it persists close other Claude Code processes or sign in again1469Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh. This is usually transient; retry in a minute, and if it persists close other Claude Code processes or sign in again
1462```1470```
1463 1471
1464API 키, [`CLAUDE_CODE_OAUTH_TOKEN`](https://code.claude.com/docs/ko/env-vars) 또는 타사 공급자로 인증된 세션은 저장된 로그인을 사용하지 않으므로 이 메시지가 표시되지 않습니다.
1465
1466**해결 방법:**1472**해결 방법:**
1467 1473
1468* 1분 후에 다시 시도합니다. 다른 프로세스가 먼저 갱신을 완료하면 이 세션은 갱신된 로그인을 사용합니다.1474* 1분 후에 다시 시도합니다. 다른 프로세스가 먼저 갱신을 완료하면 이 세션은 갱신된 로그인을 사용합니다.
1469* 메시지가 계속 나타나면 다른 Claude Code 창과 프로세스를 닫은 다음 재시도합니다.1475* 메시지가 계속 나타나면 다른 Claude Code 창과 프로세스를 닫은 다음 재시도합니다.
1470* 다른 Claude Code 프로세스가 실행되고 있지 않은데도 메시지가 나타나면 `/login`을 실행합니다. 다시 로그인하는 것은 갱신 잠금을 기다리지 않습니다.1476* 다른 Claude Code 프로세스가 실행되고 있지 않은데도 메시지가 나타나면 `/login`을 실행합니다. 다시 로그인하는 것은 갱신 잠금을 기다리지 않습니다.
1471 1477
1478### Could not refresh your login: the disk that holds the Claude Code config directory is full
1479
1480Claude Code 구성 디렉터리가 있는 디스크의 공간을 확보한 다음 메시지를 다시 보냅니다. 디스크가 가득 찬 동안에는 새 로그인을 저장할 수 없으므로 다시 로그인해도 도움이 되지 않습니다. [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/ko/env-vars)을 설정하지 않았다면 구성 디렉터리는 홈 디렉터리의 `~/.claude`입니다.
1481
1482```text wrap theme={null}
1483Could not refresh your login: the disk that holds the Claude Code config directory (~/.claude by default), or your disk quota on it, is full · Delete files you no longer need on that disk, then try again · Signing in again won't help
1484```
1485
1486[비대화형 모드](https://code.claude.com/docs/ko/headless.md)(`-p`)와 [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/overview.md)에서는 메시지가 다음과 같이 표시됩니다:
1487
1488```text wrap theme={null}
1489Failed to refresh OAuth token: the disk that holds the Claude Code config directory (~/.claude by default), or your disk quota on it, is full. Delete files you no longer need on that disk and retry; signing in again won't help
1490```
1491
1492**해결 방법:**
1493
1494* 스크립트의 경우 해당 `claude -p` 명령을 다시 실행합니다
1495* 디스크에 이미 여유 공간이 있다면, 디스크 할당량이나 inode가 부족한 경우에도 같은 메시지가 표시됩니다. 해당 디스크에서 본인의 파일을 삭제합니다. 메시지가 다시 나타나면, 각 파일은 크기와 관계없이 inode를 하나씩 사용하므로 큰 파일 몇 개보다 작은 파일 여러 개를 삭제합니다.
1496
1472### 로그인을 저장할 수 없음1497### 로그인을 저장할 수 없음
1473 1498
1474claude.ai로 로그인했지만 Claude Code가 로그인을 자격 증명 저장소에 저장할 수 없어 로그인이 완료되지 않았습니다. macOS에서는 같은 세션 중에 Claude Code가 이미 로그인 키체인에서 자격 증명을 읽거나 저장한 후, 예를 들어 잠자기나 유휴 상태로 인해 키체인이 잠기면 이 문제가 발생할 수 있습니다.1499claude.ai로 로그인했지만 Claude Code가 로그인을 자격 증명 저장소에 저장할 수 없어 로그인이 완료되지 않았습니다. macOS에서는 같은 세션 중에 Claude Code가 이미 로그인 키체인에서 자격 증명을 읽거나 저장한 후, 예를 들어 잠자기나 유휴 상태로 인해 키체인이 잠기면 이 문제가 발생할 수 있습니다.
2442 2467
2443### 컨텍스트가 토큰 한도를 초과함2468### 컨텍스트가 토큰 한도를 초과함
2444 2469
2445대화가 모델의 컨텍스트 윈도우를 넘어설 만큼 커지면 `/context`는 출력 상단에 이 경고를 표시합니다. 공간을 확보할 때까지 요청은 [`Prompt is too long`](#prompt-is-too-long)으로 실패합니다. 대화형 세션에서는 이 오류가 `Context limit reached` 줄로 표시됩니다.2470대화가 모델의 컨텍스트 윈도우를 넘어설 만큼 커지면 `/context`는 출력 상단에 다음 경고를 표시합니다:
2446 2471
2447```text theme={null}2472```text theme={null}
2448Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.2473Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.
2449```2474```
2450 2475
2476`Context exceeds` 경고가 표시된 후, 기본값인 [자동 압축](https://code.claude.com/docs/ko/settings-reference.md#autocompactenabled)이 켜져 있는 동안에는 두 명령 중 어느 것도 실행할 필요가 없습니다:
2477
2478* **자동 압축 켜짐**: 다음 메시지를 보내세요. 여전히 [`Prompt is too long`](#prompt-is-too-long)으로 실패하면 해당 항목을 참조하세요.
2479* **자동 압축 꺼짐**: 세션에서 경고에 `/compact`가 표시되어 있으면 이를 실행하고, 그렇지 않으면 `/clear`를 실행하여 다시 시작하세요. 둘 중 하나를 실행하기 전까지 메시지는 `Context limit reached`로 실패하며, `-p` 출력에서는 `Prompt is too long`으로 실패합니다.
2480
2451초과한 한도가 1M 컨텍스트 모델의 200K 경계처럼 압축 윈도우인 경우 경고 문구가 다릅니다. 압축 윈도우는 모델의 컨텍스트 윈도우보다 작을 수 있으므로, 이를 넘어선 요청도 여전히 성공할 수 있습니다.2481초과한 한도가 1M 컨텍스트 모델의 200K 경계처럼 압축 윈도우인 경우 경고 문구가 다릅니다. 압축 윈도우는 모델의 컨텍스트 윈도우보다 작을 수 있으므로, 이를 넘어선 요청도 여전히 성공할 수 있습니다.
2452 2482
2453```text theme={null}2483```text theme={null}
2458 2488
2459**해결 방법:**2489**해결 방법:**
2460 2490
2461* 여러 턴으로 이루어진 대화에서는 `/compact`를 실행하여 이전 턴을 요약하고 공간을 확보하십시오. 대신 새로 시작하려면 `/clear`를 실행하십시오2491* **압축 윈도우 경고 후**: 여러 턴으로 이루어진 대화에서는 `/compact`를 실행하여 이전 턴을 요약하고 공간을 확보하세요. 대신 새로 시작하려면 `/clear`를 실행하세요.
2462* 사용량을 줄이는 더 많은 방법은 [Prompt is too long](#prompt-is-too-long)을 참조하십시오2492* 사용량을 줄이는 더 많은 방법은 [Prompt is too long](#prompt-is-too-long)을 참조하십시오
2463 2493
2464v2.1.216 이전에는 `/context`가 100%를 넘는 사용량을 표시하면서도 그 의미나 복구 방법을 설명하는 경고 줄을 표시하지 않았습니다.2494v2.1.216 이전에는 `/context`가 100%를 넘는 사용량을 표시하면서도 그 의미나 복구 방법을 설명하는 경고 줄을 표시하지 않았습니다.
3118 3148
3119## 명령줄 오류3149## 명령줄 오류
3120 3150
3121이 오류는 `claude` 명령줄과 그 하위 명령, 프롬프트에서 제출한 명령 이름, 그리고 `/security-review`처럼 프롬프트가 실행되기 전에 셸 명령을 실행해 컨텍스트를 수집하는 명령에서 발생합니다. CLI를 다시 시작하는 `/tui`에서도 발생합니다.3151이 오류는 `claude` 명령줄과 그 하위 명령, 프롬프트에서 제출한 명령 이름, 그리고 `/security-review`처럼 프롬프트가 실행되기 전에 셸 명령을 실행하여 컨텍스트를 수집하는 명령에서 발생합니다. CLI를 다시 실행하는 `/tui`에서도 발생합니다.
3122 3152
3123### `--bg`와 `--print` 간 충돌3153### `--bg`와 `--print` 충돌
3124 3154
3125이 메시지는 Claude Code v2.1.198 이상에서 나타납니다. 동일한 `claude` 호출에서 `--bg`를 `-p` 또는 `--print`와 함께 사용했습니다. `--bg`는 나중에 `claude agents`로 연결하는 [백그라운드 세션](https://code.claude.com/docs/ko/agent-view.md#from-your-shell)을 시작하는 반면, `--print`는 [비대화형으로](https://code.claude.com/docs/ko/headless.md) 실행되며 `claude agents`가 연결하는 대화형 세션을 시작하지 않습니다. v2.1.198 이전에는 이 조합이 연결할 수 없는 백그라운드 작업을 아무 알림 없이 생성했습니다.3155이 메시지는 Claude Code v2.1.198 이상이 필요합니다. 동일한 `claude` 호출에서 `--bg`를 `-p` 또는 `--print`와 함께 사용했습니다. `--bg`는 나중에 `claude agents`로 연결하는 [백그라운드 세션](https://code.claude.com/docs/ko/agent-view.md#from-your-shell)을 시작하는 반면, `--print`는 [비대화형으로](https://code.claude.com/docs/ko/headless.md) 실행되며 `claude agents`가 연결하는 대화형 세션을 시작하지 않습니다. v2.1.198 이전에는 이 조합이 연결할 수 없는 백그라운드 작업을 조용히 생성했습니다.
3126 3156
3127```text theme={null}3157```text theme={null}
3128--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.3158--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.
3131**해결 방법:**3161**해결 방법:**
3132 3162
3133* `-p` 또는 `--print`를 제거합니다. `--bg`는 프롬프트를 위치 인수로 받으므로 `claude --bg "<task>"`가 완전한 명령입니다. [셸에서 새 에이전트 디스패치하기](https://code.claude.com/docs/ko/agent-view.md#from-your-shell)를 참조하세요.3163* `-p` 또는 `--print`를 제거합니다. `--bg`는 프롬프트를 위치 인수로 받으므로 `claude --bg "<task>"`가 완전한 명령입니다. [셸에서 새 에이전트 디스패치하기](https://code.claude.com/docs/ko/agent-view.md#from-your-shell)를 참조하세요.
3134* 백그라운드 세션을 만드는 대신 프롬프트를 비대화형으로 실행하고 결과를 출력하려면 `--bg`를 제거하고 `claude -p "<task>"`를 실행합니다3164* 백그라운드 세션을 생성하는 대신 프롬프트를 비대화형으로 실행하고 결과를 출력하려면 `--bg`를 제거하고 `claude -p "<task>"`를 실행합니다
3135 3165
3136### Couldn't tell whether `--bg` is a flag or text3166### Couldn't tell whether `--bg` is a flag or text
3137 3167
3138Claude Code가 백그라운드 플래그인지 텍스트인지 구분할 수 없는 위치에 `--bg` 또는 `--background`를 넣어 `claude`를 실행했습니다. 명령은 아무것도 시작하지 않고 다음 줄을 출력한 뒤 종료 코드 1로 종료되었습니다.3168Claude Code가 백그라운드 플래그로 의도한 것인지 텍스트로 의도한 것인지 구분할 수 없는 위치에 `--bg` 또는 `--background`를 넣어 `claude`를 실행했습니다. 명령은 아무것도 시작하지 않고 다음 줄을 출력한 후 종료 코드 1로 종료되었습니다:
3139 3169
3140```text theme={null}3170```text theme={null}
3141Couldn't tell whether --bg is a flag or text here, so nothing was started. To start a background session put it first: claude --bg <prompt>3171Couldn't tell whether --bg is a flag or text here, so nothing was started. To start a background session put it first: claude --bg <prompt>
3142```3172```
3143 3173
3144`--background`를 입력한 경우 이 줄에는 `--background`가 대신 표시됩니다.3174`--background`를 입력한 경우 이 줄에는 대신 `--background`가 표시됩니다.
3145 3175
3146**해결 방법:**3176**해결 방법:**
3147 3177
3148* [백그라운드 세션](https://code.claude.com/docs/ko/agent-view.md#from-your-shell)을 시작하려면 셸에서 플래그를 맨 앞에 두고 명령을 다시 실행합니다: `claude --bg --name nightly-audit "<task>"`3178* [백그라운드 세션](https://code.claude.com/docs/ko/agent-view.md#from-your-shell)을 시작하려면 플래그를 맨 앞에 두고 셸에서 명령을 다시 실행합니다: `claude --bg --name nightly-audit "<task>"`
3149 3179
3150### 시스템 프롬프트 플래그와 파일 형식 간 충돌3180### 시스템 프롬프트 플래그와 파일 형식 플래그 간의 충돌
3151 3181
3152하나의 `claude` 호출에서 [`--append-subagent-system-prompt`](https://code.claude.com/docs/ko/cli-reference#cli-flags)를 `--append-subagent-system-prompt-file`과 함께 전달했기 때문에 `claude`가 세션을 시작하지 않고 종료 코드 1로 종료됩니다.3182하나의 `claude` 호출에서 [`--append-subagent-system-prompt`](https://code.claude.com/docs/ko/cli-reference#cli-flags)를 `--append-subagent-system-prompt-file`과 함께 전달했으므로, `claude`는 세션을 시작하지 않고 종료 코드 1로 종료됩니다:
3153 3183
3154```text theme={null}3184```text theme={null}
3155Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one.3185Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one.
3156```3186```
3157 3187
3158v2.1.283 이전에는 `--system-prompt`와 `--system-prompt-file`, 또는 `--append-system-prompt`와 `--append-system-prompt-file`을 함께 전달해도 `claude`가 같은 방식으로 종료되었습니다. 해당 쌍이 [결합](https://code.claude.com/docs/ko/cli-reference.md#system-prompt-flags)되지 않고 충돌했기 때문입니다. 해당 버전에서는 메시지에 함께 사용한 쌍의 이름이 표시됩니다.3188v2.1.283 이전에는 `--system-prompt`를 `--system-prompt-file`과 함께, 또는 `--append-system-prompt`를 `--append-system-prompt-file`과 함께 전달한 경우에도 `claude`가 같은 방식으로 종료되었습니다. 해당 쌍이 [결합](https://code.claude.com/docs/ko/cli-reference.md#system-prompt-flags)되지 않고 충돌했기 때문입니다. 이러한 버전에서는 메시지에 사용자가 함께 사용한 쌍이 표시됩니다.
3159 3189
3160**해결 방법:**3190**해결 방법:**
3161 3191
3162* 플래그 중 한 가지 형식만 남기고 다른 하나는 제거합니다. 고정된 프롬프트 파일과 실행별 텍스트를 결합하려면 두 플래그를 모두 전달하는 대신 실행 전에 텍스트를 파일에 병합합니다3192* 플래그의 한 가지 형식만 유지하고 다른 형식은 제거합니다. 고정된 프롬프트 파일과 실행별 텍스트를 결합하려면 두 플래그를 모두 전달하는 대신 실행하기 전에 텍스트를 파일에 병합합니다
3163 3193
3164### Invalid `--agents` configuration3194### Invalid `--agents` configuration
3165 3195
3166`--agents`에 전달한 값이 유효하지 않으므로 `claude`가 세션을 시작하지 않고 종료 코드 1로 종료됩니다. `--safe-mode`를 전달하거나 [`CLAUDE_CODE_SAFE_MODE`](https://code.claude.com/docs/ko/env-vars#variables)를 설정하면 Claude Code는 `--agents`를 완전히 무시합니다. `--resume` 또는 `--continue`를 사용하면 인라인 JSON 값은 검사되지 않고 세션이 시작되지만, 파일에서 읽은 값은 실행할 때마다 검사됩니다. v2.1.242 이전에는 Claude Code가 그대로 세션을 시작했습니다.3196`--agents`에 전달한 값이 유효하지 않으므로 `claude`는 세션을 시작하지 않고 종료 코드 1로 종료됩니다. `--safe-mode`를 전달하거나 [`CLAUDE_CODE_SAFE_MODE`](https://code.claude.com/docs/ko/env-vars#variables)를 설정하면 Claude Code는 `--agents`를 완전히 무시합니다. `--resume` 또는 `--continue`를 사용하면 인라인 JSON 값은 검사되지 않고 세션이 시작되지만, 파일에서 읽은 값은 실행할 때마다 검사됩니다. v2.1.242 이전에는 Claude Code가 그대로 세션을 시작했습니다.
3167 3197
3168```text theme={null}3198```text theme={null}
3169Error: Invalid --agents configuration:3199Error: Invalid --agents configuration:
3170<what failed>3200<what failed>
3171```3201```
3172 3202
3173첫 번째 줄 다음에 오는 내용은 값이 실패한 방식에 따라 달라집니다. Claude Code는 다음 검사를 순서대로 실행하며 처음 실패한 검사에서 멈춥니다. 값에 두 종류의 문제가 있으면 첫 번째 문제를 수정한 후에야 두 번째 문제가 표시됩니다.3203첫 번째 줄 다음에 오는 내용은 값이 어떻게 실패했는지에 따라 달라집니다. Claude Code는 다음 검사를 순서대로 실행하고 처음 실패한 검사에서 중단합니다. 값에 두 종류의 문제가 있는 경우 첫 번째 문제를 해결한 후에야 두 번째 문제가 표시됩니다:
3174 3204
31751. 값이 `{`로 시작하지만 JSON으로 구문 분석되지 않거나 `--agents` 파일의 내용이 구문 분석되지 않으면, Claude Code는 JSON 파서 자체의 메시지가 포함된 `invalid JSON:` 줄 하나를 출력합니다32051. 값이 `{`로 시작하지만 JSON으로 파싱되지 않거나 `--agents` 파일의 내용이 파싱되지 않으면, Claude Code는 JSON 파서 자체의 메시지가 담긴 `invalid JSON:` 줄 하나를 출력합니다
31762. 구문 분석은 되지만 에이전트 정의가 [CLI로 정의한 서브에이전트](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)의 스키마와 일치하지 않으면, Claude Code는 문제마다 한 줄씩 출력합니다32062. 파싱은 되지만 에이전트 정의가 [CLI로 정의된 서브에이전트](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)의 스키마와 일치하지 않으면, Claude Code는 문제마다 한 줄씩 출력합니다
31773. 에이전트 이름이 `-`로 시작하면 Claude Code는 `<name>: agent names must not start with '-'`를 출력합니다32073. 에이전트 이름이 `-`로 시작하면 Claude Code는 `<name>: agent names must not start with '-'`를 출력합니다
3178 3208
3179문제 줄이 20개를 넘으면 Claude Code는 처음 20개를 출력하고 나머지는 `…and N more`로 대체합니다.3209문제 줄이 20개를 초과하면 Claude Code는 처음 20개를 출력하고 나머지는 `…and N more`로 대체합니다.
3180 3210
3181`--print`를 사용하면 `--agents`는 인라인 객체 대신 [JSON 파일 경로](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)도 받습니다. v2.1.281 이전에는 `--agents`가 인라인 JSON만 받았으며 파일 경로를 잘못된 JSON으로 처리했습니다. 파일 형식에는 자체 거부 메시지가 있으며, 이 메시지 대신 다음과 같은 메시지가 출력됩니다.3211`--print`와 함께 사용할 때 `--agents`는 인라인 객체 대신 [JSON 파일의 경로](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)도 받습니다. v2.1.281 이전에는 `--agents`가 인라인 JSON만 받았으며 파일 경로를 유효하지 않은 JSON으로 처리했습니다. 파일 형식에는 이 메시지 대신 출력되는 자체 거부 메시지가 있으며, 다음이 포함됩니다:
3182 3212
3183* **`Error: --agents takes a JSON object, or a file path only with --print (-p)`**: 대화형 세션에서 Claude Code가 값을 파일 경로로 읽었습니다. 정의를 인라인 JSON으로 전달하거나, 파일에서 읽으려면 `-p`를 추가합니다.3213* **`Error: --agents takes a JSON object, or a file path only with --print (-p)`**: Claude Code가 대화형 세션에서 값을 파일 경로로 읽었습니다. 정의를 인라인 JSON으로 전달하거나, 파일에서 읽으려면 `-p`를 추가합니다.
3184* **`Error: --agents file not found: <path>`**: 해당 경로에 파일이 없습니다. `{`로 시작하지 않고 유효한 JSON이 아닌 값은 경로로 읽히므로, 셸이 손상시킨 인라인 JSON도 이런 방식으로 실패할 수 있습니다. 경로나 따옴표 처리를 확인하고 명령을 다시 실행합니다.3214* **`Error: --agents file not found: <path>`**: 해당 경로에 파일이 없습니다. `{`로 시작하지 않고 유효한 JSON이 아닌 값은 경로로 읽히므로, 셸이 손상시킨 인라인 JSON도 이런 방식으로 실패할 수 있습니다. 경로나 따옴표 처리를 확인하고 명령을 다시 실행합니다.
3185 3215
3186**해결 방법:**3216**해결 방법:**
3187 3217
3188* 메시지에 나열된 각 문제를 수정한 다음 명령을 다시 실행합니다. [CLI로 정의한 서브에이전트가 받는 필드](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)를 참조하세요.3218* 메시지에 나열된 각 문제를 해결한 다음 명령을 다시 실행합니다. [CLI로 정의된 서브에이전트가 받는 필드](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)를 참조하세요.
3189 3219
3190### Cloud sessions cannot be created from a `--restricted` session3220### Cloud sessions cannot be created from a `--restricted` session
3191 3221
3192[`--restricted`](https://code.claude.com/docs/ko/cli-reference#cli-flags)로 세션을 시작하면 Claude Code는 해당 세션에서 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#from-terminal-to-cloud)을 만드는 것을 거부합니다. 새 세션은 제한된 프로세스 외부에서 실행되어 제한 모드를 적용하지 않기 때문입니다. Claude Code는 서버에 연결하기 전에 클라이언트에서 거부하므로 클라우드 세션은 생성되지 않습니다.3222[`--restricted`](https://code.claude.com/docs/ko/cli-reference#cli-flags)로 세션을 시작하면, Claude Code는 그 세션에서 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#from-terminal-to-cloud)을 생성하는 것을 거부합니다. 새 세션은 제한된 프로세스 밖에서 실행되어 제한 모드를 적용하지 않기 때문입니다. Claude Code는 서버에 연결하기 전에 클라이언트에서 거부하므로 클라우드 세션이 생성되지 않습니다:
3193 3223
3194```text theme={null}3224```text theme={null}
3195Cloud sessions cannot be created from a --restricted session: they would not enforce it.3225Cloud sessions cannot be created from a --restricted session: they would not enforce it.
3198**해결 방법:**3228**해결 방법:**
3199 3229
3200* 제한된 세션에서 작업을 로컬로 실행합니다3230* 제한된 세션에서 작업을 로컬로 실행합니다
3201* 세션이 시작되는 방식을 제어할 수 있다면 `--restricted` 없이 새 `claude` 세션을 시작하고 그곳에서 클라우드 세션을 만듭니다3231* 세션이 실행되는 방식을 제어할 수 있다면 `--restricted` 없이 새 `claude` 세션을 시작하고 그곳에서 클라우드 세션을 생성합니다
3202 3232
3203v2.1.248 이전에는 Claude Code에 `--restricted` 플래그가 없었으며, 이전 버전은 알 수 없는 옵션 오류로 플래그 자체를 거부합니다.3233v2.1.248 이전에는 Claude Code에 `--restricted` 플래그가 없었으며, 이전 버전은 알 수 없는 옵션 오류로 플래그 자체를 거부합니다.
3204 3234
3205### Cloud sessions are disabled by your organization's policy3235### Cloud sessions are disabled by your organization's policy
3206 3236
3207조직의 `allow_remote_sessions` 정책이 꺼져 있으므로 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)과 이를 사용하는 명령을 사용할 수 없습니다.3237조직의 `allow_remote_sessions` 정책이 꺼져 있으므로 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)과 이를 사용하는 명령을 사용할 수 없습니다:
3208 3238
3209```text theme={null}3239```text theme={null}
3210Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.3240Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.
3211```3241```
3212 3242
3213이 메시지는 [터미널에서 클라우드 세션을 만들 때](https://code.claude.com/docs/ko/claude-code-on-the-web.md#from-terminal-to-cloud)와 `/teleport`, `/remote-env`, `/web-setup`처럼 클라우드 세션이 필요한 명령을 제출할 때 나타납니다. v2.1.268 이전에는 이러한 명령을 제출하면 대신 [`Unknown command`](#unknown-command)가 반환되었습니다.3243이 메시지는 [터미널에서 클라우드 세션을 생성할 때](https://code.claude.com/docs/ko/claude-code-on-the-web.md#from-terminal-to-cloud)와 `/teleport`, `/remote-env`, `/web-setup`처럼 클라우드 세션이 필요한 명령을 제출할 때 표시됩니다. v2.1.268 이전에는 이러한 명령 중 하나를 제출하면 대신 [`Unknown command`](#unknown-command)가 반환되었습니다.
3214 3244
3215메시지에 이 세션이 사용 중인 자격 증명이 표시되고 `Cloud sessions use your claude.ai login.`으로 끝나는 경우 [Cloud sessions use your claude.ai login](#cloud-sessions-use-your-claude-ai-login)을 참조하세요. Claude Code가 조직의 정책을 전혀 불러오지 못한 경우에는 대신 [다른 메시지](#couldnt-verify-your-organizations-policy-for-cloud-sessions)가 표시됩니다.3245메시지가 대신 이 세션에서 사용 중인 자격 증명을 언급하고 `Cloud sessions use your claude.ai login.`으로 끝나는 경우, [Cloud sessions use your claude.ai login](#cloud-sessions-use-your-claude-ai-login)을 참조하세요. Claude Code가 조직의 정책을 전혀 불러오지 못한 경우에는 대신 [다른 메시지](#couldnt-verify-your-organizations-policy-for-cloud-sessions)가 표시됩니다.
3216 3246
3217**해결 방법:**3247**해결 방법:**
3218 3248
3219* 조직의 [Owner](https://code.claude.com/docs/ko/server-managed-settings.md#access-control)에게 [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)의 Claude Code 관리자 설정에서 클라우드 세션을 활성화해 달라고 요청합니다3249* 조직의 [Owner](https://code.claude.com/docs/ko/server-managed-settings.md#access-control)에게 [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)의 Claude Code 관리자 설정에서 클라우드 세션을 활성화하도록 요청합니다
3220 3250
3221### Cloud sessions use your claude.ai login3251### Cloud sessions use your claude.ai login
3222 3252
3223[정책 거부](#cloud-sessions-are-disabled-by-your-organizations-policy) 메시지에 이 세션이 사용 중인 자격 증명이 표시되고 이 문장으로 끝나는 경우, Claude Code는 해당 자격 증명을 발급한 조직의 클라우드 세션 정책을 확인한 것입니다. 이 조직은 claude.ai 로그인이 속한 조직과 다를 수 있습니다.3253[정책 거부 메시지](#cloud-sessions-are-disabled-by-your-organizations-policy)가 이 세션에서 사용 중인 자격 증명을 언급하고 이 문장으로 끝나는 경우, Claude Code는 해당 자격 증명을 발급한 조직의 클라우드 세션 정책을 확인한 것입니다. 그 조직은 claude.ai 로그인이 속한 조직과 다를 수 있습니다:
3224 3254
3225```text theme={null}3255```text theme={null}
3226Cloud sessions are disabled by your organization's policy. This session is using ANTHROPIC_API_KEY, so Claude Code checked the policy for the organization that key belongs to. Cloud sessions use your claude.ai login.3256Cloud sessions are disabled by your organization's policy. This session is using ANTHROPIC_API_KEY, so Claude Code checked the policy for the organization that key belongs to. Cloud sessions use your claude.ai login.
3227```3257```
3228 3258
3229마지막 문장은 클라우드 세션이 해당 자격 증명이 아니라 claude.ai 로그인으로 실행된다는 의미입니다. 이 형식은 `--cloud` 또는 `--teleport` 등으로 셸에서 클라우드 세션을 시작하거나, 재개하거나, 메시지를 보낼 때 나타납니다. v2.1.296 이전에는 이 경우에도 Claude Code가 조직 관리자에게 문의하라는 형식을 출력했습니다.3259마지막 문장은 클라우드 세션이 해당 자격 증명이 아닌 claude.ai 로그인으로 실행된다는 의미입니다. 이 형식은 `--cloud` 또는 `--teleport`처럼 셸에서 클라우드 세션을 시작하거나, 재개하거나, 메시지를 보낼 때 표시됩니다. v2.1.296 이전에는 이 경우에도 Claude Code가 조직 관리자에게 문의하라는 형식을 출력했습니다.
3230 3260
3231### Couldn't verify your organization's policy for cloud sessions3261### Couldn't verify your organization's policy for cloud sessions
3232 3262
3233이 메시지는 Claude Code가 조직의 정책을 불러오지 못했다는 의미입니다. Claude Code는 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)을 만들거나, 재개하거나, 메시지를 보내기 전에 이 정책을 확인합니다. 정책 요청이 아직 완료되지 않은 동안 표시되는 메시지는 다음과 같습니다.3263이 메시지는 Claude Code가 조직의 정책을 불러오지 못했다는 의미입니다. Claude Code는 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)을 생성하거나, 재개하거나, 메시지를 보내기 전에 이 정책을 확인합니다. 정책 요청이 완료되지 않은 동안에는 메시지가 다음과 같습니다:
3234 3264
3235```text theme={null}3265```text theme={null}
3236Couldn't verify your organization's policy for cloud sessions. Check your network connection and try again.3266Couldn't verify your organization's policy for cloud sessions. Check your network connection and try again.
3237```3267```
3238 3268
3239세션 내에서 `/teleport`나 `/web-setup`처럼 클라우드 세션이 필요한 명령도 이 메시지를 표시합니다. 셸이라면 `Cloud sessions aren't available:` 형식을 출력할 상황에서도 이 메시지가 표시되며, 두 번째 문장은 `Check your network connection, then restart Claude Code and try again.`입니다.3269세션 내에서는 `/teleport` 또는 `/web-setup`처럼 클라우드 세션이 필요한 명령도 이 메시지를 표시합니다. 셸에서라면 `Cloud sessions aren't available:` 형식이 출력될 상황에서도 마찬가지이며, 두 번째 문장은 `Check your network connection, then restart Claude Code and try again.`입니다.
3240 3270
3241정책 요청이 실패하면 메시지에 실패한 내용이 표시됩니다. 이는 `--cloud` 또는 `--teleport` 같은 플래그로 셸에서 클라우드 세션을 시작하거나, 재개하거나, 메시지를 보낼 때 적용됩니다. API로 가는 경로가 없으면 다음과 같이 표시됩니다.3271정책 요청이 실패하면 메시지에 무엇이 실패했는지 표시됩니다. 이는 `--cloud` 또는 `--teleport` 같은 플래그로 셸에서 클라우드 세션을 시작하거나, 재개하거나, 메시지를 보낼 때 적용됩니다. API로의 경로가 없으면 다음과 같이 표시됩니다:
3242 3272
3243```text theme={null}3273```text theme={null}
3244Cloud sessions aren't available: couldn't reach api.anthropic.com to load your organization's policy. Check your network or proxy.3274Cloud sessions aren't available: couldn't reach api.anthropic.com to load your organization's policy. Check your network or proxy.
3245```3275```
3246 3276
3247다른 실패도 같은 시작 부분 뒤에 HTTP 403으로 요청을 거부한 프록시, 서버 오류, API가 받아들이지 않은 자격 증명 등 각각의 원인이 이어집니다. 이 세션이 claude.ai 로그인 대신 사용하는 자격 증명(예: `ANTHROPIC_API_KEY` 환경 변수)을 API가 받아들이지 않은 경우, 메시지에 해당 자격 증명의 이름과 설정을 해제하라는 안내가 표시될 수도 있습니다.3277다른 실패도 같은 시작 문구 뒤에 HTTP 403으로 요청을 거부한 프록시, 서버 오류, API가 받아들이지 않은 자격 증명 등 각자의 원인을 표시합니다. `ANTHROPIC_API_KEY` 환경 변수처럼 이 세션이 claude.ai 로그인 대신 사용하는 자격 증명을 API가 받아들이지 않은 경우, 메시지에 해당 자격 증명이 표시되고 이를 해제하라는 안내가 포함될 수도 있습니다:
3248 3278
3249```text theme={null}3279```text theme={null}
3250Cloud sessions aren't available: api.anthropic.com didn't accept this session's credentials when Claude Code asked for your organization's policy. Cloud sessions use your claude.ai login. ANTHROPIC_API_KEY is set, so this session is using API-key auth — unset it (or run in a shell without it) to use cloud sessions.3280Cloud sessions aren't available: api.anthropic.com didn't accept this session's credentials when Claude Code asked for your organization's policy. Cloud sessions use your claude.ai login. ANTHROPIC_API_KEY is set, so this session is using API-key auth — unset it (or run in a shell without it) to use cloud sessions.
3255**해결 방법:**3285**해결 방법:**
3256 3286
3257* `Couldn't verify` 메시지의 경우 네트워크 연결을 확인하고 다시 시도합니다. 세션 내에서는 먼저 Claude Code를 다시 시작합니다3287* `Couldn't verify` 메시지의 경우 네트워크 연결을 확인하고 다시 시도합니다. 세션 내에서는 먼저 Claude Code를 다시 시작합니다
3258* `Cloud sessions aren't available:` 메시지의 경우 프록시 확인이나 메시지에 표시된 자격 증명 설정 해제 등 원인에 맞는 조치를 취한 다음 명령을 다시 실행합니다3288* `Cloud sessions aren't available:` 메시지의 경우 프록시를 확인하거나 메시지에 표시된 자격 증명을 해제하는 등 원인에 맞는 조치를 취한 다음 명령을 다시 실행합니다
3259 3289
3260### 폴더가 추적 파일을 대체하여 아무것도 stash되지 않음3290### Nothing was stashed because a folder replaced a tracked file
3261 3291
3262이 메시지는 체크아웃에서 git이 추적하던 파일이나 링크가 있던 위치에 이제 폴더가 있다는 의미입니다. `claude --teleport` 또는 `/teleport` 등으로 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#from-cloud-to-terminal)을 터미널로 가져오는 중에 stash 옵션을 선택한 후 나타납니다. 이 상태를 stash하면 폴더 안의 파일이 삭제될 수 있으므로 Claude Code는 stash를 거부하고 체크아웃과 인덱스를 변경하지 않고 그대로 둡니다.3292이 메시지는 체크아웃에서 git이 추적하던 파일이나 링크가 있던 자리에 이제 폴더가 있다는 의미입니다. 예를 들어 `claude --teleport` 또는 `/teleport`로 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#from-cloud-to-terminal)을 터미널로 가져오는 동안 stash 옵션을 선택하면 표시됩니다. 이 상태를 stash하면 폴더 안의 파일이 삭제될 수 있으므로, Claude Code는 stash를 거부하고 체크아웃과 인덱스를 변경하지 않은 채로 둡니다:
3263 3293
3264```text wrap theme={null}3294```text wrap theme={null}
3265Error: Nothing was stashed: "f" is now a folder in place of a tracked file or link, and stashing could delete what's in it for good. Commit the change or move the folder somewhere else, then try again.3295Error: Nothing was stashed: "f" is now a folder in place of a tracked file or link, and stashing could delete what's in it for good. Commit the change or move the folder somewhere else, then try again.
3267 3297
3268**해결 방법:**3298**해결 방법:**
3269 3299
3270* 메시지 안내대로 변경 사항을 커밋하거나 폴더를 다른 곳으로 옮긴 다음 teleport를 다시 실행합니다3300* 메시지에 안내된 대로 변경 사항을 커밋하거나 폴더를 다른 곳으로 옮긴 다음 Teleport를 다시 실행합니다
3271 3301
3272### The `--json-schema` value is not a valid JSON Schema3302### The `--json-schema` value is not a valid JSON Schema
3273 3303
3274[비대화형 모드](https://code.claude.com/docs/ko/headless.md#get-structured-output)에서 [`--json-schema`](https://code.claude.com/docs/ko/cli-reference#cli-flags)에 전달한 스키마가 JSON Schema 컴파일에 실패했으므로 `claude`가 프롬프트를 실행하지 않고 종료 코드 1로 종료됩니다. v2.1.205 이전에는 잘못된 스키마가 오류 없이 구조화되지 않은 출력을 생성했으며, `format` 키워드를 사용한 스키마는 모두 유효하지 않은 것으로 처리되었습니다.3304[비대화형 모드](https://code.claude.com/docs/ko/headless.md#get-structured-output)에서 [`--json-schema`](https://code.claude.com/docs/ko/cli-reference#cli-flags)에 전달한 스키마가 JSON Schema 컴파일에 실패했으므로, `claude`는 프롬프트를 실행하지 않고 종료 코드 1로 종료됩니다. v2.1.205 이전에는 유효하지 않은 스키마가 오류 없이 구조화되지 않은 출력을 생성했으며, `format` 키워드를 사용하는 모든 스키마는 유효하지 않은 것으로 처리되었습니다.
3275 3305
3276```text theme={null}3306```text theme={null}
3277Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values3307Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values
3278```3308```
3279 3309
3280두 번째 콜론 뒤의 텍스트는 검증기의 진단 메시지이며 실패한 키워드나 위치를 나타냅니다. `"format": "email"`처럼 `format` 키워드를 사용하는 스키마는 유효합니다. Claude Code는 `format`을 주석으로 받아들이며 이를 강제하지 않습니다.3310두 번째 콜론 뒤의 텍스트는 검사기의 진단 메시지이며, 실패한 키워드나 위치를 알려 줍니다. `"format": "email"`처럼 `format` 키워드를 사용하는 스키마는 유효합니다. Claude Code는 `format`을 주석으로 받아들이며 이를 강제하지 않습니다.
3281 3311
3282Claude Code는 스키마 컴파일 전에 두 가지 검사를 실행합니다. 구문 분석할 수 없는 JSON 값은 `Error: --json-schema is not valid JSON`으로, 객체가 아닌 유효한 JSON은 `Error: --json-schema must be a JSON object`로 거부합니다.3312Claude Code는 스키마 컴파일 전에 두 가지 검사를 실행합니다. 파싱할 수 없는 JSON 값은 `Error: --json-schema is not valid JSON`으로 거부하고, 객체가 아닌 유효한 JSON은 `Error: --json-schema must be a JSON object`로 거부합니다.
3283 3313
3284**해결 방법:**3314**해결 방법:**
3285 3315
3286* 진단 메시지가 가리키는 스키마 부분을 수정한 다음 명령을 다시 실행합니다3316* 진단 메시지가 가리키는 스키마 부분을 수정한 다음 명령을 다시 실행합니다
3287* 작동하는 스키마와 명령은 [구조화된 출력 받기](https://code.claude.com/docs/ko/headless.md#get-structured-output)를 참조하세요3317* 동작하는 스키마와 명령은 [구조화된 출력 받기](https://code.claude.com/docs/ko/headless.md#get-structured-output)를 참조하세요
3288 3318
3289### Settings file exceeds the 2MiB limit3319### Settings file exceeds the 2MiB limit
3290 3320
3291[`--settings`](https://code.claude.com/docs/ko/cli-reference#cli-flags)에 전달한 파일이 2 MiB보다 크므로 `claude`가 파일을 불러오지 않고 시작 시 종료 코드 1로 종료됩니다. v2.1.214 이전에는 Claude Code가 크기 검사 없이 파일을 읽었기 때문에, 수 기가바이트 크기의 파일이나 `/dev/zero` 같은 장치 파일로 인해 메모리가 한없이 증가했습니다.3321[`--settings`](https://code.claude.com/docs/ko/cli-reference#cli-flags)에 전달한 파일이 2 MiB보다 크므로, `claude`는 파일을 불러오지 않고 시작 시 종료 코드 1로 종료됩니다. v2.1.214 이전에는 Claude Code가 크기 검사 없이 파일을 읽었으며, 수 기가바이트 파일이나 `/dev/zero` 같은 장치 파일로 인해 메모리가 한없이 증가했습니다.
3292 3322
3293```text theme={null}3323```text theme={null}
3294Error: Settings file exceeds the 2MiB limit: /path/to/settings.json3324Error: Settings file exceeds the 2MiB limit: /path/to/settings.json
3295```3325```
3296 3326
3297Claude Code는 일반 파일이 아닌 `--settings` 경로도 같은 방식으로 거부합니다. 장치, FIFO, 소켓은 `Error: Cannot use settings file (Not a regular file (device, FIFO, or socket))` 뒤에 경로를 표시하고, 디렉터리는 `EISDIR` 사유를 표시합니다.3327Claude Code는 일반 파일이 아닌 `--settings` 경로도 같은 방식으로 거부합니다. 장치, FIFO 또는 소켓은 `Error: Cannot use settings file (Not a regular file (device, FIFO, or socket))`와 그 뒤에 경로를 표시하고, 디렉터리는 `EISDIR` 사유를 표시합니다.
3298 3328
3299**해결 방법:**3329**해결 방법:**
3300 3330
3302 3332
3303### Configuration error in \~/.claude.json3333### Configuration error in \~/.claude.json
3304 3334
3305Claude Code가 계정 정보, MCP 서버, 프로젝트별 상태를 저장하는 파일인 `~/.claude.json`을 구문 분석하지 못했습니다. 파일은 변경되지 않았습니다. `claude -p` 같은 [비대화형](https://code.claude.com/docs/ko/headless.md) 시작은 파일을 복구할 때까지 매번 종료 코드 1로 종료됩니다.3335Claude Code가 계정 정보, MCP 서버, 프로젝트별 상태를 담고 있는 파일인 `~/.claude.json`을 파싱하지 못했습니다. `claude -p` 같은 [비대화형](https://code.claude.com/docs/ko/headless.md) 시작은 종료 코드 1로 종료됩니다.
3306 3336
3307Claude Code가 [백업](https://code.claude.com/docs/ko/claude-directory.md#cleaned-up-automatically)을 찾으면 출력에 백업 이름과 이를 다시 복사하는 `cp` 줄이 표시됩니다.3337Claude Code가 [백업](https://code.claude.com/docs/ko/claude-directory.md#cleaned-up-automatically)을 찾으면, 출력에 해당 백업이 표시되고 이를 다시 복사하는 `cp` 줄이 출력됩니다:
3308 3338
3309```text wrap theme={null}3339```text wrap theme={null}
3310Claude configuration file at /home/user/.claude.json is corrupted: <JSON parser's message>3340Claude configuration file at /home/user/.claude.json is corrupted: <JSON parser's message>
3317 3347
3318**해결 방법:**3348**해결 방법:**
3319 3349
3320* **출력에 `cp` 줄이 있는 경우**: 터미널에서 해당 줄을 실행합니다. Windows에서는 PowerShell에서 실행합니다. 손상된 파일을 `~/.claude.json`의 이전 버전인 백업으로 대체합니다.3350* **출력에 `cp` 줄이 있는 경우**: 해당 줄을 터미널에서 실행합니다. Windows에서는 PowerShell에서 실행합니다.
3321* **출력에 `cp` 줄이 없거나 실행 후에도 오류가 다시 발생하는 경우**: `~/.claude.json`의 JSON을 수정하거나, [`~/.claude/backups/`](https://code.claude.com/docs/ko/claude-directory#cleaned-up-automatically)에 다른 `.claude.json.backup.<timestamp>` 파일이 있으면 그 파일로 덮어쓰거나, 파일 이름을 변경합니다. `~/.claude.json`에 파일이 없으면 Claude Code는 기본 설정으로 시작하며 파일에 있던 내용은 모두 사용되지 않습니다.3351* **출력에 `cp` 줄이 없거나, 실행한 후에도 오류가 다시 나타나는 경우**: `~/.claude.json`에 구성이 아직 남아 있다면 JSON을 수정합니다. 수정할 수 없다면 [`~/.claude/backups/`](https://code.claude.com/docs/ko/claude-directory#cleaned-up-automatically)에 다른 `.claude.json.backup.<timestamp>` 파일이 있을 경우 이를 덮어쓰거나, 파일 이름을 변경합니다. `~/.claude.json`에 파일이 없으면 Claude Code는 기본 설정으로 시작하며 파일에 있던 내용은 모두 사라집니다.
3322 3352* **`~/.claude.json`에 더 이상 구성이 없는 경우**: [`~/.claude/backups/`](https://code.claude.com/docs/ko/claude-directory#cleaned-up-automatically)나 홈 디렉터리에서 구성이 남아 있는 `.claude.json.corrupted.<timestamp>` 파일을 찾습니다. JSON을 수정한 다음 `~/.claude.json` 위에 복사합니다. 해당 파일을 찾거나 수정할 수 없다면, 구성이 남아 있는 `.claude.json.backup.<timestamp>` 파일로 같은 단계를 시도합니다. 그런 파일도 없다면 `~/.claude.json`의 이름을 변경하고 [`claude mcp add`](https://code.claude.com/docs/ko/mcp#installing-mcp-servers)로 MCP 서버를 다시 추가합니다.
3323v2.1.318 이전에는 비대화형 시작에서 이 오류가 출력된 후 `~/.claude.json`이 기본값으로 남아, 다음 시작이 기존 구성 없이 실행되었습니다.
3324 3353
3325### Claude configuration file was empty and no backup holds anything3354### Claude configuration file was empty and no backup holds anything
3326 3355
3327시작 시 나타나는 이 메시지는 메시지에 표시된 파일이 비어 있고 해당 파일의 [`.backup` 사본](https://code.claude.com/docs/ko/claude-directory#cleaned-up-automatically)에도 아무 내용이 없다는 의미입니다. Claude Code는 해당 파일이 담는 내용에 대해 기본값으로 시작했습니다. `settings.json` 파일과 `.mcp.json`은 별도의 파일입니다.3356시작 시 이 메시지가 표시되면 메시지에 표시된 파일이 비어 있었고, 해당 파일의 [`.backup` 사본](https://code.claude.com/docs/ko/claude-directory#cleaned-up-automatically) 중 어느 것에도 내용이 없다는 의미입니다. Claude Code는 해당 파일이 담는 내용을 기본값으로 설정하고 시작했습니다. `settings.json` 파일과 `.mcp.json`은 별도의 파일입니다.
3328 3357
3329```text wrap theme={null}3358```text wrap theme={null}
3330Claude configuration file at /home/user/.claude.json was empty and no backup holds anything: starting with defaults.3359Claude configuration file at /home/user/.claude.json was empty and no backup holds anything: starting with defaults.
3335* 해당 파일에 구성해 두었던 내용을 다시 설정합니다. 예를 들어 터미널에서 `claude mcp add`로 `user` 및 `local` 범위의 [MCP 서버](https://code.claude.com/docs/ko/mcp.md#mcp-installation-scopes)를 추가합니다.3364* 해당 파일에 구성해 두었던 내용을 다시 설정합니다. 예를 들어 터미널에서 `claude mcp add`로 `user` 및 `local` 범위의 [MCP 서버](https://code.claude.com/docs/ko/mcp.md#mcp-installation-scopes)를 추가합니다.
3336* Claude Code가 요청하면 다시 로그인합니다3365* Claude Code가 요청하면 다시 로그인합니다
3337 3366
3338v2.1.318 이전에는 Claude Code가 백업 없는 빈 파일을 [손상됨](#configuration-error-in-claude-json)으로 보고했습니다.3367v2.1.318 이전에는 Claude Code가 백업이 없는 빈 파일을 [손상된](#configuration-error-in-claude-json) 파일로 보고했습니다.
3339 3368
3340### The current directory no longer exists3369### The current directory no longer exists
3341 3370
3342셸이 진입한 후 삭제되거나 이동된 디렉터리(예: 다른 셸이 제거한 worktree나 임시 디렉터리)에서 `claude`를 시작했습니다. Claude Code가 작업 디렉터리를 읽을 수 없으므로 대화형 모드와 [비대화형](https://code.claude.com/docs/ko/headless.md) 모드 모두에서 세션을 시작하기 전에 종료 코드 1로 종료됩니다. v2.1.239 이전에는 이 메시지 대신 Claude Code가 축소된 번들 소스와 원시 `ENOENT ... uv_cwd` 스택을 stderr에 출력하며 충돌했습니다.3371셸이 진입한 후 삭제되거나 이동된 디렉터리(예: 다른 셸이 제거한 worktree 또는 임시 디렉터리)에서 `claude`를 시작했습니다. Claude Code가 작업 디렉터리를 읽을 수 없으므로 대화형 모드와 [비대화형](https://code.claude.com/docs/ko/headless.md) 모드 모두에서 세션을 시작하기 전에 종료 코드 1로 종료됩니다. v2.1.239 이전에는 이 메시지 대신 Claude Code가 축소된 번들 소스와 원시 `ENOENT ... uv_cwd` 스택을 stderr에 출력하며 비정상 종료되었습니다.
3343 3372
3344```text theme={null}3373```text theme={null}
3345The current directory no longer exists (it was deleted or moved). Start Claude Code from an existing directory.3374The current directory no longer exists (it was deleted or moved). Start Claude Code from an existing directory.
3346error: The current working directory was deleted, so that command didn't work. Please cd into a different directory and try again.3375error: The current working directory was deleted, so that command didn't work. Please cd into a different directory and try again.
3347```3376```
3348 3377
3349두 형식 모두 원인과 해결 방법은 같습니다.3378두 형식의 원인과 해결 방법은 동일합니다.
3350 3379
3351권한 변경 등 다른 이유로 Claude Code가 작업 디렉터리를 읽을 수 없으면 메시지에 대신 오류 코드가 표시됩니다: `Can't read the current directory (EACCES). Start Claude Code from a different directory.`3380권한 변경 등 다른 이유로 Claude Code가 작업 디렉터리를 읽을 수 없는 경우, 메시지에는 대신 오류 코드가 표시됩니다: `Can't read the current directory (EACCES). Start Claude Code from a different directory.`
3352 3381
3353macOS에서 `~/Desktop`, `~/Documents`, `~/Downloads` 또는 iCloud Drive에 있는 디렉터리에 대해 `EPERM`이 발생하면 대개 macOS가 터미널 앱의 해당 폴더 접근을 차단하고 있다는 의미입니다. 해당 폴더를 읽는 다른 명령도 같은 방식으로 실패하며, 그곳에서 `ls`를 실행하면 `sudo`를 사용하더라도 `Operation not permitted`가 표시됩니다.3382macOS에서 `~/Desktop`, `~/Documents`, `~/Downloads` 또는 iCloud Drive의 디렉터리에 대해 `EPERM`이 발생하면, 대개 macOS가 터미널 앱의 해당 폴더 접근을 차단하고 있다는 의미입니다. 해당 폴더를 읽는 다른 명령도 같은 방식으로 실패합니다. 그 위치에서 `ls`를 실행하면 `sudo`를 사용하더라도 `Operation not permitted`가 보고됩니다.
3354 3383
3355**해결 방법:**3384**해결 방법:**
3356 3385
3357* 홈 디렉터리나 프로젝트 디렉터리처럼 존재하는 디렉터리로 이동한 다음 `claude`를 다시 실행합니다3386* 홈 디렉터리나 프로젝트 디렉터리처럼 존재하는 디렉터리로 이동한 다음 `claude`를 다시 실행합니다
3358* 디렉터리가 같은 경로에 다시 생성된 경우 셸은 여전히 삭제된 디렉터리를 가리키고 있습니다. `cd "$PWD"`를 실행하거나 디렉터리에서 나갔다가 다시 들어간 다음 `claude`를 다시 실행합니다3387* 디렉터리가 같은 경로에 다시 생성된 경우에도 셸은 여전히 삭제된 디렉터리를 가리키고 있습니다. `cd "$PWD"`를 실행하거나 디렉터리를 나갔다가 다시 들어간 다음 `claude`를 다시 실행합니다
3359* macOS에서 `EPERM`이 발생하면 Cmd+Q로 터미널 앱을 종료하고 다시 연 다음, 해당 폴더로 돌아가 `claude`를 실행합니다. 그래도 해당 폴더에서 `ls`가 실패하면 **System Settings > Privacy & Security > Files and Folders**를 열고 터미널 앱에 대해 해당 폴더를 켠 다음 터미널을 다시 엽니다3388* macOS에서 `EPERM`이 발생하면 Cmd+Q로 터미널 앱을 종료하고, 다시 연 다음 해당 폴더로 돌아가 `claude`를 실행합니다. 해당 폴더에서 `ls`가 여전히 실패하면 **System Settings > Privacy & Security > Files and Folders**를 열고 터미널 앱에 대해 해당 폴더를 켠 다음 터미널을 다시 엽니다
3360 3389
3361### 임시 디렉터리가 거부되었거나 생성할 수 없음3390### 임시 디렉터리가 거부되었거나 생성할 수 없음
3362 3391
3363macOS와 Linux에서 Claude Code는 시작 시 시스템 임시 디렉터리 또는 [`CLAUDE_CODE_TMPDIR`](https://code.claude.com/docs/ko/env-vars) 재정의 위치 아래에 전용 임시 디렉터리 `claude-<uid>`를 만듭니다. 디렉터리를 만들 수 없거나 해당 경로에 이미 있는 항목이 안전성 검사를 통과하지 못하면, Claude Code는 세션을 시작하지 않고 실패 내용을 stderr에 출력한 뒤 종료 코드 1로 종료됩니다.3392macOS와 Linux에서 Claude Code는 시작 시 시스템 임시 디렉터리 또는 [`CLAUDE_CODE_TMPDIR`](https://code.claude.com/docs/ko/env-vars) 재정의 위치 아래에 `claude-<uid>`라는 비공개 임시 디렉터리를 생성합니다. 디렉터리를 생성할 수 없거나 해당 경로에 이미 있는 항목이 안전 검사를 통과하지 못하면, Claude Code는 세션을 시작하지 않고 실패 내용을 stderr에 출력한 후 종료 코드 1로 종료됩니다:
3364 3393
3365```text wrap theme={null}3394```text wrap theme={null}
3366Claude Code's temporary directory /tmp/claude-501 could not be created: the volume holding /tmp is full (ENOSPC). Free space on that volume, or set CLAUDE_CODE_TMPDIR to a directory on another one, then try again.3395Claude Code's temporary directory /tmp/claude-501 could not be created: the volume holding /tmp is full (ENOSPC). Free space on that volume, or set CLAUDE_CODE_TMPDIR to a directory on another one, then try again.
3374 3403
3375**해결 방법:**3404**해결 방법:**
3376 3405
3377* `could not be created` 뒤에 `is full (ENOSPC)`가 표시되면 메시지에 표시된 볼륨의 디스크 공간을 확보합니다. 대신 `your disk quota on the volume holding /tmp is used up (EDQUOT)`가 표시되면 해당 볼륨에서 더 이상 필요하지 않은 본인 파일을 삭제합니다3406* `could not be created` 뒤에 `is full (ENOSPC)`가 오는 경우 메시지에 표시된 볼륨의 디스크 공간을 확보합니다. 대신 `your disk quota on the volume holding /tmp is used up (EDQUOT)`가 표시되면 해당 볼륨에서 더 이상 필요하지 않은 본인 파일을 삭제합니다
3378* `Refusing to use it` 형식의 경우 링크가 가리키는 대상이 아니라 메시지에 표시된 항목 자체를 제거하고 Claude Code를 다시 시작합니다. `owned by uid` 형식의 경우 관리자나 해당 사용자만 이를 제거할 수 있습니다3407* `Refusing to use it` 형식의 경우 링크가 가리키는 대상이 아니라 메시지에 표시된 항목 자체를 제거하고 Claude Code를 다시 시작합니다. `owned by uid` 형식의 경우 관리자나 해당 사용자만 이를 제거할 수 있습니다
3379* `is not readable`의 경우 표시된 디렉터리에 `chmod 0700`을 실행하거나, 디렉터리를 제거하고 다시 시작합니다3408* `is not readable`의 경우 표시된 디렉터리에 `chmod 0700`을 실행하거나, 디렉터리를 제거하고 다시 시작합니다
3380* 어떤 경우든 거부된 경로는 그대로 두고 [`CLAUDE_CODE_TMPDIR`](https://code.claude.com/docs/ko/env-vars)를 직접 제어하는 디렉터리로 설정한 다음 Claude Code를 다시 시작할 수 있습니다3409* 어떤 경우든 거부된 경로는 그대로 두고, [`CLAUDE_CODE_TMPDIR`](https://code.claude.com/docs/ko/env-vars)를 직접 제어할 수 있는 디렉터리로 설정한 다음 Claude Code를 다시 시작할 수 있습니다
3381 3410
3382v2.1.309 이전에는 볼륨이 가득 찼거나 할당량을 모두 사용한 경우 Claude Code가 운영 체제의 오류 텍스트만 출력했습니다. 예를 들면 `ENOSPC: no space left on device, mkdir '/tmp/claude-501'`이며, 같은 단계가 적용됩니다.3411v2.1.309 이전에는 볼륨이 가득 찼거나 할당량을 모두 사용한 경우 Claude Code가 운영 체제의 오류 텍스트만 출력했습니다. 예를 들면 `ENOSPC: no space left on device, mkdir '/tmp/claude-501'`이며, 같은 단계가 적용됩니다.
3383 3412
3413### Claude Code could not save because the disk is full
3414
3415[`claude -p`](https://code.claude.com/docs/ko/headless) 실행 후 stderr에 이 줄이 표시되면 디스크가 가득 찼거나 디스크 할당량을 모두 사용하여 Claude Code가 실행 내용을 모두 저장하지 못했다는 의미입니다:
3416
3417```text wrap theme={null}
3418Error: Claude Code could not save all of this session's transcript under /Users/you/.claude because the disk is full (ENOSPC). If you resume this session, part of the conversation may be missing. Free up space on that disk before the next run.
3419```
3420
3421텍스트 또는 `json` 출력에서는 실행이 종료 코드 1로 종료되며, 답변은 이미 출력된 상태입니다. `stream-json` 출력에서는 실행이 평소의 종료 코드를 유지하며, 답변도 그대로 전달됩니다.
3422
3423**해결 방법:**
3424
3425* **`the disk is full (ENOSPC)`**: 다음 실행 전에 메시지의 경로를 담고 있는 디스크의 공간을 확보합니다
3426* **`your disk quota is used up (EDQUOT)`**: 다음 실행 전에 공간을 확보하거나 더 큰 할당량을 요청합니다
3427
3384### Directory couldn't be resolved to a real location3428### Directory couldn't be resolved to a real location
3385 3429
3386작업 디렉터리의 하위 디렉터리에 대해 `/add-dir`을 실행했는데, Claude Code가 해당 디렉터리를 실제 위치로 확인하지 못했습니다.3430작업 디렉터리의 하위 디렉터리에 대해 `/add-dir`을 실행했는데, Claude Code가 디렉터리를 실제 위치로 확인할 수 없었습니다.
3387 3431
3388작업 디렉터리의 하위 디렉터리에는 이미 파일 접근 권한이 있으므로 `/add-dir`은 해당 디렉터리의 스킬, 명령, 에이전트만 불러옵니다. 이를 불러오기 전에 Claude Code는 심볼릭 링크를 모두 해석한 디렉터리의 실제 위치가 작업 디렉터리 안에 있는지 확인합니다. Claude Code가 해당 위치를 확인할 수 없으면 아무것도 불러오지 않고 다음 메시지를 표시합니다.3432작업 디렉터리의 하위 디렉터리에는 이미 파일 접근 권한이 있으므로 `/add-dir`은 해당 디렉터리의 스킬, 명령, 에이전트만 불러옵니다. 불러오기 전에 Claude Code는 심볼릭 링크를 모두 확인한 디렉터리의 실제 위치가 작업 디렉터리 안에 있는지 검사합니다. Claude Code가 해당 위치를 확인할 수 없으면 아무것도 불러오지 않고 다음 메시지를 표시합니다:
3389 3433
3390```text theme={null}3434```text theme={null}
3391packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.3435packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.
3394**해결 방법:**3438**해결 방법:**
3395 3439
3396* 경로가 작업 디렉터리 안의 실제 디렉터리를 가리키는지 확인한 다음 `/add-dir`을 다시 실행합니다3440* 경로가 작업 디렉터리 안의 실제 디렉터리를 가리키는지 확인한 다음 `/add-dir`을 다시 실행합니다
3397* 이 메시지는 파일 접근 권한을 변경하지 않으며, 디렉터리의 `.claude/` 콘텐츠가 로드되지 않았다는 사실만 알립니다3441* 이 메시지는 파일 접근 권한을 변경하지 않습니다. 디렉터리의 `.claude/` 콘텐츠를 불러오지 않았다는 것만 알려 줍니다
3398 3442
3399v2.1.261 이전에는 작업 디렉터리가 `/net/<host>` 자동 마운트에 있을 때 모든 `/add-dir <subdirectory>`에 대해 이 메시지가 나타났습니다. 해당 위치에서는 Claude Code가 설계상 경로 확인을 하지 않으므로, 디렉터리에는 문제가 없었고 재시도해도 소용이 없었습니다.3443v2.1.261 이전에는 작업 디렉터리가 `/net/<host>` 자동 마운트에 있을 때 모든 `/add-dir <subdirectory>`에 대해서도 이 메시지가 표시되었습니다. 이 경우 Claude Code는 의도적으로 경로 확인을 하지 않으며, 디렉터리에는 문제가 없고 재시도해도 도움이 되지 않았습니다.
3400 3444
3401### Workspace not trusted when starting Remote Control3445### Workspace not trusted when starting Remote Control
3402 3446
3403> [!NOTE]3447> [!NOTE]
3404>3448>
3405> `claude ultrareview`가 `Error: Workspace not trusted`를 출력했다면 대신 [claude ultrareview 실행 시 Workspace not trusted](#workspace-not-trusted-when-running-claude-ultrareview)를 참조하세요.3449> `claude ultrareview`가 `Error: Workspace not trusted`를 출력한 경우에는 대신 [Workspace not trusted when running claude ultrareview](#workspace-not-trusted-when-running-claude-ultrareview)를 참조하세요.
3406 3450
3407신뢰하지 않은 디렉터리에서 `claude remote-control` 또는 별칭 `claude rc`로 [Remote Control](https://code.claude.com/docs/ko/remote-control.md) 서버 모드를 시작했는데, 명령이 해당 디렉터리를 신뢰할지 물어볼 수 없었습니다. 예를 들어 표준 입력이나 표준 출력 중 하나가 리디렉션되거나 파이프로 연결되어 터미널이 아닌 경우입니다. 명령은 종료 코드 1로 종료됩니다.3451신뢰하지 않은 디렉터리에서 `claude remote-control` 또는 그 별칭인 `claude rc`로 [Remote Control](https://code.claude.com/docs/ko/remote-control.md) 서버 모드를 시작했으며, 명령이 해당 디렉터리를 신뢰할지 물어볼 수 없었습니다. 예를 들어 표준 입력이나 표준 출력 중 하나가 리디렉션되거나 파이프로 연결되어 터미널이 아닌 경우입니다. 명령은 종료 코드 1로 종료됩니다:
3408 3452
3409```text theme={null}3453```text theme={null}
3410Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.3454Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.
3411```3455```
3412 3456
3413역시 `Error: Workspace not trusted.`로 시작하는 두 가지 변형은 디렉터리를 신뢰했을 때 켜지는 항목을 표시하기에 터미널이 너무 작거나 터미널이 크기를 보고하지 않은 경우에 나타납니다. 창을 키우거나 일반 터미널 창으로 전환한 다음 `claude rc`를 다시 실행합니다.3457역시 `Error: Workspace not trusted.`로 시작하는 두 가지 변형은, 디렉터리를 신뢰하면 켜지는 항목을 표시하기에 너무 작은 터미널이나 크기를 보고하지 않는 터미널에서 표시됩니다. 창을 키우거나 일반 터미널 창으로 전환한 다음 `claude rc`를 다시 실행합니다.
3414 3458
3415홈 디렉터리에서는 메시지가 다릅니다. 워크스페이스 신뢰 대화 상자는 홈 디렉터리에 대한 신뢰를 절대 저장하지 않으므로, 그곳에서 수락해도 이 검사를 통과할 수 없기 때문입니다. v2.1.214 이전에는 홈 디렉터리에서도 위의 메시지가 표시되었는데, 그 안내는 홈 디렉터리에서는 성공할 수 없습니다.3459홈 디렉터리에서는 메시지가 다릅니다. 워크스페이스 신뢰 대화 상자는 홈 디렉터리에 대한 신뢰를 저장하지 않으므로, 그곳에서 수락해도 이 검사를 통과할 수 없기 때문입니다. v2.1.214 이전에는 홈 디렉터리에서도 위의 메시지가 표시되었는데, 그 안내는 홈 디렉터리에서는 성공할 수 없습니다.
3416 3460
3417```text theme={null}3461```text theme={null}
3418Error: Workspace not trusted. /Users/you is your home directory, and for security home-directory trust is never saved, so running `claude` here first won't help. Run `claude rc` from a project directory instead (run `claude` there once to accept the trust dialog).3462Error: Workspace not trusted. /Users/you is your home directory, and for security home-directory trust is never saved, so running `claude` here first won't help. Run `claude rc` from a project directory instead (run `claude` there once to accept the trust dialog).
3419```3463```
3420 3464
3421[`Trust <directory>?` 질문](https://code.claude.com/docs/ko/remote-control#requirements)에 `n`으로 답하거나 Enter를 누르면, 명령은 디렉터리 이름이 포함된 `Remote Control did not start` 메시지를 출력하고 종료 코드 1로 종료됩니다. `y`로 답하려면 `claude rc`를 다시 실행합니다.3465[`Trust <directory>?` 질문](https://code.claude.com/docs/ko/remote-control#requirements)에 `n`으로 답하거나 Enter를 누르면, 명령은 디렉터리를 표시하는 `Remote Control did not start` 메시지를 출력하고 종료 코드 1로 종료됩니다. `claude rc`를 다시 실행하여 `y`로 답합니다.
3422 3466
3423**해결 방법:**3467**해결 방법:**
3424 3468
3425* 먼저 터미널에서 디렉터리를 신뢰합니다. 그곳에서 `claude rc`를 실행하고 `y`로 답하거나, `claude`를 실행하고 [워크스페이스 신뢰 대화 상자](https://code.claude.com/docs/ko/permissions.md#project-allow-rules-and-workspace-trust)를 수락한 다음 원래 명령을 다시 실행합니다3469* 먼저 터미널에서 디렉터리를 신뢰합니다. 해당 위치에서 `claude rc`를 실행하고 `y`로 답하거나, `claude`를 실행하고 [워크스페이스 신뢰 대화 상자](https://code.claude.com/docs/ko/permissions.md#project-allow-rules-and-workspace-trust)를 수락한 다음, 원래 명령을 다시 실행합니다
3426* 홈 디렉터리에 있다면 프로젝트 디렉터리로 이동해 그곳에서 Remote Control을 시작합니다3470* 홈 디렉터리에 있는 경우 프로젝트 디렉터리로 이동하여 그곳에서 Remote Control을 시작합니다
3427 3471
3428v2.1.284 이전에는 터미널에서도 명령이 묻지 않았습니다.3472v2.1.284 이전에는 터미널에서도 명령이 묻지 않았습니다.
3429 3473
3430### claude ultrareview 실행 시 Workspace not trusted3474### Workspace not trusted when running claude ultrareview
3431 3475
3432신뢰하지 않은 폴더에서 [`claude ultrareview`](https://code.claude.com/docs/ko/ultrareview#trust-the-folder-before-the-review-runs)가 해당 폴더를 신뢰하는지 물어볼 수 없으면, 리뷰가 시작되기 전에 실행이 종료 코드 1로 종료됩니다.3476신뢰하지 않은 폴더에서 [`claude ultrareview`](https://code.claude.com/docs/ko/ultrareview#trust-the-folder-before-the-review-runs)가 해당 폴더를 신뢰하는지 물어볼 수 없으면, 리뷰가 시작되기 전에 실행이 종료 코드 1로 종료됩니다:
3433 3477
3434```text theme={null}3478```text theme={null}
3435Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog. Or, in a script or CI job, pass `--trust-workspace` to trust the folder for this run only.3479Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog. Or, in a script or CI job, pass `--trust-workspace` to trust the folder for this run only.
3436```3480```
3437 3481
3438예를 들어 하위 명령은 표준 입력이나 표준 출력이 터미널이 아니면 물어볼 수 없습니다. `claude ultrareview --json > findings.json`처럼 출력을 파일로 보내면 표준 출력은 터미널이 아닙니다.3482예를 들어 표준 입력이나 표준 출력이 터미널이 아니면 하위 명령이 물어볼 수 없습니다. `claude ultrareview --json > findings.json`처럼 출력을 파일로 보내면 표준 출력은 터미널이 아니게 됩니다.
3439 3483
3440**해결 방법:**3484**해결 방법:**
3441 3485
3442* 스크립트나 CI 작업에서는 `--trust-workspace`를 추가해 해당 실행에 대해 폴더를 신뢰합니다: `claude ultrareview --trust-workspace`. 이 경우 git과 Claude Code가 폴더의 git 구성과 프로젝트 설정에 지정된 프로그램을 실행할 수 있으므로, 신뢰하는 코드에 대해서만 추가합니다. 코드를 신뢰하지 않는 풀 리퀘스트라면 [신뢰하는 브랜치에서 리뷰를 실행](https://code.claude.com/docs/ko/ultrareview.md#trust-the-folder-before-the-review-runs)합니다.3486* 스크립트나 CI 작업에서는 `--trust-workspace`를 추가하여 해당 실행에 대해 폴더를 신뢰합니다: `claude ultrareview --trust-workspace`. 이 경우 git과 Claude Code가 폴더의 git 구성과 프로젝트 설정에 지정된 프로그램을 실행할 수 있으므로, 신뢰하는 코드에 대해서만 추가합니다. 코드를 신뢰할 수 없는 풀 리퀘스트의 경우 [신뢰하는 브랜치에서 리뷰를 실행](https://code.claude.com/docs/ko/ultrareview.md#trust-the-folder-before-the-review-runs)합니다.
3443* 자신의 컴퓨터에서는 해당 폴더에서 `claude`를 실행하고 [워크스페이스 신뢰 대화 상자](https://code.claude.com/docs/ko/permissions.md#project-allow-rules-and-workspace-trust)를 수락한 다음 원래 명령을 다시 실행합니다3487* 본인 컴퓨터에서는 해당 폴더에서 `claude`를 실행하고 [워크스페이스 신뢰 대화 상자](https://code.claude.com/docs/ko/permissions.md#project-allow-rules-and-workspace-trust)를 수락한 다음, 원래 명령을 다시 실행합니다
3444 3488
3445`claude ultrareview`에서 나오는 다음 메시지는 모두 리뷰가 시작되지 않았으며 종료 코드가 1이라는 의미입니다.3489`claude ultrareview`의 다음 메시지는 모두 리뷰가 시작되지 않았으며 종료 코드가 1이라는 의미입니다:
3446 3490
3447* **`Error: Workspace not trusted. This terminal ...`**: 터미널이 행과 열 수를 보고하지 않았거나, 신뢰 질문과 경고를 표시할 공간이 부족합니다. 터미널을 키우거나 크기를 보고하는 터미널을 사용한 다음 `claude ultrareview`를 다시 실행합니다. 홈 디렉터리 외부라면 해당 폴더에서 `claude`를 한 번 실행하고 신뢰 대화 상자를 수락해 이후 실행에서 묻지 않도록 할 수도 있습니다.3491* **`Error: Workspace not trusted. This terminal ...`**: 터미널이 행과 열 수를 보고하지 않았거나, 신뢰 질문과 경고를 표시할 수 없습니다. 터미널을 키우거나 크기를 보고하는 터미널을 사용한 다음 `claude ultrareview`를 다시 실행합니다. 홈 디렉터리가 아닌 곳에서는 해당 폴더에서 `claude`를 한 번 실행하고 신뢰 대화 상자를 수락하여 이후 실행에서 묻지 않도록 할 수도 있습니다.
3448* **`Error: Workspace not trusted. <folder> is your home directory`**: 홈 디렉터리에 대한 신뢰는 절대 저장되지 않으므로 그곳에서 먼저 `claude`를 실행해도 도움이 되지 않습니다. 대신 프로젝트 디렉터리에서 `claude`를 한 번 실행해 신뢰 대화 상자를 수락한 후 그곳에서 `claude ultrareview`를 실행하거나, `--trust-workspace`를 추가합니다.3492* **`Error: Workspace not trusted. <folder> is your home directory`**: 홈 디렉터리에 대한 신뢰는 저장되지 않으므로, 그곳에서 먼저 `claude`를 실행해도 도움이 되지 않습니다. 대신 프로젝트 디렉터리에서 `claude`를 한 번 실행하여 신뢰 대화 상자를 수락한 후 그곳에서 `claude ultrareview`를 실행하거나, `--trust-workspace`를 추가합니다.
3449* **`No answer in time.` 뒤에 `Error: Workspace not trusted`**: `Trust <folder>? [y/N]` 질문에 5분 동안 응답이 없었습니다. `claude ultrareview`를 다시 실행하고 질문에 답합니다.3493* **`No answer in time.` 다음에 `Error: Workspace not trusted`**: `Trust <folder>? [y/N]` 질문에 5분 동안 응답이 없었습니다. `claude ultrareview`를 다시 실행하고 질문에 답합니다.
3450* **`Ultrareview did not start: <folder> is not trusted`**: `n`으로 답하거나 Enter를 누르는 등 `Trust <folder>? [y/N]` 질문에서 거절했습니다. 리뷰를 시작하려면 `claude ultrareview`를 다시 실행하고 `y`로 답합니다.3494* **`Ultrareview did not start: <folder> is not trusted`**: 예를 들어 `n`으로 답하거나 Enter를 눌러 `Trust <folder>? [y/N]` 질문을 거절했습니다. 리뷰를 시작하려면 `claude ultrareview`를 다시 실행하고 `y`로 답합니다.
3451* **``Ultrareview did not start: `--trust-workspace` takes no value``**: `--trust-workspace` 뒤에 PR 번호나 `false`처럼 플래그가 아닌 것이 옵니다. 폴더를 신뢰하지 않는다면 플래그를 빼세요. 이번 실행에서 신뢰하려면 PR 번호나 기본 브랜치를 플래그 앞에 둡니다: `claude ultrareview 1234 --trust-workspace`.3495* **``Ultrareview did not start: `--trust-workspace` takes no value``**: PR 번호나 `false`처럼 플래그가 아닌 무언가가 `--trust-workspace` 뒤에 왔습니다. 폴더를 신뢰하지 않는다면 플래그를 생략합니다. 이번 실행에 한해 신뢰하려면 PR 번호나 기준 브랜치를 플래그 앞에 둡니다: `claude ultrareview 1234 --trust-workspace`.
3452 3496
3453v2.1.309 이전에는 `claude ultrareview`가 `--trust-workspace`를 받지 않았습니다.3497v2.1.309 이전에는 `claude ultrareview`가 `--trust-workspace`를 받지 않았습니다.
3454 3498
3499### Remote Control did not start because a question got no answer
3500
3501이 메시지는 [`claude remote-control`](https://code.claude.com/docs/ko/remote-control)이 메시지에 인용된 최초 실행 질문을 했지만 응답을 받지 못했다는 의미입니다:
3502
3503```text theme={null}
3504Remote Control did not start: "Enable Remote Control?" got no answer. Run `claude remote-control` at a terminal and answer y once; it won't ask again.
3505Remote Control did not start: "Choose [1/2] (default: 1):" got no answer. You can run `claude remote-control` and choose, or pass --spawn=same-dir or --spawn=worktree.
3506```
3507
3508**해결 방법:**
3509
3510* **`Enable Remote Control?`**: 스크립트나 서비스에서는 누군가 응답하기 전에 표준 입력이 끝납니다. 스크립트나 서비스가 실행되는 사용자로 터미널에서 `claude remote-control`을 한 번 실행하고 `y`로 답합니다.
3511* **`Choose [1/2] (default: 1):`**: `claude remote-control`을 다시 실행하여 [생성 모드를 선택](https://code.claude.com/docs/ko/remote-control.md#set-the-default-spawn-mode-for-a-project)하거나, [`--spawn=same-dir` 또는 `--spawn=worktree`](https://code.claude.com/docs/ko/remote-control#start-a-remote-control-session)를 전달하여 질문을 건너뜁니다
3512
3455### Not carried over to the sessions Remote Control starts3513### Not carried over to the sessions Remote Control starts
3456 3514
3457`remote-control` 동사 앞에 Remote Control이 시작하는 세션을 제한하거나 구성하는 전역 `claude` 플래그(예: `--settings`, `--setting-sources`, `--permission-mode`, `--disallowed-tools`, `--mcp-config`)를 넣어 [Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 시작했습니다. 동사 앞에 둔 플래그는 해당 세션에 전달되지 않습니다. 대신 Claude Code는 해당 플래그의 이름을 표시하며 시작을 거부합니다.3515`remote-control` 동사 앞에 전역 `claude` 플래그를 두고 [Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 시작했으며, 그 플래그는 `--settings`, `--setting-sources`, `--permission-mode`, `--disallowed-tools`, `--mcp-config`처럼 Remote Control이 시작하는 세션을 제한하거나 구성하는 플래그입니다. 동사 앞에 둔 플래그는 해당 세션에 전달되지 않습니다. 대신 Claude Code는 플래그 이름을 표시하며 시작을 거부합니다:
3458 3516
3459```text theme={null}3517```text theme={null}
3460Error: `--settings` before `remote-control` is not carried over to the sessions Remote Control starts, so Remote Control refuses to start rather than drop it — remove it, and give Remote Control's own options after the verb (see `claude remote-control --help`).3518Error: `--settings` before `remote-control` is not carried over to the sessions Remote Control starts, so Remote Control refuses to start rather than drop it — remove it, and give Remote Control's own options after the verb (see `claude remote-control --help`).
3461```3519```
3462 3520
3463`--verbose`, `--model`, 래퍼가 주입한 `--session-id`나 `--plugin-dir`처럼 버려도 무해한 전역 플래그는 거부하지 않습니다. Claude Code는 이를 무시하고 Remote Control이 시작됩니다.3521`--verbose`, `--model`, 또는 래퍼가 주입한 `--session-id`나 `--plugin-dir`처럼 무시해도 문제없는 전역 플래그는 Claude Code가 거부하지 않습니다. 이러한 플래그는 무시되고 Remote Control이 시작됩니다.
3464 3522
3465Claude Code는 아직 무해하다고 인식하지 않은 전역 플래그에 대해서도 시작을 거부하므로, 최신 릴리스에서 추가된 플래그는 이후 릴리스에서 무해한 것으로 표시될 때까지 이 메시지에 나타날 수 있습니다.3523Claude Code는 아직 무해하다고 인식하지 못한 전역 플래그에 대해서도 시작을 거부하므로, 새 릴리스에서 추가된 플래그는 이후 릴리스에서 무해한 것으로 표시될 때까지 이 메시지에 나타날 수 있습니다.
3466 3524
3467**해결 방법:**3525**해결 방법:**
3468 3526
3469* 동사 앞에서 플래그를 제거하고 [Remote Control 자체 옵션](https://code.claude.com/docs/ko/remote-control.md#start-a-remote-control-session)은 동사 뒤에 전달합니다. `claude remote-control --help`에서 옵션 목록을 확인할 수 있습니다3527* 동사 앞에서 플래그를 제거하고 [Remote Control 자체 옵션](https://code.claude.com/docs/ko/remote-control.md#start-a-remote-control-session)을 동사 뒤에 전달합니다. `claude remote-control --help`에 옵션이 나열되어 있습니다
3470* 거부된 플래그가 `--permission-mode`인 경우 `claude remote-control --permission-mode <mode>`를 실행해 Remote Control이 시작하는 세션의 권한 모드를 설정합니다3528* 거부된 플래그가 `--permission-mode`인 경우 `claude remote-control --permission-mode <mode>`를 실행하여 Remote Control이 시작하는 세션의 권한 모드를 설정합니다
3471 3529
3472v2.1.248 이전에는 전역 플래그가 먼저 오면 `claude remote-control`이 자체 플래그를 받지 않았고, 명령이 `unknown option` 오류로 실패했습니다.3530v2.1.248 이전에는 전역 플래그가 먼저 오면 `claude remote-control`이 자체 플래그를 받지 않았으며, 명령이 `unknown option` 오류로 실패했습니다.
3473 3531
3474### `--sandbox` or `--no-sandbox` is not supported by claude remote-control3532### `--sandbox` or `--no-sandbox` is not supported by claude remote-control
3475 3533
3476이 오류는 [Remote Control](https://code.claude.com/docs/ko/remote-control.md) 서버를 시작하는 명령이 `remote-control` 뒤에 `--sandbox` 또는 `--no-sandbox`를 전달하는데, `claude remote-control`이 두 플래그를 모두 받지 않는다는 의미입니다. 서버는 시작하지 않고 종료 코드 1로 종료됩니다.3534이 오류는 [Remote Control](https://code.claude.com/docs/ko/remote-control.md) 서버를 시작하는 명령이 `remote-control` 뒤에 `--sandbox` 또는 `--no-sandbox`를 전달하는데, `claude remote-control`은 두 플래그 모두 받지 않는다는 의미입니다. 서버는 시작하지 않고 종료 코드 1로 종료됩니다:
3477 3535
3478```text theme={null}3536```text theme={null}
3479Error: --sandbox is not supported by claude remote-control. The flag had no effect and was removed. To sandbox sessions, set sandbox.enabled to true in settings.3537Error: --sandbox is not supported by claude remote-control. The flag had no effect and was removed. To sandbox sessions, set sandbox.enabled to true in settings.
3482 3540
3483**해결 방법:**3541**해결 방법:**
3484 3542
3485* 서버를 대신 시작하는 스크립트나 서비스 정의를 포함해 명령에서 플래그를 제거한 다음 다시 실행합니다3543* 서버를 대신 시작하는 스크립트나 서비스 정의를 포함하여 명령에서 플래그를 제거한 다음 다시 실행합니다
3486* 서버가 시작하는 세션을 샌드박스에서 실행하려면 [설정 파일](https://code.claude.com/docs/ko/settings.md#where-settings-live)에서 [`sandbox.enabled`](https://code.claude.com/docs/ko/settings-reference#sandbox-enabled)를 `true`로 설정해 [샌드박싱](https://code.claude.com/docs/ko/sandboxing.md)을 켭니다3544* 서버가 시작하는 세션을 샌드박스에서 실행하려면 [설정 파일](https://code.claude.com/docs/ko/settings.md#where-settings-live)에서 [`sandbox.enabled`](https://code.claude.com/docs/ko/settings-reference#sandbox-enabled)를 `true`로 설정하여 [샌드박싱](https://code.claude.com/docs/ko/sandboxing.md)을 켭니다
3487 3545
3488두 플래그는 v2.1.300에서 `claude remote-control`에서 제거되었으므로, 이전 버전용으로 작성된 명령에는 여전히 플래그가 포함되어 있을 수 있습니다.3546두 플래그 모두 v2.1.300에서 `claude remote-control`에서 제거되었으므로, 이전 버전용으로 작성된 명령에는 여전히 둘 중 하나가 포함되어 있을 수 있습니다.
3489 3547
3490### claude import is not yet available in this build3548### claude import is not yet available in this build
3491 3549
3492[`claude import`](https://code.claude.com/docs/ko/cli-reference#cli-commands)를 실행했는데 Claude Code가 가져오기 흐름이 꺼져 있음을 확인했으므로, 명령이 가져오기를 시작하지 않고 종료 코드 1로 종료됩니다. v2.1.222 이전에는 가져오기 흐름이 꺼진 빌드에서 `import`를 프롬프트로 처리해 이 메시지를 출력하는 대신 대화형 세션을 시작했습니다.3550[`claude import`](https://code.claude.com/docs/ko/cli-reference#cli-commands)를 실행했는데 Claude Code가 가져오기 흐름이 꺼져 있음을 확인했으므로, 명령은 가져오기를 시작하지 않고 종료 코드 1로 종료됩니다. v2.1.222 이전에는 가져오기 흐름이 꺼진 빌드에서 `import`를 프롬프트로 처리하여 이 메시지를 출력하는 대신 대화형 세션을 시작했습니다.
3493 3551
3494```text theme={null}3552```text theme={null}
3495`claude import` is not yet available in this build. Run `claude` and use /mcp or edit ~/.claude/settings.json directly.3553`claude import` is not yet available in this build. Run `claude` and use /mcp or edit ~/.claude/settings.json directly.
3496```3554```
3497 3555
3498Claude Code는 Anthropic에서 가져와 디스크에 캐시하는 기능 플래그를 통해 `claude import`를 켭니다. 이 메시지는 캐시된 값이 꺼져 있다는 의미입니다. 원인은 대개 다음 중 하나입니다.3556Claude Code는 Anthropic에서 가져와 디스크에 캐시하는 기능 플래그를 통해 `claude import`를 켭니다. 이 메시지는 캐시된 값이 꺼져 있다는 의미입니다. 원인은 대개 다음 중 하나입니다:
3499 3557
3500* 설치 후 아직 세션을 시작하지 않아 Claude Code가 플래그를 가져오지 않았습니다. 기능을 사용할 수 있더라도 첫 번째 `claude import`에서 이 메시지가 출력될 수 있습니다.3558* 설치 후 아직 세션을 시작하지 않아 Claude Code가 플래그를 가져오지 않았습니다. 기능을 사용할 수 있는 경우에도 첫 번째 `claude import`에서 이 메시지가 출력될 수 있습니다.
3501* Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, Claude Platform on AWS 또는 [Claude apps 게이트웨이](https://code.claude.com/docs/ko/claude-apps-gateway#availability-and-limitations)를 통해 Claude Code를 사용하고 있습니다. 이러한 세션에서는 Claude Code가 기능 플래그를 가져오지 않으므로 `claude import`를 계속 사용할 수 없습니다.3559* Amazon Bedrock, Google Cloud의 Agent Platform, Microsoft Foundry, Claude Platform on AWS를 통해, 또는 [Claude apps 게이트웨이](https://code.claude.com/docs/ko/claude-apps-gateway#availability-and-limitations)를 통해 Claude Code를 사용합니다. 이러한 세션에서는 Claude Code가 기능 플래그를 가져오지 않으므로 `claude import`를 계속 사용할 수 없습니다.
3502* 기능 플래그 가져오기를 끄는 `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `DISABLE_GROWTHBOOK` 또는 [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/ko/env-vars)를 설정했으므로 `claude import`를 계속 사용할 수 없습니다.3560* 기능 플래그 가져오기를 끄는 `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `DISABLE_GROWTHBOOK` 또는 [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/ko/env-vars)를 설정했으므로 `claude import`를 계속 사용할 수 없습니다.
3503 3561
3504**해결 방법:**3562**해결 방법:**
3505 3563
3506* 새로 설치한 경우 `claude`를 시작하고 세션이 로드될 때까지 기다린 다음 종료하고 `claude import`를 다시 실행합니다3564* 새로 설치한 경우 `claude`를 시작하고 세션이 로드될 때까지 기다린 다음 종료하고 `claude import`를 다시 실행합니다
3507* 기능 플래그 가져오기가 계속 꺼져 있는 환경에서는 직접 구성을 설정합니다. [`claude mcp add`](https://code.claude.com/docs/ko/mcp#installing-mcp-servers)로 MCP 서버를 추가하고, 옮기려는 [`CLAUDE.md` 파일](https://code.claude.com/docs/ko/memory#how-claude-md-files-load), [스킬과 명령](https://code.claude.com/docs/ko/skills.md#where-skills-live), [서브에이전트](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)를 만듭니다. 메시지에는 `~/.claude/settings.json`도 언급되어 있습니다. `claude import`가 옮기는 구성 중 이 파일에 담기는 것은 [권한 모드](https://code.claude.com/docs/ko/settings-reference.md#permission-settings)뿐이며, Claude Code는 이 파일에서 MCP 서버를 읽지 않습니다.3565* 기능 플래그 가져오기가 계속 꺼져 있는 경우 구성을 직접 설정합니다. [`claude mcp add`](https://code.claude.com/docs/ko/mcp#installing-mcp-servers)로 MCP 서버를 추가하고, 가져오려는 [`CLAUDE.md` 파일](https://code.claude.com/docs/ko/memory#how-claude-md-files-load), [스킬과 명령](https://code.claude.com/docs/ko/skills.md#where-skills-live), [서브에이전트](https://code.claude.com/docs/ko/sub-agents.md#choose-the-subagent-scope)를 생성합니다. 메시지에는 `~/.claude/settings.json`도 언급됩니다. `claude import`가 가져오는 구성 중 이 파일에는 [권한 모드](https://code.claude.com/docs/ko/settings-reference.md#permission-settings)만 들어 있으며, Claude Code는 이 파일에서 MCP 서버를 읽지 않습니다.
3508 3566
3509### Could not read Claude Code config3567### Could not read Claude Code config
3510 3568
3511Claude Code가 계정 정보와 프로젝트별 상태를 저장하는 파일인 `~/.claude.json`을 구문 분석할 수 없는 상태에서 [`claude import`](https://code.claude.com/docs/ko/cli-reference#cli-commands)를 실행했습니다. 하위 명령은 사용 가능 여부를 확인하기 위해 이 파일을 읽지만 대화형 세션이 표시하는 복구 대화 상자는 표시하지 않으므로 종료 코드 1로 종료됩니다. v2.1.222 이전에는 설정 파일을 읽을 수 없을 때 `claude import`가 대화형 세션을 시작했고, 그 세션의 복구 대화 상자가 파일을 처리했습니다.3569Claude Code가 계정 정보와 프로젝트별 상태를 저장하는 파일인 `~/.claude.json`을 파싱할 수 없는 상태에서 [`claude import`](https://code.claude.com/docs/ko/cli-reference#cli-commands)를 실행했습니다. 이 하위 명령은 사용 가능 여부를 확인하기 위해 해당 파일을 읽지만, 대화형 세션이 표시하는 복구 대화 상자는 표시하지 않으므로 종료 코드 1로 종료됩니다. v2.1.222 이전에는 읽을 수 없는 설정 파일이 있을 때 `claude import`가 대화형 세션을 시작했으며, 그 세션의 복구 대화 상자가 파일을 처리했습니다.
3512 3570
3513```text theme={null}3571```text theme={null}
3514Could not read Claude Code config — run `claude` with no arguments to recover it.3572Could not read Claude Code config — run `claude` with no arguments to recover it.
3516 3574
3517**해결 방법:**3575**해결 방법:**
3518 3576
3519* 인수 없이 `claude`를 실행합니다. Claude Code가 잘못된 파일을 감지하고 초기화를 제안합니다. 그런 다음 `claude import`를 다시 실행합니다.3577* 인수 없이 `claude`를 실행합니다. Claude Code가 유효하지 않은 파일을 감지하고 재설정을 제안합니다. 그런 다음 `claude import`를 다시 실행합니다.
3520* 직접 편집한 내용을 유지하려면 대신 편집기에서 `~/.claude.json`의 JSON 구문을 수정한 다음 `claude import`를 다시 실행합니다3578* 직접 편집한 내용을 유지하려면 대신 편집기에서 `~/.claude.json`의 JSON 구문을 수정한 다음 `claude import`를 다시 실행합니다
3521 3579
3522### Could not import a server from Claude Desktop3580### Could not import a server from Claude Desktop
3523 3581
3524Claude Code가 `claude mcp add-from-claude-desktop`에서 선택한 서버 중 하나를 추가하지 못했습니다. 명령은 선택한 다른 서버를 계속 가져오며, 추가하지 못한 서버마다 한 줄씩 출력합니다. v2.1.205 이전에는 처음 실패한 서버에서 가져오기가 중단되었습니다.3582Claude Code가 `claude mcp add-from-claude-desktop`에서 선택한 서버 중 하나를 추가하지 못했습니다. 명령은 선택한 다른 서버는 계속 가져오며, 추가하지 못한 서버마다 한 줄씩 출력합니다. v2.1.205 이전에는 처음 실패한 서버에서 가져오기가 중단되었습니다.
3525 3583
3526```text theme={null}3584```text theme={null}
3527Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.3585Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.
3528```3586```
3529 3587
3530서버 이름 뒤의 텍스트가 사유입니다. 가장 흔한 사유는 이름 검사입니다. Claude Desktop은 서버 이름에 공백이나 마침표 같은 문자를 허용하지만 `claude mcp`는 문자, 숫자, 하이픈, 밑줄로 제한합니다. 그 밖의 사유로는 검증에 실패한 서버 구성과 조직의 [MCP 정책](https://code.claude.com/docs/ko/managed-mcp.md)에 의해 차단된 서버가 있습니다.3588서버 이름 뒤의 텍스트가 사유입니다. 가장 흔한 사유는 이름 검사입니다. Claude Desktop은 서버 이름에 공백이나 마침표 같은 문자를 허용하지만, `claude mcp`는 문자, 숫자, 하이픈, 밑줄로 제한합니다. 그 밖의 사유로는 검증에 실패한 서버 구성과 조직의 [MCP 정책](https://code.claude.com/docs/ko/managed-mcp.md)에 의해 차단된 서버가 있습니다.
3531 3589
3532**해결 방법:**3590**해결 방법:**
3533 3591
3534* `claude_desktop_config.json`에서 서버 이름을 문자, 숫자, 하이픈, 밑줄만 사용하도록 변경한 다음 `claude mcp add-from-claude-desktop`을 다시 실행합니다3592* `claude_desktop_config.json`에서 서버 이름을 문자, 숫자, 하이픈, 밑줄만 사용하도록 변경한 다음 `claude mcp add-from-claude-desktop`을 다시 실행합니다
3535* 유효한 이름으로 `claude mcp add` 또는 `claude mcp add-json`을 사용해 해당 서버를 직접 추가합니다. [Claude Desktop에서 MCP 서버 가져오기](https://code.claude.com/docs/ko/mcp.md#import-mcp-servers-from-claude-desktop)를 참조하세요.3593* 또는 유효한 이름으로 `claude mcp add` 또는 `claude mcp add-json`을 사용하여 해당 서버를 직접 추가합니다. [Claude Desktop에서 MCP 서버 가져오기](https://code.claude.com/docs/ko/mcp.md#import-mcp-servers-from-claude-desktop)를 참조하세요.
3536 3594
3537### Cannot add MCP server to the managed scope3595### Cannot add MCP server to the managed scope
3538 3596
3539`--scope managed`로 `claude mcp add` 또는 `claude mcp add-json`을 실행했습니다. 이 범위는 조직이 [`managedMcpServers`](https://code.claude.com/docs/ko/settings-reference#managedmcpservers) 관리형 설정을 통해 제공하는 서버를 담습니다. Claude Code는 이를 관리형 설정에서만 읽으므로 명령이 이 범위에 서버를 기록할 수 없습니다.3597`--scope managed`로 `claude mcp add` 또는 `claude mcp add-json`을 실행했습니다. 이 범위에는 조직이 [`managedMcpServers`](https://code.claude.com/docs/ko/settings-reference#managedmcpservers) 관리형 설정을 통해 제공하는 서버가 들어 있습니다. Claude Code는 이 서버를 관리형 설정에서만 읽으므로, 명령으로 이 범위에 서버를 기록할 수 없습니다.
3540 3598
3541```text theme={null}3599```text theme={null}
3542Cannot add MCP server to scope: managed3600Cannot add MCP server to scope: managed
3544 3602
3545**해결 방법:**3603**해결 방법:**
3546 3604
3547* 기록할 수 있는 범위인 `local`, `user`, `project`에 서버를 추가합니다. `--scope`가 없으면 명령은 `local`을 사용합니다. [MCP 설치 범위](https://code.claude.com/docs/ko/mcp.md#mcp-installation-scopes)를 참조하세요3605* 기록할 수 있는 범위인 `local`, `user` 또는 `project`에 서버를 추가합니다. `--scope` 없이 실행하면 명령은 `local`을 사용합니다. [MCP 설치 범위](https://code.claude.com/docs/ko/mcp.md#mcp-installation-scopes)를 참조하세요
3548* 조직의 모든 사용자에게 서버를 제공하려면 배포하는 관리형 설정의 [`managedMcpServers`](https://code.claude.com/docs/ko/settings-reference#managedmcpservers)에 추가합니다3606* 조직의 모든 사용자에게 서버를 제공하려면 배포하는 관리형 설정의 [`managedMcpServers`](https://code.claude.com/docs/ko/settings-reference#managedmcpservers)에 추가합니다
3549 3607
3550### 관리형 설정이 플러그인 서버만 허용하는 경우 MCP 서버를 추가할 수 없음3608### Cannot add MCP server when managed settings allow only plugin servers
3551 3609
3552조직의 관리형 설정이 [`strictPluginOnlyCustomization`](https://code.claude.com/docs/ko/settings-reference#strictpluginonlycustomization)을 `true` 또는 `mcp`가 포함된 목록으로 설정한 상태에서 `claude mcp add` 또는 `claude mcp add-json`을 실행했습니다. 이 설정이 있으면 Claude Code는 `~/.claude.json`이나 `.mcp.json`에서 MCP 서버를 로드하지 않으므로, 명령은 절대 로드되지 않을 서버를 저장하는 대신 종료 코드 1로 종료됩니다.3610조직의 관리형 설정이 [`strictPluginOnlyCustomization`](https://code.claude.com/docs/ko/settings-reference#strictpluginonlycustomization)을 `true`로 설정하거나 `mcp`를 포함하는 목록으로 설정한 상태에서 `claude mcp add` 또는 `claude mcp add-json`을 실행했습니다. 이 설정이 적용되면 Claude Code는 `~/.claude.json`이나 `.mcp.json`에서 MCP 서버를 불러오지 않으므로, 명령은 절대 불러와지지 않을 서버를 저장하는 대신 종료 코드 1로 종료됩니다:
3553 3611
3554```text theme={null}3612```text theme={null}
3555Cannot add MCP server: your organization's managed settings allow only MCP servers that plugins provide. Install a plugin that provides this server, or ask your administrator to make it available.3613Cannot add MCP server: your organization's managed settings allow only MCP servers that plugins provide. Install a plugin that provides this server, or ask your administrator to make it available.
3556```3614```
3557 3615
3558`claude mcp add-from-claude-desktop`은 선택한 각 서버를 가져오지 못한 것으로 보고하며 이 메시지를 사유로 표시합니다. [`/import`](https://code.claude.com/docs/ko/commands#all-commands)는 추가하려는 각 MCP 서버에 대해 이 메시지를 보고하고, 찾은 다른 항목은 계속 가져옵니다.3616`claude mcp add-from-claude-desktop`은 선택한 각 서버를 가져오지 못한 것으로 보고하며, 이 메시지를 사유로 표시합니다. [`/import`](https://code.claude.com/docs/ko/commands#all-commands)는 추가하려는 각 MCP 서버에 대해 이 메시지를 보고하며, 찾은 다른 항목은 계속 가져옵니다.
3559 3617
3560v2.1.284 이전에는 이 명령들이 서버를 저장하고 성공을 보고했지만, 서버는 절대 로드되지 않았습니다.3618v2.1.284 이전에는 이러한 명령이 서버를 저장하고 성공을 보고했지만, 서버는 절대 불러와지지 않았습니다.
3561 3619
3562**해결 방법:**3620**해결 방법:**
3563 3621
3564* 해당 서버를 제공하는 [플러그인](https://code.claude.com/docs/ko/plugins/install.md)을 설치합니다3622* 서버를 제공하는 [플러그인](https://code.claude.com/docs/ko/plugins/install.md)을 설치합니다
3565* 관리자에게 [플러그인](https://code.claude.com/docs/ko/plugins/org.md)으로 서버를 배포하거나, 원격 HTTP 또는 SSE 서버인 경우 [`managedMcpServers`](https://code.claude.com/docs/ko/settings-reference#managedmcpservers)를 통해 제공해 달라고 요청합니다3623* 관리자에게 서버를 [플러그인](https://code.claude.com/docs/ko/plugins/org.md)으로 배포하도록 요청하거나, 원격 HTTP 또는 SSE 서버인 경우 [`managedMcpServers`](https://code.claude.com/docs/ko/settings-reference#managedmcpservers)를 통해 제공하도록 요청합니다
3566 3624
3567### Can't read .mcp.json3625### Can't read .mcp.json
3568 3626
3569`--scope project`를 사용한 `claude mcp add` 또는 `claude mcp add-json`, 또는 `claude mcp remove`처럼 프로젝트의 [`.mcp.json`](https://code.claude.com/docs/ko/mcp#project-scope)을 읽는 명령이 현재 디렉터리의 파일이 일반 파일이 아니거나 2 MiB보다 큰 것을 발견했으므로, 파일을 읽는 대신 이 오류와 함께 종료됩니다.3627`--scope project`를 사용한 `claude mcp add` 또는 `claude mcp add-json`이나 `claude mcp remove`처럼 프로젝트의 [`.mcp.json`](https://code.claude.com/docs/ko/mcp#project-scope)을 읽는 명령이 현재 디렉터리의 파일이 일반 파일이 아니거나 2 MiB보다 크다는 것을 발견했으므로, 파일을 읽지 않고 이 오류와 함께 종료됩니다.
3570 3628
3571```text theme={null}3629```text theme={null}
3572Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.3630Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.
3573```3631```
3574 3632
3575v2.1.257 이전에는 `.mcp.json` 위치의 FIFO로 인해 명령이 출력 없이 무한정 대기했고, `/dev/zero` 같은 장치 파일에 대한 심볼릭 링크는 프로세스가 강제 종료될 때까지 메모리를 증가시켰습니다.3633v2.1.257 이전에는 `.mcp.json` 위치의 FIFO로 인해 명령이 출력 없이 영원히 대기했으며, `/dev/zero` 같은 장치 파일을 가리키는 심볼릭 링크로 인해 프로세스가 종료될 때까지 메모리가 증가했습니다.
3576 3634
3577**해결 방법:**3635**해결 방법:**
3578 3636
3579* 현재 디렉터리의 `.mcp.json` 위치에 무엇이 있는지 확인합니다. [프로젝트 범위 형식](https://code.claude.com/docs/ko/mcp.md#project-scope)의 일반 JSON 파일로 대체하거나 삭제한 다음 명령을 다시 실행합니다.3637* 현재 디렉터리의 `.mcp.json`에 무엇이 있는지 확인합니다. [프로젝트 범위 형식](https://code.claude.com/docs/ko/mcp.md#project-scope)의 일반 JSON 파일로 대체하거나 삭제한 다음 명령을 다시 실행합니다.
3580 3638
3581### MCP server was not saved or removed3639### MCP server was not saved or removed
3582 3640
3591**해결 방법:**3649**해결 방법:**
3592 3650
3593* **다른 Claude Code 프로세스가 실행 중인 경우**: 명령은 파일 잠금을 약 10\~20초 동안 기다린 후 기록하지 않고 포기합니다. [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/ko/env-vars#variables)를 `60000`처럼 더 긴 대기 시간(밀리초)으로 설정하여 같은 명령을 다시 실행합니다.3651* **다른 Claude Code 프로세스가 실행 중인 경우**: 명령은 파일 잠금을 약 10\~20초 동안 기다린 후 기록하지 않고 포기합니다. [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/ko/env-vars#variables)를 `60000`처럼 더 긴 대기 시간(밀리초)으로 설정하여 같은 명령을 다시 실행합니다.
3594* **파일이 읽기 전용이거나 샌드박스로 보호되는 경우**: 메시지에 명시된 파일을 쓰기 가능하게 만들고 같은 add 또는 remove 명령을 다시 실행하거나, 샌드박스 밖에서 해당 명령을 실행합니다.3652* **파일이 읽기 전용이거나 샌드박스로 보호된 경우**: 메시지에 표시된 파일을 쓰기 가능하게 만들고 같은 추가 또는 제거 명령을 다시 실행하거나, 해당 명령을 샌드박스 밖에서 실행합니다.
3595 3653
3596v2.1.283 이전에는 변경 사항이 파일에 반영되지 않았을 때도 `claude mcp add`, `claude mcp add-json`, `claude mcp remove`가 성공을 보고했습니다. v2.1.318 이전에는 메시지에 잠금이 언급되지 않았고, Claude Code가 [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/ko/env-vars#variables)를 읽지 않았습니다.3654v2.1.283 이전에는 변경 사항이 파일에 반영되지 않은 경우에도 `claude mcp add`, `claude mcp add-json`, `claude mcp remove`가 성공을 보고했습니다. v2.1.318 이전에는 메시지에 잠금이 언급되지 않았으며, Claude Code가 [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/ko/env-vars#variables)를 읽지 않았습니다.
3597 3655
3598### MCP server may not have been saved or removed3656### MCP server may not have been saved or removed
3599 3657
3600`user` 또는 `local` [범위](https://code.claude.com/docs/ko/mcp.md#mcp-installation-scopes)의 서버에 대해 `claude mcp add`, `claude mcp add-json`, `claude mcp remove`를 실행했는데, Claude Code가 변경 사항을 확인하기 위해 `~/.claude.json`을 다시 읽지 못한 경우입니다. 변경 사항이 디스크에 반영되었을 수도 있고 아닐 수도 있습니다. `to confirm the change` 뒤의 괄호 안에 사유가 표시됩니다.3658`user` 또는 `local` [범위](https://code.claude.com/docs/ko/mcp.md#mcp-installation-scopes)의 서버에 대해 `claude mcp add`, `claude mcp add-json` 또는 `claude mcp remove`를 실행했는데, Claude Code가 변경 사항을 확인하기 위해 `~/.claude.json`을 다시 읽을 수 없었습니다. 변경 사항이 디스크에 반영되었을 수도 있고 그렇지 않을 수도 있습니다. `to confirm the change` 뒤의 괄호 안에 사유가 표시됩니다.
3601 3659
3602```text theme={null}3660```text theme={null}
3603MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.3661MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.
3605 3663
3606제거 후에는 메시지에 `may not have been removed`가 표시되고 `then remove the server again if it is still listed`로 끝납니다. 사유가 `the file was not found`인 경우 서버가 여전히 구성되어 있을 수 있습니다.3664제거 후에는 메시지에 `may not have been removed`가 표시되고 `then remove the server again if it is still listed`로 끝납니다. 사유가 `the file was not found`인 경우 서버가 여전히 구성되어 있을 수 있습니다.
3607 3665
3608v2.1.283 이전에는 변경 사항을 확인할 수 없어도 명령이 성공을 보고했습니다.3666v2.1.283 이전에는 변경 사항을 확인할 수 없는 경우에도 명령이 성공을 보고했습니다.
3609 3667
3610**해결 방법:**3668**해결 방법:**
3611 3669
3612* `claude mcp get <name>`을 실행해 변경 사항이 디스크에 반영되었는지 확인합니다. `local` 범위 서버의 경우 로컬 범위는 프로젝트별이므로 서버가 속한 프로젝트 디렉터리에서 실행합니다.3670* `claude mcp get <name>`을 실행하여 변경 사항이 디스크에 반영되었는지 확인합니다. `local` 범위 서버의 경우 로컬 범위는 프로젝트별이므로 서버가 속한 프로젝트 디렉터리에서 실행합니다.
3613* 추가 후 서버가 없거나 제거 후에도 여전히 목록에 있으면 같은 추가 또는 제거 명령을 다시 실행합니다.3671* 추가 후에 서버가 없거나 제거 후에도 여전히 나열되어 있으면 같은 추가 또는 제거 명령을 다시 실행합니다.
3614 3672
3615### Server is Anthropic-hosted and doesn't support local OAuth3673### Server is Anthropic-hosted and doesn't support local OAuth
3616 3674
3617타사 ID 공급자를 통해 인증하는 Anthropic 호스팅 커넥터 호스트를 URL로 가리키는 MCP 서버에 대해 로그인을 시작했습니다. 이러한 호스트에는 `microsoft365.mcp.claude.com`, `gmail.mcp.claude.com`, `gcal.mcp.claude.com`이 포함됩니다. [이 호스트의 로그인은 claude.ai를 통해서만 작동하므로](https://code.claude.com/docs/ko/mcp.md#use-mcp-servers-from-claude-ai) Claude Code는 `/mcp` 패널과 `claude mcp login` 모두에서 이러한 호스트에 대한 로컬 OAuth 흐름 시작을 거부합니다.3675URL이 서드 파티 ID 공급자를 통해 인증하는 Anthropic 호스팅 커넥터 호스트를 가리키는 MCP 서버에 대해 로그인을 시작했습니다. 이러한 호스트에는 `microsoft365.mcp.claude.com`, `gmail.mcp.claude.com`, `gcal.mcp.claude.com`이 포함됩니다. [이러한 호스트의 로그인은 claude.ai를 통해서만 동작](https://code.claude.com/docs/ko/mcp.md#use-mcp-servers-from-claude-ai)하므로, Claude Code는 `/mcp` 패널과 `claude mcp login` 모두에서 이러한 호스트에 대한 로컬 OAuth 흐름 시작을 거부합니다.
3618 3676
3619```text theme={null}3677```text theme={null}
3620"gmail" is Anthropic-hosted and doesn't support local OAuth. Connect it via Settings → Connectors on claude.ai (requires `claude login`), then it'll be available here automatically.3678"gmail" is Anthropic-hosted and doesn't support local OAuth. Connect it via Settings → Connectors on claude.ai (requires `claude login`), then it'll be available here automatically.
3622 3680
3623**해결 방법:**3681**해결 방법:**
3624 3682
3625* 같은 URL의 claude.ai 커넥터를 가리지 않도록 `claude mcp remove <name>`으로 해당 항목을 제거합니다3683* 같은 URL의 claude.ai 커넥터를 가리지 않도록 `claude mcp remove <name>`으로 항목을 제거합니다
3626* 제거한 후 Claude Code에서 사용하는 계정으로 로그인한 상태에서 [claude.ai/customize/connectors](https://claude.ai/customize/connectors)에서 서비스를 연결합니다. 연결되면 활성 인증 방법이 claude.ai 구독 로그인인 경우 [커넥터가 Claude Code에 자동으로 나타납니다](https://code.claude.com/docs/ko/mcp.md#use-mcp-servers-from-claude-ai)3684* 제거한 후 Claude Code에서 사용하는 계정으로 로그인한 상태에서 [claude.ai/customize/connectors](https://claude.ai/customize/connectors)에서 서비스를 연결합니다. 연결되면 활성 인증 방식이 claude.ai 구독 로그인인 경우 [커넥터가 Claude Code에 자동으로 표시](https://code.claude.com/docs/ko/mcp.md#use-mcp-servers-from-claude-ai)됩니다
3627 3685
3628### Server rejected the Authorization header minted by the configured headersHelper3686### Server rejected the Authorization header minted by the configured headersHelper
3629 3687
3630[`headersHelper`](https://code.claude.com/docs/ko/mcp#use-dynamic-headers-for-custom-authentication)가 `Authorization` 헤더를 제공하는 MCP 서버가 연결에 HTTP 401 또는 403으로 응답했으므로 Claude Code는 연결 실패를 보고합니다. 헬퍼가 `Authorization` 헤더를 제공하므로 Claude Code는 해당 서버에 대해 [OAuth로 폴백하지 않습니다](https://code.claude.com/docs/ko/mcp.md#authenticate-with-remote-mcp-servers).3688[`headersHelper`](https://code.claude.com/docs/ko/mcp#use-dynamic-headers-for-custom-authentication)가 `Authorization` 헤더를 제공하는 MCP 서버가 연결에 HTTP 401 또는 403으로 응답했으므로, Claude Code는 연결이 실패한 것으로 보고합니다. 헬퍼가 `Authorization` 헤더를 제공하므로 Claude Code는 해당 서버에 대해 [OAuth로 폴백하지 않습니다](https://code.claude.com/docs/ko/mcp.md#authenticate-with-remote-mcp-servers):
3631 3689
3632```text theme={null}3690```text theme={null}
3633Server rejected the Authorization header minted by the configured headersHelper (HTTP 401). Check that the helper command returns a valid credential for this MCP endpoint — OAuth fallback is disabled when the helper supplies Authorization.3691Server rejected the Authorization header minted by the configured headersHelper (HTTP 401). Check that the helper command returns a valid credential for this MCP endpoint — OAuth fallback is disabled when the helper supplies Authorization.
3634```3692```
3635 3693
3636Claude Code는 연결을 시도할 때마다 헬퍼를 다시 실행하므로, 토큰 교체 경합 같은 일시적인 거부 후 재시도하면 새 자격 증명으로 성공할 수 있습니다.3694Claude Code는 연결을 시도할 때마다 헬퍼를 다시 실행하므로, 토큰 교체 경합 같은 일시적인 거부 후에는 재시도 시 새 자격 증명으로 성공할 수 있습니다.
3637 3695
3638**해결 방법:**3696**해결 방법:**
3639 3697
3640* Claude Code가 실행하는 방식 그대로 `headersHelper` 명령을 직접 실행합니다. 즉, [Claude Code가 실행하는 디렉터리](https://code.claude.com/docs/ko/mcp.md#where-the-helper-runs)에서 [Claude Code가 설정하는 환경 변수](https://code.claude.com/docs/ko/mcp.md#use-dynamic-headers-for-custom-authentication)와 함께 실행하고, 프로젝트 `.mcp.json`, 플러그인 또는 프로젝트 에이전트 파일에서 온 서버라면 [Claude Code가 제거하는 자격 증명 변수](https://code.claude.com/docs/ko/mcp.md#which-variables-a-helper-can-read) 없이 실행합니다. 서버의 엔드포인트가 받아들이는 `Authorization` 값을 출력하는지 확인합니다3698* Claude Code가 실행하는 방식 그대로 `headersHelper` 명령을 직접 실행합니다. 즉, [Claude Code가 헬퍼를 실행하는 디렉터리](https://code.claude.com/docs/ko/mcp.md#where-the-helper-runs)에서, [Claude Code가 설정하는 환경 변수](https://code.claude.com/docs/ko/mcp.md#use-dynamic-headers-for-custom-authentication)와 함께, 그리고 프로젝트 `.mcp.json`, 플러그인 또는 프로젝트 에이전트 파일의 서버라면 [Claude Code가 제거하는 자격 증명 변수](https://code.claude.com/docs/ko/mcp.md#which-variables-a-helper-can-read) 없이 실행합니다. 서버의 엔드포인트가 받아들이는 `Authorization` 값을 출력하는지 확인합니다
3641* 헬퍼나 자격 증명 소스를 수정한 후 `/mcp`에서 서버를 선택하고 **Reconnect**를 선택합니다3699* 헬퍼나 자격 증명 소스를 수정한 후 `/mcp`에서 서버를 선택하고 **Reconnect**를 선택합니다
3642 3700
3643v2.1.248 이전에는 헬퍼가 `Authorization` 헤더를 제공하는 서버에 대해서도 Claude Code가 OAuth 검색을 실행했습니다. 이 검색은 거부된 자격 증명을 보고하는 대신 `Incompatible auth server: does not support dynamic client registration`으로 실패할 수 있었습니다.3701v2.1.248 이전에는 헬퍼가 `Authorization` 헤더를 제공하는 서버에 대해 Claude Code가 OAuth 검색을 실행했습니다. 그 검색은 거부된 자격 증명을 보고하는 대신 `Incompatible auth server: does not support dynamic client registration`으로 실패할 수 있었습니다.
3644 3702
3645### MCP server rejected the elicitation capability3703### MCP server rejected the elicitation capability
3646 3704
3647Java MCP SDK 0.11.0부터 0.17.0까지로 빌드된 MCP 서버가 연결을 거부했습니다. 해당 SDK 버전은 Claude Code가 핸드셰이크에서 선언하는 `form` 및 `url` [elicitation 모드](https://code.claude.com/docs/ko/mcp.md#elicitation-modes-claude-code-declares)를 구문 분석하지 못합니다. 메시지는 다음과 같습니다.3705Java MCP SDK 0.11.0\~0.17.0으로 빌드된 MCP 서버가 연결을 거부했습니다. 이러한 SDK 버전은 Claude Code가 핸드셰이크에서 선언하는 `form` 및 `url` [elicitation 모드](https://code.claude.com/docs/ko/mcp.md#elicitation-modes-claude-code-declares)를 파싱할 수 없습니다. 메시지는 다음과 같습니다:
3648 3706
3649```text theme={null}3707```text theme={null}
3650This server (Java MCP SDK 0.17.0 or older) rejected Claude Code's elicitation capability. Set "bareElicitationCapability": true for it, or upgrade to Java MCP SDK 0.17.1+ (Spring AI 1.0.7+ or 1.1.6+).3708This server (Java MCP SDK 0.17.0 or older) rejected Claude Code's elicitation capability. Set "bareElicitationCapability": true for it, or upgrade to Java MCP SDK 0.17.1+ (Spring AI 1.0.7+ or 1.1.6+).
3655* 서버를 Java MCP SDK 0.17.1 이상 또는 메시지에 표시된 Spring AI 릴리스 중 하나로 업그레이드합니다3713* 서버를 Java MCP SDK 0.17.1 이상 또는 메시지에 표시된 Spring AI 릴리스 중 하나로 업그레이드합니다
3656* 또는 MCP 구성에서 해당 서버 항목에 `"bareElicitationCapability": true`를 추가한 다음 Claude Code를 다시 시작합니다. 이 필드는 stdio, `sse`, `http`, `ws` 항목에서 사용할 수 있으며 Claude Code v2.1.281 이상이 필요합니다3714* 또는 MCP 구성에서 해당 서버 항목에 `"bareElicitationCapability": true`를 추가한 다음 Claude Code를 다시 시작합니다. 이 필드는 stdio, `sse`, `http`, `ws` 항목에서 사용할 수 있으며 Claude Code v2.1.281 이상이 필요합니다
3657 3715
3658다음 `.mcp.json` 항목은 하나의 HTTP 서버에 이 필드를 설정합니다.3716다음 `.mcp.json` 항목은 하나의 HTTP 서버에 대해 이 필드를 설정합니다:
3659 3717
3660```json theme={null}3718```json theme={null}
3661{3719{
3669}3727}
3670```3728```
3671 3729
3672다시 시작한 후 `/mcp`에 서버가 연결됨으로 표시됩니다. Claude Code는 해당 서버에만 form 모드를 선언하므로, 서버를 업그레이드하면 이 필드를 제거합니다.3730다시 시작한 후 `/mcp`에 서버가 연결된 것으로 표시됩니다. Claude Code는 해당 서버에만 form 모드를 선언하므로, 서버를 업그레이드한 후에는 이 필드를 제거합니다.
3673 3731
3674서버가 `Unrecognized field "form"`이 포함된 오류처럼 자체 오류 텍스트로 실패할 수도 있습니다. 같은 해결 방법이 적용됩니다.3732서버가 `Unrecognized field "form"`을 포함하는 메시지처럼 자체 오류 텍스트와 함께 실패할 수도 있습니다. 같은 해결 방법이 적용됩니다.
3675 3733
3676### MCP permission prompt tool not found3734### MCP permission prompt tool not found
3677 3735
3678[`--permission-prompt-tool`](https://code.claude.com/docs/ko/cli-reference#cli-flags)에 전달한 도구가 실행에서 처음 권한 결정이 필요했을 때 연결된 MCP 도구 중에 없었습니다. 서버가 연결되지 않았거나, 연결된 서버 중 해당 이름의 도구를 노출하는 서버가 없기 때문입니다. Claude Code는 여전히 프롬프트를 전송합니다. [비대화형](https://code.claude.com/docs/ko/headless.md) 실행은 첫 번째 도구 호출에서 이 오류와 종료 코드 1로 종료되므로, 요청은 이루어졌지만 응답은 생성되지 않습니다. 첫 번째 프롬프트 전에 Claude Code는 [`MCP_TIMEOUT`](https://code.claude.com/docs/ko/env-vars)으로 설정된 서버별 연결 타임아웃인 최대 30초 동안 해당 서버가 연결되기를 기다립니다. v2.1.206 이전에는 시작 시 서버 연결 완료를 기다리지 않았으므로, 시작이 느리지만 정상적인 서버에서도 이 오류가 발생했습니다.3736[`--permission-prompt-tool`](https://code.claude.com/docs/ko/cli-reference#cli-flags)에 전달한 도구가 실행에서 처음 권한 결정이 필요한 시점에 연결된 MCP 도구 중에 없었습니다. 서버가 연결되지 않았거나, 연결된 서버 중 해당 이름의 도구를 노출하는 서버가 없기 때문입니다. Claude Code는 여전히 프롬프트를 전송합니다. [비대화형](https://code.claude.com/docs/ko/headless.md) 실행은 첫 번째 도구 호출에서 이 오류와 종료 코드 1로 종료되므로, 요청이 이루어졌지만 답변은 생성되지 않습니다. 첫 번째 프롬프트 전에 Claude Code는 [`MCP_TIMEOUT`](https://code.claude.com/docs/ko/env-vars)으로 설정되는 서버별 연결 타임아웃인 30초까지 해당 서버의 연결을 기다립니다. v2.1.206 이전에는 시작 시 서버 연결이 완료되기를 기다리지 않았으므로, 시작이 느리지만 정상인 서버에서도 이 오류가 발생했습니다.
3679 3737
3680```text theme={null}3738```text theme={null}
3681Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none3739Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none
3682```3740```
3683 3741
3684`Available MCP tools:` 뒤의 목록은 연결되어 있던 MCP 도구를 나타냅니다.3742`Available MCP tools:` 뒤의 목록에는 연결된 MCP 도구가 표시됩니다.
3685 3743
3686**해결 방법:**3744**해결 방법:**
3687 3745
3688* 서버가 시작되고 연결이 유지되는지 확인합니다. 같은 디렉터리에서 `claude mcp list`를 실행하고 서버가 연결됨으로 표시되는지 확인합니다3746* 서버가 시작되고 연결 상태를 유지하는지 확인합니다. 같은 디렉터리에서 `claude mcp list`를 실행하여 서버가 연결된 것으로 나열되는지 확인합니다
3689* 도구 이름이 서버가 노출하는 `mcp__<server>__<tool>` 이름과 일치하는지 확인합니다3747* 도구 이름이 서버가 노출하는 `mcp__<server>__<tool>` 이름과 일치하는지 확인합니다
3690* 서버 시작에 30초보다 오래 걸리면 [`MCP_TIMEOUT`](https://code.claude.com/docs/ko/env-vars)을 늘립니다3748* 서버가 시작하는 데 30초보다 오래 걸리면 [`MCP_TIMEOUT`](https://code.claude.com/docs/ko/env-vars)을 늘립니다
3691 3749
3692### OAuth callback port is already in use3750### OAuth callback port is already in use
3693 3751
3694OAuth로 원격 MCP 서버에 로그인하면 Claude Code는 로그인 콜백을 받기 위해 로컬 리스너를 시작합니다. 리스너에 필요한 포트를 다른 프로세스가 점유하고 있으면 로그인이 이 메시지와 함께 실패합니다. Claude Code는 고정 포트가 없으면 사용 가능한 포트를 선택하므로, 이 문제는 주로 [`MCP_OAUTH_CALLBACK_PORT`](https://code.claude.com/docs/ko/env-vars) 변수나 `--callback-port`로 설정한 [고정 콜백 포트](https://code.claude.com/docs/ko/mcp.md#use-a-fixed-oauth-callback-port)에서 발생합니다.3752OAuth로 원격 MCP 서버에 로그인하면 Claude Code는 로그인 콜백을 받기 위해 로컬 리스너를 시작합니다. 리스너에 필요한 포트를 다른 프로세스가 점유하고 있으면 로그인이 이 메시지와 함께 실패합니다. 이는 주로 [`MCP_OAUTH_CALLBACK_PORT`](https://code.claude.com/docs/ko/env-vars) 변수나 `--callback-port`로 [고정 콜백 포트](https://code.claude.com/docs/ko/mcp.md#use-a-fixed-oauth-callback-port)를 설정한 경우에 발생합니다. 고정 포트가 없으면 Claude Code가 사용 가능한 포트를 선택하기 때문입니다.
3695 3753
3696```text theme={null}3754```text theme={null}
3697OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.3755OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.
3701 3759
3702**해결 방법:**3760**해결 방법:**
3703 3761
3704* 메시지의 명령을 실행해 포트를 점유한 프로세스를 찾고, 이를 중지하거나 완료될 때까지 기다립니다3762* 메시지의 명령을 실행하여 포트를 점유한 프로세스를 찾고, 해당 프로세스를 중지하거나 종료될 때까지 기다립니다
3705* 다른 프로그램이 해당 포트를 계속 사용해야 한다면 서버에 다른 리디렉션 URI를 등록하고, 사용 중인 방식에 따라 `MCP_OAUTH_CALLBACK_PORT` 또는 `--callback-port`로 해당 포트를 설정합니다3763* 다른 프로그램이 해당 포트를 계속 필요로 하는 경우, 서버에 다른 리디렉션 URI를 등록하고 사용 중인 `MCP_OAUTH_CALLBACK_PORT` 또는 `--callback-port`로 해당 포트를 설정합니다
3706* 그런 다음 `/mcp`에서 서버를 선택하는 등의 방법으로 로그인을 다시 시작합니다3764* 그런 다음 `/mcp`에서 서버를 선택하는 등의 방법으로 로그인을 다시 시작합니다
3707 3765
3708### No available ports for OAuth redirect3766### No available ports for OAuth redirect
3709 3767
3710[OAuth](https://code.claude.com/docs/ko/mcp.md#authenticate-with-remote-mcp-servers)로 원격 MCP 서버에 로그인하면 Claude Code는 로그인 콜백을 받기 위해 로컬 리스너를 시작합니다. Claude Code가 이를 위한 로컬 포트를 바인딩할 수 없으면 로그인이 이 메시지와 함께 실패합니다. 보안 소프트웨어나 로컬 리스너를 거부하는 샌드박스 정책 등 컴퓨터의 무언가가 `127.0.0.1`에서의 수신을 막고 있습니다.3768[OAuth](https://code.claude.com/docs/ko/mcp.md#authenticate-with-remote-mcp-servers)로 원격 MCP 서버에 로그인하면 Claude Code는 로그인 콜백을 받기 위해 로컬 리스너를 시작합니다. Claude Code가 이를 위한 로컬 포트를 바인딩할 수 없으면 로그인이 이 메시지와 함께 실패합니다. 컴퓨터의 무언가가 `127.0.0.1`에서의 수신 대기를 막고 있는 것으로, 예를 들어 로컬 리스너를 거부하는 보안 소프트웨어나 샌드박스 정책이 있습니다.
3711 3769
3712```text theme={null}3770```text theme={null}
3713No available ports for OAuth redirect3771No available ports for OAuth redirect
3714```3772```
3715 3773
3716v2.1.268 이전에는 Claude Code가 운영 체제가 할당한 포트로 폴백하지 않았으므로, 자체적으로 선택한 포트만 바인딩할 수 없는 경우에도 이 메시지가 나타났습니다. 이는 Hyper-V가 Claude Code가 선택하는 포트를 포함하는 포트 범위를 예약하는 Windows 호스트에서 발생할 수 있습니다.3774v2.1.268 이전에는 Claude Code가 운영 체제가 할당하는 포트로 폴백하지 않았으므로, 자체적으로 선택한 포트만 바인딩할 수 없는 경우에도 이 메시지가 표시되었습니다. 이는 Hyper-V가 Claude Code가 선택하는 포트 범위를 포함하는 포트 범위를 예약하는 Windows 호스트에서 발생할 수 있습니다.
3717 3775
3718**해결 방법:**3776**해결 방법:**
3719 3777
3720* 보안 소프트웨어나 샌드박스 정책이 프로세스의 `127.0.0.1` 수신을 차단하는지 확인하고, Claude Code가 로컬 포트를 바인딩할 수 있도록 허용합니다3778* 보안 소프트웨어나 샌드박스 정책이 프로세스의 `127.0.0.1` 수신 대기를 차단하는지 확인하고, Claude Code가 로컬 포트를 바인딩하도록 허용합니다
3721* 그런 다음 `/mcp`에서 서버를 선택하는 등의 방법으로 로그인을 다시 시작합니다3779* 그런 다음 `/mcp`에서 서버를 선택하는 등의 방법으로 로그인을 다시 시작합니다
3722 3780
3723### origin/HEAD가 없으면 /security-review가 실패함3781### origin/HEAD가 없어 /security-review 실패
3724 3782
3725[`/security-review`](https://code.claude.com/docs/ko/commands#all-commands)는 `origin` 원격의 기본 브랜치가 무엇인지 기록하는 로컬 참조인 `origin/HEAD`와 현재 브랜치를 비교한 diff로 리뷰 컨텍스트를 구성합니다. 이 참조가 없으면 diff를 수집하는 git 명령이 실패하고, 리뷰는 시작되기 전에 중단됩니다.3783[`/security-review`](https://code.claude.com/docs/ko/commands#all-commands)는 `origin` 원격의 기본 브랜치를 기록하는 로컬 ref인 `origin/HEAD`와 현재 브랜치의 diff를 구하여 리뷰 컨텍스트를 구성합니다. 해당 ref가 없으면 diff를 수집하는 git 명령이 실패하고 리뷰가 시작되기 전에 중단됩니다.
3726 3784
3727```text theme={null}3785```text theme={null}
3728Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]3786Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]
3731'git <command> [<revision>...] -- [<file>...]'3789'git <command> [<revision>...] -- [<file>...]'
3732```3790```
3733 3791
3734메시지에 `git log`나 다른 `git diff`가 대신 인용될 수도 있습니다. Git은 원격이 기본 브랜치를 알리고 fetch refspec이 이를 포함할 때만 `origin/HEAD`를 만들며, 커밋이 있는 원격을 전체 `git clone`하면 이 조건이 충족됩니다. 다음 구성에서는 ref가 없습니다.3792메시지에는 대신 `git log`나 다른 `git diff`가 인용될 수도 있습니다. Git은 원격이 기본 브랜치를 알리고 fetch refspec이 이를 포함하는 경우에만 `origin/HEAD`를 생성하며, 커밋이 있는 원격을 전체 `git clone`하면 이 조건이 충족됩니다. 다음과 같은 설정에서는 ref가 없습니다:
3735 3793
3736* 너무 좁은 refspec을 fetch하는 단일 브랜치 또는 CI 체크아웃3794* 너무 좁은 refspec을 가져오는 단일 브랜치 또는 CI 체크아웃
3737* 서버 측 HEAD가 아무도 푸시하지 않은 브랜치를 가리키는 원격3795* 서버 측 HEAD가 아무도 푸시하지 않은 브랜치를 가리키는 원격
3738* `origin` 원격이 없거나 한 번도 fetch하지 않은 저장소3796* `origin` 원격이 없거나 한 번도 fetch하지 않은 저장소
3739 3797
3740Claude Code는 [동적 컨텍스트를 주입하는](https://code.claude.com/docs/ko/skills.md#when-an-injected-command-fails) 모든 스킬에 대해 같은 오류를 표시하며, 주입된 명령이 실패하면 해당 스킬의 호출이 중단됩니다.3798Claude Code는 [동적 컨텍스트를 주입](https://code.claude.com/docs/ko/skills.md#when-an-injected-command-fails)하는 모든 스킬에 대해 같은 오류를 표시하며, 주입된 명령이 실패하면 해당 스킬의 호출이 중단됩니다.
3741 3799
3742명령이 실행되기 전에 발생하는 관련 메시지도 있습니다.3800다음 관련 메시지는 명령이 실행되기도 전에 표시됩니다:
3743 3801
3744* `Shell command permission check failed for pattern "..."`: 명령의 권한 검사가 이를 허용하지 않았습니다. [주입된 명령의 권한 검사](https://code.claude.com/docs/ko/skills.md#permission-checks-on-injected-commands)에서 각 권한 모드에서 어떤 결과가 중단으로 이어지는지, 그리고 `allowed-tools`로 명령을 사전 승인하는 방법을 다룹니다3802* `Shell command permission check failed for pattern "..."`: 명령의 권한 검사가 이를 허용하지 않았습니다. [주입된 명령의 권한 검사](https://code.claude.com/docs/ko/skills.md#permission-checks-on-injected-commands)에서 각 권한 모드에서 어떤 결과가 중단되는지와 `allowed-tools`로 명령을 사전 승인하는 방법을 다룹니다
3745* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: 스킬의 frontmatter가 bash가 없는 컴퓨터에서 bash를 요구합니다. Git for Windows를 설치하거나 frontmatter를 `shell: powershell`로 변경합니다. [주입된 명령이 실행되는 방식](https://code.claude.com/docs/ko/skills.md#how-injected-commands-run)을 참조하세요3803* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: 스킬의 frontmatter가 bash가 없는 컴퓨터에서 bash를 요구합니다. Git for Windows를 설치하거나 frontmatter를 `shell: powershell`로 변경합니다. [주입된 명령이 실행되는 방식](https://code.claude.com/docs/ko/skills.md#how-injected-commands-run)을 참조하세요
3746 3804
3747**해결 방법:**3805**해결 방법:**
3748 3806
3749* 원격의 기본 브랜치를 지정해 ref를 만듭니다: `git remote set-head origin <default-branch>`. 이 방법은 로컬 추적 ref `origin/<default-branch>`가 있으면 항상 작동합니다. 단일 브랜치 클론처럼 해당 ref가 없으면 먼저 브랜치를 fetch합니다. `git remote set-branches --add origin <branch>`를 실행한 다음 `git fetch origin`을 실행하고, set-head 명령을 다시 실행합니다. 그런 다음 `/security-review`를 다시 실행합니다.3807* 원격의 기본 브랜치를 지정하여 ref를 생성합니다: `git remote set-head origin <default-branch>`. 이 방법은 로컬 추적 ref `origin/<default-branch>`가 있으면 항상 동작합니다. 단일 브랜치 클론처럼 해당 ref가 없으면 먼저 브랜치를 fetch합니다. `git remote set-branches --add origin <branch>`를 실행하고, 이어서 `git fetch origin`을 실행한 다음, set-head 명령을 다시 실행합니다. 그리고 `/security-review`를 다시 실행합니다.
3750* 브랜치 이름을 지정하고 싶지 않다면 `git fetch origin`을 실행한 다음 `git remote set-head origin --auto`를 실행합니다. 이 명령은 원격에 기본 브랜치를 묻습니다. 원격이 비어 있거나 HEAD가 아무도 푸시하지 않은 브랜치를 가리켜 기본 브랜치를 알리지 않으면 `error: Cannot determine remote HEAD`로 실패하므로, 이 경우 브랜치를 명시적으로 지정합니다. 클론이 해당 브랜치를 fetch하지 않으면 `error: Not a valid ref`로 실패하므로, 먼저 위와 같이 refspec을 넓힙니다.3808* 브랜치를 지정하지 않으려면 `git fetch origin`을 실행한 다음 `git remote set-head origin --auto`를 실행합니다. 이 명령은 원격에 기본 브랜치를 묻습니다. 원격이 비어 있거나 HEAD가 아무도 푸시하지 않은 브랜치를 가리켜 기본 브랜치를 알리지 않으면 `error: Cannot determine remote HEAD`로 실패하며, 이 경우 대신 브랜치를 명시적으로 지정합니다. 클론이 해당 브랜치를 fetch하지 않으면 `error: Not a valid ref`로 실패하며, 이 경우 먼저 위와 같이 refspec을 넓힙니다.
3751* 저장소에 원격이 없으면 `git remote add origin <url>`로 원격을 추가하고 ref를 만들기 전에 fetch합니다. 원격이 비어 있으면 먼저 `git push -u origin HEAD`로 브랜치를 푸시하고 set-head 명령에 해당 브랜치를 지정합니다. 그러면 `origin/HEAD`가 방금 푸시한 브랜치를 가리키므로, 브랜치가 여기서 갈라질 때까지 `/security-review`에는 빈 diff가 표시됩니다.3809* 저장소에 원격이 없으면 `git remote add origin <url>`로 원격을 추가하고 ref를 생성하기 전에 fetch합니다. 원격이 비어 있으면 먼저 `git push -u origin HEAD`로 브랜치를 푸시하고 set-head 명령에 해당 브랜치를 지정합니다. 그러면 `origin/HEAD`가 방금 푸시한 브랜치를 가리키므로, 브랜치가 분기되기 전까지 `/security-review`에는 빈 diff가 표시됩니다.
3752 3810
3753### No shell command in a skill or command was run3811### No shell command in a skill or command was run
3754 3812
3755`No shell command in <name> was run`은 해당 스킬 또는 명령 파일의 `` !`<command>` `` [동적 컨텍스트 명령](https://code.claude.com/docs/ko/skills.md#inject-dynamic-context)에 Bash 또는 PowerShell 도구가 거부하는 문자가 포함되어 있다는 의미입니다.3813`No shell command in <name> was run`은 해당 스킬 또는 명령 파일의 `` !`<command>` `` [동적 컨텍스트 명령](https://code.claude.com/docs/ko/skills.md#inject-dynamic-context)에 Bash 또는 PowerShell 도구가 거부하는 문자가 포함되어 있다는 의미입니다:
3756 3814
3757* **두 도구 모두**: 탭이나 줄 바꿈이 아닌 원시 제어 문자3815* **두 도구 모두**: 탭이나 줄바꿈이 아닌 원시 제어 문자
3758* **PowerShell 도구**: 추가로 U+FEFF 또는 U+180E3816* **PowerShell 도구**: 추가로 U+FEFF 또는 U+180E
3759 3817
3760메시지는 거부된 명령으로 끝나며, 거부된 각 문자는 다음 Bash 도구 예시처럼 `�`로 표시됩니다.3818메시지는 거부된 명령으로 끝나며, 다음 Bash 도구 예시처럼 거부된 각 문자를 `�`로 표시합니다:
3761 3819
3762```text theme={null}3820```text theme={null}
3763No shell command in /my-skill was run, because the Bash tool does not accept one of them: command contains control characters that would be hidden in the approval dialog. Unprintable characters are shown as � below: remove them from the skill or command file, or from the arguments or options substituted into it.3821No shell command in /my-skill was run, because the Bash tool does not accept one of them: command contains control characters that would be hidden in the approval dialog. Unprintable characters are shown as � below: remove them from the skill or command file, or from the arguments or options substituted into it.
3766 3824
3767**해결 방법:**3825**해결 방법:**
3768 3826
3769* 메시지 끝에 인용된 명령에서 각 `�`를 찾습니다. 해당 문자를 [스킬 또는 명령 파일](https://code.claude.com/docs/ko/skills.md#where-skills-live)에서, 또는 파일에 대입된 인수나 [옵션](https://code.claude.com/docs/ko/plugins/manifest-reference.md#user-configuration)에서 제거합니다.3827* 메시지 끝에 인용된 명령에서 각 `�`를 찾습니다. 해당 문자를 [스킬 또는 명령 파일](https://code.claude.com/docs/ko/skills.md#where-skills-live)에서, 또는 파일에 대입되는 인수나 [옵션](https://code.claude.com/docs/ko/plugins/manifest-reference.md#user-configuration)에서 제거합니다.
3770 3828
3771### Input must be provided when using `--print`3829### Input must be provided when using `--print`
3772 3830
3773인수 없는 `claude`는 대화형 UI를 시작하려면 stdout이 터미널이어야 합니다. stdout이 리디렉션되었거나 PowerShell ISE나 일부 IDE 출력 창처럼 콘솔이 실제 터미널이 아니면, `claude`는 대신 [비대화형으로](https://code.claude.com/docs/ko/headless.md) 실행됩니다. 이는 프롬프트가 필요한 `claude -p`와 같은 모드이므로, 플래그를 전달하지 않았어도 메시지에 `--print`가 표시됩니다. 프롬프트 없이 stdin으로 아무것도 파이프하지 않은 채 `-p`/`--print`를 전달해도 어디서든 같은 오류가 발생합니다.3831인수 없는 `claude`가 대화형 UI를 시작하려면 stdout이 터미널이어야 합니다. stdout이 리디렉션되었거나, PowerShell ISE나 일부 IDE 출력 창처럼 콘솔이 실제 터미널이 아니면 `claude`는 대신 [비대화형으로](https://code.claude.com/docs/ko/headless.md) 실행됩니다. 이는 프롬프트가 필요한 `claude -p`와 같은 모드이므로, 플래그를 전달하지 않았더라도 메시지에 `--print`가 표시됩니다. 프롬프트 없이, stdin으로 아무것도 파이프하지 않고 `-p`/`--print`를 전달하면 어디에서든 같은 오류가 발생합니다.
3774 3832
3775```text theme={null}3833```text theme={null}
3776Error: Input must be provided either through stdin or as a prompt argument when using --print3834Error: Input must be provided either through stdin or as a prompt argument when using --print
3783 3841
3784### Claude Code can't read the keyboard here3842### Claude Code can't read the keyboard here
3785 3843
3786[`-p`](https://code.claude.com/docs/ko/headless) 없이 `claude`를 실행해 [대화형 세션](https://code.claude.com/docs/ko/interactive-mode.md)을 시작했지만, 표준 입력이 터미널이 아닙니다. 무언가가 입력을 파이프하거나 리디렉션했거나, `claude`를 실행한 프로그램이 자체 입력 스트림을 제공했습니다.3844[대화형 세션](https://code.claude.com/docs/ko/interactive-mode.md)을 시작하는 [`-p`](https://code.claude.com/docs/ko/headless) 없이 `claude`를 실행했지만, 표준 입력이 터미널이 아닙니다. 무언가가 파이프로 연결하거나 리디렉션했거나, `claude`를 실행한 프로그램이 자체 입력 스트림을 제공했습니다.
3787 3845
3788대화형 세션은 키 입력을 읽을 터미널이 필요하며, 터미널이 없을 때 Claude Code의 동작은 플랫폼에 따라 다릅니다.3846대화형 세션은 키 입력을 읽을 터미널이 필요하며, 터미널이 없을 때 Claude Code의 동작은 플랫폼에 따라 다릅니다:
3789 3847
3790* **Windows**: Claude Code는 인터페이스를 시작하지 않고 메시지를 stderr에 출력한 뒤 종료 코드 1로 종료됩니다3848* **Windows**: Claude Code는 인터페이스를 시작하지 않고 메시지를 stderr에 출력한 후 종료 코드 1로 종료됩니다
3791* **macOS 및 Linux**: Claude Code는 `/dev/tty`에서 키 입력을 읽고 세션을 시작하며, 파이프된 텍스트가 있으면 첫 번째 프롬프트로 사용합니다. `/dev/tty`를 열 수 없을 때 메시지가 표시되며, 첫 번째 줄에는 Windows 문구 대신 `/dev/tty`가 표시됩니다.3849* **macOS 및 Linux**: Claude Code는 `/dev/tty`에서 키 입력을 읽고 세션을 시작하며, 파이프된 텍스트가 있으면 첫 번째 프롬프트로 사용합니다. `/dev/tty`를 열 수 없으면 메시지가 표시되며, 첫 번째 줄에는 Windows 문구 대신 `/dev/tty`가 표시됩니다.
3792 3850
3793Windows에서 메시지는 다음과 같습니다.3851Windows에서 메시지는 다음과 같습니다:
3794 3852
3795```text theme={null}3853```text theme={null}
3796Claude Code can't read the keyboard here: stdin is not a terminal (it is piped, redirected, or supplied by the program that launched claude), and on Windows it can't fall back to the console for input yet.3854Claude Code can't read the keyboard here: stdin is not a terminal (it is piped, redirected, or supplied by the program that launched claude), and on Windows it can't fall back to the console for input yet.
3800 3858
3801**해결 방법:**3859**해결 방법:**
3802 3860
3803* 대화형으로 작업하려면 입력을 파이프하거나 리디렉션하지 않고 터미널에서 직접 `claude`를 실행합니다3861* 대화형으로 작업하려면 입력을 파이프하거나 리디렉션하지 않고 터미널에서 `claude`를 직접 실행합니다
3804* 스크립트 등에서 대화형 인터페이스 없이 응답을 받으려면 `-p`를 추가하고 `claude -p "your question"` 또는 `echo "your question" | claude -p`처럼 프롬프트를 인수나 stdin으로 전달합니다. `--continue` 및 `--resume <session-id>`에서도 같은 방식이 작동합니다.3862* 스크립트 등에서 대화형 인터페이스 없이 답변을 받으려면 `-p`를 추가하고 `claude -p "your question"` 또는 `echo "your question" | claude -p`처럼 프롬프트를 인수로 또는 stdin으로 전달합니다. `--continue` 및 `--resume <session-id>`에서도 같은 방식이 동작합니다.
3805 3863
3806v2.1.287 이전에는 Claude Code가 이 메시지를 출력하는 대신 인터페이스를 시작했으며, 화면에 아무것도 표시하지 않거나 `Raw mode is not supported`가 포함된 오류로 실패했습니다.3864v2.1.287 이전에는 Claude Code가 이 메시지를 출력하는 대신 인터페이스를 시작한 다음, 화면에 아무것도 표시하지 않거나 `Raw mode is not supported`를 포함하는 오류로 실패했습니다.
3807 3865
3808`claude install` 중에 `Raw mode is not supported`가 표시되는 경우에는 [설치 중 `Raw mode is not supported`](https://code.claude.com/docs/ko/troubleshoot-install#raw-mode-is-not-supported-during-install)를 참조하세요.3866대신 `claude install` 중에 `Raw mode is not supported`가 표시되면 [설치 중 `Raw mode is not supported`](https://code.claude.com/docs/ko/troubleshoot-install#raw-mode-is-not-supported-during-install)를 참조하세요.
3809 3867
3810### Input contained only whitespace3868### Input contained only whitespace
3811 3869
3812[비대화형 모드](https://code.claude.com/docs/ko/headless.md)에서 Claude Code는 공백, 탭, 줄 바꿈으로만 이루어진 프롬프트를 전송하지 않고 거부합니다. API가 보이는 텍스트가 없는 메시지를 거부하기 때문입니다. 표시되는 메시지는 빈 프롬프트가 어디서 왔는지에 따라 다릅니다.3870[비대화형 모드](https://code.claude.com/docs/ko/headless.md)에서 Claude Code는 공백, 탭 또는 줄 바꿈으로만 이루어진 프롬프트를 전송하지 않고 거부합니다. API가 보이는 텍스트가 없는 메시지를 거부하기 때문입니다. 표시되는 메시지는 빈 프롬프트가 어디에서 왔는지에 따라 다릅니다.
3813 3871
3814* **`claude -p`의 프롬프트 인수 또는 파이프된 stdin**: `claude`가 `Error: Input contained only whitespace. Provide a prompt with text through stdin or as a prompt argument when using --print`와 함께 종료됩니다3872* **`claude -p`의 프롬프트 인수 또는 파이프된 stdin**: `claude`가 `Error: Input contained only whitespace. Provide a prompt with text through stdin or as a prompt argument when using --print` 메시지와 함께 종료됩니다
3815* **실행 중인 `--input-format stream-json` 또는 [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/overview.md) 세션에 제출된 메시지**: Claude Code는 모델을 호출하지 않고 턴을 종료하며 세션은 계속 사용할 수 있습니다. 거부 내용은 정보 메시지와 턴의 결과 텍스트로 전달됩니다: `Blank prompt — the message was only whitespace, so nothing was sent to the model.`3873* **실행 중인 `--input-format stream-json` 또는 [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/overview.md) 세션에 제출된 메시지**: Claude Code는 모델을 호출하지 않고 턴을 종료하며, 세션은 계속 사용할 수 있습니다. 거부 내용은 정보 메시지와 해당 턴의 결과 텍스트로 전달됩니다: `Blank prompt — the message was only whitespace, so nothing was sent to the model.`
3816 3874
3817v2.1.229 이전에는 Claude Code가 공백만 있는 메시지를 API로 전송했고, API가 400 오류로 요청을 거부했습니다.3875v2.1.229 이전에는 Claude Code가 공백만 있는 메시지를 API로 전송했고, API는 400 오류로 요청을 거부했습니다.
3818 3876
3819**해결 방법:**3877**해결 방법:**
3820 3878
3821* 프롬프트에 보이는 텍스트를 포함합니다. 스크립트가 변수나 파일에서 프롬프트를 구성하는 경우 Claude Code를 호출하기 전에 소스가 비어 있지 않은지 확인합니다.3879* 프롬프트에 보이는 텍스트를 포함합니다. 스크립트가 변수나 파일로 프롬프트를 구성하는 경우, Claude Code를 호출하기 전에 원본이 비어 있지 않은지 확인합니다.
3822 3880
3823### stream-json input carried over 256M characters with no newline3881### stream-json input carried over 256M characters with no newline
3824 3882
3825프로그램이 `claude -p --input-format stream-json` 실행에 줄 바꿈 없이 268,435,456자를 초과하는 입력을 stdin으로 보냈으므로, Claude Code는 입력을 더 버퍼링하지 않고 이 오류를 stderr에 출력한 뒤 종료 코드 1로 종료됩니다. 메시지에서는 이 한도를 `256M`으로 표시합니다. v2.1.257 이전에는 Claude Code가 이러한 입력을 제한 없이 버퍼링해 프로세스가 충돌하거나 강제 종료될 때까지 메모리가 증가했습니다.3883프로그램이 `claude -p --input-format stream-json` 실행에 줄 바꿈 없이 268,435,456자를 초과하는 문자를 stdin으로 보냈기 때문에, Claude Code는 입력을 더 버퍼링하는 대신 이 오류를 stderr에 출력하고 코드 1로 종료합니다. 메시지에서는 이 한도를 `256M`으로 표시합니다. v2.1.257 이전에는 Claude Code가 이러한 입력을 제한 없이 버퍼링했기 때문에, 프로세스가 충돌하거나 강제 종료될 때까지 메모리 사용량이 계속 증가했습니다.
3826 3884
3827```text theme={null}3885```text theme={null}
3828Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.3886Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.
3829```3887```
3830 3888
3831줄 바꿈 없이 이렇게 긴 입력은 대개 실수로 파이프된 바이너리 파일이나 일반 로그 출력처럼 생산자가 애초에 stream-json 생산자가 아니라는 의미입니다. 한도를 초과하는 단일 메시지도 같은 검사에서 실패합니다.3889줄 바꿈 없이 이렇게 긴 입력은 대개 입력을 생성하는 쪽이 애초에 stream-json 생성기가 아니라는 뜻입니다. 예를 들어 실수로 파이프된 바이너리 파일이나 일반 로그 출력이 이에 해당합니다. 한도를 초과하는 단일 메시지도 같은 검사에서 실패합니다.
3832 3890
3833**해결 방법:**3891**해결 방법:**
3834 3892
3835* stdin으로 무엇이 파이프되는지 확인합니다. [`--input-format stream-json`](https://code.claude.com/docs/ko/cli-reference#cli-flags)을 사용하면 모든 메시지는 줄 바꿈으로 끝나는 JSON 한 줄이어야 합니다3893* stdin으로 무엇이 파이프되는지 확인합니다. [`--input-format stream-json`](https://code.claude.com/docs/ko/cli-reference#cli-flags)을 사용할 때는 모든 메시지가 줄 바꿈으로 끝나는 한 줄의 JSON이어야 합니다
3836* 대신 일반 텍스트를 보내려면 `--input-format stream-json`을 제거합니다. `claude -p`는 기본적으로 stdin에서 일반 텍스트 프롬프트를 읽습니다3894* 대신 일반 텍스트를 보내려면 `--input-format stream-json`을 제거합니다. `claude -p`는 기본적으로 stdin에서 일반 텍스트 프롬프트를 읽습니다
3837 3895
3838### Unknown command3896### Unknown command
3839 3897
3840대화형 터미널 세션에서 이 세션의 어떤 명령과도 일치하지 않는 `/` 이름을 제출했기 때문에, Claude Code가 아무것도 실행하지 않고 해당 이름을 보고합니다:3898대화형 터미널 세션에서 이 세션의 어떤 명령과도 일치하지 않는 `/` 이름을 제출했기 때문에, Claude Code는 아무것도 실행하지 않고 해당 이름을 보고합니다.
3841 3899
3842```text theme={null}3900```text theme={null}
3843Unknown command: /hepl. Did you mean /help?3901Unknown command: /hepl. Did you mean /help?
3844```3902```
3845 3903
3846Claude Code는 이 세션에서 메뉴에 나열된 명령 이름 또는 별칭 중 가장 가까운 것을 제안합니다. 가까운 것이 없으면 메시지는 이름 뒤에서 끝납니다. 원인은 보통 다음 중 하나입니다:3904Claude Code는 이 세션의 메뉴에 나열된 명령 이름이나 별칭 중 가장 가까운 것을 제안합니다. 가까운 것이 없으면 메시지는 이름 뒤에서 끝납니다. 원인은 대개 다음 중 하나입니다.
3847 3905
3848* `/help` 대신 `/hepl`을 입력한 것과 같은 오타. 제출하기 전에 가까운 일치 항목을 고르는 방법은 [명령 메뉴가 입력 내용과 일치시키는 방식](https://code.claude.com/docs/ko/commands.md#how-the-command-menu-matches-what-you-type)에서 다룹니다3906* `/help` 대신 `/hepl`처럼 입력한 오타. 제출하기 전에 가까운 항목을 선택하는 방법은 [명령 메뉴가 입력한 내용과 일치시키는 방식](https://code.claude.com/docs/ko/commands.md#how-the-command-menu-matches-what-you-type)에서 다룹니다
3849* 존재하지만 플랫폼, 플랜, 인증 방법 등의 요구 사항이 충족되지 않아 이 세션에서 사용할 수 없는 명령. [`/web-setup`](https://code.claude.com/docs/ko/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command), [`/schedule`](https://code.claude.com/docs/ko/routines#schedule-returns-unknown-command), [`/auto-mode-setup`](https://code.claude.com/docs/ko/auto-mode-config#auto-mode-setup-returns-unknown-command) 항목을 참조하십시오. 일부 명령은 조직의 정책으로 비활성화된 경우 [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)와 같은 자체 메시지로 응답합니다3907* 존재하지만 플랫폼, 요금제 또는 인증 방법 등의 요구 사항이 충족되지 않아 이 세션에서 사용할 수 없는 명령. [`/web-setup`](https://code.claude.com/docs/ko/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command), [`/schedule`](https://code.claude.com/docs/ko/routines#schedule-returns-unknown-command) 또는 [`/auto-mode-setup`](https://code.claude.com/docs/ko/auto-mode-config#auto-mode-setup-returns-unknown-command) 항목을 참조하세요. 일부 명령은 조직의 정책으로 비활성화된 경우 [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)처럼 자체 메시지로 응답합니다
3850* 이 세션에 설치되지 않았거나 연결되지 않은 [플러그인](https://code.claude.com/docs/ko/plugins/overview.md) 또는 [MCP 서버](https://code.claude.com/docs/ko/mcp.md#use-mcp-prompts-as-commands)의 명령3908* 이 세션에 설치되거나 연결되지 않은 [플러그인](https://code.claude.com/docs/ko/plugins/overview.md) 또는 [MCP 서버](https://code.claude.com/docs/ko/mcp.md#use-mcp-prompts-as-commands)의 명령
3851 3909
3852Claude Code는 대화형 터미널 세션에서만 일치하지 않는 `/` 이름에 이런 방식으로 응답합니다. 그 외의 모든 세션에서는 프롬프트를 일반 메시지로 Claude에 보내며, 명령이 실행되지 않았다는 안내와 세션에서 Claude가 실행할 수 있는 명령 목록을 함께 보냅니다. 해당 세션은 다음과 같습니다:3910Claude Code는 대화형 터미널 세션에서만 일치하지 않는 `/` 이름에 이런 방식으로 응답합니다. 그 외의 모든 세션에서는 명령이 실행되지 않았다는 안내와 해당 세션에서 Claude가 실행할 수 있는 명령 목록을 덧붙여, 프롬프트를 일반 메시지로 Claude에게 보냅니다. 이러한 세션은 다음과 같습니다.
3853 3911
3854* `-p` 실행3912* `-p` 실행
3855* [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/overview.md) 애플리케이션3913* [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/overview.md) 애플리케이션
3857* [VS Code 확장 프로그램](https://code.claude.com/docs/ko/vs-code.md)의 채팅 패널3915* [VS Code 확장 프로그램](https://code.claude.com/docs/ko/vs-code.md)의 채팅 패널
3858* [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md) 및 [클라우드 예약 작업](https://code.claude.com/docs/ko/routines.md)3916* [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md) 및 [클라우드 예약 작업](https://code.claude.com/docs/ko/routines.md)
3859 3917
3860이러한 세션 중 하나에서 실행할 수 없는 기본 제공 명령의 경우, Claude Code는 여전히 Claude에 보내지 않고 해당 명령을 사용할 수 없다고 응답합니다. v2.1.274 이전에는 클라우드 세션과 클라우드 예약 작업만 일치하지 않는 이름을 Claude에 보냈습니다. v2.1.273 이전에는 이들도 `Unknown command`로 응답했습니다.3918이러한 세션 중 하나에서 실행할 수 없는 기본 제공 명령의 경우, Claude Code는 여전히 명령을 Claude에게 보내지 않고 해당 명령을 사용할 수 없다고 응답합니다. v2.1.274 이전에는 클라우드 세션과 클라우드 예약 작업만 일치하지 않는 이름을 Claude에게 보냈습니다. v2.1.273 이전에는 이들도 `Unknown command`로 응답했습니다.
3861 3919
3862Claude Code는 `/`로 시작하는 모든 프롬프트를 명령으로 처리하지 않습니다. `/` 뒤의 첫 단어가 Lean 문서 주석을 여는 `/--`처럼 구두점으로 시작하거나 `/var/log/syslog`와 같은 경로인 경우, 프롬프트를 일반 메시지로 Claude에 보냅니다.3920Claude Code는 `/`로 시작하는 모든 프롬프트를 명령으로 취급하지는 않습니다. `/` 뒤의 첫 단어가 Lean 문서 주석을 여는 `/--`처럼 구두점으로 시작하거나 `/var/log/syslog` 같은 경로인 경우, 프롬프트를 일반 메시지로 Claude에게 보냅니다.
3863 3921
3864v2.1.236 이전에는 명령 메뉴에 입력한 이름과 가까운 항목이 나열된 상태에서 `Enter`를 누르면 Claude Code가 해당 항목을 실행했기 때문에, `/hepl`과 같은 오타는 이 메시지를 표시하는 대신 `/help`를 실행했습니다.3922v2.1.236 이전에는 입력한 이름과 비슷한 항목이 명령 메뉴에 나열된 상태에서 `Enter`를 누르면 Claude Code가 그 항목을 실행했기 때문에, `/hepl` 같은 오타는 이 메시지를 표시하는 대신 `/help`를 실행했습니다.
3865 3923
3866**해결 방법:**3924**해결 방법:**
3867 3925
3868* 제안된 이름을 실행하거나, `/` 뒤에 이름의 일부를 입력하여 이 세션에서 사용할 수 있는 명령을 확인합니다3926* 제안된 이름을 실행하거나, `/` 뒤에 이름의 일부를 입력하여 이 세션에서 사용할 수 있는 명령을 확인합니다
3869* Claude Code가 문서화된 명령을 알 수 없다고 보고하는 경우, [명령 참조](https://code.claude.com/docs/ko/commands.md)에서 해당 명령의 행을 확인하여 명시된 요구 사항을 확인합니다3927* 문서에 있는 명령을 Claude Code가 알 수 없는 명령으로 보고하는 경우, [명령 레퍼런스](https://code.claude.com/docs/ko/commands.md)에서 해당 명령의 행에 명시된 요구 사항을 확인합니다
3870 3928
3871### Diff is too large for ultrareview3929### Diff is too large for ultrareview
3872 3930
3873커밋되지 않은 변경 사항과 스테이징된 변경 사항을 포함하여 현재 브랜치와 기본 브랜치 간의 diff가 [ultrareview](https://code.claude.com/docs/ko/ultrareview.md)의 크기 제한을 초과하므로, `/code-review ultra`와 `claude ultrareview` 하위 명령은 클라우드 세션이 시작되기 전에 리뷰를 거부합니다. 거부된 리뷰는 무료 실행 횟수를 사용하지 않으며 사용량 크레딧도 청구되지 않습니다. 메시지에는 적용 중인 제한, diff의 크기, 변경된 줄 수가 가장 많은 파일이 표시됩니다. v2.1.216 이전에는 메시지에 원시 diff 통계만 표시되었습니다.3931커밋되지 않은 변경 사항과 스테이징된 변경 사항을 포함한 현재 브랜치와 기본 브랜치 간의 diff가 [ultrareview](https://code.claude.com/docs/ko/ultrareview.md)의 크기 제한을 초과하므로, `/code-review ultra`와 `claude ultrareview` 하위 명령은 클라우드 세션이 시작되기 전에 리뷰를 거부합니다. 거부된 리뷰는 무료 실행 횟수를 사용하지 않으며 사용량 크레딧도 청구되지 않습니다. 메시지에는 적용 중인 제한, diff의 크기, 변경된 줄이 가장 많은 파일이 표시됩니다. v2.1.216 이전에는 메시지에 원시 diff 통계만 표시되었습니다.
3874 3932
3875```text theme={null}3933```text theme={null}
3876Diff is too large for ultrareview: 812 files, 96,410 lines changed (limits: 500 files, 8,000 lines). Largest files: package-lock.json (41,904 lines), dist/bundle.js (18,210 lines), src/generated/api.ts (9,876 lines). Pass a closer base branch (`/code-review ultra <branch>`) to narrow the scope, or split the change.3934Diff is too large for ultrareview: 812 files, 96,410 lines changed (limits: 500 files, 8,000 lines). Largest files: package-lock.json (41,904 lines), dist/bundle.js (18,210 lines), src/generated/api.ts (9,876 lines). Pass a closer base branch (`/code-review ultra <branch>`) to narrow the scope, or split the change.
3877```3935```
3878 3936
3879풀 리퀘스트를 리뷰할 때도 동일한 제한이 적용됩니다. 이 경우 메시지는 `PR #<N> is too large for ultrareview`로 시작하며 PR의 파일 수와 줄 수를 표시합니다.3937풀 리퀘스트를 리뷰할 때도 같은 제한이 적용됩니다. 이 경우 메시지는 `PR #<N> is too large for ultrareview`로 시작하며 PR의 파일 수와 줄 수를 표시합니다.
3880 3938
3881**해결 방법:**3939**해결 방법:**
3882 3940
3883* `/code-review ultra develop`처럼 작업에 더 가까운 기본 브랜치를 전달하여, 리뷰가 해당 브랜치와의 diff만 다루도록 합니다3941* `/code-review ultra develop`처럼 작업에 더 가까운 기본 브랜치를 전달하여, 리뷰가 해당 브랜치에 대한 diff만 다루도록 합니다
3884* 변경 사항을 더 작은 브랜치로 나누고 각각 리뷰합니다. 메시지에 표시된 파일이 변경된 줄 수가 가장 많으므로, 먼저 해당 파일을 별도의 브랜치로 옮기십시오.3942* 변경 사항을 더 작은 브랜치로 나누고 각각 리뷰합니다. 메시지에 표시된 파일이 변경된 줄을 가장 많이 차지하므로, 먼저 해당 파일들을 별도의 브랜치로 옮깁니다.
3885 3943
3886### Could not find merge-base with the base branch3944### Could not find merge-base with the base branch
3887 3945
3888`/code-review ultra`와 `claude ultrareview` 하위 명령은 현재 브랜치와 기본 브랜치 간의 diff를 리뷰하며, 이를 위해서는 두 브랜치가 공유하는 커밋이 필요합니다. `git merge-base`가 공유 커밋을 찾지 못하면 Claude Code는 클라우드 세션이 시작되기 전에 리뷰를 거부합니다. Claude Code가 완전하다고 확인할 수 있고 브랜치가 하나 이상 있는 클론에서는 거부하는 대신 [추적되는 모든 파일을 리뷰하는 방식](https://code.claude.com/docs/ko/ultrareview.md#diff-limits-and-fallbacks)으로 대체합니다. 기본 브랜치를 전혀 찾을 수 없는 경우, Claude Code가 클론이 완전한지 확인할 수 없는 경우, 또는 SHA-256 객체 형식처럼 전체 트리 diff가 불가능한 드문 저장소에서 이 거부 메시지가 표시됩니다.3946`/code-review ultra`와 `claude ultrareview` 하위 명령은 현재 브랜치와 기본 브랜치 간의 diff를 리뷰하며, 이를 위해서는 두 브랜치가 공유하는 커밋이 필요합니다. `git merge-base`가 공유 커밋을 찾지 못하면 Claude Code는 클라우드 세션이 시작되기 전에 리뷰를 거부합니다. Claude Code가 완전한 클론임을 확인할 수 있고 브랜치가 하나 이상 있는 경우에는 거부하는 대신 [추적 중인 모든 파일을 리뷰](https://code.claude.com/docs/ko/ultrareview.md#diff-limits-and-fallbacks)하는 방식으로 대체합니다. 이 거부는 기본 브랜치를 전혀 찾을 수 없을 때, Claude Code가 클론이 완전한지 확인할 수 없을 때, 또는 SHA-256 객체 형식처럼 전체 트리 diff가 불가능한 드문 저장소에서 표시됩니다.
3889 3947
3890```text theme={null}3948```text theme={null}
3891Could not find merge-base with main. Pass the base branch explicitly (e.g. `/code-review ultra develop`) or make sure you're in a git repo with a main branch.3949Could not find merge-base with main. Pass the base branch explicitly (e.g. `/code-review ultra develop`) or make sure you're in a git repo with a main branch.
3892```3950```
3893 3951
3894첫 번째 문장 뒤의 힌트는 Claude Code가 확인한 내용에 따라 달라집니다:3952첫 문장 뒤의 힌트는 Claude Code가 확인한 상황에 따라 달라집니다.
3895 3953
3896* **기본 브랜치를 전달하지 않은 경우**: Claude Code는 저장소의 기본 브랜치와 비교했으며, 위 예시처럼 기본 브랜치를 명시적으로 전달하도록 제안합니다3954* **기본 브랜치를 전달하지 않은 경우**: Claude Code는 저장소의 기본 브랜치와 비교했으며, 위 예시처럼 기본 브랜치를 명시적으로 전달하도록 제안합니다
3897* **이미 클론에 있는 기본 브랜치를 전달한 경우**: 힌트는 ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``입니다3955* **클론에 이미 있던 기본 브랜치를 전달한 경우**: 힌트는 ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``입니다
3898* **클론에 없는 기본 브랜치를 전달한 경우**: Claude Code는 비교하기 전에 origin에서 해당 브랜치를 가져왔습니다. 힌트는 ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``입니다. Claude Code가 클론이 shallow 클론인지 판단할 수 없는 경우에는 대신 `git fetch --unshallow origin`을 제안합니다. v2.1.221 이전에는 가져온 모든 기본 브랜치에 대해 `git fetch --unshallow origin`을 제안했으며, 완전한 클론에서는 이 명령이 `fatal: --unshallow on a complete repository does not make sense`와 함께 실패했습니다.3956* **클론에 없던 기본 브랜치를 전달한 경우**: Claude Code는 비교하기 전에 origin에서 해당 브랜치를 가져왔습니다. 힌트는 ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``이며, Claude Code가 클론이 shallow인지 판단할 수 없는 경우에는 대신 `git fetch --unshallow origin`을 제안합니다. v2.1.221 이전에는 가져온 모든 기본 브랜치에 대해 힌트가 `git fetch --unshallow origin`을 제안했으며, 완전한 클론에서는 이 명령이 `fatal: --unshallow on a complete repository does not make sense`와 함께 실패합니다.
3899 3957
3900**해결 방법:**3958**해결 방법:**
3901 3959
3902* 다른 브랜치가 실제 기본 브랜치라면 명시적으로 전달합니다: `/code-review ultra <branch>`3960* 다른 브랜치가 실제 기본 브랜치라면 `/code-review ultra <branch>`로 명시적으로 전달합니다
3903* 클론에 전체 기록이 없을 수 있다면 `git fetch --unshallow origin`을 실행하고 리뷰를 다시 실행합니다3961* 클론에 전체 기록이 없을 수 있다면 `git fetch --unshallow origin`을 실행하고 리뷰를 다시 실행합니다
3904 3962
3905### Your checkout has no branches3963### Your checkout has no branches
3906 3964
3907체크아웃에 커밋은 있지만 브랜치가 없을 수 있습니다. `git init`을 실행한 후 `git fetch <url>`과 `git checkout FETCH_HEAD`를 실행하면 ref가 없는 detached HEAD 상태가 됩니다. Claude Code는 [ultrareview](https://code.claude.com/docs/ko/ultrareview.md)를 위해 저장소를 git 번들로 패키징하여 업로드하는데, 브랜치나 다른 ref가 없는 저장소는 번들로 만들 수 없으므로 `/code-review ultra`와 `claude ultrareview` 하위 명령은 클라우드 세션이 시작되기 전에 리뷰를 거부합니다.3965체크아웃에는 커밋이 있지만 브랜치가 없을 수 있습니다. `git init`을 실행한 후 `git fetch <url>`과 `git checkout FETCH_HEAD`를 실행하면 ref가 없는 detached HEAD 상태가 됩니다. Claude Code는 [ultrareview](https://code.claude.com/docs/ko/ultrareview.md)를 위해 저장소를 업로드할 때 git 번들로 패키징하는데, 브랜치나 다른 ref가 없는 저장소는 번들로 만들 수 없으므로 `/code-review ultra`와 `claude ultrareview` 하위 명령은 클라우드 세션이 시작되기 전에 리뷰를 거부합니다.
3908 3966
3909```text theme={null}3967```text theme={null}
3910Your checkout has no branches (detached HEAD only), which cloud review can't bundle. Create one first — `git checkout -b <name>` — then rerun /code-review ultra.3968Your checkout has no branches (detached HEAD only), which cloud review can't bundle. Create one first — `git checkout -b <name>` — then rerun /code-review ultra.
3911```3969```
3912 3970
3913v2.1.221 이전에는 Claude Code가 이 체크아웃에서 추적되는 모든 파일을 리뷰하려고 시도했으며, 업로드가 실패했습니다.3971v2.1.221 이전에는 Claude Code가 이 체크아웃에서 추적 중인 모든 파일을 리뷰하려고 시도했고, 업로드가 실패했습니다.
3914 3972
3915**해결 방법:**3973**해결 방법:**
3916 3974
3918 3976
3919### No GitHub account is connected to your Claude account3977### No GitHub account is connected to your Claude account
3920 3978
3921`/code-review ultra <PR#>` 또는 `claude ultrareview <PR#>`을 실행하면, Claude Code는 클라우드 세션을 만들기 전에 [Claude 계정에 연결된 GitHub 계정](https://code.claude.com/docs/ko/ultrareview.md#review-a-pull-request)이 PR의 저장소에 접근할 수 있는지 서버에 확인합니다. 연결된 계정이 없거나 연결이 만료된 경우 클라우드 클론이 실패할 것이므로 Claude Code는 실행을 거부합니다. 거부된 실행에 대해서는 무료 실행 횟수를 사용하지 않으며 사용량 크레딧도 청구하지 않습니다.3979`/code-review ultra <PR#>` 또는 `claude ultrareview <PR#>`을 실행하면, Claude Code는 클라우드 세션을 만들기 전에 [Claude 계정에 연결된 GitHub 계정](https://code.claude.com/docs/ko/ultrareview.md#review-a-pull-request)이 PR의 저장소에 접근할 수 있는지 서버에 확인합니다. 연결된 계정이 없거나 연결이 만료되어 클라우드 클론이 실패할 것이므로 Claude Code가 실행을 거부합니다. 거부된 실행에 대해서는 무료 실행 횟수를 사용하거나 사용량 크레딧을 청구하지 않습니다.
3922 3980
3923```text theme={null}3981```text theme={null}
3924Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).3982Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).
3925```3983```
3926 3984
3927세션에서 [`/web-setup`](https://code.claude.com/docs/ko/web-quickstart#connect-from-your-terminal)을 사용할 수 없는 경우 메시지에는 claude.ai 링크만 표시됩니다.3985세션에서 [`/web-setup`](https://code.claude.com/docs/ko/web-quickstart#connect-from-your-terminal)을 사용할 수 없는 경우, 메시지에는 claude.ai 링크만 표시됩니다.
3928 3986
3929**해결 방법:**3987**해결 방법:**
3930 3988
3931* `/web-setup`을 실행하여 GitHub CLI 로그인을 Claude 계정에 연결하거나, [claude.ai/connect-github](https://claude.ai/connect-github)에서 계정을 연결합니다3989* `/web-setup`을 실행하여 GitHub CLI 로그인을 Claude 계정에 연결하거나, [claude.ai/connect-github](https://claude.ai/connect-github)에서 계정을 연결합니다
3932* 연결하고 1분 후에 리뷰를 다시 실행합니다3990* 연결하고 1분 정도 지난 후 리뷰를 다시 실행합니다
3933 3991
3934v2.1.248 이전에는 Claude Code가 실행 전에 이를 확인하지 않았습니다.3992v2.1.248 이전에는 Claude Code가 실행 전에 이를 확인하지 않았습니다.
3935 3993
3936### Your connected GitHub account can't see the repository3994### Your connected GitHub account can't see the repository
3937 3995
3938`/code-review ultra <PR#>` 또는 `claude ultrareview <PR#>`을 실행했지만 [Claude 계정에 연결된 GitHub 계정](https://code.claude.com/docs/ko/ultrareview.md#review-a-pull-request)이 PR의 저장소를 읽을 수 없으므로, 클라우드 클론이 실패할 것이어서 Claude Code가 실행을 거부합니다. 거부된 실행에 대해서는 무료 실행 횟수를 사용하지 않으며 사용량 크레딧도 청구하지 않습니다.3996`/code-review ultra <PR#>` 또는 `claude ultrareview <PR#>`을 실행했지만 [Claude 계정에 연결된 GitHub 계정](https://code.claude.com/docs/ko/ultrareview.md#review-a-pull-request)이 PR의 저장소를 읽을 수 없어 클라우드 클론이 실패할 것이므로 Claude Code가 실행을 거부합니다. 거부된 실행에 대해서는 무료 실행 횟수를 사용하거나 사용량 크레딧을 청구하지 않습니다.
3939 3997
3940```text theme={null}3998```text theme={null}
3941Your connected GitHub account can't see <owner>/<repo> — usually the Claude GitHub app isn't installed on <owner> or wasn't granted this repo (web-connected accounts need it for private repos), or a different GitHub account is connected. To fix: run /web-setup to reuse your GitHub CLI login, or install the app at https://github.com/apps/claude/installations/new — then re-run /code-review ultra 1234.3999Your connected GitHub account can't see <owner>/<repo> — usually the Claude GitHub app isn't installed on <owner> or wasn't granted this repo (web-connected accounts need it for private repos), or a different GitHub account is connected. To fix: run /web-setup to reuse your GitHub CLI login, or install the app at https://github.com/apps/claude/installations/new — then re-run /code-review ultra 1234.
3942```4000```
3943 4001
3944세션에서 [`/web-setup`](https://code.claude.com/docs/ko/web-quickstart#connect-from-your-terminal)을 사용할 수 없는 경우 메시지에는 앱 설치만 표시됩니다.4002세션에서 [`/web-setup`](https://code.claude.com/docs/ko/web-quickstart#connect-from-your-terminal)을 사용할 수 없는 경우, 메시지에는 앱 설치 안내만 표시됩니다.
3945 4003
3946**해결 방법:**4004**해결 방법:**
3947 4005
3952 4010
3953### The GitHub App preflight failed transiently4011### The GitHub App preflight failed transiently
3954 4012
3955로컬 저장소에서 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)을 시작했는데 두 단계가 함께 실패했습니다. Claude Code가 저장소의 번들을 빌드하거나 업로드할 수 없었습니다. 업로드 전에 Claude Code는 클라우드 서비스가 GitHub에서 저장소를 클론할 수 있는지 확인했는데, 이 확인이 명확한 답을 얻지 못하고 네트워크 오류, 시간 초과, 일시적인 서버 오류처럼 재시도하면 해소될 수 있는 오류로 끝났습니다. 전체 메시지는 `Could not upload repo bundle (<error>)`처럼 번들을 중단시킨 원인으로 시작하고, 사전 확인 문장으로 끝납니다:4013로컬 저장소에서 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)을 시작했는데 두 단계가 함께 실패했습니다. Claude Code가 저장소의 번들을 빌드하거나 업로드하지 못했습니다. 업로드 전에 Claude Code는 클라우드 서비스가 GitHub에서 저장소를 클론할 수 있는지 확인했는데, 이 확인이 명확한 결과 대신 네트워크 오류, 시간 초과, 일시적인 서버 오류처럼 재시도하면 해결될 수 있는 오류로 끝났습니다. 전체 메시지는 `Could not upload repo bundle (<error>)`처럼 번들을 중단시킨 원인으로 시작하고 사전 확인에 관한 문장으로 끝납니다.
3956 4014
3957```text theme={null}4015```text theme={null}
3958Could not upload repo bundle (<error>). The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead4016Could not upload repo bundle (<error>). The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead
3960 4018
3961**해결 방법:**4019**해결 방법:**
3962 4020
3963* 잠시 후 명령을 다시 실행합니다. GitHub 확인이 통과하면 Claude Code가 GitHub 클론에서 세션을 시작할 수 있으므로, 실패한 업로드가 더 이상 실행을 막지 않습니다4021* 잠시 후 명령을 다시 실행합니다. GitHub 확인을 통과하면 Claude Code가 GitHub 클론에서 세션을 시작할 수 있으므로, 실패한 업로드가 더 이상 실행을 막지 않습니다
3964* 재시도가 계속 실패하면 메시지의 시작 부분에 업로드를 중단시킨 원인이 표시됩니다. 해당 원인이 직접 해결할 수 있는 것이라면 해결하여 세션이 로컬 저장소에서 시작될 수 있도록 합니다4022* 재시도해도 계속 실패한다면 메시지의 앞부분에 업로드를 중단시킨 원인이 표시됩니다. 그 원인이 해결할 수 있는 것이라면 해결하여 세션이 로컬 저장소에서 시작될 수 있도록 합니다
3965 4023
3966v2.1.251 이전에는 GitHub 확인이 일시적으로만 실패한 경우에도 Claude Code가 메시지를 `Please set up GitHub on https://claude.ai/code`로 끝냈는데, 설정 안내로는 일시적인 실패를 해결할 수 없습니다.4024v2.1.251 이전에는 GitHub 확인이 일시적으로만 실패한 경우에도 Claude Code가 메시지를 `Please set up GitHub on https://claude.ai/code`로 끝냈으며, 설정 안내로는 일시적인 실패를 해결할 수 없습니다.
3967 4025
3968### The repository upload can't follow a git setting4026### 저장소 업로드가 git 설정을 따를 수 없음
3969 4027
3970[로컬 저장소를 업로드하는 클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#send-local-repositories-without-github) 또는 브랜치의 [ultrareview](https://code.claude.com/docs/ko/ultrareview.md)를 시작했는데, 파일에 적용되는 attribute 규칙을 결정하는 git 설정 중 하나를 업로드가 따를 수 없습니다. 업로드를 그대로 진행하여 규칙을 놓치면, clean 필터가 암호화하는 파일처럼 git이 저장 전에 변환하는 파일이 디스크에 있는 그대로 클라우드에 전송될 수 있습니다. 그래서 Claude Code는 업로드를 거부하며, 아무것도 업로드되지 않습니다:4028[로컬 저장소를 업로드하는 클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#send-local-repositories-without-github) 또는 브랜치의 [ultrareview](https://code.claude.com/docs/ko/ultrareview.md)를 시작했는데, 업로드가 파일에 적용될 attribute 규칙을 결정하는 git 설정 중 하나를 따를 수 없습니다. 업로드를 진행하면서 규칙을 놓치면, clean 필터가 암호화하는 파일처럼 git이 저장하기 전에 변환하는 파일이 디스크에 있는 그대로 클라우드에 전송될 수 있습니다. 따라서 Claude Code는 업로드를 거부하며, 아무것도 업로드되지 않습니다.
3971 4029
3972```text theme={null}4030```text theme={null}
3973Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository’s .git/config or directly into your ~/.gitconfig, then retry.4031Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository’s .git/config or directly into your ~/.gitconfig, then retry.
3974```4032```
3975 4033
3976메시지에는 해당 설정과 설정된 위치가 표시되며, 해당 사례에 맞는 해결 방법으로 끝납니다. `core.attributesFile`과 `attr.tree`에 대해서도 각각의 해결 방법과 함께 동일한 거부 메시지가 표시됩니다.4034메시지에는 해당 설정과 설정된 위치가 표시되며, 발생한 경우에 맞는 해결 방법으로 끝납니다. `core.attributesFile`과 `attr.tree`에 대해서도 각각의 해결 방법과 함께 같은 거부가 표시됩니다.
3977 4035
3978메시지에는 git 구성이 `include` 또는 `includeIf` 지시문을 통해 불러오는 설정 파일이 표시될 수 있으며, 이는 해당 지시문의 조건이 이 저장소에 적용되지 않는 경우에도 마찬가지입니다.4036메시지에 표시되는 설정 파일은 git 구성이 `include` 또는 `includeIf` 지시문으로 가져오는 파일일 수 있으며, 해당 지시문의 조건이 이 저장소에 적용되지 않는 경우에도 마찬가지입니다.
3979 4037
3980**해결 방법:**4038**해결 방법:**
3981 4039
3983 4041
3984### GitHub isn't connected to your Claude account4042### GitHub isn't connected to your Claude account
3985 4043
3986예를 들어 `/autofix-pr`로 로컬 저장소에서 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)을 시작했습니다. Claude 계정에 연결된 GitHub 계정이 없거나 연결이 만료되었으므로 Claude Code가 실행을 거부합니다:4044예를 들어 `/autofix-pr`로 로컬 저장소에서 [클라우드 세션](https://code.claude.com/docs/ko/claude-code-on-the-web.md)을 시작했습니다. Claude 계정에 연결된 GitHub 계정이 없거나 연결이 만료되었으므로 Claude Code가 실행을 거부합니다.
3987 4045
3988```text theme={null}4046```text theme={null}
3989GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud. Run /web-setup to connect with your GitHub CLI login, or connect on the web at https://claude.ai/connect-github4047GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud. Run /web-setup to connect with your GitHub CLI login, or connect on the web at https://claude.ai/connect-github
3990```4048```
3991 4049
3992[`/schedule`](https://code.claude.com/docs/ko/routines)로 클라우드 예약 작업을 만들 때는 동일한 메시지가 저장소 이름을 포함한 설정 안내로 표시되며, 이 안내는 작업 생성을 막지 않습니다.4050[`/schedule`](https://code.claude.com/docs/ko/routines)로 클라우드 예약 작업을 만들 때는 같은 메시지가 저장소 이름을 포함한 설정 안내로 표시되며, 이 안내는 작업 생성을 막지 않습니다.
3993 4051
3994**해결 방법:**4052**해결 방법:**
3995 4053
3996* `/web-setup`을 실행하여 GitHub CLI 로그인을 Claude 계정에 연결하거나, [claude.ai/connect-github](https://claude.ai/connect-github)에서 계정을 연결합니다. 두 방법의 차이는 [GitHub 인증 옵션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#github-authentication-options)을 참조하십시오.4054* `/web-setup`을 실행하여 GitHub CLI 로그인을 Claude 계정에 연결하거나, [claude.ai/connect-github](https://claude.ai/connect-github)에서 계정을 연결합니다. 두 방법의 차이는 [GitHub 인증 옵션](https://code.claude.com/docs/ko/claude-code-on-the-web.md#github-authentication-options)을 참조하세요.
3997* 연결하고 1분 후에 명령을 다시 실행합니다4055* 연결하고 1분 정도 지난 후 명령을 다시 실행합니다
3998 4056
3999v2.1.268 이전에는 Claude Code가 이를 Claude GitHub App 확인의 일시적인 실패로 보고하고 재시도나 앱 설치를 제안했지만, 어느 쪽도 GitHub 계정을 연결하지 않습니다.4057v2.1.268 이전에는 Claude Code가 이를 Claude GitHub App 확인의 일시적인 실패로 보고하고 재시도하거나 앱을 설치하도록 제안했지만, 어느 쪽도 GitHub 계정을 연결하지 않습니다.
4000 4058
4001### A GitHub organization policy is blocking Claude4059### GitHub 조직 정책이 Claude를 차단함
4002 4060
4003Claude Code 프롬프트에서 [`/autofix-pr`](https://code.claude.com/docs/ko/claude-code-on-the-web#auto-fix-pull-requests)처럼 클라우드 세션을 시작하는 명령을 실행했습니다. Claude Code는 세션을 만들기 전에 GitHub에서 Claude의 저장소 접근 권한을 확인하는데, GitHub 조직에 Claude를 차단하는 정책이 있어 GitHub가 이를 거부했습니다. Claude Code는 여기서 중단하고 해당 정책을 명시한 메시지를 표시합니다.4061Claude Code 프롬프트에서 [`/autofix-pr`](https://code.claude.com/docs/ko/claude-code-on-the-web#auto-fix-pull-requests)처럼 클라우드 세션을 시작하는 명령을 실행했습니다. Claude Code는 세션을 만들기 전에 GitHub에서 Claude의 저장소 접근 권한을 확인하는데, GitHub 조직에 Claude를 차단하는 정책이 있어 GitHub가 이를 거부했습니다. Claude Code는 여기서 중단하고 해당 정책을 명시한 메시지를 표시합니다.
4004 4062
4005IP 허용 목록이 접근을 차단하는 경우 메시지는 다음과 같습니다:4063IP 허용 목록이 접근을 차단하는 경우 메시지는 다음과 같습니다.
4006 4064
4007```text theme={null}4065```text theme={null}
4008Your GitHub organization has an IP allowlist that is blocking Claude. Add Claude's IP ranges to your GitHub allowlist.4066Your GitHub organization has an IP allowlist that is blocking Claude. Add Claude's IP ranges to your GitHub allowlist.
4009```4067```
4010 4068
4011싱글 사인온이 차단하는 경우 메시지는 다음과 같습니다:4069싱글 사인온이 차단하는 경우 메시지는 다음과 같습니다.
4012 4070
4013```text theme={null}4071```text theme={null}
4014Your GitHub organization requires single sign-on. Disconnect and reconnect GitHub on the Connectors page in Claude on the web, click Authorize next to your organization when GitHub asks, then try again.4072Your GitHub organization requires single sign-on. Disconnect and reconnect GitHub on the Connectors page in Claude on the web, click Authorize next to your organization when GitHub asks, then try again.
4015```4073```
4016 4074
4017Microsoft Entra ID 조건부 액세스 정책이 차단하는 경우 메시지는 다음과 같습니다:4075Microsoft Entra ID 조건부 액세스 정책이 차단하는 경우 메시지는 다음과 같습니다.
4018 4076
4019```text theme={null}4077```text theme={null}
4020Your GitHub organization's identity provider (Microsoft Entra ID) has a Conditional Access policy that is blocking Claude. Ask your GitHub Enterprise or Entra ID admin to allow Claude in that policy.4078Your GitHub organization's identity provider (Microsoft Entra ID) has a Conditional Access policy that is blocking Claude. Ask your GitHub Enterprise or Entra ID admin to allow Claude in that policy.
4022 4080
4023**해결 방법:**4081**해결 방법:**
4024 4082
4025* **IP 허용 목록**: GitHub 조직 또는 엔터프라이즈의 소유자에게 Anthropic의 아웃바운드 IP 주소를 허용하도록 요청합니다. 주소와 변경할 GitHub 설정은 [GitHub 허용 목록 및 방화벽](https://code.claude.com/docs/ko/network-config.md#github-allow-lists-and-firewalls)을 참조하십시오.4083* **IP 허용 목록**: GitHub 조직 또는 엔터프라이즈의 소유자에게 Anthropic의 아웃바운드 IP 주소를 허용하도록 요청합니다. 주소와 변경할 GitHub 설정은 [GitHub 허용 목록 및 방화벽](https://code.claude.com/docs/ko/network-config.md#github-allow-lists-and-firewalls)을 참조하세요.
4026* **싱글 사인온**: [claude.ai/customize/connectors](https://claude.ai/customize/connectors)에서 GitHub 연결을 해제한 다음 다시 연결합니다. GitHub가 요청하면 조직 옆의 **Authorize**를 클릭하여 새 연결이 해당 조직의 싱글 사인온에 대해 인가되도록 합니다.4084* **싱글 사인온**: [claude.ai/customize/connectors](https://claude.ai/customize/connectors)에서 GitHub 연결을 해제한 다음 다시 연결합니다. GitHub가 요청하면 조직 옆의 **Authorize**를 클릭하여 새 연결이 해당 조직의 싱글 사인온에 대해 인가되도록 합니다.
4027* **조건부 액세스 정책**: GitHub Enterprise 또는 Microsoft Entra ID 관리자에게 해당 정책에서 Claude를 허용하도록 요청합니다4085* **조건부 액세스 정책**: GitHub Enterprise 또는 Microsoft Entra ID 관리자에게 해당 정책에서 Claude를 허용하도록 요청합니다
4028* 변경한 후 명령을 다시 실행합니다4086* 변경한 후 명령을 다시 실행합니다
4029 4087
4030### Single sign-on authorization needed4088### Single sign-on authorization needed
4031 4089
4032[`/install-github-app`](https://code.claude.com/docs/ko/github-actions#quick-setup)을 실행하고 SAML 싱글 사인온을 적용하는 조직의 저장소를 선택했습니다. Claude Code는 설정 전에 GitHub CLI로 저장소에 대한 접근 권한을 확인하는데, `gh` 토큰이 아직 해당 조직에 대해 인가되지 않았기 때문에 GitHub가 이 확인을 거부했습니다. 마법사는 인가 단계와 함께 경고를 표시합니다:4090[`/install-github-app`](https://code.claude.com/docs/ko/github-actions#quick-setup)을 실행하고 SAML 싱글 사인온을 적용하는 조직의 저장소를 선택했습니다. 설정 전에 Claude Code는 GitHub CLI로 저장소 접근 권한을 확인하는데, `gh` 토큰이 아직 해당 조직에 대해 인가되지 않았기 때문에 GitHub가 이 확인을 거부했습니다. 마법사는 인가 절차와 함께 다음 경고를 표시합니다.
4033 4091
4034```text theme={null}4092```text theme={null}
4035Single sign-on authorization needed4093Single sign-on authorization needed
4039**해결 방법:**4097**해결 방법:**
4040 4098
4041* `gh auth refresh -h github.com -s repo,workflow`를 실행하여 `repo` 및 `workflow` 범위로 GitHub CLI 로그인을 다시 인가하고, GitHub가 싱글 사인온을 요청하면 조직을 인가합니다4099* `gh auth refresh -h github.com -s repo,workflow`를 실행하여 `repo` 및 `workflow` 범위로 GitHub CLI 로그인을 다시 인가하고, GitHub가 싱글 사인온을 요청하면 조직을 인가합니다
4042* `GH_TOKEN`의 개인 액세스 토큰으로 인증하는 경우 [github.com/settings/tokens](https://github.com/settings/tokens)를 열고 토큰에서 **Configure SSO**를 선택한 다음 조직을 인가합니다4100* `GH_TOKEN`에 개인 액세스 토큰을 사용해 인증하는 경우, [github.com/settings/tokens](https://github.com/settings/tokens)를 열고 해당 토큰에서 **Configure SSO**를 선택한 다음 조직을 인가합니다
4043* `/install-github-app`을 다시 실행합니다4101* `/install-github-app`을 다시 실행합니다
4044 4102
4045v2.1.273 이전에는 이 상황에서 Claude Code가 대신 `Admin permissions required` 경고를 표시했습니다.4103v2.1.273 이전에는 이 상황에서 Claude Code가 대신 `Admin permissions required` 경고를 표시했습니다.
4046 4104
4047### Failed to resume the conversation4105### Failed to resume the conversation
4048 4106
4049Claude Code가 [`claude --resume` 선택기](https://code.claude.com/docs/ko/sessions#use-the-session-picker)에서 선택한 세션의 저장된 트랜스크립트를 읽거나 처리할 수 없어, 부분적으로 로드된 상태로 계속하는 대신 프로세스를 종료합니다. 메시지에는 재시도할 명령이 포함됩니다:4107Claude Code가 [`claude --resume` 선택기](https://code.claude.com/docs/ko/sessions#use-the-session-picker)에서 선택한 세션의 저장된 트랜스크립트를 읽거나 처리할 수 없으므로, 부분적으로 로드된 상태로 계속하는 대신 프로세스를 종료합니다. 메시지에는 재시도할 명령이 포함됩니다.
4050 4108
4051```text theme={null}4109```text theme={null}
4052Failed to resume the conversation.4110Failed to resume the conversation.
4053Run claude --resume <session-id> to retry, or claude to start a new session.4111Run claude --resume <session-id> to retry, or claude to start a new session.
4054```4112```
4055 4113
4056Claude Code는 메시지를 표시한 후 코드 1로 종료합니다. 실행 중인 세션 내의 `/resume` 선택기는 대신 대화에 `Failed to resume conversation`을 보고하며, 현재 세션은 계속 실행됩니다. v2.1.216 이전에는 `claude --resume` 선택기에서 재개가 실패하면 이 메시지를 표시하는 대신 `Resuming conversation…` 스피너에 무기한 머물렀습니다.4114Claude Code는 메시지를 표시한 후 코드 1로 종료합니다. 실행 중인 세션 내부의 `/resume` 선택기에서는 대신 대화에 `Failed to resume conversation`이 표시되며, 현재 세션은 계속 실행됩니다. v2.1.216 이전에는 `claude --resume` 선택기에서 재개에 실패하면 이 메시지를 표시하는 대신 `Resuming conversation…` 스피너가 무한히 표시되었습니다.
4057 4115
4058**해결 방법:**4116**해결 방법:**
4059 4117
4060* 메시지의 세션 ID로 `claude --resume <session-id>`를 실행하여 재시도합니다4118* 메시지에 있는 세션 ID로 `claude --resume <session-id>`를 실행하여 재시도합니다
4061* v2.1.285 이전 버전에서 재시도가 같은 방식으로 실패하면 `claude update`를 실행하고 다시 재개합니다. 해당 버전은 저장된 트랜스크립트에 읽을 수 없는 항목이 포함되어 있으면 재개에 실패합니다.4119* v2.1.285 이전 버전에서 재시도가 같은 방식으로 실패하면 `claude update`를 실행하고 다시 재개합니다. 해당 버전들은 저장된 트랜스크립트에 읽을 수 없는 항목이 있으면 재개에 실패합니다.
4062* 재시도가 다시 실패하면 `claude`를 실행하여 새 세션을 시작합니다4120* 재시도가 다시 실패하면 `claude`를 실행하여 새 세션을 시작합니다
4063 4121
4064### No conversation found with the session ID4122### No conversation found with the session ID
4065 4123
4066`claude --resume <session-id>`에 세션 ID를 전달했지만 일치하는 저장된 트랜스크립트가 없습니다:4124`claude --resume <session-id>`에 세션 ID를 전달했지만 일치하는 저장된 트랜스크립트가 없습니다.
4067 4125
4068```text theme={null}4126```text theme={null}
4069No conversation found with session ID: <session-id>4127No conversation found with session ID: <session-id>
4070```4128```
4071 4129
4072Claude Code는 메시지를 표시한 후 코드 1로 종료합니다. Claude Code는 [현재 프로젝트를 먼저 검색한 다음 이 머신의 다른 모든 프로젝트](https://code.claude.com/docs/ko/sessions.md#where-the-session-picker-looks)에서 ID를 검색합니다. v2.1.223 이전에는 현재 프로젝트 디렉터리와 해당 git worktree에서만 검색했으므로, 세션이 마지막으로 작업한 디렉터리에서 재개해야 했습니다.4130Claude Code는 메시지를 표시한 후 코드 1로 종료합니다. Claude Code는 [현재 프로젝트를 먼저 검색한 다음, 이 머신의 다른 모든 프로젝트](https://code.claude.com/docs/ko/sessions.md#where-the-session-picker-looks)에서 해당 ID를 검색합니다. v2.1.223 이전에는 현재 프로젝트 디렉터리와 그 git worktree까지만 검색했으므로, 세션이 마지막으로 작업한 디렉터리에서 재개해야 했습니다.
4073 4131
4074일반적인 원인:4132일반적인 원인:
4075 4133
4076* **잘못 입력한 ID**: 비대화형 실행의 경우 ID는 [`--output-format json` 출력](https://code.claude.com/docs/ko/headless#get-structured-output)의 `session_id` 필드입니다4134* **잘못 입력한 ID**: 비대화형 실행의 경우 ID는 [`--output-format json` 출력](https://code.claude.com/docs/ko/headless#get-structured-output)의 `session_id` 필드입니다
4077* **삭제된 트랜스크립트**: Claude Code는 [보존 정리 규칙](https://code.claude.com/docs/ko/claude-directory.md#cleaned-up-automatically)에 따라 [보존 기간](https://code.claude.com/docs/ko/sessions.md#where-transcripts-are-stored)(기본값 30일)이 지나면 트랜스크립트를 제거합니다4135* **삭제된 트랜스크립트**: Claude Code는 [보존 정리 규칙](https://code.claude.com/docs/ko/claude-directory.md#cleaned-up-automatically)에 따라 [보존 기간](https://code.claude.com/docs/ko/sessions.md#where-transcripts-are-stored)(기본값 30일)이 지난 트랜스크립트를 제거합니다
4078* **다른 머신**: Claude Code는 트랜스크립트를 로컬에 저장하므로, 세션이 실행된 머신에서 재개해야 합니다4136* **다른 머신**: Claude Code는 트랜스크립트를 로컬에 저장하므로, 세션이 실행된 머신에서 재개해야 합니다
4079* **중복 사본**: `~/.claude/projects` 아래의 프로젝트 디렉터리를 복사하여 두 트랜스크립트가 같은 ID를 가지게 된 경우, Claude Code는 임의로 한 사본을 재개하지 않고 이 메시지를 보고합니다4137* **중복 사본**: `~/.claude/projects` 아래의 프로젝트 디렉터리를 복사하여 두 트랜스크립트가 같은 ID를 갖게 된 경우, Claude Code는 임의로 한 사본을 재개하는 대신 이 메시지를 표시합니다
4080 4138
4081**해결 방법:**4139**해결 방법:**
4082 4140
4085 4143
4086### Windows reported an error (EBADF) when Claude Code read this session's transcript file4144### Windows reported an error (EBADF) when Claude Code read this session's transcript file
4087 4145
4088Windows에서 세션을 재개했는데, 저장된 [트랜스크립트 파일](https://code.claude.com/docs/ko/sessions.md#where-transcripts-are-stored)이 정상적으로 열린 후 읽기가 시스템 오류 EBADF로 실패했습니다. 시스템 오류는 읽기가 실패한 이유를 알려주지 않으므로, 메시지는 가능성 있는 원인과 시도해 볼 방법을 제안합니다:4146Windows에서 세션을 재개했는데, 저장된 [트랜스크립트 파일](https://code.claude.com/docs/ko/sessions.md#where-transcripts-are-stored)은 정상적으로 열렸지만 이후 읽기가 시스템 오류 EBADF로 실패했습니다. 시스템 오류만으로는 읽기가 실패한 이유를 알 수 없으므로, 메시지는 가능성 있는 원인과 시도해 볼 방법을 제안합니다.
4089 4147
4090```text theme={null}4148```text theme={null}
4091Windows reported an error (EBADF) when Claude Code read this session's transcript file, although the file had opened normally. This can happen when other software intercepts file reads — security, encryption or endpoint-management tools, for example. If it keeps happening for this conversation, try excluding the folder that holds Claude Code's session transcripts from such software (the .claude folder in your user profile, unless the app or CLAUDE_CONFIG_DIR points Claude Code elsewhere), or adding Claude Code to its allowed applications, then resume again.4149Windows reported an error (EBADF) when Claude Code read this session's transcript file, although the file had opened normally. This can happen when other software intercepts file reads — security, encryption or endpoint-management tools, for example. If it keeps happening for this conversation, try excluding the folder that holds Claude Code's session transcripts from such software (the .claude folder in your user profile, unless the app or CLAUDE_CONFIG_DIR points Claude Code elsewhere), or adding Claude Code to its allowed applications, then resume again.
4092```4150```
4093 4151
4094이 메시지는 `Failed to resume session <session-id>`와 같은 명령 자체의 실패 줄 뒤에 표시됩니다. `claude --resume` 또는 [`claude -p`](https://code.claude.com/docs/ko/headless) 명령은 메시지를 표시한 후 코드 1로 종료합니다. 세션 내에서 `/resume`을 실행한 경우에는 현재 세션이 계속 실행됩니다.4152이 메시지는 `Failed to resume session <session-id>`처럼 명령 자체의 실패 줄 다음에 표시됩니다. `claude --resume` 또는 [`claude -p`](https://code.claude.com/docs/ko/headless) 명령은 메시지를 표시한 후 코드 1로 종료합니다. 세션 내부에서 `/resume`을 실행한 경우에는 현재 세션이 계속 실행됩니다.
4095 4153
4096**해결 방법:**4154**해결 방법:**
4097 4155
4098* 보안, 암호화, 엔드포인트 관리 도구처럼 파일 읽기를 검사하거나 가로채는 소프트웨어에서 세션 트랜스크립트가 저장된 폴더를 제외합니다. 트랜스크립트는 기본적으로 `%USERPROFILE%\.claude\projects` 아래에 있거나, [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/ko/env-vars)가 지정하는 디렉터리 아래에 있습니다4156* 보안, 암호화, 엔드포인트 관리 도구처럼 파일 읽기를 검사하거나 가로채는 소프트웨어에서 세션 트랜스크립트가 있는 폴더를 제외합니다. 트랜스크립트는 기본적으로 `%USERPROFILE%\.claude\projects` 아래에 있으며, [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/ko/env-vars)이 지정된 경우 해당 디렉터리 아래에 있습니다
4099* 제외 항목을 추가할 수 없다면, 대신 해당 소프트웨어의 허용된 애플리케이션에 Claude Code를 추가합니다4157* 제외 항목을 추가할 수 없다면 대신 해당 소프트웨어의 허용된 애플리케이션에 Claude Code를 추가합니다
4100* 세션을 다시 재개합니다4158* 세션을 다시 재개합니다
4101 4159
4102v2.1.282 이전에는 실패에 대한 설명이 없었습니다. `claude --resume <session-id>`는 `Failed to resume session <session-id>`에서 끝났고, `-p` 실행은 `Failed to resume session: EBADF: bad file descriptor, read`와 같은 시스템 오류 텍스트만 출력했습니다.4160v2.1.282 이전에는 실패에 대한 설명이 없었습니다. `claude --resume <session-id>`는 `Failed to resume session <session-id>`에서 끝났고, `-p` 실행은 `Failed to resume session: EBADF: bad file descriptor, read`처럼 시스템 오류 텍스트만 출력했습니다.
4103 4161
4104### Cannot switch renderers in this session4162### Cannot switch renderers in this session
4105 4163
4106렌더러를 전환하면 Claude Code는 프로세스를 다시 시작합니다. Claude Code가 다시 시작하기를 거부하는 세션에서 [`/tui`](https://code.claude.com/docs/ko/fullscreen#enable-fullscreen-rendering)를 실행했으므로, 전환하지 않으며 아무것도 저장하지 않습니다. 표시되는 메시지로 원인을 알 수 있습니다:4164렌더러를 전환하면 Claude Code가 프로세스를 다시 시작합니다. Claude Code가 다시 시작하지 않기로 한 세션에서 [`/tui`](https://code.claude.com/docs/ko/fullscreen#enable-fullscreen-rendering)를 실행했으므로, 전환하지 않고 아무것도 저장하지 않습니다. 표시되는 메시지로 원인을 알 수 있습니다.
4107 4165
4108* `Cannot switch renderers while work is running in the background`: 백그라운드 셸이나 서브에이전트처럼 다시 시작하면 중단될 백그라운드 작업이 실행 중입니다. 작업이 끝날 때까지 기다리거나 [`/tasks`](https://code.claude.com/docs/ko/commands)로 중지한 다음 `/tui fullscreen` 또는 `/tui default`를 다시 실행합니다4166* `Cannot switch renderers while work is running in the background`: 백그라운드 셸이나 서브에이전트처럼 다시 시작하면 중단될 백그라운드 작업이 실행 중입니다. 작업이 끝날 때까지 기다리거나 [`/tasks`](https://code.claude.com/docs/ko/commands)로 작업을 중지한 다음 `/tui fullscreen` 또는 `/tui default`를 다시 실행합니다
4109* `Cannot switch renderers in this session`: 세션에 Claude Code가 다시 시작된 프로세스로 전달할 수 없는 제한이 있습니다. v2.1.234 이전에는 Claude Code가 그래도 다시 시작했고, 다시 실행된 세션은 해당 제한 없이 실행되었습니다4167* `Cannot switch renderers in this session`: 세션에 Claude Code가 다시 시작된 프로세스로 전달할 수 없는 제한이 있습니다. v2.1.234 이전에는 Claude Code가 그래도 다시 시작했고, 다시 실행된 세션은 해당 제한 없이 실행되었습니다
4110 4168
4111제한 관련 메시지에서 괄호 안의 부분은 Claude Code가 발견한 제한을 나타냅니다:4169제한 관련 메시지에서 괄호 안의 부분은 Claude Code가 발견한 제한을 나타냅니다.
4112 4170
4113```text theme={null}4171```text theme={null}
4114Cannot switch renderers in this session — it has restrictions a restart can't carry over (permission rules set for this session only). Nothing was changed. Running /tui fullscreen in a session started without them switches every later session too.4172Cannot switch renderers in this session — it has restrictions a restart can't carry over (permission rules set for this session only). Nothing was changed. Running /tui fullscreen in a session started without them switches every later session too.
4115```4173```
4116 4174
4117메시지의 괄호 안에 표시될 수 있는 각 이유:4175메시지의 괄호 안에 표시될 수 있는 각 이유는 다음과 같습니다.
4118 4176
4119* `launch flags: a custom system prompt, a tool allowlist, or restricted settings`: Claude Code가 다시 시작된 프로세스로 다시 전달하지 않는 플래그로 세션을 시작했습니다. 이러한 플래그에는 [`--system-prompt`](https://code.claude.com/docs/ko/cli-reference#cli-flags), `--system-prompt-file`, `--append-system-prompt-file`, [`--tools`](https://code.claude.com/docs/ko/cli-reference#cli-flags) 허용 목록, [`--setting-sources`](https://code.claude.com/docs/ko/cli-reference#cli-flags), [`--permission-prompt-tool`](https://code.claude.com/docs/ko/cli-reference#cli-flags)이 포함됩니다4177* `launch flags: a custom system prompt, a tool allowlist, or restricted settings`: Claude Code가 다시 시작된 프로세스로 전달하지 않는 플래그로 세션을 시작했습니다. 이러한 플래그에는 [`--system-prompt`](https://code.claude.com/docs/ko/cli-reference#cli-flags), `--system-prompt-file`, `--append-system-prompt-file`, [`--tools`](https://code.claude.com/docs/ko/cli-reference#cli-flags) 허용 목록, [`--setting-sources`](https://code.claude.com/docs/ko/cli-reference#cli-flags), [`--permission-prompt-tool`](https://code.claude.com/docs/ko/cli-reference#cli-flags)이 포함됩니다
4120* `permission rules set for this session only`: 훅이나 SDK 호출자의 [권한 업데이트](https://code.claude.com/docs/ko/hooks.md#permission-update-entries)가 `session` 대상으로 거부 또는 확인 규칙을 추가했습니다. 세션 범위의 허용 규칙은 거부를 유발하지 않습니다. 다시 시작하면 허용 규칙이 사라지고, Claude Code가 대신 다시 확인을 요청합니다4178* `permission rules set for this session only`: 훅 또는 SDK 호출자의 [권한 업데이트](https://code.claude.com/docs/ko/hooks.md#permission-update-entries)가 `session` 대상으로 거부 또는 확인 규칙을 추가했습니다. 세션 범위의 허용 규칙은 거부를 유발하지 않습니다. 다시 시작하면 허용 규칙은 삭제되고, Claude Code가 대신 다시 확인을 요청합니다
4121* `ask-before-running rules with no command-line form`: 훅이나 SDK 호출자의 권한 업데이트가 Claude Code가 `--allowed-tools` 및 `--disallowed-tools`로 다시 전달하는 규칙과 함께 확인 규칙을 추가했습니다. 확인 규칙에 해당하는 플래그는 없습니다4179* `ask-before-running rules with no command-line form`: 훅 또는 SDK 호출자의 권한 업데이트가 Claude Code가 `--allowed-tools` 및 `--disallowed-tools`로 다시 전달하는 규칙과 함께 확인 규칙을 추가했습니다. 확인 규칙에 해당하는 플래그는 없습니다
4122* `permission rules a command line cannot carry intact` 및 `added directories a command line cannot carry intact`: 권한 업데이트가 세션 도중에 규칙 또는 디렉터리 경로를 추가했습니다. 다시 시작된 프로세스의 명령줄은 해당 텍스트를 같은 값으로 전달할 수 없습니다4180* `permission rules a command line cannot carry intact` 및 `added directories a command line cannot carry intact`: 권한 업데이트가 세션 도중에 규칙 또는 디렉터리 경로를 추가했습니다. 다시 시작된 프로세스의 명령줄은 해당 텍스트를 동일한 값으로 전달할 수 없습니다
4123 4181
4124**해결 방법:**4182**해결 방법:**
4125 4183
4126* 이러한 제한 없이 시작된 세션에서 `/tui fullscreen`을 실행하거나, 다시 전환하려면 `/tui default`를 실행합니다. Claude Code는 해당 세션에서 [`tui` 설정](https://code.claude.com/docs/ko/settings-reference#tui)을 저장합니다4184* 해당 제한 없이 시작한 세션에서 `/tui fullscreen`을 실행하거나, 되돌리려면 `/tui default`를 실행합니다. Claude Code는 그 세션에서 [`tui` 설정](https://code.claude.com/docs/ko/settings-reference#tui)을 저장합니다
4127 4185
4128### Can't restart while work is running or Remote Control is connected4186### Can't restart while work is running or Remote Control is connected
4129 4187
4130Claude Code가 다시 시작되지 않았으며, 세션은 그대로 계속 실행됩니다. 메시지에 있는 해결 방법을 따르십시오.4188Claude Code가 다시 시작되지 않았으며, 세션은 그대로 계속 실행됩니다. 메시지에 있는 해결 방법을 따릅니다.
4131 4189
4132### Claude Code couldn't restart4190### Claude Code couldn't restart
4133 4191
4134이 메시지에 대화가 저장되었다고 표시되면, 대화는 디스크에 있으며 중단된 지점부터 이어서 진행할 수 있습니다. Claude Code가 예를 들어 [`/tui`](https://code.claude.com/docs/ko/fullscreen#enable-fullscreen-rendering)를 실행한 후 전체 화면 렌더링으로 전환하거나 해제하기 위해 스스로 다시 시작하던 중 새 프로세스를 시작하지 못하여 상태 1로 종료했습니다:4192이 메시지에 대화가 저장되었다고 표시되면, 대화는 디스크에 있으며 중단된 지점부터 이어서 진행할 수 있습니다. Claude Code가 예를 들어 [`/tui`](https://code.claude.com/docs/ko/fullscreen#enable-fullscreen-rendering) 실행 후 전체 화면 렌더링으로 전환하거나 전환을 해제하기 위해 스스로 다시 시작하던 중 새 프로세스를 시작하지 못해 상태 1로 종료했습니다.
4135 4193
4136```text theme={null}4194```text theme={null}
4137Claude Code couldn't restart. Your conversation is saved. Start Claude Code again and run /resume to pick it up.4195Claude Code couldn't restart. Your conversation is saved. Start Claude Code again and run /resume to pick it up.
4138```4196```
4139 4197
4140예를 들어 `/tui`가 새 세션의 첫 입력이었기 때문에 다시 시작할 때 다시 열 대화가 없었던 경우, 메시지는 `Claude Code couldn't restart. Start Claude Code again.`입니다.4198예를 들어 `/tui`가 새 세션의 첫 입력이어서 다시 시작할 때 다시 열 대화가 없었던 경우, 메시지는 `Claude Code couldn't restart. Start Claude Code again.`입니다.
4141 4199
4142**해결 방법:**4200**해결 방법:**
4143 4201
4144* 셸에서 `claude`를 다시 실행합니다. 메시지에 대화가 저장되었다고 표시되었다면, 새 세션에서 [`/resume`](https://code.claude.com/docs/ko/sessions#resume-a-session)을 실행하고 대화를 선택합니다. 목록에 없다면 [세션 선택기의 범위를 넓힙니다](https://code.claude.com/docs/ko/sessions.md#where-the-session-picker-looks)4202* 셸에서 `claude`를 다시 실행합니다. 메시지에 대화가 저장되었다고 표시되었다면 새 세션에서 [`/resume`](https://code.claude.com/docs/ko/sessions#resume-a-session)을 실행하고 대화를 선택합니다. 목록에 없다면 [세션 선택기의 범위를 넓힙니다](https://code.claude.com/docs/ko/sessions.md#where-the-session-picker-looks)
4145* 다시 시작이 계속 실패하면 셸에서 [`claude --debug-file claude-debug.log`](https://code.claude.com/docs/ko/cli-reference#cli-flags)로 Claude Code를 시작합니다. 해당 세션에서 다시 시작이 실패하면, 시작한 디렉터리의 `claude-debug.log`에 운영 체제의 오류가 포함된 `Failed to relaunch:` 줄이 기록됩니다. [문제를 보고](#report-an-error)할 때 해당 줄을 포함하십시오4203* 다시 시작이 계속 실패하면 셸에서 [`claude --debug-file claude-debug.log`](https://code.claude.com/docs/ko/cli-reference#cli-flags)로 Claude Code를 시작합니다. 해당 세션에서 다시 시작이 실패하면, 시작한 디렉터리의 `claude-debug.log`에 운영 체제의 오류와 함께 `Failed to relaunch:` 줄이 기록됩니다. [문제를 보고](#report-an-error)할 때 해당 줄을 포함합니다
4146 4204
4147### Couldn't open Claude Desktop4205### Couldn't open Claude Desktop
4148 4206
4149세션에서 [`/desktop`](https://code.claude.com/docs/ko/desktop#coming-from-the-cli) 또는 그 별칭인 `/app`을 실행했거나 셸에서 [`claude --desktop`](https://code.claude.com/docs/ko/cli-reference#cli-flags)을 실행했는데, Claude Code가 Claude Desktop을 여는 데 사용하는 시스템 명령이 실패했습니다. `/desktop` 후에는 세션이 터미널에 그대로 유지됩니다. `claude --desktop`은 `Error:` 접두사 없이 메시지를 출력하고 상태 1로 종료합니다.4207세션에서 [`/desktop`](https://code.claude.com/docs/ko/desktop#coming-from-the-cli) 또는 그 별칭인 `/app`을 실행했거나 셸에서 [`claude --desktop`](https://code.claude.com/docs/ko/cli-reference#cli-flags)을 실행했는데, Claude Code가 Claude Desktop을 여는 데 사용하는 시스템 명령이 실패했습니다. `/desktop` 실행 후에는 세션이 터미널에 그대로 남으며, `claude --desktop`은 `Error:` 접두사 없이 메시지를 출력하고 상태 1로 종료합니다.
4150 4208
4151괄호 안의 텍스트는 실패한 명령을 나타내며, 종료 상태와 오류 출력의 첫 줄이 있는 경우 함께 표시됩니다. macOS에서는 이 예시처럼 해당 명령이 `open`이며, Windows에서는 `rundll32`입니다:4209괄호 안의 텍스트는 실패한 명령을 나타내며, 종료 상태와 오류 출력의 첫 줄이 있는 경우 함께 표시됩니다. macOS에서는 이 예시처럼 해당 명령이 `open`이며, Windows에서는 `rundll32`입니다.
4152 4210
4153```text theme={null}4211```text theme={null}
4154Error: Couldn't open Claude Desktop (`open` exited 1: LSOpenURLsWithRole() failed for the URL claude://resume?session=<session-id> with error -10814). Open Claude Desktop and try again.4212Error: Couldn't open Claude Desktop (`open` exited 1: LSOpenURLsWithRole() failed for the URL claude://resume?session=<session-id> with error -10814). Open Claude Desktop and try again.
4161 4219
4162v2.1.285 이전에는 메시지가 `Open Claude Desktop and run /desktop again.`으로 끝났습니다. v2.1.275 이전에는 메시지가 `Failed to open Claude Desktop. Please try opening it manually.`였으며 무엇이 실패했는지 알려주지 않았습니다.4220v2.1.285 이전에는 메시지가 `Open Claude Desktop and run /desktop again.`으로 끝났습니다. v2.1.275 이전에는 메시지가 `Failed to open Claude Desktop. Please try opening it manually.`였으며 무엇이 실패했는지 알려주지 않았습니다.
4163 4221
4164### /terminal-setup left your Zed keymap unchanged4222### /terminal-setup이 Zed 키맵을 변경하지 않음
4165 4223
4166Zed에서 [`/terminal-setup`](https://code.claude.com/docs/ko/terminal-config#enter-multiline-prompts)을 실행했는데, Claude Code가 Zed `keymap.json` 업데이트를 완료할 수 없어 파일을 그대로 두었습니다.4224Zed에서 [`/terminal-setup`](https://code.claude.com/docs/ko/terminal-config#enter-multiline-prompts)을 실행했는데, Claude Code가 Zed `keymap.json` 업데이트를 완료하지 못해 파일을 그대로 두었습니다.
4167 4225
4168각 메시지에는 키맵 경로가 표시되며, 직접 추가할 키보드 단축키 블록으로 끝납니다:4226각 메시지에는 키맵 경로가 표시되며, 직접 추가할 키보드 단축키 블록으로 끝납니다.
4169 4227
4170```text theme={null}4228```text theme={null}
4171Couldn't update your Zed keymap, so it was left unchanged.4229Couldn't update your Zed keymap, so it was left unchanged.
4173{ "context": "Terminal", "bindings": { "shift-enter": ["terminal::SendText", "\u001b\r"] } }4231{ "context": "Terminal", "bindings": { "shift-enter": ["terminal::SendText", "\u001b\r"] } }
4174```4232```
4175 4233
4176메시지의 첫 줄에 원인이 표시됩니다:4234메시지의 첫 줄은 원인을 나타냅니다.
4177 4235
4178* `Couldn't read your Zed keymap, so it was left unchanged.`: 파일 권한 등의 이유로 Claude Code가 파일을 읽을 수 없었습니다4236* `Couldn't read your Zed keymap, so it was left unchanged.`: 파일 권한 등의 이유로 Claude Code가 파일을 읽을 수 없었습니다
4179* `Your Zed keymap isn't a readable list of keybindings, so it was left unchanged.`: 파일은 정상적으로 읽었지만, `//` 주석과 후행 쉼표를 허용하더라도 키보드 단축키 블록의 배열로 파싱되지 않습니다4237* `Your Zed keymap isn't a readable list of keybindings, so it was left unchanged.`: 파일은 정상적으로 읽었지만, `//` 주석과 후행 쉼표를 허용하더라도 키보드 단축키 블록의 배열로 파싱되지 않습니다
4180* `Couldn't back up your Zed keymap; not modifying it.`: Claude Code가 파일을 옆에 있는 `.bak` 백업으로 복사할 수 없었으므로 아무것도 변경하지 않았습니다4238* `Couldn't back up your Zed keymap; not modifying it.`: Claude Code가 파일을 옆에 `.bak` 백업으로 복사할 수 없어 아무것도 변경하지 않았습니다
4181* `Couldn't update your Zed keymap, so it was left unchanged.`: 병합된 결과가 해당 단축키를 포함한 유효한 키맵으로 확인되지 않아, Claude Code가 쓰지 않고 폐기했습니다. 중복된 키가 있는 키보드 단축키 블록이 원인일 수 있습니다4239* `Couldn't update your Zed keymap, so it was left unchanged.`: 병합된 결과가 해당 단축키를 포함한 유효한 키맵으로 검증되지 않아, Claude Code가 쓰지 않고 폐기했습니다. 키가 중복된 키보드 단축키 블록이 원인일 수 있습니다
4182 4240
4183**해결 방법:**4241**해결 방법:**
4184 4242
4185* 메시지에 있는 블록을 복사하여 메시지에 표시된 경로의 `keymap.json` 최상위 배열에 추가합니다4243* 메시지의 블록을 복사하여 메시지에 표시된 경로의 `keymap.json` 최상위 배열에 넣습니다
4186* `isn't a readable list of keybindings`의 경우 구문 오류를 수정하거나 파일의 최상위 값을 배열로 만든 다음 `/terminal-setup`을 다시 실행합니다4244* `isn't a readable list of keybindings`의 경우 구문 오류를 수정하거나 파일의 최상위 값을 배열로 만든 다음 `/terminal-setup`을 다시 실행합니다
4187 4245
4188v2.1.247 이전에는 `/terminal-setup`이 `//` 주석이나 후행 쉼표를 사용하는 Zed 키맵을 파싱할 수 없었으며, 전체 파일을 자체 단축키만 포함하도록 교체하면서 단축키가 설치되었다고 보고했습니다. 이전 버전이 교체한 키맵을 복원하려면 [여러 줄 프롬프트 입력](https://code.claude.com/docs/ko/terminal-config.md#enter-multiline-prompts)에 설명된 `.bak` 백업 파일을 사용하십시오.4246v2.1.247 이전에는 `/terminal-setup`이 `//` 주석이나 후행 쉼표를 사용하는 Zed 키맵을 파싱할 수 없었으며, 단축키가 설치되었다고 보고하면서 전체 파일을 자체 단축키만으로 교체했습니다. 이전 버전이 교체한 키맵을 복원하려면 [여러 줄 프롬프트 입력](https://code.claude.com/docs/ko/terminal-config.md#enter-multiline-prompts)에 설명된 `.bak` 백업 파일을 사용합니다.
4189 4247
4190### Skill usage reports are not available on this connection4248### Skill usage reports are not available on this connection
4191 4249
4192휴대폰이나 브라우저에서 [Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 통해 [`/skill-doctor`](https://code.claude.com/docs/ko/skills#find-unused-skills)를 실행했습니다. Claude Code는 Remote Control을 통해 스킬 사용 보고서를 보내지 않으며, 대신 다음 메시지로 응답합니다:4250휴대폰이나 브라우저에서 [Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 통해 [`/skill-doctor`](https://code.claude.com/docs/ko/skills#find-unused-skills)를 실행했습니다. Claude Code는 Remote Control을 통해 스킬 사용 보고서를 보내지 않으며, 대신 다음 메시지로 응답합니다.
4193 4251
4194```text theme={null}4252```text theme={null}
4195Skill usage reports are not available on this connection.4253Skill usage reports are not available on this connection.
4201 4259
4202### Custom output styles can't be selected over Remote Control4260### Custom output styles can't be selected over Remote Control
4203 4261
4204[Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 통해 모바일 앱이나 웹에서 [`/output-style`](https://code.claude.com/docs/ko/output-styles#change-your-output-style)을 실행했거나, 세션으로 전달된 메시지에 해당 명령이 포함되어 있었습니다. 이러한 턴은 계정 소유자에게서 온 것이 아닐 수 있으므로, Claude Code는 해당 턴에서 [기본 제공 스타일](https://code.claude.com/docs/ko/output-styles.md#built-in-output-styles)만 나열하고 선택하며, 명령이 스타일을 나열하거나 입력한 이름을 인식하지 못할 때마다 이 안내를 추가합니다. [사용자 지정 스타일](https://code.claude.com/docs/ko/output-styles.md#create-a-custom-output-style) 이름에는 존재하지 않는 이름과 같은 응답이 표시됩니다:4262[Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 통해 모바일 앱이나 웹에서 [`/output-style`](https://code.claude.com/docs/ko/output-styles#change-your-output-style)을 실행했거나, 세션으로 릴레이된 메시지에 명령이 포함되어 있었습니다. 이러한 턴은 계정 소유자가 보낸 것이 아닐 수 있으므로, Claude Code는 해당 턴에서 [기본 제공 스타일](https://code.claude.com/docs/ko/output-styles.md#built-in-output-styles)만 나열하고 선택하며, 명령이 스타일을 나열하거나 지정한 이름을 인식하지 못할 때마다 이 안내를 덧붙입니다. [사용자 지정 스타일](https://code.claude.com/docs/ko/output-styles.md#create-a-custom-output-style) 이름에는 존재하지 않는 이름과 같은 응답이 표시됩니다.
4205 4263
4206```text theme={null}4264```text theme={null}
4207Custom output styles can't be selected over Remote Control or from a relayed message. Select one in the session itself, or pick a built-in style here.4265Custom output styles can't be selected over Remote Control or from a relayed message. Select one in the session itself, or pick a built-in style here.
4209 4267
4210**해결 방법:**4268**해결 방법:**
4211 4269
4212* 기본 제공 스타일을 선택합니다. 예: `/output-style concise`4270* `/output-style concise`처럼 기본 제공 스타일을 선택합니다
4213* 사용자 지정 스타일을 사용하려면 프로젝트의 `.claude/settings.local.json`에서 [`outputStyle`](https://code.claude.com/docs/ko/settings-reference#outputstyle)을 설정하거나, 세션 자체 터미널이 있는 경우 해당 터미널에서 `/output-style <style>`을 실행합니다4271* 사용자 지정 스타일을 사용하려면 프로젝트의 `.claude/settings.local.json`에서 [`outputStyle`](https://code.claude.com/docs/ko/settings-reference#outputstyle)을 설정하거나, 세션 자체의 터미널이 있다면 그곳에서 `/output-style <style>`을 실행합니다
4214 4272
4215### Output styles are saved to local settings which this session doesn't load4273### Output styles are saved to local settings which this session doesn't load
4216 4274
4217설정 소스에서 `local`이 제외된 세션에서 `/output-style <style>` 또는 `/config outputStyle=<style>`로 [출력 스타일](https://code.claude.com/docs/ko/output-styles.md)을 전환하려고 했습니다. 예를 들어 [`settingSources`](https://code.claude.com/docs/ko/agent-sdk/typescript#options)에서 `"local"`이 빠진 [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/typescript.md) 세션이나, `local`이 빠진 [`--setting-sources`](https://code.claude.com/docs/ko/cli-reference#cli-flags) 값으로 시작한 CLI 세션이 있습니다. 두 명령 모두 스타일을 `.claude/settings.local.json`에 저장하는데, 이러한 세션은 이 파일을 다시 읽지 않으므로 Claude Code는 효과가 없을 설정을 쓰는 대신 거부합니다:4275설정 소스에서 `local`을 제외한 세션에서 `/output-style <style>` 또는 `/config outputStyle=<style>`로 [출력 스타일](https://code.claude.com/docs/ko/output-styles.md)을 전환하려고 했습니다. 예를 들어 [`settingSources`](https://code.claude.com/docs/ko/agent-sdk/typescript#options)에서 `"local"`을 제외한 [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/typescript.md) 세션이나, `local`을 제외한 [`--setting-sources`](https://code.claude.com/docs/ko/cli-reference#cli-flags) 값으로 시작한 CLI 세션이 있습니다. 두 명령 모두 스타일을 `.claude/settings.local.json`에 저장하는데, 이러한 세션은 이 파일을 다시 읽지 않으므로 Claude Code는 아무 효과가 없을 설정을 쓰는 대신 거부합니다.
4218 4276
4219```text theme={null}4277```text theme={null}
4220Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load, so the style can't be changed here.4278Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load, so the style can't be changed here.
4223**해결 방법:**4281**해결 방법:**
4224 4282
4225* 세션의 설정 소스에 `local`을 추가하고 다시 전환합니다4283* 세션의 설정 소스에 `local`을 추가하고 다시 전환합니다
4226* 프로젝트의 `.claude/settings.json`이나 `~/.claude/settings.json`처럼 세션이 로드하는 설정 파일에서 [`outputStyle`](https://code.claude.com/docs/ko/settings-reference#outputstyle) 키를 설정합니다. TypeScript SDK에서는 대신 인라인 `settings` 객체 안에서 `outputStyle`을 설정합니다. [출력 스타일 활성화](https://code.claude.com/docs/ko/agent-sdk/modifying-system-prompts.md#activate-an-output-style)를 참조하십시오4284* 프로젝트의 `.claude/settings.json` 또는 `~/.claude/settings.json`처럼 세션이 로드하는 설정 파일에서 [`outputStyle`](https://code.claude.com/docs/ko/settings-reference#outputstyle) 키를 설정합니다. TypeScript SDK에서는 대신 인라인 `settings` 객체 안에 `outputStyle`을 설정합니다. [출력 스타일 활성화](https://code.claude.com/docs/ko/agent-sdk/modifying-system-prompts.md#activate-an-output-style)를 참조하세요
4227 4285
4228### /recap only runs when you ask for it yourself4286### /recap only runs when you ask for it yourself
4229 4287
4230[`/recap`](https://code.claude.com/docs/ko/interactive-mode#session-recap) 요청이 사용자 자신의 입력에서 온 것이 아닙니다. Slack, Teams 또는 [프로젝트](https://code.claude.com/docs/ko/claude-projects.md) 스레드에서 세션으로 전달된 메시지로 도착했거나, [클라우드 예약 작업](https://code.claude.com/docs/ko/routines.md)이나 다른 프로그램이 보낸 프롬프트로 도착했습니다.4288[`/recap`](https://code.claude.com/docs/ko/interactive-mode#session-recap) 요청이 사용자 본인의 입력에서 오지 않았습니다. Slack, Teams 또는 [프로젝트](https://code.claude.com/docs/ko/claude-projects.md) 스레드에서 세션으로 릴레이된 메시지나, [클라우드 예약 작업](https://code.claude.com/docs/ko/routines.md) 또는 다른 프로그램이 보낸 프롬프트에 포함되어 도착했습니다.
4231 4289
4232전달된 메시지는 사용자가 직접 작성한 경우에도 이 안내를 받습니다. Claude Code는 전달되거나 자동화된 메시지가 세션을 실행하는 계정의 소유자에게서 왔는지 판단할 수 없으므로, 요약 대신 이 안내로 응답합니다:4290릴레이된 메시지는 사용자가 직접 작성한 경우에도 이 안내를 받습니다. Claude Code는 릴레이되거나 자동화된 메시지가 세션을 실행하는 계정의 소유자에게서 왔는지 알 수 없으므로, 요약 대신 다음 안내로 응답합니다.
4233 4291
4234```text theme={null}4292```text theme={null}
4235/recap only runs when you ask for it yourself in this session: from the terminal, the Claude app or claude.ai/code, or over Remote Control. A message relayed from Slack, Teams or a project thread, or sent by a routine or another program, can't request it.4293/recap only runs when you ask for it yourself in this session: from the terminal, the Claude app or claude.ai/code, or over Remote Control. A message relayed from Slack, Teams or a project thread, or sent by a routine or another program, can't request it.
4236```4294```
4237 4295
4238`claude -p`에 전달하는 `/recap`이나, 자체 [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/overview.md) 애플리케이션이 자신이 시작한 세션에 보내는 `/recap`은 사용자 자신의 입력으로 간주됩니다.4296`claude -p`에 전달한 `/recap`이나, 사용자의 [Agent SDK](https://code.claude.com/docs/ko/agent-sdk/overview.md) 애플리케이션이 자신이 시작한 세션으로 보내는 `/recap`은 사용자 본인의 입력으로 간주됩니다.
4239 4297
4240**해결 방법:**4298**해결 방법:**
4241 4299
4242* 세션을 직접 열고 해당 세션의 터미널, [Desktop 앱](https://code.claude.com/docs/ko/desktop.md) 또는 [모바일 앱](https://code.claude.com/docs/ko/mobile.md), [claude.ai/code](https://claude.ai/code), 또는 [Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 통해 `/recap`을 실행합니다4300* 세션을 직접 열고 그곳에서 `/recap`을 실행합니다. 세션의 터미널, [Desktop 앱](https://code.claude.com/docs/ko/desktop.md) 또는 [모바일 앱](https://code.claude.com/docs/ko/mobile.md), [claude.ai/code](https://claude.ai/code), 또는 [Remote Control](https://code.claude.com/docs/ko/remote-control.md)을 통해 실행할 수 있습니다
4243* 클라우드 예약 작업이나 다른 프로그램이 보낸 경우 해당 프롬프트에서 `/recap`을 제거합니다4301* 클라우드 예약 작업이나 다른 프로그램이 보낸 경우 해당 프롬프트에서 `/recap`을 제거합니다
4244 4302
4245### /feedback is disabled by your organization's policy4303### /feedback is disabled by your organization's policy
4246 4304
4247이 메시지는 제품 피드백이 꺼져 있어 입력한 명령이 피드백 대화 상자를 열지 않는다는 의미입니다. 조직 정책과 이전 거부 모두 이 메시지를 발생시킵니다.4305이 메시지는 제품 피드백이 꺼져 있어 입력한 명령이 피드백 대화 상자를 열지 않는다는 뜻입니다. 조직의 정책과 이전의 거부 모두 이 메시지를 발생시킵니다.
4248 4306
4249* **조직 정책**: 조직 정책에서 Claude Code의 제품 피드백을 허용하지 않습니다. `/feedback`, `/bug`, `/share` 모두 이 메시지로 응답합니다.4307* **조직 정책**: 조직의 정책이 Claude Code에서의 제품 피드백을 허용하지 않습니다. `/feedback`, `/bug`, `/share` 모두 이 메시지로 응답합니다.
4250* **이전 거부**: 피드백 서비스가 [`Couldn't send feedback: Feedback has not been enabled for your organization.`](#couldnt-send-feedback) 등으로 보낸 보고서를 거부했습니다. 이후 `/feedback`과 `/bug`가 이 메시지로 응답할 수 있습니다. 이 상태는 이 컴퓨터에서 해당 거부 시점부터 7일간 유지됩니다. Pro 및 Max를 포함한 모든 플랜에 적용됩니다.4308* **이전의 거부**: 예를 들어 [`Couldn't send feedback: Feedback has not been enabled for your organization.`](#couldnt-send-feedback)처럼 피드백 서비스가 보낸 보고서를 거부했습니다. 이후 `/feedback`과 `/bug`가 이 메시지로 응답할 수 있습니다. 이 상태는 이 머신에서 해당 거부 시점부터 7일간 유지됩니다. 이는 Pro와 Max를 포함한 모든 요금제에 적용됩니다.
4251 4309
4252메시지에는 Claude Code 프롬프트에서 입력한 명령이 표시됩니다.4310메시지에는 Claude Code 프롬프트에서 입력한 명령이 표시됩니다.
4253 4311
4255/feedback is disabled by your organization's policy. To report a bug, open an issue at https://github.com/anthropics/claude-code/issues. Issues are public, so leave out anything confidential.4313/feedback is disabled by your organization's policy. To report a bug, open an issue at https://github.com/anthropics/claude-code/issues. Issues are public, so leave out anything confidential.
4256```4314```
4257 4315
4258메시지가 첫 번째 문장만으로 표시될 수도 있습니다.4316메시지가 첫 문장만으로 표시될 수도 있습니다.
4259 4317
4260**해결 방법:**4318**해결 방법:**
4261 4319
4262* 버그를 보고하려면 [github.com/anthropics/claude-code/issues](https://github.com/anthropics/claude-code/issues)에서 이슈를 엽니다. 이곳의 이슈는 누구나 읽을 수 있으므로 코드, 트랜스크립트 및 기타 기밀 정보는 포함하지 마십시오.4320* 버그를 보고하려면 [github.com/anthropics/claude-code/issues](https://github.com/anthropics/claude-code/issues)에서 이슈를 엽니다. 이곳의 이슈는 누구나 읽을 수 있으므로 코드, 트랜스크립트 및 기타 기밀 정보는 포함하지 않습니다.
4263* 이전 거부 후에는 7일이 지날 때까지 기다린 후, 보고서를 다시 보내 서비스가 여전히 거부하는지 확인합니다4321* 이전의 거부 이후라면 7일이 지날 때까지 기다린 다음 보고서를 다시 보내 서비스가 여전히 거부하는지 확인합니다
4264 4322
4265v2.1.319 이전에는 이전 거부가 이 메시지를 발생시키지 않았습니다.4323v2.1.319 이전에는 이전의 거부가 이 메시지를 발생시키지 않았습니다.
4266 4324
4267v2.1.302 이전에는 전체 메시지가 `/feedback is disabled by your organization's policy. Contact your organization admin to enable it.`였습니다.4325v2.1.302 이전에는 전체 메시지가 `/feedback is disabled by your organization's policy. Contact your organization admin to enable it.`였습니다.
4268 4326
4457* 메시지가 `EACCES`로 끝나면 경로가 지정하는 파일 또는 폴더로 이어지는 모든 디렉터리에 대한 실행 권한을 복원하십시오. 경로 위의 디렉터리를 확인한 다음 도달하는 각 심볼릭 링크를 따라가 그것이 가리키는 위치로 이어지는 디렉터리를 확인하십시오. 다른 오류 코드의 경우 [확인할 수 없는 경로의 원인 및 단계](#path-could-not-be-checked)에서 찾아보십시오.4515* 메시지가 `EACCES`로 끝나면 경로가 지정하는 파일 또는 폴더로 이어지는 모든 디렉터리에 대한 실행 권한을 복원하십시오. 경로 위의 디렉터리를 확인한 다음 도달하는 각 심볼릭 링크를 따라가 그것이 가리키는 위치로 이어지는 디렉터리를 확인하십시오. 다른 오류 코드의 경우 [확인할 수 없는 경로의 원인 및 단계](#path-could-not-be-checked)에서 찾아보십시오.
4458* 동일한 마켓플레이스의 다른 플러그인과 파일을 공유하려면 플러그인 디렉터리 내의 심볼릭 링크로 연결하고 [심볼릭 링크 규칙](https://code.claude.com/docs/ko/plugins/host-marketplace.md#share-files-within-a-marketplace-with-symlinks)을 따르십시오.4516* 동일한 마켓플레이스의 다른 플러그인과 파일을 공유하려면 플러그인 디렉터리 내의 심볼릭 링크로 연결하고 [심볼릭 링크 규칙](https://code.claude.com/docs/ko/plugins/host-marketplace.md#share-files-within-a-marketplace-with-symlinks)을 따르십시오.
4459 4517
4518### Server file path not read
4519
4520`path not read` 메시지는 Claude Code가 플러그인이 지정한 MCP 또는 LSP 서버 파일을 해당 파일의 경로 때문에 읽지 않았음을 의미합니다. 플러그인의 나머지 부분은 해당 파일이 정의하는 서버 없이 로드됩니다.
4521
4522다음 예와 같이 경로가 플러그인 내부에 머물러 있더라도 `..` 부분이 있으면 거부 대상이 됩니다:
4523
4524```text theme={null}
4525mcp-servers path not read: ./sub/../x.json is absolute or has a ".." part
4526```
4527
4528**수행할 작업:**
4529
4530* 플러그인을 설치했지만 유지 관리하지 않는 경우 메시지를 작성자에게 보고하십시오.
4531* 플러그인을 유지 관리하는 경우 서버 파일을 플러그인 디렉터리 내부에 두십시오. 매니페스트 또는 마켓플레이스 항목에서 `./`로 시작하고 `..`가 없는 경로로 지정하십시오. 예: `./servers/x.json`
4532* 동일한 마켓플레이스의 플러그인 간에 하나의 서버 파일을 공유하려면 [심볼릭 링크 규칙](https://code.claude.com/docs/ko/plugins/host-marketplace.md#share-files-within-a-marketplace-with-symlinks)에 따라 심볼릭 링크로 각 플러그인에 파일을 연결하십시오.
4533
4460### Plugin not loaded: its manifest was not read4534### Plugin not loaded: its manifest was not read
4461 4535
4462Claude Code는 `.claude-plugin/plugin.json`에 있는 마켓플레이스 플러그인의 [매니페스트](https://code.claude.com/docs/ko/plugins/manifest-reference.md)가 플러그인 내부에 있는지 확인할 수 없었으므로 해당 플러그인에서 아무것도 로드하지 않습니다. [로컬 마켓플레이스](https://code.claude.com/docs/ko/plugins/loading.md#in-place-and-copied-plugins)의 플러그인의 경우 Claude Code는 매니페스트가 해당 마켓플레이스 내부에 있는지도 확인할 수 없었습니다. 메시지는 `/plugin` **Errors** 탭에 나타나며, 끝부분의 이유는 Claude Code가 발견한 내용을 알려 줍니다.4536Claude Code는 `.claude-plugin/plugin.json`에 있는 마켓플레이스 플러그인의 [매니페스트](https://code.claude.com/docs/ko/plugins/manifest-reference.md)가 플러그인 내부에 있는지 확인할 수 없었으므로 해당 플러그인에서 아무것도 로드하지 않습니다. [로컬 마켓플레이스](https://code.claude.com/docs/ko/plugins/loading.md#in-place-and-copied-plugins)의 플러그인의 경우 Claude Code는 매니페스트가 해당 마켓플레이스 내부에 있는지도 확인할 수 없었습니다. 메시지는 `/plugin` **Errors** 탭에 나타나며, 끝부분의 이유는 Claude Code가 발견한 내용을 알려 줍니다.
5065 5139
5066v2.1.280 이전에는 `where it leads on disk could not be determined` 거부가 표시되지 않았습니다.5140v2.1.280 이전에는 `where it leads on disk could not be determined` 거부가 표시되지 않았습니다.
5067 5141
5142### The search failed, so this is not a "no matches" result
5143
5144Claude가 실행한 [Grep](https://code.claude.com/docs/ko/tools-reference.md#grep-tool-behavior) 또는 [Glob](https://code.claude.com/docs/ko/tools-reference.md#glob-tool-behavior) 검색이 결과를 반환하기 전에 실패했으므로, 일치 항목이 있는지 알 수 없습니다. Claude가 결과 대신 받는 메시지는 다음과 같이 시작합니다.
5145
5146```text wrap theme={null}
5147The search failed, so this is not a "no matches" result: matches may exist. What happened to the search program (ripgrep) is not known, and no results were read. Run the search once more. If it fails again, tell the user that searches are failing.
5148```
5149
5150**조치 방법:**
5151
5152* **처음 나타난 경우**: 조치할 필요가 없습니다. 메시지가 Claude에게 먼저 다시 검색하라고 요청합니다.
5153* **Claude가 검색이 실패하고 있다고 알리는 경우**: 버그 보고를 위해 ripgrep의 오류를 수집합니다.
5154 1. 셸에서 검색이 실패한 세션과 같은 플래그에 [`--debug-file claude-debug.log`](https://code.claude.com/docs/ko/cli-reference#cli-flags)를 추가하여 세션을 시작합니다
5155 2. 검색 실패로 이어진 요청을 Claude에게 보냅니다
5156 3. 검색이 다시 실패하면 `claude-debug.log`에서 `rg error (signal=`이 포함된 줄을 찾습니다
5157 4. [문제를 보고할](#report-an-error) 때 해당 줄을 포함합니다
5158
5068### Task output swap refused5159### Task output swap refused
5069 5160
5070Claude Code는 각 Bash 명령의 출력을 임시 디렉터리 아래의 파일에 저장합니다. 이러한 파일을 열 때마다 심볼릭 링크, 추가 하드 링크 또는 이동된 디렉터리가 경로를 리디렉션하지 않고 경로가 여전히 자신이 만든 파일로 이어지는지 확인합니다. 이 메시지는 해당 검사가 실패했다는 뜻이므로, Claude Code는 그 경로를 통해 출력을 쓰거나 읽는 대신 작업을 거부했습니다. 메시지는 Bash 도구 결과에 표시됩니다.5161Claude Code는 각 Bash 명령의 출력을 임시 디렉터리 아래의 파일에 저장합니다. 이러한 파일을 열 때마다 심볼릭 링크, 추가 하드 링크 또는 이동된 디렉터리가 경로를 리디렉션하지 않고 경로가 여전히 자신이 만든 파일로 이어지는지 확인합니다. 이 메시지는 해당 검사가 실패했다는 뜻이므로, Claude Code는 그 경로를 통해 출력을 쓰거나 읽는 대신 작업을 거부했습니다. 메시지는 Bash 도구 결과에 표시됩니다.
5153 5244
5154v2.1.296 이전에는 Edit과 NotebookEdit이 이러한 편집을 적용하고 디코딩할 수 없는 모든 바이트를 `U+FFFD`로 저장했습니다. 해당 버전을 사용 중이라면 Claude Code를 업데이트합니다.5245v2.1.296 이전에는 Edit과 NotebookEdit이 이러한 편집을 적용하고 디코딩할 수 없는 모든 바이트를 `U+FFFD`로 저장했습니다. 해당 버전을 사용 중이라면 Claude Code를 업데이트합니다.
5155 5246
5247### Refusing to apply edits: a hook is configured for file edits in this session
5248
5249Claude가 [한 단계 업데이트](https://code.claude.com/docs/ko/artifacts.md#turn-off-one-step-artifact-updates)로 [아티팩트](https://code.claude.com/docs/ko/artifacts.md)를 게시하려 했지만 Claude Code가 거부했습니다. 한 단계 업데이트는 게시에 포함된 아티팩트 파일의 작은 변경입니다. 아무것도 게시되지 않았으며 파일은 변경되지 않았습니다. 메시지는 Artifact 도구 결과에 표시됩니다.
5250
5251```text wrap theme={null}
5252Refusing to apply edits to <path>: a hook is configured for file edits in this session, so a publish can't apply edits here. Edit the file, then publish it without edits. Nothing was published.
5253```
5254
5255Claude Code는 세션에 `Edit` 또는 `Write`에 대한 [`PreToolUse` 훅](https://code.claude.com/docs/ko/hooks#pretooluse)이나 [mod](https://code.claude.com/docs/ko/plugins/mods/overview.md)가 있는 동안에는 한 단계 업데이트를 허용하지 않습니다.
5256
5257**조치 방법:**
5258
5259* Claude가 이어서 파일을 편집하고 게시했다면 조치할 필요가 없습니다
5260* Claude가 메시지에서 멈췄다면 Claude에게 파일을 편집하고 게시하도록 요청합니다
5261* 메시지가 계속 나타난다면 Claude Code를 종료하고 다시 실행합니다
5262* 다시 실행한 후에도 메시지가 나타난다면 [한 단계 업데이트를 끕니다](https://code.claude.com/docs/ko/artifacts.md#turn-off-one-step-artifact-updates)
5263
5156### The source file is not valid UTF-8 text5264### The source file is not valid UTF-8 text
5157 5265
5158Claude가 바이트를 텍스트로 디코딩할 수 없거나 텍스트에 이미 대체 문자 `U+FFFD`가 포함된 파일에서 [아티팩트](https://code.claude.com/docs/ko/artifacts.md)를 게시하려 했기 때문에, Claude Code가 아무것도 업로드하기 전에 게시를 거부했습니다. 메시지는 Artifact 도구 결과에 표시되며 수정해야 할 첫 번째 위치를 알려 줍니다.5266Claude가 바이트를 텍스트로 디코딩할 수 없거나 텍스트에 이미 대체 문자 `U+FFFD`가 포함된 파일에서 [아티팩트](https://code.claude.com/docs/ko/artifacts.md)를 게시하려 했기 때문에, Claude Code가 아무것도 업로드하기 전에 게시를 거부했습니다. 메시지는 Artifact 도구 결과에 표시되며 수정해야 할 첫 번째 위치를 알려 줍니다.
5623 5731
5624* 메시지가 명시하는 디렉터리를 다시 만들거나 존재하는 디렉터리에서 디스패치한 다음 다시 시도합니다.5732* 메시지가 명시하는 디렉터리를 다시 만들거나 존재하는 디렉터리에서 디스패치한 다음 다시 시도합니다.
5625 5733
5734### This forked session could not be started
5735
5736claude.ai에서 [Remote Control 세션을 분기](https://code.claude.com/docs/ko/remote-control.md#fork-a-session-from-your-browser)했으며, Claude Code가 머신에서 분기된 세션을 실행하는 [백그라운드 세션](https://code.claude.com/docs/ko/agent-view.md)의 시작을 완료할 수 없었습니다. 이 알림은 분기된 세션의 트랜스크립트에 나타납니다:
5737
5738```text theme={null}
5739This forked session could not be started. Fork the conversation again to retry.
5740```
5741
5742분기한 원래 세션은 계속 실행됩니다.
5743
5744**할 일:**
5745
5746* 분기한 원래 세션으로 돌아가 세션이 유휴 상태가 되면 다시 분기합니다.
5747
5626### 백그라운드 세션을 디스패치할 때 워크스페이스를 신뢰하지 않음5748### 백그라운드 세션을 디스패치할 때 워크스페이스를 신뢰하지 않음
5627 5749
5628[신뢰하지 않은](https://code.claude.com/docs/ko/permissions.md#project-allow-rules-and-workspace-trust) 디렉터리에서 [백그라운드 세션](https://code.claude.com/docs/ko/agent-view.md)을 시작하거나 다시 시작했으며, 워크스페이스 신뢰 대화 상자가 나타나 확인을 요청할 수 없었습니다. Claude Code는 세션을 시작하지 않습니다:5750[신뢰하지 않은](https://code.claude.com/docs/ko/permissions.md#project-allow-rules-and-workspace-trust) 디렉터리에서 [백그라운드 세션](https://code.claude.com/docs/ko/agent-view.md)을 시작하거나 다시 시작했으며, 워크스페이스 신뢰 대화 상자가 나타나 확인을 요청할 수 없었습니다. Claude Code는 세션을 시작하지 않습니다: