Skip to main content

GitHub Copilot CLI 프로그래밍 방식 참조

프로그래밍 방식으로 실행 코파일럿 CLI 하기 위한 옵션을 찾습니다.

대화형으로 실행하는 코파일럿 CLI 것 외에도 대화형 세션을 입력하지 않고 단일 명령으로 CLI에 직접 프롬프트를 전달할 수 있습니다. 이렇게 하면 스크립트, CI/CD 파이프라인 및 자동화 워크플로에서 프로그래밍 방식으로 사용할 Copilot 수 있습니다. 자세한 내용은 프로그래밍 방식으로 실행 GitHub Copilot 명령 줄 인터페이스 (CLI)을(를) 참조하세요.

이 문서에서는 프로그래밍 방식으로 실행할 코파일럿 CLI 때 특히 관련된 명령줄 옵션 및 환경 변수에 대해 설명합니다.

사용 가능한 옵션의 전체 목록을 보려면 GitHub Copilot CLI 명령 참조 을 참조하거나 터미널에서 다음 명령을 입력합니다.

Shell
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=MODELAI 모델(예: gpt-5.2 또는 claude-sonnet-4.6)을 선택합니다. 재현 가능한 워크플로에서 모델을 고정하는 데 유용합니다. 아래 모델 선택을 참조하세요.
--no-ask-user에이전트가 일시 중지하여 추가 사용자 입력을 검색하지 못하도록 합니다.
--secret-env-vars=VAR ...출력에서 값을 수정하려는 환경 변수입니다. 여러 변수의 경우 따옴표로 묶인 쉼표로 구분된 목록을 사용합니다. 비밀이 로그에 노출되는 것을 방지하는 데 필수적입니다.
GITHUB_TOKENCOPILOT_GITHUB_TOKEN 환경 변수의 값은 기본적으로 가려집니다.
--share=PATH비대화형 완료 후 세션 대본을 markdown 파일로 내보냅니다(기본값은 ./copilot-session-<ID>.md). 에이전트가 한 일을 감사하거나 보관하는 데 유용합니다. 세션 성적 증명서에는 중요한 정보가 포함될 수 있습니다.
--share-gist완료 후 세션 대본을 비밀 GitHub 요점으로 게시합니다. CI에서 결과를 공유하는 데 편리합니다. 세션 성적 증명서에는 중요한 정보가 포함될 수 있습니다.

--allow-tool 옵션에 대한 도구

옵션을 사용하여 다양한 종류의 도구를 --allow-tool 지정할 수 있습니다.

도구 종류제어하는 내용
셸 명령을 실행합니다.
write파일 만들기 또는 수정
read파일 또는 디렉터리를 읽습니다.
urlURL에서 콘텐츠를 페치합니다.
메모리에이전트의 영구 메모리에 새 팩트 저장 기존 메모리 사용에 영향이 없습니다.
GitHub Copilot 메모리 정보을(를) 참조하세요.
MCP-서버특정 MCP 서버에서 도구 호출 서버의 구성된 이름을 식별자로 사용합니다(예: github).
에 대한 MCP 서버 추가 GitHub Copilot 명령 줄 인터페이스 (CLI)을(를) 참조하세요.

도구 필터

shell, writeurlMCP 서버 도구 종류를 사용하면 필터를 괄호로 지정하여 허용되는 특정 도구를 제어할 수 있습니다.

도구 종류예시예제에 대한 설명
shell(git:*)모든 Git 하위 명령(git push, git status등)을 허용합니다.
shell(npm test)정확한 명령 npm test을(를) 허용합니다.
쓰다write(.github/copilot-instructions.md)CLI가 이 특정 경로에 쓸 수 있도록 허용합니다.
write(README.md)경로가 .로 끝나는 /README.md모든 파일에 CLI가 쓰도록 허용합니다.
urlurl(github.com)CLI가 github.com HTTPS URL에 액세스할 수 있도록 허용합니다.
url(http://localhost:3000)CLI가 명시적 프로토콜 및 포트를 사용하여 로컬 개발 서버에 액세스할 수 있도록 허용합니다.
url(https://*.github.com)CLI가 모든 GitHub 하위 도메인(예: api.github.com)에 액세스할 수 있도록 허용합니다.
url(https://docs.github.com/copilot/*)이 사이트에 있는 Copilot 설명서에 대한 액세스를 허용합니다.
MCP-SERVERgithub(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_HOMECLI 구성 파일의 디렉터리 설정(~/.copilot 기본적으로)
COPILOT_GITHUB_TOKEN인증 토큰(가장 높은 우선 순위)
GH_TOKEN인증 토큰(두 번째 우선 순위)
GITHUB_TOKEN인증 토큰(세 번째 우선 순위)

터미널에서 코파일럿 CLI 명령을 사용하여 copilot help environment의 환경 변수 전체 내용을 확인하십시오.

모델 선택

비대화형 모드로 프롬프트를 코파일럿 CLI 보내면 CLI가 응답을 생성하는 데 사용하는 모델이 응답 출력에 표시됩니다(또는 , -s옵션이 사용되지 않는 경우--silent).

이 옵션을 사용하여 CLI에서 --model 사용해야 하는 AI 모델을 지정할 수 있습니다. 이를 통해 프롬프트에 가장 적합한 모델을 선택하고 속도, 비용 및 기능과 같은 요인을 분산할 수 있습니다.

예를 들어 일부 코드를 설명하거나 요약을 생성하는 등의 간단한 작업의 경우 Claude Haiku 모델과 같은 빠르고 저렴한 비용 모델을 선택할 수 있습니다.

Bash
copilot -p "What does this project do?" -s --model claude-haiku-4.5

코드 디버깅 또는 리팩터링과 같은 심층적인 추론이 필요한 더 복잡한 작업의 경우 GPT Codex 모델과 같은 보다 강력한 모델을 선택할 수 있습니다.

Bash
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에 위치해 있습니다). 또한 일부 모델을 사용하면 추론 작업 수준을 설정하여 모델이 응답하기 전에 생각하는 데 소요되는 시간을 제어할 수 있습니다.

JSON
{
  "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

추가 읽기