{"meta":{"title":"GitHub Copilot CLI 프로그래밍 방식 참조","intro":"프로그래밍 방식으로 실행 코파일럿 CLI 하기 위한 옵션을 찾습니다.","product":"GitHub Copilot","breadcrumbs":[{"href":"/ko/copilot","title":"GitHub Copilot"},{"href":"/ko/copilot/reference","title":"참조"},{"href":"/ko/copilot/reference/copilot-cli-reference","title":"\n              코파일럿 CLI 참조"},{"href":"/ko/copilot/reference/copilot-cli-reference/cli-programmatic-reference","title":"CLI 프로그래밍 방식 참조"}],"documentType":"article"},"body":"# GitHub Copilot CLI 프로그래밍 방식 참조\n\n프로그래밍 방식으로 실행 코파일럿 CLI 하기 위한 옵션을 찾습니다.\n\n대화형으로 실행하는 코파일럿 CLI 것 외에도 대화형 세션을 입력하지 않고 단일 명령으로 CLI에 직접 프롬프트를 전달할 수 있습니다. 이렇게 하면 스크립트, CI/CD 파이프라인 및 자동화 워크플로에서 프로그래밍 방식으로 사용할 Copilot 수 있습니다. 자세한 내용은 [프로그래밍 방식으로 실행 GitHub Copilot 명령 줄 인터페이스 (CLI)](/ko/copilot/how-tos/copilot-cli/automate-copilot-cli/run-cli-programmatically)을(를) 참조하세요.\n\n이 문서에서는 프로그래밍 방식으로 실행할 코파일럿 CLI 때 특히 관련된 명령줄 옵션 및 환경 변수에 대해 설명합니다.\n\n사용 가능한 옵션의 전체 목록을 보려면 [GitHub Copilot CLI 명령 참조](/ko/copilot/reference/copilot-cli-reference/cli-command-reference#command-line-options) 을 참조하거나 터미널에서 다음 명령을 입력합니다.\n\n```shell copy\ncopilot help\n```\n\n## 명령줄 옵션\n\n프로그래밍 방식으로 실행할 코파일럿 CLI 때 특히 유용한 여러 명령줄 옵션이 있습니다.\n\n| Option                     | 설명                                                                                                  |\n| -------------------------- | --------------------------------------------------------------------------------------------------- |\n| `-p PROMPT`                | 비대화형 모드에서 프롬프트를 실행합니다. CLI는 프롬프트를 실행하고 완료되면 종료됩니다.                                                  |\n| `-s`                       | 통계 및 장식을 표시하지 않으며 에이전트의 응답만 출력합니다. 스크립트의 출력 파이핑에 적합합니다.                                             |\n| `--add-dir=DIRECTORY`      | 허용 경로 목록에 디렉터리를 추가합니다. 여러 디렉터리를 추가하는 데 여러 번 사용할 수 있습니다. 에이전트가 현재 작업 디렉터리 외부에서 읽기/쓰기가 필요한 경우에 유용합니다. |\n| `--agent=AGENT`            | 사용할 사용자 지정 에이전트을(를) 지정하십시오.                                                                         |\n| `--allow-all`(또는 `--yolo`) | CLI에 모든 권한을 허용합니다.                                                                                  |\n\n```\n          `--allow-all-tools --allow-all-paths --allow-all-urls`와 동등합니다. |\n```\n\n\\| `--allow-all-paths`           | 파일 경로 확인을 완전히 사용하지 않도록 설정합니다. 경로 제한이 필요하지 않은 경우에 대한 보다 간단한 대안 `--add-dir` 입니다. |\n\\| `--allow-all-tools`           | 각 도구에 대한 명시적 권한 없이 모든 도구를 실행할 수 있도록 허용합니다. |\n\\| `--allow-all-urls`            | 각 URL에 대한 명시적 권한 없이 모든 URL에 대한 액세스를 허용합니다. |\n\\| `--allow-tool=TOOL ...`       | 특정 도구에 대한 사용 권한을 선택적으로 부여합니다. 여러 도구의 경우 따옴표로 묶인 쉼표로 구분된 목록을 사용합니다. |\n\\| `--allow-url=URL ...`         | 에이전트가 특정 URL 또는 도메인을 페치하도록 허용합니다. 워크플로에서 알려진 엔드포인트에 대한 웹 액세스가 필요한 경우에 유용합니다. 여러 URL의 경우 따옴표로 묶인 쉼표로 구분된 목록을 사용합니다. |\n\\| `--deny-tool=TOOL ...`        | 특정 도구를 거부합니다. 잠긴 워크플로에서 에이전트가 수행할 수 있는 작업을 제한하는 데 유용합니다. 여러 도구의 경우 따옴표로 묶인 쉼표로 구분된 목록을 사용합니다. |\n\\| `--model=MODEL`               | AI 모델(예: `gpt-5.2` 또는 `claude-sonnet-4.6`)을 선택합니다. 재현 가능한 워크플로에서 모델을 고정하는 데 유용합니다. 아래 [모델 선택을](#choosing-a-model) 참조하세요. |\n\\| `--no-ask-user`               | 에이전트가 일시 중지하여 추가 사용자 입력을 검색하지 못하도록 합니다. |\n\\| `--secret-env-vars=VAR ...`   | 출력에서 값을 수정하려는 환경 변수입니다. 여러 변수의 경우 따옴표로 묶인 쉼표로 구분된 목록을 사용합니다. 비밀이 로그에 노출되는 것을 방지하는 데 필수적입니다.\n`GITHUB_TOKEN` 및 `COPILOT_GITHUB_TOKEN` 환경 변수의 값은 기본적으로 가려집니다. |\n\\| `--share=PATH`                | 비대화형 완료 후 세션 대본을 markdown 파일로 내보냅니다(기본값은 `./copilot-session-<ID>.md`). 에이전트가 한 일을 감사하거나 보관하는 데 유용합니다. 세션 성적 증명서에는 중요한 정보가 포함될 수 있습니다. |\n\\| `--share-gist`                | 완료 후 세션 대본을 비밀 GitHub 요점으로 게시합니다. CI에서 결과를 공유하는 데 편리합니다. 세션 성적 증명서에는 중요한 정보가 포함될 수 있습니다. |\n\n##\n\n```\n          `--allow-tool` 옵션에 대한 도구\n```\n\n옵션을 사용하여 다양한 종류의 도구를 `--allow-tool` 지정할 수 있습니다.\n\n| 도구 종류 | 제어하는 내용                                    |\n| ----- | ------------------------------------------ |\n| 셸     | 셸 명령을 실행합니다.                               |\n| write | 파일 만들기 또는 수정                               |\n| read  | 파일 또는 디렉터리를 읽습니다.                          |\n| url   | URL에서 콘텐츠를 페치합니다.                          |\n| 메모리   | 에이전트의 영구 메모리에 새 팩트 저장 기존 메모리 사용에 영향이 없습니다. |\n\n```\n          [AUTOTITLE](/copilot/concepts/agents/copilot-memory)을(를) 참조하세요. |\n```\n\n\\| MCP-서버 | 특정 MCP 서버에서 도구 호출 서버의 구성된 이름을 식별자로 사용합니다(예: `github`).\n[에 대한 MCP 서버 추가 GitHub Copilot 명령 줄 인터페이스 (CLI)](/ko/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers)을(를) 참조하세요. |\n\n### 도구 필터\n\n```\n          `shell`, `write`및 `url`MCP 서버 도구 종류를 사용하면 필터를 괄호로 지정하여 허용되는 특정 도구를 제어할 수 있습니다.\n```\n\n<!-- markdownlint-disable -->\n\n| 도구 종류          | 예시                                       | 예제에 대한 설명                                                     |\n| -------------- | ---------------------------------------- | ------------------------------------------------------------- |\n| **셸**          | `shell(git:*)`                           | 모든 Git 하위 명령(`git push`, `git status`등)을 허용합니다.               |\n|                | `shell(npm test)`                        | 정확한 명령 `npm test`을(를) 허용합니다.                                  |\n| **쓰다**         | `write(.github/copilot-instructions.md)` | CLI가 이 특정 경로에 쓸 수 있도록 허용합니다.                                  |\n|                | `write(README.md)`                       | 경로가 .로 끝나는 `/README.md`모든 파일에 CLI가 쓰도록 허용합니다.                 |\n| **url**        | `url(github.com)`                        | CLI가 github.com HTTPS URL에 액세스할 수 있도록 허용합니다.                  |\n|                | `url(http://localhost:3000)`             | CLI가 명시적 프로토콜 및 포트를 사용하여 로컬 개발 서버에 액세스할 수 있도록 허용합니다.          |\n|                | `url(https://*.github.com)`              | CLI가 모든 GitHub 하위 도메인(예: `api.github.com`)에 액세스할 수 있도록 허용합니다. |\n|                | `url(https://docs.github.com/copilot/*)` | 이 사이트에 있는 Copilot 설명서에 대한 액세스를 허용합니다.                         |\n| **MCP-SERVER** | `github(create_issue)`                   | MCP 서버의 `create_issue`에서 `github` 도구만 허용합니다.                  |\n\n<!-- markdownlint-enable -->\n\n> \\[!NOTE]\n> 와일드카드는 `shell`이 지정된 도구의 모든 하위 명령어와 일치하도록 지원되며, 호스트 이름의 시작에 있는 `url`이 모든 하위 도메인과, 경로 끝에 있는 것은 모든 경로 접미사와 일치하도록 지원됩니다. 이는 이전 표에 나와 있는 바와 같습니다.\n\n## 환경 변수\n\n환경 변수를 사용하여 프로그래밍 방식으로 실행할 때 CLI 동작의 다양한 측면을 구성할 수 있습니다. 이는 명령줄에서 특정 옵션을 직접 지정하지 않으려는 CI/CD 워크플로 또는 기타 자동화된 환경에서 구성을 설정하는 데 특히 유용합니다.\n\n| 변수                     | 설명                                     |\n| ---------------------- | -------------------------------------- |\n| `COPILOT_ALLOW_ALL`    | 전체 사용 권한으로 `true` 설정                   |\n| `COPILOT_MODEL`        | 모델 설정(예: `gpt-5.2``claude-sonnet-4.5`  |\n| `COPILOT_HOME`         | CLI 구성 파일의 디렉터리 설정(`~/.copilot` 기본적으로) |\n| `COPILOT_GITHUB_TOKEN` | 인증 토큰(가장 높은 우선 순위)                     |\n| `GH_TOKEN`             | 인증 토큰(두 번째 우선 순위)                      |\n| `GITHUB_TOKEN`         | 인증 토큰(세 번째 우선 순위)                      |\n\n터미널에서 코파일럿 CLI 명령을 사용하여 `copilot help environment`의 환경 변수 전체 내용을 확인하십시오.\n\n## 모델 선택\n\n비대화형 모드로 프롬프트를 코파일럿 CLI 보내면 CLI가 응답을 생성하는 데 사용하는 모델이 응답 출력에 표시됩니다(또는 , `-s`옵션이 사용되지 않는 경우`--silent`).\n\n이 옵션을 사용하여 CLI에서 `--model` 사용해야 하는 AI 모델을 지정할 수 있습니다. 이를 통해 프롬프트에 가장 적합한 모델을 선택하고 속도, 비용 및 기능과 같은 요인을 분산할 수 있습니다.\n\n예를 들어 일부 코드를 설명하거나 요약을 생성하는 등의 간단한 작업의 경우 Claude Haiku 모델과 같은 빠르고 저렴한 비용 모델을 선택할 수 있습니다.\n\n```bash copy\ncopilot -p \"What does this project do?\" -s --model claude-haiku-4.5\n```\n\n코드 디버깅 또는 리팩터링과 같은 심층적인 추론이 필요한 더 복잡한 작업의 경우 GPT Codex 모델과 같은 보다 강력한 모델을 선택할 수 있습니다.\n\n```bash copy\ncopilot -p \"Fix the race condition in the worker pool\" \\\n  --model gpt-5.3-codex \\\n  --allow-tool='write, shell'\n```\n\n> \\[!NOTE]\n> 터미널에 입력 `--model` 할 때 옵션 설명 `copilot help` 에서 사용 가능한 모든 모델에 대한 모델 문자열을 찾을 수 있습니다.\n\n또는 환경 변수를 `COPILOT_MODEL` 설정하여 셸 세션 기간 동안 모델을 지정할 수 있습니다.\n\n셸 세션에서 모델 선택을 유지하려면 CLI 구성 파일에서 키를 설정할 `model` 수 있습니다. 이 파일은 `~/.copilot/settings.json`에 위치해 있습니다 (또는 `$COPILOT_HOME/settings.json` 환경 변수를 설정한 경우 `COPILOT_HOME`에 위치해 있습니다). 또한 일부 모델을 사용하면 추론 작업 수준을 설정하여 모델이 응답하기 전에 생각하는 데 소요되는 시간을 제어할 수 있습니다.\n\n```json copy\n{\n  \"model\": \"gpt-5.3-codex\",\n  \"effortLevel\": \"low\"\n}\n```\n\n> \\[!TIP]\n> 구성 파일 `/model` 에서 모델을 영구적으로 설정하는 가장 쉬운 방법은 대화형 세션에서 슬래시 명령을 사용하는 것입니다. 이 명령을 사용하여 선택한 항목은 구성 파일에 기록됩니다.\n\n### 모델 우선 순위\n\n지정된 프롬프트에 사용할 모델을 결정할 때 CLI는 다음 우선 순위(가장 높음에서 가장 낮은 수준)로 모델 사양을 확인합니다.\n\n* 사용자 지정 에이전트가 사용되는 위치: 사용자 지정 에이전트 정의에 지정된 모델(있는 경우)입니다.\n* `--model` 명령줄 옵션입니다.\n* `COPILOT_MODEL` 환경 변수입니다.\n* `model` 구성 파일(`~/.copilot/settings.json`또는`$COPILOT_HOME/settings.json`)의 키입니다.\n* CLI의 기본 모델입니다.\n\n## 사용자 지정 에이전트 사용\n\n이 옵션을 사용하여 특수 에이전트에 작업을 위임할 `--agent` 수 있습니다. 자세한 내용은 [사용자 지정 에이전트 만들기 및 사용 GitHub Copilot 명령 줄 인터페이스 (CLI)](/ko/copilot/how-tos/copilot-cli/customize-copilot/create-custom-agents-for-cli)을(를) 참조하세요.\n\n이 예제에서는 에이전트가 `code-review` 사용됩니다. 이렇게 하려면 이 이름으로 사용자 지정 에이전트를 만들어야 합니다.\n\n```bash\ncopilot -p \"Review the latest commit\" \\\n  --allow-tool='shell' \\\n  --agent code-review\n```\n\n## 추가 읽기\n\n* [GitHub Copilot 명령 줄 인터페이스 (CLI)](/ko/copilot/how-tos/copilot-cli)\n* [GitHub Copilot CLI 명령 참조](/ko/copilot/reference/copilot-cli-reference/cli-command-reference)\n* [GitHub Copilot CLI 플러그 인 참조](/ko/copilot/reference/copilot-cli-reference/cli-plugin-reference)"}