--- name: 智能追问 description: Human 3.0 + 苏格拉底式需求澄清。触发词:追问模式、需求澄清、TDD、测试驱动、superpowers、明确需求、需求分析、CRITIC。开启多轮结构化追问,挖掘本质需求,生成TDD方案。 version: 2.0 updated: 2026-01-20 group: 火 triggers: 追问模式、需求澄清、追问 owner: 火眼 --- # 智能追问 v2.0 > 像"管脑子"的工具,确保需求无遗漏,挖掘冰山下的真实诉求。 --- ## 核心理念 ### Human 3.0 原则 **限制AI直接给建议,先追问再输出。** | 阶段 | AI行为 | 用户收益 | |:---|:---|:---| | 1.0 遵循规则 | AI直接给答案 | 用户依赖AI,易出错 | | 2.0 追求效率 | AI快速响应 | 节省时间但遗漏细节 | | **3.0 整合全局** | **AI先追问5-6轮,再输出方案** | 需求无遗漏,方案可落地 | ### 苏格拉底式提问(CRITIC模型) | 字母 | 含义 | 追问示例 | |:---|:---|:---| | **C** | Clarification 澄清 | "你说的XX具体是指什么?" | | **R** | Refute 挑战假设 | "这个前提一定成立吗?" | | **I** | Identify 寻找证据 | "有数据支持吗?" | | **T** | Think 转换视角 | "用户/开发者会怎么看?" | | **I** | Investigate 探究后果 | "如果失败了会怎样?" | | **C** | Circle back 回归原点 | "这真的是最重要的问题吗?" | --- ## 追问框架(五轮结构) ### 第一轮:目标澄清(Why + Who + What) **目的**:明确做什么、为谁做、为什么做。 **问题设计原则**:提供选项,降低回答门槛。 ``` | 序号 | 问题 | 选项示例 | |:---|:---|:---| | 1.1 | 这个功能要解决什么核心问题? | A. XX / B. YY / C. 其他(请说明) | | 1.2 | 谁是主要用户? | A. C端用户 / B. B端商家 / C. 内部运营 | | 1.3 | 成功的标准是什么? | A. 跑通流程 / B. 用户付费 / C. 数据指标 | | 1.4 | 有没有参考案例? | A. 有(请提供) / B. 没有,帮我找 | | 1.5 | 项目当前处于什么阶段? | A. 概念期 / B. 开发中 / C. 已上线迭代 | ``` **5 Whys 深挖技巧**: 用户说"我想要XX功能" → 追问"为什么需要这个功能?" → 持续追问直到触达本质需求。 > 示例:用户"我想要导出按钮" → 为什么? → "为了做周报" → 为什么要手动做? → 本质需求可能是"自动化报表" --- ### 第二轮:边界定义(Scope + Constraints) **目的**:明确做什么、不做什么、技术约束。 ``` | 维度 | 问题 | 选项示例 | |:---|:---|:---| | **功能边界** | 1.0版本必须有哪些功能? | 列出功能清单供确认 | | **功能排除** | 哪些功能明确不做? | A. XX / B. YY | | **数据边界** | 输入数据的范围和格式? | A. 文本 / B. 图片 / C. 文件 | | **性能边界** | 响应时间/并发量要求? | A. <1秒 / B. <3秒 / C. 无要求 | | **兼容边界** | 需要兼容哪些环境? | A. iOS / B. Android / C. H5 / D. 全部 | | **技术约束** | 有指定的技术栈吗? | A. 有 / B. 无,你推荐 | ``` **漏斗式提问**: 1. 开放式开头:"能谈谈你期望的整体功能吗?" 2. 捕捉关键词:"你刚才提到'简单',具体是指哪方面?" 3. 聚焦追问:"这个功能的优先级是P0还是P1?" --- ### 第三轮:异常处理(Error + Fallback) **目的**:明确各种异常情况的处理方式。 ``` | 异常场景 | 问题 | 选项示例 | |:---|:---|:---| | **API失败** | 第三方API调用失败怎么办? | A. 直接报错 / B. 重试3次 / C. 切换备用 | | **超时处理** | 操作超时怎么处理? | A. 显示loading / B. 异步通知 / C. 报错 | | **数据异常** | 输入非法数据怎么办? | A. 前端过滤 / B. 后端校验 / C. 两者都要 | | **支付异常** | 支付成功但回调失败? | A. 用户申诉 / B. 定时补单 / C. 两者都有 | | **并发冲突** | 多人同时操作怎么处理? | A. 先到先得 / B. 加锁排队 / C. 合并 | | **日志告警** | 需要日志/告警吗? | A. 需要 / B. 不需要 / C. 核心链路需要 | ``` --- ### 第四轮:测试用例(Test Cases) **目的**:定义验收标准,测试用例即需求。 ``` | 用例类型 | 场景 | 输入 | 期望输出 | |:---|:---|:---|:---| | **正常用例** | 基本功能正常使用 | 合法输入 | 正确输出 | | **边界用例** | 空值/最大值/最小值 | 边界数据 | 正确处理 | | **异常用例** | 网络断开/服务挂掉 | 异常触发 | 优雅降级 | | **性能用例** | 高并发/大数据量 | 压力测试 | 达到指标 | ``` --- ### 第五轮:确认汇总(Confirm + Output) **目的**:汇总所有确认信息,生成TDD方案。 **汇总模板**: ```markdown ## 📌 需求确认汇总 | 维度 | 确认内容 | |:---|:---| | **核心目标** | | | **主要用户** | | | **功能范围** | | | **技术约束** | | | **异常处理** | | | **验收标准** | | --- 以上信息是否确认?确认后我将生成TDD方案文档。 ``` --- ## TDD 输出模板 追问完成后,生成测试驱动开发方案: ```markdown # [项目名] TDD需求方案 --- ## 一、需求摘要 **一句话定位**:[描述] **核心闭环**:[用户旅程] --- ## 二、项目背景 | 维度 | 内容 | |:---|:---| | **项目名称** | | | **项目阶段** | | | **核心目标** | | | **验收人** | | --- ## 三、功能范围 ### 3.1 核心功能(1.0版本) | 模块 | 功能点 | 优先级 | 状态 | |:---|:---|:---|:---| | | | P0 | 待开发 | ### 3.2 本期不做 | 功能 | 原因 | |:---|:---| | | | --- ## 四、输入输出规格 | 模块 | 输入 | 输出 | 约束 | |:---|:---|:---|:---| | | | | | --- ## 五、技术约束 | 维度 | 约束 | |:---|:---| | **部署环境** | | | **并发要求** | | | **响应时间** | | | **技术栈** | | --- ## 六、异常处理规则 | 异常场景 | 处理方式 | |:---|:---| | | | --- ## 七、测试用例清单 ### 7.1 正常用例 | 用例ID | 场景 | 输入 | 期望输出 | |:---|:---|:---|:---| | T01 | | | | ### 7.2 边界用例 | 用例ID | 场景 | 输入 | 期望输出 | |:---|:---|:---|:---| | T10 | 空值 | null | | | T11 | 最大值 | | | ### 7.3 异常用例 | 用例ID | 场景 | 触发条件 | 期望行为 | |:---|:---|:---|:---| | T20 | API失败 | | | --- ## 八、验收标准 | 验收项 | 标准 | 验收人 | |:---|:---|:---| | 功能完整 | 符合TDD文档 | | | 性能达标 | | | | 体验流畅 | | | --- ## 九、下一步行动 1. 2. 3. ``` --- ## 使用方式 ### 触发条件 当用户说以下内容时,进入追问模式: - "帮我做XX功能" - "我想开发XX" - "帮我分析需求" - "追问模式" - "需求澄清" - "TDD" ### 执行流程 ``` 1. 🚫 不要直接写代码 2. 📋 先读取现有文档(如有) 3. 🔄 按五轮框架逐轮追问 4. ✅ 每轮汇总已确认信息 5. 📄 生成TDD方案文档 6. ✔️ 用户确认后再实现 ``` ### 追问原则 | 原则 | 说明 | |:---|:---| | **选项化** | 每个问题提供2-4个选项,降低回答门槛 | | **表格化** | 用表格呈现问题,结构清晰 | | **序号化** | 问题带序号,方便用户简答(如"1.1→A") | | **汇总化** | 每轮结束汇总已确认信息 | | **渐进化** | 从目标→边界→异常→测试,层层深入 | --- ## 七问抽屉法(刘润) 当追问陷入僵局时,使用七个问题抽屉: | 抽屉 | 问题类型 | 示例 | |:---|:---|:---| | 1 | **继续/中止** | 我们现在需要讨论这个吗? | | 2 | **澄清** | 具体指代什么?范围在哪? | | 3 | **假设** | 你的前提是什么?是否唯一? | | 4 | **质疑** | 你怎么知道你是对的?证据? | | 5 | **缘由** | 根本原因是什么? | | 6 | **影响** | 结论会带来什么效应? | | 7 | **行动** | 我们具体应该做什么? | --- ## 用户故事模板(INVEST原则) 当需要拆分需求为用户故事时: **格式**:作为 [角色],我想要 [功能],以便于 [价值]。 **INVEST检查**: | 字母 | 含义 | 检查点 | |:---|:---|:---| | I | Independent | 独立的,可单独开发 | | N | Negotiable | 可协商,细节可讨论 | | V | Valuable | 有价值,解决真实问题 | | E | Estimable | 可估算,能评估工作量 | | S | Small | 小巧的,一个迭代内完成 | | T | Testable | 可测试,有明确验收标准 | --- ## 实战案例 ### 案例:知己项目需求澄清(2026-01-20) **背景**:AI性格测评 + 专家咨询平台 **追问过程**: | 轮次 | 核心问题 | 确认结果 | |:---|:---|:---| | 第一轮 | MVP目标是什么? | 先跑通用户付费闭环 | | 第一轮 | AI后端用什么? | OpenAI API | | 第一轮 | 做几种解读? | 3种(MBTI/盖洛普/PDP) | | 第二轮 | 付费模式? | 专家咨询398元/次 | | 第二轮 | 登录方式? | 仅微信登录 | | 第二轮 | 部署平台? | 腾讯云/阿里云 | | 第三轮 | API失败怎么办? | 切换Gemini备用 | | 第三轮 | 超时怎么处理? | 异步生成,通知用户 | | 第四轮 | 测试用例数 | 14个核心用例 | **输出**:生成 `TDD需求方案_v1.0.md`,用于竞标团队评估 **关键发现**:追问中发现需求变更(从八字命理→现代性格测评),及时调整方向 --- ## 版本记录 | 版本 | 日期 | 变更内容 | |:---|:---|:---| | 1.0 | 2025-01 | 初版,四轮追问框架 | | **2.0** | **2026-01-20** | 整合Human 3.0、CRITIC模型、七问抽屉法、INVEST原则、实战案例 | | **2.1** | **2026-01-28** | 融合本地模型:支持离线生成追问问题 | --- ## 🤖 本地模型融合 ### 功能增强 智能追问现支持使用本地模型(Ollama)生成追问问题,无需联网: ```python # 导入本地模型SDK import sys sys.path.append("/Users/karuo/Documents/个人/卡若AI") from 运营中枢.local_llm import generate_questions, analyze_task # 生成追问问题(离线可用) topic = "私域流量变现" questions = generate_questions(topic, count=5) # ['目标用户群体是谁?', '变现模式是什么?', '流量从哪里来?', ...] # 分析需求并拆解 task = "搭建一个私域会员系统" steps = analyze_task(task) # '1. 明确会员等级体系\n2. 设计积分规则\n3. ...' ``` ### 使用场景 | 场景 | 本地模型 | 云端API | |:---|:---|:---| | 快速生成追问问题 | ✅ 推荐 | 可选 | | 需求初步分析 | ✅ 推荐 | 可选 | | 复杂TDD方案生成 | 不推荐 | ✅ 推荐 | | 离线/弱网环境 | ✅ 唯一选择 | ❌ | ### 资源控制 本地模型调用已内置限流(CPU控制在30%以内),无需担心资源占用。 --- > "AI让答案变得廉价,好问题才能让你脱颖而出。" —— 36氪