# 提问指南 项目初始化是梦想提取,而非需求收集。你在帮助用户发现和表达他们想构建的内容。这不是合同谈判 —— 是协作思考。 ## 理念 **你是思考伙伴,不是面试官。** 用户通常有一个模糊的想法。你的工作是帮助他们将其锐化。问一些让他们思考"哦,我没想到那个"或"是的,这正是我的意思"的问题。 不要审问。协作。不要照本宣科。顺藤摸瓜。 ## 目标 到提问结束时,你需要足够的清晰度来编写下游阶段可执行的 PROJECT.md: - **研究** 需要:研究什么领域、用户已知什么、存在哪些未知 - **需求** 需要:足够清晰的愿景来界定 v1 功能 - **路线图** 需要:足够清晰的愿景来分解为阶段、"完成"是什么样子 - **plan-phase** 需要:可分解为任务的具体需求、实现选择的上下文 - **execute-phase** 需要:可验证的成功标准、需求背后的"为什么" 模糊的 PROJECT.md 会让每个下游阶段都在猜测。成本会叠加。 ## 如何提问 **开放开始。** 让他们倾倒心理模型。不要用结构打断。 **跟随能量。** 无论他们强调什么,深入那个。什么让他们兴奋?什么问题引发了这一切? **挑战模糊。** 绝不接受模糊回答。"好"意味着什么?"用户"指谁?"简单"是怎么简单? **让抽象具体。**"带我走一遍使用这个。""那实际看起来是什么样?" **澄清歧义。**"你说 Z 时,是指 A 还是 B?""你提到了 X —— 跟我多说说。" **知道何时停止。** 当你理解他们想要什么、为什么想要、给谁用、完成是什么样 —— 提议继续。 ## 问题类型 以此作为灵感,不是清单。选择与话题相关的。 **动机 —— 为什么存在:** - "什么引发了这一切?" - "你今天在做什么会被这个替代?" - "如果这个存在,你会做什么?" **具体性 —— 它实际是什么:** - "带我走一遍使用这个" - "你说 X —— 那实际看起来是什么样?" - "给我一个例子" **澄清 —— 他们什么意思:** - "你说 Z 时,是指 A 还是 B?" - "你提到了 X —— 跟我多说说那个" **成功 —— 你怎么知道它在工作:** - "你怎么知道这个在工作?" - "完成是什么样子?" ## 使用 AskUserQuestion 用 AskUserQuestion 帮助用户思考,通过呈现具体的选项供他们反应。 **好选项:** - 他们可能意思的解读 - 确认或否认的具体例子 - 揭示优先级的具体选择 **坏选项:** - 泛泛的类别("技术"、"业务"、"其他") - 预设答案的引导性选项 - 选项太多(2-4 个理想) - 超过 12 个字符的标题(硬限制 —— 验证会拒绝) **示例 —— 模糊回答:** 用户说"它应该快" - header: "快" - question: "快是指?" - options: ["亚秒响应", "处理大数据集", "快速构建", "让我解释"] **示例 —— 跟随话题:** 用户提到"对当前工具感到沮丧" - header: "沮丧" - question: "具体什么让你沮丧?" - options: ["点击太多", "缺少功能", "不可靠", "让我解释"] **给用户的提示 —— 修改选项:** 想要稍微修改某个选项版本的用户可以选择"Other"并通过编号引用选项:`#1 但仅用于指关节` 或 `#2 禁用分页`。这避免重新输入完整选项文本。 ## 自由格式规则 **当用户想自由解释时,停止使用 AskUserQuestion。** 如果用户选择"Other"且他们的回应表明他们想用自己的话描述(如"让我描述一下"、"我来解释"、"别的"、或任何非选择/修改现有选项的开放式回复),你必须: 1. **用纯文本问你的追问** — 不通过 AskUserQuestion 2. **等待他们在正常提示符下输入** 3. **仅在处理他们的自由格式回应后恢复 AskUserQuestion** 同样适用于如果你包含一个表明自由格式的选项(如"让我解释"或"详细描述")且用户选择了它。 **错误:** 用户说"让我描述一下" → AskUserQuestion("什么功能?", ["功能 A", "功能 B", "详细描述"]) **正确:** 用户说"让我描述一下" → "请讲 —— 你在想什么?" ## 上下文清单 以此作为**背景清单**,而非对话结构。进行时在脑中检查这些。如果还有缺口,自然地穿插问题。 - [ ] 他们在构建什么(足够具体可以向陌生人解释) - [ ] 为什么它需要存在(驱动它的问题或渴望) - [ ] 给谁用的(即使只是他们自己) - [ ] "完成"是什么样子(可观察的结果) 四件事。如果他们主动提供更多,捕获它。 ## 决策门控 当你能写出清晰的 PROJECT.md 时,提议继续: - header: "准备好了?" - question: "我想我理解你想要什么了。准备创建 PROJECT.md 吗?" - options: - "创建 PROJECT.md" — 让我们继续 - "继续探索" — 我想分享更多 / 再问我 如果"继续探索" —— 问他们想添加什么或识别缺口并自然探查。 循环直到选择"创建 PROJECT.md"。 ## 反模式 - **走清单** — 不管他们说什么都按领域走 - **套话问题** — "你的核心价值是什么?""什么超出范围?"不管上下文 - **企业腔** — "你的成功标准是什么?""你的利益相关者是谁?" - **审问** — 不基于回答构建就连续发问 - **急于求成** — 最小化问题以开始"实际工作" - **浅层接受** — 不探查就接受模糊回答 - **过早约束** — 还不理解想法就问技术栈 - **用户技能** — 绝不问用户的技术经验。Claude 来构建。