2026年7月9日 周四晚上19:30,报名腾讯会议了解“如何构建自进化的动态知识库(Brain)”(限30人)
免费POC, 零成本试错
FDE知识库

FDE知识库

学习大模型的前沿技术与行业落地应用


收藏

PRD → Goal → After-Goal:AI 主导全流程研发实践

发布日期:2026-05-18 18:13:44 浏览次数: 1790
作者:百度Geek说

微信搜一搜,关注“百度Geek说”

推荐语

使用Claude Code的三个斜杠命令,实现从需求到代码合入的全自动化研发流程,显著提升效率。

核心内容:
1. 传统研发流程的痛点与自动化三阶段设计
2. 利用 /prd 命令进行需求拆解和卡片创建
3. 通过 /goal 和 /after-goal 完成编码与合入闭环

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家


导读 
introduction
本文通过真实案例展示了如何利用 Claude Code 的 /prd、/goal、/after-goal 三个斜杠命令,实现从需求拆解到代码合入的全自动化开发流程。
该流程成功将原本分散、手动的多环节研发过程固化为高效、自动化的三阶段协作,显著提升了开发效率与规范性,并验证了 CLI 工具优于浏览器操作、Skill 作为流程知识载体等最佳实践,为 AI 辅助研发提供了一个可复用的轻量级全自动解决方案。

全文 3703 字,预计阅读时间 6 分钟

前言

GEEK TALK

最近我想给大模型训推任务灵犀诊断平台增加「自我演化」的功能,尝试使用claude code的最新的/goal命令,记录从需求拆解到代码合入的完整流程,供同学参考。

最近两周codex、hermes相继发布/goal斜杠命令,这一周 claude code也不甘示弱,跨速发布了它的 /goal 斜杠命令。本文将/goal斜杠命令 + /prd技能 + /after-goal技能,实现了一个产品特性研发全自动化的流程,探索出一个AI+实践的新案例。

我已经将此流程泛化为一个通用的开发流程,支持github,项目地址:https://github.com/smallnest/goal-workflow, 官网:https://goal.rpcx.io/ 。

GEEK TALK

00

背景


在百度内部研发场景中,一个功能从需求到上线通常经历:写 PRD → 拆卡片 → 写代码 → 提 CR → 合入 → 关卡片。这套流程环节多、工具分散(iCafe、iCode、Gerrit),每一步都要手动操作,容易遗漏步骤。

借助 Claude Code 的 Skill 机制,我们可以将这套流程固化成三个阶段,每个阶段对应一个 Slash Command:

下面用一次真实开发过程,演示这三个阶段如何串起来。

GEEK TALK

01

第一阶段:/prd — 需求拆解

1.1 安装PRD skill

https://console.cloud.baidu-int.com/onetool/skills/4793

1.2 做了什么

使用 /prd 将「诊断案例记录与反馈闭环」这一产品需求,生成结构化 PRD 文档:

它需要我澄清一些东西,这次我没有做它的选择题,我认为我描述会更清楚,所以我直接告诉它我模糊的想法,它就实现了产品需求文档的编写:

PRD 文档自动保存到 tasks/prd-self-evolution.md,卡片自动创建到 iCafe 空间,标题、描述、验收标准、优先级一应俱全:

并拆分为 5 张 iCafe 卡片,然后询问我卡片创建在哪里,我选择icafe,然后它就帮我创建好了:

我们可以看一个它创建的卡片,主要包括此任务的描述信息、验收标准以及卡片依赖关系:

1.3 为什么要先写 PRD

直接让 AI 写代码,容易出现需求理解偏差、边界条件遗漏。PRD 强制你先想清楚:

  • 有哪些用户故事?每个的验收标准是什么?

  • 哪些是 Non-Goal(明确不做的事)?

  • 卡片之间的依赖关系是什么?实现顺序怎么排?

PRD 写完后再拆卡片,每个卡片的范围足够小、验收标准足够明确,AI 才能高效实现。

而且,卡片如此定义之后,就可以很好的配合使用claude code的 /goal命令或者 codex的 /goal命令了:

  • 卡片任务明确可操作:/goal 就可以2按照要求准确的实现

  • 卡片有验收标准:/goal 就可以写单元测试,保证它实现的代码符合需求

  • 卡片有依赖关系:/goal 可以按照顺序有序的实现功能

  • 卡片足够小:/goal 就可以快速实现快速反馈,避免长时间占用资源和死循环

GEEK TALK

02

第二阶段:/goal — 逐卡实现


