InfoGrab DocsInfoGrab Docs

GitLab Duo CLI 사용

요약

GitLab Duo CLI는 두 가지 모드로 사용할 수 있습니다: GitLab Duo CLI를 인터랙티브 모드로 사용하려면 다음과 같이 합니다: 환경에 맞는 명령을 입력해 인터랙티브 모드를 시작합니다: 터미널 창에 프롬프트 >가 나타납니다.

GitLab Duo CLI는 두 가지 모드로 사용할 수 있습니다:

  • 인터랙티브 모드: GitLab UI 나 에디터 확장의 GitLab Duo Chat과 비슷한 채팅 환경을 제공합니다. 빌드 모드와 플랜 모드를 지원합니다.
  • 헤드리스 모드: 러너, 스크립트를 비롯한 자동화 워크플로에서 비대화식으로 사용할 수 있습니다.

사전 요구 사항#

  • GitLab Duo CLI가 설치되어 있고 설정되어 있어야 합니다.
  • 기본 GitLab Duo 네임스페이스가 설정되어 있거나, GitLab Duo에 접근할 수 있는 프로젝트가 열려 있어야 합니다.

인터랙티브 모드#

GitLab Duo CLI를 인터랙티브 모드로 사용하려면 다음과 같이 합니다:

  1. 환경에 맞는 명령을 입력해 인터랙티브 모드를 시작합니다:

   glab duo cli
   duo
  1. 터미널 창에 프롬프트 >가 나타납니다. 프롬프트 뒤에 질문이나 요청을 입력하고 Enter를 누릅니다.

    예를 들면 다음과 같습니다:

    What is this repository about?
    
    Which issues need my attention?
    
    Help me implement issue 15.
    
    The pipelines in MR 23 are failing. Please help me fix them.
    

GitLab Duo CLI가 동작하는 중에 응답을 취소하려면 Escape를 누릅니다. GitLab Duo CLI는 현재 작업을 중단하고 프롬프트로 돌아갑니다.

프롬프트 기록을 보려면 ↑ 키를, 기록을 검색하려면 Control+R을 사용합니다.

빌드 모드와 플랜 모드 전환#

인터랙티브 모드에서는 작업 중에 GitLab Duo CLI를 다음 두 모드로 전환할 수 있습니다:

모드 권한 동작 방식
빌드 모드(기본값) 읽기·쓰기 GitLab Duo가 작업을 실행하고 프로젝트를 변경할 수 있습니다.
플랜 모드 읽기 전용 GitLab Duo가 변경 없이 프로젝트를 분석하고 계획을 만들 수 있습니다.

예를 들어 플랜 모드에서 GitLab Duo와 문제를 논의하며 시작한 다음, 준비가 되면 빌드 모드로 전환해 GitLab Duo에 계획을 구현하도록 지시할 수 있습니다.

GitLab Duo CLI는 > 프롬프트 아래에 현재 모드를 표시합니다. 모드를 전환하려면 Tab을 누릅니다.

슬래시 명령어#

히스토리

인터랙티브 모드에서는 슬래시 명령어로 GitLab Duo CLI를 구성하고 작업을 수행합니다. 프롬프트에 슬래시 명령어를 입력하고 Enter를 누릅니다.

사용할 수 있는 슬래시 명령어는 다음과 같습니다:

명령어 설명
/copy GitLab Duo의 마지막 응답을 클립보드에 복사합니다.
/doctor GitLab Duo CLI 환경의 진단 정보를 표시합니다.
/exit GitLab Duo CLI를 종료합니다.
/feedback 버그 리포트나 기능 요청을 제출합니다.
/goal 목표를 향해 진행하는 세션을 시작합니다.
/help 사용할 수 있는 슬래시 명령어 목록을 표시합니다.
/mcp 구성된 MCP 서버와 그 상태를 봅니다.
/model 현재 세션의 AI 모델을 전환합니다.
/new 새 채팅 세션을 시작합니다.
/sessions 세션을 탐색하고 검색하고 전환합니다.
/settings 설정 패널을 엽니다.
/skills 현재 프로젝트에서 사용할 수 있는 Agent Skills를 나열합니다.

슬래시 명령어를 직접 만들 수도 있습니다. 자세한 내용은 사용자 정의 슬래시 명령어를 참고합니다.

설정#

히스토리

설정을 변경하려면 다음과 같이 합니다:

  1. 인터랙티브 모드에서 /settings를 입력하고 Enter를 누릅니다.
  2. 화살표 키로 설정 목록을 이동합니다.
  3. 선택한 설정을 변경하려면 Enter 또는 Space를 누릅니다.
  4. 패널을 닫으려면 Escape를 누릅니다.

