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