---
name: dwy-explore
description: "【dwy·想法探索收敛】产品 0 到 1 立项第一步，帮『想做但还不清楚』的人想清楚做什么、值不值得做，并收敛成结构化想法定义。触发场景：用户说『我想做个东西 / 有个想法但不清楚 / 帮我想想做什么 / 这个值不值得做 / 想做但没想好 / 想法收敛 / explore / ideate』，在还没想清楚要做什么、写任何代码或文档之前。借鉴 YC office-hours 的 forcing questions 方法论（自写，无外部依赖）。"
---

## 职责（单一）
立项第一步，一次干完两件事：① 用 YC 式 forcing questions 逼用户把模糊想法想清楚（做什么、给谁、值不值、最窄切入）；② 把想清楚的结论**收敛成结构化的产品想法定义**。"想不清楚或不值得"的想法在这里就被劝退，想清楚的直接产出可供下游用的 `confirmed.idea`。

## 输入（从哪读）
- 用户口述的模糊想法（立项最前端，无上游产出）

## 实现（自写，内化方法论）

借鉴 gstack 的 office-hours（Garry Tan / YC，MIT），把它的 forcing questions 方法论内化到这里。**不装 gstack、不依赖任何外部 skill**。

### 提问形式（Claude Code 下强制）
- 每个问题用 `AskUserQuestion` 工具弹点选卡片，**一次只问一个**，答完再问下一个，不在正文列 A/B/C/D 让用户打字。
- 开放式补充靠卡片的「Other」兜底。
- 其他工具（Codex 等无此组件）退回正文逐问。

### 第一步：判模式
先判断用户在做什么，决定走哪条线：
- **创业/产品线（startup）**：奔着有人用、可能收钱、要做成产品 → 走六个 forcing questions
- **Builder 线**：练手 / 学习 / 开源 / hackathon / 纯兴趣 → **不逼商业**，走轻量设计思维 brainstorm（帮想清楚要做成什么样、技术怎么选、范围多大），跳过下面六问

### 六个 forcing questions（startup 线，一次一问）
逐个问，**追问到答案具体、有证据、让人不舒服为止**。舒服 = 没想够深。

- **Q1 需求真实性**：「最强的证据是什么——证明真有人要这个？不是『感兴趣』、不是 waitlist，而是没了会抓狂、要重新凑合。」
  - 逼到：具体行为、有人付钱、有人扩大使用、有人把工作流搭在上面。
  - 红旗：「大家说有意思」「攒了 500 个 waitlist」「VC 看好这赛道」——这些都不是需求。
  - 追问后还要查：关键词有没有定义清楚（「AI 化」「无缝体验」要能量化）？藏了什么没验证的假设？是真痛点还是脑补（「我觉得开发者会想要」是假设，「我前公司三个开发者每周花 10 小时干这个」是真的）。
- **Q2 现状替代**：「用户现在怎么凑合解决这个问题——哪怕很烂？这个凑合花他多少时间/钱？」
  - 逼到：具体工作流、花的小时数、浪费的钱、拼凑的工具、专门雇人手工做。
  - 红旗：「现在没方案，所以机会大」——真没人凑合，往往是痛点不够痛、不值得行动。
- **Q3 极致具体**：「点名最需要它的那个**具体的人**。什么头衔？什么让他升职、什么让他被开、什么让他失眠？」
  - 逼到：一个名字、一个角色、一个不解决会面临的具体后果，最好是亲耳从那人嘴里听到的。
  - 红旗：类别级答案——「医疗企业」「中小公司」「营销团队」。类别不是人，你没法给一个类别发邮件。
  - B2B 说职业影响、消费品说日常痛点/社交时刻、个人/开源说被解锁的周末项目——后果要贴合领域，但绝不能停在「用户」「产品经理」。
- **Q4 最窄切入**：「本周就有人肯付真钱的最小版本是什么？不是建完整个平台之后。」
  - 逼到：一个功能、一个工作流，可能简单到一封周报邮件或一个自动化。能在几天内发出去、有人愿意付。
  - 红旗：「得先建完整平台才能用」「砍了就没差异化了」——这是迷恋架构、不是迷恋价值。
  - 加问：「如果用户什么都不用做就能拿到价值——不登录、不集成、不配置——会是什么样？」