변경 사항은 세션이 바뀌어도 유지됩니다.

사용할 수 있는 설정은 다음과 같습니다:

설정 설명
Telemetry GitLab Duo 개선을 위해 익명 사용 데이터를 전송합니다.
Enable global skills (실험) ~/.agents/skills/와 ~/.gitlab/duo/skills/에서 사용자 수준 Agent Skills를 검색합니다. 변경 사항을 적용하려면 재시작해야 합니다.
Notifications 시스템 알림을 제어합니다(auto 또는 disabled).
Show work items in new sessions 새 세션을 시작할 때 열린 작업 항목을 표시합니다.
Theme 테마 설정을 변경합니다. 선택지는 auto, dark, light, dark high contrast, light high contrast 입니다.

시스템 알림#

히스토리

GitLab Duo CLI는 터미널 창에 포커스가 없는 동안 세션에 사용자의 확인이 필요할 때 (예: 작업을 마쳤거나 도구 승인이 필요할 때) 시스템 알림을 보낼 수 있습니다.

알림은 설정 패널의 Notifications 설정으로 제어합니다:

도구 승인#

히스토리

GitLab Duo는 도구를 사용해야 할 때 시작 전에 승인을 요청합니다. 예를 들어 파일을 읽거나 명령을 실행해야 할 때 요청합니다.

선택지는 다음과 같습니다:

Note

Approve for session 옵션을 사용하려면 관리자가 그룹이나 인스턴스에서 이 옵션을 켜야 합니다. 자세한 내용은 도구 승인을 참고합니다.

헤드리스 모드#

Warning

헤드리스 모드는 통제된 샌드박스 환경에서 신중하게 사용합니다.

워크플로를 비대화식으로 실행하려면 환경에 맞는 명령을 사용합니다:

glab duo cli run을 사용합니다:

glab duo cli run --goal "Your goal or prompt here"

예를 들어 ESLint 명령을 실행하고 오류를 GitLab Duo CLI로 넘겨 해결할 수 있습니다:

glab duo cli run --goal "Fix these errors: $eslint_output"

duo run을 사용합니다:

duo run --goal "Your goal or prompt here"

예를 들어 ESLint 명령을 실행하고 오류를 GitLab Duo CLI로 넘겨 해결할 수 있습니다:

duo run --goal "Fix these errors: $eslint_output"

헤드리스 모드를 사용하면 GitLab Duo CLI는 다음과 같이 동작합니다:

모델 선택#

히스토리

인터랙티브 모드나 헤드리스 모드에서 사용할 모델을 선택할 수 있습니다.

인터랙티브 모드의 경우#

선택한 모델은 세션이 바뀌어도 유지되며, 대화 도중에 컨텍스트를 잃지 않고 모델을 전환할 수 있습니다.

사전 요구 사항:

인터랙티브 모드에서 모델을 선택하려면 다음과 같이 합니다:

  1. 인터랙티브 모드에서 /model을 입력하고 Enter를 누릅니다.
  2. 화살표 키로 사용 가능한 모델 목록을 훑어보거나, 모델 이름을 입력해 목록을 필터링합니다.
  3. 모델을 선택하고 Enter를 눌러 해당 모델로 전환합니다.

헤드리스 모드의 경우#

선택한 모델은 세션이 바뀌면 유지되지 않습니다.

사전 요구 사항:

헤드리스 모드에서 모델을 선택하려면 다음과 같이 합니다:

  1. 모델의 gitlab_identifier를 찾습니다.

  2. GitLab Duo CLI를 실행할 때 --model 옵션이나 GITLAB_DUO_MODEL 환경 변수를 gitlab_identifier 값으로 설정합니다.

--model 옵션을 사용합니다:

glab duo cli --model <gitlab_identifier_for_the_model>

GITLAB_DUO_MODEL 환경 변수를 사용합니다:

GITLAB_DUO_MODEL=<gitlab_identifier_for_the_model> glab duo cli

예를 들어 GPT-5-Codex - OpenAI를 사용하려면 다음과 같이 합니다:

glab duo cli --model gpt_5_codex
GITLAB_DUO_MODEL=gpt_5_codex glab duo cli

--model 옵션을 사용합니다:

duo --model <gitlab_identifier_for_the_model>

GITLAB_DUO_MODEL 환경 변수를 사용합니다:

GITLAB_DUO_MODEL=<gitlab_identifier_for_the_model> duo

예를 들어 GPT-5-Codex - OpenAI를 사용하려면 다음과 같이 합니다:

