华为云码道Skill自进化:评测驱动闭环与轨迹提炼如何落地
面对反复出现的开发任务,开发者可以将要求写成 Skill,但传统编写方式常缺少量化评测数据:哪些要求真正被满足、下一版该改哪里,都不够清楚。码道构建了“意图识别 评测集生成 Skill 编写 A/B 测试 轨迹分析”的演化循环,用量化结果和执行反馈为下一轮 Skill 编写提供方向;同时从用户与智能体的任务轨迹中...
开发任务总会重复出现,开发者可以把要求写成Skill,但老办法往往拿不出量化评测数据——哪些要求真被满足、下一版该改哪儿,都说不清楚。码道为此搭了一套演化循环,按“意图识别 → 评测集生成 → Skill 编写 → A/B 测试 → 轨迹分析”走,用量化结果和执行反馈给下一轮Skill编写指方向。同时,它还会从用户与智能体的任务轨迹里提炼经验,在交互过程中生成可复用的Skill。
背景、问题及挑战
设想一个团队,每天都在新增接口、补测试、修缺陷,智能体已经能参与这些活儿,可长期用下来冒出三个问题。
头一个,要求是明确的,却每次都得重新解释一遍。比如给接口补测试,开发者总要提醒智能体:光验证成功响应不够,鉴权、非法参数、重复提交、状态转换都得查。单次对话里提的要求,会话一结束就失效了。
第二个,现有方法还是会漏细节,而且工作时做演化可能抢模型资源。团队手上有一份接口测试Skill,可碰到重复提交或订单状态变化,它仍可能只断言响应码,数据和副作用没查。开发者想的是先把评测要求定清楚,再让系统趁空闲时间自动演化,少影响工作时的模型调用。
第三个,有价值的经验藏在执行过程里。智能体修问题时,可能摸出一个不明显的构建顺序,或者反复排查后找到稳定的测试隔离方式。没有人主动整理,这些经验就很容易留在历史聊天记录中,下回遇到类似任务还得从头探索。
这三个问题对应三种使用需求:目标明确时,靠评测结果指引Skill生成;日常开发时,从真实任务轨迹里提炼经验;已有Skill和评测任务时,利用空闲时间自动演化。码道的Skill自进化能力为这三种需求分别留了入口,让能力建设、经验沉淀与闲时优化接成一个连续过程。
码道Skill自进化技术方案
2.1 评测驱动的 Skill 演化闭环
码道的Skill自进化能力会给每个Skill备一个物理演化空间,评测集、分版本的Skill,以及每次AB测试对应的轨迹分析结果与版本证据,都集中存在这里。用户目标明确时,Skill自进化就按用户输入的目标编写评测集,生成候选Skill,再拿当前评测集上的实际测试判断这个Skill是否有效,据此决定取舍和下一轮改进方向,如图 1 所示。用户会话空闲时,它还会自动演化演化空间中的Skill,把空闲时间合理用起来,让Skill的能力持续变强。
图 1:Skill 演化空间中的评测集、Skill 版本与轨迹分析结果
2.2 基于任务轨迹的 Skill 生成
另外,码道的Skill自进化能力也能从用户与智能体的实际交互里发现经验。如图 2,插件在交互过程中一直监听工具调用与助手轮次,把任务轨迹攒下来;择时触发隔离工作区中的分析与Skill生成。这套能力要做的,是从用户真实解决任务的实践中提取高价值的复用模式,并沉淀为Skill。
码道Skill自进化案例
假设你所在的团队维护订单服务,既要给下单、取消订单接口补齐测试,也要处理共享包导出引发的构建问题。
3.1 先明确目标,生成有评测依据的 Skill
在订单项目的码道会话中,任务目标与验收条件能一并交给前台入口;开发者期望后续让智能体为订单接口编写测试时,不只验证成功响应,还要覆盖鉴权、非法数量、相同幂等键重复提交、订单状态及库存副作用这几项。
/skill-evolver 为当前项目创建接口测试 Skill,沿用项目现有测试方式,并运行相关测试。
系统会把要求转成评测集,编写候选Skill,再通过A/B测试比较基线与候选在这些任务上的表现。开发者用/skill-log命令就能查看Skill内容和相应的演化依据,确认它要求检查关键数据与副作用,且验收结论来自实际执行,不只是文字描述。
生成的结果会直接推送到码道的Skills下面,后续工作中智能体可以直接检索并使用。
3.2 白天正常开发,从交互轨迹沉淀新方法
订单服务团队正在当前分支补齐接口测试,临时又要拉发布分支排查共享包导出导致的构建问题,还不想打断现有开发现场。团队于是希望借Git Worktree在当前工作区旁快速建一个独立目录,并沉淀为可复用的标准操作。
想让对应的Skill记住这个能力,不必另敲“生成 Skill”的命令。码道的Skill自进化能力会复盘用户解决问题的过程,自行在后台生成对应的Skill。
3.3 用户空闲后,让已有 Skill 继续演化
接口测试 Skill 只要已经备好评测集,后台演化就有了底子。开发者收工前可以给指定 Skill 起一个后台任务:
/skill-evolver-auto
守护进程接手后,会持续对该 Skill 做演化。等下次打开项目,开发者就能收到演化后的技能,想看过程的话,用 /skill-log 指令调出演化日志即可。
总结与展望
码道的 Skill 自进化覆盖了开发过程中几类常见情形:目标明确的能力搭建,或者日常执行时发现并保存下来的可复用做法,都能交给它处理。这样一来,开发经验得以留存、被再次调用,并逐步接受验证。