name: 头脑风暴 description: 在创建或开发过程中使用,在编写代码或实施计划之前 - 通过协作提问、替代方案探索和增量验证,将粗糙的想法细化为完整的设计。不要在清晰的’机械’过程中使用
将头脑风暴想法转化为设计
概述
通过自然的协作对话帮助将想法转化为完整的设计和规范。
首先了解当前项目上下文,然后逐个提问以细化想法。一旦理解了要构建什么,以小块(200-300字)呈现设计,并在每个部分后检查是否正确。
过程
理解想法:
- 首先检查当前项目状态(文件、文档、最近提交)
- 逐个提问以细化想法
- 尽可能优先选择多项选择题,但开放式也可以
- 每条消息只有一个问题 - 如果一个主题需要更多探索,将其分解为多个问题
- 专注于理解:目的、约束、成功标准
探索方法:
- 提出2-3种不同的方法,包括权衡
- 以对话方式呈现选项,附上你的推荐和理由
- 首先推荐你的首选选项并解释原因
呈现设计:
- 一旦相信理解了要构建什么,呈现设计
- 将其分解为200-300字的部分
- 在每个部分后询问是否正确
- 涵盖:架构、组件、数据流、错误处理、测试
- 准备好回去澄清如果有不明白的地方
设计之后
文档化:
- 将验证过的设计写入
docs/plans/YYYY-MM-DD-<topic>-design.md - 如果可用,使用清晰简洁写作技能
- 将设计文档提交到git
实施(如果继续):
- 询问:“准备好进行实施设置了吗?”
- 使用超级技能:使用git工作树创建隔离工作空间
- 使用超级技能:编写计划创建详细实施计划
关键原则
- 一次一个问题 - 不要用多个问题压倒
- 优先多项选择 - 尽可能比开放式更容易回答
- 无情YAGNI - 从所有设计中移除不必要的功能
- 探索替代方案 - 在确定前总是提出2-3种方法
- 增量验证 - 以部分呈现设计,逐个验证
- 保持灵活 - 当有问题时回去澄清