GitLab Duo CLI 설정
GitLab v19.5Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
요약
다음 방법으로 GitLab Duo CLI의 동작을 변경할 수 있습니다: 설정을 변경하려면 다음과 같이 합니다: 변경 사항은 설정 파일에 저장되어 세션 간에 유지됩니다. GitLab Duo CLI는 /settings 패널에서 변경한 설정을 설정 파일에 저장합니다.
다음 방법으로 GitLab Duo CLI의 동작을 변경할 수 있습니다:
- 인터랙티브 모드의 설정 패널에서 변경합니다.
- 설정 패널에서 선택한 내용이 저장되는 설정 파일에서 변경합니다. 파일을 직접 편집할 수도 있습니다.
- 시스템 관리자가 설정을 강제하기 위해 배포하는 관리형 설정 파일로 변경합니다.
설정 패널#
히스토리
설정을 변경하려면 다음과 같이 합니다:
- 인터랙티브 모드에서
/settings를 입력하고 Enter를 누릅니다. - 방향키로 설정 목록을 이동합니다.
- 선택한 설정을 변경하려면 Enter 또는 Space를 누릅니다.
- 패널을 닫으려면 Escape를 누릅니다.
변경 사항은 설정 파일에 저장되어 세션 간에 유지됩니다. 조직이 설정을 강제하는 경우 패널에 Set by your organization이 표시되며 해당 설정은 변경할 수 없습니다.
다음 설정을 사용할 수 있습니다:
| 설정 | 설명 |
|---|---|
| Telemetry | GitLab Duo 개선을 위해 익명 사용 데이터를 전송합니다. |
| Notifications | 시스템 알림을 제어합니다(auto 또는 disabled). |
| Show work items on session start | 새 세션을 시작할 때 열려 있는 작업 항목을 표시합니다. |
| Run suggested prompts as /goal sessions | 제안된 프롬프트를 일반 채팅 메시지 대신 /goal 세션으로 실행합니다. 변경 사항을 적용하려면 다시 시작해야 합니다. |
| Theme | 테마 설정을 변경합니다. 옵션은 auto, dark, light, dark high contrast, light high contrast입니다. |
설정 파일#
히스토리
- GitLab 19.5 릴리스 중 GitLab Duo CLI 9.26.0에서 도입되었습니다.
GitLab Duo CLI는 /settings 패널에서 변경한 설정을 설정 파일에 저장합니다.
파일을 직접 편집하거나, 컨테이너 이미지 등에서 미리 만들어 둘 수도 있습니다.
GitLab Duo CLI는 시작할 때 파일을 읽습니다. 파일에 한 변경 사항은 다음에 GitLab Duo CLI를 시작할 때 적용됩니다.
파일 위치#
파일 위치는 운영 체제에 따라 다릅니다:
| 운영 체제 | 경로 |
|---|---|
| Linux 및 macOS | ~/.gitlab/duo/settings.json |
| Windows | %APPDATA%\GitLab\duo\settings.json |
XDG_CONFIG_HOME을 설정한 경우 파일은 $XDG_CONFIG_HOME/gitlab/duo/settings.json입니다.
GitLab Duo CLI는 /settings 패널에서 처음 설정을 변경할 때 파일을 만듭니다.
파일 형식#
파일에는 JSON 객체가 있어야 하며 주석(// 및 /* */)과 후행 쉼표를 포함할 수 있습니다.
/settings 패널에서 설정을 변경하면 GitLab Duo CLI는 주석, 서식,
인식하지 못하는 키를 그대로 유지합니다.
다음 예시는 모든 설정을 기본값으로 지정합니다:
{
"telemetry": {
"enabled": true
},
"showWorkItemsInNewSessions": true,
"goalFlowInWelcomePrompts": true,
"notifications": {
"channel": "auto" // or "disabled"
},
"theme": "auto" // or "dark", "light", "dark-high-contrast", "light-high-contrast"
}
잘못된 파일과 값#
GitLab Duo CLI는 파일을 고치기 위해 삭제하거나 다시 쓰지 않습니다:
- 파일이 유효한 JSON이 아니면 GitLab Duo CLI는 파일 전체를 무시하고 경고를 기록합니다.
- 설정에 잘못된 값이 있으면 GitLab Duo CLI는 그 설정을 무시하고 경고를 기록합니다.
- 더 새로운 버전의 설정처럼 GitLab Duo CLI가 인식하지 못하는 설정은 무시합니다.
파일이 읽기 전용이면 /settings 패널에서 한 변경 사항은 현재 세션에만 적용됩니다.
관리형 설정 파일#
히스토리
- GitLab 19.5 릴리스 중 GitLab Duo CLI 9.27.0에서 도입되었습니다.
설정을 강제하려면 시스템 관리자가 각 머신에 관리형 설정 파일을 배포합니다. 예를 들어 모바일 장치 관리 도구나 그룹 정책을 사용할 수 있습니다.
관리형 설정 파일의 설정은 사용자가 설정 패널에서 한 변경을 포함하여 명령줄 옵션, 환경 변수, 설정 파일보다 우선합니다.
강제된 설정은 사용자가 변경할 수 없습니다. 파일에 없는 설정은 사용자가 계속 제어합니다.
파일 위치#
GitLab Duo CLI는 변경할 수 없는 고정된 위치에서 파일을 읽습니다:
| 운영 체제 | 경로 |
|---|---|
| Linux 및 기타 운영 체제 | /etc/gitlab/duo/settings.managed.json |
| macOS | /Library/Application Support/GitLab/duo/settings.managed.json |
| Windows | C:\Program Files\GitLab\duo\settings.managed.json |
쓰기 액세스는 시스템 관리자로 제한하고, 다른 모든 사용자에게는 읽기 전용 액세스를 부여합니다.
GitLab Duo CLI는 시작할 때 파일을 읽습니다. 파일의 변경 사항은 다음에 사용자가 GitLab Duo CLI를 시작할 때 적용됩니다.
Windows Subsystem for Linux(WSL)에서 GitLab Duo CLI는 배포판 내부의 Linux 경로를 읽으며, Windows 그룹 정책은 적용되지 않습니다.
파일 형식#
파일에는 JSON 객체가 있어야 하며 주석(// 및 /* */)과 후행 쉼표를 포함할 수 있습니다.
다음 예시는 강제할 수 있는 모든 설정을 지정합니다:
{
"telemetry": {
"enabled": false
},
"showWorkItemsInNewSessions": true,
"goalFlowInWelcomePrompts": true,
"notifications": {
"channel": "auto" // or "disabled"
},
}
설정 우선순위#
각 설정에 대해 GitLab Duo CLI는 다음 순서로 찾은 첫 번째 값을 사용합니다:
- 조직이 해당 설정을 강제하는 경우 관리형 설정 파일.
- 현재 세션에만 적용되는 명령줄 옵션과 환경 변수.
- 설정 파일.
- 기본값.