InfoGrab Docs

소프트웨어 개발 플로우

요약

소프트웨어 개발 플로우는 소프트웨어 개발 라이프사이클 전반에 걸쳐 AI가 생성한 솔루션을 만드는 데 도움을 줍니다. 이 플로우는 VS Code, Visual Studio, JetBrains에서 사용할 수 있습니다. 소프트웨어 개발 플로우와 GitLab Duo Chat 모두 다른 탭에서 IDE에서 사용할 수 있습니다.

모델 정보
히스토리
  • GitLab 17.4에서 duo_workflow라는 플래그와 함께 비공개 베타로 도입. GitLab 팀원만 사용 가능.
  • GitLab 18.2에서 GitLab.com, GitLab Self-Managed, GitLab Dedicated에서 활성화되고 베타로 변경.
  • GitLab 18.8에서 일반 공개. 기능 플래그 duo_workflow 제거.
  • GitLab 18.10에서 GitLab Credits를 사용하여 GitLab.com의 Free 티어에서 사용 가능.

소프트웨어 개발 플로우는 소프트웨어 개발 라이프사이클 전반에 걸쳐 AI가 생성한 솔루션을 만드는 데 도움을 줍니다. 이전에 GitLab Duo Workflow로 알려진 이 플로우는:

  • IDE에서 실행되므로 컨텍스트나 도구를 전환할 필요가 없습니다.
  • 프롬프트에 응답하여 계획을 만들고 실행합니다.
  • 프로젝트의 저장소에 제안된 변경 사항을 스테이징합니다. 제안을 수락, 수정 또는 거부할 시기를 제어할 수 있습니다.
  • 프로젝트 구조, 코드베이스 및 이력의 컨텍스트를 이해합니다. 관련 GitLab 이슈 또는 머지 리퀘스트와 같은 자체 컨텍스트를 추가할 수도 있습니다.

이 플로우는 VS Code, Visual Studio, JetBrains에서 사용할 수 있습니다.

플로우와 Chat 비교#

소프트웨어 개발 플로우와 GitLab Duo Chat 모두 다른 탭에서 IDE에서 사용할 수 있습니다.

복잡한 개발 작업에는 소프트웨어 개발 플로우를 사용합니다.

  • 플로우는 포괄적인 컨텍스트를 수집하고 검토할 수 있는 자세한 계획을 만들고 작업을 체계적으로 진행합니다.
  • 플로우는 대규모 컨텍스트 창이 필요하고 반복이 필요한 코드 생성에 더 나은 결과를 제공하는 더 긴 심층 세션에 이상적인 구조적 접근 방식을 사용합니다.
  • 각 플로우에는 시작과 끝이 있습니다. 새 플로우를 시작하면 컨텍스트를 다시 수집하고 프로젝트의 현재 상태를 기반으로 새 계획을 만듭니다.

대화 상호작용에서 방향을 안내할 때는 GitLab Duo Chat을 사용합니다.

  • Chat은 정보를 수집하여 질문에 답하고, 제안을 제공하고, 프롬프트에 응답하여 자율적으로 사용자를 대신하여 작업을 수행할 수 있습니다.
  • Chat은 지속적인 대화를 유지하므로 진행 중인 토론으로 돌아가 중단한 곳에서 계속할 수 있습니다.

두 가지 모두 비슷한 작업에 도움을 줄 수 있지만 다르게 작동합니다. 플로우는 포괄적인 컨텍스트를 미리 수집하고 최소한의 인간 상호작용으로 실행됩니다. Chat은 지속적인 피드백 루프로 작동하고 대화 중에 필요에 따라 컨텍스트를 수집합니다. 예를 들어, 플로우는 접근 방식을 제안하기 전에 다양한 솔루션을 고려하는 반면 Chat은 빠른 결과를 제공하기 위해 첫 번째 실행 가능한 경로로 바로 이동합니다.

소프트웨어 개발 플로우 사용#

전제 조건:

플로우를 사용하려면:

  1. IDE에서 GitLab Duo Agent Platform([duo-agentic-chat])을 선택합니다.

  2. 플로우 탭을 선택합니다.

  3. 텍스트 상자에 코드 작업을 자세히 지정합니다.

    • 플로우는 프로젝트 브랜치에서 Git이 액세스할 수 있는 모든 파일을 인식합니다.

    • 채팅에 대한 추가 컨텍스트를 제공할 수 있습니다.

    • 플로우는 외부 소스나 웹에 액세스할 수 없습니다.

    • 예를 들어:

      I have a large Ruby class that is used in a few places and I want to break it down.
      Analyze this class and see what sub-methods or properties can be delegated to a
      separate class. Then, propose a transition plan to implement this new sub-class
      and update all of the required tests.
      
  4. 시작을 선택합니다.

작업을 설명한 후 플로우가 계획을 생성하고 실행합니다. 플로우를 일시 중지하거나 계획을 조정하도록 요청할 수 있습니다.

지원되는 언어#

