{"meta":{"title":"GitHub Copilot CLI 구성","intro":"코파일럿 CLI에 대한 신뢰할 수 있는 디렉터리, 도구 액세스, 경로 및 URL 권한 구성","product":"GitHub Copilot","breadcrumbs":[{"href":"/ko/copilot","title":"GitHub Copilot"},{"href":"/ko/copilot/how-tos","title":"방법"},{"href":"/ko/copilot/how-tos/copilot-cli","title":"코파일럿 CLI"},{"href":"/ko/copilot/how-tos/copilot-cli/set-up-copilot-cli","title":"Copilot CLI 설정"},{"href":"/ko/copilot/how-tos/copilot-cli/set-up-copilot-cli/configure-copilot-cli","title":"Copilot CLI 구성"}],"documentType":"article"},"body":"# GitHub Copilot CLI 구성\n\n코파일럿 CLI에 대한 신뢰할 수 있는 디렉터리, 도구 액세스, 경로 및 URL 권한 구성\n\n## 소개\n\n```\n          코파일럿 CLI 에는 사용자를 대신하여 액세스하고 수행할 수 있는 작업을 제어하는 몇 가지 구성 옵션이 있습니다.\n```\n\n이 문서에서는 신뢰할 수 있는 디렉터리를 설정하고, 도구에 대한 액세스를 구성하고, 파일 경로 및 URL에 대한 권한을 부여하는 방법을 보여 줍니다.\n\n### 필수 조건\n\n* 코파일럿 CLI를 설치합니다.\n  [GitHub Copilot CLI 설치](/ko/copilot/how-tos/copilot-cli/set-up-copilot-cli/install-copilot-cli)을(를) 참조하세요.\n\n## 신뢰할 수 있는 디렉터리 설정\n\n신뢰할 수 있는 디렉터리에서는 파일을 읽고 수정하고 실행할 수 있는 위치를 코파일럿 CLI 제어합니다. 디렉터리를 신뢰하는 것은 보안에 영향을 줍니다. [보안 고려 사항을 참조하세요](/ko/copilot/concepts/agents/about-copilot-cli#trusted-directories).\n\n### 디렉터리를 신뢰하도록 선택\n\n```\n          GitHub Copilot 명령 줄 인터페이스 (CLI) 세션을 시작할 때, CLI를 실행한 디렉터리와 그 하위에 있는 파일을 신뢰하는지 확인해야 합니다.\n```\n\n다음 중에서 디렉터리를 신뢰할 수 있는 방법을 선택할 수 있습니다.\n\n* 현재 실행 중인 세션에만 적용\n* 현재 및 향후 세션 모두에 적용\n\n이후 세션에서도 해당 디렉터리를 신뢰하도록 선택하면 신뢰할 수 있는 디렉터리 프롬프트가 다시 표시되지 않습니다. 이 위치가 항상 안전한 작동 장소가 Copilot 될 것이라고 확신하는 경우에만 이 두 번째 옵션을 선택해야 합니다.\n\n### 신뢰할 수 있는 디렉터리 편집\n\n영구적으로 신뢰할 수 있는 디렉터리 목록을 편집할 수 있습니다. 신뢰할 수 있는 디렉터리 자동으로 관리 `config.json` 되는 파일에 저장됩니다.\n\n1. CLI의 `config.json` 파일을 엽니다. 기본적으로 홈 디렉터리 아래의 폴더에 `.copilot` 저장됩니다.\n\n   * **macOS/Linux**: `~/.copilot/config.json`\n   * **Windows**: `$HOME\\.copilot\\config.json`\n\n환경 변수를 설정 `COPILOT_HOME` 하여 구성 위치를 변경할 수 있습니다. 위의 경로에서 `~/.copilot/`과 `$HOME\\.copilot\\`이 변경됩니다.\n\n1. 배열의 `trustedFolders` 내용을 편집합니다.\n\n## 허용되는 도구 설정\n\n도구를 코파일럿 CLI 사용하려고 할 때 Copilot 승인 프롬프트에 응답하거나 명령줄 플래그를 통해 사용 권한을 지정하여 사용할 수 있는 도구를 제어할 수 있습니다.\n\n도구 액세스를 허용하는 것은 보안에 영향을 줍니다. [보안 고려 사항을 참조하세요](/ko/copilot/concepts/agents/about-copilot-cli#allowed-tools).\n\n이 섹션에서는 다음 방법을 알아볼 수 있습니다.\n\n* [도구를 처음으로 사용 허가](#allowing-a-tool-for-the-first-time)\n* [수동 승인 없이 도구를 사용할 수 있도록 허용](#allowing-tools-to-be-used-without-manual-approval)\n* [허용하거나 거부할 도구를 지정합니다.](#specifying-which-tool-you-want-to-allow-or-deny)\n* [다른 도구를 거부하는 동안 일부 도구 허용](#allowing-some-tools-while-denying-others)\n* [사용 가능한 도구 제한](#limiting-available-tools)\n\n### 처음으로 도구 허용\n\n처음으로 Copilot이 승인예: `touch`, `chmod`, `node`, `sed`이 필요할 수 있는 도구를 사용할 때, 도구를 실행할 수 있는지 여부를 묻는 메시지가 표시됩니다. 메시지가 표시되는지 여부는 도구 및 도구 사용 방법(예: 제공된 인수 또는 도구가 이전에 승인되었는지 여부)에 따라 달라질 수 있습니다.\n\n1. ```\n          Copilot 도구가 필요한 작업을 수행하도록 프롬프트합니다. 다음은 그 예입니다.\n   ```\n\n   ```shell\n   copilot -p \"Create a new file called README.md with a project description\"\n   ```\n\n2. 다음 세 가지 옵션 중 하나를 선택합니다.\n\n   * `1. Yes`\n\n     이 특정 명령을 실행할 수 있도록 Copilot 허용하려면 이 옵션을 선택합니다. 이번에는 이 명령만 실행합니다. 다음에 이 도구를 사용해야 할 때 다시 묻게 됩니다.\n\n   * `2. Yes, and approve TOOL for the rest of the running session`\n\n     현재 실행 중인 세션의 기간 동안 이 도구를 사용할 수 있도록 Copilot 하려면 이 옵션을 선택합니다. 새로운 세션에서 또는 나중에 현재 세션을 다시 시작할 경우에는 다시 승인을 요청합니다. 이 옵션을 선택하면 Copilot가 적절하다고 생각하는 방식으로 이 도구를 사용할 수 있도록 허용하게 됩니다.\n\n     예를 들어 Copilot 명령을 `rm ./this-file.txt`실행할 수 있도록 허용하라는 메시지가 표시되고 옵션 2 Copilot 를 선택하면 승인을 요청하지 않고 이 세션의 현재 실행 중에 명령 `rm` (예 `rm -rf ./*`: )을 실행할 수 있습니다.\n\n   * `3. No, and tell Copilot what to do differently (Esc)`\n\n     제안된 명령을 취소하고 다른 방법을 시도하도록 지시 Copilot 하려면 이 옵션을 선택합니다.\n\n### 수동 승인 없이 도구를 사용할 수 있도록 허용\n\n명령줄 플래그를 사용하여 승인을 요청하지 않고 사용할 수 있는 Copilot 도구를 지정할 수 있습니다.\n\n#### 모든 도구 허용\n\n```\n          `--allow-all-tools`을 사용하여 Copilot가 승인을 요청하지 않고 모든 도구를 사용할 수 있도록 허용합니다.\n```\n\n* 다음은 그 예입니다.\n\n  ```shell\n  copilot -p \"Revert the last commit\" --allow-all-tools\n  ```\n\n#### 도구 거부\n\n```\n          `--deny-tool`를 사용하여 Copilot가 특정 도구를 사용하지 못하도록 방지합니다.\n```\n\n* 다음은 그 예입니다.\n\n  ```shell\n  copilot --deny-tool='shell(git push)'\n  ```\n\n이 옵션은 `--allow-all-tools` 및 `--allow-tool` 옵션보다 우선 적용됩니다.\n\n#### 도구 허용\n\n```\n          `--allow-tool`가 특정 도구를 승인 요청 없이 사용할 수 있도록 허용하기 위해 Copilot를 사용합니다.\n```\n\n* 다음은 그 예입니다.\n\n  ```shell\n  copilot --allow-tool='shell'\n  ```\n\n### 허용하거나 거부할 도구 지정\n\n및 `--deny-tool` 옵션을 사용 `--allow-tool` 하려면 허용하거나 거부할 도구 유형을 지정해야 합니다.\n\n* [셸 명령](#allowing-or-denying-shell-commands)\n* ['쓰기' 도구](#allowing-or-denying-write-tools)\n* [MCP 서버 도구](#allowing-or-denying-mcp-server-tools)\n\n#### 셸 명령 허용 또는 거부\n\n특정 셸 명령을 허용하거나 거부하는 데 사용합니다 `shell(COMMAND)` .\n\n* 예를 들어, Copilot가 어떤 `rm` 명령도 사용하지 않도록 하려면 다음을 사용하십시오.\n\n  ```shell\n  copilot --deny-tool='shell(rm)'\n  ```\n\n  ```\n          `git` 및 `gh` 명령에 대해 허용하거나 거부할 특정한 첫 번째 수준 하위 명령을 지정하십시오.\n  ```\n\n* 예를 들어, Copilot가 `git push`을/를 사용하지 않도록 하려면 다음을 사용하십시오.\n\n  ```shell\n  copilot --deny-tool='shell(git push)'\n  ```\n\n도구 사양은 선택 사항입니다. 예를 들어 `copilot --allow-tool='shell'`은 Copilot이 개별 승인 없이 모든 셸 명령을 사용할 수 있게 합니다.\n\n#### 도구 허용 또는 거부 `'write'`\n\n셸 명령 이외의 도구를 허용하거나 거부하여 파일을 수정할 수 있는 권한을 사용합니다 `'write'` .\n\n* 예를 들어 개별 승인 없이 파일을 편집할 수 있도록 Copilot 하려면 다음을 사용합니다.\n\n  ```shell\n  copilot --allow-tool='write'\n  ```\n\n#### MCP 서버 도구 허용 또는 거부\n\n지정된 MCP 서버에서 특정 도구를 허용하거나 거부하는 데 사용합니다 `'MCP_SERVER_NAME'` .\n\n* 예를 들어, Copilot가 MCP 서버인 `tool_name`에서 도구 `My-MCP-Server`를 사용하지 않도록 하려면 다음을 사용합니다.\n\n  ```shell\n  copilot --deny-tool='My-MCP-Server(tool_name)'\n  ```\n\n  ```\n          `MCP_SERVER_NAME` 은 구성한 MCP 서버의 이름입니다.\n  ```\n\n서버에서 제공하는 도구는 MCP 서버에 등록된 도구 이름을 사용하여 괄호로 지정됩니다.\n\n도구를 지정하지 않고 서버 이름을 사용하면 해당 서버의 모든 도구를 허용하거나 거부할 수 있습니다.\n\n대화형 모드 `/mcp` 로 들어가 코파일럿 CLI 서 표시되는 목록에서 서버를 선택하여 MCP 서버의 이름을 찾을 수 있습니다.\n\n### 일부 도구를 허용하고 다른 도구를 거부하기\n\n승인을 요청하지 않고 사용할 수 있는 도구를 Copilot 정확하게 확인하려면 승인 옵션 조합을 사용할 수 있습니다. 다음은 그 예입니다.\n\n* Copilot가 `rm` 및 `git push` 명령을 사용하지 못하도록 하고, 다른 모든 도구를 자동으로 허용하려면 다음을 사용합니다.\n\n  ```shell\n  copilot --allow-all-tools --deny-tool='shell(rm)' --deny-tool='shell(git push)'\n  ```\n\n* Copilot을 차단하기 위하여 `tool_name` 도구를 `My-MCP-Server` 서버에 있는 다른 모든 도구는 개별 승인 없이 사용할 수 있게 허용하면서 이 설정을 적용하려면 다음을 사용하십시오.\n\n  ```shell\n  copilot --allow-tool='My-MCP-Server' --deny-tool='My-MCP-Server(tool_name)'\n  ```\n\n### 사용 가능한 도구 제한\n\n특정 도구 집합으로 Copilot를 제한하려면 `--available-tools`를 사용합니다.\n\n이 목록에 포함되지 않은 도구는 Copilot 사용자가 사용할 수 없습니다.\n\n## 경로 권한 설정\n\n경로 권한은 액세스할 수 있는 디렉터리 및 파일을 Copilot 제어합니다.\n\n기본적으로 코파일럿 CLI 현재 작업 디렉터리, 해당 하위 디렉터리 및 시스템 임시 디렉터리에 액세스할 수 있습니다.\n\n경로 권한은 셸 명령, 파일 작업(만들기, 편집, 보기) 및 검색 도구(예: `grep` glob 패턴)에 적용됩니다. 셸 명령의 경우 경로는 명령 텍스트를 토큰화하고 경로처럼 보이는 토큰을 식별하여 추론적으로 추출됩니다.\n\n> \\[!WARNING]\n> 셸 명령에 대한 경로 검색에는 다음과 같은 제한 사항이 있습니다.\n>\n> * 복잡한 셸 구문에 포함된 경로는 검색되지 않을 수 있습니다.\n> * 특정 환경 변수 집합만 확장됩니다(`HOME`, `TMPDIR`, `PWD`및 유사). 같은 `$MY_PROJECT_DIR` 사용자 지정 변수는 확장되지 않으며 올바르게 유효성을 검사하지 못할 수 있습니다.\n> * 기존 파일에 대해서는 심링크가 해결되지만, 생성되는 파일에 대해서는 해결되지 않습니다.\n\n### 모든 경로에 대한 액세스 허용\n\n경로 확인을 비활성화하고 모든 경로에 대한 액세스를 허용하려면 `--allow-all-paths`을 시작할 때 코파일럿 CLI 플래그를 사용합니다.\n\n### 임시 디렉터리에 대한 액세스 허용 불허\n\n임시 디렉터리에 대한 액세스를 허용하지 않도록 하려면 .를 사용합니다 `--disallow-temp-dir`.\n\n## URL 권한 설정\n\nURL 권한은 Copilot이(가) 액세스할 수 있는 외부 URL을 제어합니다. 기본적으로 모든 URL은 액세스 권한을 부여하기 전에 승인이 필요합니다.\n\nURL 권한은 도구 및 네트워크에 액세스하는 `web_fetch` 큐레이팅된 셸 명령 목록(예: `curl`, `wget`및 `fetch`)에 적용됩니다. 셸 명령의 경우 URL은 regex 패턴을 사용하여 추출됩니다.\n\n> \\[!WARNING]\n> 셸 명령에 대한 URL 검색에는 다음과 같은 제한 사항이 있습니다.\n>\n> * 파일 콘텐츠, 구성 파일 또는 명령에서 읽은 환경 변수의 URL은 검색되지 않습니다.\n> * 난독화된 URL(예: 분할 문자열 또는 이스케이프 시퀀스)은 감지되지 않을 수 있습니다.\n> * HTTP 및 HTTPS는 서로 다른 프로토콜로 처리되며 별도의 승인이 필요합니다.\n\nURL 사용 권한은 세션에 대해 또는 영구적으로 유지할 수 있습니다.\n\n### URL 확인 사용 안  않음\n\nURL 확인을 사용하지 않도록 설정하려면 플래그를 `--allow-all-urls` 사용합니다.\n\n### 특정 도메인 사전 승인\n\n특정 도메인을 미리 승인하려면 .를 사용합니다 `--allow-url=DOMAIN`.\n\n* 예: `--allow-url=github.com`.\n\n### 특정 도메인 거부\n\n특정 도메인을 거부하려면 .를 사용합니다 `--deny-url=DOMAIN`.\n\n* 예: `--deny-url=github.com`.\n\n## 모든 도구, 경로 및 URL 허용\n\n모든 도구, 경로 및 URL을 허용하려면 `--allow-all` 또는 해당 별칭 `--yolo`을 사용합니다.\n\n이 플래그는 다음을 결합합니다.\n\n* `--allow-all-tools` (도구 승인 건너뛰기).\n* `--allow-all-paths` (경로 확인을 사용하지 않도록 설정).\n* `--allow-all-urls` (URL 확인을 사용하지 않도록 설정).\n\n> \\[!TIP] 대화형 세션 중에는 `/allow-all` 또는 `/yolo` 슬래시 명령을 사용하여 모든 권한을 활성화할 수도 있습니다.\n\n## 추가 읽기\n\n* [GitHub Copilot CLI 사용자 지정](/ko/copilot/how-tos/copilot-cli/customize-copilot)\n* [GITHUB COPILOT CLI 구성 디렉터리](/ko/copilot/reference/copilot-cli-reference/cli-config-dir-reference)"}