에이전트 툴 거버넌스
GitLab Duo Agent Platform에서 에이전트 툴의 실행 모드를 구성하고 관리하는 툴 거버넌스 기능을 설명합니다.
히스토리 GitLab 19.1에서 gitlab_duo_governance_settings 기능 플래그 가 있는 베타 버전으로 도입됨 . 기본적으로 활성화됨. 이 기능은 베타 상태입니다. 사전 고지 없이 변경될 수 있습니다. 자세한 내용은 GitLab Testing Agreement 를 참조하세요. 툴 거버넌스는 실행 경계에 위치합니다. 에이전트가 프로젝트에 허용된 후, 툴이 호출되기 전에 거버넌스 레이어가 사용자의 권한과 툴의 작업 카테고리에 대해 구성된 규칙을 참조한 다음 결과 모드를 적용합니다. 툴은 세 가지 작업 카테고리로 분류됩니다: Read : 정보만 검색하거나 표시하는 툴. Write : 리소스를 생성하거나 수정하는 툴. Delete : 리소스를 삭제하거나 되돌릴 수 없는 방식으로 제거하는 툴. 에이전트 툴 거버넌스(human-in-the-loop 가드레일)를 사용하면 관리자가 각 에이전트 툴이 실행 시점에 어떻게 적용될지 정의할 수 있습니다. 에이전트가 검토 없이 아무 툴이나 호출하도록 허용하는 대신, 각 툴을 다음 세 가지 모드 중 하나로 구성할 수 있습니다: Always Allow : 툴이 사용자에게 알리지 않고 자동으로 실행됩니다. Always Ask : 사용자에게 인라인 승인 카드가 표시되며, 작업이 진행되기 전에 승인하거나 거부해야 합니다. Always Deny : 툴이 완전히 차단되어 에이전트에게 보이지 않습니다. 에이전트는 툴을 볼 수 없으며 사용자에게도 프롬프트가 표시되지 않습니다. 이 기능은 Agentic Chat, IDE 익스텐션, 플로 전반에 적용됩니다. 기본 거버넌스 매트릭스 # 분류 모드 Read Always Allow Write Always Ask Delete Always Ask 승인 프롬프트 (Always Ask) # 에이전트가 Always Ask 로 구성된 툴을 호출하면 실행이 일시 중지되고 인라인 승인 카드가 표시됩니다. 카드에는 다음 내용이 표시됩니다: 호출되는 툴의 이름. 툴이 수행할 작업에 대한 설명. Approve 및 Reject 버튼. 승인하면 툴이 실행되고 에이전트가 계속 진행합니다. 거부하면 툴이 실행되지 않습니다. 에이전트는 거부 신호를 받고 대안적인 접근 방식을 시도하거나 중지할 수 있습니다. 거부 메시지 (Always Deny) # 에이전트가 해당 권한에 대해 Always Deny 로 구성된 툴을 호출하려 하면, 툴이 에이전트에게 표시되지 않습니다. 에이전트의 계획에 거부된 툴이 필요한 경우, 거버넌스 정책으로 인해 툴을 사용할 수 없다는 오류를 받게 됩니다. 규칙 해석 및 계단식 적용 # 규칙은 가장 구체적인 것부터 덜 구체적인 순서로 다음과 같이 해석됩니다: 프로젝트 수준 규칙 (구성된 경우). 그룹 수준 규칙 (구성된 경우). 기본 매트릭스 값. 프로젝트 수준 규칙은 동일한 툴에 대해 그룹 수준 규칙을 재정의하지만, 그룹 수준 규칙과 동일하거나 더 엄격하게만 설정할 수 있습니다. 그룹 수준 규칙은 기본값을 재정의합니다. 어떤 수준에서도 규칙이 구성되지 않은 경우, 툴은 기