@haaaiawd/anws 2.2.2 → 2.2.3

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 (36) hide show
  1. package/README.md +180 -180
  2. package/lib/manifest.js +212 -212
  3. package/package.json +1 -1
  4. package/templates/.agents/skills/anws-system/SKILL.md +108 -108
  5. package/templates/.agents/skills/code-reviewer/SKILL.md +101 -101
  6. package/templates/.agents/skills/concept-modeler/SKILL.md +179 -178
  7. package/templates/.agents/skills/craft-authoring/SKILL.md +6 -6
  8. package/templates/.agents/skills/design-reviewer/SKILL.md +190 -176
  9. package/templates/.agents/skills/e2e-testing-guide/SKILL.md +204 -59
  10. package/templates/.agents/skills/nexus-mapper/SKILL.md +321 -306
  11. package/templates/.agents/skills/report-template/SKILL.md +92 -85
  12. package/templates/.agents/skills/runtime-inspector/SKILL.md +12 -12
  13. package/templates/.agents/skills/sequential-thinking/SKILL.md +225 -216
  14. package/templates/.agents/skills/spec-writer/SKILL.md +9 -9
  15. package/templates/.agents/skills/spec-writer/references/prd_template.md +6 -6
  16. package/templates/.agents/skills/system-architect/SKILL.md +678 -620
  17. package/templates/.agents/skills/system-designer/SKILL.md +601 -534
  18. package/templates/.agents/skills/system-designer/references/system-design-detail-template.md +5 -5
  19. package/templates/.agents/skills/system-designer/references/system-design-template.md +28 -28
  20. package/templates/.agents/skills/task-planner/SKILL.md +699 -629
  21. package/templates/.agents/skills/task-planner/references/TASK_TEMPLATE.md +15 -15
  22. package/templates/.agents/skills/task-reviewer/SKILL.md +388 -363
  23. package/templates/.agents/skills/tech-evaluator/SKILL.md +144 -135
  24. package/templates/.agents/skills/tech-evaluator/references/ADR_TEMPLATE.md +80 -78
  25. package/templates/.agents/workflows/blueprint.md +391 -391
  26. package/templates/.agents/workflows/challenge.md +52 -52
  27. package/templates/.agents/workflows/change.md +346 -346
  28. package/templates/.agents/workflows/craft.md +11 -11
  29. package/templates/.agents/workflows/design-system.md +631 -631
  30. package/templates/.agents/workflows/explore.md +399 -399
  31. package/templates/.agents/workflows/forge.md +75 -73
  32. package/templates/.agents/workflows/genesis.md +353 -353
  33. package/templates/.agents/workflows/probe.md +243 -243
  34. package/templates/.agents/workflows/quickstart.md +123 -123
  35. package/templates/.agents/workflows/upgrade.md +10 -10
  36. package/templates/AGENTS.md +149 -149
