开发团队的AI员工,下一代Agent:CodeBuddy NPC全攻略

视频版:https://www.bilibili.com/video/BV1wJun6WEJM/

当你接到一个开发任务,传统的Vibe Coding流程中,需要先打开IDE,克隆或更新代码,创建分支,给AI描述需求,等待AI完成,本地验证功能,提交并推送代码,最后创建PR。 虽然 AI 提升了一些效率,但整个流程依然离不开人的手动推动,开发者必须充当连接各个环节的中间桥梁。

最近我发现了一个AI研发流程的全新范式,CodeBuddy NPC。NPC就是一个原生住在研发流程里面的AI员工,只需要在代码仓库里面@某个NPC,AI员工就可以自动在云端完成整个开发工作。

在模型方面,NPC接入了国内所有主流模型,特别是其中的DeepSeek V4 Flash正式版,可以免费使用到年底。

NPC更有意思的地方在于它拥有极高的定制自由度,我们可以为不同的NPC指定不同的AI模型和提示词,还可以通过定制Docker镜像为他们配置专属的运行环境和工具链。每定义一个NPC,就像给团队招募了一个新的AI员工,还可以在真实的开发任务中持续迭代进化这些AI员工,让整个团队的开发效率像滚雪球一样持续放大。

本期视频我们通过几个真实的研发案例,看看怎么用CodeBuddy NPC开启一种研发流程的全新范式。

基础使用

这是一个Java后端项目,它可以定时轮询数据库,检查用户的预约,然后发送邮件提醒。现在有一个需求issue,要给项目增加一个新建预约的接口,我们可以直接在这个issue下面的评论里面敲@,这里我选择默认NPC CodeBuddy 。现在已经接入了DeepSeek V4 Flash正式版,限时免费,然后说帮我完成这个需求。NPC把任务拆分成了1个6个步骤的工作流,然后逐项进行。我们可以点击执行中的小按钮查看pipeline,来近距离查看NPC的工作过程 。。NPC启动了一个隔离的沙箱,加载了工程代码以及issue作为上下文,过了一会NPC就完成了工作,并且把自己的工作结果做了一个摘要填写到了issue里面 然后我们可以点击这个PR的按钮查看NPC提交上来的合并请求,也可以在这里面审阅NPC提交上来的代码 。如果确认所有的代码都没有问题,就可以直接点击这个合并按钮,把NPC更改的代码合并进主干,这样一整个需求就开发完成了。 任务完成以后,CNB还展示了任务花费的Token还有成本,这个花费是记录在组织也就是开发团队上面的,由团队的leader统一管理,普通开发人员基本上不需要关注Token用量,非常的棒。我仔细观察这个任务的执行过程,发现还有两个可改进点。首先AI只是进行了简单的编译验证,还有单元测试,它没有真正启动项目进行完整的功能验证。第二点是AI编译Java代码的时候发现自己没有Java环境,它又从头到尾配置了一套Java环境才完成的编译,这样导致了额外的时间开销。这里我们用的NPC是一个平台通用NPC,而不是一个针对特定编程语言定制化的NPC 。接下来我们就来定制一个NPC,让开发效率更上一个台阶。

定制NPC

我在自己的名下新建了一个空白仓库,并且创建了一个issue叫做创建Java开发者NPC,然后我们在下面的评论里面@CodeBuddy这个平台提供的免费NPC来进行这个工作 输入提示词:

过了一会AI完成了工作,我们可以打开仓库看一眼,在.cnb/settings.yml文件里面定义了NPC的基础信息,还有它的提示词 :

我们再来看这个Dockerfile文件,这里面定义了NPC的运行环境,基础镜像是JDK25,这样NPC天生就具备了Java运行环境,在基础镜像之上预装了一系列常用的开发工具,比如使用curl来调试API,使用sqlite3连接数据库并且验证数据的准确性,使用Gradle完成Java项目的构建和测试 当我们召唤NPC执行任务的时候,它就可以直接进入这套预先配置好的开发环境,而不用每次都重新安装和配置工具,真正做到了开箱即用,让NPC工作的更快更稳定也更可靠。

接下来我们来试一试,回到刚才的Java项目。

我们这次的开发任务是在后端增加删除功能,这次我们@新创建的Java开发者NPC来完成任务。

现在NPC有了全套的Java开发环境,所以开发速度更快,而且他把整个项目都启动起来,通过API还有连接数据库工具进行了真实测试,这样测试得更充分,完成的效果也更好。

我想实现一个功能,就是当有人创建PR的时候,NPC能够自动读取PR内容,然后检查代码里面所有依赖的版本,如果发现有可以升级的依赖,就自动更新到最新。

这里我新建了一个空白仓库Java依赖升级助手,然后还是在issue里面输入提示词。

过了一会这个Java依赖自动升级的NPC就创建好了。接下来我们回到这个预约提醒的Java后端项目,这里添加一个新的文件.cnb.yml,然后添加这一段 :

main:
pull_request.target:
- stages:
- name: trigger npc-java-dependency-upgrade
type: cnb:trigger
options:
slug: tech-shrimp/npc-java-dependency-upgrade
branch: main
event: api_trigger_dependency_update
env:
TARGET_REPO: $CNB_REPO_SLUG
TARGET_PR: $CNB_PULL_REQUEST_IID
TARGET_REPO_SLUG: $CNB_REPO_SLUG