duo --model gpt_5_codex
GITLAB_DUO_MODEL=gpt_5_codex duo

세션 전환#

GitLab Duo Chat 세션은 대화 기록과 워크플로 데이터를 저장하며, GitLab Duo CLI, GitLab UI, 에디터 확장에서 공유됩니다.

예를 들어 브라우저에서 대화를 시작하고 터미널에서 이어 갈 수 있습니다.

세션을 탐색하고 전환하려면 다음과 같이 합니다:

  1. 인터랙티브 모드에서 /sessions를 입력하고 Enter를 누릅니다.
  2. 화살표 키로 사용 가능한 세션 목록을 훑어보거나, 텍스트를 입력해 목록을 필터링합니다.
  3. 세션을 선택하고 Enter를 누릅니다.

헤드리스 모드에서 세션을 전환하려면 --existing-session-id 옵션을 사용합니다.

Model Context Protocol(MCP) 연결#

GitLab Duo CLI를 로컬 또는 원격 MCP 서버에 연결하려면 GitLab IDE 확장과 동일한 MCP 구성을 사용합니다. 자세한 방법은 MCP 서버 구성을 참고합니다.

관련 주제#

문제 해결#

GitLab Duo CLI를 사용할 때 다음 문제가 발생할 수 있습니다.

인증서 오류#

다음과 같은 인증서 오류가 발생할 수 있습니다:

Error: unable to verify the first certificate
Error: self-signed certificate in certificate chain

이 오류는 조직이 HTTPS를 가로채는 프록시 등에 사용자 지정 인증 기관(Certificate Authority, CA)을 사용할 때 발생합니다.

인증서 오류를 해결하려면 다음 방법 중 하나를 사용합니다:

인증서 오류 무시#

그래도 인증서 오류가 계속되면 인증서 검증을 비활성화할 수 있습니다.

Warning

인증서 검증을 비활성화하면 보안 위험이 있습니다. 운영 환경에서는 검증을 비활성화하지 않습니다.

인증서 오류는 잠재적인 보안 침해를 알리는 신호이므로, 비활성화해도 안전하다고 확신할 때만 인증서 검증을 비활성화합니다.

사전 요구 사항:

인증서 검증을 비활성화하려면 다음과 같이 합니다:

export NODE_TLS_REJECT_UNAUTHORIZED=0

GitLab Duo CLI 사용

GitLab v19.4
Tier: Premium, Ultimate
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
원문 보기

요약

GitLab Duo CLI는 두 가지 모드로 사용할 수 있습니다: GitLab Duo CLI를 인터랙티브 모드로 사용하려면 다음과 같이 합니다: 환경에 맞는 명령을 입력해 인터랙티브 모드를 시작합니다: 터미널 창에 프롬프트 >가 나타납니다.

GitLab Duo CLI는 두 가지 모드로 사용할 수 있습니다:

  • 인터랙티브 모드: GitLab UI 나 에디터 확장의 GitLab Duo Chat과 비슷한 채팅 환경을 제공합니다. 빌드 모드와 플랜 모드를 지원합니다.
  • 헤드리스 모드: 러너, 스크립트를 비롯한 자동화 워크플로에서 비대화식으로 사용할 수 있습니다.

사전 요구 사항#

  • GitLab Duo CLI가 설치되어 있고 설정되어 있어야 합니다.
  • 기본 GitLab Duo 네임스페이스가 설정되어 있거나, GitLab Duo에 접근할 수 있는 프로젝트가 열려 있어야 합니다.

인터랙티브 모드#

GitLab Duo CLI를 인터랙티브 모드로 사용하려면 다음과 같이 합니다:

  1. 환경에 맞는 명령을 입력해 인터랙티브 모드를 시작합니다:

   glab duo cli
   duo
  1. 터미널 창에 프롬프트 >가 나타납니다. 프롬프트 뒤에 질문이나 요청을 입력하고 Enter를 누릅니다.

    예를 들면 다음과 같습니다:

    What is this repository about?
    
    Which issues need my attention?
    
    Help me implement issue 15.
    
    The pipelines in MR 23 are failing. Please help me fix them.
    

GitLab Duo CLI가 동작하는 중에 응답을 취소하려면 Escape를 누릅니다. GitLab Duo CLI는 현재 작업을 중단하고 프롬프트로 돌아갑니다.

프롬프트 기록을 보려면 ↑ 키를, 기록을 검색하려면 Control+R을 사용합니다.

빌드 모드와 플랜 모드 전환#

인터랙티브 모드에서는 작업 중에 GitLab Duo CLI를 다음 두 모드로 전환할 수 있습니다:

