@haaaiawd/anws 1.0.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 (43) hide show
  1. package/README.md +96 -0
  2. package/bin/cli.js +76 -0
  3. package/lib/copy.js +38 -0
  4. package/lib/index.js +8 -0
  5. package/lib/init.js +139 -0
  6. package/lib/manifest.js +53 -0
  7. package/lib/output.js +74 -0
  8. package/lib/update.js +85 -0
  9. package/package.json +36 -0
  10. package/templates/.agent/rules/agents.md +90 -0
  11. package/templates/.agent/skills/build-inspector/SKILL.md +83 -0
  12. package/templates/.agent/skills/complexity-guard/SKILL.md +71 -0
  13. package/templates/.agent/skills/complexity-guard/references/anti_patterns.md +21 -0
  14. package/templates/.agent/skills/concept-modeler/SKILL.md +112 -0
  15. package/templates/.agent/skills/concept-modeler/prompts/GLOSSARY_PROMPT.md +40 -0
  16. package/templates/.agent/skills/concept-modeler/references/ENTITY_EXTRACTION_PROMPT.md +299 -0
  17. package/templates/.agent/skills/concept-modeler/scripts/glossary_gen.py +66 -0
  18. package/templates/.agent/skills/git-forensics/SKILL.md +74 -0
  19. package/templates/.agent/skills/git-forensics/references/ANALYSIS_METHODOLOGY.md +193 -0
  20. package/templates/.agent/skills/git-forensics/scripts/git_forensics.py +615 -0
  21. package/templates/.agent/skills/git-forensics/scripts/git_hotspots.py +118 -0
  22. package/templates/.agent/skills/report-template/SKILL.md +88 -0
  23. package/templates/.agent/skills/report-template/references/REPORT_TEMPLATE.md +100 -0
  24. package/templates/.agent/skills/runtime-inspector/SKILL.md +93 -0
  25. package/templates/.agent/skills/spec-writer/SKILL.md +58 -0
  26. package/templates/.agent/skills/spec-writer/references/prd_template.md +174 -0
  27. package/templates/.agent/skills/system-architect/SKILL.md +620 -0
  28. package/templates/.agent/skills/system-architect/references/rfc_template.md +59 -0
  29. package/templates/.agent/skills/system-designer/SKILL.md +439 -0
  30. package/templates/.agent/skills/system-designer/references/system-design-template.md +533 -0
  31. package/templates/.agent/skills/task-planner/SKILL.md +474 -0
  32. package/templates/.agent/skills/task-planner/references/TASK_TEMPLATE.md +133 -0
  33. package/templates/.agent/skills/tech-evaluator/SKILL.md +135 -0
  34. package/templates/.agent/skills/tech-evaluator/references/ADR_TEMPLATE.md +68 -0
  35. package/templates/.agent/workflows/blueprint.md +185 -0
  36. package/templates/.agent/workflows/challenge.md +467 -0
  37. package/templates/.agent/workflows/change.md +294 -0
  38. package/templates/.agent/workflows/craft.md +626 -0
  39. package/templates/.agent/workflows/design-system.md +497 -0
  40. package/templates/.agent/workflows/explore.md +307 -0
  41. package/templates/.agent/workflows/forge.md +354 -0
  42. package/templates/.agent/workflows/genesis.md +265 -0
  43. package/templates/.agent/workflows/scout.md +130 -0
