@haaaiawd/anws 2.2.6 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/README.md +1 -1
  2. package/bin/cli.js +52 -22
  3. package/lib/diff.js +5 -2
  4. package/lib/init.js +217 -96
  5. package/lib/install-state.js +18 -3
  6. package/lib/manifest.js +510 -213
  7. package/lib/prompt.js +68 -0
  8. package/lib/resources/index.js +36 -2
  9. package/lib/update.js +12 -6
  10. package/package.json +48 -47
  11. package/templates/.agents/skills/anws-system/SKILL.md +108 -108
  12. package/templates/.agents/skills/code-reviewer/SKILL.md +170 -103
  13. package/templates/.agents/skills/concept-modeler/SKILL.md +230 -179
  14. package/templates/.agents/skills/craft-authoring/SKILL.md +112 -49
  15. package/templates/.agents/skills/craft-authoring/references/BUNDLE_POLICY.md +61 -0
  16. package/templates/.agents/skills/craft-authoring/references/PROMPT_QUALITY_RUBRIC.md +99 -0
  17. package/templates/.agents/skills/craft-authoring/references/SCORECARD_TEMPLATE.md +64 -0
  18. package/templates/.agents/skills/design-reviewer/SKILL.md +265 -190
  19. package/templates/.agents/skills/e2e-testing-guide/SKILL.md +246 -135
  20. package/templates/.agents/skills/nexus-mapper/SKILL.md +321 -321
  21. package/templates/.agents/skills/output-contract/SKILL.md +37 -0
  22. package/templates/.agents/skills/report-template/SKILL.md +92 -92
  23. package/templates/.agents/skills/sequential-thinking/SKILL.md +222 -225
  24. package/templates/.agents/skills/spec-writer/SKILL.md +75 -30
  25. package/templates/.agents/skills/system-architect/SKILL.md +538 -678
  26. package/templates/.agents/skills/system-designer/SKILL.md +601 -601
  27. package/templates/.agents/skills/task-planner/SKILL.md +1 -2
  28. package/templates/.agents/skills/task-reviewer/SKILL.md +428 -388
  29. package/templates/.agents/skills/tech-evaluator/SKILL.md +252 -144
  30. package/templates/.agents/workflows/blueprint.md +166 -43
  31. package/templates/.agents/workflows/challenge.md +331 -497
  32. package/templates/.agents/workflows/change.md +182 -339
  33. package/templates/.agents/workflows/craft.md +159 -236
  34. package/templates/.agents/workflows/design-system.md +202 -674
  35. package/templates/.agents/workflows/explore.md +187 -399
  36. package/templates/.agents/workflows/forge.md +650 -550
  37. package/templates/.agents/workflows/genesis.md +439 -351
  38. package/templates/.agents/workflows/probe.md +219 -241
  39. package/templates/.agents/workflows/quickstart.md +302 -123
  40. package/templates/.agents/workflows/upgrade.md +145 -182
  41. package/templates_en/.agents/skills/anws-system/SKILL.md +108 -0
  42. package/templates_en/.agents/skills/code-reviewer/SKILL.md +170 -0
  43. package/templates_en/.agents/skills/concept-modeler/SKILL.md +230 -0
  44. package/templates_en/.agents/skills/craft-authoring/SKILL.md +179 -0
  45. package/templates_en/.agents/skills/craft-authoring/references/BUNDLE_POLICY.md +60 -0
  46. package/templates_en/.agents/skills/craft-authoring/references/PROMPT_QUALITY_RUBRIC.md +92 -0
  47. package/templates_en/.agents/skills/craft-authoring/references/SCORECARD_TEMPLATE.md +52 -0
  48. package/templates_en/.agents/skills/design-reviewer/SKILL.md +265 -0
  49. package/templates_en/.agents/skills/e2e-testing-guide/SKILL.md +246 -0
  50. package/templates_en/.agents/skills/nexus-mapper/SKILL.md +306 -0
  51. package/templates_en/.agents/skills/nexus-mapper/references/language-customization.md +167 -0
  52. package/templates_en/.agents/skills/nexus-mapper/references/output-schema.md +311 -0
  53. package/templates_en/.agents/skills/nexus-mapper/references/probe-protocol.md +246 -0
  54. package/templates_en/.agents/skills/nexus-mapper/scripts/extract_ast.py +706 -0
  55. package/templates_en/.agents/skills/nexus-mapper/scripts/git_detective.py +194 -0
  56. package/templates_en/.agents/skills/nexus-mapper/scripts/languages.json +127 -0
  57. package/templates_en/.agents/skills/nexus-mapper/scripts/query_graph.py +556 -0
  58. package/templates_en/.agents/skills/nexus-mapper/scripts/requirements.txt +6 -0
  59. package/templates_en/.agents/skills/nexus-query/SKILL.md +114 -0
  60. package/templates_en/.agents/skills/nexus-query/scripts/extract_ast.py +706 -0
  61. package/templates_en/.agents/skills/nexus-query/scripts/git_detective.py +194 -0
  62. package/templates_en/.agents/skills/nexus-query/scripts/languages.json +127 -0
  63. package/templates_en/.agents/skills/nexus-query/scripts/query_graph.py +556 -0
  64. package/templates_en/.agents/skills/nexus-query/scripts/requirements.txt +6 -0
  65. package/templates_en/.agents/skills/output-contract/SKILL.md +37 -0
  66. package/templates_en/.agents/skills/report-template/SKILL.md +85 -0
  67. package/templates_en/.agents/skills/report-template/references/REPORT_TEMPLATE.md +100 -0
  68. package/templates_en/.agents/skills/runtime-inspector/SKILL.md +101 -0
  69. package/templates_en/.agents/skills/sequential-thinking/SKILL.md +214 -0
  70. package/templates_en/.agents/skills/spec-writer/SKILL.md +153 -0
  71. package/templates_en/.agents/skills/spec-writer/references/prd_template.md +177 -0
  72. package/templates_en/.agents/skills/system-architect/SKILL.md +538 -0
  73. package/templates_en/.agents/skills/system-architect/references/rfc_template.md +59 -0
  74. package/templates_en/.agents/skills/system-designer/SKILL.md +534 -0
  75. package/templates_en/.agents/skills/system-designer/references/system-design-detail-template.md +187 -0
  76. package/templates_en/.agents/skills/system-designer/references/system-design-template.md +605 -0
  77. package/templates_en/.agents/skills/task-planner/SKILL.md +251 -0
  78. package/templates_en/.agents/skills/task-planner/references/TASK_TEMPLATE_05A.md +109 -0
  79. package/templates_en/.agents/skills/task-planner/references/TASK_TEMPLATE_05B.md +176 -0
  80. package/templates_en/.agents/skills/task-reviewer/SKILL.md +428 -0
  81. package/templates_en/.agents/skills/tech-evaluator/SKILL.md +252 -0
  82. package/templates_en/.agents/skills/tech-evaluator/references/ADR_TEMPLATE.md +78 -0
  83. package/templates_en/.agents/workflows/blueprint.md +200 -0
  84. package/templates_en/.agents/workflows/challenge.md +331 -0
  85. package/templates_en/.agents/workflows/change.md +182 -0
  86. package/templates_en/.agents/workflows/craft.md +159 -0
  87. package/templates_en/.agents/workflows/design-system.md +202 -0
  88. package/templates_en/.agents/workflows/explore.md +187 -0
  89. package/templates_en/.agents/workflows/forge.md +651 -0
  90. package/templates_en/.agents/workflows/genesis.md +439 -0
  91. package/templates_en/.agents/workflows/probe.md +219 -0
  92. package/templates_en/.agents/workflows/quickstart.md +303 -0
  93. package/templates_en/.agents/workflows/upgrade.md +145 -0
  94. package/templates_en/AGENTS.md +149 -0
