mcpField
W
write-a-prd

write-a-prd

github.com/tahajemmali开发0122 次安装3 天前更新
代码仓库

关于 write-a-prd

将问题描述整理为 PRD 并保存到 `./docs/ /PRD.md` 的技能。可通过交互式访谈澄清需求,也可根据已有上下文直接编写文档。

主要功能

  1. 01交互式梳理问题
  2. 02检查代码库以核实上下文
  3. 03访谈用户以确定设计选择
  4. 04规划模块与测试
  5. 05根据已有上下文生成 PRD

适用场景

  1. 01通过访谈定义功能需求
  2. 02根据路线图上下文起草 PRD
  3. 03规划模块和测试覆盖范围

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tahajemmali/skills --skill write-a-prd

安装后在 Claude Code 中输入/write-a-prd确认已加载。

详细介绍

此技能会创建一份 PRD,并将其保存到 ./docs/<feature-name>/PRD.md。如果上下文已提供相关信息,或你认为某些步骤没有必要,可以跳过。

交互式调用时(用户在键盘前)

  1. 请用户详细描述他们想要解决的问题,以及任何可能的解决方案思路。

  2. 探查代码库,以核实用户的陈述并了解代码库的当前状态。

  3. 就计划的各个方面不断深入询问用户,直到双方达成共识。逐一梳理设计树的每个分支,解决决策之间的依赖关系。

  4. 概述完成实现所需构建或修改的主要模块。积极寻找提取深层模块的机会,以便单独测试。

与浅层模块相对,深层模块会通过简单且可测试的接口封装大量功能,并且很少需要更改。

向用户确认这些模块是否符合他们的预期。询问用户希望为哪些模块编写测试。

  1. 完全理解问题和解决方案后,使用下方模板编写 PRD。

由 afk 调用时(已提供上下文,无需与用户交互)

如果收到 [GRILL_SUMMARY]、[ROADMAP_ENTRY] 或类似上下文块,请跳过访谈(步骤 1–3),直接根据提供的上下文整理并撰写 PRD。不要提出后续问题。根据路线图条目或上下文推断功能名称,并将其转换为小写连字符格式,用作输出路径。

输出

将 PRD 写入 ./docs/<feature-name>/PRD.md。如有需要,请创建目录。

使用分隔符包裹 PRD 内容,以便自动化工具提取:


(PRD content here)

问题陈述

从用户的角度描述他们遇到的问题。

解决方案

从用户的角度描述问题的解决方案。

用户故事

编写一份较长的编号用户故事列表。每条用户故事的格式应为:

  1. 作为一名<角色>,我想要<功能>,以便<收益>
1. 作为一名移动银行客户,我想查看账户余额,以便更充分地了解自己的消费情况

这份用户故事列表应尽可能详尽,涵盖该功能的所有方面。始终使用编号列表(1.、2.、3.)——下游工具会按编号引用故事。

实现决策

列出已作出的实现决策,包括:

  • 将要构建或修改的模块
  • 将要修改的模块接口
  • 开发人员提供的技术说明
  • 架构决策
  • 架构变更
  • API 契约
  • 具体交互

不要包含具体文件路径或代码片段。它们可能很快就会过时。

测试决策

列出已作出的测试决策,包括:

  • 优秀测试的特征(仅测试外部行为,不测试实现细节)
  • 将接受测试的模块
  • 测试方面的先例(即代码库中类似类型的测试)

范围外

描述不属于此 PRD 范围的事项。

补充说明

该功能的任何其他补充说明。

评论

支持 Markdown