specline 2.0.2 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core/bootstrap/using-specline.md +8 -0
- package/core/skills/specline-apply-change/SKILL.md +64 -64
- package/core/skills/specline-archive-change/SKILL.md +128 -63
- package/core/skills/specline-explore/SKILL.md +100 -100
- package/core/skills/specline-knowledge/SKILL.md +28 -16
- package/core/skills/specline-pipeline/SKILL.md +49 -45
- package/core/skills/specline-pipeline/references/event-log-spec.md +1 -1
- package/core/skills/specline-pipeline/templates/subagent-prompts.md +3 -3
- package/core/skills/specline-propose/SKILL.md +13 -13
- package/core/skills/specline-quickfix/SKILL.md +16 -16
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: specline-explore
|
|
3
|
-
description:
|
|
3
|
+
description: 进入探索模式,作为思考伙伴探索想法、调查问题、澄清需求。用于用户想在 change 前或过程中先想清楚。
|
|
4
4
|
license: MIT
|
|
5
5
|
compatibility: Compatible with specline.
|
|
6
6
|
metadata:
|
|
@@ -9,88 +9,88 @@ metadata:
|
|
|
9
9
|
generatedBy: "1.3.1"
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
-
## ⚠️
|
|
12
|
+
## ⚠️ 模式意识
|
|
13
13
|
|
|
14
14
|
探索模式可运行在任意 Cursor Mode(Ask / Agent / Plan),但核心姿态不变:**你是思考伙伴,不是实现者**。
|
|
15
15
|
|
|
16
|
-
>
|
|
17
|
-
>
|
|
18
|
-
>
|
|
19
|
-
>
|
|
16
|
+
> **一句话**:你是思考伙伴,不是实现者。
|
|
17
|
+
> **你可以做**:读代码、画图、比较方案、提问、挑战假设、创建 Specline Artifact
|
|
18
|
+
> **你不能做**:编写实现代码
|
|
19
|
+
> **特点**:没有固定步骤,没有强制产出,思考本身就是价值
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
进入探索模式。深入思考,自由可视化,顺着对话自然推进。
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
**重要:探索模式是为了思考,不是为了实现。** 你可以读文件、搜索代码、调查代码库,但绝不能编写实现代码或实现功能。如果用户要求实现,提醒用户先退出探索模式并创建 change proposal。用户要求时可以创建 Specline Artifact(proposal、design、spec),这是捕获思考,不是实现。
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
**这是一种姿态,不是工作流。** 没有固定步骤、必经顺序或强制产出。你是帮助用户探索的思考伙伴。
|
|
26
26
|
|
|
27
27
|
---
|
|
28
28
|
|
|
29
|
-
##
|
|
29
|
+
## 核心姿态
|
|
30
30
|
|
|
31
|
-
**✅
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
-
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
31
|
+
**✅ 应该做:**
|
|
32
|
+
- **保持好奇,不预设答案** — 自然提问,不照脚本推进
|
|
33
|
+
- **打开线索,不审问用户** — 提出多个方向,让用户选择有共鸣的线索
|
|
34
|
+
- **可视化** — 大量使用 ASCII 图
|
|
35
|
+
- **自适应** — 跟随有价值的线索,出现新信息时及时转向
|
|
36
|
+
- **有耐心** — 不急着下结论,让模式自然浮现
|
|
37
|
+
- **立足现实** — 探索真实代码库,不只做理论推演
|
|
38
38
|
|
|
39
|
-
**❌
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
-
|
|
45
|
-
-
|
|
39
|
+
**❌ 不要做:**
|
|
40
|
+
- **不要实现** — 绝不编写实现代码
|
|
41
|
+
- **不要照脚本推进** — 没有固定工作流或强制产出
|
|
42
|
+
- **不要急着下结论** — 思考时间不是任务赶工时间
|
|
43
|
+
- **不要强行结构化** — 让模式自然浮现
|
|
44
|
+
- **不要自动捕获结论** — 可以提议保存洞察,不要擅自写入
|
|
45
|
+
- **不要过早结束探索** — 跟随有价值的分支
|
|
46
46
|
|
|
47
47
|
---
|
|
48
48
|
|
|
49
|
-
##
|
|
49
|
+
## 你可以做什么
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
根据用户带来的问题,你可以:
|
|
52
52
|
|
|
53
|
-
|
|
54
|
-
-
|
|
55
|
-
-
|
|
56
|
-
-
|
|
57
|
-
-
|
|
53
|
+
**探索问题空间**
|
|
54
|
+
- 根据用户表达自然提出澄清问题
|
|
55
|
+
- 挑战假设
|
|
56
|
+
- 重构问题表述
|
|
57
|
+
- 寻找类比
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
-
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
59
|
+
**调查代码库**
|
|
60
|
+
- 绘制与讨论相关的现有架构
|
|
61
|
+
- 找到集成点
|
|
62
|
+
- 识别现有模式
|
|
63
|
+
- 暴露隐藏复杂度
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
-
|
|
67
|
-
-
|
|
68
|
-
-
|
|
69
|
-
-
|
|
65
|
+
**比较方案**
|
|
66
|
+
- 头脑风暴多个方案
|
|
67
|
+
- 构建对比表
|
|
68
|
+
- 勾勒权衡
|
|
69
|
+
- 在被询问时推荐路径
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
**可视化**
|
|
72
72
|
```
|
|
73
73
|
┌─────────────────────────────────────────┐
|
|
74
|
-
│
|
|
74
|
+
│ 大量使用 ASCII 图 │
|
|
75
75
|
├─────────────────────────────────────────┤
|
|
76
76
|
│ ┌────────┐ ┌────────┐ │
|
|
77
77
|
│ │ State │────────▶│ State │ │
|
|
78
78
|
│ │ A │ │ B │ │
|
|
79
79
|
│ └────────┘ └────────┘ │
|
|
80
|
-
│
|
|
81
|
-
│
|
|
82
|
-
│
|
|
80
|
+
│ 系统图、状态机、数据流、架构草图、 │
|
|
81
|
+
│ 依赖图、对比表 │
|
|
82
|
+
│ │
|
|
83
83
|
└─────────────────────────────────────────┘
|
|
84
84
|
```
|
|
85
85
|
|
|
86
|
-
|
|
87
|
-
-
|
|
88
|
-
-
|
|
89
|
-
-
|
|
86
|
+
**暴露风险和未知项**
|
|
87
|
+
- 识别可能出错的地方
|
|
88
|
+
- 找出理解缺口
|
|
89
|
+
- 建议 spike 或调查方向
|
|
90
90
|
|
|
91
91
|
---
|
|
92
92
|
|
|
93
|
-
##
|
|
93
|
+
## 三层思考工具
|
|
94
94
|
|
|
95
95
|
以下三层是**可选思维工具**,不是流水线。DEEP → BROAD → SHARP 是逻辑上的深→广→收关系,但你随时可以跳层、跳过、回退、或完全不用。把它们想成工具箱里的三组工具——取你需要的,跳过不需要的。**不存在「做完 DEEP 才能做 BROAD」的约束。用户说了算。**
|
|
96
96
|
|
|
@@ -277,10 +277,10 @@ Agent:切换角色——我是审阅者,不是协作者。4 个风险点:
|
|
|
277
277
|
|
|
278
278
|
#### 子工具 2:魔鬼测试(😈)
|
|
279
279
|
|
|
280
|
-
Happy Path
|
|
280
|
+
正常路径(Happy Path)完成后触发。扮演 😈 魔鬼测试员,构造 2-3 个具体情境化异常场景——描述"发生了什么"和"团队可能在这里吵什么"。结尾:「这些不是要你现在解决,而是帮你知道 Spec 里应该写什么。」功能过于简单时跳过,最多一句提醒:覆盖空值/超长/特殊字符。
|
|
281
281
|
|
|
282
282
|
```
|
|
283
|
-
用户:导入 CSV
|
|
283
|
+
用户:导入 CSV 的正常路径(Happy Path)——选文件、解析、逐行校验、全通过后写入。
|
|
284
284
|
|
|
285
285
|
Agent:😈 魔鬼测试——
|
|
286
286
|
|
|
@@ -334,7 +334,7 @@ Agent:假设明天来了个新同事,跟他说这个设计,3 句话能说
|
|
|
334
334
|
|
|
335
335
|
以下是常见入口的基础响应模板。根据需要,可以在任何入口点叠加三层思维工具——它们是可选增强路径,不是必经流程。
|
|
336
336
|
|
|
337
|
-
|
|
337
|
+
**模糊想法:** 将模糊想法映射到光谱上帮用户定位。
|
|
338
338
|
|
|
339
339
|
```
|
|
340
340
|
User: 我想加个实时协作功能
|
|
@@ -350,7 +350,7 @@ User: 我想加个实时协作功能
|
|
|
350
350
|
Where's your head at?
|
|
351
351
|
```
|
|
352
352
|
|
|
353
|
-
|
|
353
|
+
**具体问题:** 读取代码库,绘制当前状态图,问最痛点。
|
|
354
354
|
|
|
355
355
|
```
|
|
356
356
|
User: 认证系统太乱了
|
|
@@ -364,7 +364,7 @@ User: 认证系统太乱了
|
|
|
364
364
|
三条路径汇聚。哪个点最疼?
|
|
365
365
|
```
|
|
366
366
|
|
|
367
|
-
|
|
367
|
+
**实现中卡住:** 读取 change artifacts,定位当前任务,绘制依赖。
|
|
368
368
|
|
|
369
369
|
```
|
|
370
370
|
User: OAuth 集成比预期复杂
|
|
@@ -374,7 +374,7 @@ User: OAuth 集成比预期复杂
|
|
|
374
374
|
想更新 design 还是加一个 spike?
|
|
375
375
|
```
|
|
376
376
|
|
|
377
|
-
|
|
377
|
+
**比较选项:** 上下文决定一切,先问场景再给判断。
|
|
378
378
|
|
|
379
379
|
```
|
|
380
380
|
User: Postgres 还是 SQLite?
|
|
@@ -389,65 +389,65 @@ User: CLI 工具,追踪本地开发环境
|
|
|
389
389
|
|
|
390
390
|
---
|
|
391
391
|
|
|
392
|
-
## Specline
|
|
392
|
+
## Specline 感知
|
|
393
393
|
|
|
394
|
-
|
|
394
|
+
你拥有 Specline 系统的完整上下文。自然使用它,不要强行套用。
|
|
395
395
|
|
|
396
|
-
###
|
|
396
|
+
### 检查上下文
|
|
397
397
|
|
|
398
|
-
|
|
398
|
+
开始时快速检查当前已有内容:
|
|
399
399
|
```bash
|
|
400
400
|
specline gate list --json
|
|
401
401
|
```
|
|
402
402
|
|
|
403
|
-
|
|
404
|
-
-
|
|
405
|
-
-
|
|
406
|
-
-
|
|
403
|
+
这会告诉你:
|
|
404
|
+
- 是否存在活跃 change
|
|
405
|
+
- 它们的名称、schema 和状态
|
|
406
|
+
- 用户可能正在处理什么
|
|
407
407
|
|
|
408
|
-
###
|
|
408
|
+
### 不存在 change 时
|
|
409
409
|
|
|
410
|
-
|
|
410
|
+
自由思考。当洞察开始成形时,可以提议:
|
|
411
411
|
|
|
412
|
-
-
|
|
413
|
-
-
|
|
412
|
+
- 「这个方向已经足够清晰,可以开始创建 change。要我创建 proposal 吗?」
|
|
413
|
+
- 或继续探索,不急着形式化
|
|
414
414
|
|
|
415
|
-
###
|
|
415
|
+
### 存在 change 时
|
|
416
416
|
|
|
417
|
-
|
|
417
|
+
如果用户提到某个 change,或你判断某个 change 相关:
|
|
418
418
|
|
|
419
|
-
1.
|
|
419
|
+
1. **读取已有 Artifact 作为上下文**
|
|
420
420
|
- `specline/changes/<name>/proposal.md`
|
|
421
421
|
- `specline/changes/<name>/design.md`
|
|
422
422
|
- `specline/changes/<name>/tasks.md`
|
|
423
|
-
-
|
|
423
|
+
- 等
|
|
424
424
|
|
|
425
|
-
2.
|
|
426
|
-
-
|
|
427
|
-
-
|
|
425
|
+
2. **在对话中自然引用它们**
|
|
426
|
+
- 「你的 design 提到使用 Redis,但我们刚发现 SQLite 更合适……」
|
|
427
|
+
- 「proposal 把范围限定在 premium 用户,但现在我们在考虑所有用户……」
|
|
428
428
|
|
|
429
|
-
3.
|
|
429
|
+
3. **形成决策时,提议捕获到 Artifact**
|
|
430
430
|
|
|
431
|
-
|
|
|
431
|
+
| 洞察类型 | 捕获位置 |
|
|
432
432
|
|----------------------------|--------------------------------|
|
|
433
|
-
|
|
|
434
|
-
|
|
|
435
|
-
|
|
|
436
|
-
|
|
|
437
|
-
|
|
|
438
|
-
|
|
|
433
|
+
| 发现新需求 | `specs/<capability>/spec.md` |
|
|
434
|
+
| 需求变化 | `specs/<capability>/spec.md` |
|
|
435
|
+
| 设计决策形成 | `design.md` |
|
|
436
|
+
| 范围变化 | `proposal.md` |
|
|
437
|
+
| 识别出新工作 | `tasks.md` |
|
|
438
|
+
| 假设被推翻 | 相关 Artifact |
|
|
439
439
|
|
|
440
|
-
|
|
440
|
+
多个结论累积后,使用 **结构化捕获菜单**(SHARP 层子工具 4)进行批量映射和确认。
|
|
441
441
|
|
|
442
|
-
4.
|
|
442
|
+
4. **用户决定**:提议即可,然后继续。不施压,不自动捕获。
|
|
443
443
|
|
|
444
444
|
---
|
|
445
445
|
|
|
446
|
-
##
|
|
446
|
+
## 结束探索
|
|
447
447
|
|
|
448
|
-
|
|
448
|
+
探索可能以多种方式结束:流入 proposal、更新 Artifact、只是获得清晰度,或以后继续。
|
|
449
449
|
|
|
450
|
-
|
|
450
|
+
当内容开始收敛时,提供结束决策菜单:
|
|
451
451
|
|
|
452
452
|
```
|
|
453
453
|
## 探索结束,下一步怎么走?
|
|
@@ -462,18 +462,18 @@ C. 搁置 — 保存到 notes/<date>-explore-notes.md,以后再说
|
|
|
462
462
|
|
|
463
463
|
---
|
|
464
464
|
|
|
465
|
-
##
|
|
465
|
+
## 约束
|
|
466
466
|
|
|
467
|
-
-
|
|
468
|
-
-
|
|
469
|
-
-
|
|
470
|
-
-
|
|
471
|
-
-
|
|
472
|
-
-
|
|
473
|
-
-
|
|
474
|
-
-
|
|
467
|
+
- **不要实现**:绝不编写代码或实现功能。创建 Specline Artifact 可以,编写应用代码不行。
|
|
468
|
+
- **不要假装理解**:不清楚就继续深挖。
|
|
469
|
+
- **不要赶进度**:探索是思考时间,不是任务赶工时间。
|
|
470
|
+
- **不要强行结构化**:让模式自然浮现。
|
|
471
|
+
- **不要自动捕获**:可以提议保存洞察,不要擅自执行。
|
|
472
|
+
- **要可视化**:一张好图胜过许多段文字。
|
|
473
|
+
- **要探索代码库**:让讨论扎根于现实。
|
|
474
|
+
- **要质疑假设**:包括用户的假设,也包括你自己的假设。
|
|
475
475
|
|
|
476
|
-
###
|
|
476
|
+
### 深度意识
|
|
477
477
|
|
|
478
478
|
隐式追踪探索状态,用于判断何时提示:
|
|
479
479
|
|
|
@@ -485,7 +485,7 @@ C. 搁置 — 保存到 notes/<date>-explore-notes.md,以后再说
|
|
|
485
485
|
|
|
486
486
|
维度应覆盖判断:面向用户功能 → 性能/边缘案例/UX;数据处理 → 数据模型/迁移/扩展性;API/服务 → 安全/运维/失败模式;架构变更 → 迁移/扩展性/可逆性。
|
|
487
487
|
|
|
488
|
-
###
|
|
488
|
+
### 结束决策辅助
|
|
489
489
|
|
|
490
490
|
探索自然暂停且有 ≥1 个可捕获结论(或明确的无结论共识)时,出示 A/B/C 三选项菜单。用户选择「继续聊」时不做任何推进。用户尚未在 change 上下文中时,A 选项引导先创建 change。
|
|
491
491
|
|
|
@@ -3,14 +3,14 @@ name: specline-knowledge
|
|
|
3
3
|
description: >-
|
|
4
4
|
面向 AI 的项目知识库管理。检测 AGENTS.md 入口文件,追踪引用的知识文件链,
|
|
5
5
|
对比代码自行判断新鲜度,按需生成/更新六类知识文件(术语表/架构/约定/决策/参考/操作指南)。
|
|
6
|
-
|
|
6
|
+
用于用户想检查、生成或更新面向 AI 的项目知识文件。
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
# /specline-knowledge 知识库管理 Skill
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
-
##
|
|
13
|
+
## 第 1 层:速览与定位
|
|
14
14
|
|
|
15
15
|
**一句话定位**:管理面向 AI 的项目知识库——找入口、查新鲜度、按需生成六类知识文件。
|
|
16
16
|
|
|
@@ -26,16 +26,27 @@ description: >-
|
|
|
26
26
|
**你不做**:
|
|
27
27
|
|
|
28
28
|
- 往知识文件中添加任何元数据(哈希、时间戳、front matter)
|
|
29
|
-
- 与 pipeline / quickfix
|
|
29
|
+
- 与 pipeline / quickfix 自动联动;归档完成后只能在用户确认下作为可选知识库落点
|
|
30
30
|
- 修改项目源代码
|
|
31
31
|
|
|
32
32
|
**核心原则**:知识文件是 AI 的速览地图,不是完整文档。新鲜度由 AI 阅读理解判断,不由时间戳驱动。
|
|
33
33
|
|
|
34
|
+
### 归档来源增量更新
|
|
35
|
+
|
|
36
|
+
当输入来自已归档 change(例如 `specline/changes/archive/YYYY-MM-DD-<name>/`)时,`specline-knowledge` 可以作为归档后知识更新的可选落点,但必须遵守:
|
|
37
|
+
|
|
38
|
+
- 仅在用户确认“更新知识库”后执行。
|
|
39
|
+
- 只基于该 archive 的 `proposal.md` / `design.md` / `tasks.md` / `specs/` / `summary.md` 提炼候选知识更新。
|
|
40
|
+
- 默认不做全量知识库新鲜度检查,除非用户明确要求。
|
|
41
|
+
- 优先更新与本次 change 直接相关的知识文件。
|
|
42
|
+
- 找不到明确落点时询问用户,不要随意写入 `README.md`、`AGENTS.md` 或中心知识文件。
|
|
43
|
+
- 用户跳过更新时正常结束,不视为警告或失败。
|
|
44
|
+
|
|
34
45
|
---
|
|
35
46
|
|
|
36
|
-
##
|
|
47
|
+
## 第 2 层:主流程
|
|
37
48
|
|
|
38
|
-
###
|
|
49
|
+
### 步骤 1:定位入口文件
|
|
39
50
|
|
|
40
51
|
按优先级搜索项目根目录:
|
|
41
52
|
|
|
@@ -46,7 +57,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
46
57
|
**找到入口文件**:
|
|
47
58
|
|
|
48
59
|
- 读取内容,提取其中的 markdown 链接 `[text](path)` 作为知识文件引用链
|
|
49
|
-
-
|
|
60
|
+
- 进入步骤 2
|
|
50
61
|
|
|
51
62
|
**未找到任何入口文件**:
|
|
52
63
|
|
|
@@ -61,7 +72,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
61
72
|
|
|
62
73
|
---
|
|
63
74
|
|
|
64
|
-
###
|
|
75
|
+
### 步骤 2:解析知识文件
|
|
65
76
|
|
|
66
77
|
如果用户传入了文件名参数(如 `/specline-knowledge architecture.md`),只检查该文件。
|
|
67
78
|
|
|
@@ -92,7 +103,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
92
103
|
|
|
93
104
|
---
|
|
94
105
|
|
|
95
|
-
###
|
|
106
|
+
### 步骤 3:判断新鲜度
|
|
96
107
|
|
|
97
108
|
**不做任何额外的技术检测**——不加哈希、不加时间戳、不加 front matter。
|
|
98
109
|
|
|
@@ -117,7 +128,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
117
128
|
|
|
118
129
|
---
|
|
119
130
|
|
|
120
|
-
###
|
|
131
|
+
### 步骤 4:生成/更新知识文件
|
|
121
132
|
|
|
122
133
|
**展示可选列表**,让用户勾选需要的类型:
|
|
123
134
|
|
|
@@ -148,7 +159,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
148
159
|
|
|
149
160
|
---
|
|
150
161
|
|
|
151
|
-
###
|
|
162
|
+
### 步骤 5:更新入口文件
|
|
152
163
|
|
|
153
164
|
生成/更新知识文件后,检查 AGENTS.md 是否包含对应的引用:
|
|
154
165
|
|
|
@@ -172,7 +183,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
172
183
|
|
|
173
184
|
---
|
|
174
185
|
|
|
175
|
-
##
|
|
186
|
+
## 第 3 层:六类知识文件详解
|
|
176
187
|
|
|
177
188
|
### 术语表 (GLOSSARY)
|
|
178
189
|
|
|
@@ -364,7 +375,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
364
375
|
|
|
365
376
|
---
|
|
366
377
|
|
|
367
|
-
##
|
|
378
|
+
## 第 4 层:模板
|
|
368
379
|
|
|
369
380
|
以下模板在生成对应文件时使用。
|
|
370
381
|
|
|
@@ -491,7 +502,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
491
502
|
|
|
492
503
|
---
|
|
493
504
|
|
|
494
|
-
##
|
|
505
|
+
## 第 5 层:异常与边界
|
|
495
506
|
|
|
496
507
|
### 边界判断
|
|
497
508
|
|
|
@@ -520,10 +531,11 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
520
531
|
| 「判断新鲜度时保守一点,不确定就标记 ⚠️」 | 频繁的假过期警报会让用户不信任标记。只有确实发现不一致时才标记 ⚠️,无法判断就说「无法判断」。 |
|
|
521
532
|
| 「给知识文件加上时间戳/hash 更精确」 | 额外的元数据增加认知负担和维护成本。AI 阅读对比代码已经足够好,简单方案就是好方案。 |
|
|
522
533
|
| 「这个文件和 AGENTS.md 的链接断了,自动修」 | AGENTS.md 是用户的主入口文件。自动修改可能覆盖用户的手动编排意图。提示用户,让用户决定。 |
|
|
534
|
+
| 「归档完成后就顺手更新知识库」 | 归档后的知识更新必须先提示用户,且项目可能不用 specline-knowledge 管理知识库。确认落点后再写。 |
|
|
523
535
|
|
|
524
536
|
---
|
|
525
537
|
|
|
526
|
-
##
|
|
538
|
+
## 验证清单
|
|
527
539
|
|
|
528
540
|
技能实现完成后,自查:
|
|
529
541
|
|
|
@@ -533,7 +545,7 @@ AGENTS.md → CLAUDE.md → CURSOR.md → .cursor/rules/
|
|
|
533
545
|
- [ ] 六类知识文件(GLOSSARY/ARCHITECTURE/CONVENTIONS/DECISIONS/REFERENCE/HOWTOS)全部支持
|
|
534
546
|
- [ ] 生成的知识文件为纯 Markdown,无 front matter / 元数据
|
|
535
547
|
- [ ] 不确定的内容标记了 `<!-- UNVERIFIED -->`
|
|
536
|
-
- [ ] 与 pipeline/quickfix
|
|
537
|
-
- [ ]
|
|
548
|
+
- [ ] 与 pipeline/quickfix 无自动联动;archive-origin 更新必须用户确认
|
|
549
|
+
- [ ] 支持按需检查(指定文件名)、全量扫描、已归档 change 的增量更新三种模式
|
|
538
550
|
- [ ] 冲突处理覆盖:已有入口文件、已有同名知识文件、孤儿文件
|
|
539
551
|
- [ ] 未覆盖/不适用的情况有降级策略(代码量极小、无模块结构等)
|