@haaaiawd/anws 1.2.5 → 2.0.1
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.
- package/README.md +230 -174
- package/bin/cli.js +22 -9
- package/lib/adapters/index.js +157 -0
- package/lib/agents.js +136 -1
- package/lib/changelog.js +187 -0
- package/lib/copy.js +72 -1
- package/lib/diff.js +270 -0
- package/lib/init.js +150 -125
- package/lib/install-state.js +195 -0
- package/lib/manifest.js +184 -42
- package/lib/output.js +185 -13
- package/lib/prompt.js +284 -0
- package/lib/resources/index.js +27 -0
- package/lib/update.js +291 -83
- package/package.json +10 -6
- package/templates/.agents/skills/concept-modeler/SKILL.md +176 -0
- package/templates/{.agent → .agents}/skills/design-reviewer/SKILL.md +6 -6
- package/templates/.agents/skills/nexus-mapper/SKILL.md +306 -0
- package/templates/.agents/skills/nexus-mapper/references/language-customization.md +164 -0
- package/templates/.agents/skills/nexus-mapper/references/output-schema.md +298 -0
- package/templates/.agents/skills/nexus-mapper/references/probe-protocol.md +246 -0
- package/templates/.agents/skills/nexus-mapper/scripts/extract_ast.py +706 -0
- package/templates/.agents/skills/nexus-mapper/scripts/git_detective.py +194 -0
- package/templates/.agents/skills/nexus-mapper/scripts/languages.json +127 -0
- package/templates/.agents/skills/nexus-mapper/scripts/query_graph.py +556 -0
- package/templates/.agents/skills/nexus-mapper/scripts/requirements.txt +6 -0
- package/templates/{.agent → .agents}/skills/report-template/SKILL.md +11 -14
- package/templates/.agents/skills/report-template/references/REPORT_TEMPLATE.md +100 -0
- package/templates/{.agent → .agents}/skills/runtime-inspector/SKILL.md +1 -1
- package/templates/.agents/skills/sequential-thinking/SKILL.md +179 -0
- package/templates/.agents/skills/spec-writer/SKILL.md +108 -0
- package/templates/{.agent → .agents}/skills/spec-writer/references/prd_template.md +1 -1
- package/templates/{.agent → .agents}/skills/system-architect/SKILL.md +3 -3
- package/templates/.agents/skills/system-architect/references/rfc_template.md +59 -0
- package/templates/{.agent → .agents}/skills/system-designer/SKILL.md +6 -6
- package/templates/{.agent → .agents}/skills/system-designer/references/system-design-template.md +75 -25
- package/templates/{.agent → .agents}/skills/task-planner/SKILL.md +1 -1
- package/templates/.agents/skills/task-planner/references/TASK_TEMPLATE.md +144 -0
- package/templates/{.agent → .agents}/skills/task-reviewer/SKILL.md +4 -3
- package/templates/{.agent → .agents}/skills/tech-evaluator/SKILL.md +2 -2
- package/templates/{.agent → .agents}/skills/tech-evaluator/references/ADR_TEMPLATE.md +10 -0
- package/templates/{.agent → .agents}/workflows/blueprint.md +32 -27
- package/templates/{.agent → .agents}/workflows/challenge.md +21 -15
- package/templates/{.agent → .agents}/workflows/change.md +23 -14
- package/templates/{.agent → .agents}/workflows/craft.md +8 -19
- package/templates/{.agent → .agents}/workflows/design-system.md +81 -54
- package/templates/{.agent → .agents}/workflows/explore.md +6 -19
- package/templates/{.agent → .agents}/workflows/forge.md +30 -32
- package/templates/{.agent → .agents}/workflows/genesis.md +68 -56
- package/templates/.agents/workflows/probe.md +168 -0
- package/templates/{.agent → .agents}/workflows/quickstart.md +7 -12
- package/templates/.agents/workflows/upgrade.md +192 -0
- package/templates/AGENTS.md +66 -45
- package/templates/.agent/skills/build-inspector/SKILL.md +0 -83
- package/templates/.agent/skills/complexity-guard/SKILL.md +0 -71
- package/templates/.agent/skills/complexity-guard/references/anti_patterns.md +0 -21
- package/templates/.agent/skills/concept-modeler/SKILL.md +0 -112
- package/templates/.agent/skills/concept-modeler/prompts/GLOSSARY_PROMPT.md +0 -40
- package/templates/.agent/skills/concept-modeler/references/ENTITY_EXTRACTION_PROMPT.md +0 -299
- package/templates/.agent/skills/concept-modeler/scripts/glossary_gen.py +0 -66
- package/templates/.agent/skills/git-forensics/SKILL.md +0 -74
- package/templates/.agent/skills/git-forensics/references/ANALYSIS_METHODOLOGY.md +0 -193
- package/templates/.agent/skills/git-forensics/scripts/__pycache__/git_forensics.cpython-313.pyc +0 -0
- package/templates/.agent/skills/git-forensics/scripts/git_forensics.py +0 -615
- package/templates/.agent/skills/git-forensics/scripts/git_hotspots.py +0 -118
- package/templates/.agent/skills/report-template/references/REPORT_TEMPLATE.md +0 -100
- package/templates/.agent/skills/spec-writer/SKILL.md +0 -108
- package/templates/.agent/skills/system-architect/references/rfc_template.md +0 -59
- package/templates/.agent/skills/task-planner/references/TASK_TEMPLATE.md +0 -144
- package/templates/.agent/workflows/scout.md +0 -139
- /package/templates/{.agent → .agents}/skills/system-designer/references/system-design-detail-template.md +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: 从 0
|
|
2
|
+
description: "从 0 到代码的项目启动全流程。适用于新项目立项、重大功能重构或架构升级。产出 PRD、Architecture Overview、ADR、concept_model.json 等核心文档,建立版本化架构基础。"
|
|
3
3
|
---
|
|
4
4
|
|
|
5
5
|
# /genesis
|
|
@@ -11,18 +11,17 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
11
11
|
将用户模糊的想法转化为**清晰的文档基础**,完成从0到文档的全流程设计。
|
|
12
12
|
|
|
13
13
|
**核心原则**:
|
|
14
|
-
- **版本化架构** - 架构文档必须版本化 (
|
|
14
|
+
- **版本化架构** - 架构文档必须版本化 (`.anws/v1`, `.anws/v2`...)
|
|
15
15
|
- **文档先行** - 代码是文档的实现,而非相反
|
|
16
16
|
- **产品优先** - 先PRD后技术,先需求后方案
|
|
17
17
|
- **系统拆解** - 识别独立系统,关注点分离
|
|
18
18
|
|
|
19
19
|
**Output Goal (Versioned)**:
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
- `genesis/v{N}/06_CHANGELOG.md` ← 变更日志
|
|
20
|
+
- `.anws/v{N}/00_MANIFEST.md` ← 版本元数据
|
|
21
|
+
- `.anws/v{N}/01_PRD.md`
|
|
22
|
+
- `.anws/v{N}/02_ARCHITECTURE_OVERVIEW.md`
|
|
23
|
+
- `.anws/v{N}/03_ADR/*`
|
|
24
|
+
- `.anws/v{N}/06_CHANGELOG.md` ← 变更日志
|
|
26
25
|
</phase_context>
|
|
27
26
|
|
|
28
27
|
---
|
|
@@ -46,23 +45,23 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
46
45
|
> 我们从不直接修改旧的架构文档。我们永远是 **Copy & Evolve**。
|
|
47
46
|
|
|
48
47
|
1. **检查现有版本**:
|
|
49
|
-
扫描
|
|
48
|
+
扫描 `.anws/` 目录,找到所有 `v{N}` 版本文件夹。
|
|
50
49
|
|
|
51
50
|
2. **确定目标版本**:
|
|
52
|
-
- 如果
|
|
51
|
+
- 如果 `.anws/` 为空 -> 目标是 `v1`。
|
|
53
52
|
- 如果存在 `v1`, `v2` -> 目标是 `v3`。
|
|
54
53
|
|
|
55
54
|
3. **准备工作空间**:
|
|
56
55
|
- **Case A (新项目)**:
|
|
57
|
-
创建目录结构:
|
|
56
|
+
创建目录结构: `.anws/v1/03_ADR` 和 `.anws/v1/04_SYSTEM_DESIGN`
|
|
58
57
|
|
|
59
58
|
- **Case B (迭代更新)**:
|
|
60
|
-
创建目录
|
|
59
|
+
创建目录 `.anws/v{N+1}` (例如 v3),复制 `.anws/v{N}/*` 到新目录,清理旧任务文件 (如 `.anws/v{N}/05_TASKS.md`)
|
|
61
60
|
|
|
62
61
|
4. **初始化版本文件**:
|
|
63
|
-
创建
|
|
62
|
+
创建 `.anws/v{N}/00_MANIFEST.md`:
|
|
64
63
|
```markdown
|
|
65
|
-
#
|
|
64
|
+
# .anws v{N} - 版本清单
|
|
66
65
|
|
|
67
66
|
**创建日期**: {YYYY-MM-DD}
|
|
68
67
|
**状态**: Active
|
|
@@ -86,9 +85,9 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
86
85
|
```
|
|
87
86
|
|
|
88
87
|
5. **初始化变更日志**:
|
|
89
|
-
创建
|
|
88
|
+
创建 `.anws/v{N}/06_CHANGELOG.md`:
|
|
90
89
|
```markdown
|
|
91
|
-
# 变更日志 -
|
|
90
|
+
# 变更日志 - .anws v{N}
|
|
92
91
|
|
|
93
92
|
> 此文件记录本版本迭代过程中的微调变更(由 /change 处理)。新增功能/任务需创建新版本(由 /genesis 处理)。
|
|
94
93
|
|
|
@@ -100,12 +99,12 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
100
99
|
---
|
|
101
100
|
|
|
102
101
|
## {YYYY-MM-DD} - 初始化
|
|
103
|
-
- [ADD] 创建
|
|
102
|
+
- [ADD] 创建 `.anws` v{N} 版本
|
|
104
103
|
```
|
|
105
104
|
|
|
106
105
|
6. **设定上下文变量**:
|
|
107
|
-
- 在接下来的所有步骤中,输出路径指向
|
|
108
|
-
- *Self-Correction*: "我现在的 Target Dir 是
|
|
106
|
+
- 在接下来的所有步骤中,输出路径指向 **`.anws/v{N}/...`**
|
|
107
|
+
- *Self-Correction*: "我现在的 Target Dir 是 `.anws/v{N}`"
|
|
109
108
|
|
|
110
109
|
---
|
|
111
110
|
|
|
@@ -127,7 +126,7 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
127
126
|
* 名词捕捉 (Entities)
|
|
128
127
|
* 动词分析 (Flows)
|
|
129
128
|
* 暗物质探测 (Missing)
|
|
130
|
-
3. **输出**: 保存到
|
|
129
|
+
3. **输出**: 保存到 `.anws/v{N}/concept_model.json`
|
|
131
130
|
|
|
132
131
|
---
|
|
133
132
|
|
|
@@ -137,10 +136,10 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
137
136
|
|
|
138
137
|
1. **调用技能**: `spec-writer`
|
|
139
138
|
2. **执行撰写**:
|
|
140
|
-
*
|
|
139
|
+
* 基于用户需求
|
|
141
140
|
* 分配 ID `[REQ-XXX]`
|
|
142
141
|
* Given-When-Then 验收标准
|
|
143
|
-
3. **输出**: 保存到
|
|
142
|
+
3. **输出**: 保存到 `.anws/v{N}/01_PRD.md`
|
|
144
143
|
|
|
145
144
|
**人类检查点 #1** ⚠️:
|
|
146
145
|
- 确认 PRD Goals & User Stories。
|
|
@@ -149,13 +148,26 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
149
148
|
|
|
150
149
|
## Step 3: 技术选型 (Tech Stack Selection)
|
|
151
150
|
|
|
152
|
-
|
|
151
|
+
> [!TIP]
|
|
152
|
+
> **Skill 交互说明**:
|
|
153
|
+
> 以下步骤中,Skill 可能需要向用户追问信息:
|
|
154
|
+
> - Step 2 (`spec-writer`): **会追问模糊需求**,这是预期行为,不要跳过
|
|
155
|
+
> - Step 3 (`tech-evaluator`): 可能需要用户提供团队/预算信息
|
|
156
|
+
>
|
|
157
|
+
> 每个 Skill 的追问都是必要的交互,应当执行而非绕过。
|
|
158
|
+
|
|
159
|
+
**目标**: 评估技术栈候选方案,为 Step 5 的 ADR 决策提供依据。
|
|
160
|
+
|
|
161
|
+
> [!IMPORTANT]
|
|
162
|
+
> 你**必须**只输出评估结果,**不要提前写入 ADR 文件**。
|
|
163
|
+
>
|
|
164
|
+
> **为什么**: ADR 是正式决策记录,需要在 Step 5 经过完整审视后才能写入。Step 3 只负责技术评估,不做最终决策。
|
|
153
165
|
|
|
154
166
|
1. **调用技能**: `tech-evaluator`
|
|
155
167
|
2. **执行评估**:
|
|
156
168
|
* 基于 PRD 约束
|
|
157
169
|
* 12 维度评估
|
|
158
|
-
3. **输出**:
|
|
170
|
+
3. **输出**: 候选方案对比表 (Markdown 格式,暂存在内存中,不写入文件)
|
|
159
171
|
|
|
160
172
|
---
|
|
161
173
|
|
|
@@ -171,32 +183,36 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
171
183
|
4. **定义物理代码结构** (CRITICAL):
|
|
172
184
|
* 为每个系统指定**源码根目录** (例如: `src/packages/frontend`)
|
|
173
185
|
* 确定**项目结构树** (ASCII Tree 格式)
|
|
174
|
-
5. **输出**: 保存到
|
|
186
|
+
5. **输出**: 保存到 `.anws/v{N}/02_ARCHITECTURE_OVERVIEW.md`
|
|
175
187
|
|
|
176
188
|
**人类检查点 #2** ⚠️:
|
|
177
189
|
- 确认系统拆分合理性。
|
|
178
190
|
|
|
179
191
|
---
|
|
180
192
|
|
|
181
|
-
## Step 5: 架构决策 (Architecture Decisions)
|
|
193
|
+
## Step 5: 架构决策 (Architecture Decisions)
|
|
182
194
|
|
|
183
|
-
**目标**:
|
|
195
|
+
**目标**: 基于 Step 3 的技术评估,正式记录架构决策 (ADR)。
|
|
184
196
|
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
## Step 6: 复杂度审计 (Complexity Audit) - Optional
|
|
197
|
+
> [!IMPORTANT]
|
|
198
|
+
> 你**必须**基于 Step 3 的候选方案对比表,正式写入 ADR 文件。
|
|
199
|
+
>
|
|
200
|
+
> **为什么**: ADR 是跨系统决策的唯一记录源,后续 SYSTEM_DESIGN 会引用它。
|
|
191
201
|
|
|
192
|
-
|
|
202
|
+
1. **基于 Step 3 评估**: 将 Step 3 的候选方案对比表转化为正式 ADR
|
|
203
|
+
2. **使用 ADR 模板**: 参考 `tech-evaluator` skill 的 ADR_TEMPLATE.md
|
|
204
|
+
3. **输出**: 保存到 `.anws/v{N}/03_ADR/ADR_001_TECH_STACK.md`
|
|
205
|
+
4. **识别其他决策**: 认证方式、通讯协议等跨系统决策
|
|
206
|
+
5. **输出其他 ADR**: 保存到 `.anws/v{N}/03_ADR/ADR_00X_*.md`
|
|
193
207
|
|
|
194
|
-
|
|
195
|
-
|
|
208
|
+
**检查清单**:
|
|
209
|
+
- [ ] ADR 包含"影响范围"章节
|
|
210
|
+
- [ ] ADR 状态为 `Accepted`
|
|
211
|
+
- [ ] 决策理由清晰,有候选方案对比
|
|
196
212
|
|
|
197
213
|
---
|
|
198
214
|
|
|
199
|
-
## Step
|
|
215
|
+
## Step 6: 完成总结 (Completion Summary)
|
|
200
216
|
|
|
201
217
|
**目标**: 总结产出,并**更新 AGENTS.md** 以反映新版本。
|
|
202
218
|
|
|
@@ -212,7 +228,7 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
212
228
|
|
|
213
229
|
**更新 "📍 当前状态"**:
|
|
214
230
|
```markdown
|
|
215
|
-
- **最新架构版本**:
|
|
231
|
+
- **最新架构版本**: `.anws/v{N}`
|
|
216
232
|
- **活动任务清单**: `尚未生成` (等待 /blueprint)
|
|
217
233
|
- **最近一次更新**: `{YYYY-MM-DD}`
|
|
218
234
|
```
|
|
@@ -225,7 +241,7 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
225
241
|
|
|
226
242
|
```text
|
|
227
243
|
{项目根目录}/
|
|
228
|
-
├──
|
|
244
|
+
├── .anws/v{N}/ # 架构文档
|
|
229
245
|
├── src/
|
|
230
246
|
│ ├── {system-1}/ # 系统1 源码
|
|
231
247
|
│ └── {system-2}/ # 系统2 源码
|
|
@@ -236,16 +252,21 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
236
252
|
```markdown
|
|
237
253
|
## 🧭 导航指南 (Navigation Guide)
|
|
238
254
|
|
|
239
|
-
- **架构总览**:
|
|
240
|
-
- **ADR**: 架构决策见
|
|
241
|
-
- **详细设计**: 待 `/design-system` 执行后更新 (将填充
|
|
242
|
-
- **任务清单**: 待 `/blueprint` 执行后更新 (将生成
|
|
255
|
+
- **架构总览**: `.anws/v{N}/02_ARCHITECTURE_OVERVIEW.md`
|
|
256
|
+
- **ADR**: 架构决策见 `.anws/v{N}/03_ADR/` (跨系统决策的唯一记录源)
|
|
257
|
+
- **详细设计**: 待 `/design-system` 执行后更新 (将填充 `.anws/v{N}/04_SYSTEM_DESIGN/`)
|
|
258
|
+
- **任务清单**: 待 `/blueprint` 执行后更新 (将生成 `.anws/v{N}/05_TASKS.md`)
|
|
259
|
+
|
|
260
|
+
### ADR ↔ SYSTEM_DESIGN 关系
|
|
261
|
+
- **ADR** 记录跨系统决策 (如技术栈、认证方式)
|
|
262
|
+
- **SYSTEM_DESIGN** §8 Trade-offs 引用 ADR,不复制决策内容
|
|
263
|
+
- 修改 ADR 时,检查"影响范围"章节,确认引用该 ADR 的系统
|
|
243
264
|
```
|
|
244
265
|
|
|
245
266
|
> [!NOTE]
|
|
246
267
|
> 如果项目有已知系统,可使用以下格式替代上方"详细设计"行:
|
|
247
268
|
> ```markdown
|
|
248
|
-
> - **{System-1}**: 源码 `src/{path1}` → 设计
|
|
269
|
+
> - **{System-1}**: 源码 `src/{path1}` → 设计 `.anws/v{N}/04_SYSTEM_DESIGN/{system-1}.md`
|
|
249
270
|
> ```
|
|
250
271
|
|
|
251
272
|
### 7.2 更新 00_MANIFEST.md
|
|
@@ -273,27 +294,18 @@ description: 从 0 到代码的项目启动全流程,将模糊想法转化为
|
|
|
273
294
|
- ADR-002: {标题} — {结论摘要}
|
|
274
295
|
```
|
|
275
296
|
|
|
276
|
-
> 新版本
|
|
297
|
+
> 新版本 `.anws` (v{N+1}) 覆盖旧版本的自动区块内容。
|
|
277
298
|
|
|
278
299
|
### 7.4 展示产出
|
|
279
300
|
|
|
280
301
|
告知用户阶段完成,列出产出文档,并指引下一步行动(design-system 或 blueprint)。
|
|
281
302
|
|
|
282
303
|
<completion_criteria>
|
|
283
|
-
- ✅ 创建了
|
|
284
|
-
- ✅ 创建了
|
|
304
|
+
- ✅ 创建了 `.anws/v{N}/00_MANIFEST.md`
|
|
305
|
+
- ✅ 创建了 `.anws/v{N}/06_CHANGELOG.md`
|
|
285
306
|
- ✅ 生成了 PRD, Architecture Overview, ADRs
|
|
286
307
|
- ✅ 更新了 AGENTS.md (当前状态、项目结构、导航指南)
|
|
287
308
|
- ✅ 更新了 AGENTS.md AUTO:BEGIN 区块 (技术栈、系统边界、活跃 ADR)
|
|
288
309
|
- ✅ 用户已在人类检查点确认
|
|
289
310
|
</completion_criteria>
|
|
290
311
|
|
|
291
|
-
---
|
|
292
|
-
|
|
293
|
-
## 🔀 Handoffs
|
|
294
|
-
|
|
295
|
-
完成本工作流后,根据情况选择:
|
|
296
|
-
|
|
297
|
-
- **设计系统详细架构** → `/design-system` — 为 {system-id} 设计详细架构 *(项目包含复杂系统时)*
|
|
298
|
-
- **生成任务清单** → `/blueprint` — 将架构拆解为可执行任务
|
|
299
|
-
- **质疑设计决策** → `/challenge` — 对当前设计进行系统性挑战
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "探测系统风险、隐藏耦合和架构暗坑。适用于接手遗留项目、重大变更前的风险评估。产出 00_PROBE_REPORT.md(含系统指纹、构建/运行时拓扑、Git 热点、风险矩阵)。"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /probe
|
|
6
|
+
|
|
7
|
+
<phase_context>
|
|
8
|
+
你是 **Probe - 系统探测专家**。
|
|
9
|
+
|
|
10
|
+
**核心使命**:
|
|
11
|
+
在架构更新 (`.anws/v{N}`) 之前或之后,探测系统风险、暗坑和耦合。
|
|
12
|
+
探测结果将作为**输入**反馈给 Architectural Overview。
|
|
13
|
+
|
|
14
|
+
**核心能力**:
|
|
15
|
+
- 调用 `nexus-mapper` 执行完整 PROBE 五阶段协议
|
|
16
|
+
- 调用 `runtime-inspector` 补充进程边界分析
|
|
17
|
+
- 产出风险矩阵和 Gap Analysis
|
|
18
|
+
|
|
19
|
+
**你的限制**:
|
|
20
|
+
- 不修改架构,只**观测**和**报告**
|
|
21
|
+
- 不重复 skill 内部逻辑,只负责编排调用
|
|
22
|
+
|
|
23
|
+
**与用户的关系**:
|
|
24
|
+
你是用户的**侦察兵**,为重大决策提供情报支撑。
|
|
25
|
+
|
|
26
|
+
**Output Goal**: `.anws/v{N}/00_PROBE_REPORT.md`
|
|
27
|
+
</phase_context>
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## ⚠️ CRITICAL 流程约束
|
|
32
|
+
|
|
33
|
+
> [!IMPORTANT]
|
|
34
|
+
> Probe 不修改架构,只**观测**和**报告**。
|
|
35
|
+
> 你的报告应该被 Genesis 过程参考。
|
|
36
|
+
>
|
|
37
|
+
> **为什么?** 探测的目的是发现问题,而非解决问题。混在一起会导致视角偏差。
|
|
38
|
+
|
|
39
|
+
> [!NOTE]
|
|
40
|
+
> **Probe 双模式说明**:
|
|
41
|
+
> - **模式 A (Genesis 前)**: 侦察遗留代码,产出作为 genesis 的输入
|
|
42
|
+
> - **模式 B (Genesis 后)**: 验证设计与代码的一致性 (Gap Analysis)
|
|
43
|
+
>
|
|
44
|
+
> 判断方式: 如果 `.anws/v{N}/` 存在 → 模式 B,执行对比分析
|
|
45
|
+
> 如果不存在 → 模式 A,仅提取代码现状
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Step 1: 执行 nexus-mapper PROBE 协议
|
|
50
|
+
|
|
51
|
+
**目标**: 完成项目深度探测,产出 `.nexus-map/` 知识库。
|
|
52
|
+
|
|
53
|
+
> [!IMPORTANT]
|
|
54
|
+
> 你**必须**调用 `nexus-mapper` 执行完整的 PROBE 五阶段协议。
|
|
55
|
+
>
|
|
56
|
+
> **为什么?** nexus-mapper 已整合了构建拓扑、Git 热点、领域概念分析能力,一次调用即可获得完整的项目认知。
|
|
57
|
+
|
|
58
|
+
**调用技能**: `nexus-mapper`
|
|
59
|
+
|
|
60
|
+
**nexus-mapper 内置能力**:
|
|
61
|
+
- **PROFILE**: AST 提取、文件树、语言覆盖
|
|
62
|
+
- **REASON**: 构建拓扑、依赖分析(原 build-inspector 功能)
|
|
63
|
+
- **OBJECT**: 质疑验证、三维度分析
|
|
64
|
+
- **BENCHMARK**: Git 热点、耦合对分析(原 git-forensics 功能)
|
|
65
|
+
- **EMIT**: 概念模型、知识库生成(原 concept-modeler 功能)
|
|
66
|
+
|
|
67
|
+
**输出**: `.nexus-map/` 目录,包含:
|
|
68
|
+
- `INDEX.md` — AI 冷启动入口
|
|
69
|
+
- `arch/systems.md` — 系统边界
|
|
70
|
+
- `arch/dependencies.md` — Mermaid 依赖图
|
|
71
|
+
- `concepts/concept_model.json` — 机器可读概念模型
|
|
72
|
+
- `hotspots/git_forensics.md` — Git 热点分析
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Step 2: 补充运行时拓扑分析
|
|
77
|
+
|
|
78
|
+
**目标**: 追踪进程间通信和契约状态(nexus-mapper 不覆盖此领域)。
|
|
79
|
+
|
|
80
|
+
**调用技能**: `runtime-inspector`
|
|
81
|
+
|
|
82
|
+
**思考引导**:
|
|
83
|
+
1. "进程边界在哪里?通信协议是什么?"
|
|
84
|
+
2. "有没有僵尸进程或协议漂移风险?"
|
|
85
|
+
3. "契约是强类型还是隐式约定?"
|
|
86
|
+
|
|
87
|
+
**输出**: Process Roots + Contract Status
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Step 3: Gap Analysis (模式 B)
|
|
92
|
+
|
|
93
|
+
**目标**: 对比代码实现与架构文档的偏差。
|
|
94
|
+
|
|
95
|
+
> [!IMPORTANT]
|
|
96
|
+
> 仅在 `.anws/v{N}/` 存在时执行此步骤。
|
|
97
|
+
|
|
98
|
+
**Gap Analysis 内容**:
|
|
99
|
+
- 将 `.nexus-map/concepts/concept_model.json` 与 `.anws/v{N}/` 中的架构定义对比
|
|
100
|
+
- 识别文档与实现的偏差
|
|
101
|
+
- 标记概念漂移或隐式设计
|
|
102
|
+
|
|
103
|
+
**思考引导**:
|
|
104
|
+
1. "代码中实际存在哪些领域概念?"
|
|
105
|
+
2. "与架构文档描述是否一致?"
|
|
106
|
+
3. "有没有概念漂移或隐式设计?"
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Step 4: 风险矩阵
|
|
111
|
+
|
|
112
|
+
**目标**: 综合分析,识别 "Change Impact"。
|
|
113
|
+
|
|
114
|
+
**思考引导**:
|
|
115
|
+
1. "如果进行 Genesis 更新,新需求会触碰哪些热点?"
|
|
116
|
+
2. "哪些风险是阻塞性的?哪些是可接受的?"
|
|
117
|
+
3. "有没有'改了就炸'的暗坑?"
|
|
118
|
+
|
|
119
|
+
**输出**: Risk Matrix (按严重度分级)
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## Step 5: 生成报告
|
|
124
|
+
|
|
125
|
+
**目标**: 保存探测报告。
|
|
126
|
+
|
|
127
|
+
> [!IMPORTANT]
|
|
128
|
+
> 报告必须保存到 `.anws/v{N}/00_PROBE_REPORT.md`。
|
|
129
|
+
> 如果版本不存在,默认为 v1。
|
|
130
|
+
|
|
131
|
+
**报告模板**:
|
|
132
|
+
|
|
133
|
+
```markdown
|
|
134
|
+
# PROBE Report
|
|
135
|
+
|
|
136
|
+
**探测时间**: [时间戳]
|
|
137
|
+
**探测模式**: [模式 A/B]
|
|
138
|
+
|
|
139
|
+
## 1. System Fingerprint
|
|
140
|
+
[项目结构概览]
|
|
141
|
+
|
|
142
|
+
## 2. Build Topology
|
|
143
|
+
[构建边界和依赖]
|
|
144
|
+
|
|
145
|
+
## 3. Runtime Topology
|
|
146
|
+
[进程边界和契约]
|
|
147
|
+
|
|
148
|
+
## 4. Temporal Topology
|
|
149
|
+
[历史耦合和热点]
|
|
150
|
+
|
|
151
|
+
## 5. Gap Analysis
|
|
152
|
+
[文档 vs 代码偏差]
|
|
153
|
+
|
|
154
|
+
## 6. Risk Matrix
|
|
155
|
+
|
|
156
|
+
| 风险 | 严重度 | 影响 | 建议 |
|
|
157
|
+
| ---- | :----: | ---- | ---- |
|
|
158
|
+
| ... | 🔴/🟡/🟢 | ... | ... |
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
<completion_criteria>
|
|
162
|
+
- ✅ 建立了系统指纹
|
|
163
|
+
- ✅ 识别了构建和运行时拓扑
|
|
164
|
+
- ✅ 发现了历史耦合热点
|
|
165
|
+
- ✅ 完成了 Gap Analysis
|
|
166
|
+
- ✅ 产出了风险矩阵
|
|
167
|
+
</completion_criteria>
|
|
168
|
+
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: "智能编排全流程。适用于不确定从哪个工作流开始的场景。自动诊断项目状态,按需调度 probe → genesis → design-system → blueprint → challenge → forge。"
|
|
3
3
|
---
|
|
4
4
|
|
|
5
5
|
# /quickstart
|
|
@@ -18,8 +18,8 @@ description: 智能编排全流程(scout → genesis → design → blueprint
|
|
|
18
18
|
|
|
19
19
|
### 状态矩阵
|
|
20
20
|
```
|
|
21
|
-
├── 🛑 无
|
|
22
|
-
│ ├── 有代码 → 🏚️ [遗留项目] → Jump to Step 0.5 (
|
|
21
|
+
├── 🛑 无 .anws/
|
|
22
|
+
│ ├── 有代码 → 🏚️ [遗留项目] → Jump to Step 0.5 (Probe)
|
|
23
23
|
│ └── 无代码 → 🆕 [全新项目] → Jump to Step 1 (Genesis)
|
|
24
24
|
├── 📝 有架构 (无任务)
|
|
25
25
|
│ ├── 有系统设计 → Step 3 (Challenge Design)
|
|
@@ -33,10 +33,10 @@ description: 智能编排全流程(scout → genesis → design → blueprint
|
|
|
33
33
|
|
|
34
34
|
---
|
|
35
35
|
|
|
36
|
-
## Step 0.5:
|
|
36
|
+
## Step 0.5: 探测 (Probe)
|
|
37
37
|
|
|
38
|
-
**触发**: 遗留项目。通过 `/
|
|
39
|
-
**产出**:
|
|
38
|
+
**触发**: 遗留项目。通过 `/probe` 探测暗地里的风险与耦合。
|
|
39
|
+
**产出**: `.anws/v{N}/00_PROBE_REPORT.md` (Genesis 的重要输入)。
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
@@ -86,12 +86,7 @@ description: 智能编排全流程(scout → genesis → design → blueprint
|
|
|
86
86
|
**场景**: 项目开发中。
|
|
87
87
|
**建议建议**:
|
|
88
88
|
- `/forge` — 继续执行任务
|
|
89
|
-
- `/
|
|
89
|
+
- `/probe` — 重大变更前探测风险
|
|
90
90
|
- `/genesis` — 架构大版本升级
|
|
91
91
|
- `/change` — 微调任务细节
|
|
92
92
|
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
## 🔀 快速跳转 (Handoffs)
|
|
96
|
-
|
|
97
|
-
- `/scout` | `/genesis` | `/blueprint` | `/challenge` | `/forge`
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "在执行 anws update 后,读取 .anws/changelog/vX.Y.Z.md,判断升级等级(Minor / Major),生成人类可审核的升级计划,并路由到 /change 或 /genesis 执行后续修改。"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /upgrade
|
|
6
|
+
|
|
7
|
+
<phase_context>
|
|
8
|
+
你是 **UPGRADE ORCHESTRATOR (升级编排师)**。
|
|
9
|
+
|
|
10
|
+
**核心使命**:
|
|
11
|
+
在 `anws update` 执行完成后,读取 `.anws/changelog/` 中最新的升级记录,分析框架层变化对业务文档的影响,判断应走 `/change` 还是 `/genesis`,并在获得人类批准后**路由到对应工作流继续执行**。
|
|
12
|
+
|
|
13
|
+
**核心原则**:
|
|
14
|
+
- **changelog 是升级依据** - 不凭印象升级,必须读取 `.anws/changelog/vX.Y.Z.md`
|
|
15
|
+
- **先定级,后路由** - 先判断 Minor / Major,再决定调用 `/change` 还是 `/genesis`
|
|
16
|
+
- **保护业务常量** - 禁止覆盖业务域名词、业务规则、产品约束
|
|
17
|
+
- **upgrade 只负责编排** - `/upgrade` 不自行绕过规范直接改文档,实际写操作必须遵循被路由工作流
|
|
18
|
+
- **人类审批** - 写操作前必须先展示升级计划,等待用户批准
|
|
19
|
+
|
|
20
|
+
**Output Goal**:
|
|
21
|
+
- 输出升级等级:`Minor` / `Major`
|
|
22
|
+
- 输出升级计划:影响范围、受影响文档、风险提示、推荐路由
|
|
23
|
+
- 获得人类批准后,明确切换到 `/change` 或 `/genesis`
|
|
24
|
+
</phase_context>
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## ⚠️ CRITICAL 执行顺序
|
|
29
|
+
|
|
30
|
+
> [!IMPORTANT]
|
|
31
|
+
> 必须严格按 Step 0 → Step 1 → Step 2 → Step 3 → Step 4 执行。
|
|
32
|
+
> 禁止跳过 changelog 读取,禁止未定级先决定路由,禁止绕过人类检查点,禁止不读 `/change` 或 `/genesis` 就直接落笔。
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Step 0: 定位升级输入
|
|
37
|
+
|
|
38
|
+
1. 扫描 `.anws/changelog/`
|
|
39
|
+
2. 找到最新的 `vX.Y.Z.md`
|
|
40
|
+
3. 读取最新升级记录,提取:
|
|
41
|
+
- 文件级变更
|
|
42
|
+
- 内容级变更详情
|
|
43
|
+
- 可能受影响的 workflow / skill / template
|
|
44
|
+
4. 扫描 `.anws/` 目录,找到最新的架构版本 `v{N}`
|
|
45
|
+
5. 设定上下文变量:
|
|
46
|
+
- `LATEST_CHANGELOG = .anws/changelog/vX.Y.Z.md`
|
|
47
|
+
- `CURRENT_ARCH = .anws/v{N}`
|
|
48
|
+
|
|
49
|
+
**若缺失任一目录**:停止并提示用户先运行 `anws update` 或 `/genesis`。
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Step 1: 升级定级 (Minor / Major)
|
|
54
|
+
|
|
55
|
+
> [!IMPORTANT]
|
|
56
|
+
> 升级类型由 AI 判断,不从 changelog 静态读取。
|
|
57
|
+
> **不再使用 Patch 级别**,只保留 `Minor` 与 `Major`,因为 `/upgrade` 的目标是决定跳转逻辑,而不是表达实现细粒度。
|
|
58
|
+
|
|
59
|
+
使用以下判定规则:
|
|
60
|
+
|
|
61
|
+
| 级别 | 判定标准 |
|
|
62
|
+
|------|---------|
|
|
63
|
+
| Minor | 变更可在当前版本内通过 `/change` 完成,不需要创建新的架构版本 |
|
|
64
|
+
| Major | 版本目录规则变化、核心工作流协议变化、架构边界变化、需要新版本承载 |
|
|
65
|
+
|
|
66
|
+
### 强制评估问题
|
|
67
|
+
|
|
68
|
+
1. 是否改变版本目录或核心路径约定?
|
|
69
|
+
2. 是否改变多个工作流的执行协议?
|
|
70
|
+
3. 是否影响 `01_PRD.md`、`02_ARCHITECTURE_OVERVIEW.md`、`03_ADR/` 的结构语义?
|
|
71
|
+
4. 是否需要保留旧版架构文档作为兼容参考?
|
|
72
|
+
|
|
73
|
+
**判定逻辑**:
|
|
74
|
+
- 影响局部文档、无需新版本 → `Minor`
|
|
75
|
+
- 需要新版本承载、会改变架构语义或目录协议 → `Major`
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Step 2: 影响分析与路由建议
|
|
80
|
+
|
|
81
|
+
1. 读取 `CURRENT_ARCH` 下的以下文件(按需):
|
|
82
|
+
- `01_PRD.md`
|
|
83
|
+
- `02_ARCHITECTURE_OVERVIEW.md`
|
|
84
|
+
- `03_ADR/*`
|
|
85
|
+
- `04_SYSTEM_DESIGN/*`
|
|
86
|
+
- `05_TASKS.md`(若存在)
|
|
87
|
+
2. 建立“框架变更 → 业务文档节点”的映射
|
|
88
|
+
3. 识别以下三类影响:
|
|
89
|
+
- **路径迁移**:如 `.agent/` → `.agents/` 或工作流目录位置变化
|
|
90
|
+
- **流程迁移**:如新增 `/upgrade`、`anws update --check`
|
|
91
|
+
- **协议迁移**:如工作流优先原则、changelog 依赖
|
|
92
|
+
4. 对每个影响点标注:
|
|
93
|
+
- 受影响文件
|
|
94
|
+
- 受影响章节
|
|
95
|
+
- 修改原因
|
|
96
|
+
- 是否涉及 AI 推断填充
|
|
97
|
+
5. 生成**推荐路由**:
|
|
98
|
+
- `Minor` → 推荐调用 `/change`
|
|
99
|
+
- `Major` → 推荐调用 `/genesis`
|
|
100
|
+
|
|
101
|
+
> [!IMPORTANT]
|
|
102
|
+
> 此处只产出“升级计划”和“路由建议”,**不执行实际文档写入**。
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Step 3: 人类检查点 ⚠️
|
|
107
|
+
|
|
108
|
+
> [!IMPORTANT]
|
|
109
|
+
> 未经用户明确批准,禁止写任何文件。
|
|
110
|
+
|
|
111
|
+
必须向用户展示以下内容:
|
|
112
|
+
|
|
113
|
+
```markdown
|
|
114
|
+
⚠️ 人类检查点 — 升级计划确认
|
|
115
|
+
|
|
116
|
+
**最新 changelog**: `.anws/changelog/vX.Y.Z.md`
|
|
117
|
+
**当前架构版本**: `.anws/v{N}`
|
|
118
|
+
**升级定级**: Minor / Major
|
|
119
|
+
**推荐路由**: `/change` 或 `/genesis`
|
|
120
|
+
|
|
121
|
+
## 受影响文件
|
|
122
|
+
- `.anws/v{N}/01_PRD.md` — 原因: 路径约定变更
|
|
123
|
+
- `.anws/v{N}/02_ARCHITECTURE_OVERVIEW.md` — 原因: 新增 update --check 流程
|
|
124
|
+
|
|
125
|
+
## 执行策略
|
|
126
|
+
- Minor: 进入 `/change`,按 `/change` 的权限边界和检查点修改
|
|
127
|
+
- Major: 进入 `/genesis`,按 `/genesis` 的版本化规则创建/演进新版本
|
|
128
|
+
|
|
129
|
+
## 风险提示
|
|
130
|
+
- 哪些段落需要 AI 推断
|
|
131
|
+
- 哪些业务常量将被保护不改
|
|
132
|
+
|
|
133
|
+
请确认: ✅ 批准并路由 / ❌ 拒绝 / ✏️ 调整
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## Step 4: 路由到目标工作流
|
|
139
|
+
|
|
140
|
+
### Case A: Minor → `/change`
|
|
141
|
+
|
|
142
|
+
1. 接下来**必须读取**当前 target 对应的 `/change` 原生投影文件
|
|
143
|
+
2. 将 Step 2 的影响分析结果带入 `/change`
|
|
144
|
+
3. 后续所有修改动作必须遵守 `/change` 的权限边界、人类检查点和 CHANGELOG 记录规则
|
|
145
|
+
4. 若在 `/change` 评估中发现超出其权限边界,立即终止并改走 `/genesis`
|
|
146
|
+
|
|
147
|
+
### Case B: Major → `/genesis`
|
|
148
|
+
|
|
149
|
+
1. 接下来**必须读取**当前 target 对应的 `/genesis` 原生投影文件
|
|
150
|
+
2. 将 Step 2 的影响分析结果作为新版本演进输入带入 `/genesis`
|
|
151
|
+
3. 后续版本复制、文档演进、Manifest/ADR 变更必须遵守 `/genesis` 的版本管理逻辑
|
|
152
|
+
|
|
153
|
+
### AI 推断填充规则
|
|
154
|
+
|
|
155
|
+
若某段内容需要 AI 基于上下文补全,必须在段前加入:
|
|
156
|
+
|
|
157
|
+
```markdown
|
|
158
|
+
> [!WARNING]
|
|
159
|
+
> AI 推断填充,请人类复核。
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### 业务常量保护规则
|
|
163
|
+
|
|
164
|
+
以下内容禁止被框架升级覆盖:
|
|
165
|
+
- 业务领域术语
|
|
166
|
+
- 产品目标
|
|
167
|
+
- 用户故事中的业务意图
|
|
168
|
+
- 团队特定约束
|
|
169
|
+
- 自定义系统边界
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## 完成报告
|
|
174
|
+
|
|
175
|
+
完成路由后,向用户输出:
|
|
176
|
+
- 升级级别
|
|
177
|
+
- 推荐路由 (`/change` 或 `/genesis`)
|
|
178
|
+
- 计划影响的文件列表
|
|
179
|
+
- 是否预计创建新版本
|
|
180
|
+
- 是否存在 AI 推断填充风险
|
|
181
|
+
- 下一步必须读取的工作流文件
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
<completion_criteria>
|
|
186
|
+
- ✅ 已读取最新 `.anws/changelog/vX.Y.Z.md`
|
|
187
|
+
- ✅ 已完成升级定级
|
|
188
|
+
- ✅ 已输出推荐路由 (`/change` / `/genesis`)
|
|
189
|
+
- ✅ 已展示升级计划并获得用户批准
|
|
190
|
+
- ✅ 已在执行前切换去读取目标工作流
|
|
191
|
+
- ✅ 后续写操作由目标工作流规范接管
|
|
192
|
+
</completion_criteria>
|