모드 권한 동작 방식
빌드 모드(기본값) 읽기·쓰기 GitLab Duo가 작업을 실행하고 프로젝트를 변경할 수 있습니다.
플랜 모드 읽기 전용 GitLab Duo가 변경 없이 프로젝트를 분석하고 계획을 만들 수 있습니다.

예를 들어 플랜 모드에서 GitLab Duo와 문제를 논의하며 시작한 다음, 준비가 되면 빌드 모드로 전환해 GitLab Duo에 계획을 구현하도록 지시할 수 있습니다.

GitLab Duo CLI는 > 프롬프트 아래에 현재 모드를 표시합니다. 모드를 전환하려면 Tab을 누릅니다.

슬래시 명령어#

히스토리

인터랙티브 모드에서는 슬래시 명령어로 GitLab Duo CLI를 구성하고 작업을 수행합니다. 프롬프트에 슬래시 명령어를 입력하고 Enter를 누릅니다.

사용할 수 있는 슬래시 명령어는 다음과 같습니다:

명령어 설명
/copy GitLab Duo의 마지막 응답을 클립보드에 복사합니다.
/doctor GitLab Duo CLI 환경의 진단 정보를 표시합니다.
/exit GitLab Duo CLI를 종료합니다.
/feedback 버그 리포트나 기능 요청을 제출합니다.
/goal 목표를 향해 진행하는 세션을 시작합니다.
/help 사용할 수 있는 슬래시 명령어 목록을 표시합니다.
/mcp 구성된 MCP 서버와 그 상태를 봅니다.
/model 현재 세션의 AI 모델을 전환합니다.
/new 새 채팅 세션을 시작합니다.
/sessions 세션을 탐색하고 검색하고 전환합니다.
/settings 설정 패널을 엽니다.
/skills 현재 프로젝트에서 사용할 수 있는 Agent Skills를 나열합니다.

슬래시 명령어를 직접 만들 수도 있습니다. 자세한 내용은 사용자 정의 슬래시 명령어를 참고합니다.

설정#

히스토리

설정을 변경하려면 다음과 같이 합니다:

  1. 인터랙티브 모드에서 /settings를 입력하고 Enter를 누릅니다.
  2. 화살표 키로 설정 목록을 이동합니다.
  3. 선택한 설정을 변경하려면 Enter 또는 Space를 누릅니다.
  4. 패널을 닫으려면 Escape를 누릅니다.

변경 사항은 세션이 바뀌어도 유지됩니다.

사용할 수 있는 설정은 다음과 같습니다:

설정 설명
Telemetry GitLab Duo 개선을 위해 익명 사용 데이터를 전송합니다.
Enable global skills (실험) ~/.agents/skills/와 ~/.gitlab/duo/skills/에서 사용자 수준 Agent Skills를 검색합니다. 변경 사항을 적용하려면 재시작해야 합니다.
Notifications 시스템 알림을 제어합니다(auto 또는 disabled).
Show work items in new sessions 새 세션을 시작할 때 열린 작업 항목을 표시합니다.
Theme 테마 설정을 변경합니다. 선택지는 auto, dark, light, dark high contrast, light high contrast 입니다.

시스템 알림#

히스토리

GitLab Duo CLI는 터미널 창에 포커스가 없는 동안 세션에 사용자의 확인이 필요할 때 (예: 작업을 마쳤거나 도구 승인이 필요할 때) 시스템 알림을 보낼 수 있습니다.

알림은 설정 패널의 Notifications 설정으로 제어합니다:

도구 승인#

히스토리

GitLab Duo는 도구를 사용해야 할 때 시작 전에 승인을 요청합니다. 예를 들어 파일을 읽거나 명령을 실행해야 할 때 요청합니다.

선택지는 다음과 같습니다:

Note

Approve for session 옵션을 사용하려면 관리자가 그룹이나 인스턴스에서 이 옵션을 켜야 합니다. 자세한 내용은 도구 승인을 참고합니다.

헤드리스 모드#

Warning

헤드리스 모드는 통제된 샌드박스 환경에서 신중하게 사용합니다.

워크플로를 비대화식으로 실행하려면 환경에 맞는 명령을 사용합니다:

glab duo cli run을 사용합니다:

glab duo cli run --goal "Your goal or prompt here"

예를 들어 ESLint 명령을 실행하고 오류를 GitLab Duo CLI로 넘겨 해결할 수 있습니다:

glab duo cli run --goal "Fix these errors: $eslint_output"

duo run을 사용합니다:

duo run --goal "Your goal or prompt here"

예를 들어 ESLint 명령을 실행하고 오류를 GitLab Duo CLI로 넘겨 해결할 수 있습니다:

