Help us learn about your current experience with the documentation. Take the survey.

Agent flows

  • Tier: Premium, Ultimate
  • Add-on: GitLab Duo Core, Pro, or Enterprise
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
  • Status: Beta
  • LLM: Anthropic Claude Sonnet 4
  • Available on GitLab Duo with self-hosted models: Not supported

The availability of this feature is controlled by a feature flag. For more information, see the history.

软件工作流是第一个在 VS Code IDE 中可用的流程。 此前称为 GitLab Duo Workflow,软件工作流:

  • 在你的 IDE 中运行,无需切换上下文或工具。
  • 根据你的提示创建并执行计划。
  • 在项目的仓库中暂存建议的更改。 你可以控制何时接受、修改或拒绝这些建议。
  • 理解项目结构、代码库和历史记录的上下文。 你还可以添加自己的上下文,例如相关的 GitLab issues 或 merge requests。

先决条件

在 Visual Studio Code (VS Code) 中使用软件工作流之前,你必须:

步骤 1:配置你的 GitLab 环境

对于 GitLab.com

对于 GitLab Self-Managed

步骤 2:设置本地开发环境

连接到你的仓库

要在 VS Code 中使用软件工作流,确保你的仓库已正确连接。

  1. 在 VS Code 中,从顶部菜单选择 Terminal > New Terminal

  2. 克隆你的仓库:git clone <repository>

  3. 切换到仓库克隆的目录并检出你的分支:git checkout <branch_name>

  4. 确保你的项目被选中:

    1. 在左侧边栏,选择 GitLab Workflow tanuki )。
    2. 选择项目名称。如果你有多个项目,选择要使用的那个。
  5. 在终端中,确保你的仓库配置了远程仓库:git remote -v。结果应类似于:

    origin  [email protected]:gitlab-org/gitlab.git (fetch)
    origin  [email protected]:gitlab-org/gitlab.git (push)

    如果没有定义远程仓库,或者你有多个远程仓库:

    1. 在左侧边栏,选择 Source Control branch )。
    2. Source Control 标签上,右键单击并选择 Repositories
    3. 在你的仓库旁边,选择省略号( ellipsis_h ),然后选择 Remote > Add Remote
    4. 选择 Add remote from GitLab
    5. 选择一个远程仓库。

现在你可以使用软件工作流来帮助你解决编码任务。

在 VS Code 中使用软件工作流

软件工作流是 Agent Platform 中的一个流程。

要使用软件工作流:

  1. 在左侧边栏,选择 GitLab Duo Agent Platform (Beta) duo-agentic-chat )。
  2. 选择 Flows 标签。
  3. 在文本框中详细指定一个代码任务。
    • 软件工作流了解项目分支中所有可供 Git 使用的文件。
    • 你可以为你的聊天提供额外的 上下文
    • 软件工作流无法访问外部来源或网络。
  4. 选择 Start

描述你的任务后,会生成并执行一个计划。 你可以暂停或要求它调整计划。

支持的语言

软件工作流正式支持以下语言:

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

软件工作流可访问的 API

为了创建解决方案并理解问题的上下文, 软件工作流访问多个 GitLab API。

具体来说,具有 ai_workflows 范围的 OAuth token 可以访问 以下 API:

审计日志

软件工作流执行的每个 API 请求都会创建一个审计事件。 在你的 GitLab Self-Managed 实例上,你可以在 实例审计事件 页面上查看这些事件。

风险

软件工作流是一个实验性产品,用户在使用此工具前应考虑自身情况。 它受 GitLab 测试协议 约束。 软件工作流是一个 AI agent,被赋予了一些代表用户执行操作的能力。 基于 LLM 的 AI 工具本质上不可预测,你应该采取适当的预防措施。

VS Code 中的软件工作流在你的本地工作站上运行工作流。 在使用此产品之前,应考虑所有记录的风险。以下风险需要了解:

  1. 软件工作流可以访问你开始运行它的项目的本地文件系统。 软件工作流会尊重你的本地 .gitignore 文件, 但它仍然可以访问未提交到项目且未在 .gitignore 中排除的文件。 这类文件可能包含凭证(例如 .env 文件)。
  2. 软件工作流还会获得一个具有 ai_workflows 范围的限时 GitLab OAuth token, 该 token 使用你的用户身份。此 token 可用于代表你访问 GitLab API。该 token 仅限于工作流的持续时间,并且只能访问 GitLab 中的某些 API。 在未经用户批准的情况下,软件工作流只会执行读取操作,但该 token 在设计上仍然可以 代表用户执行写入操作。在运行软件工作流之前,你应该考虑 你的用户在 GitLab 中的访问权限。
  3. 你不应该在目标或消息中给软件工作流任何额外的凭证或密钥, 因为它可能会在代码或其他 API 调用中使用这些信息。

提供反馈

软件工作流是一个实验,你的反馈对于为你和他人改进它至关重要。 要报告问题或提出改进建议, 请完成此调查