2.1 卡片 46:Case 数据模型与 Markdown 读写库

/goal 实现卡片 baidu-sys-nccl-sys-skills-46

Claude Code 自动完成了以下工作:

  1. 查询卡片:用 icafe-cli card get 获取卡片描述和验收标准

  2. 理解上下文:阅读 diag/CLAUDE.md(项目架构文档)、diag/model/types.go(现有类型定义)

  3. 实现代码:创建 diag/cases/case.go,定义 Case struct,实现 YAML frontmatter + Markdown body 的序列化/反序列化,提供 WriteCase/ReadCase/ListCases/UpdateCase 四个核心函数

  4. 编写测试:创建 diag/cases/case_test.go,10 个测试覆盖 round-trip 序列化、文件读写、列表过滤、部分更新、空结果、特殊字符、错误场景

  5. 验证go vetgo buildgo test ./diag/... 全部通过

/goal 只负责实现卡片。卡片的代码提交和卡片的更新它不负责,所以我实现了这个卡片后,手工指导claude code使用icode-cli实现代码:

并且把实现summary更新到卡片的描述字段中:

然后我把这个流程作为经验,让claude code帮我实现了一个 after-goal 的skill,负责提交代码、review打分、代码合入、更新卡片和关闭卡片(设置为已完成)。下一个卡片我预期手工调用/after-skill即可,实际上claude code足够聪明,自己就自动调用这个skill了:

2.2 卡片 47:Pipeline 诊断完成后自动写入 Case 文件

/goal 实现卡片 baidu-sys-nccl-sys-skills-47

这个卡片的实现涉及跨包集成,关键改动:

  1. 导出 claude.BuildPrompt:原来 buildPrompt 是小写未导出函数,Pipeline 需要调用它获取 system/user prompt 写入 Case

  2. PipelineConfig.CasesDir:新增配置字段,为空时不写入 Case 文件,向后兼容

  3. Pipeline.Run defer 写入:在 defer 块中调用 writePipelineCase,覆盖成功和失败两种路径;写入失败仅 golog.Warn,不阻塞主流程

  4. 修复 extractSections:改为按已知 section 标题(System PromptUser Prompt 等)定位内容边界,正确处理内容中含 ##  子标题的情况

  5. 3 个新测试:成功路径写入、失败路径写入、CasesDir 为空时不写入

2.3 /goal 的核心价值

GEEK TALK

03

第三阶段:/after-goal — 提交合入关闭卡片


3.1 安装after-goal skill

https://console.cloud.baidu-int.com/onetool/skills/4797

3.2 从手动操作到 Skill 化

卡片 46 完成后,我手动执行了提交、推送、打分、合入、更新卡片、关闭卡片的全部步骤。这个过程涉及三个 CLI 工具的配合:

git (提交/推送) → icode-cli (打分/合入) → icafe-cli (更新卡片/关闭卡片)

题是:每次都要查命令参数、记 CR 编号、拼 HTML 描述,容易出错。于是我把这套流程固化成了 after-goal Skill。

3.3 卡片 47 使用 /after-goal

卡片 47 实现完成后,直接调用:

/after-goal 卡片 baidu-sys-nccl-sys-skills-47

Claude Code 按以下步骤自动执行。实际你看下面的截图,我并没有主动调用这个skill,是claude code完成代码后自动调用的,太智能了:

Step 1: 提交代码

git add diag/cases/case.go diag/llm/claude/claude.go ...git commit -m "baidu-sys-nccl-sys-skills-47 Pipeline 诊断完成后自动写入 Case 文件..."

关键:commit message 以卡片 ID 开头,iCode 要求绑卡。

Step 2: 推送 Gerrit

git push origin HEAD:refs/for/master

iCode 禁止直接 push master,必须走 refs/for/。输出中包含 CR 编号。

Step 3: 打分 + 合入

icode-cli api get_review_info -n 120869646 -o table  # 确认可合入icode-cli api set_review_score -r baidu/sys-nccl/sys-skills -n 120869646 -s 2  # 打分icode-cli api submit_review -r baidu/sys-nccl/sys-skills -n 120869646  # 合入

这里有个经验:之前卡片 46 时我尝试用 playwright-cli 打开 iCafe 网页操作,非常笨重(弹窗多、元素难定位、登录态问题)。换成 icode-cli 后一条命令搞定打分和合入,效率提升巨大。

Step 4: 更新卡片描述