@@ -1,400 +1,400 @@
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
- ---
86
-
87
- ## Step 1: 理解与分解 (Understand)
88
-
89
- **目标**: 真正理解问题,将其分解为可探索的子问题。
90
-
91
- > [!IMPORTANT]
92
- > **思考方式选择**(基于模型能力和任务复杂度):
93
- >
94
- > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
95
- > - **有 CoT 模型 + 简单问题**(子问题 < 3)→ 用思考引导问题组织自然 CoT
96
- > - **有 CoT 模型 + 复杂问题**(需要修正前提、多方案比较)→ 调用 `sequential-thinking` CLI
97
- >
98
- > **为什么需要深度思考?** 问题分解的质量决定了整个探索的方向。错误的分解会导致:
99
- >
100
- > - 搜索了不相关的信息
101
- > - 发散了错误的方向
102
- > - 浪费时间在无效探索上
103
-
104
- **思考引导**:
105
-
106
- 1. "用户真正想知道/解决什么?表面问题 vs 深层需求"
107
- 2. "这个问题可以拆成哪些子问题?"
108
- 3. "哪些子问题需要搜索事实?哪些需要发散创意?"
109
- 4. "有没有隐含的假设需要验证?"
110
- 5. "问题的边界在哪里?什么不在范围内?"
111
-
112
- **输出**: 子问题清单 + 每个子问题的探索方向
113
-
114
- ```markdown
115
- ## 问题分解
116
-
117
- **核心问题**: [用户的原始问题]
118
-
119
- **子问题清单**:
120
- | 子问题 | 探索方向 | 预期产出 |
121
- |--------|:-------:|---------|
122
- | 现状是什么? | 🔍 向外 | 事实信息 |
123
- | 为什么会这样? | 🔍🧠 混合 | 原因分析 |
124
- | 可以怎么解决? | 🧠 向内 | 创意选项 |
125
- | 哪个方案最好? | 🔍🧠 混合 | 评估结论 |
126
- ```
127
-
128
- ---
129
-
130
- ## Step 2: 探索循环 (Explore Loop)
131
-
132
- **目标**: 对每个子问题进行深度探索,自然切换搜索与发散。
133
-
134
- **探索进度表** (每完成一个子问题更新):
135
-
136
-
137
- | 子问题 | 状态 | 核心发现 (1-2句) |
138
- | ------ | ----- | ----------- |
139
- | [子问题1] |探索中 | - |
140
- | [子问题2] |待探索 | - |
141
- | ... | | |
142
-
143
-
144
- > 每完成一个子问题,更新状态为并填写核心发现。这是你的"记忆锚点"。
145
-
146
- ### 2.1 向外搜索 (Outward Search) 🔍
147
-
148
- 用于:收集事实、了解现状、验证假设
149
-
150
- 使用搜索工具搜索相关关键词
151
-
152
- > [!IMPORTANT]
153
- > **可选 Skill 可用性检测**:
154
- >
155
- > - `find-skills` 是**可选增强**,不是默认依赖
156
- > - 如果当前环境支持 `find-skills`,可将其作为方法论与能力发现的额外来源
157
- > - 如果当前环境**不支持** `find-skills`,直接继续使用 `search_web`、`read_url_content` 等标准搜索路径
158
- > - **不得因 `find-skills` 不可用而中断 workflow**
159
-
160
- **搜索技巧**:
161
-
162
-
163
- | 目标 | 技巧 | 示例 |
164
- | --------------- | ------------------------------- | -------------------------------- |
165
- | 学术/深度 | `paper`, `research`, `arxiv` | "LLM agent paper" |
166
- | 最新动态 | `2025`, `latest`, `trends` | "React 19 latest 2025" |
167
- | 官方权威 | `site:` 指定域名 | "site:pytorch.org" |
168
- | 对比分析 | `vs`, `comparison`, `benchmark` | "Rust vs Go benchmark" |
169
- | 实战经验 | `best practices`, `production` | "K8s production best practices" |
170
- | 问题解决 | `how to`, `fix`, `solution` | "Python asyncio memory leak fix" |
171
- | **find-skills** | `find-skills` | "find-skills Rust async" |
172
-
173
-
174
- > [!IMPORTANT]
175
- > `**find-skills` 是可选探索源,不是默认必用步骤。**
176
- >
177
- > 当问题需要吸收成熟方法论、检查框架、设计启发或测试策略时,可以额外调用 `find-skills`。
178
- > 适用场景包括:
179
- >
180
- > - 想了解某类专业能力是否已有现成 skill 可复用
181
- > - 希望借鉴 UI/UX、架构评审、测试、性能优化等领域的成熟框架
182
- > - 需要把外部 skill 中的结构化经验转译进 ADR、SYSTEM_DESIGN、TASKS 或 Workflow
183
-
184
- **Skill Harvesting 原则**:
185
-
186
- 1. **先发现**: 用 `find-skills` 查找相关能力或方法源
187
- 2. **再提炼**: 提取有价值的检查维度、输出结构、启发式原则、验收方式
188
- 3. **后转译**: 将这些内容写入当前探索报告与后续文档,而不是整段搬运 skill 本体
189
- 4. **保持可选**: 如果普通搜索和内部推理已足够,不必强行调用 `find-skills`
190
-
191
- **备用搜索路径**(当 `find-skills` 不可用时):
192
-
193
- 1. 使用 `search_web` 搜索方法论关键词、最佳实践、对标对象和测试策略关键词
194
- 2. 使用 `read_url_content` 读取高质量文档、官方文档或代表性深度文章
195
- 3. 在最终报告中标注:本次结论来自 Web / 文档搜索,**未使用 skill harvesting 增强**
196
-
197
- ### 2.2 向内发散 (Inward Divergence) 🧠
198
-
199
- 用于:产生创意、探索可能性、突破常规
200
-
201
- > [!IMPORTANT]
202
- > **思考方式选择**(基于模型能力和任务复杂度):
203
- >
204
- > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
205
- > - **有 CoT 模型 + 简单发散**(技巧 < 3)→ 用发散技巧组织自然 CoT
206
- > - **有 CoT 模型 + 复杂发散**(需要多方案比较、修正前提)→ 调用 `sequential-thinking` CLI
207
- >
208
- > **为什么需要深度发散?** 第一个想法通常是最普通的。突破需要:
209
- >
210
- > - 强迫自己继续想
211
- > - 尝试不同角度
212
- > - 连接不相关的概念
213
-
214
- **发散技巧**:
215
-
216
- 1. **SCAMPER**: 替代、组合、调整、修改、其他用途、消除、重排
217
- 2. **逆向思维**: "如果完全相反会怎样?"
218
- 3. **类比迁移**: "其他领域怎么解决类似问题?"
219
- 4. **极端假设**: "如果没有任何限制呢?"
220
- 5. **强制关联**: 随机选一个概念,强制与问题关联
221
- 6. **5 Whys**: 连问5次"为什么"挖掘根因
222
-
223
- **思考引导**:
224
-
225
- 1. "最常规的解决方案是什么?"
226
- 2. "如果反过来做呢?"
227
- 3. "其他行业有类似问题吗?"
228
- 4. "最疯狂的想法是什么?(不用可行)"
229
- 5. "能不能组合两个不相关的概念?"
230
- 6. "如果 10x 改进,需要怎么做?"
231
- 7. ...(继续发散,不要停)
232
-
233
- ### 2.3 探索循环
234
-
235
- 对每个子问题:
236
-
237
- ```
238
- ┌─────────────────────────────────┐
239
- │ 子问题: [描述] │
240
- │ │
241
- │ 1. 先判断:需要搜索还是发散? │
242
- │ ↓ │
243
- │ 2. 执行探索(搜索/发散/两者) │
244
- │ ↓ │
245
- │ 3. 记录发现 │
246
- │ ↓ │
247
- │ 4. 本轮结束检查(必须回答): │
248
- │ • 本轮发现了什么?(1-2句) │
249
- │ • 是否充分回答了这个子问题? │
250
- │ • 如果否,还需要探索什么? │
251
- │ ├─ 否 → 回到 1 │
252
- │ └─ 是 → 更新进度表,下一个 │
253
- └─────────────────────────────────┘
254
- ```
255
-
256
- > [!IMPORTANT]
257
- > **每个子问题结束时,你必须**:
258
- >
259
- > 1. 回答上述3个检查问题
260
- > 2. 更新"探索进度表"中的状态和核心发现
261
- >
262
- > 这确保你不会"想完就过",而是留下可追溯的探索轨迹。
263
-
264
- ---
265
-
266
- ## Step 3: 综合与收敛 (Synthesize)
267
-
268
- **目标**: 整合所有发现,验证一致性,收敛到核心洞察。
269
-
270
- > [!IMPORTANT]
271
- > **思考方式选择**(基于模型能力和任务复杂度):
272
- >
273
- > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
274
- > - **有 CoT 模型 + 简单综合**(子问题 < 3,无矛盾)→ 用思考引导问题组织自然 CoT
275
- > - **有 CoT 模型 + 复杂综合**(需要解决矛盾、修正前提)→ 调用 `sequential-thinking` CLI
276
- >
277
- > **为什么需要深度收敛?** 原始发现是碎片化的。你需要:
278
- >
279
- > - 识别模式和主题
280
- > - 解决矛盾信息
281
- > - 提炼核心洞察
282
-
283
- **思考引导**:
284
-
285
- 1. "所有子问题都探索充分了吗?"
286
- 2. "不同来源的信息一致吗?有矛盾吗?"
287
- 3. "能提炼出哪些核心洞察?"
288
- 4. "有哪些意外发现?"
289
- 5. "还有什么缺口需要补充?"
290
-
291
- **如果发现缺口**: 回到 Step 2 补充探索
292
-
293
- ---
294
-
295
- ## Step 4: 结构化输出 (Output)
296
-
297
- **目标**: 产出结构化的探索报告。
298
-
299
- **保存路径**:
300
-
301
- - 如果由 `/design-system` 调用: `.anws/v{N}/04_SYSTEM_DESIGN/_research/{system-id}-research.md`
302
- - 如果独立调用: `explore/reports/{YYYYMMDD}_{topic_slug}.md`
303
- - 确保对应目录存在
304
-
305
- 将内容保存到报告文件。
306
-
307
- > [!NOTE]
308
- > 如果本次探索使用了 `find-skills`,请在报告中明确区分:
309
- >
310
- > - 哪些结论来自 Web / 文档搜索
311
- > - 哪些结论来自 skill harvesting
312
- > - 哪些内容被建议沉淀到 ADR、SYSTEM_DESIGN、TASKS 或 Workflow
313
-
314
- **报告模板**:
315
-
316
- ```markdown
317
- # 探索报告: [主题]
318
-
319
- **日期**: [日期]
320
- **探索者**: AI Explorer
321
-
322
- ---
323
-
324
- ## 1. 问题与范围
325
-
326
- **核心问题**: [原始问题]
327
-
328
- **探索范围**:
329
- - 包含: ...
330
- - 不包含: ...
331
-
332
- ---
333
-
334
- ## 2. 核心洞察 (Key Insights)
335
-
336
- > [3-5 个最重要的发现,每个 1-2 句话]
337
-
338
- 1. **[洞察1标题]**: [描述]
339
- 2. **[洞察2标题]**: [描述]
340
- 3. **[洞察3标题]**: [描述]
341
-
342
- ---
343
-
344
- ## 3. 详细发现
345
-
346
- ### 3.1 [子问题1]
347
-
348
- **探索方式**: 🔍 搜索 / 🧠 发散 / 🔍🧠 混合
349
-
350
- **发现**:
351
- - ...
352
-
353
- **来源**: [URL 或 "发散思考"]
354
-
355
- ### 3.2 [子问题2]
356
- ...
357
-
358
- ---
359
-
360
- ## 4. 创意/方案清单 (如适用)
361
-
362
- | 方案 | 创新性 | 可行性 | 影响力 | 推荐度 |
363
- |------|:------:|:------:|:------:|:------:|
364
- | ... | ★★★ | ★★★ | ★★★ ||
365
-
366
- ---
367
-
368
- ## 5. 行动建议
369
-
370
- | 优先级 | 建议 | 理由 |
371
- |:------:|------|------|
372
- | P0 | [立即行动] | ... |
373
- | P1 | [短期行动] | ... |
374
- | P2 | [长期考虑] | ... |
375
-
376
- ---
377
-
378
- ## 6. 局限性与待探索
379
-
380
- - [未覆盖的方面]
381
- - [需要进一步验证的假设]
382
- - [信息可能过时的部分]
383
-
384
- ---
385
-
386
- ## 7. 参考来源
387
-
388
- 1. [标题](URL)
389
- 2. ...
390
- ```
391
-
392
- ---
393
-
394
- ## 示例提示词
395
-
396
- - "探索大型语言模型 Agent 的最新发展"
397
- - "探索如何让代码审查更高效有趣"
398
- - "探索 Rust 和 Go 在系统编程中的优缺点"
399
- - "探索解决远程团队协作问题的方案"
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
+ ---
86
+
87
+ ## Step 1: 理解与分解 (Understand)
88
+
89
+ **目标**: 真正理解问题,将其分解为可探索的子问题。
90
+
91
+ > [!IMPORTANT]
92
+ > **思考方式选择**(基于模型能力和任务复杂度):
93
+ >
94
+ > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
95
+ > - **有 CoT 模型 + 简单问题**(子问题 < 3)→ 用思考引导问题组织自然 CoT
96
+ > - **有 CoT 模型 + 复杂问题**(需要修正前提、多方案比较)→ 调用 `sequential-thinking` CLI
97
+ >
98
+ > **为什么需要深度思考?** 问题分解的质量决定了整个探索的方向。错误的分解会导致:
99
+ >
100
+ > - 搜索了不相关的信息
101
+ > - 发散了错误的方向
102
+ > - 浪费时间在无效探索上
103
+
104
+ **思考引导**:
105
+
106
+ 1. "用户真正想知道/解决什么?表面问题 vs 深层需求"
107
+ 2. "这个问题可以拆成哪些子问题?"
108
+ 3. "哪些子问题需要搜索事实?哪些需要发散创意?"
109
+ 4. "有没有隐含的假设需要验证?"
110
+ 5. "问题的边界在哪里?什么不在范围内?"
111
+
112
+ **输出**: 子问题清单 + 每个子问题的探索方向
113
+
114
+ ```markdown
115
+ ## 问题分解
116
+
117
+ **核心问题**: [用户的原始问题]
118
+
119
+ **子问题清单**:
120
+ | 子问题 | 探索方向 | 预期产出 |
121
+ |--------|:-------:|---------|
122
+ | 现状是什么? | 向外 | 事实信息 |
123
+ | 为什么会这样? | 混合 | 原因分析 |
124
+ | 可以怎么解决? | 向内 | 创意选项 |
125
+ | 哪个方案最好? | 混合 | 评估结论 |
126
+ ```
127
+
128
+ ---
129
+
130
+ ## Step 2: 探索循环 (Explore Loop)
131
+
132
+ **目标**: 对每个子问题进行深度探索,自然切换搜索与发散。
133
+
134
+ **探索进度表** (每完成一个子问题更新):
135
+
136
+
137
+ | 子问题 | 状态 | 核心发现 (1-2句) |
138
+ | ------ | ----- | ----------- |
139
+ | [子问题1] | 探索中 | - |
140
+ | [子问题2] | 待探索 | - |
141
+ | ... | | |
142
+
143
+
144
+ > 每完成一个子问题,更新状态为 并填写核心发现。这是你的"记忆锚点"。
145
+
146
+ ### 2.1 向外搜索 (Outward Search)
147
+
148
+ 用于:收集事实、了解现状、验证假设
149
+
150
+ 使用搜索工具搜索相关关键词
151
+
152
+ > [!IMPORTANT]
153
+ > **可选 Skill 可用性检测**:
154
+ >
155
+ > - `find-skills` 是**可选增强**,不是默认依赖
156
+ > - 如果当前环境支持 `find-skills`,可将其作为方法论与能力发现的额外来源
157
+ > - 如果当前环境**不支持** `find-skills`,直接继续使用 `search_web`、`read_url_content` 等标准搜索路径
158
+ > - **不得因 `find-skills` 不可用而中断 workflow**
159
+
160
+ **搜索技巧**:
161
+
162
+
163
+ | 目标 | 技巧 | 示例 |
164
+ | --------------- | ------------------------------- | -------------------------------- |
165
+ | 学术/深度 | `paper`, `research`, `arxiv` | "LLM agent paper" |
166
+ | 最新动态 | `2025`, `latest`, `trends` | "React 19 latest 2025" |
167
+ | 官方权威 | `site:` 指定域名 | "site:pytorch.org" |
168
+ | 对比分析 | `vs`, `comparison`, `benchmark` | "Rust vs Go benchmark" |
169
+ | 实战经验 | `best practices`, `production` | "K8s production best practices" |
170
+ | 问题解决 | `how to`, `fix`, `solution` | "Python asyncio memory leak fix" |
171
+ | **find-skills** | `find-skills` | "find-skills Rust async" |
172
+
173
+
174
+ > [!IMPORTANT]
175
+ > `**find-skills` 是可选探索源,不是默认必用步骤。**
176
+ >
177
+ > 当问题需要吸收成熟方法论、检查框架、设计启发或测试策略时,可以额外调用 `find-skills`。
178
+ > 适用场景包括:
179
+ >
180
+ > - 想了解某类专业能力是否已有现成 skill 可复用
181
+ > - 希望借鉴 UI/UX、架构评审、测试、性能优化等领域的成熟框架
182
+ > - 需要把外部 skill 中的结构化经验转译进 ADR、SYSTEM_DESIGN、TASKS 或 Workflow
183
+
184
+ **Skill Harvesting 原则**:
185
+
186
+ 1. **先发现**: 用 `find-skills` 查找相关能力或方法源
187
+ 2. **再提炼**: 提取有价值的检查维度、输出结构、启发式原则、验收方式
188
+ 3. **后转译**: 将这些内容写入当前探索报告与后续文档,而不是整段搬运 skill 本体
189
+ 4. **保持可选**: 如果普通搜索和内部推理已足够,不必强行调用 `find-skills`
190
+
191
+ **备用搜索路径**(当 `find-skills` 不可用时):
192
+
193
+ 1. 使用 `search_web` 搜索方法论关键词、最佳实践、对标对象和测试策略关键词
194
+ 2. 使用 `read_url_content` 读取高质量文档、官方文档或代表性深度文章
195
+ 3. 在最终报告中标注:本次结论来自 Web / 文档搜索,**未使用 skill harvesting 增强**
196
+
197
+ ### 2.2 向内发散 (Inward Divergence)
198
+
199
+ 用于:产生创意、探索可能性、突破常规
200
+
201
+ > [!IMPORTANT]
202
+ > **思考方式选择**(基于模型能力和任务复杂度):
203
+ >
204
+ > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
205
+ > - **有 CoT 模型 + 简单发散**(技巧 < 3)→ 用发散技巧组织自然 CoT
206
+ > - **有 CoT 模型 + 复杂发散**(需要多方案比较、修正前提)→ 调用 `sequential-thinking` CLI
207
+ >
208
+ > **为什么需要深度发散?** 第一个想法通常是最普通的。突破需要:
209
+ >
210
+ > - 强迫自己继续想
211
+ > - 尝试不同角度
212
+ > - 连接不相关的概念
213
+
214
+ **发散技巧**:
215
+
216
+ 1. **SCAMPER**: 替代、组合、调整、修改、其他用途、消除、重排
217
+ 2. **逆向思维**: "如果完全相反会怎样?"
218
+ 3. **类比迁移**: "其他领域怎么解决类似问题?"
219
+ 4. **极端假设**: "如果没有任何限制呢?"
220
+ 5. **强制关联**: 随机选一个概念,强制与问题关联
221
+ 6. **5 Whys**: 连问5次"为什么"挖掘根因
222
+
223
+ **思考引导**:
224
+
225
+ 1. "最常规的解决方案是什么?"
226
+ 2. "如果反过来做呢?"
227
+ 3. "其他行业有类似问题吗?"
228
+ 4. "最疯狂的想法是什么?(不用可行)"
229
+ 5. "能不能组合两个不相关的概念?"
230
+ 6. "如果 10x 改进,需要怎么做?"
231
+ 7. ...(继续发散,不要停)
232
+
233
+ ### 2.3 探索循环
234
+
235
+ 对每个子问题:
236
+
237
+ ```
238
+ ┌─────────────────────────────────┐
239
+ │ 子问题: [描述] │
240
+ │ │
241
+ │ 1. 先判断:需要搜索还是发散? │
242
+ │ ↓ │
243
+ │ 2. 执行探索(搜索/发散/两者) │
244
+ │ ↓ │
245
+ │ 3. 记录发现 │
246
+ │ ↓ │
247
+ │ 4. 本轮结束检查(必须回答): │
248
+ │ • 本轮发现了什么?(1-2句) │
249
+ │ • 是否充分回答了这个子问题? │
250
+ │ • 如果否,还需要探索什么? │
251
+ │ ├─ 否 → 回到 1 │
252
+ │ └─ 是 → 更新进度表,下一个 │
253
+ └─────────────────────────────────┘
254
+ ```
255
+
256
+ > [!IMPORTANT]
257
+ > **每个子问题结束时,你必须**:
258
+ >
259
+ > 1. 回答上述3个检查问题
260
+ > 2. 更新"探索进度表"中的状态和核心发现
261
+ >
262
+ > 这确保你不会"想完就过",而是留下可追溯的探索轨迹。
263
+
264
+ ---
265
+
266
+ ## Step 3: 综合与收敛 (Synthesize)
267
+
268
+ **目标**: 整合所有发现,验证一致性,收敛到核心洞察。
269
+
270
+ > [!IMPORTANT]
271
+ > **思考方式选择**(基于模型能力和任务复杂度):
272
+ >
273
+ > - **无 CoT 模型** → **必须调用** `sequential-thinking` CLI
274
+ > - **有 CoT 模型 + 简单综合**(子问题 < 3,无矛盾)→ 用思考引导问题组织自然 CoT
275
+ > - **有 CoT 模型 + 复杂综合**(需要解决矛盾、修正前提)→ 调用 `sequential-thinking` CLI
276
+ >
277
+ > **为什么需要深度收敛?** 原始发现是碎片化的。你需要:
278
+ >
279
+ > - 识别模式和主题
280
+ > - 解决矛盾信息
281
+ > - 提炼核心洞察
282
+
283
+ **思考引导**:
284
+
285
+ 1. "所有子问题都探索充分了吗?"
286
+ 2. "不同来源的信息一致吗?有矛盾吗?"
287
+ 3. "能提炼出哪些核心洞察?"
288
+ 4. "有哪些意外发现?"
289
+ 5. "还有什么缺口需要补充?"
290
+
291
+ **如果发现缺口**: 回到 Step 2 补充探索
292
+
293
+ ---
294
+
295
+ ## Step 4: 结构化输出 (Output)
296
+
297
+ **目标**: 产出结构化的探索报告。
298
+
299
+ **保存路径**:
300
+
301
+ - 如果由 `/design-system` 调用: `.anws/v{N}/04_SYSTEM_DESIGN/_research/{system-id}-research.md`
302
+ - 如果独立调用: `explore/reports/{YYYYMMDD}_{topic_slug}.md`
303
+ - 确保对应目录存在
304
+
305
+ 将内容保存到报告文件。
306
+
307
+ > [!NOTE]
308
+ > 如果本次探索使用了 `find-skills`,请在报告中明确区分:
309
+ >
310
+ > - 哪些结论来自 Web / 文档搜索
311
+ > - 哪些结论来自 skill harvesting
312
+ > - 哪些内容被建议沉淀到 ADR、SYSTEM_DESIGN、TASKS 或 Workflow
313
+
314
+ **报告模板**:
315
+
316
+ ```markdown
317
+ # 探索报告: [主题]
318
+
319
+ **日期**: [日期]
320
+ **探索者**: AI Explorer
321
+
322
+ ---
323
+
324
+ ## 1. 问题与范围
325
+
326
+ **核心问题**: [原始问题]
327
+
328
+ **探索范围**:
329
+ - 包含: ...
330
+ - 不包含: ...
331
+
332
+ ---
333
+
334
+ ## 2. 核心洞察 (Key Insights)
335
+
336
+ > [3-5 个最重要的发现,每个 1-2 句话]
337
+
338
+ 1. **[洞察1标题]**: [描述]
339
+ 2. **[洞察2标题]**: [描述]
340
+ 3. **[洞察3标题]**: [描述]
341
+
342
+ ---
343
+
344
+ ## 3. 详细发现
345
+
346
+ ### 3.1 [子问题1]
347
+
348
+ **探索方式**: 搜索 / 发散 / 混合
349
+
350
+ **发现**:
351
+ - ...
352
+
353
+ **来源**: [URL 或 "发散思考"]
354
+
355
+ ### 3.2 [子问题2]
356
+ ...
357
+
358
+ ---
359
+
360
+ ## 4. 创意/方案清单 (如适用)
361
+
362
+ | 方案 | 创新性 | 可行性 | 影响力 | 推荐度 |
363
+ |------|:------:|:------:|:------:|:------:|
364
+ | ... | | | | |
365
+
366
+ ---
367
+
368
+ ## 5. 行动建议
369
+
370
+ | 优先级 | 建议 | 理由 |
371
+ |:------:|------|------|
372
+ | P0 | [立即行动] | ... |
373
+ | P1 | [短期行动] | ... |
374
+ | P2 | [长期考虑] | ... |
375
+
376
+ ---
377
+
378
+ ## 6. 局限性与待探索
379
+
380
+ - [未覆盖的方面]
381
+ - [需要进一步验证的假设]
382
+ - [信息可能过时的部分]
383
+
384
+ ---
385
+
386
+ ## 7. 参考来源
387
+
388
+ 1. [标题](URL)
389
+ 2. ...
390
+ ```
391
+
392
+ ---
393
+
394
+ ## 示例提示词
395
+
396
+ - "探索大型语言模型 Agent 的最新发展"
397
+ - "探索如何让代码审查更高效有趣"
398
+ - "探索 Rust 和 Go 在系统编程中的优缺点"
399
+ - "探索解决远程团队协作问题的方案"
400
400
  - "探索 AI 辅助编程的最佳实践"