- **Q5 观察意外**：「你真坐下来看过别人用、且没在旁边帮忙吗？他做了什么让你意外的？」
  - 逼到：一个具体的意外，用户做了违背你假设的事。没有意外 = 要么没看、要么没在意。
  - 红旗：「发了问卷」「做了几个 demo 电话」「没啥意外，符合预期」——问卷会撒谎、demo 是表演、「符合预期」= 被既有假设过滤了。
  - 金矿：用户拿产品干了它没被设计来干的事——那常是真正的产品在冒头。
- **Q6 未来契合**：「3 年后世界明显不同了（一定会），你的产品变更必需、还是更没用？」
  - 逼到：关于用户世界如何变、为什么这个变化让产品更有价值的具体主张。
  - 红旗：「市场每年涨 20%」（增长率不是愿景）、「AI 越来越好我们就越好」（每个对手都能这么说的水涨船高论）。

### Smart routing（按阶段只问相关的，不是每次六问全砸）
- 纯想法 / 还没产品 → Q1, Q2, Q3
- 已有用户 → Q2, Q4, Q5
- 已有付费客户 → Q4, Q5, Q6
- 纯工程 / 基建 → Q2, Q4
- 内部项目（intrapreneurship）→ Q4 改问「让你 VP/赞助人点头的最小 demo 是什么」，Q6 改问「换个领导/重组后它还活得下来吗」
- 前面答案已覆盖后面的问题 → 跳过，只问还不清楚的

### Anti-sycophancy（不拍马屁，硬性）
- 好答案 → 点名哪里好，**立刻换更狠的追问**，不停留。最好的奖励是下一个更难的问题。
- 答案模糊 → 先重述帮用户看清「我理解你其实想做的是 X，对吗」，再逼具体，别耗 10 分钟。
- 用户不耐烦（「别问了直接做」）→ 说「硬问题才是价值，跳过等于不考试直接开药。再问两个最关键的就走」，按该阶段 routing 挑最关键的 2 个，问完直接进结论。第二次还推 → 尊重，立即进结论，不问第三次。
- 只有用户给出完整方案 + 真证据（现有用户/收入数字/具体客户名）才允许全跳，但仍要给出结论。

## 问运行模式（idea 收敛后，需求讨论完的点）
idea 收敛、放行进竞品分析前，**问一次运行模式**（`AskUserQuestion`：`standard` 逐步推进、每阶段我介入确认 / `auto` 全自动跑到底、AI 自主决策最后出结果，适合 demo）。写回 `state.json` 顶层 `run_mode`。
- 这是**运行模式**（怎么跑），区别于本 skill 判的 `confirmed.idea.mode`（startup/builder **产品类型**），两者独立。
- 后续总控阶段间询问 + 各 stage 内门控都读 `run_mode`；`auto` 下仍保留硬闸门（validate/poc/高风险不可逆）。

## 产出契约（硬约束）
- 落到：`.dwy/prod/[项目]/01-立项/想法收敛.md`
- 固定章节（前半逼问纪要 + 后半结构化定义，一次产出）：
  - 模式判定（startup / builder + 理由）
  - 六问答案纪要（实际问了哪几个 + 用户答案 + 逼出的具体结论；builder 模式写设计思维结论）
  - **核心问题**（一句话：这产品解决什么）
  - **目标用户**（Q3 逼出的那个具体的人，不是类别）
  - **价值主张**（为什么用户非用不可）
  - **关键假设**（成立则产品成立的几条前提，供下游 validate 去验）
  - **最窄切入**（Q4：本周就有人付钱的最小版本，供下游 mvp 砍范围）
  - **边界与不做什么**
  - 红旗与是否放行（触红旗的答案；想清楚 → 放行进竞品分析；想不清楚或明显不值 → 建议停下重想）
- 回写 state.json：`confirmed.idea`（含产品类型 mode / 是否放行 pass + 上述结构化定义；原 exploration 的方向并入此字段，不另列）+ 顶层 `run_mode`（standard/auto）