这段配置的大概意思是当这个仓库有PR创建的时候,就会自动调用Java依赖升级助手的NPC来进行依赖版本升级。接下来我们来测试一下,这里我在仓库里面随便修改了一行代码,创建了一个PR,当PR创建以后一个自动化流水线就在依赖升级助手那边触发了 。我们看到NPC先是克隆项目,并且尝试为我们升级依赖,过了一会任务完成。我们可以回到PR看一眼,现在这个PR有两次提交,一次是用户的提交,再有一次是NPC的依赖升级提交 配置了这个自动化流程以后,开发团队再也不用为依赖版本的升级操心,开发团队只需要专注业务代码的修改,NPC能够全自动接手后续的依赖升级,自动把项目的依赖更新到最新的安全版本,非常的方便。

更多玩法

除了常规的CPU任务,NPC还可以运行在高性能GPU环境里面,可以承接图像生成、TTS、OCR等GPU密集型工作。

我又创建了一个全新的仓库叫做paddle-ocr,这里我准备基于一个非常流行的OCR框架飞桨OCR创建一个运行在GPU机器上的文字识别NPC 这里我输入提示词:

@CodeBuddy在本仓库创建一个paddle-ocr的NPC,使用ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddleocr-vl:latest-nvidia-gpu 镜像作为运行环境,
这个npc主要功能是使用 paddleocr doc_parser CLI来识别图片。

过了一会NPC创建好了。我们可以在项目的.cnb.yml文件里面看到,这个NPC的最大特点是在issue里面被@的时候,NPC运行在GPU的机器上面 根据官方文档,这里平台提供的是48GB显存的GPU运行环境,可以满足大部分的GPU算力需求 。接下来我们来测试一下,我在issue里面上传了一张报纸的照片,然后@paddle-ocr说你来识别一下这个issue里面的图片 NPC调用镜像里面内置的PaddleOCR CLI的能力来识别图片,过了一会完成了识别,并且把结果回填到了issue里面 我们看到NPC的能力非常的灵活,除了编程任务还可以承接很多其他的任务,在CNB平台的样例库里面,可以找到各种各样好玩的NPC,比如配乐NPC、画图NPC、播音NPC等等

协作团队

NPC可以被单独使用,我们也可以把多个NPC组成一个团队来协同工作。我在刚才的几个NPC基础上又创建了几个NPC,组成了一个小的NPC团队。团队成员分别是项目经理,他负责分析需求,分配任务给其他的NPC,还有管理项目进度;接下来是Paddle OCR,负责把图片转换成Markdown格式的文档;Java开发者负责后端的开发;还有前端开发者,负责使用React框架开发前端应用。我还给前端开发者配置了UI/UX Pro Max skill,这个skill内置了一些开发前端项目用到的样式模板,借助这个skill可以进一步提升项目的质感。最后一个是QA测试工程师,配置了Playwright等自动化测试工具,用来自动操作浏览器,完成我们的需求测试 在项目经理的提示词里面,我列出了目前团队里面所有可用的NPC的列表,要求项目经理先拆解任务,然后使用@格式召唤对应的NPC进行工作,当NPC工作完成以后再汇报给项目经理,项目经理继续分配下一个阶段的任务 接下来我创建了一个空白项目,在项目的根目录放了一个公司访客管理制度的图片。然后我创建一个issue,直接@项目经理,我说根目录有一个访客管理制度的图片,开发一个公司访客管理的电子系统,接下来我大体说了一下开发用到的技术栈,其他不做约束,自由发挥 我们看到项目经理先是召唤了Paddle OCR的NPC来处理图片,然后当Paddle OCR处理完成图片以后,他会@回项目经理汇报工作。但是项目经理发现一个问题,就是识别以后的文档他没有提交到仓库。为了整个开发流程的连贯性,应该每一步的工作内容都提交到仓库,项目经理重新明确了需求,再次指派Paddle OCR来修复上一步的任务,要把识别后的Markdown文档提交到develop分支 从这个例子里面可以看到,我们的多NPC架构具备一定的自我纠错能力,项目经理会实时审阅各个NPC提交的结果,如果发现不满足需求,还能及时指导NPC进行纠正。接下来项目经理指派Java开发者NPC开始进行后端的开发,过了一会Java开发者完成了开发任务,并且用我给他安装的几个测试工具进行了全套的测试。

接下来项目经理指派前端开发者NPC进行前端应用开发,过了一会前端NPC也完成了工作。前后端的服务都开发完成,项目经理再指派QA的NPC使用Playwright工具进行端到端的测试,我们的QA NPC编写了30个测试用例,它使用浏览器自动化工具对30个测试用例逐项测试,最后全部测试通过 最后项目经理报告整个项目收官完成,总共4次提交,57个代码文件,5,600多行代码,在NPC团队的配合下全部完成。我们可以启动起来测试一下。

在CNB里面调试一个服务非常的简单,我们不需要把代码下载到本地,可以直接点击右上角的橙色云原生开发按钮。

CNB就会自动打开一个云开发环境,我们可以直接在这里面把服务启动起来,然后测试一下 。一个完整的带前后端的访客管理系统就开发完毕了。这套流程之所以十分高效,是因为CodeBuddy NPC让AI Agent原生住进了Git仓库,Issue成为了AI的需求记忆,PR记录决策记忆,CI保存质量记忆,而代码库则承载最终的成果,需求背景、技术决策、质量反馈和代码变更共同沉淀为Agent可以持续读取和复用的长期记忆 AI员工随着项目持续成长,并且在开发团队的调优中变得越来越好用。

本期视频我创建的所有NPC还有示例项目,我都开源到了CNB平台我的目录下面了。

https://cnb.cool/tech-shrimp

感兴趣的观众朋友们可以来试一试 好今天的视频就到这里,感谢大家,我们下期再见。

posted @ 2026-08-07 11:44  技术爬爬虾  阅读(23)  评论(0)    收藏  举报