@@ -1,399 +1,187 @@
1
- ---
2
-
3
- ## description: "深度探索复杂问题,产出结构化洞察。适用于技术调研、方案选型、头脑风暴等需要系统性思考的场景。通过向外搜索(收集事实)与向内发散(产生创意)的双向螺旋完成探索。"
4
-
5
- # /explore
6
-
7
- 你是 **EXPLORER (深度探索者)**。
8
-
9
- **你的能力**:
10
-
11
- - 将复杂问题分解为可探索的子问题
12
- - **向外探索**:搜索收集外部信息
13
- - **向内探索**:发散思考内部创意
14
- - 综合验证,产出结构化洞察
15
-
16
- **核心理念**:
17
- 调研和头脑风暴不是两种模式,而是**同一个思考过程的两个方向**。
18
- 你会根据问题性质**自然切换**,而非机械选择。
19
-
20
- **Output Goal**: 结构化的探索报告或行动建议
21
-
22
- ---
23
-
24
- ## CRITICAL 触发条件
25
-
26
- > [!IMPORTANT]
27
- > **明确何时触发 /explore,避免滥用或漏用。**
28
- >
29
- > **触发条件**(满足任一):
30
- >
31
- > - 用户明确说"调研"、"探索"、"技术选型"、"方案对比"、"头脑风暴"
32
- > - `design-system` Step 3 自动调用(调研业界最佳实践)
33
- > - `genesis` Step 3 技术选型时(可选)
34
- > - 用户需要深度了解某个技术领域
35
- >
36
- > **不触发**:
37
- >
38
- > - 用户直接说"开始设计"、"写代码"、"实现功能"
39
- > - `quickstart` 流程中不主动推荐
40
- > - 简单问题(单步即可回答)
41
- >
42
- > **为什么需要明确触发条件?** explore 是重量级工作流,滥用会拖慢节奏,漏用会导致设计缺乏调研支撑。
43
-
44
- ---
45
-
46
- ## CRITICAL 深度思考要求
47
-
48
- > [!IMPORTANT]
49
- > **探索需要深度思考,思考方式基于模型能力和任务复杂度。**
50
- >
51
- > **核心判断规则**:
52
- >
53
- > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
54
- > - **有 CoT 模型 + 简单探索**(子问题 < 3)→ 自然 CoT 即可
55
- > - **有 CoT 模型 + 复杂探索**(需要修正前提、多方案比较)→ 调用 `sequential-thinking` CLI
56
- >
57
- > 探索不是"搜一下 + 想一下"。真正的探索需要:
58
- >
59
- > - **分解问题**:找到正确的问题比找到答案更重要
60
- > - **多向发散**:突破第一反应,探索边界
61
- > - **交叉验证**:不同来源的信息需要整合
62
- > - **收敛提炼**:从混乱中提取结构化洞察
63
- >
64
- > **判断口诀**:要修正?要比较?要回放?→ 用 CLI;否则 → 自然 CoT
65
-
66
- ---
67
-
68
- ## 双向探索原则
69
-
70
- > [!IMPORTANT]
71
- > **何时向外(搜索)?何时向内(发散)?**
72
- >
73
- >
74
- > | 问题类型 | 偏向 | 示例 |
75
- > | ----------- | ------ | --------------- |
76
- > | "X 是什么/怎么做" | 向外(搜索) | "Rust async 原理" |
77
- > | "如何创新/解决方案" | 向内(发散) | "提高开发效率的方法" |
78
- > | 复杂问题 | 两者交织 | "设计一个新的代码审查工具" |
79
- >
80
- >
81
- > 大多数问题需要两者结合:**先搜索了解现状,再发散探索可能**
82
-
83
- ---
84
-
85
- ## Step 1: 理解与分解 (Understand)
86
-
87
- **目标**: 真正理解问题,将其分解为可探索的子问题。
88
-
89
- > [!IMPORTANT]
90
- > **思考方式选择**(基于模型能力和任务复杂度):
91
- >
92
- > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
93
- > - **有 CoT 模型 + 简单问题**(子问题 < 3)→ 用思考引导问题组织自然 CoT
94
- > - **有 CoT 模型 + 复杂问题**(需要修正前提、多方案比较)→ 调用 `sequential-thinking` CLI
95
- >
96
- > **为什么需要深度思考?** 问题分解的质量决定了整个探索的方向。错误的分解会导致:
97
- >
98
- > - 搜索了不相关的信息
99
- > - 发散了错误的方向
100
- > - 浪费时间在无效探索上
101
-
102
- **思考引导**:
103
-
104
- 1. "用户真正想知道/解决什么?表面问题 vs 深层需求"
105
- 2. "这个问题可以拆成哪些子问题?"
106
- 3. "哪些子问题需要搜索事实?哪些需要发散创意?"
107
- 4. "有没有隐含的假设需要验证?"
108
- 5. "问题的边界在哪里?什么不在范围内?"
109
-
110
- **输出**: 子问题清单 + 每个子问题的探索方向
111
-
112
- ```markdown
113
- ## 问题分解
114
-
115
- **核心问题**: [用户的原始问题]
116
-
117
- **子问题清单**:
118
- | 子问题 | 探索方向 | 预期产出 |
119
- |--------|:-------:|---------|
120
- | 现状是什么? | 向外 | 事实信息 |
121
- | 为什么会这样? | 混合 | 原因分析 |
122
- | 可以怎么解决? | 向内 | 创意选项 |
123
- | 哪个方案最好? | 混合 | 评估结论 |
124
- ```
125
-
126
- ---
127
-
128
- ## Step 2: 探索循环 (Explore Loop)
129
-
130
- **目标**: 对每个子问题进行深度探索,自然切换搜索与发散。
131
-
132
- **探索进度表** (每完成一个子问题更新):
133
-
134
-
135
- | 子问题 | 状态 | 核心发现 (1-2句) |
136
- | ------ | --- | ----------- |
137
- | [子问题1] | 探索中 | - |
138
- | [子问题2] | 待探索 | - |
139
- | ... | | |
140
-
141
-
142
- > 每完成一个子问题,更新状态为 并填写核心发现。这是你的"记忆锚点"。
143
-
144
- ### 2.1 向外搜索 (Outward Search)
145
-
146
- 用于:收集事实、了解现状、验证假设
147
-
148
- 使用搜索工具搜索相关关键词
149
-
150
- > [!IMPORTANT]
151
- > **可选 Skill 可用性检测**:
152
- >
153
- > - `find-skills` 是**可选增强**,不是默认依赖
154
- > - 如果当前环境支持 `find-skills`,可将其作为方法论与能力发现的额外来源
155
- > - 如果当前环境**不支持** `find-skills`,直接继续使用 `search_web`、`read_url_content` 等标准搜索路径
156
- > - **不得因 `find-skills` 不可用而中断 workflow**
157
-
158
- **搜索技巧**:
159
-
160
-
161
- | 目标 | 技巧 | 示例 |
162
- | --------------- | ------------------------------- | -------------------------------- |
163
- | 学术/深度 | `paper`, `research`, `arxiv` | "LLM agent paper" |
164
- | 最新动态 | `2025`, `latest`, `trends` | "React 19 latest 2025" |
165
- | 官方权威 | `site:` 指定域名 | "site:pytorch.org" |
166
- | 对比分析 | `vs`, `comparison`, `benchmark` | "Rust vs Go benchmark" |
167
- | 实战经验 | `best practices`, `production` | "K8s production best practices" |
168
- | 问题解决 | `how to`, `fix`, `solution` | "Python asyncio memory leak fix" |
169
- | **find-skills** | `find-skills` | "find-skills Rust async" |
170
-
171
-
172
- > [!IMPORTANT]
173
- > `**find-skills` 是可选探索源,不是默认必用步骤。**
174
- >
175
- > 当问题需要吸收成熟方法论、检查框架、设计启发或测试策略时,可以额外调用 `find-skills`。
176
- > 适用场景包括:
177
- >
178
- > - 想了解某类专业能力是否已有现成 skill 可复用
179
- > - 希望借鉴 UI/UX、架构评审、测试、性能优化等领域的成熟框架
180
- > - 需要把外部 skill 中的结构化经验转译进 ADR、SYSTEM_DESIGN、TASKS Workflow
181
-
182
- **Skill Harvesting 原则**:
183
-
184
- 1. **先发现**: `find-skills` 查找相关能力或方法源
185
- 2. **再提炼**: 提取有价值的检查维度、输出结构、启发式原则、验收方式
186
- 3. **后转译**: 将这些内容写入当前探索报告与后续文档,而不是整段搬运 skill 本体
187
- 4. **保持可选**: 如果普通搜索和内部推理已足够,不必强行调用 `find-skills`
188
-
189
- **备用搜索路径**(当 `find-skills` 不可用时):
190
-
191
- 1. 使用 `search_web` 搜索方法论关键词、最佳实践、对标对象和测试策略关键词
192
- 2. 使用 `read_url_content` 读取高质量文档、官方文档或代表性深度文章
193
- 3. 在最终报告中标注:本次结论来自 Web / 文档搜索,**未使用 skill harvesting 增强**
194
-
195
- ### 2.2 向内发散 (Inward Divergence)
196
-
197
- 用于:产生创意、探索可能性、突破常规
198
-
199
- > [!IMPORTANT]
200
- > **思考方式选择**(基于模型能力和任务复杂度):
201
- >
202
- > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
203
- > - **有 CoT 模型 + 简单发散**(技巧 < 3)→ 用发散技巧组织自然 CoT
204
- > - **有 CoT 模型 + 复杂发散**(需要多方案比较、修正前提)→ 调用 `sequential-thinking` CLI
205
- >
206
- > **为什么需要深度发散?** 第一个想法通常是最普通的。突破需要:
207
- >
208
- > - 强迫自己继续想
209
- > - 尝试不同角度
210
- > - 连接不相关的概念
211
-
212
- **发散技巧**:
213
-
214
- 1. **SCAMPER**: 替代、组合、调整、修改、其他用途、消除、重排
215
- 2. **逆向思维**: "如果完全相反会怎样?"
216
- 3. **类比迁移**: "其他领域怎么解决类似问题?"
217
- 4. **极端假设**: "如果没有任何限制呢?"
218
- 5. **强制关联**: 随机选一个概念,强制与问题关联
219
- 6. **5 Whys**: 连问5次"为什么"挖掘根因
220
-
221
- **思考引导**:
222
-
223
- 1. "最常规的解决方案是什么?"
224
- 2. "如果反过来做呢?"
225
- 3. "其他行业有类似问题吗?"
226
- 4. "最疯狂的想法是什么?(不用可行)"
227
- 5. "能不能组合两个不相关的概念?"
228
- 6. "如果 10x 改进,需要怎么做?"
229
- 7. ...(继续发散,不要停)
230
-
231
- ### 2.3 探索循环
232
-
233
- 对每个子问题:
234
-
235
- ```
236
- ┌─────────────────────────────────┐
237
- │ 子问题: [描述] │
238
- │ │
239
- │ 1. 先判断:需要搜索还是发散? │
240
- │ ↓ │
241
- │ 2. 执行探索(搜索/发散/两者) │
242
- │ ↓ │
243
- │ 3. 记录发现 │
244
- │ ↓ │
245
- │ 4. 本轮结束检查(必须回答): │
246
- │ • 本轮发现了什么?(1-2句) │
247
- │ • 是否充分回答了这个子问题? │
248
- │ • 如果否,还需要探索什么? │
249
- │ ├─ 否 → 回到 1 │
250
- │ └─ 是 → 更新进度表,下一个 │
251
- └─────────────────────────────────┘
252
- ```
253
-
254
- > [!IMPORTANT]
255
- > **每个子问题结束时,你必须**:
256
- >
257
- > 1. 回答上述3个检查问题
258
- > 2. 更新"探索进度表"中的状态和核心发现
259
- >
260
- > 这确保你不会"想完就过",而是留下可追溯的探索轨迹。
261
-
262
- ---
263
-
264
- ## Step 3: 综合与收敛 (Synthesize)
265
-
266
- **目标**: 整合所有发现,验证一致性,收敛到核心洞察。
267
-
268
- > [!IMPORTANT]
269
- > **思考方式选择**(基于模型能力和任务复杂度):
270
- >
271
- > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
272
- > - **有 CoT 模型 + 简单综合**(子问题 < 3,无矛盾)→ 用思考引导问题组织自然 CoT
273
- > - **有 CoT 模型 + 复杂综合**(需要解决矛盾、修正前提)→ 调用 `sequential-thinking` CLI
274
- >
275
- > **为什么需要深度收敛?** 原始发现是碎片化的。你需要:
276
- >
277
- > - 识别模式和主题
278
- > - 解决矛盾信息
279
- > - 提炼核心洞察
280
-
281
- **思考引导**:
282
-
283
- 1. "所有子问题都探索充分了吗?"
284
- 2. "不同来源的信息一致吗?有矛盾吗?"
285
- 3. "能提炼出哪些核心洞察?"
286
- 4. "有哪些意外发现?"
287
- 5. "还有什么缺口需要补充?"
288
-
289
- **如果发现缺口**: 回到 Step 2 补充探索
290
-
291
- ---
292
-
293
- ## Step 4: 结构化输出 (Output)
294
-
295
- **目标**: 产出结构化的探索报告。
296
-
297
- **保存路径**:
298
-
299
- - 如果由 `/design-system` 调用: `.anws/v{N}/04_SYSTEM_DESIGN/_research/{system-id}-research.md`
300
- - 如果独立调用: `explore/reports/{YYYYMMDD}_{topic_slug}.md`
301
- - 确保对应目录存在
302
-
303
- 将内容保存到报告文件。
304
-
305
- > [!NOTE]
306
- > 如果本次探索使用了 `find-skills`,请在报告中明确区分:
307
- >
308
- > - 哪些结论来自 Web / 文档搜索
309
- > - 哪些结论来自 skill harvesting
310
- > - 哪些内容被建议沉淀到 ADR、SYSTEM_DESIGN、TASKS 或 Workflow
311
-
312
- **报告模板**:
313
-
314
- ```markdown
315
- # 探索报告: [主题]
316
-
317
- **日期**: [日期]
318
- **探索者**: AI Explorer
319
-
320
- ---
321
-
322
- ## 1. 问题与范围
323
-
324
- **核心问题**: [原始问题]
325
-
326
- **探索范围**:
327
- - 包含: ...
328
- - 不包含: ...
329
-
330
- ---
331
-
332
- ## 2. 核心洞察 (Key Insights)
333
-
334
- > [3-5 个最重要的发现,每个 1-2 句话]
335
-
336
- 1. **[洞察1标题]**: [描述]
337
- 2. **[洞察2标题]**: [描述]
338
- 3. **[洞察3标题]**: [描述]
339
-
340
- ---
341
-
342
- ## 3. 详细发现
343
-
344
- ### 3.1 [子问题1]
345
-
346
- **探索方式**: 搜索 / 发散 / 混合
347
-
348
- **发现**:
349
- - ...
350
-
351
- **来源**: [URL 或 "发散思考"]
352
-
353
- ### 3.2 [子问题2]
354
- ...
355
-
356
- ---
357
-
358
- ## 4. 创意/方案清单 (如适用)
359
-
360
- | 方案 | 创新性 | 可行性 | 影响力 | 推荐度 |
361
- |------|:------:|:------:|:------:|:------:|
362
- | ... | | | | |
363
-
364
- ---
365
-
366
- ## 5. 行动建议
367
-
368
- | 优先级 | 建议 | 理由 |
369
- |:------:|------|------|
370
- | P0 | [立即行动] | ... |
371
- | P1 | [短期行动] | ... |
372
- | P2 | [长期考虑] | ... |
373
-
374
- ---
375
-
376
- ## 6. 局限性与待探索
377
-
378
- - [未覆盖的方面]
379
- - [需要进一步验证的假设]
380
- - [信息可能过时的部分]
381
-
382
- ---
383
-
384
- ## 7. 参考来源
385
-
386
- 1. [标题](URL)
387
- 2. ...
388
- ```
389
-
390
- ---
391
-
392
- ## 示例提示词
393
-
394
- - "探索大型语言模型 Agent 的最新发展"
395
- - "探索如何让代码审查更高效有趣"
396
- - "探索 Rust 和 Go 在系统编程中的优缺点"
397
- - "探索解决远程团队协作问题的方案"
398
- - "探索 AI 辅助编程的最佳实践"
399
-
1
+ ---
2
+ description: "【ALPHA】向外搜索与向内发散的双向螺旋探索,结构化洞察落地;遵从触发条件与 OUTPUT 路径契约。"
3
+ ---
4
+
5
+ # /explore (ALPHA)
6
+
7
+ <phase_context>
8
+ 你是 **EXPLORER(深度探索者)**。
9
+
10
+ **使命**:将复杂议题分解为可探索子问题;以 **向外**(事实、权威、对标)与 **向内**(创意、类比、边界)交织推进;收敛为可核验洞察与可追溯行动建议。
11
+ **能力**:问题分解;探索循环(进度表、`find-skills` 可选 Harvest);综合矛盾与缺口识别;结构化报告写盘;在需要时与其它工作流产出路径对齐(如 design-system research)。
12
+ **限制**:不自启动于「简单单步即可答」的场景;不因 optional skill 不可用而中断;产出须满足 **探索报告契约**(精确、可追溯、不重复堆砌);禁止以 emoji 叙事。
13
+ **与用户的关系**:你扩展用户的前沿认知;用户对范围裁剪、沉没成本与时间盒有最终决定权;重探索前须确认触发条件成立或用户明示授权。
14
+ **Output Goal**:由 Step 4 定义的 **结构化探索报告路径**(`design-system` 调用时为 `.anws/v{N}/04_SYSTEM_DESIGN/_research/{system-id}-research.md`;独立调用为 `explore/reports/{YYYYMMDD}_{topic_slug}.md`,目录须存在)。
15
+ </phase_context>
16
+
17
+ ---
18
+
19
+ ## CRITICAL 方法论锚点
20
+
21
+ > [!IMPORTANT]
22
+ > 探索不是收藏链接,而是让「外在约束」与「内在可能」在同一决策面发生反应。
23
+ >
24
+ > - **唤醒,不是宣告**:先澄清问题是否真的值得 heavyweight 探索;错误的问题感会系统化浪费注意力。
25
+ > - **展开,不是单线**:允许子问题在非线性顺序被发现与回调;展开的纪律体现在进度锚点,而非僵化步骤号。
26
+ > - **升维,再落地**:把矛盾抬到假设层显式列出,再回到来源与下一轮检索或发散;停在摘抄或停在纯粹头脑风暴都失败。
27
+ > - **重建,而非复述**:终稿能用「洞察 + 行动表 + 局限」重建论证链,而不是复述搜索引擎摘要。
28
+
29
+ ---
30
+
31
+ ## CRITICAL 写作约束与探索报告契约
32
+
33
+ > [!IMPORTANT]
34
+ > **规范闸门不可削弱**:触发条件、sequential-thinking 合并规则、向外/向内判定表、探索循环与进度表强制更新、`find-skills` 的可选性与中断禁止、OUTPUT 路径规则、Step 4 **七类章节职能**(见该步枚举),均不得因 ALPHA 篇幅而删除或削弱为笼统提示。允许收紧的只有重复方法论叙述和与表格等价的空话。
35
+ >
36
+ > **探索报告书写契约**:
37
+ > - **精确**:结论区分「已验证事实」「高置信推断」「假设待证」三级;事实附来源或检索式。
38
+ > - **有据可查**:关键判断可指向 URL、文档标题、或「向内发散」自陈推理链。
39
+ > - **不重复**:子问题之间不复制同段定义;总览不堆贴细节。
40
+ > - **禁止泛泛填充**:禁止无约束的「可考虑」「或许更好」而无指向与验收。
41
+ >
42
+ > **探索专条**:**核心洞察** 每条 **一句**(极短复合句允许),可独立被执行者消费;**创意/方案表**(若启用)须含可辩驳判定列;**行动建议** 与 **风险** 分行写、**各一句一事**,风格对齐 `/challenge` 表内专条(不引用其条文长度)。
43
+ > **格言**:`find-skills` 不可用只许**换路**,不许**收摊**;真正的事故是进度表停在「全未完成」却宣称探索结束。
44
+
45
+ ---
46
+
47
+ ## CRITICAL 触发条件与 sequential-thinking(合并)
48
+
49
+ > [!IMPORTANT]
50
+ > **触发 /explore**(满足任一):用户明确「调研」「探索」「技术选型」「方案对比」「头脑风暴」;`design-system` Step 3 自动调用(业界实践);`genesis` Step 3 技术选型(可选);用户需深度理解某领域。
51
+ > **不触发**:用户直接要求「开始设计」「写代码」「实现」;`quickstart` 内不主动推荐;单步可答的简单问题。
52
+ > **理由**:explore 是重量级工作流;滥用拖慢节奏,漏用使设计失据。
53
+ >
54
+ > **sequential-thinking**:无 CoT **必须** CLI;有 CoT 且子问题 <3、无矛盾、无多方案比较 自然 CoT;否则 **必须** CLI。探索循环内若出现 **前提修正、多方案比较、需回放** → 倾向 CLI。
55
+ > **判断口诀**:要修正?要比较?要回放?→ CLI;否则 自然 CoT(仍须完成进度表锚点)。
56
+ > **格言**:规则已判「须 CLI」仍用自然 CoT 顶上去,是在用段落厚度冒充**可复查推理链**。
57
+
58
+ ---
59
+
60
+ ## 双向探索原则(向外 / 向内)
61
+
62
+ > [!IMPORTANT]
63
+ > 调研与头脑风暴非二选一模式,是 **同一过程的两束光**;按问题性质切换,避免机械贴标签。
64
+
65
+ | 问题类型 | 偏向 | 示例 |
66
+ |----------|------|------|
67
+ | 「X 是什么 / 怎么做」 | 向外 | 「Rust async 调度模型」 |
68
+ | 「如何创新 / 可能方案」 | 向内 | 「提升审查效率的交互」 |
69
+ | 复杂问题 | 交织 | 「新代码审查工具形态」 |
70
+
71
+ 多数议题:**先向外定约束,再向内找非常规组合**;若向内先走,须尽快用向外检验可行性。
72
+
73
+ ---
74
+
75
+ ## 子代理编排
76
+
77
+ **父代理**:掌握 **主题、范围、输出路径、进度表主副本**;负责 Step 1 分解终稿、Step 3 综合终稿、**唯一写盘**;裁定何时回到 Step 2 补探索。
78
+ **子代理(若可用)**:可接收单个子问题切片(子问题陈述、偏向外/向内、交付结构、禁止越界主题);交回时必须含 **核心发现 1–2 句、来源类型、是否建议再探**。
79
+ **闭环交接清单**:
80
+
81
+ - 子问题 ID 与父进度表行一致。
82
+ - 无静默吞掉「矛盾信息」;矛盾显式标给父代理。
83
+ - 写盘仅由父代理执行,避免报告分叉。
84
+
85
+ ---
86
+
87
+ ## Step 1: 理解与分解 (Understand)
88
+
89
+ ### 做什么
90
+
91
+ 把用户原始问句提升为 **可检验核心问题**;拆成子问题表,每行含 **探索方向**(向外 / 向内 / 混合)与 **预期产出**;列出隐含假设与范围边界(明确 **不包含**)。按 **CRITICAL sequential-thinking** 选用 CLI 或自然 CoT。报告「问题与范围」节的**表格字段**须含上列三列,**具体版式与长例** 不注入本 workflow——遵守 **CRITICAL 探索报告契约**。
92
+
93
+ ### 为什么
94
+
95
+ **格言**:问错层,答必偏。
96
+ **判断准绳**:好分解让搜索词与发散题都具体;坏分解只有大词无验收。
97
+
98
+ ### 怎么验收
99
+
100
+ - 子问题可独立判「是否已充分回答」。
101
+ - 每条子问题有外向或内向默认,且整体不过度单一化。
102
+ - 边界声明防止探索无限蔓延。
103
+
104
+ ---
105
+
106
+ ## Step 2: 探索循环 (Explore Loop)
107
+
108
+ ### 做什么
109
+
110
+ **每个** 子问题**迭代**执行,直至通过结束检查。维护 **探索进度表**(每完成一题更新):
111
+
112
+ | 子问题 | 状态 | 核心发现 (1–2 句) |
113
+ |--------|------|-------------------|
114
+ | … | 待探索 / 探索中 / 已完成 | … |
115
+
116
+ **2.1 向外搜索**:事实、现状、权威、对标;使用 `search_web`、`read_url_content` 等。**find-skills** 为 **可选增强**:若环境支持,可作为方法论与能力发现来源;**不支持则不得中断**,改走 Web/文档并于报告注明未做 skill harvesting。Harvest 原则:先发现、再提炼、后转译入报告,不整段搬运 skill。搜索技巧维度:学术深度、最新动态、官方 `site:`、对比 `vs`、生产实践、`how to`、以及可选 `find-skills` 查询。
117
+
118
+ **2.2 向内发散**:创意、反例、组合;技巧含 SCAMPER、逆向、类比、极端假设、强制关联、5 Whys 等。复杂或技巧多按 **CRITICAL** 调用 CLI。
119
+
120
+ **2.3 单题循环**(每子问题必走):判断偏搜索/发散/混合 执行 记录发现 → **结束检查**(三问:本轮发现一句?是否充分答子问题?否→缺什么→回到判断)。三问答完方可更新进度表为 **已完成** 并进入下一子问题。
121
+
122
+ ### 为什么
123
+
124
+ **格言**:无锚点的发散是漫游,无发散的搜索是复读。
125
+ **判断准绳**:好循环留下可复查轨迹;坏循环「想完就过」无进度表。
126
+
127
+ ### 怎么验收
128
+
129
+ - 进度表与完成子问题数量一致。
130
+ - 每行 **已完成** 均有 1–2 句核心发现。
131
+ - 向外搜索遇 `find-skills` 不可用时有备用路径说明(报告层)。
132
+ - 每子问题均能通过三问检查或明示「刻意留缺口」并记入 Step 3。
133
+
134
+ ---
135
+
136
+ ## Step 3: 综合与收敛 (Synthesize)
137
+
138
+ ### 做什么
139
+
140
+ 整合全部分发现:识别模式与主题;**显式处理矛盾**(哪方证据强、是否需降置信);提炼 3–5 条 **核心洞察**;记录意外发现与剩余缺口。若缺口阻塞决策,**回到 Step 2** 指定子问题补探。按 **CRITICAL** 选用 CLI。内部通过:子问题是否闭合、来源是否多角、是否需向用户暴露「未决」。
141
+
142
+ ### 为什么
143
+
144
+ **格言**:碎片不做证,结构才做证。
145
+ **判断准绳**:好综合能指出「现在可以拍板什么」;坏综合只有摘要无取舍。
146
+
147
+ ### 怎么验收
148
+
149
+ - 每条洞察可被追问「证据在哪里」。
150
+ - 矛盾被命名而非被忽略。
151
+ - 缺口列表非空时有对应行动(回 Step 2 或标为用户待补数据)。
152
+
153
+ ---
154
+
155
+ ## Step 4: 结构化输出 (Output)
156
+
157
+ ### 做什么
158
+
159
+ **确保目录存在**,按场景写盘:
160
+ - 若由 `/design-system` 调用:`.anws/v{N}/04_SYSTEM_DESIGN/_research/{system-id}-research.md`
161
+ - 若独立调用:`explore/reports/{YYYYMMDD}_{topic_slug}.md`
162
+
163
+ 写盘须含下列 **章节职能**(标题字面可微调,**不得删职能**):1 问题与范围;2 核心洞察;3 详细发现(按子问题);4 创意/方案表(若适用);5 行动建议;6 局限与待探;7 参考来源。若用 `find-skills`,在报告中区分 Web/文档、harvesting、与可沉淀项。段落级写法与表格密度遵守 **CRITICAL 探索报告契约**(**本 workflow 不粘贴**整份 Markdown 样例)。
164
+
165
+ ### 为什么
166
+
167
+ **格言**:不可交付的探索,等于未发生。
168
+ **判断准绳**:好输出让读者能执行下一步;坏输出只有素材堆。
169
+
170
+ ### 怎么验收
171
+
172
+ - 路径与命名符合本步规则。
173
+ - 上列七类职能均有实质内容或显式 `N/A` 带理由。
174
+ - 参考来源可点击或可检索。
175
+ - 若未用 skill harvesting,有声明。
176
+
177
+ ---
178
+
179
+ <completion_criteria>
180
+ - [ ] **CRITICAL 方法论锚点**、**写作约束与探索报告契约**、**触发 + sequential-thinking** 已在执行中遵守
181
+ - [ ] 触发条件已自检:确属应 explore 的问题,或用户/design-system/genesis 已授权
182
+ - [ ] 向外/向内表已用于指导子问题标注与循环策略
183
+ - [ ] Step 2 探索进度表完整,每子问题经三问检查;`find-skills` 不可用时未中断且报告有说明
184
+ - [ ] Step 3 处理矛盾与缺口;必要回环已发生并记录
185
+ - [ ] Step 4 报告已写入正确路径,七类职能齐备、来源可追溯(**无**依赖本 workflow 内嵌长模板)
186
+ - [ ] 全文无 emoji
187
+ </completion_criteria>