关于 write-a-prd
write-a-prd 是一项通过详细访谈和仓库探索来编写产品需求文档的技能。它将结果整理为 GitHub issue,涵盖范围、实现决策和测试决策。
主要功能
- 01探索仓库当前状态
- 02详细访谈用户需求
- 03明确范围与排除项
- 04梳理模块和测试需求
- 05将 PRD 整理为 GitHub issue
适用场景
- 01将问题描述转化为 PRD
- 02对照代码库核实变更设想
- 03明确实现范围和测试方案
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mattpocock/ ralph-workshop-repo-001 --skill write-a-prd安装后在 Claude Code 中输入/write-a-prd确认已加载。
详细介绍
当用户想要创建 PRD 时,将调用此技能。请按照以下步骤操作。若认为某些步骤没有必要,可以跳过。
-
请用户详细描述他们想要解决的问题,以及可能的解决方案构想。
-
探查代码库,核实用户的陈述并了解代码库的当前状况。
-
询问用户是否考虑过其他方案,并向他们介绍其他方案。
-
详细、全面地询问用户有关实现的问题。
-
明确实现范围。确定计划构建的内容,以及本 PRD 不包含的内容。
-
列出完成实现所需构建或修改的主要模块。主动寻找提取深层模块的机会,以便单独测试。
深层模块(相对于浅层模块而言)是指能够通过简单、可测试且很少变更的接口,封装大量功能的模块。
与用户确认这些模块是否符合他们的预期。询问用户希望为哪些模块编写测试。
- 完全理解问题和解决方案后,使用下面的模板编写 PRD。PRD 应作为 GitHub issue 提交。
问题陈述
从用户的角度描述用户面临的问题。
解决方案
从用户的角度描述问题的解决方案。
用户故事
一份篇幅较长、编号排列的用户故事列表。每条用户故事都应采用以下格式:
- 作为一名 <角色>,我想要 <功能>,以便 <收益>
这份用户故事列表应尽可能详尽,涵盖该功能的所有方面。
“润色”要求
完成用户故事后,我们将得到一个可用但尚未完善的功能或应用。工作完成后,应进入润色阶段。
请列出工作结束时需要检查的事项,以打磨和完善已完成的工作,最大程度提升用户的使用体验。
这些检查不应实质性地扩大工作范围,而应确保所有创建的元素协调一致、妥善处理错误,并让整体体验更令人愉悦、更精致。
实现决策
列出已做出的实现决策,包括:
- 将要构建或修改的模块
- 将要修改的模块接口
- 开发者提供的技术说明
- 架构决策
- 模式变更
- API 契约
- 具体交互
请勿包含具体文件路径或代码片段。它们很快就可能过时。
测试决策
列出已做出的测试决策,包括:
- 优质测试的标准(只测试外部行为,不测试实现细节)
- 将接受测试的模块
- 测试方面的先例(即代码库中类似类型的测试)
范围之外
描述本 PRD 不包含的事项。
补充说明
关于该功能的其他说明。
评论
支持 Markdown