icafe-cli card update --space baidu-sys-nccl-sys-skills --sequence 47 \  --detail "<原有描述><h3>实现总结</h3><ul>...</ul>"

注意 --detail 会覆盖整个描述,必须保留原有内容再追加。实现总结包含:核心改动、测试覆盖、验证结果、Commit 和 CR 链接。

Step 5: 关闭卡片

icafe-cli card next-statuses --space ... --sequence 47  # 查可用状态icafe-cli card update --space ... --sequence 47 --status 已完成  # 关闭

状态名不是随便写的,不同空间可能不同("已完成" vs "Done"),必须先查 next-statuses

3.4 /after-goal 的核心价值

GEEK TALK

04

经验总结


1. PRD 先行,避免返工

AI 直接写代码容易偏离需求。先用 /prd 生成结构化 PRD,确认范围和验收标准后再拆卡片实现,能大幅减少返工。

2. 卡片粒度要适中

本次拆出的卡片 46(纯数据模型 + 读写库)和卡片 47(Pipeline 集成)各自独立、验收标准清晰,AI 能一次实现到位。如果卡片太大(比如把 46 + 47 合成一个),实现过程中容易丢失焦点。

3. 依赖关系决定实现顺序

卡片 47 依赖卡片 46 的 cases 包。按依赖顺序实现,每个卡片完成后再做下一个,避免同时改多个包产生冲突。

4. CLI 工具优于浏览器操作

结论:凡是能用 CLI 完成的操作,不要用浏览器。

5. Skill 是流程知识的载体

after-goal Skill 把「提交代码 → 推送 Gerrit → 打分合入 → 更新卡片 → 关闭卡片」这套需要记住的操作流程固化成了可复用的 Skill。核心要素:

  • 触发条件/after-goal 或说"提交代码"、"打分合入"、"关闭卡片"

  • 步骤定义:5 步串行流程,每步有具体命令和参数

  • 错误处理:常见问题的处理方式(push 被拒、状态名不对等)

  • 关键规则:commit message 绑卡、--detail 覆盖问题、先查 next-statuses

写 Skill 的过程本身就是梳理流程、沉淀知识的过程。

6. 踩坑即修正,不要留到后面

卡片 46 中 extractSections 按 \n##  分割的方案在简单场景下工作,但卡片 47 的 UserPrompt 包含 ##  子标题时解析失败。发现后立即修复(改为按已知标题定位),而不是"先这样后面再说"。早期修正成本最低。

GEEK TALK

05

三阶段协作模式


┌─────────────┐     ┌──────────────┐     ┌───────────────┐│   /prd      │     │   /goal      │     │  /after-goal  ││             │     │              │     │               ││ 需求 → PRD  │────▶│ 卡片 → 代码  │────▶│ 代码 → 合入   ││ PRD → 卡片  │     │ 代码 → 测试  │     │ 合入 → 关卡   │└─────────────┘     └──────────────┘     └───────────────┘      ↑                    ↑                     ↑      │                    │                     │  人类定方向           AI 执行实现          AI 执行收尾  AI 辅助拆解         人类验收结果          流程自动闭环

三个阶段各有侧重:

  • /prd:人类主导方向,AI 辅助结构化输出

  • /goal:AI 主导实现,人类验收结果

  • /after-goal:AI 全自动执行,流程自动闭环

这套模式不仅适用于本次「诊断案例记录」功能,任何需要从需求到上线的开发任务都可以复用。只需三个命令,就能走完从需求拆解到代码合入的全流程。

GEEK TALK

06

Autoresearch vs /goal


先前我也介绍了 autoresearch 全自动开发的方式和流程,整个流程和这个类似,不过 autoresearch 在开发过程中采用了多智能体review和开发的方式,通过5个维度对代码进行打分,给予开发者更灵活的配置方法,但是开发速度也远远大于/goal的方式,token的费用也远远大于/goal的方式。

所以如果想实现一个轻量级的全自动开发流程,本文介绍的 /PRD → /Goal → /After-Goal 是一个不错的选择。

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询

扫码登录
登录即表示您同意《53AI网站服务协议》
服务协议

欢迎您使用【53AI 官方网站】(以下简称“本网站”或“我们”)。本《会员服务协议》(以下简称“本协议”)是您(以下简称“会员”或“用户”)与【深圳市博思协创网络科技有限公司】之间关于注册、登录及使用本网站会员服务所订立的法律协议。

