add-coder 0.1.12 → 0.1.13
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/dist/index.js +25 -5
- package/package.json +1 -1
- package/templates/core/agents/add-flow-guardian.md +6 -6
- package/templates/core/agents/add-orchestrator.md +2 -2
- package/templates/core/plans/2026-07/08/{farm-agent-add-coder-npm-package-add-route-v1.md → add-coder-npm-package-add-route-v1.md} +9 -9
- package/templates/core/plans/2026-07/08/{farm-agent-add-coder-npm-package-handoff-v1.md → add-coder-npm-package-handoff-v1.md} +43 -43
- package/templates/core/plans/2026-07/08/{farm-agent-add-coder-npm-package-plan-v1.md → add-coder-npm-package-plan-v1.md} +47 -47
- package/templates/core/reports/REPORT-WORKFLOW.md +2 -2
- package/templates/core/reports/index.md +1 -1
- package/templates/core/rules/project_rules.md +29 -29
- package/templates/core/scripts/mcp-server.ts +17 -17
- package/templates/core/skills/add-paradigm/SKILL.md +18 -16
- package/templates/core/skills/session-init/SKILL.md +3 -3
- package/templates/core/specs/{farm-agent-add-coder-npm-package → add-coder-npm-package}/checklist.md +7 -7
- package/templates/core/specs/{farm-agent-add-coder-npm-package → add-coder-npm-package}/spec.md +12 -12
- package/templates/core/specs/{farm-agent-add-coder-npm-package → add-coder-npm-package}/tasks.md +17 -17
- package/templates/core/templates/01-/346/236/266/346/236/204//343/200/212ADD/345/274/200/345/217/221/345/267/245/344/275/234/350/267/257/345/276/204/344/270/216/346/226/207/346/241/243/345/215/217/345/220/214/350/247/204/350/214/203/343/200/213.md +25 -25
- package/templates/core/templates/TERMINOLOGY.md +1 -1
- package/templates/core/templates/checklist-template.md +1 -1
- package/templates/core/templates/handoff-multi-round-template.md +10 -10
- package/templates/core/templates/handoff-single-round-template.md +1 -1
- package/templates/core/templates/index.md +5 -1
- package/templates/core/templates/prd-incremental-template.md +103 -0
- package/templates/core/templates/prd-incremental-template.schema.json +32 -0
- package/templates/core/templates/prd-standard-template.md +219 -0
- package/templates/core/templates/prd-standard-template.schema.json +27 -0
- package/templates/core/templates/simple-plan-template.md +2 -2
- package/templates/core/templates/standard-plan-template.md +9 -9
- package/templates/core/tools/README.md +2 -2
- package/templates/core/vocabulary/add-governance-vocabulary.md +28 -26
|
@@ -7,12 +7,12 @@ description: "Audit-Driven Development paradigm workflow. Invoke when starting a
|
|
|
7
7
|
|
|
8
8
|
本 Skill 引导你按照 ADD 范式完成功能开发。每次开始新功能、修复 Bug、或修改系统行为时,必须按此工作流执行。
|
|
9
9
|
|
|
10
|
-
**范式边界**(定义在
|
|
10
|
+
**范式边界**(定义在 `{{magicDir}}/rules/project_rules.md` ADD-0):
|
|
11
11
|
- ADD 是开发阶段编程范式,不是运行时范式
|
|
12
12
|
- 反馈闭环消费者:IDE 中的 AI 助手 + 编程人员
|
|
13
13
|
- 运行时范式(裁决层/能力模型)是独立的下一步演化
|
|
14
14
|
|
|
15
|
-
**核心原则**(始终生效,定义在
|
|
15
|
+
**核心原则**(始终生效,定义在 `{{magicDir}}/rules/project_rules.md`):
|
|
16
16
|
- ADD-0:范式边界与消费者定义
|
|
17
17
|
- ADD-0.1:广义文档先行(Documentation First)— Plan → Review → Spec → Code → Checklist → runtime-review → 回归校准。详细流程约束见 ADD-9~ADD-12
|
|
18
18
|
- ADD-1:可观测性优先于功能实现
|
|
@@ -47,7 +47,7 @@ description: "Audit-Driven Development paradigm workflow. Invoke when starting a
|
|
|
47
47
|
> **Plan 是后续 ADD 工作流的输入。** 生成 plan 后如需执行,才启动下方 Step 0。
|
|
48
48
|
|
|
49
49
|
1. **读取模板**:读 `plan-template.md`,禁止凭记忆
|
|
50
|
-
2. **命名规范**:`{项目名}-{功能名}-plan-v1.md` →
|
|
50
|
+
2. **命名规范**:`{项目名}-{功能名}-plan-v1.md` → `{{magicDir}}/plans/{YYYY-MM}/{DD}/`(按当天日期创建子目录)
|
|
51
51
|
3. **必含章节**:
|
|
52
52
|
- 元信息(名称/时间/关联文档/ADD-7审计策略表)
|
|
53
53
|
- 一、背景与目标
|
|
@@ -84,10 +84,12 @@ description: "Audit-Driven Development paradigm workflow. Invoke when starting a
|
|
|
84
84
|
| 规范文档 | `docs/*/knowledge/02-规范/` 或 `03-规范/` | 开发规范、状态机规范、核心规范 |
|
|
85
85
|
| AI 核心文档 | `docs/*/knowledge/03-规范/` | AI 智能体核心规范 |
|
|
86
86
|
|
|
87
|
-
**此外,ADD 工作流的核心产物由
|
|
87
|
+
**此外,ADD 工作流的核心产物由 `{{magicDir}}/templates/` 下的 13 个模板定义**,这些模板不是参考资料,而是每次变更必须产出的文档骨架。分析变更影响范围时,必须同步确认需要创建/更新哪些模板产物:
|
|
88
88
|
|
|
89
89
|
| 模板 | 用途 | 对应阶段 |
|
|
90
90
|
|------|------|---------|
|
|
91
|
+
| `prd-standard-template.md` | 产品/系统需求文档(新建):背景目标 + 用户场景 + 功能需求 + 非功能需求 + 验收标准 | 需求定义 |
|
|
92
|
+
| `prd-incremental-template.md` | 产品/系统需求文档(增量):在已有 PRD 基础上追加/修改/删除 | 需求变更 |
|
|
91
93
|
| `plan-template.md` | 需求方案:元信息 + 背景目标 + 方案选型 + 架构设计 + 实施步骤 + 验收标准 + ADD-7审计策略 | 需求理解 |
|
|
92
94
|
| `add-route-template.md` | Plan→ADD 十阶段执行映射:Step 0-9 具体动作 + Task 映射表 + 审计阶段清单 + 依赖拓扑 | Step 0 |
|
|
93
95
|
| `spec-template.md` | 功能规格:Why / What Changes / Impact / WHEN-THEN Requirements | Step 0~1 |
|
|
@@ -100,7 +102,7 @@ description: "Audit-Driven Development paradigm workflow. Invoke when starting a
|
|
|
100
102
|
| `handoff-single-round-template.md` | 单轮交接:9 章节(含恢复上下文审计查询) | 单轮变更完成后 |
|
|
101
103
|
| `handoff-multi-round-template.md` | 多轮交接:全局拓扑 + 每轮 13 子章节 + 收敛规则 + 启动模板 | 多轮原子事务完成后 |
|
|
102
104
|
|
|
103
|
-
> **AI 首次学习 ADD 范式时,必须读取上述全部
|
|
105
|
+
> **AI 首次学习 ADD 范式时,必须读取上述全部 13 个模板文件。遗漏模板 = 遗漏范式全貌。**
|
|
104
106
|
>
|
|
105
107
|
> **每次根据模板生成文档时(plan/spec/review/handoff),MUST 先重新读取对应的模板文件,再填充内容。禁止凭记忆生成——模板可能已在迭代中更新,记忆中的版本可能不完整。**
|
|
106
108
|
|
|
@@ -147,7 +149,7 @@ find_related_docs({ query: "功能关键词" })
|
|
|
147
149
|
4. **ADD-7 审计策略**:从 Plan 元信息 ADD-7 策略表复制,逐文件填写 targetType/action/beforeState/afterState
|
|
148
150
|
5. **文件清单**:汇总所有涉及文件的 targetType 和操作类型
|
|
149
151
|
|
|
150
|
-
**命名**:`{需求域名}-{核心内容}-add-route-v1.md` →
|
|
152
|
+
**命名**:`{需求域名}-{核心内容}-add-route-v1.md` → `{{magicDir}}/plans/{YYYY-MM}/{DD}/`(与 Plan 同目录)
|
|
151
153
|
|
|
152
154
|
**关键约束**:
|
|
153
155
|
- [ ] add-route 必须先于任何代码变更生成(Step 1 依赖 add-route 中的审计阶段清单)
|
|
@@ -173,7 +175,7 @@ find_related_docs({ query: "功能关键词" })
|
|
|
173
175
|
> **核心原则**:Review 是诊断报告,Plan 是治疗方案。诊断报告的结论必须写进治疗方案,病人才能按修正后的方案治疗。
|
|
174
176
|
|
|
175
177
|
**什么时候触发**:
|
|
176
|
-
- Plan Review
|
|
178
|
+
- Plan Review 已生成(`{{magicDir}}/reviews/{需求域名}-*review-v{n}.md` 存在)
|
|
177
179
|
- Review 中有 P0/P1/P2 问题清单
|
|
178
180
|
- 人类已确认 Review 结论(通过评审)
|
|
179
181
|
|
|
@@ -332,7 +334,7 @@ Plan 级闭包: {业务功能描述}
|
|
|
332
334
|
|
|
333
335
|
## 附录 A:协作文档规范(命名、格式与交互规则)
|
|
334
336
|
|
|
335
|
-
> **目标**:确保
|
|
337
|
+
> **目标**:确保 `{{magicDir}}/specs/`、`{{magicDir}}/reviews/` 下的 spec/review/handoff 文件遵循统一的命名和格式约定,使后续 AI Session 能快速定位和恢复上下文。
|
|
336
338
|
|
|
337
339
|
**在编写任何代码之前,必须先确认本附录中的文件结构已就位。**
|
|
338
340
|
|
|
@@ -340,9 +342,9 @@ Plan 级闭包: {业务功能描述}
|
|
|
340
342
|
|
|
341
343
|
| 文档类型 | 命名规则 | 示例 | 存放位置 |
|
|
342
344
|
|---------|---------|------|---------|
|
|
343
|
-
| 开发任务(specs 三元组) | `项目名-任务名/` | `{{projectName}}-response-strategy/` |
|
|
344
|
-
| review 文件 | `项目名-任务名-round{N}-review.md` | `{{projectName}}-response-strategy-round2-review.md` |
|
|
345
|
-
| handoff 文件 | `项目名-需求名-handoff.md` | `{{projectName}}-co-agent-handoff.md` |
|
|
345
|
+
| 开发任务(specs 三元组) | `项目名-任务名/` | `{{projectName}}-response-strategy/` | `{{magicDir}}/specs/` |
|
|
346
|
+
| review 文件 | `项目名-任务名-round{N}-review.md` | `{{projectName}}-response-strategy-round2-review.md` | `{{magicDir}}/reviews/` |
|
|
347
|
+
| handoff 文件 | `项目名-需求名-handoff.md` | `{{projectName}}-co-agent-handoff.md` | `{{magicDir}}/plans/{YYYY-MM}/{DD}/`(与 Plan 同目录) |
|
|
346
348
|
|
|
347
349
|
**命名规则说明**:
|
|
348
350
|
|
|
@@ -357,7 +359,7 @@ Plan 级闭包: {业务功能描述}
|
|
|
357
359
|
每个 spec 目录 MUST 包含三个文件,形成"需求→执行→验收"闭环:
|
|
358
360
|
|
|
359
361
|
```
|
|
360
|
-
|
|
362
|
+
{{magicDir}}/specs/{任务名}/
|
|
361
363
|
├── spec.md # 需求定义:Why / What Changes / Impact / Boundaries / Requirements
|
|
362
364
|
├── tasks.md # 执行拆分:Preconditions / Forbidden / Tasks / Dependencies / Verification
|
|
363
365
|
└── checklist.md # 验收清单:编号验证项,每条可追溯到 tasks.md 的 Task
|
|
@@ -747,7 +749,7 @@ check_add_route_completeness({ planKeyword: "<Plan 核心关键词>" })
|
|
|
747
749
|
|
|
748
750
|
### 3.5.1 运行 spec checklist
|
|
749
751
|
|
|
750
|
-
检查
|
|
752
|
+
检查 `{{magicDir}}/specs/{task}/checklist.md` 中的所有检查项:
|
|
751
753
|
|
|
752
754
|
- `[T]` 编译期验证项:逐项执行并勾选
|
|
753
755
|
- `[R]` 运行时验证项:保持 `[ ]`,将自动流转到 review-runtime.md
|
|
@@ -774,7 +776,7 @@ check_add_route_completeness({ planKeyword: "<Plan 核心关键词>" })
|
|
|
774
776
|
当所有 `[T]` 项均通过后:
|
|
775
777
|
|
|
776
778
|
1. 读取 `review-runtime-template.md`
|
|
777
|
-
2. 复制为
|
|
779
|
+
2. 复制为 `{{magicDir}}/reviews/{project}-review-runtime.md`
|
|
778
780
|
3. 替换占位符(标题、关联文档路径)
|
|
779
781
|
4. §1 发现列表初始化为"尚无运行时发现"
|
|
780
782
|
5. §1 末尾自动插入所有 `[R]` 项的"待运行时验证"清单
|
|
@@ -1019,7 +1021,7 @@ LIMIT 10;
|
|
|
1019
1021
|
- **§9 后置确认**:逐项确认 tsc/ADD 合规/审计落库
|
|
1020
1022
|
3. **审计查询语句必须可执行**:`query_audit_logs({ targetId: "..." })` 调用参数来自 `record_dev_operation` 落库的 targetId
|
|
1021
1023
|
4. **双向链接**:handoff 文件内必须包含指向对应 plan + review 的链接;review 文件内必须包含指向 handoff 的链接
|
|
1022
|
-
5. **写入位置**:`{项目名}-{需求名}-handoff.md` →
|
|
1024
|
+
5. **写入位置**:`{项目名}-{需求名}-handoff.md` → `{{magicDir}}/plans/`
|
|
1023
1025
|
|
|
1024
1026
|
### 未收敛
|
|
1025
1027
|
|
|
@@ -1038,7 +1040,7 @@ LIMIT 10;
|
|
|
1038
1040
|
|
|
1039
1041
|
### 9.1 读取 report-handoff 模板
|
|
1040
1042
|
|
|
1041
|
-
读取
|
|
1043
|
+
读取 `{{magicDir}}/templates/report-handoff-template.md`,按模板格式在 handoff 中追加 Report Closure 章节。
|
|
1042
1044
|
|
|
1043
1045
|
### 9.2 在 handoff 中追加 Report Closure 章节
|
|
1044
1046
|
|
|
@@ -39,7 +39,7 @@ description: "会话上下文恢复(稀疏推理)。每次新对话启动时
|
|
|
39
39
|
### 1.1 搜索 review-runtime.md 文件
|
|
40
40
|
|
|
41
41
|
```bash
|
|
42
|
-
find
|
|
42
|
+
find {{magicDir}}/reviews/ -name "*review-runtime*" -type f 2>/dev/null
|
|
43
43
|
```
|
|
44
44
|
|
|
45
45
|
### 1.2 逐文件检查未关闭发现
|
|
@@ -100,7 +100,7 @@ query_audit_logs({ action: "RUNTIME_ERROR" }) // ADD-11: 运行时异
|
|
|
100
100
|
### 2.4 加载 Plan 索引(L2 操作惯性 — index.md 预载)
|
|
101
101
|
|
|
102
102
|
```
|
|
103
|
-
读取
|
|
103
|
+
读取 {{magicDir}}/plans/index.md
|
|
104
104
|
```
|
|
105
105
|
|
|
106
106
|
**预期产出**:
|
|
@@ -208,7 +208,7 @@ get_project_context({ scope: "add-state" })
|
|
|
208
208
|
|
|
209
209
|
## 本 SKILL 的执行检查清单
|
|
210
210
|
|
|
211
|
-
- [ ] Step 1: 已扫描
|
|
211
|
+
- [ ] Step 1: 已扫描 `{{magicDir}}/reviews/*review-runtime*` 并汇总未关闭发现
|
|
212
212
|
- [ ] Step 2: 已调用 `query_audit_logs({})`(含 `RUNTIME_ERROR` 查询)
|
|
213
213
|
- [ ] Step 3: 已分析审计日志推断上下文
|
|
214
214
|
- [ ] Step 4: 已构建上下文摘要
|
package/templates/core/specs/{farm-agent-add-coder-npm-package → add-coder-npm-package}/checklist.md
RENAMED
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
- [ ] [E] `.claude/settings.json` 含 hook 配置,matcher 使用标准工具名(`Write`, `Edit`, `Bash`)
|
|
36
36
|
- [ ] [E] `.claude/mcp.json` 存在且格式正确
|
|
37
37
|
- [ ] [E] `.claude/hooks/` 下 12 个脚本存在且可执行
|
|
38
|
-
- [ ] [T] `npx add-coder init --adapter qoder` 生成正确的
|
|
39
|
-
- [ ] [E]
|
|
40
|
-
- [ ] [E]
|
|
38
|
+
- [ ] [T] `npx add-coder init --adapter qoder` 生成正确的 `{{magicDir}}/` 目录 — 证据: (待填写)|审计: (待填写)
|
|
39
|
+
- [ ] [E] `{{magicDir}}/settings.json` matcher 使用双套工具名(`Write|write_to_file`, `Edit|edit_file`, `Bash`)
|
|
40
|
+
- [ ] [E] `{{magicDir}}/hooks/` 下 12 个脚本 + `lib/` 存在
|
|
41
41
|
- [ ] [T] `npx add-coder init --adapter vscode` 生成正确的 `.vscode/` 目录 — 证据: (待填写)|审计: (待填写)
|
|
42
42
|
- [ ] [E] `.vscode/settings.json`、`launch.json`、`tasks.json`、`extensions.json` 存在
|
|
43
43
|
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
- [ ] [T] `--force` 和 `--yes` 互斥,同时指定时报错 — 证据: (待填写)|审计: (待填写)
|
|
75
75
|
- [ ] [T] `add-coder sync` 只同步缺失文件 — 证据: (待填写)|审计: (待填写)
|
|
76
76
|
- [ ] [T] `add-coder status` 检查完整性 — 证据: (待填写)|审计: (待填写)
|
|
77
|
-
- [ ] [T] 已有
|
|
77
|
+
- [ ] [T] 已有 `{{magicDir}}/settings.json` 时 `init` 不覆盖,展示 diff 并交互确认 — 证据: (待填写)|审计: (待填写)
|
|
78
78
|
- [ ] [T] 单元测试:`renderer.ts`、`config-loader.ts`、`detect.ts`、`writer.ts` 全部通过 — 证据: (待填写)|审计: (待填写)
|
|
79
79
|
|
|
80
80
|
---
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
|
|
91
91
|
> ADD 用双层报告替代传统 E2E:代码审查报告(review-implementation.md + review-runtime.md)覆盖实现质量,
|
|
92
92
|
> Runtime Report 体系(gateway.md + boundary-runtime-report.md)覆盖边界合约持续监测。
|
|
93
|
-
> 参考: `policy-update-loop.ts` 的持续反馈闭环模式 +
|
|
93
|
+
> 参考: `policy-update-loop.ts` 的持续反馈闭环模式 + `{{magicDir}}/reports/REPORT-WORKFLOW.md`。
|
|
94
94
|
|
|
95
95
|
- [ ] [T] `review-implementation.md` 已生成,覆盖全部 9 个 Task 的变更范围 — 证据: (待填写)|审计: (待填写)
|
|
96
96
|
- [ ] [T] `review-runtime.md` 已生成(含本 checklist 全部 `[R]` 项清单) — 证据: (待填写)|审计: (待填写)
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
- [ ] [E] Plan/Spec 一致性 — 证据: `check_spec_sync` 结果|审计: (待填写)
|
|
109
109
|
- [ ] [E] Plan/Spec 修订记录 — 证据: `record_dev_operation` 审计 ID|审计: (待填写)
|
|
110
110
|
- [ ] [E] 无新增依赖(模板引擎等) — 证据: `git diff package.json` 无新增 dependency|审计: (待填写)
|
|
111
|
-
- [ ] [E] 不改
|
|
111
|
+
- [ ] [E] 不改 add-coder 业务代码 — 证据: 仅改动 `packages/add-coder/`|审计: (待填写)
|
|
112
112
|
- [ ] [E] 审计日志记录完整 — 证据: `query_audit_logs` 回查确认|审计: (待填写)
|
|
113
113
|
|
|
114
114
|
---
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
> 当所有 `[T]` 和 `[E]` 编译期检查项均为 `[x]` 时(`[R]` 和 `[H]` 项可保持 `[ ]`),AI 必须执行:
|
|
119
119
|
>
|
|
120
120
|
> 1. **读取** `review-implementation-template.md`,逐项填写实现审查内容
|
|
121
|
-
> 2. **读取** `review-runtime-template.md`,复制为
|
|
121
|
+
> 2. **读取** `review-runtime-template.md`,复制为 `{{magicDir}}/reviews/{project}-review-runtime.md`
|
|
122
122
|
> - 替换占位符(标题、关联文档路径)
|
|
123
123
|
> - §1 发现列表初始化为 "尚无运行时发现"
|
|
124
124
|
> - §1 末尾自动插入本 checklist 中所有 `[R]` 项的清单,标记为 "待运行时验证"
|
package/templates/core/specs/{farm-agent-add-coder-npm-package → add-coder-npm-package}/spec.md
RENAMED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
当前 `packages/add-coder/` 是一个不可发布的半成品:
|
|
6
6
|
|
|
7
|
-
1. **模板硬编码**:`templates/` 下所有文件直接来自
|
|
7
|
+
1. **模板硬编码**:`templates/` 下所有文件直接来自 add-coder 项目,包含数据库密码、项目名、特定路径等不可移植内容
|
|
8
8
|
2. **CLI 纯搬运**:`bin/add-coder.js`(113 行 CommonJS)只有 `init/sync/status` 三个命令,全是 `fs.copyFileSync`,无参数化渲染、无配置合并
|
|
9
9
|
3. **无适配层抽象**:`.qoder` 和 `.vscode` 是两套独立静态模板,无共享逻辑。加 Claude 适配需要再复制一套
|
|
10
10
|
4. **VS Code 无 hook 层**:`.vscode/` 只有 MCP 配置,缺少 Qoder 的 11 个 hook 等价物
|
|
@@ -75,14 +75,14 @@
|
|
|
75
75
|
## Impact
|
|
76
76
|
|
|
77
77
|
- Affected specs: 无(本 Plan 为全新举措)
|
|
78
|
-
- Affected code: `packages/add-coder/`(约 90 个文件变更),不修改
|
|
79
|
-
- 父 Plan:
|
|
78
|
+
- Affected code: `packages/add-coder/`(约 90 个文件变更),不修改 add-coder 业务代码
|
|
79
|
+
- 父 Plan: `{{magicDir}}/plans/2026-07/08/add-coder-add-coder-npm-package-plan-v1.md`
|
|
80
80
|
- 依赖: 无
|
|
81
81
|
- 后续依赖: 无
|
|
82
82
|
|
|
83
83
|
## Boundaries
|
|
84
84
|
|
|
85
|
-
- 本次只改造 `packages/add-coder/` 目录,不修改
|
|
85
|
+
- 本次只改造 `packages/add-coder/` 目录,不修改 add-coder 业务代码
|
|
86
86
|
- 本次不新增 AgentAuditPhase 字面量(npm 包工程化,无业务逻辑审计点)
|
|
87
87
|
- 审计通过 `record_dev_operation`(ADD-7)落库 DevOperation 表
|
|
88
88
|
- 模板引擎不引入第三方依赖(Handlebars/EJS 等),用 TypeScript 原生字符串替换
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
|
|
122
122
|
### Requirement: 模板参数化(硬编码清理)
|
|
123
123
|
|
|
124
|
-
系统 SHALL 将 `templates/` 下所有文件中的
|
|
124
|
+
系统 SHALL 将 `templates/` 下所有文件中的 add-coder 硬编码替换为 `{{placeholder}}` 占位符。
|
|
125
125
|
|
|
126
126
|
#### Scenario: 占位符语法
|
|
127
127
|
|
|
@@ -174,11 +174,11 @@
|
|
|
174
174
|
#### Scenario: 三目录部署(core 内容同步到 IDE magic path)
|
|
175
175
|
|
|
176
176
|
- **WHEN** 执行 `init` 渲染 core 模板后
|
|
177
|
-
- **THEN** `templates/core/` 的所有文件 SHALL 同时写入 `.add/`、`.
|
|
177
|
+
- **THEN** `templates/core/` 的所有文件 SHALL 同时写入 `.add/`、`{{magicDir}}/`、`.claude/` 三个目标目录
|
|
178
178
|
- **AND** adapter renderers SHALL 只处理 adapter 专属文件(hooks/mcp.json/settings.json/sync-policy.json),不再单独渲染 core 内容
|
|
179
179
|
|
|
180
180
|
**改造步骤**:
|
|
181
|
-
1. `src/core/renderer.ts`:`renderCore()` 返回值改为输出三份文件的映射(`.add/` +
|
|
181
|
+
1. `src/core/renderer.ts`:`renderCore()` 返回值改为输出三份文件的映射(`.add/` + `{{magicDir}}/` + `.claude/`)
|
|
182
182
|
2. `src/cli/commands/init.ts`:写入阶段对三目录同名文件去重(内容相同则 skip)
|
|
183
183
|
3. `src/adapters/{claude,qoder,vscode}/renderer.ts`:删除 core 渲染逻辑,只保留 hooks + mcp + settings 等 adapter 专属文件
|
|
184
184
|
|
|
@@ -201,7 +201,7 @@
|
|
|
201
201
|
#### Scenario: Qoder 适配器
|
|
202
202
|
|
|
203
203
|
- **WHEN** 执行 `npx add-coder init --adapter qoder`
|
|
204
|
-
- **THEN** 生成正确的
|
|
204
|
+
- **THEN** 生成正确的 `{{magicDir}}/` 目录,hook 配置 matcher 适配双套工具名(`Write|write_to_file`, `Edit|edit_file`, `Bash`)
|
|
205
205
|
|
|
206
206
|
#### Scenario: VS Code 适配器
|
|
207
207
|
|
|
@@ -272,7 +272,7 @@
|
|
|
272
272
|
|
|
273
273
|
#### Scenario: JSON 合并
|
|
274
274
|
|
|
275
|
-
- **WHEN** 用户已有
|
|
275
|
+
- **WHEN** 用户已有 `{{magicDir}}/settings.json` 或 `.vscode/settings.json`
|
|
276
276
|
- **THEN** deep merge,已有 `hooks` 数组追加新 hook 而非全量替换
|
|
277
277
|
|
|
278
278
|
---
|
|
@@ -331,12 +331,12 @@
|
|
|
331
331
|
#### Scenario: 空项目 init
|
|
332
332
|
|
|
333
333
|
- **WHEN** 在空白项目中执行 `npx add-coder init`
|
|
334
|
-
- **THEN** `.add/`
|
|
334
|
+
- **THEN** `.add/` `{{magicDir}}/` `.claude/` 三目录均含完整 ADD 内容(agents/skills/templates/rules/vocabulary/scripts/hooks/plans/specs/reports/tools),`.vscode/` 含 IDE 配置
|
|
335
335
|
|
|
336
336
|
#### Scenario: plans/specs 示例
|
|
337
337
|
|
|
338
338
|
- **WHEN** 用户首次 init
|
|
339
|
-
- **THEN**
|
|
339
|
+
- **THEN** `{{magicDir}}/plans/` 含 add-coder 6轮范例,`{{magicDir}}/specs/` 含 spec/tasks/checklist 范例
|
|
340
340
|
|
|
341
341
|
#### Scenario: 三端兼容
|
|
342
342
|
|
|
@@ -345,7 +345,7 @@
|
|
|
345
345
|
|
|
346
346
|
#### Scenario: 已有配置不覆盖
|
|
347
347
|
|
|
348
|
-
- **WHEN** 用户已有
|
|
348
|
+
- **WHEN** 用户已有 `{{magicDir}}/settings.json` 时执行 `init`
|
|
349
349
|
- **THEN** 不覆盖已有配置,展示 diff 并交互确认
|
|
350
350
|
|
|
351
351
|
#### Scenario: Prisma 迁移幂等
|
package/templates/core/specs/{farm-agent-add-coder-npm-package → add-coder-npm-package}/tasks.md
RENAMED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
## Forbidden
|
|
11
11
|
|
|
12
|
-
- 禁止修改
|
|
12
|
+
- 禁止修改 add-coder 业务代码(`src/`、`docs/` 等)
|
|
13
13
|
- 禁止引入第三方模板引擎(Handlebars/EJS 等)
|
|
14
14
|
- 禁止在模板代码中保留 `process.env.X || "兜底值"` 反模式
|
|
15
15
|
|
|
@@ -30,23 +30,23 @@
|
|
|
30
30
|
- [x] 已有 `add.prisma` 时:交互三选一(跳过/覆盖/diff+备份)
|
|
31
31
|
|
|
32
32
|
- [x] Task 1.1: 清理硬编码 + 参数化 core 模板 — 验证: `grep -r "farm.agent\|farm_secure_pass\|大田精准\|/home/xmm\|/Users/milkytea" templates/` 返回空
|
|
33
|
-
- [x] 15 个 `.md` 模板(plan/spec/tasks/checklist/handoff/review/add-route 等):`docs/大田精准耕播智能决策系统/` → `{{docsDir}}/`、`
|
|
33
|
+
- [x] 15 个 `.md` 模板(plan/spec/tasks/checklist/handoff/review/add-route 等):`docs/大田精准耕播智能决策系统/` → `{{docsDir}}/`、`add-coder-*` → `{{projectName}}-*`
|
|
34
34
|
- [x] 15 个 `.schema.json`:检查确认无硬编码
|
|
35
|
-
- [x] `skills/add-paradigm/SKILL.md`:`/home/xmm/ai/
|
|
36
|
-
- [x] `skills/session-init/SKILL.md`:`
|
|
35
|
+
- [x] `skills/add-paradigm/SKILL.md`:`/home/xmm/ai/add-coder/` → `{{projectRoot}}/`
|
|
36
|
+
- [x] `skills/session-init/SKILL.md`:`add-coder-*` → `{{projectName}}-*`
|
|
37
37
|
- [x] `agents/add-flow-guardian.md`:检查确认
|
|
38
38
|
- [x] `agents/add-orchestrator.md`:检查确认
|
|
39
|
-
- [x] `rules/project_rules.md`:`
|
|
39
|
+
- [x] `rules/project_rules.md`:`add-coder` → `{{projectName}}`、`src/agents/` → `{{sourceDir}}/agents/`
|
|
40
40
|
- [x] `rules/theory-practice-map.toml`:检查确认
|
|
41
41
|
- [x] `vocabulary/add-governance-vocabulary.md`:检查确认
|
|
42
42
|
- [x] `scripts/mcp-server.ts`:`DATABASE_URL || "postgresql://..."` → `process.env.DATABASE_URL`(无兜底值)、`.env.development` → `{{envFilePath}}`
|
|
43
43
|
- [x] `scripts/add-coder-mcp-server.ts`:同上
|
|
44
|
-
- [x]
|
|
45
|
-
- [x]
|
|
46
|
-
- [x]
|
|
47
|
-
- [x]
|
|
44
|
+
- [x] `{{magicDir}}/settings.json`:hook 脚本绝对路径 → `{{projectRoot}}/{{magicDir}}/hooks/`
|
|
45
|
+
- [x] `{{magicDir}}/mcp.json`:`DATABASE_URL` 硬编码密码 → `process.env.DATABASE_URL`
|
|
46
|
+
- [x] `{{magicDir}}/sync-policy.json`:检查确认
|
|
47
|
+
- [x] `{{magicDir}}/hooks/` 下 14 个 `.sh` + `lib/`:项目名提取逻辑 → 使用 `$CLAUDE_PROJECT_DIR` 或 `{{projectRoot}}`
|
|
48
48
|
- [x] `.vscode/` 下 4 个文件:MCP 配置中的项目特定路径 → `{{projectRoot}}`
|
|
49
|
-
- [x] `reports/` 下 7 个文件:`
|
|
49
|
+
- [x] `reports/` 下 7 个文件:`add-coder`、绝对路径 → `{{projectName}}`、`{{projectRoot}}`
|
|
50
50
|
- [x] `tools/README.md`:检查确认
|
|
51
51
|
- [x] 创建 `src/core/renderer.ts`:接收 config 对象,执行 `"{{key}}".replace("{{key}}", config.key)`
|
|
52
52
|
|
|
@@ -66,10 +66,10 @@
|
|
|
66
66
|
- [x] 迁移 `scripts/` → `templates/core/scripts/`
|
|
67
67
|
- [x] 迁移 `reports/` → `templates/core/reports/`
|
|
68
68
|
- [x] 迁移 `tools/` → `templates/core/tools/`
|
|
69
|
-
- [x] 迁移
|
|
70
|
-
- [x] 迁移
|
|
71
|
-
- [x] 迁移
|
|
72
|
-
- [x] 迁移
|
|
69
|
+
- [x] 迁移 `{{magicDir}}/hooks/`(14 个 .sh + lib/) → `templates/adapters/qoder/hooks/`
|
|
70
|
+
- [x] 迁移 `{{magicDir}}/settings.json` → `templates/adapters/qoder/settings.json`
|
|
71
|
+
- [x] 迁移 `{{magicDir}}/mcp.json` → `templates/adapters/qoder/mcp.json`
|
|
72
|
+
- [x] 迁移 `{{magicDir}}/sync-policy.json` → `templates/adapters/qoder/sync-policy.json`
|
|
73
73
|
- [x] 迁移 `.vscode/`(4 个文件) → `templates/adapters/vscode/`
|
|
74
74
|
- [x] 迁移 `debug-dump/`、`repowiki/` → `templates/shared/`(空目录占位)
|
|
75
75
|
- [x] 创建 `templates/adapters/claude/` 目录(空壳)
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
- [x] `doc-format-guard.sh`
|
|
101
101
|
- [x] 实现 `src/adapters/claude/renderer.ts`
|
|
102
102
|
|
|
103
|
-
- [x] Task 3.1: Qoder 适配器实现 — 验证: `npx add-coder init --adapter qoder` 生成正确的
|
|
103
|
+
- [x] Task 3.1: Qoder 适配器实现 — 验证: `npx add-coder init --adapter qoder` 生成正确的 `{{magicDir}}/` 目录
|
|
104
104
|
- [x] 确认 `templates/adapters/qoder/` 下文件已清理 hardcode(第1轮 Task 1.1 已做)
|
|
105
105
|
- [x] `settings.json` 的 matcher 适配:`Write|write_to_file|create_file|CreateFile` 等双套工具名
|
|
106
106
|
- [x] 实现 `src/adapters/qoder/renderer.ts`
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
- [x] `src/cli/commands/init.ts`:init 命令(七步流程:检测 IDE → 加载配置 → 渲染 core → 渲染 adapter → Prisma 注入 → 写入 → 摘要)
|
|
125
125
|
- [x] `src/cli/commands/sync.ts`:sync 命令(只同步缺失文件)
|
|
126
126
|
- [x] `src/cli/commands/status.ts`:status 命令(检查完整性)
|
|
127
|
-
- [x] `src/cli/detect.ts`:IDE 环境检测(扫描
|
|
127
|
+
- [x] `src/cli/detect.ts`:IDE 环境检测(扫描 `{{magicDir}}/` `.claude/` `.vscode/` 存在性)
|
|
128
128
|
- [x] `src/cli/config-loader.ts`:配置加载 + Zod 校验 + 优先级合并(交互式 > 配置文件 > 自动检测 > 默认值)
|
|
129
129
|
- [x] `src/cli/writer.ts`:智能写入(四种模式:交互 / `--yes` / `--force` / `--dry-run`)
|
|
130
130
|
- [x] `bin/add-coder.js` 改为加载 `dist/cli/index.js`
|
|
@@ -195,7 +195,7 @@
|
|
|
195
195
|
- [x] `grep -r "process.env.*||" dist/` 返回空
|
|
196
196
|
- [x] `npx add-coder init` 在空白项目中零配置生成完整 ADD 模板
|
|
197
197
|
- [x] `npx add-coder init --adapter claude` 生成 `.claude/` 目录
|
|
198
|
-
- [x] `npx add-coder init --adapter qoder` 生成
|
|
198
|
+
- [x] `npx add-coder init --adapter qoder` 生成 `{{magicDir}}/` 目录
|
|
199
199
|
- [x] `npx add-coder init --adapter vscode` 生成 `.vscode/` 目录
|
|
200
200
|
- [x] `npm pack` 产出包含 `dist/` + `templates/` + `bin/`,不包含 `src/`
|
|
201
201
|
- [x] `prisma migrate dev --schema=prisma/` 成功创建 DevOperation + AuditLog 表
|
|
@@ -21,9 +21,9 @@ ADD 不是"写代码时顺便打日志",而是一套覆盖全开发周期的
|
|
|
21
21
|
│ │ 🚪 0.6.5 Review 结论回流至 Plan 与 Specs(强制卡位) │
|
|
22
22
|
│ │ 🚪 0.7 原子闭包判定(Plan 级 + 轮次级) │
|
|
23
23
|
│ │ 产物:docs/*/knowledge/ 下的规划说明书、架构文档、规范文档 │
|
|
24
|
-
│ │
|
|
25
|
-
│ │
|
|
26
|
-
│ │
|
|
24
|
+
│ │ {{magicDir}}/plans/{需求域名}-plan-v{n}.md │
|
|
25
|
+
│ │ {{magicDir}}/plans/{需求域名}-add-route-v{n}.md │
|
|
26
|
+
│ │ {{magicDir}}/reviews/{需求域名}-review-v{n}.md │
|
|
27
27
|
│ │ 阈值:check_dps(DPS ≥ 85 方可进入 Step 1) │
|
|
28
28
|
├────────────┼─────────────────────────────────────────────────────────────────┤
|
|
29
29
|
│ Step 1 │ 功能分析与审计阶段定义 │
|
|
@@ -42,8 +42,8 @@ ADD 不是"写代码时顺便打日志",而是一套覆盖全开发周期的
|
|
|
42
42
|
├────────────┼─────────────────────────────────────────────────────────────────┤
|
|
43
43
|
│ Step 3.5 │ 实现审查(ADD-10 意图与实现的语义鸿沟) │
|
|
44
44
|
│ 实现审查 │ 运行 spec checklist [T] 项 → 跨项目联调检查 │
|
|
45
|
-
│ │
|
|
46
|
-
│ │
|
|
45
|
+
│ │ 产物:{{magicDir}}/reviews/{需求域名}-review-implementation-v{n}.md │
|
|
46
|
+
│ │ {{magicDir}}/reviews/{需求域名}-review-runtime-v{n}.md │
|
|
47
47
|
├────────────┼─────────────────────────────────────────────────────────────────┤
|
|
48
48
|
│ Step 4 │ 审计数据验证 │
|
|
49
49
|
│ 审计验证 │ 运行功能 → 收集审计数据 → check_phase_symmetry → check_failure_path │
|
|
@@ -89,7 +89,7 @@ ADD 流程中有四个强制卡位,在任何情况下都不可跳过:
|
|
|
89
89
|
| **每轮原子闭包** | 不是按文件数量拆分,而是按"可独立提交、验证、审计、恢复"的最小业务闭包拆分 |
|
|
90
90
|
| **人类评审节点** | 每轮 spec 必须经过人类 review(spec-review.md),AI 不擅自越过评审进入代码实现 |
|
|
91
91
|
| **三件套不可跳过** | spec.md + tasks.md + checklist.md 三者齐备才能开始写代码 |
|
|
92
|
-
| **日志代理用户 ID** | 所有 `AuditLog` 写入及业务表 `createdBy`/`createdById` 字段统一使用项目日志代理用户 ID 函数(禁止硬编码 `"system"` 等字符串)。详见
|
|
92
|
+
| **日志代理用户 ID** | 所有 `AuditLog` 写入及业务表 `createdBy`/`createdById` 字段统一使用项目日志代理用户 ID 函数(禁止硬编码 `"system"` 等字符串)。详见 `{{magicDir}}/rules/project_rules.md` ADD-4 §日志代理用户 ID |
|
|
93
93
|
| **四层审查** | 方案审查(ADD-9 方向验证)→ 实现审查(ADD-10 语义对齐)→ 运行时纠偏(ADD-11 证据持久化)→ 验收闭环(ADD-12 漂移校准),四道关卡覆盖全生命周期 |
|
|
94
94
|
| **检查项 [T]/[R] 分拆** | checklist 中 [T] = 编译期可验证(AI 直接检查),[R] = 运行时验证(部署后确认,自动流转到 review-runtime.md)。[T] 全部通过时自动生成 review-runtime.md |
|
|
95
95
|
| **跨对话接续** | 下一轮通过 `query_audit_logs` 恢复上游审计上下文,无需人类复述 |
|
|
@@ -125,12 +125,12 @@ ADD 不是万能范式。用错了阶段反而拖慢迭代速度。
|
|
|
125
125
|
| `docs/哲学理论/` | 哲学理论基础文章 | 公开 |
|
|
126
126
|
| `{{docsDir}}/` | 项目文档(需求/架构/规范) | 公开 |
|
|
127
127
|
| `TODO/` | 开源协作 TODO,与 docs/ 平级 | 公开 |
|
|
128
|
-
|
|
|
129
|
-
|
|
|
130
|
-
|
|
|
131
|
-
|
|
|
132
|
-
|
|
|
133
|
-
|
|
|
128
|
+
| `{{magicDir}}/plans/` | 需求方案 + 任务拆分 + 轮间交接手册 | 开发内部 |
|
|
129
|
+
| `{{magicDir}}/reviews/` | 方案评审 + 逐轮 spec 评审 | 开发内部 |
|
|
130
|
+
| `{{magicDir}}/specs/` | 每轮 spec + tasks + checklist(三件套) | 开发内部 |
|
|
131
|
+
| `{{magicDir}}/rules/` | 项目规则文件(权威约束) | 开发内部 |
|
|
132
|
+
| `{{magicDir}}/skills/` | SKILL 行为定义(AI 助手的标准行为模式) | 开发内部 |
|
|
133
|
+
| `{{magicDir}}/scripts/` | 工具脚本 + MCP 服务器 | 开发内部 |
|
|
134
134
|
|
|
135
135
|
### 目录层级决策原则
|
|
136
136
|
|
|
@@ -138,12 +138,12 @@ ADD 不是万能范式。用错了阶段反而拖慢迭代速度。
|
|
|
138
138
|
公开可见 = docs/ + TODO/
|
|
139
139
|
↑ 面向社区、贡献者、学术引用者
|
|
140
140
|
|
|
141
|
-
开发内部 =
|
|
141
|
+
开发内部 = {{magicDir}}/
|
|
142
142
|
↑ 面向 AI 助手 + 核心开发者(不影响外部用户克隆体验)
|
|
143
143
|
```
|
|
144
144
|
|
|
145
145
|
- `TODO/` 与 `docs/` 平级而非嵌套在 `docs/` 下:TODO 是**行动清单**("我们计划做什么"),docs 是**知识资产**("我们做了什么、是什么"),语义不同不应混放
|
|
146
|
-
- `plans/` + `reviews/` + `specs/` 三者都在
|
|
146
|
+
- `plans/` + `reviews/` + `specs/` 三者都在 `{{magicDir}}/` 下:它们是 ADD 开发流程的产物,面向 AI 和开发者,不属于公开文档
|
|
147
147
|
- `plans/` 下同时放 plan + add-route + handoff:三者属于"需求理解与任务拆分"这个完整的大阶段,放在同一个目录保证阶段内文件的连续性
|
|
148
148
|
|
|
149
149
|
---
|
|
@@ -204,13 +204,13 @@ ADD 不是万能范式。用错了阶段反而拖慢迭代速度。
|
|
|
204
204
|
## 五、工作流三大阶段与目录映射
|
|
205
205
|
|
|
206
206
|
```
|
|
207
|
-
需求理解 + 任务拆分 →
|
|
207
|
+
需求理解 + 任务拆分 → {{magicDir}}/plans/ (plan + add-route + handoff)
|
|
208
208
|
│
|
|
209
209
|
↓
|
|
210
|
-
评审 →
|
|
210
|
+
评审 → {{magicDir}}/reviews/ (plan-review + roundN-spec-review)
|
|
211
211
|
│
|
|
212
212
|
↓
|
|
213
|
-
Spec 执行 →
|
|
213
|
+
Spec 执行 → {{magicDir}}/specs/ (三件套:spec + tasks + checklist)
|
|
214
214
|
```
|
|
215
215
|
|
|
216
216
|
每个阶段的产物只放在一个目录下,不在多个目录重复存放。
|
|
@@ -223,12 +223,12 @@ Spec 执行 → .qoder/specs/ (三件套:spec + tasks + c
|
|
|
223
223
|
|
|
224
224
|
| 阶段 | 文件 | 说明 |
|
|
225
225
|
|------|------|------|
|
|
226
|
-
| 需求方案 |
|
|
227
|
-
| 拆分拓扑 |
|
|
228
|
-
| 方案评审 |
|
|
229
|
-
| 交接手册 |
|
|
230
|
-
| 第1轮 spec |
|
|
231
|
-
| 第1轮评审 |
|
|
226
|
+
| 需求方案 | `{{magicDir}}/plans/{{projectName}}-多轮对话能力专家链路优化统一状态管理-plan-v1.md` | 总体设计 |
|
|
227
|
+
| 拆分拓扑 | `{{magicDir}}/plans/{{projectName}}-多轮对话能力专家链路优化统一状态管理-7轮原子事务拆分-add-route-v1.md` | 7 轮依赖拓扑 |
|
|
228
|
+
| 方案评审 | `{{magicDir}}/reviews/{{projectName}}-多轮对话能力专家链路优化统一状态管理-方案评审-review-v1.md` | 可行性验证 |
|
|
229
|
+
| 交接手册 | `{{magicDir}}/plans/{{projectName}}-多轮对话能力专家链路优化统一状态管理-7轮原子事务交接-handoff-v1.md` | 轮间输入输出 |
|
|
230
|
+
| 第1轮 spec | `{{magicDir}}/specs/{{projectName}}-type-convergence-v1/` | 类型收敛三件套 |
|
|
231
|
+
| 第1轮评审 | `{{magicDir}}/reviews/{{projectName}}-多轮对话能力专家链路优化统一状态管理-round1-类型收敛-thinkingLevel路由-spec-review-v1.md` | spec 人工 review |
|
|
232
232
|
| ... | ... | 第2-7 轮同理 |
|
|
233
233
|
|
|
234
234
|
---
|
|
@@ -237,7 +237,7 @@ Spec 执行 → .qoder/specs/ (三件套:spec + tasks + c
|
|
|
237
237
|
|
|
238
238
|
本文档内容同时体现在:
|
|
239
239
|
|
|
240
|
-
-
|
|
240
|
+
- **`{{magicDir}}/rules/project_rules.md`** 中的 ADD-8 规则(权威约束,AI 助手强制执行)
|
|
241
241
|
- **`README.md`** 中的三、ADD 编程范式章节(面向外部读者的简明版本)
|
|
242
242
|
- **本文档**(面向开发者的完整版本,包含案例和决策说明)
|
|
243
243
|
|
|
@@ -383,4 +383,4 @@ Step 8 收敛判断
|
|
|
383
383
|
| `check_dps({ planKeyword })` | Step 0 末尾(进入 Step 1 前) | `"dps": { "enabled": true, "severity": "block", "threshold": 85 }` |
|
|
384
384
|
| `check_rahs({ planKeyword })` | Step 4 末尾 + Step 8 收敛 | `"rahs": { "enabled": true, "severity": "block", "threshold": 90 }` |
|
|
385
385
|
|
|
386
|
-
策略文件位于
|
|
386
|
+
策略文件位于 `{{magicDir}}/sync-policy.json`,重型 add-route 模板已内置对应的 §0.8 / §4.6 闸门段落。
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# ADD 模板术语权威规范
|
|
2
2
|
|
|
3
3
|
> **定位**:项目所有 ADD 模板的术语唯一真相源。模板修改、守卫校验、LLM prompt 均以此为准。
|
|
4
|
-
> **消费方**:16 个模板、`doc-format-guard.sh`、`pre-tool-use.sh`、`AGENTS.md
|
|
4
|
+
> **消费方**:16 个模板、`doc-format-guard.sh`、`pre-tool-use.sh`、`AGENTS.md`、`{{magicDir}}/hooks/lib/vocabulary.sh`
|
|
5
5
|
> **关联 Plan**:`{{projectName}}-add-template-standardization-plan-v1.md`
|
|
6
6
|
|
|
7
7
|
---
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
> 当所有 `[T]` 编译期检查项均为 `[x]` 时(`[R]` 项可保持 `[ ]`),AI 必须执行:
|
|
66
66
|
>
|
|
67
67
|
> 1. **读取** `review-implementation-template.md`,逐项填写实现审查内容
|
|
68
|
-
> 2. **读取** `review-runtime-template.md`,复制为
|
|
68
|
+
> 2. **读取** `review-runtime-template.md`,复制为 `{{magicDir}}/reviews/{project}-review-runtime.md`
|
|
69
69
|
> - 替换占位符(标题、关联文档路径)
|
|
70
70
|
> - §1 发现列表初始化为 "尚无运行时发现"
|
|
71
71
|
> - §1 末尾自动插入本 checklist 中所有 `[R]` 项的清单,标记为 "待运行时验证"
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
### 交接手册与 spec 的优先级
|
|
52
52
|
|
|
53
53
|
- 本 handoff 是新对话的入口索引,负责说明Round位置、上下游依赖、文件边界、高风险误区、恢复关键词和审计闭环。
|
|
54
|
-
- 具体实现细节以对应
|
|
54
|
+
- 具体实现细节以对应 `{{magicDir}}/specs/{spec-name}/spec.md`、`tasks.md`、`checklist.md` 为准。
|
|
55
55
|
- 如果 handoff 摘要与 spec/tasks/checklist 存在颗粒度差异,以 spec/tasks/checklist 为准,不允许按 handoff 的简写自行简化实现。
|
|
56
56
|
- 每轮完成后的 ADD-7 不只写入 `record_dev_operation`,还必须用 `query_audit_logs` 按 action/targetId/keyword 回查确认落库。
|
|
57
57
|
|
|
@@ -114,9 +114,9 @@ query_audit_logs({ keyword: "{ACTION_2}" })
|
|
|
114
114
|
1. session-init SKILL(强制前置)
|
|
115
115
|
2. query_audit_logs({}) → 查看最近所有操作
|
|
116
116
|
3. query_audit_logs({ keyword: "{汇总关键词}" }) → 看本轮所有记录(应该返回 {N} 条)
|
|
117
|
-
4. read "
|
|
118
|
-
5. read "
|
|
119
|
-
6. read "
|
|
117
|
+
4. read "{{magicDir}}/specs/{spec-name}/spec.md"
|
|
118
|
+
5. read "{{magicDir}}/specs/{spec-name}/tasks.md"
|
|
119
|
+
6. read "{{magicDir}}/specs/{spec-name}/checklist.md"
|
|
120
120
|
```
|
|
121
121
|
|
|
122
122
|
Step 3 搜索 `"{汇总关键词}"` 可以一次性拉取全部本轮审计记录,是最快的一键恢复方式。
|
|
@@ -127,9 +127,9 @@ Step 3 搜索 `"{汇总关键词}"` 可以一次性拉取全部本轮审计记
|
|
|
127
127
|
|
|
128
128
|
### spec 文件
|
|
129
129
|
|
|
130
|
-
-
|
|
131
|
-
-
|
|
132
|
-
-
|
|
130
|
+
- `{{magicDir}}/specs/{spec-name}/spec.md`
|
|
131
|
+
- `{{magicDir}}/specs/{spec-name}/tasks.md`
|
|
132
|
+
- `{{magicDir}}/specs/{spec-name}/checklist.md`
|
|
133
133
|
|
|
134
134
|
### 架构文档
|
|
135
135
|
|
|
@@ -258,9 +258,9 @@ query_audit_logs({ keyword: "{汇总关键词}" })
|
|
|
258
258
|
|
|
259
259
|
1. 执行 session-init SKILL
|
|
260
260
|
2. 执行 add-paradigm SKILL(含 Step 0 文档先行)
|
|
261
|
-
3. 读本轮对应
|
|
262
|
-
4. 读本轮对应
|
|
263
|
-
5. 读本轮对应
|
|
261
|
+
3. 读本轮对应 {{magicDir}}/specs/{spec-name}/spec.md(含其中的「文档先行三步闭环」章节,按 spec 的指示更新架构文档)
|
|
262
|
+
4. 读本轮对应 {{magicDir}}/specs/{spec-name}/tasks.md
|
|
263
|
+
5. 读本轮对应 {{magicDir}}/specs/{spec-name}/checklist.md
|
|
264
264
|
6. 按 tasks.md 顺序执行代码修改
|
|
265
265
|
7. 每完成一个 Task:读 checklist.md → 逐项验证 → **附可验证证据** → 勾选
|
|
266
266
|
8. 每完成一个文件修改:record_dev_operation 写入 ADD-7 审计
|
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
**我要做…** | **用这个模板** | **为什么**
|
|
8
8
|
--|--|--
|
|
9
|
+
| 写产品需求文档 | `prd-standard-template.md` | 含 Plan 拆分建议 + 裁决层关联 |
|
|
10
|
+
| 增量更新 PRD | `prd-incremental-template.md` | 在原 PRD 上追加/修改 |
|
|
9
11
|
| 新建开发任务(需要架构设计) | `standard-plan-template.md` | 含方案选型、架构设计、依赖图,适合复杂改动(**默认**)
|
|
10
12
|
| 新建开发任务(简单修复) | `simple-plan-template.md` | 内联 Handoff,无需独立 spec 文件(仅小修改/用户主动提)
|
|
11
13
|
| 定义功能需求 | `spec-template.md` | Why/What/Impact/Requirements
|
|
@@ -20,12 +22,14 @@
|
|
|
20
22
|
| 运行时评审 | `review-runtime-template.md` | 发现列表、流程改进
|
|
21
23
|
| 写代码审查报告 | `report-template.md` | Issue 总览、分类统计
|
|
22
24
|
| 写运行时异常报告 | `runtime-report-template.md` | 发现列表、关联 Issue
|
|
23
|
-
| 写修复验证报告 | `fix-verification-template.md` | 逐条对照、修复趋势
|
|
25
|
+
| 写修复验证报告 | `fix-verification-template.md` | 逐条对照、修复趋势 |
|
|
24
26
|
|
|
25
27
|
## 模板→Schema 索引
|
|
26
28
|
|
|
27
29
|
| 模板 | Schema |
|
|
28
30
|
|------|------|
|
|
31
|
+
| `prd-standard-template.md` | `prd-standard-template.schema.json` |
|
|
32
|
+
| `prd-incremental-template.md` | `prd-incremental-template.schema.json` |
|
|
29
33
|
| `standard-plan-template.md` | `standard-plan-template.schema.json` |
|
|
30
34
|
| `simple-plan-template.md` | `simple-plan-template.schema.json` |
|
|
31
35
|
| `spec-template.md` | `spec-template.schema.json` |
|