duo run --goal "Fix these errors: $eslint_output"

헤드리스 모드를 사용하면 GitLab Duo CLI는 다음과 같이 동작합니다:

모델 선택#

히스토리

인터랙티브 모드나 헤드리스 모드에서 사용할 모델을 선택할 수 있습니다.

인터랙티브 모드의 경우#

선택한 모델은 세션이 바뀌어도 유지되며, 대화 도중에 컨텍스트를 잃지 않고 모델을 전환할 수 있습니다.

사전 요구 사항:

인터랙티브 모드에서 모델을 선택하려면 다음과 같이 합니다:

  1. 인터랙티브 모드에서 /model을 입력하고 Enter를 누릅니다.
  2. 화살표 키로 사용 가능한 모델 목록을 훑어보거나, 모델 이름을 입력해 목록을 필터링합니다.
  3. 모델을 선택하고 Enter를 눌러 해당 모델로 전환합니다.

헤드리스 모드의 경우#

선택한 모델은 세션이 바뀌면 유지되지 않습니다.

사전 요구 사항:

헤드리스 모드에서 모델을 선택하려면 다음과 같이 합니다:

  1. 모델의 gitlab_identifier를 찾습니다.

  2. GitLab Duo CLI를 실행할 때 --model 옵션이나 GITLAB_DUO_MODEL 환경 변수를 gitlab_identifier 값으로 설정합니다.

--model 옵션을 사용합니다:

glab duo cli --model <gitlab_identifier_for_the_model>

GITLAB_DUO_MODEL 환경 변수를 사용합니다:

GITLAB_DUO_MODEL=<gitlab_identifier_for_the_model> glab duo cli

예를 들어 GPT-5-Codex - OpenAI를 사용하려면 다음과 같이 합니다:

glab duo cli --model gpt_5_codex
GITLAB_DUO_MODEL=gpt_5_codex glab duo cli

--model 옵션을 사용합니다:

duo --model <gitlab_identifier_for_the_model>

GITLAB_DUO_MODEL 환경 변수를 사용합니다:

GITLAB_DUO_MODEL=<gitlab_identifier_for_the_model> duo

예를 들어 GPT-5-Codex - OpenAI를 사용하려면 다음과 같이 합니다:

duo --model gpt_5_codex
GITLAB_DUO_MODEL=gpt_5_codex duo

세션 전환#

GitLab Duo Chat 세션은 대화 기록과 워크플로 데이터를 저장하며, GitLab Duo CLI, GitLab UI, 에디터 확장에서 공유됩니다.

예를 들어 브라우저에서 대화를 시작하고 터미널에서 이어 갈 수 있습니다.

세션을 탐색하고 전환하려면 다음과 같이 합니다:

  1. 인터랙티브 모드에서 /sessions를 입력하고 Enter를 누릅니다.
  2. 화살표 키로 사용 가능한 세션 목록을 훑어보거나, 텍스트를 입력해 목록을 필터링합니다.
  3. 세션을 선택하고 Enter를 누릅니다.

헤드리스 모드에서 세션을 전환하려면 --existing-session-id 옵션을 사용합니다.

Model Context Protocol(MCP) 연결#

GitLab Duo CLI를 로컬 또는 원격 MCP 서버에 연결하려면 GitLab IDE 확장과 동일한 MCP 구성을 사용합니다. 자세한 방법은 MCP 서버 구성을 참고합니다.

관련 주제#

문제 해결#

GitLab Duo CLI를 사용할 때 다음 문제가 발생할 수 있습니다.

인증서 오류#

다음과 같은 인증서 오류가 발생할 수 있습니다:

Error: unable to verify the first certificate
Error: self-signed certificate in certificate chain

이 오류는 조직이 HTTPS를 가로채는 프록시 등에 사용자 지정 인증 기관(Certificate Authority, CA)을 사용할 때 발생합니다.

인증서 오류를 해결하려면 다음 방법 중 하나를 사용합니다:

인증서 오류 무시#

그래도 인증서 오류가 계속되면 인증서 검증을 비활성화할 수 있습니다.

Warning

인증서 검증을 비활성화하면 보안 위험이 있습니다. 운영 환경에서는 검증을 비활성화하지 않습니다.

인증서 오류는 잠재적인 보안 침해를 알리는 신호이므로, 비활성화해도 안전하다고 확신할 때만 인증서 검증을 비활성화합니다.

사전 요구 사항:

인증서 검증을 비활성화하려면 다음과 같이 합니다:

export NODE_TLS_REJECT_UNAUTHORIZED=0