소프트웨어 개발 플로우는 공식적으로 다음 언어를 지원합니다:

  • CSS
  • Go
  • HTML
  • Java
  • JavaScript
  • Markdown
  • Python
  • Ruby
  • TypeScript

플로우가 액세스하는 API#

솔루션을 만들고 문제의 컨텍스트를 이해하기 위해 플로우는 여러 GitLab API에 액세스합니다.

구체적으로 ai_workflows 범위가 있는 OAuth 토큰은 다음 API에 액세스할 수 있습니다:

감사 로그#

소프트웨어 개발 플로우는 각 API 요청에 대해 감사 이벤트를 생성합니다. GitLab Self-Managed 인스턴스에서 인스턴스 감사 이벤트 페이지에서 이러한 이벤트를 볼 수 있습니다.

위험#

소프트웨어 개발 플로우는 GitLab 계정을 사용하여 작업을 수행할 수 있는 AI 에이전트를 사용합니다. 대규모 언어 모델을 기반으로 한 AI 도구는 예측할 수 없을 수 있습니다. 사용 전에 잠재적 위험을 검토합니다.

VS Code, JetBrains IDE, Visual Studio의 소프트웨어 개발 플로우는 로컬 워크스테이션에서 워크플로를 실행합니다. 이 제품을 활성화하기 전에 문서화된 모든 위험을 고려합니다. 주요 위험은 다음과 같습니다:

  • 소프트웨어 개발 플로우는 Git에 의해 추적되지 않거나 .gitignore에서 제외된 파일을 포함하여 프로젝트의 로컬 파일 시스템에 있는 파일에 액세스할 수 있습니다. 여기에는 .env 파일의 자격 증명과 같은 민감한 정보가 포함될 수 있습니다.
  • 소프트웨어 개발 플로우에는 사용자 ID에 연결된 ai_workflows 범위가 있는 시간 제한 GitLab OAuth 토큰이 부여됩니다. 이 토큰은 워크플로 기간 동안 지정된 GitLab API에 대한 액세스를 허용합니다. 기본적으로 명시적 승인 없이는 읽기 작업만 수행되지만 권한에 따라 쓰기 작업이 가능합니다.
  • 소프트웨어 개발 플로우에 추가 자격 증명이나 시크릿(예: 메시지 또는 목표)을 제공하지 마십시오. 이는 의도치 않게 사용되거나 코드 또는 API 호출에서 노출될 수 있습니다.

소프트웨어 개발 플로우

