Software Development Flow
- Tier: Premium, Ultimate
- Add-on: GitLab Duo Core, Pro, or Enterprise
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
- Status: Beta
The availability of this feature is controlled by a feature flag. For more information, see the history.
The Software Development Flow helps you create AI-generated solutions for work across the software development lifecycle. Formerly known as GitLab Duo Workflow, this flow:
- Runs in your IDE so that you do not have to switch contexts or tools.
- Creates and works through a plan, in response to your prompt.
- Stages proposed changes in your project’s repository. You control when to accept, modify, or reject the suggestions.
- Understands the context of your project structure, codebase, and history. You can also add your own context, such as relevant GitLab issues or merge requests.
This flow is available in VS Code, Visual Studio, and JetBrains.
Use the Software Development Flow
Prerequisites:
- Install and configure an editor extension for your IDE.
- Ensure you meet the other prerequisites.
To use the flow:
- On the left sidebar, select GitLab Duo Agent Platform (Beta) ( ).
- Select the Flows tab.
- In the text box, specify a code task in detail.
- The flow is aware of all files available to Git in the project branch.
- You can provide additional context for your chat.
- The flow cannot access external sources or the web.
- Select Start.
After you describe your task, a plan is generated and executed. You can pause or ask it to adjust the plan.
Supported languages
The Software Development Flow officially supports the following languages:
- CSS
- Go
- HTML
- Java
- JavaScript
- Markdown
- Python
- Ruby
- TypeScript
APIs that the flow has access to
To create solutions and understand the context of the problem, the flow accesses several GitLab APIs.
Specifically, an OAuth token with the ai_workflows scope has access
to the following APIs:
- Projects API
- Search API
- CI Pipelines API
- CI Jobs API
- Merge Requests API
- Epics API
- Issues API
- Notes API
- Usage Data API
Audit log
An audit event is created for each API request done by the Software Development Flow. On your GitLab Self-Managed instance, you can view these events on the instance audit events page.
Risks
The Software Development Flow is a beta feature and is subject to the GitLab Testing Agreement. This tool uses an AI agent that can perform actions using your GitLab account. AI tools based on large language models can be unpredictable; review potential risks before use.
The Software Development Flow in VS Code, JetBrains IDEs, and Visual Studio runs workflows on your local workstation. Consider all documented risks before enabling this product. Key risks include:
- The Software Development Flow can access files in the project’s local file system, including files not tracked by Git or excluded in
.gitignore. This may include sensitive information such as credentials in.envfiles. - The Software Development Flow is granted a time-limited GitLab OAuth token with the
ai_workflowsscope, linked to your user identity. This token allows access to designated GitLab APIs for the duration of the workflow. By default, only read operations are performed without explicit approval, but write operations are possible based on your permissions. - Do not provide the Software Development Flow with additional credentials or secrets (for example, in messages or goals), as these may be unintentionally used or exposed in code or API calls.
Give feedback
The Software Development Flow is in beta and your feedback is crucial to improve it for you and others. To report issues or suggest improvements, complete this survey.