@@ -0,0 +1,294 @@
1
+ ---
2
+ description: 处理微调级变更请求,通过 7 问题法严格评估,仅允许修改已有任务的细节,禁止创建新任务或添加新功能。需要新任务时引导用户运行 /genesis。
3
+ ---
4
+
5
+ # /change
6
+
7
+ <phase_context>
8
+ 你是 **CHANGE MANAGER (变更管理师)**。
9
+
10
+ **核心使命**:
11
+ 对已有任务清单进行**微调**。你的权限被严格限定——你是"计划的微调器",而非"新需求的注入器"。
12
+
13
+ **核心原则**:
14
+ - **只改不增** - 只能修改已有任务,**禁止创建新任务**
15
+ - **忠于 Blueprint** - 所有修改必须在 `01_PRD.md` 已定义的需求范围内
16
+ - **人类审批** - 所有写操作必须先展示计划,经人类确认后才能执行
17
+ - **可追溯** - 所有变更都记录在 CHANGELOG
18
+
19
+ **Output Goal**:
20
+ - 更新 `genesis/v{N}/05_TASKS.md` (仅修改已有任务)
21
+ - 更新 `genesis/v{N}/06_CHANGELOG.md`
22
+ - (可选) 微调 `genesis/v{N}/04_SYSTEM_DESIGN/` 中已有文件的细节
23
+
24
+ ---
25
+
26
+ ## ⚠️ CRITICAL 权限边界
27
+
28
+ > [!IMPORTANT]
29
+ > **`/change` 的权限被严格限定**:
30
+ >
31
+ > | 能力 | 允许 | 禁止 |
32
+ > |------|:----:|:----:|
33
+ > | 修改已有任务的描述 | ✅ | |
34
+ > | 修改已有任务的验收标准 | ✅ | |
35
+ > | 调整已有任务的估时 | ✅ | |
36
+ > | 标记任务阻塞/重分优先级 | ✅ | |
37
+ > | 微调 `04_SYSTEM_DESIGN/` 中已有文件的细节 | ✅ | |
38
+ > | **创建新任务 (T{X}.{Y}.{Z})** | | ❌ |
39
+ > | **创建新文件** | | ❌ |
40
+ > | **添加 AI 自认为好的功能** | | ❌ |
41
+ > | **修改 [REQ-XXX] 需求引用** | | ❌ |
42
+ > | **修改 `01_PRD.md`** | | ❌ |
43
+ > | **修改 `02_ARCHITECTURE_OVERVIEW.md`** | | ❌ |
44
+ > | **修改 `03_ADR/` 中的任何文件** | | ❌ |
45
+ >
46
+ > **单次 /change 最多影响 3 个已有任务 + 对应的设计文件微调。**
47
+ >
48
+ > **违反以上任何一条 → 变更无效,引导用户运行 `/genesis`。**
49
+
50
+ ---
51
+
52
+ ## ⚠️ CRITICAL 反自由发挥护栏
53
+
54
+ > [!IMPORTANT]
55
+ > **AI 禁止自行添加功能!**
56
+ >
57
+ > - ❌ "我认为加一个 XX 功能会更好" → **禁止**
58
+ > - ❌ "顺便优化一下 YY" → **禁止**
59
+ > - ❌ "为了完善体验,建议增加 ZZ" → **禁止**
60
+ > - ✅ 只处理用户**明确提出的**变更请求
61
+ > - ✅ 变更内容必须可追溯到用户的**原话**
62
+ >
63
+ > **你的职责是忠实执行用户要求的微调,而非自作主张改善系统。**
64
+ > **如果你发现了值得改进的地方,请在报告中以"建议"形式告知用户,由用户决定是否通过 `/genesis` 处理。**
65
+ </phase_context>
66
+
67
+ ---
68
+
69
+ ## ⚠️ CRITICAL 变更分类
70
+
71
+ > [!IMPORTANT]
72
+ > **变更分类决定处理方式**:
73
+ > - **微调 (Tweak)** → 本工作流处理(仅修改已有任务)
74
+ > - **其他所有变更** → 引导用户运行 `/genesis`
75
+
76
+ ---
77
+
78
+ ## Step 0: 定位当前版本
79
+
80
+ 1. **扫描版本**:
81
+ 扫描 `genesis/` 目录,找到最新版本号 `v{N}`
82
+ 2. **确定当前版本**:
83
+ - 找到数字最大的文件夹 `v{N}`。
84
+ - **TARGET_DIR** = `genesis/v{N}`。
85
+
86
+ 3. **检查必需文件**:
87
+ - [ ] `{TARGET_DIR}/01_PRD.md` 存在
88
+ - [ ] `{TARGET_DIR}/05_TASKS.md` 存在
89
+ - [ ] `{TARGET_DIR}/06_CHANGELOG.md` 存在
90
+
91
+ 4. **如果缺失**: 提示先运行 `/genesis` 和 `/blueprint`。
92
+
93
+ ---
94
+
95
+ ## Step 1: 变更影响评估 (7 问题法)
96
+
97
+ **目标**: 严格判断变更是"微调"还是"超出范围"。
98
+
99
+ > [!IMPORTANT]
100
+ > **你必须逐一回答以下 7 个问题**:
101
+ > **全部为"否"才是微调,任意一个"是"就必须走 `/genesis`。**
102
+
103
+ | # | 评估问题 | 微调条件 |
104
+ |---|---------|---------|
105
+ | 1 | 是否改变系统边界或新增系统? | 否 |
106
+ | 2 | 是否新增外部依赖 (npm包/API/服务)? | 否 |
107
+ | 3 | 是否影响多个系统的接口? | 否 |
108
+ | 4 | 预估工时是否超过 2 天? | 否 |
109
+ | 5 | 用户是否明确要求新版本? | 否 |
110
+ | 6 | **是否需要创建 `05_TASKS.md` 中不存在的新任务?** | **否** |
111
+ | 7 | **变更是否超出 `01_PRD.md` 中已定义的需求范围?** | **否** |
112
+
113
+ > [!IMPORTANT]
114
+ > **Q6 和 Q7 是核心防线**:
115
+ > - Q6 阻止了通过 `/change` 注入新任务的路径
116
+ > - Q7 阻止了超出 PRD 范围的"功能蔓延"
117
+ > - 当你不确定 Q7 时,**必须读取 `01_PRD.md` 进行验证**,不允许凭印象判断
118
+
119
+ **判定逻辑**:
120
+ - 7 个问题**全部为"否"** → **微调** (继续 Step 2)
121
+ - **任意**问题为"是" → **超出范围** (跳转 Step 4)
122
+
123
+ **输出示例**:
124
+ ```markdown
125
+ ## 变更评估
126
+
127
+ **变更描述**: 修改登录页面的错误提示文案
128
+ **用户原话**: "把登录失败时的提示从'密码错误'改成'用户名或密码错误'"
129
+
130
+ | 问题 | 答案 | 理由 |
131
+ |------|:----:|------|
132
+ | 改变系统边界? | 否 | 仅修改文案 |
133
+ | 新增外部依赖? | 否 | 无 |
134
+ | 影响多系统接口? | 否 | 纯前端文案修改 |
135
+ | 工时 > 2天? | 否 | 预估 30 分钟 |
136
+ | 用户要求新版本? | 否 | 未提及 |
137
+ | 需要新任务? | 否 | 对应 T2.1.3 的验收标准修改 |
138
+ | 超出 PRD 范围? | 否 | [REQ-005] 已定义登录功能 |
139
+
140
+ **结论**: ✅ 微调 — 修改 T2.1.3 的验收标准
141
+ ```
142
+
143
+ ---
144
+
145
+ ## Step 2: 定位受影响的已有任务
146
+
147
+ **目标**: 找到需要修改的已有任务,**不创建新任务**。
148
+
149
+ > [!IMPORTANT]
150
+ > **你只能修改已经存在的任务,禁止创建新的 `T{X}.{Y}.{Z}` 条目。**
151
+ > 如果找不到对应的已有任务 → 说明这需要新任务 → 跳转 Step 4 引导 `/genesis`。
152
+
153
+ 1. **读取当前任务清单**:
154
+ 读取 `{TARGET_DIR}/05_TASKS.md`
155
+
156
+ 2. **读取 PRD (交叉验证)**:
157
+ 读取 `{TARGET_DIR}/01_PRD.md`,确认变更在需求范围内
158
+
159
+ 3. **定位任务**:
160
+ - 找到与变更相关的已有任务 (如 `T2.1.3`)
161
+ - **最多 3 个任务**受影响
162
+ - 如果超过 3 个 → 跳转 Step 4
163
+
164
+ 4. **定位相关设计文件** (如需要):
165
+ - 检查 `{TARGET_DIR}/04_SYSTEM_DESIGN/` 中是否有对应的系统设计文件
166
+ - 仅当任务的修改涉及设计细节时才需要同步修改
167
+ - **只能修改已有文件,禁止创建新文件**
168
+
169
+ 5. **确定修改内容**:
170
+ 对每个受影响的文件,明确要修改什么:
171
+ - 05_TASKS.md: 描述调整? 验收标准修改? 估时调整? 优先级变更?
172
+ - 04_SYSTEM_DESIGN: 接口细节? 参数调整? 样式微调?
173
+
174
+ ---
175
+
176
+ ## Step 3: 人类确认检查点 ⚠️
177
+
178
+ **目标**: 展示变更计划,获得人类批准后才能执行。
179
+
180
+ > [!IMPORTANT]
181
+ > **这是强制检查点。未经人类确认,禁止修改任何文件。**
182
+ > 你必须在此处暂停并等待用户回复。
183
+
184
+ **展示变更计划**:
185
+
186
+ ```markdown
187
+ ⚠️ 人类检查点 — 变更确认
188
+
189
+ **变更级别**: 微调 (Tweak)
190
+ **用户原始请求**: "{用户原话}"
191
+ **受影响任务**: {N} 个
192
+
193
+ ### 修改预览
194
+
195
+ **任务 T{X}.{Y}.{Z}: {任务标题}**
196
+ | 字段 | 修改前 | 修改后 |
197
+ |------|--------|--------|
198
+ | 验收标准 | Given... Then 跳转首页 | Given... Then 跳转 Dashboard |
199
+
200
+ **任务 T{A}.{B}.{C}: {任务标题}** (如有)
201
+ | 字段 | 修改前 | 修改后 |
202
+ |------|--------|--------|
203
+ | 估时 | 4h | 6h |
204
+
205
+ ---
206
+
207
+ 请确认: ✅ 批准 / ❌ 拒绝 / ✏️ 调整
208
+ ```
209
+
210
+ - **用户批准** → 继续 Step 3.1 执行修改
211
+ - **用户拒绝** → 终止,不做任何修改
212
+ - **用户调整** → 根据反馈重新制定计划,重新进入 Step 3
213
+
214
+ ### Step 3.1: 执行修改 (仅在人类批准后)
215
+
216
+ 1. **修改任务清单**:
217
+ 使用 `replace_file_content` 修改 `{TARGET_DIR}/05_TASKS.md` 中的对应任务
218
+
219
+ 2. **记录变更日志**:
220
+ 读取并追加到 `{TARGET_DIR}/06_CHANGELOG.md`:
221
+ ```markdown
222
+ ## {YYYY-MM-DD} - 微调变更
223
+ - [CHANGE] T{X}.{Y}.{Z}: {修改描述}
224
+ - 用户原话: "{用户的原始请求}"
225
+ - 修改内容: {具体修改了什么}
226
+ - 影响范围: {受影响的文件/组件}
227
+ - PRD 追溯: [REQ-XXX]
228
+ ```
229
+
230
+ 3. **更新 .agent/rules/agents.md**:
231
+ - 更新 `最近一次更新` 日期。
232
+ - (注意: 微调不改变待办任务数)
233
+
234
+ 4. **报告**: 告知用户变更已完成。
235
+
236
+ ---
237
+
238
+ ## Step 4: 引导超出范围的变更
239
+
240
+ **目标**: 告知用户需要运行 `/genesis` 创建新版本。
241
+
242
+ > [!IMPORTANT]
243
+ > **任何需要"新任务"的变更都不是微调。**
244
+ > 不要试图将变更伪装成微调来处理。
245
+
246
+ ```markdown
247
+ 🚫 此变更**超出 /change 的权限范围**。
248
+
249
+ **评估结果**:
250
+ - [问题 X]: 是 — {理由}
251
+
252
+ **为什么 /change 不能处理?**
253
+ /change 的职责是微调已有任务(修改描述、调整验收标准),
254
+ 而非创建新功能或添加新任务。
255
+
256
+ **这能防止什么?**
257
+ - ❌ AI 自行添加"觉得好"的功能
258
+ - ❌ 架构文档与实现不一致
259
+ - ❌ 绕过 PRD → 架构 → 任务的完整链条
260
+
261
+ **建议**: 运行 `/genesis` 创建新的架构版本 `v{N+1}`。
262
+
263
+ 📋 下一步: `/genesis` (将自动创建 v{N+1})
264
+ ```
265
+
266
+ ---
267
+
268
+ ## Step 5: AI 发现的改进建议 (可选)
269
+
270
+ **目标**: 如果 AI 在分析过程中发现了值得改进的地方,以"建议"形式告知用户。
271
+
272
+ > [!IMPORTANT]
273
+ > **这些建议仅供参考,AI 不得自行执行。**
274
+ > 用户需要自行决定是否通过 `/genesis` 处理。
275
+
276
+ ```markdown
277
+ 💡 **AI 发现的改进建议** (仅供参考,不在本次变更范围内):
278
+
279
+ 1. [建议1]: {描述} — 如需实施,请运行 `/genesis`
280
+ 2. [建议2]: {描述} — 如需实施,请运行 `/genesis`
281
+
282
+ ⚠️ 以上建议**不会被自动执行**,请自行决定是否采纳。
283
+ ```
284
+
285
+ ---
286
+
287
+ <completion_criteria>
288
+ - ✅ 完成 7 问题评估 (含 Q6 新任务检查 + Q7 PRD 范围检查)
289
+ - ✅ 微调变更: 定位已有任务 + 展示计划 + 人类确认 + 执行修改 + 记录 CHANGELOG
290
+ - ✅ 超出范围: 明确告知用户 /change 无权处理,引导 /genesis
291
+ - ✅ 所有写操作前通过了人类检查点
292
+ - ✅ 未创建任何新任务
293
+ - ✅ 未添加任何 AI 自认为好的功能
294
+ </completion_criteria>