通过华为云码道CodeArts代码智能体实现流水线智能化
流水线服务(CodeArts Pipeline)支持以“CodeArts工具链插件”形式与华为云码道CodeArts代码智能体集成。CodeArts工具链插件通过灵活配置提示词(Prompt)、技能(Skill)等指令可让智能体更高效完成流水线任务相关操作。
无需学习控制台的相关操作,就可以直接在华为云码道CodeArts代码智能体聊天窗口通过自然语言指令,让智能体实现流水线云端化,高效地完成流水线查询、流水线运行管理、模板管理等日常操作。
核心价值
- 免切换操作:无需登录流水线控制台,无需在控制台各个界面来回操作切换,即可在智能体聊天窗完成流水线任务相关操作。
- 自然语言交互: “对话即操作”,通过指令即可完成流水线查询、流水线运行管理、流水线状态监控与统计等操作。
- 全场景覆盖:覆盖流水线查询、流水线运行管理、日志管理、模板管理、分组管理和监控与统计场景。
- 研发流程贯通:与需求管理、编译构建、代码托管、代码检查等服务联动,实现端到端研发流程。
工作原理
流水线服务通过CodeArts工具链插件,将自身API能力开放给华为云码道CodeArts代码智能体调用。智能体理解用户的自然语言指令后,通过KooCLI调用流水线API执行对应操作,并将结果返回至聊天窗口。
CodeArts工具链插件
CodeArts工具链插件将需求管理、代码托管、代码检查、测试、流水线与编译构建、制品管理、部署发布等CodeArts研发服务以技能(Skill)和子代理(SubAgent)形式集成在代码智能体中。用户安装插件后,无需切换控制台,直接在智能体聊天窗口通过自然语言指令即可触发对应服务操作。主Agent接收用户指令后,通过Skill获取执行规范与路由策略:交互式操作由Skill引导完成,复杂编排任务委托SubAgent在隔离上下文中自主执行并返回结果。CodeArts工具链插件包含的skill及subagent详情请查阅CodeArts全量Subagent和Skill。
流水线服务在CodeArts工具链插件中提供了一个技能(Skill)和一个子代理(Subagent)。
技能(codearts-pipeline-expert)是流水线的交互式执行专家,覆盖流水线查询、流水线运行管理、日志管理、模板管理、分组管理和监控与统计等全场景,能理解用户的自然语言意图并逐步引导完成操作;当操作复杂度高、涉及批量处理或多步编排时,技能会将任务转交给子代理(codearts-pipeline-assistant)执行。子代理在独立上下文中自主运行,不占用主会话资源,可自动完成执行流水线任务、查询流水线详情、查看流水线日志、统计项目下流水线的平均耗时等复杂编排任务,完成后返回结构化结果报告。两者协同构成了流水线插件的两层执行架构,使智能体能灵活应对从单次查询到批量编排的全场景需求。
适用场景
在使用流水线时,以下场景均可让华为云码道CodeArts代码智能体完成。
| 场景分类 | 场景说明 | 自然语言指令示例 |
|---|---|---|
| 流水线查询 | 查询流水线列表,查询流水线详情。 |
|
| 流水线运行管理 | 查询流水线运行记录列表,查询流水线运行详情,查询流水线阶段或步骤状态,触发流水线运行。 |
|
| 日志管理 | 获取流水线运行日志,获取流水线执行步骤日志。 |
|
| 模板管理 | 查询模板列表,查询模板详情。 |
|
| 分组管理 | 查询流水线分组树。 | 查询项目“my-project”下的流水线分组树。 |
| 监控与统计 | 批量获取流水线状态,查询流水线执行记录,查询流水线的构建成功率,查询流水线的耗时,查询流水线状态分布。 |
|
前提条件
| 序号 | 条件项 | 说明 |
|---|---|---|
| 1 | 已安装华为云码道CodeArts代码智能体,并完成账号登录。 | 流水线智能化需在码道代码智能体中体现。 |
| 4 | 通过码道代码智能体使用流水线服务的相关功能,需已开通并授权使用CodeArts Pipeline。 |
本操作执行工具调用、大模型推理会消耗码道代码智能体账号下的token或者积分。
操作步骤
- 单击下载CodeArts工具链插件。
- 单击执行插件包中install.bat脚本,完成插件和KooCLI安装。
- 完成KooCLI初始化配置,将常用的永久AK/SK和区域信息存储在配置文件中,避免执行操作时频繁输入这些固定信息。
- 打开华为云码道代码智能体聊天窗口,用自然语言告诉它你想做什么,就可以开始使用。
- 首次使用码道代码智能体执行流水线任务相关操作时,分析过程时间较长,随着指令使用的次数增加,分析速度会逐步提升,响应时间逐渐缩短。
- 不同码道代码智能体客户端的界面风格有所差异,实际操作请以所用工具的显示为准。
场景一:流水线查询
以下指令以查询流水线任务为例:
查看流水线“my-pipeline”的配置详情。 智能体开始分析任务并执行,整个过程在对话流里实时显示。执行成功后,您可以看到该流水线的配置信息。
效果示例:

场景二:流水线运行管理
以下指令以查询流水线运行管理任务为例:
查看流水线“my-pipeline”各阶段和步骤的执行状态。 智能体开始分析任务并执行。执行成功后,您可以看到该流水线各阶段和步骤的执行状态。
效果示例:

场景三:日志管理
以下指令以获取流水线日志任务为例:
下载流水线运行实例ID为“b04cb4159ef84d088794d177af413c41f”第2步的步骤日志。
智能体开始分析任务并执行。执行成功后,您可以看到该流水线日志已下载并保存成功。
效果示例:

场景四:模板管理
以下指令以查看模板任务为例:
查看模板“my-template”的详情。 智能体开始分析任务并执行。执行成功后,您可以看到该模板的详细信息。
效果示例:

场景五:分组管理
以下指令以查看流水线分组情况为例:
查询项目“my-project”下的流水线分组树。 智能体开始分析任务并执行。执行成功后,您可以看到该项目下的流水线分组情况。
效果示例:

场景六:监控与统计
以下指令以统计流水线平均耗时任务为例:
统计项目“my-project”下各流水线的平均耗时。 智能体开始分析任务并执行。执行成功后,您可以看到该项目下各流水线的平均耗时。
效果示例:

操作技巧
- 描述尽量详细:在指令中明确任务名称、项目名称、流水线运行实例ID等关键信息,有助于智能体更准确地执行。
- 分步骤执行:复杂任务建议分步骤执行(如先查询任务列表,再触发任务执行),便于逐步确认结果。
- 关注执行结果:关键操作(如删除任务、删除模板)请仔细检查智能体返回的结果后再确认。