在您注册或登录前,请务必审慎阅读、充分理解各条款内容,特别是免除或限制责任的条款、知识产权条款、争议解决条款等。此类条款将以加粗形式提示您注意。 当您通过微信公众号授权、手机验证码验证或其他方式成功登录本网站时,即视为您已完全理解并同意接受本协议的全部内容。

一、 定义

本网站:指由【深圳市博思协创网络科技有限公司】运营的,域名为【53ai.com】的网站及相关移动端页面。

会员服务:指本网站向注册会员提供的知识库文章查阅、内容检索及其他相关增值服务。

知识库内容:指本网站发布的包括但不限于文字、图表、数据、研究报告、行业分析等数字化内容资源。

二、 账号注册与登录

登录方式:本网站支持以下登录方式,您可根据实际情况选择:

微信公众号授权登录:您同意将您的微信OpenID信息授权给本网站,用于创建或关联会员账号。

手机验证码登录:您需提供真实有效的手机号码,并通过短信验证码完成身份验证与登录/注册。

账号安全:您的账号仅限您本人使用,禁止赠与、借用、租用、转让或售卖。因您保管不善导致的账号被盗、密码泄露等损失,由您自行承担。

实名认证:根据相关法律法规要求,我们可能要求您在特定功能下完成实名认证。如您拒绝提供,可能无法使用部分或全部服务。

未成年人保护:若您未满18周岁,请在法定监护人的陪同下阅读本协议,并在征得监护人同意后使用本服务。

三、 服务内容与规范

知识库查阅权限:会员登录后,有权按照其会员等级对应的权限范围,在线浏览、检索本网站知识库中的相关文章及内容。

服务变更:我们有权根据业务发展需要,调整、变更或终止部分服务内容,并将以网站公告、公众号消息等方式提前通知。

禁止行为:您在使用服务时不得实施以下行为:

利用技术手段批量爬取、下载、转存知识库内容;

将知识库内容用于商业目的或未经授权地向第三方传播;

干扰本网站正常运行或侵犯其他用户合法权益;

发布违法违规信息或从事违反公序良俗的活动。

四、 知识产权声明

权利归属:本网站知识库中的排版设计、软件代码等内容的知识产权均归【公司全称】或原权利人所有,受《中华人民共和国著作权法》等法律保护。

有限许可:本网站授予会员一项非独占、不可转让、不可转授权的普通许可,仅限于个人学习、研究之目的在线查阅知识库内容。

侵权追责:未经书面许可,任何单位或个人不得以任何形式复制、转载、摘编、镜像、汇编或以其他方式使用上述内容。一经发现,我们保留追究其法律责任的权利。

五、 个人信息保护

我们重视对您个人信息的保护。关于我们如何收集、使用、存储和保护您的个人信息,请单独阅读 《隐私政策》。

您通过微信公众号授权或手机号验证所提供的信息,我们将严格按照《个人信息保护法》的规定处理,仅用于身份识别、服务提供及安全验证等必要用途。

您可以随时通过网站设置或联系客服行使查阅、更正、删除个人信息及撤回授权同意的权利。

六、 免责声明

内容准确性:知识库内容仅供参考,不构成专业建议。我们不对其完整性、准确性、时效性作任何明示或暗示的保证,您应自行判断并承担使用风险。

不可抗力:因自然灾害、政策法规变化、网络故障、第三方平台接口异常(如微信接口维护、运营商短信通道故障)等不可抗力导致的服务中断或延迟,我们不承担违约责任。

第三方链接:本网站可能包含指向第三方网站的链接,该等网站的内容和服务不受我们控制,请您自行甄别风险。

七、 违约责任

如您违反本协议约定,我们有权视情节采取警告、限制功能、暂停服务、注销账号等措施,并保留要求赔偿损失的权利。

如因您的违约行为导致我们遭受行政处罚、第三方索赔或商誉损失,您应承担全部赔偿责任(包括但不限于罚款、赔偿金、律师费、公证费等)。

八、 法律适用与争议解决

本协议的订立、执行和解释均适用中华人民共和国大陆地区法律。

因本协议产生的或与本协议有关的任何争议,双方应友好协商解决;协商不成的,任何一方均可向【公司所在地】有管辖权的人民法院提起诉讼。

九、 其他

本协议构成双方就本服务达成的完整协议,取代此前任何口头或书面约定。

本协议任一条款被认定为无效或不可执行的,不影响其他条款的效力。

我们对本协议享有最终解释权,并在法律允许的范围内保留随时修改的权利。修改后的协议一经公布即生效,继续使用服务即视为同意修订内容。


已查阅