architext 0.0.3 → 0.0.5
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/CHANGELOG.md +56 -1
- package/README.md +94 -12
- package/README.zh-CN.md +94 -12
- package/dist/index.js +43 -39
- package/dist/templates/en/briefs/_base.md +44 -11
- package/dist/templates/en/briefs/_modules.md +31 -4
- package/dist/templates/en/docs/global/api_snapshot.json +24 -0
- package/dist/templates/en/docs/global/command_api.json +26 -0
- package/dist/templates/en/docs/global/env_registry.json +12 -0
- package/dist/templates/en/docs/global/map.json +5 -0
- package/dist/templates/en/docs/global/public_api.json +12 -0
- package/dist/templates/en/docs/prompts/audit.md +80 -94
- package/dist/templates/en/docs/prompts/code.md +100 -109
- package/dist/templates/en/docs/prompts/edit.md +52 -47
- package/dist/templates/en/docs/prompts/fix.md +49 -42
- package/dist/templates/en/docs/prompts/help.md +23 -31
- package/dist/templates/en/docs/prompts/inherit.md +110 -116
- package/dist/templates/en/docs/prompts/map.md +47 -69
- package/dist/templates/en/docs/prompts/plan.md +160 -171
- package/dist/templates/en/docs/prompts/recover.md +48 -0
- package/dist/templates/en/docs/prompts/ref.md +163 -0
- package/dist/templates/en/docs/prompts/remove.md +55 -107
- package/dist/templates/en/docs/prompts/revise.md +63 -106
- package/dist/templates/en/docs/prompts/scope.md +77 -117
- package/dist/templates/en/docs/prompts/start.md +93 -139
- package/dist/templates/en/docs/shared/verify-result-handling.md +6 -0
- package/dist/templates/en/docs/templates/design.template.md +77 -0
- package/dist/templates/en/docs/templates/spec.template.md +60 -25
- package/dist/templates/en/rules/00_system.md +36 -79
- package/dist/templates/en/rules/01_workflow.md +59 -57
- package/dist/templates/en/rules/03_data_governance.md +46 -42
- package/dist/templates/en/skills/archi-data-sync/SKILL.md +83 -0
- package/dist/templates/en/skills/archi-decompose-roadmap/SKILL.md +166 -151
- package/dist/templates/en/skills/archi-design-patterns/SKILL.md +140 -0
- package/dist/templates/en/skills/archi-feature-relations/SKILL.md +118 -0
- package/dist/templates/en/skills/archi-interview-protocol/SKILL.md +2 -1
- package/dist/templates/en/skills/archi-plan-options/SKILL.md +4 -3
- package/dist/templates/en/skills/archi-silent-audit/SKILL.md +118 -0
- package/dist/templates/en/skills/archi-ui-wireframe/SKILL.md +315 -270
- package/dist/templates/zh/briefs/_base.md +46 -14
- package/dist/templates/zh/briefs/_modules.md +29 -2
- package/dist/templates/zh/docs/global/api_snapshot.json +24 -0
- package/dist/templates/zh/docs/global/command_api.json +26 -0
- package/dist/templates/zh/docs/global/data_snapshot.json +0 -1
- package/dist/templates/zh/docs/global/design_tokens.json +0 -1
- package/dist/templates/zh/docs/global/dictionary.json +1 -1
- package/dist/templates/zh/docs/global/env_registry.json +12 -0
- package/dist/templates/zh/docs/global/error_codes.json +0 -8
- package/dist/templates/zh/docs/global/map.json +28 -3
- package/dist/templates/zh/docs/global/public_api.json +12 -0
- package/dist/templates/zh/docs/global/vision.md +1 -1
- package/dist/templates/zh/docs/prompts/audit.md +43 -57
- package/dist/templates/zh/docs/prompts/code.md +68 -77
- package/dist/templates/zh/docs/prompts/edit.md +44 -39
- package/dist/templates/zh/docs/prompts/fix.md +33 -26
- package/dist/templates/zh/docs/prompts/help.md +13 -21
- package/dist/templates/zh/docs/prompts/inherit.md +81 -87
- package/dist/templates/zh/docs/prompts/map.md +23 -45
- package/dist/templates/zh/docs/prompts/plan.md +134 -146
- package/dist/templates/zh/docs/prompts/recover.md +48 -0
- package/dist/templates/zh/docs/prompts/ref.md +163 -0
- package/dist/templates/zh/docs/prompts/remove.md +31 -83
- package/dist/templates/zh/docs/prompts/revise.md +43 -84
- package/dist/templates/zh/docs/prompts/scope.md +53 -93
- package/dist/templates/zh/docs/prompts/start.md +75 -121
- package/dist/templates/zh/docs/shared/verify-result-handling.md +6 -0
- package/dist/templates/zh/docs/templates/design.template.md +77 -0
- package/dist/templates/zh/docs/templates/spec.template.md +60 -25
- package/dist/templates/zh/rules/00_system.md +37 -80
- package/dist/templates/zh/rules/01_workflow.md +60 -58
- package/dist/templates/zh/rules/02_tech_stack.md +7 -6
- package/dist/templates/zh/rules/03_data_governance.md +43 -39
- package/dist/templates/zh/rules/99_context_glue.md +2 -2
- package/dist/templates/zh/skills/archi-data-sync/SKILL.md +83 -0
- package/dist/templates/zh/skills/archi-decompose-roadmap/SKILL.md +70 -56
- package/dist/templates/zh/skills/archi-design-patterns/SKILL.md +140 -0
- package/dist/templates/zh/skills/archi-feature-relations/SKILL.md +118 -0
- package/dist/templates/zh/skills/archi-interview-protocol/SKILL.md +2 -1
- package/dist/templates/zh/skills/archi-plan-options/SKILL.md +26 -25
- package/dist/templates/zh/skills/archi-silent-audit/SKILL.md +118 -0
- package/dist/templates/zh/skills/archi-ui-wireframe/SKILL.md +317 -269
- package/package.json +1 -1
- package/dist/templates/zh-Hant/briefs/_base.md +0 -115
- package/dist/templates/zh-Hant/briefs/_modules.md +0 -173
- package/dist/templates/zh-Hant/docs/global/data_snapshot.json +0 -31
- package/dist/templates/zh-Hant/docs/global/design_tokens.json +0 -135
- package/dist/templates/zh-Hant/docs/global/dictionary.json +0 -35
- package/dist/templates/zh-Hant/docs/global/error_codes.json +0 -19
- package/dist/templates/zh-Hant/docs/global/map.json +0 -94
- package/dist/templates/zh-Hant/docs/global/roadmap.json +0 -39
- package/dist/templates/zh-Hant/docs/global/vision.md +0 -82
- package/dist/templates/zh-Hant/docs/prompts/audit.md +0 -150
- package/dist/templates/zh-Hant/docs/prompts/code.md +0 -160
- package/dist/templates/zh-Hant/docs/prompts/edit.md +0 -87
- package/dist/templates/zh-Hant/docs/prompts/fix.md +0 -86
- package/dist/templates/zh-Hant/docs/prompts/help.md +0 -69
- package/dist/templates/zh-Hant/docs/prompts/inherit.md +0 -270
- package/dist/templates/zh-Hant/docs/prompts/map.md +0 -131
- package/dist/templates/zh-Hant/docs/prompts/plan.md +0 -252
- package/dist/templates/zh-Hant/docs/prompts/remove.md +0 -162
- package/dist/templates/zh-Hant/docs/prompts/revise.md +0 -160
- package/dist/templates/zh-Hant/docs/prompts/scope.md +0 -198
- package/dist/templates/zh-Hant/docs/prompts/start.md +0 -258
- package/dist/templates/zh-Hant/docs/templates/plan.template.json +0 -88
- package/dist/templates/zh-Hant/docs/templates/scope-brief.template.md +0 -58
- package/dist/templates/zh-Hant/docs/templates/spec.template.md +0 -51
- package/dist/templates/zh-Hant/docs/templates/ui.template.md +0 -51
- package/dist/templates/zh-Hant/rules/00_system.md +0 -123
- package/dist/templates/zh-Hant/rules/01_workflow.md +0 -93
- package/dist/templates/zh-Hant/rules/02_tech_stack.md +0 -192
- package/dist/templates/zh-Hant/rules/03_data_governance.md +0 -102
- package/dist/templates/zh-Hant/rules/04_cli_tools.md +0 -50
- package/dist/templates/zh-Hant/rules/90_custom_rules.md +0 -21
- package/dist/templates/zh-Hant/rules/99_context_glue.md +0 -53
- package/dist/templates/zh-Hant/skills/archi-decompose-roadmap/SKILL.md +0 -293
- package/dist/templates/zh-Hant/skills/archi-interview-protocol/SKILL.md +0 -86
- package/dist/templates/zh-Hant/skills/archi-plan-options/SKILL.md +0 -364
- package/dist/templates/zh-Hant/skills/archi-ui-wireframe/SKILL.md +0 -337
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<protocol_inherit>
|
|
2
|
-
**Trigger**: `/archi.inherit`
|
|
2
|
+
**Trigger**: `/archi.inherit [brief_path]`
|
|
3
3
|
**Phase**: Legacy Adoption
|
|
4
|
-
**Goal**:
|
|
4
|
+
**Goal**: 逆向分析已有代码仓库,用分析结果填充 init 部署的文档骨架(`[[__DOCS_DIR__]]`),将项目纳入框架管理。填充空占位符,非覆盖用户既有内容。可选提供 Brief 以补充愿景/路线图(适用于代码库尚空、骨架刚搭的场景)。
|
|
5
5
|
|
|
6
6
|
<meta>
|
|
7
7
|
<style>Analytical, Systematic, Evidence-Based</style>
|
|
@@ -10,14 +10,20 @@
|
|
|
10
10
|
1. **Code-Driven**: 以代码为唯一真相源,禁凭空推测功能。
|
|
11
11
|
2. **AI-Native Perspective**: 分析从 AI Agent 视角撰写。关注:Context Locality、Type Safety、Module Boundaries。
|
|
12
12
|
3. **User Agency First**: AI 的分析须经用户确认。代码解读有歧义时询问用户,禁擅自决定。
|
|
13
|
-
4. **
|
|
13
|
+
4. **Thorough Discovery, Layered Recording**: 全量读取所有非第三方业务代码(排除 node_modules/vendor/dist 等生成物),不设文件数上限。记录按三档分层:核心模块详细记录流程、共享逻辑记录签名和依赖关系、纯工具记录签名和用途。宁可多读不可遗漏——后续协议无法使用未被记录的代码。
|
|
14
14
|
5. **Option Z Everywhere**: 补充提问须包含 `[Z] 自定义`。
|
|
15
15
|
</principles>
|
|
16
16
|
</meta>
|
|
17
17
|
|
|
18
18
|
<step_0_recon>
|
|
19
19
|
**Role**: 情报分析官
|
|
20
|
-
|
|
20
|
+
|
|
21
|
+
**Brief 检测**(仅当用户提供 `[brief_path]` 时):
|
|
22
|
+
1. 解析 `[brief_path]`:提供了路径 → 读取该文件;未提供 → 依次查找 `project-brief.md`(项目根)、`[[__DOCS_DIR__]]/project-brief.md`
|
|
23
|
+
2. 若文件存在且非空:解析 Brief 各 Section,提取项目身份、核心任务、技术偏好、边界约束、补充说明(与 start 的 step_0_ingest 一致)
|
|
24
|
+
3. 若文件不存在或为空:跳过 Brief,后续仅以代码为输入源
|
|
25
|
+
|
|
26
|
+
**代码侦察**:
|
|
21
27
|
1. 读取项目根配置文件(自动识别类型):
|
|
22
28
|
|
|
23
29
|
| 语言/生态 | 配置文件 |
|
|
@@ -30,63 +36,35 @@
|
|
|
30
36
|
| 其他 | 以根目录配置文件为准 |
|
|
31
37
|
|
|
32
38
|
2. 读取 README.md(如存在)。
|
|
33
|
-
3.
|
|
39
|
+
3. 扫描目录结构(完整深度)。
|
|
34
40
|
4. 推断项目特征标签(UI / Data / CLI / Lib / API — 由目录结构、依赖和配置推断)。
|
|
35
|
-
5.
|
|
41
|
+
5. 识别入口文件和核心模块。沿入口文件的 import 链建立模块依赖草图。
|
|
36
42
|
|
|
37
|
-
**Output**: 内部摘要(不输出给用户),进入
|
|
43
|
+
**Output**: 内部摘要(不输出给用户),进入 step_1_analysis。
|
|
38
44
|
</step_0_recon>
|
|
39
45
|
|
|
40
46
|
<step_1_analysis>
|
|
41
|
-
**Role**:
|
|
42
|
-
**扫描策略**:
|
|
47
|
+
**Role**: 首席产品战略官 (CPO)
|
|
48
|
+
**扫描策略**: 深度扫描 — 从入口文件出发,沿调用链读取所有业务文件。大型模块(>10 文件)优先读被多处 import 的文件。
|
|
43
49
|
|
|
44
50
|
**Action**:
|
|
45
51
|
1. 对每个识别出的功能模块:
|
|
46
|
-
-
|
|
52
|
+
- 从入口文件出发,沿 import/调用链逐层读取,直到覆盖该模块的主要业务逻辑
|
|
47
53
|
- 提取主要流程(用户操作 → 系统处理 → 结果)
|
|
48
54
|
- 记录关联文件路径
|
|
49
55
|
2. 对共享/基建代码(utils, middleware, config):
|
|
50
|
-
|
|
56
|
+
读取所有文件,按以下分档记录:
|
|
57
|
+
- **中等档**(业务共享逻辑:auth/validation/error-handling/permission):记录职责 + 导出函数签名 + 被谁依赖
|
|
58
|
+
- **简要档**(纯工具函数:format/slugify/logger/helpers):记录函数名 + 参数签名 + 一句话用途
|
|
59
|
+
两者均写入 map.json publicAPI 字段,确保后续协议可发现可复用。
|
|
51
60
|
3. 从代码中提取领域术语和命名约定。
|
|
52
61
|
|
|
53
|
-
**Output**:
|
|
54
|
-
```
|
|
55
|
-
### 代码分析报告
|
|
56
|
-
> **项目**: [名称] | **类型**: [UI/Data/CLI/Lib/API] | **规模**: ~[文件数] 文件, [目录数] 目录
|
|
57
|
-
|
|
58
|
-
**技术栈**:
|
|
59
|
-
| 类别 | 选型 |
|
|
60
|
-
|:---|:---|
|
|
61
|
-
| 语言 | ... |
|
|
62
|
-
| 框架 | ... |
|
|
63
|
-
| 构建 | ... |
|
|
64
|
-
| 测试 | ... |
|
|
65
|
-
| 部署 | ... |
|
|
66
|
-
|
|
67
|
-
**架构模式**: [推断] — [依据]
|
|
68
|
-
|
|
69
|
-
**功能模块清单**:
|
|
70
|
-
| # | 模块 | 源码位置 | 职责 | 关键流程 |
|
|
71
|
-
|:---|:---|:---|:---|:---|
|
|
72
|
-
| 1 | [名称] | [路径] | [一句话] | [流程1], [流程2] |
|
|
73
|
-
|
|
74
|
-
**共享基建**:
|
|
75
|
-
| 目录 | 职责 |
|
|
76
|
-
|:---|:---|
|
|
77
|
-
| [路径] | [描述] |
|
|
78
|
-
|
|
79
|
-
**领域术语**: [术语列表]
|
|
80
|
-
|
|
81
|
-
**AI 不确定项** (如有):
|
|
82
|
-
- [歧义项]
|
|
83
|
-
```
|
|
62
|
+
**Output**: 向用户输出结构化分析报告 — 含项目概况(名称/类型/规模)、技术栈表(语言/框架/构建/测试/部署)、架构模式及依据、功能模块清单(模块/源码位置/职责/关键流程)、共享基建(目录/职责/关键导出接口)、领域术语、AI 不确定项(如有)。
|
|
84
63
|
|
|
85
64
|
**Gate**: 用户确认或修正。未确认禁进入 step_2。
|
|
86
65
|
</step_1_analysis>
|
|
87
66
|
|
|
88
67
|
<step_2_supplementary>
|
|
89
|
-
**Role**: 产品顾问
|
|
90
68
|
**Trigger**: 仅当 step_1 有 AI 无法确定的项时执行。无歧义则跳过。
|
|
91
69
|
|
|
92
70
|
**Action**: 以选择题形式询问歧义项。
|
|
@@ -118,40 +96,53 @@
|
|
|
118
96
|
|
|
119
97
|
<step_3_constitution>
|
|
120
98
|
**Role**: 首席架构师
|
|
121
|
-
**Input**: Step 1 分析报告 + Step 2 补充(如有)。
|
|
122
|
-
**Action**:
|
|
99
|
+
**Input**: Step 0 Brief 解析(如有)+ Step 1 分析报告 + Step 2 补充(如有)。
|
|
100
|
+
**Action**: 一次性填充 init 部署的文档骨架。**有 Brief 时**:Brief 优先于代码(vision/roadmap/tech_stack);代码仍用于 map、LEG-xx、目录结构。**无 Brief 时**:仅以代码为输入源(保持原逻辑)。
|
|
123
101
|
|
|
124
102
|
### 信息路由规则
|
|
125
103
|
|
|
126
104
|
> 规则文件(`02_tech_stack`、`90_custom_rules` 等)已由 IDE 注入当前上下文,AI 已知其路径,直接写入即可。
|
|
127
105
|
|
|
128
|
-
|
|
106
|
+
**有 Brief 时**(Brief → 目标文件):
|
|
107
|
+
| Brief 内容 | 目标文件 |
|
|
129
108
|
|:---|:---|
|
|
130
|
-
|
|
|
131
|
-
|
|
|
132
|
-
|
|
|
133
|
-
|
|
|
134
|
-
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
|
109
|
+
| 项目身份、目标用户、成功指标、参考灵感 | `[[__DOCS_DIR__]]/global/vision.md` |
|
|
110
|
+
| 技术栈、部署目标、第三方库/服务 | 规则文件 `02_tech_stack` |
|
|
111
|
+
| 核心任务列表 | `[[__DOCS_DIR__]]/global/roadmap.json`(phase-1/2,调用 archi-decompose-roadmap) |
|
|
112
|
+
| 补充说明中的规则/约定/偏好 | 规则文件 `90_custom_rules` |
|
|
113
|
+
| 风格调性(仅ui) | `design_tokens.json` aestheticDirection 等 |
|
|
114
|
+
|
|
115
|
+
**代码中的信息**(始终适用):
|
|
116
|
+
| 信息来源 | 目标文件 |
|
|
117
|
+
|:---|:---|
|
|
118
|
+
| README 描述/特性 | vision.md |
|
|
119
|
+
| 依赖/配置/代码模式 | 02_tech_stack |
|
|
120
|
+
| 目录结构/模块依赖/用户旅程 | map.json |
|
|
121
|
+
| 领域术语/命名约定 | dictionary.json |
|
|
122
|
+
| eslint/prettier 等规范 | 90_custom_rules |
|
|
123
|
+
| 代码中的错误码 | error_codes.json |
|
|
124
|
+
| (仅ui项目)CSS 变量/主题 | design_tokens.json |
|
|
125
|
+
| (仅data项目)Schema/Migration | data_snapshot.json |
|
|
138
126
|
|
|
139
127
|
### 3.1 Vision (`[[__DOCS_DIR__]]/global/vision.md`)
|
|
140
|
-
-
|
|
141
|
-
-
|
|
128
|
+
- **有 Brief**:从 Brief 填充(与 start 一致),代码/README 仅作补充
|
|
129
|
+
- **无 Brief**:从 README + 项目配置推导,无法推导的项标注 `(AI 补全 — 建议用户审查)`
|
|
142
130
|
- 禁保留模板占位符
|
|
143
131
|
|
|
144
132
|
### 3.2 Tech Stack (规则文件 `02_tech_stack`)
|
|
145
|
-
-
|
|
146
|
-
-
|
|
133
|
+
- **有 Brief**:Brief 确定的 → 直接写入;留空/推荐的 → AI 推荐;代码依赖作补充
|
|
134
|
+
- **无 Brief**:已有依赖/配置 → 直接写入;可见规范 → 写入 Coding Standards
|
|
147
135
|
- 须填充完整 Section 1-8
|
|
148
136
|
|
|
149
137
|
### 3.3 Custom Rules (规则文件 `90_custom_rules`)
|
|
150
|
-
-
|
|
151
|
-
-
|
|
138
|
+
- **有 Brief**:从补充说明 + 代码 eslint/prettier 合并
|
|
139
|
+
- **无 Brief**:从 eslint/prettier/editorconfig 提取,从代码模式识别团队约定
|
|
152
140
|
|
|
153
141
|
### 3.4 Roadmap (`[[__DOCS_DIR__]]/global/roadmap.json`)
|
|
154
142
|
|
|
143
|
+
**有 Brief 时**:[[SKILL: archi-decompose-roadmap|基于 Brief 任务列表生成 phase-1/2 任务链]];代码功能模块 → phase-0 LEG-xx(status=done)。合并两者。
|
|
144
|
+
**无 Brief 时**:仅代码功能模块 → phase-0 LEG-xx;phase-1/2 保留空骨架。
|
|
145
|
+
|
|
155
146
|
**结构**:
|
|
156
147
|
```json
|
|
157
148
|
{
|
|
@@ -183,7 +174,6 @@
|
|
|
183
174
|
**规则**:
|
|
184
175
|
- 功能模块 → `phase-0: Legacy`,status `done`,tag `Legacy`,ID 前缀 `LEG-`
|
|
185
176
|
- 共享/基建代码不进 roadmap,仅进 map.json directoryMapping
|
|
186
|
-
- phase-1/2 保留空骨架
|
|
187
177
|
- LEG 间如有依赖关系须在 deps 中体现
|
|
188
178
|
|
|
189
179
|
### 3.5 Task Stub Specs
|
|
@@ -201,11 +191,9 @@
|
|
|
201
191
|
|
|
202
192
|
## 关键流程
|
|
203
193
|
1. **[流程名]**: [A] → [B] → [C]
|
|
204
|
-
2. **[流程名]**: [A] → [B] → [C]
|
|
205
194
|
|
|
206
195
|
## 关联文件
|
|
207
196
|
- [角色]: `[路径]`
|
|
208
|
-
- [角色]: `[路径]`
|
|
209
197
|
```
|
|
210
198
|
|
|
211
199
|
> Stub 是起点,非终态。后续通过 `/archi.edit` 触发补全(自动进入 `step_1_5_enrich` 流程)。
|
|
@@ -215,40 +203,46 @@
|
|
|
215
203
|
- `logicalTopology`: 模块间依赖 → `{ "from", "to", "type" }` (imports / calls / extends)
|
|
216
204
|
- `criticalUserJourneys`: 核心流程 → `{ "name", "steps": ["module → module → ..."] }`
|
|
217
205
|
- `featureRelations`: 扫描代码,识别「聚合型模块」并记录。
|
|
218
|
-
**识别特征**:
|
|
219
|
-
每条记录格式: `{ "aggregator"
|
|
206
|
+
**识别特征**: 某模块遍历/枚举/动态加载同类模块,或其描述为「汇总/列举/注册所有 X」。
|
|
207
|
+
每条记录格式: `{ "aggregator", "sources", "evidence", "checkNote" }`
|
|
220
208
|
|
|
221
209
|
### 3.7 其他全局文档(按需)
|
|
222
210
|
- `dictionary.json`: 从代码提取领域术语
|
|
223
|
-
-
|
|
224
|
-
-
|
|
225
|
-
- [?Data] `data_snapshot.json`: 从 schema/migration 提取
|
|
211
|
+
- (仅ui项目) `design_tokens.json`: 从 CSS 变量/主题提取
|
|
212
|
+
- (仅data项目) `data_snapshot.json`: 从 schema/migration 提取
|
|
226
213
|
- `error_codes.json`: 从代码中的错误定义提取
|
|
227
214
|
|
|
228
|
-
**
|
|
215
|
+
仅ui项目: **UI 概念设计(Adopt 模式)**: [[SKILL: archi-ui-wireframe|调用 skill(adopt 模式),从代码逆向生成 UI 概念设计。]][[NO-SKILL: (Skill 未安装:请阅读 `[[__DOCS_DIR__]]/skills/archi-ui-wireframe/SKILL.md` 并遵循其 Adopt 协议执行)]]
|
|
216
|
+
- 读取代码中的路由定义、页面组件、布局文件
|
|
217
|
+
- 读取 step_3 写入的 design_tokens.json(含代码提取的 CSS 变量/theme)
|
|
218
|
+
- tokens 不完整时触发 skill 内置引导流程
|
|
219
|
+
- 写入 `ui_concept.html` + `ui_context.md`
|
|
220
|
+
- 输出 UI 概念设计摘要,等待用户确认或反馈调整
|
|
221
|
+
|
|
222
|
+
**Output**: 写入所有文件,运行 `npx archi render`。进入 step_4_verify。
|
|
229
223
|
</step_3_constitution>
|
|
230
224
|
|
|
231
|
-
<
|
|
232
|
-
**Role**:
|
|
233
|
-
|
|
234
|
-
1. **Vision 对齐**: vision.md 与代码实际功能一致?
|
|
235
|
-
2. **Tech Stack 一致**: 规则文件 `02_tech_stack` 与 package.json/config 一致?
|
|
236
|
-
3. **Map 覆盖**: map.json 覆盖所有核心目录?
|
|
237
|
-
4. **Roadmap 完整**: phase-0 覆盖所有已识别功能模块?
|
|
238
|
-
5. **Stub 齐全**: 每个 LEG-xx 都有对应 tasks/ 目录和 spec.md?
|
|
239
|
-
6. **Dictionary 无冲突**: 术语无歧义或重复?
|
|
225
|
+
<step_4_verify>
|
|
226
|
+
**Role**: 独立审查官
|
|
227
|
+
[[SUBAGENT: archi-silent-audit|mode: init, context: 审查 step_3 生成的全局文件(vision, tech_stack, roadmap, map, dictionary, stub specs 等)]][[NO-SKILL: (Skill 未安装:请阅读 `[[__DOCS_DIR__]]/skills/archi-silent-audit/SKILL.md`,按 mode: init 的审查维度表逐项检查)]]
|
|
240
228
|
|
|
241
|
-
|
|
242
|
-
</
|
|
229
|
+
[[INCLUDE: shared/verify-result-handling.md]]
|
|
230
|
+
</step_4_verify>
|
|
243
231
|
|
|
244
232
|
<step_5_signoff>
|
|
245
|
-
**Terminal Gate** (
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
233
|
+
**Terminal Gate** (禁止跳过): 标准检查 (task --check + render)。
|
|
234
|
+
|
|
235
|
+
**Pre-signoff Checklist** (Gate 通过后、输出前须逐项确认):
|
|
236
|
+
□ vision.md — 已填充(无 Brief 时: 推导内容标注了 `(AI 补全 — 建议用户审查)`)
|
|
237
|
+
□ 02_tech_stack.md — Section 1-8 完整填充
|
|
238
|
+
□ roadmap.json — 每个功能模块对应一条 LEG-xx(status: done, tag: Legacy)
|
|
239
|
+
□ tasks/LEG-xx_<Slug>/spec.md — 每条 LEG 均有对应 Stub spec(含关联文件列表)
|
|
240
|
+
□ map.json — directoryMapping + logicalTopology + criticalUserJourneys + featureRelations 均已填充
|
|
241
|
+
□ dictionary.json + error_codes.json — 从代码提取完毕
|
|
242
|
+
□ (仅ui项目)design_tokens.json + ui_concept.html + ui_context.md — Adopt 模式已执行
|
|
243
|
+
□ Step 4 Silent Audit — 已执行,所有 CRITICAL 问题已修复
|
|
244
|
+
|
|
245
|
+
**Action** (Checklist 全部确认后):
|
|
252
246
|
1. 运行 `npx archi task` 输出任务概览。
|
|
253
247
|
2. 输出总结。
|
|
254
248
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<protocol_map>
|
|
2
|
-
**Trigger**: `/archi.map`
|
|
2
|
+
**Trigger**: `/archi.map` | 自然语言触发时由 Workflow Dispatch 自动加载
|
|
3
3
|
**Goal**: 扫描项目实际目录结构,与 `map.json` 比对,识别新增/过期/变动,经用户确认后更新架构地图。
|
|
4
4
|
|
|
5
5
|
<meta>
|
|
@@ -10,23 +10,22 @@
|
|
|
10
10
|
2. **Smart Granularity**: 默认目录级;单文件承载多职责时须细化到文件级。
|
|
11
11
|
3. **Architecture Inference**: 新条目的层级归类须参考现有 map 模式 + `02_tech_stack.md`。
|
|
12
12
|
4. **Batch Confirm**: 所有变更一次性展示,用户批量确认。
|
|
13
|
+
5. **IDE-Native First**: 利用 IDE 原生能力驱动执行节奏,本协议定义质量标准和检查点,不对抗 IDE 的规划/执行机制。
|
|
13
14
|
</principles>
|
|
14
15
|
</meta>
|
|
15
16
|
|
|
16
17
|
<step_1_scan>
|
|
17
|
-
**Role**: 测量员
|
|
18
18
|
**Action**:
|
|
19
19
|
1. **Read Map**: 读取 `[[__DOCS_DIR__]]/global/map.json` — 当前架构地图。
|
|
20
20
|
2. **Read Tech Stack**: 读取 `02_tech_stack.md` — 目录结构约定、架构模式。
|
|
21
21
|
3. **Scan Directory Tree**: 扫描项目目录结构。
|
|
22
22
|
- **排除**: `.git/`, `node_modules/`, `dist/`, `build/`, `[[__DOCS_DIR__]]/`, 及 `.gitignore` 中声明的路径。
|
|
23
|
-
- **深度**: 跟随 map.json
|
|
23
|
+
- **深度**: 跟随 map.json 现有条目的粒度模式。
|
|
24
24
|
|
|
25
25
|
**Output**: 内部数据(实际目录树 + 现有 map 结构),不输出给用户。
|
|
26
26
|
</step_1_scan>
|
|
27
27
|
|
|
28
28
|
<step_2_diff>
|
|
29
|
-
**Role**: 比对分析师
|
|
30
29
|
**Action**: 将实际目录树与 map.json 逐条比对,归类为三种差异。
|
|
31
30
|
|
|
32
31
|
| 差异类型 | 判定条件 | 处理 |
|
|
@@ -37,12 +36,7 @@
|
|
|
37
36
|
|
|
38
37
|
### 文件级检测
|
|
39
38
|
|
|
40
|
-
|
|
41
|
-
- 一个文件导出多个不相关的 class/function/module
|
|
42
|
-
- 一个入口文件聚合注册了多个子模块(如路由注册、Store 注册)
|
|
43
|
-
- 一个文件同时服务多个 Task
|
|
44
|
-
|
|
45
|
-
发现此类文件 → 粒度细化到文件级,在 map 中单独登记并描述其包含的职责。
|
|
39
|
+
对新增目录中的文件做快速扫描,识别**单文件多职责**的情况 → 粒度细化到文件级。
|
|
46
40
|
|
|
47
41
|
**Output**: 差异列表(内部),进入 step_3。
|
|
48
42
|
</step_2_diff>
|
|
@@ -53,22 +47,17 @@
|
|
|
53
47
|
|
|
54
48
|
### 归类策略
|
|
55
49
|
|
|
56
|
-
1. **模式匹配**: 参考 map.json
|
|
57
|
-
2. **Tech Stack 约定**: `02_tech_stack.md`
|
|
58
|
-
3. **内容推断**: 读取文件内容(import
|
|
59
|
-
4. **无法确定**: 标记为 `[?]
|
|
50
|
+
1. **模式匹配**: 参考 map.json 同层级已有条目的归类。
|
|
51
|
+
2. **Tech Stack 约定**: `02_tech_stack.md` 中的目录结构规则。
|
|
52
|
+
3. **内容推断**: 读取文件内容(import 关系、导出类型)。
|
|
53
|
+
4. **无法确定**: 标记为 `[?]`,交由用户指定。
|
|
60
54
|
|
|
61
|
-
|
|
62
|
-
- `path`: 目录或文件路径
|
|
63
|
-
- `layer`: 架构层级
|
|
64
|
-
- `description`: 一句话描述职责
|
|
65
|
-
- `[?文件级]` `contains`: 该文件包含的子职责列表
|
|
55
|
+
对每个新增条目填充:`path`、`layer`、`description`、`[?文件级] contains`。
|
|
66
56
|
|
|
67
57
|
**Output**: 已归类的新增条目列表(内部),进入 step_4。
|
|
68
58
|
</step_3_classify>
|
|
69
59
|
|
|
70
60
|
<step_4_propose>
|
|
71
|
-
**Role**: 咨询顾问
|
|
72
61
|
**Action**: 向用户展示完整变更清单。
|
|
73
62
|
|
|
74
63
|
**Output**:
|
|
@@ -83,49 +72,38 @@
|
|
|
83
72
|
#### 过期条目 (将移除)
|
|
84
73
|
| 路径 | 原层级 |
|
|
85
74
|
|:---|:---|
|
|
86
|
-
| src/legacy/old-module/ | Service Layer |
|
|
87
75
|
|
|
88
76
|
#### 新增条目 (将登记)
|
|
89
77
|
| 路径 | 层级 | 描述 | 粒度 |
|
|
90
78
|
|:---|:---|:---|:---|
|
|
91
|
-
| src/services/payment/ | Service Layer | 支付服务模块 | 目录 |
|
|
92
|
-
| src/utils/validators.ts | Shared Layer | 表单校验 + 数据校验 + API 参数校验 | 文件 |
|
|
93
|
-
| src/routes/api.ts [?] | [待指定] | 聚合注册多条 API 路由 | 文件 |
|
|
94
79
|
|
|
95
80
|
#### 疑似重命名
|
|
96
81
|
| 原路径 | 新路径 | 置信度 |
|
|
97
82
|
|:---|:---|:---|
|
|
98
|
-
| src/helpers/ | src/utils/ | 高 (文件内容匹配) |
|
|
99
83
|
|
|
100
84
|
---
|
|
101
|
-
> 回复 **OK**
|
|
102
|
-
> - "src/routes/api.ts 属于 App Layer"
|
|
103
|
-
> - "src/helpers/ 不是重命名,保留原条目"
|
|
104
|
-
> - "新增 src/config/ 为 Config Layer"
|
|
85
|
+
> 回复 **OK** 确认全部;或指定修改。
|
|
105
86
|
```
|
|
106
87
|
|
|
107
88
|
**Gate**: 用户确认后进入 step_5。
|
|
108
89
|
</step_4_propose>
|
|
109
90
|
|
|
110
91
|
<step_5_apply>
|
|
111
|
-
**Role**: 系统管理员
|
|
112
92
|
**Action**:
|
|
113
|
-
1.
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
93
|
+
1. 按确认清单更新 map.json(移除过期、添加新增、处理重命名)。
|
|
94
|
+
2. 更新 `lastUpdated`。
|
|
95
|
+
|
|
96
|
+
**Terminal Gate** (禁止跳过): 标准检查 (task --check + render)。
|
|
97
|
+
|
|
98
|
+
**Pre-signoff Checklist** (Output 前须逐项确认):
|
|
99
|
+
□ 用户已在 step_4 明确确认变更清单(Gate 通过后才执行)
|
|
100
|
+
□ 过期条目已从 directoryMapping 移除
|
|
101
|
+
□ 新增条目已正确归类(path + layer + description 均已填写)
|
|
102
|
+
□ 疑似重命名已明确处理(非静默忽略)
|
|
103
|
+
□ lastUpdated 已更新
|
|
104
|
+
□ Terminal Gate — task --check + render 通过
|
|
123
105
|
|
|
124
|
-
**Output**:
|
|
125
|
-
- **移除**: N 条过期条目
|
|
126
|
-
- **新增**: N 条(含 M 条文件级)
|
|
127
|
-
- **重命名**: N 条
|
|
128
|
-
- **当前 map 总条目数**: X
|
|
106
|
+
**Output**: 更新摘要 — 移除 N 条 / 新增 N 条(含 M 条文件级)/ 重命名 N 条 / 当前总条目数。
|
|
129
107
|
</step_5_apply>
|
|
130
108
|
|
|
131
109
|
</protocol_map>
|