| name | discover-unknowns |
|---|---|
| description | Identify and reduce known knowns, known unknowns, unknown knowns, and unknown unknowns before, during, and after complex work. Use when Codex is asked to run a blind-spot pass, clarify ambiguous requirements, plan a long-horizon project, explore an unfamiliar domain, prototype before implementation, review assumptions and risks, track implementation deviations, or verify that a completed result is understood and ready to ship; also trigger on Chinese requests such as 盲点扫描、找未知未知、梳理隐性要求、先澄清再执行。 |
Discover Unknowns
把用户提供的“地图”与真实任务“领地”之间的差距,转化为可验证的决策和执行路径。避免停留在抽象分析;在权限和风险允许时,发现关键未知后继续推进任务。
建立四象限
将信息明确分为四类:
- 已知的已知(Known Knowns):用户明确表达、来源已证实、当前状态已读取的事实与要求。
- 已知的未知(Known Unknowns):已经意识到但尚未回答的问题、决策和依赖。
- 未知的已知(Unknown Knowns):用户心里有标准、偏好或经验,但尚未说出;看到样例或反例后通常能判断。
- 未知的未知(Unknown Unknowns):双方尚未意识到、可能在研究、实现或真实环境中才暴露的盲点。
不要把推测写成“已知”。为每条内容标注事实、假设、偏好、待决策或待验证。
工作原则
- 先读取真实状态。优先检查用户提供的文件、代码、页面、数据、运行状态和历史决策,再提出问题。
- 只提升高影响未知。优先处理会改变架构、范围、用户体验、成本、风险、权限或验收标准的事项。
- 对可发现的问题先调查。用只读检查、搜索、测试、参考实现或小型原型获取证据,不把可查问题都抛给用户。
- 对隐性偏好用对比激发。提供少量差异明显的样例、原型或方案,让用户快速识别“这不是我要的”。
- 对低影响未知采用保守、可逆的默认值,明确记录后继续;不要让盲点扫描变成无限规划。
- 只有在答案会显著改变路径、无法自行验证或需要新增授权时才暂停。一次只问一个最关键的问题。
- 把发现融入执行。用户要求完成任务时,盲点扫描是起点,不是最终交付。
选择当前阶段
判断任务处于实施前、实施中或实施后。跨阶段任务按顺序执行;用户只要求“盲点扫描”时,交付扫描结果即可。
实施前:缩小地图与领地的差距
- 建立任务地图:目标、使用者、当前状态、范围、约束、依赖、风险、成功标准和不可逆动作。
- 建立四象限台账,先列已有证据,再列高影响未知。
- 按类型选择动作:
- 已知的未知:调查、验证、做决策或提出一个关键问题。
- 未知的已知:访谈、展示参考、制作低成本原型或给出对比方案。
- 未知的未知:执行盲点扫描、边界分析、失败情景推演、依赖与权限检查、历史方案检索。
- 在大规模实现前,优先验证最可能改变方向的假设。能用一次小实验回答,就不要先建完整系统。
- 形成可执行简报后继续工作。
盲点扫描至少覆盖以下适用维度:
- 用户意图、利益相关方和真实使用场景
- 范围边界、非目标和隐含成功标准
- 数据来源、字段、契约、状态与迁移
- 权限、依赖、集成、环境和实时状态
- 异常路径、恢复、幂等、隐私与安全
- 性能、成本、可维护性和扩展边界
- 验收证据、上线方式、监控、所有者和回滚
- 可复用的历史决策、参考实现和反例
实施中:记录领地迫使地图改变的地方
维护精简的实施记录;默认保留在对话中,只有长任务或交接需要时才创建 implementation-notes.md。
每次偏离原方案时记录:
- 发现了什么新事实或边界条件
- 为什么原计划不再合适
- 选择了什么保守方案
- 对范围、数据、接口、体验、风险和验收有什么影响
- 需要立即决策,还是可以完成后复盘
发现高风险或不可逆未知时暂停并请求授权;其余情况选择可逆方案、记录后继续。阶段性对照任务地图,防止实现已经变化而验收口径仍停留在旧计划。
实施后:验证结果与理解
- 用真实读回、测试、预览或运行证据验证结果,不以“命令成功”代替验收。
- 说明最终结果、关键决策、剩余未知、隐藏依赖、失败方式和恢复路径。
- 明确区分已完成、进行中、待授权和未验证边界。
- 面向交接或高风险变更时,生成简短解释材料;需要确认使用者真正理解时,再提供 3–5 个针对关键机制和失败路径的问题。
- 将仍然重要的未知转成下一步验证动作、负责人或停止条件。
默认输出
保持结论优先,使用以下紧凑结构;按任务规模删减,不强制输出空栏目。
## 当前判断
一句话说明目标、当前阶段,以及最重要的未知。
## 四象限
- 已知的已知:已验证事实与明确要求
- 已知的未知:已识别的开放问题
- 未知的已知:需要用样例、原型或访谈显化的隐性标准
- 未知的未知:通过盲点扫描发现的风险或缺口
## 优先处理
1. 未知事项 — 为什么会改变路径 — 如何验证
## 默认与边界
- 采用的可逆默认值
- 尚未验证或需要授权的内容
## 下一步
立即执行的第一个动作
复杂任务最多优先展示 3–7 个未知;把其余项目放在次要台账中。若证据显示当前路线错误,明确建议转向,不要为了遵循原计划继续扩大沉没成本。
