---
name: planning-explore
description: 苏格拉底式需求探索。在任何编码之前激活。探索上下文、提问、提出方案、但不产生承诺。融合 Superpowers brainstorming + OpenSpec explore。
---

# 需求探索(Explore)

在任何编码之前激活此技能。通过苏格拉底式设计精炼，帮助你和用户就要构建什么达成一致。

## 铁律

```
没有完成探索就开始编码 = 在错误方向上高速前进。
```

## 何时使用

- 用户说"让我们构建 X"/"我需要一个 Y"/"帮我做 Z"
- 任何涉及新功能、修改、修复的请求
- 你不确定完整范围时

## 流程

### 阶段 1: 探索上下文
1. 读取相关代码文件、文档、现有规范
2. 理解当前架构和约束
3. 识别影响范围

### 阶段 2: 苏格拉底式提问
逐个提问（不要一次问多个）：

- "这个功能的核心用户场景是什么？"
- "现有的 X 模块会受到影响吗？"
- "你期望的数据流是什么样的？"
- "有没有性能/安全方面的约束？"
- "这个功能的边界在哪里？什么不做？"

### 阶段 3: 提出方案

提出 2-3 种方案，每种包含：
- 方案描述
- 优点
- 缺点
- 预估工作量

### 阶段 4: 分段展示设计

将设计分段展示给用户：
1. 数据模型
2. 接口设计
3. 模块划分
4. 关键实现路径

每段获得用户确认后再继续。

### 阶段 5: 写设计文档
将确认的设计写入文档：
```
.specpow/changes/<change-name>/exploration.md
```

### 阶段 6: 自审

检查设计文档：
- [ ] 是否覆盖了所有用户场景？
- [ ] 是否与现有架构一致？
- [ ] 是否有遗漏的边界情况？
- [ ] 是否明确了非目标？

### 阶段 7: 用户审核

将设计文档展示给用户最终审核。

### 阶段 8: 转入 propose

用户确认后，提示使用 `propose` 技能创建正式的变更提案。

## 视觉伴侣（计划中）

对于复杂或 UI 相关设计，未来将支持启动视觉伴侣服务，在浏览器中展示 HTML mockup 和图表。

> 此功能尚未实现，当前请使用文字描述和 ASCII 图表辅助设计沟通。

## 合理化防御表

| 借口 | 现实 |
|------|------|
| "这个很简单，不需要探索" | 简单的事经常隐藏复杂性。探索它。 |
| "用户已经说得很清楚了" | 用户说的和他们想要的经常不同。提问验证。 |
| "我可以直接开始编码" | 编码是最后一步，不是第一步。 |
| "探索太慢了" | 返工更慢。 |
| "我知道该怎么做" | 知道 ≠ 验证过。走流程。 |

## 红旗

如果你有以下想法，STOP：
- "我应该直接开始写代码" → 还没探索
- "这个需求很清楚" → 你确定吗？提问验证
- "用户会不耐烦" → 5 分钟的探索节省 5 小时的返工