Tier: [Free](../../../../subscriptions/gitlab_credits.md#for-the-free-tier-on-gitlabcom), Premium, Ultimate
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
원문 보기
요약

소프트웨어 개발 플로우는 소프트웨어 개발 라이프사이클 전반에 걸쳐 AI가 생성한 솔루션을 만드는 데 도움을 줍니다. 이 플로우는 VS Code, Visual Studio, JetBrains에서 사용할 수 있습니다. 소프트웨어 개발 플로우와 GitLab Duo Chat 모두 다른 탭에서 IDE에서 사용할 수 있습니다.

모델 정보
히스토리
  • GitLab 17.4에서 duo_workflow라는 플래그와 함께 비공개 베타로 도입. GitLab 팀원만 사용 가능.
  • GitLab 18.2에서 GitLab.com, GitLab Self-Managed, GitLab Dedicated에서 활성화되고 베타로 변경.
  • GitLab 18.8에서 일반 공개. 기능 플래그 duo_workflow 제거.
  • GitLab 18.10에서 GitLab Credits를 사용하여 GitLab.com의 Free 티어에서 사용 가능.

소프트웨어 개발 플로우는 소프트웨어 개발 라이프사이클 전반에 걸쳐 AI가 생성한 솔루션을 만드는 데 도움을 줍니다. 이전에 GitLab Duo Workflow로 알려진 이 플로우는:

  • IDE에서 실행되므로 컨텍스트나 도구를 전환할 필요가 없습니다.
  • 프롬프트에 응답하여 계획을 만들고 실행합니다.
  • 프로젝트의 저장소에 제안된 변경 사항을 스테이징합니다. 제안을 수락, 수정 또는 거부할 시기를 제어할 수 있습니다.
  • 프로젝트 구조, 코드베이스 및 이력의 컨텍스트를 이해합니다. 관련 GitLab 이슈 또는 머지 리퀘스트와 같은 자체 컨텍스트를 추가할 수도 있습니다.

이 플로우는 VS Code, Visual Studio, JetBrains에서 사용할 수 있습니다.

플로우와 Chat 비교#

소프트웨어 개발 플로우와 GitLab Duo Chat 모두 다른 탭에서 IDE에서 사용할 수 있습니다.

복잡한 개발 작업에는 소프트웨어 개발 플로우를 사용합니다.

  • 플로우는 포괄적인 컨텍스트를 수집하고 검토할 수 있는 자세한 계획을 만들고 작업을 체계적으로 진행합니다.
  • 플로우는 대규모 컨텍스트 창이 필요하고 반복이 필요한 코드 생성에 더 나은 결과를 제공하는 더 긴 심층 세션에 이상적인 구조적 접근 방식을 사용합니다.
  • 각 플로우에는 시작과 끝이 있습니다. 새 플로우를 시작하면 컨텍스트를 다시 수집하고 프로젝트의 현재 상태를 기반으로 새 계획을 만듭니다.

대화 상호작용에서 방향을 안내할 때는 GitLab Duo Chat을 사용합니다.

  • Chat은 정보를 수집하여 질문에 답하고, 제안을 제공하고, 프롬프트에 응답하여 자율적으로 사용자를 대신하여 작업을 수행할 수 있습니다.
  • Chat은 지속적인 대화를 유지하므로 진행 중인 토론으로 돌아가 중단한 곳에서 계속할 수 있습니다.

두 가지 모두 비슷한 작업에 도움을 줄 수 있지만 다르게 작동합니다. 플로우는 포괄적인 컨텍스트를 미리 수집하고 최소한의 인간 상호작용으로 실행됩니다. Chat은 지속적인 피드백 루프로 작동하고 대화 중에 필요에 따라 컨텍스트를 수집합니다. 예를 들어, 플로우는 접근 방식을 제안하기 전에 다양한 솔루션을 고려하는 반면 Chat은 빠른 결과를 제공하기 위해 첫 번째 실행 가능한 경로로 바로 이동합니다.

소프트웨어 개발 플로우 사용#

전제 조건:

플로우를 사용하려면:

  1. IDE에서 GitLab Duo Agent Platform([duo-agentic-chat])을 선택합니다.

  2. 플로우 탭을 선택합니다.

  3. 텍스트 상자에 코드 작업을 자세히 지정합니다.

    • 플로우는 프로젝트 브랜치에서 Git이 액세스할 수 있는 모든 파일을 인식합니다.

    • 채팅에 대한 추가 컨텍스트를 제공할 수 있습니다.

    • 플로우는 외부 소스나 웹에 액세스할 수 없습니다.

    • 예를 들어:

      I have a large Ruby class that is used in a few places and I want to break it down.
      Analyze this class and see what sub-methods or properties can be delegated to a
      separate class. Then, propose a transition plan to implement this new sub-class
      and update all of the required tests.
      
  4. 시작을 선택합니다.

작업을 설명한 후 플로우가 계획을 생성하고 실행합니다. 플로우를 일시 중지하거나 계획을 조정하도록 요청할 수 있습니다.

지원되는 언어#

소프트웨어 개발 플로우는 공식적으로 다음 언어를 지원합니다:

  • CSS
  • Go
  • HTML
  • Java
  • JavaScript
  • Markdown
  • Python
  • Ruby
  • TypeScript

플로우가 액세스하는 API#

솔루션을 만들고 문제의 컨텍스트를 이해하기 위해 플로우는 여러 GitLab API에 액세스합니다.

구체적으로 ai_workflows 범위가 있는 OAuth 토큰은 다음 API에 액세스할 수 있습니다:

감사 로그#

소프트웨어 개발 플로우는 각 API 요청에 대해 감사 이벤트를 생성합니다. GitLab Self-Managed 인스턴스에서 인스턴스 감사 이벤트 페이지에서 이러한 이벤트를 볼 수 있습니다.

위험#

소프트웨어 개발 플로우는 GitLab 계정을 사용하여 작업을 수행할 수 있는 AI 에이전트를 사용합니다. 대규모 언어 모델을 기반으로 한 AI 도구는 예측할 수 없을 수 있습니다. 사용 전에 잠재적 위험을 검토합니다.

VS Code, JetBrains IDE, Visual Studio의 소프트웨어 개발 플로우는 로컬 워크스테이션에서 워크플로를 실행합니다. 이 제품을 활성화하기 전에 문서화된 모든 위험을 고려합니다. 주요 위험은 다음과 같습니다:

  • 소프트웨어 개발 플로우는 Git에 의해 추적되지 않거나 .gitignore에서 제외된 파일을 포함하여 프로젝트의 로컬 파일 시스템에 있는 파일에 액세스할 수 있습니다. 여기에는 .env 파일의 자격 증명과 같은 민감한 정보가 포함될 수 있습니다.
  • 소프트웨어 개발 플로우에는 사용자 ID에 연결된 ai_workflows 범위가 있는 시간 제한 GitLab OAuth 토큰이 부여됩니다. 이 토큰은 워크플로 기간 동안 지정된 GitLab API에 대한 액세스를 허용합니다. 기본적으로 명시적 승인 없이는 읽기 작업만 수행되지만 권한에 따라 쓰기 작업이 가능합니다.
  • 소프트웨어 개발 플로우에 추가 자격 증명이나 시크릿(예: 메시지 또는 목표)을 제공하지 마십시오. 이는 의도치 않게 사용되거나 코드 또는 API 호출에서 노출될 수 있습니다.