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

场景二:任务执行与记录
以下指令以停止构建任务为例:
停止当前正在运行的构建任务my-build-task
智能体开始分析任务并执行。
效果示例:

场景三:模板管理
以下指令以查询自定义构建模板为例:
请帮我查询当前项目下所有自定义构建模板
智能体开始分析任务并执行。
效果示例:

场景四:日志管理
以下指令以获取全量日志为例:
请帮我获取构建任务my-build-task的全量运行日志
智能体开始分析任务并执行,码道代码智能体将全量日志保存在本地相关路径下,以便用户随时查看。
效果示例:

场景五:任务组管理
以下指令以修改分组信息为例:
请帮我将分组名称5678改为Group2
智能体开始分析任务并执行。
效果示例:

场景六:Keystore管理
以下指令以下载Keystore为例:
请帮我下载Keystore文件
智能体开始分析任务并执行,码道代码智能体将Keystore文件保存在本地相关路径下,以便用户随时查看。
效果示例:

操作技巧
- 描述尽量详细:在指令中明确任务名称、项目名称、构建记录ID等关键信息,有助于智能体更准确地执行。
- 分步骤执行:复杂任务建议分步骤执行(如先查询任务列表,再触发构建),便于逐步确认结果。
- 善用上下文引用:在指令中引用当前打开的文件、Git分支等信息,可提升智能体理解的准确度。
- 关注执行结果:关键操作(如删除任务、删除模板)请仔细检查智能体返回的结果后再确认。