Files

407 lines
11 KiB
Markdown
Raw Permalink Normal View History

---
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氪