@itradingai/aiwiki 0.2.18 → 0.2.20
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 +16 -12
- package/dist/src/app.js +9 -17
- package/dist/src/ingest.js +52 -27
- package/dist/src/lint.js +84 -1
- package/dist/src/payload.js +25 -10
- package/dist/src/wiki-entry.js +3 -3
- package/dist/src/workspace.js +18 -9
- package/docs/20260607-aiwiki-feature-pruning-plan.md +468 -0
- package/docs/20260607-aiwiki-long-term-operating-roadmap.md +409 -0
- package/docs/AGENT_HANDOFF.md +6 -7
- package/docs/FAQ.md +8 -2
- package/docs/README.md +8 -4
- package/docs/RELEASE.md +9 -14
- package/docs/ROADMAP.md +5 -0
- package/docs/SHOWCASE.md +19 -9
- package/docs/USAGE.md +23 -19
- package/docs/development-log.md +227 -0
- package/examples/demo-run/README.md +28 -0
- package/examples/demo-run/context-output.json +341 -0
- package/examples/demo-run/ingest-agent-output.txt +25 -0
- package/examples/demo-run/ingest-file-output.txt +23 -0
- package/examples/demo-run/input/agent-enriched-payload.json +88 -0
- package/examples/demo-run/input/local-article.md +5 -0
- package/examples/demo-run/lint-output.json +46 -0
- package/examples/demo-run/query-output.txt +54 -0
- package/examples/demo-run/setup-output.txt +9 -0
- package/examples/demo-run/status-output.txt +20 -0
- package/examples/obsidian-vault-sample/02-raw/articles/llm-wiki-notes.md +32 -0
- package/examples/obsidian-vault-sample/02-raw/articles/local-article.md +33 -0
- package/examples/obsidian-vault-sample/03-sources/article-cards/llm-wiki-notes.md +62 -0
- package/examples/obsidian-vault-sample/03-sources/article-cards/local-article.md +58 -0
- package/examples/obsidian-vault-sample/04-claims/_suggestions/llm-wiki-notes-claims.md +58 -0
- package/examples/obsidian-vault-sample/05-wiki/source-knowledge/llm-wiki-notes.md +103 -0
- package/examples/obsidian-vault-sample/05-wiki/source-knowledge/local-article.md +72 -0
- package/examples/obsidian-vault-sample/06-assets/_suggestions/llm-wiki-notes-assets.md +29 -0
- package/examples/obsidian-vault-sample/07-topics/ready/llm-wiki-notes-topics.md +29 -0
- package/examples/obsidian-vault-sample/08-outputs/outlines/llm-wiki-notes-outline.md +43 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603905-085f05/payload.json +24 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603905-085f05/processing-summary.md +56 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603905-085f05/raw.md +33 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603905-085f05/source-card.md +58 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603905-085f05/wiki-entry.md +72 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/creative-assets.md +29 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/draft-outline.md +43 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/payload.json +91 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/processing-summary.md +67 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/raw.md +32 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/source-card.md +62 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/topics.md +29 -0
- package/examples/obsidian-vault-sample/09-runs/20260608-160603980-89f570/wiki-entry.md +103 -0
- package/examples/obsidian-vault-sample/_system/index.md +37 -0
- package/examples/obsidian-vault-sample/_system/log.md +8 -0
- package/examples/obsidian-vault-sample/_system/purpose.md +31 -0
- package/examples/obsidian-vault-sample/_system/schemas/aiwiki-frontmatter.md +21 -0
- package/examples/obsidian-vault-sample/_system/templates/review-note.md +16 -0
- package/examples/obsidian-vault-sample/_system/templates/source-card.md +34 -0
- package/examples/obsidian-vault-sample/aiwiki.yaml +18 -0
- package/examples/obsidian-vault-sample/dashboards/AIWiki Home.md +31 -0
- package/examples/obsidian-vault-sample/dashboards/Recent Runs.md +10 -0
- package/examples/obsidian-vault-sample/dashboards/Review Queue.md +12 -0
- package/examples/obsidian-vault-sample/dashboards/Source Cards.md +10 -0
- package/examples/obsidian-vault-sample/dashboards/Topic Pipeline.md +10 -0
- package/examples/obsidian-vault-sample/dashboards/Wiki Entries.md +10 -0
- package/package.json +13 -2
- package/skill/LINT_PROTOCOL.md +6 -4
- package/skill/SKILL.md +12 -5
- package/docs/POSITIONING_CONTEXT_COMPILER_PLAN.md +0 -347
|
@@ -0,0 +1,468 @@
|
|
|
1
|
+
# AIWiki 功能精简与开发重排方案
|
|
2
|
+
|
|
3
|
+
日期:2026-06-07
|
|
4
|
+
对象:AIWiki 基础版
|
|
5
|
+
状态:已同步到每日自动化队列
|
|
6
|
+
|
|
7
|
+
## 1. 结论
|
|
8
|
+
|
|
9
|
+
AIWiki 基础版下一步不应该继续横向扩功能,而应该先把公开命令、默认目录、入库产物、lint 修复和 Agent 协作方式收敛稳定。
|
|
10
|
+
|
|
11
|
+
当前推荐方向:
|
|
12
|
+
|
|
13
|
+
- 保留基础版作为 Agent-first 本地知识上下文后端。
|
|
14
|
+
- 人类可见命令保持少而清晰。
|
|
15
|
+
- 面向 Agent 的自动处理通过 `--json`、issues、actions、safe-fix 信号完成。
|
|
16
|
+
- 老用户的空目录清理并入 `aiwiki lint`,不新增 `aiwiki cleanup dirs`。
|
|
17
|
+
- Pro 功能等待基础版目录、lint、doctor 契约稳定后再继续。
|
|
18
|
+
|
|
19
|
+
已经同步到队列:
|
|
20
|
+
|
|
21
|
+
- `AIWIKI-006`:合并执行命令面、目录契约、入库降噪、lint safe-fix、Agent 自动整理。
|
|
22
|
+
- `AIWIKI-007`:在 `AIWIKI-006` 之后做样例、文档一致性、全链路回归和发布验证。
|
|
23
|
+
- `PRO-008`:阻塞等待 `AIWIKI-006` 完成或用户明确豁免。
|
|
24
|
+
|
|
25
|
+
## 2. 基础版产品边界
|
|
26
|
+
|
|
27
|
+
AIWiki 基础版的目标是:
|
|
28
|
+
|
|
29
|
+
> 把宿主 Agent 已经读取、理解和判断过的资料,稳定落成可追踪、可查询、可复用的本地 Markdown 知识资产。
|
|
30
|
+
|
|
31
|
+
基础版应该坚持:
|
|
32
|
+
|
|
33
|
+
- 用户命令仍然是 `aiwiki`。
|
|
34
|
+
- 单知识库。
|
|
35
|
+
- 不内置网页抓取。
|
|
36
|
+
- 不内置 LLM 总结。
|
|
37
|
+
- 不做向量数据库。
|
|
38
|
+
- 不做 RSS、定时采集、批量 URL 队列。
|
|
39
|
+
- 不做多知识库管理。
|
|
40
|
+
- 不做重型 review / retain / FSRS。
|
|
41
|
+
- 不做企业 RBAC。
|
|
42
|
+
- 不因为“看起来像插件”就单独做插件包装。
|
|
43
|
+
|
|
44
|
+
基础版真正要做好的事情:
|
|
45
|
+
|
|
46
|
+
- 接收 Agent payload。
|
|
47
|
+
- 生成 Markdown 知识资产。
|
|
48
|
+
- 维护 source card、wiki entry、run summary、processing summary。
|
|
49
|
+
- 查询本地上下文。
|
|
50
|
+
- 检查结构、证据边界和安全修复项。
|
|
51
|
+
- 同步宿主 Agent skill。
|
|
52
|
+
|
|
53
|
+
## 3. 当前必须调整的三件事
|
|
54
|
+
|
|
55
|
+
### 3.1 命令面收敛
|
|
56
|
+
|
|
57
|
+
主路径保留:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
aiwiki setup
|
|
61
|
+
aiwiki agent sync
|
|
62
|
+
aiwiki agent check
|
|
63
|
+
aiwiki ingest-agent
|
|
64
|
+
aiwiki ingest-file
|
|
65
|
+
aiwiki context
|
|
66
|
+
aiwiki query
|
|
67
|
+
aiwiki lint
|
|
68
|
+
aiwiki status
|
|
69
|
+
aiwiki doctor
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
这些命令覆盖安装、Agent 对接、入库、查询、检查和诊断,边界清楚,不会暗示 AIWiki 具备网页抓取、多知识库、复习系统或 Pro 自动化能力。
|
|
73
|
+
|
|
74
|
+
从主 help 和快速开始中降级,但保留兼容:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
aiwiki agent install
|
|
78
|
+
aiwiki init
|
|
79
|
+
aiwiki ingest-url
|
|
80
|
+
aiwiki config show
|
|
81
|
+
aiwiki prompt agent
|
|
82
|
+
aiwiki ingest-agent --payload
|
|
83
|
+
aiwiki next
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
处理原则:
|
|
87
|
+
|
|
88
|
+
- 不立即删除,避免老脚本断裂。
|
|
89
|
+
- 从 README、USAGE、skill 主路径移出。
|
|
90
|
+
- 放到 legacy / advanced 区域。
|
|
91
|
+
- `agent install` 推荐改用 `agent sync`。
|
|
92
|
+
- `init` 推荐改用 `setup`。
|
|
93
|
+
- `ingest-url` 明确说明不是网页抓取器,只是兼容入口。
|
|
94
|
+
- `next` 暂时从主路径降级;如果不能重做成 Agent-readable 加工建议,就并入 `status` 或 `lint`。
|
|
95
|
+
|
|
96
|
+
明确不要新增:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
aiwiki cleanup dirs
|
|
100
|
+
aiwiki review
|
|
101
|
+
aiwiki retain
|
|
102
|
+
aiwiki kb add
|
|
103
|
+
aiwiki kb list
|
|
104
|
+
aiwiki kb default
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
原因:
|
|
108
|
+
|
|
109
|
+
- `cleanup dirs` 应该由 `lint --fix-empty-dirs` 承接。
|
|
110
|
+
- `review` / `retain` 会把基础版推向复习和审核系统。
|
|
111
|
+
- `kb *` 属于 Pro,不属于基础版。
|
|
112
|
+
|
|
113
|
+
### 3.2 默认目录契约收敛
|
|
114
|
+
|
|
115
|
+
用户已经抓取 60 多篇文章后,仍有大量目录为空,说明这些目录不是基础流程必需品。
|
|
116
|
+
|
|
117
|
+
新工作区默认只创建核心目录:
|
|
118
|
+
|
|
119
|
+
```text
|
|
120
|
+
02-raw/articles
|
|
121
|
+
03-sources/article-cards
|
|
122
|
+
05-wiki/source-knowledge
|
|
123
|
+
09-runs
|
|
124
|
+
dashboards
|
|
125
|
+
_system
|
|
126
|
+
_system/schemas
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
增强目录按需创建:
|
|
130
|
+
|
|
131
|
+
```text
|
|
132
|
+
04-claims/_suggestions
|
|
133
|
+
06-assets/_suggestions
|
|
134
|
+
07-topics/ready
|
|
135
|
+
08-outputs/outlines
|
|
136
|
+
_system/templates
|
|
137
|
+
_system/logs
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
处理原则:
|
|
141
|
+
|
|
142
|
+
- `setup` 只创建核心目录。
|
|
143
|
+
- `ingest` 只有在 payload 内容或 `request.outputs` 明确需要时,才创建增强目录。
|
|
144
|
+
- `doctor` 不把缺少增强目录当成错误。
|
|
145
|
+
- `lint` / `context` 对缺少增强目录保持安静。
|
|
146
|
+
- 老工作区已有增强目录时保留兼容。
|
|
147
|
+
|
|
148
|
+
### 3.3 老用户空目录清理
|
|
149
|
+
|
|
150
|
+
不新增独立命令。
|
|
151
|
+
|
|
152
|
+
推荐路径:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
aiwiki lint --json
|
|
156
|
+
aiwiki lint --fix-empty-dirs --json
|
|
157
|
+
aiwiki lint --json
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
安全规则:
|
|
161
|
+
|
|
162
|
+
- `aiwiki lint` 默认只报告,不删除。
|
|
163
|
+
- 只有显式传入 `--fix-empty-dirs` 才允许删除。
|
|
164
|
+
- 只删除已知的空增强目录。
|
|
165
|
+
- 可删除空的已知增强父目录。
|
|
166
|
+
- 永远不删除核心目录。
|
|
167
|
+
- 永远不删除未知目录。
|
|
168
|
+
- 永远不删除非空目录。
|
|
169
|
+
- 永远不删除文件。
|
|
170
|
+
- JSON 输出必须列出 `would_remove`、`removed`、`kept_non_empty`、`skipped_core`、`skipped_unknown`。
|
|
171
|
+
- JSON 输出必须给 Agent 一个稳定的 `only_safe_fixes` 信号。
|
|
172
|
+
|
|
173
|
+
Agent 自动整理流程:
|
|
174
|
+
|
|
175
|
+
1. 运行 `aiwiki lint --json`。
|
|
176
|
+
2. 只在 `only_safe_fixes=true` 且用户允许整理时运行 `aiwiki lint --fix-empty-dirs --json`。
|
|
177
|
+
3. 再次运行 `aiwiki lint --json` 复查。
|
|
178
|
+
4. 向用户报告删除了哪些空目录、保留了哪些非空目录、还有哪些问题需要人工判断。
|
|
179
|
+
|
|
180
|
+
## 4. 值得做、不值得做、应放到 Pro 的功能
|
|
181
|
+
|
|
182
|
+
### 4.1 基础版值得做
|
|
183
|
+
|
|
184
|
+
| 功能 | 判断 | 推荐原因 |
|
|
185
|
+
| --- | --- | --- |
|
|
186
|
+
| `setup` | 保留并收敛 | 新用户需要唯一初始化入口,替代 `init` 的公开心智。 |
|
|
187
|
+
| `agent sync/check` | 保留 | AIWiki 是 Agent-first,skill 对接是闭环的一部分。 |
|
|
188
|
+
| `ingest-agent` | 强保留 | 核心写入入口,边界清楚:Agent 理解,AIWiki 落盘。 |
|
|
189
|
+
| `ingest-file` | 保留 | 本地文件入库合理,不破坏“不抓网页”的边界。 |
|
|
190
|
+
| `context/query` | 保留并继续增强 | 这是 AIWiki 从文件保存升级为上下文调度的核心。 |
|
|
191
|
+
| `lint` | 保留并增强 | 信任来自可追踪、可检查,而不是 AI 口吻。 |
|
|
192
|
+
| `status/doctor` | 保留 | 安装、远程验证、排障都需要。 |
|
|
193
|
+
| `lint --fix-empty-dirs --json` | 值得做 | 解决老用户空目录问题,同时不增加新顶层命令。 |
|
|
194
|
+
| 默认目录降噪 | 必须做 | 否则 demo、文档和 Pro dashboard 都会固化旧噪声。 |
|
|
195
|
+
|
|
196
|
+
### 4.2 基础版不值得继续强化
|
|
197
|
+
|
|
198
|
+
| 功能 | 当前处理 | 理由 |
|
|
199
|
+
| --- | --- | --- |
|
|
200
|
+
| `ingest-url` | 兼容保留,主路径降级 | 名称误导用户以为 CLI 会抓网页。 |
|
|
201
|
+
| `agent install` | 兼容保留,推荐 `agent sync` | 与 `sync` 重复,安全性和幂等性弱。 |
|
|
202
|
+
| `init` | 兼容保留,推荐 `setup` | 普通用户不需要两个初始化入口。 |
|
|
203
|
+
| 当前 `next` | 降级或合并 | 如果只是命令导航,独立价值不足。 |
|
|
204
|
+
| 默认生成 claims/assets/topics/outlines | 改成按需 | 简单入库时这些文件经常只是噪声。 |
|
|
205
|
+
| Dataview dashboard 强化 | 不作为核心 | AIWiki 不是 Obsidian 插件,普通 Markdown 用户也要能用。 |
|
|
206
|
+
| review queue 主流程 | 不做主线 | 会把产品推向审核/复习系统,增加使用负担。 |
|
|
207
|
+
|
|
208
|
+
### 4.3 应放到 Pro
|
|
209
|
+
|
|
210
|
+
| 功能 | 放到 Pro 的原因 |
|
|
211
|
+
| --- | --- |
|
|
212
|
+
| 多知识库 `kb add/list/default` | 涉及 registry、默认 KB、跨 KB 查询和迁移策略。 |
|
|
213
|
+
| queue / collect / schedule | 涉及自动化运行时、失败恢复、重试和调度。 |
|
|
214
|
+
| RSS、批量 URL、定时采集 | 属于采集系统,不是基础版知识落盘。 |
|
|
215
|
+
| scoring / routing / validation | 涉及质量门槛、队列状态和高级运营流程。 |
|
|
216
|
+
| dashboard bundle | 依赖稳定的 lint/doctor/目录语义,应在 Pro 中做。 |
|
|
217
|
+
| doctor bundle | 涉及诊断包、脱敏、运行状态和支持流程。 |
|
|
218
|
+
| 向量检索 | 应等待结构化索引、证据门和 lint scale 稳定。 |
|
|
219
|
+
| 企业 RBAC / 团队协作 | 明显超出基础版范围。 |
|
|
220
|
+
| MCP / 插件分发 | 只有在提供真实 MCP 工具增量时才值得做。 |
|
|
221
|
+
|
|
222
|
+
## 5. 入库产物调整
|
|
223
|
+
|
|
224
|
+
默认始终生成核心资产:
|
|
225
|
+
|
|
226
|
+
- Raw
|
|
227
|
+
- Source Card
|
|
228
|
+
- Wiki Entry
|
|
229
|
+
- Run Summary
|
|
230
|
+
- Processing Summary
|
|
231
|
+
|
|
232
|
+
按需生成增强资产:
|
|
233
|
+
|
|
234
|
+
- Claims
|
|
235
|
+
- Assets
|
|
236
|
+
- Topics
|
|
237
|
+
- Outlines
|
|
238
|
+
|
|
239
|
+
触发条件:
|
|
240
|
+
|
|
241
|
+
- payload 明确提供对应内容。
|
|
242
|
+
- `request.outputs` 明确请求对应产物。
|
|
243
|
+
|
|
244
|
+
验收:
|
|
245
|
+
|
|
246
|
+
- minimal payload 不再生成空洞增强目录和建议文件。
|
|
247
|
+
- enriched payload 仍能生成增强资产。
|
|
248
|
+
- processing summary 说明未生成增强资产是正常情况,而不是失败。
|
|
249
|
+
|
|
250
|
+
## 6. 每日自动化重排
|
|
251
|
+
|
|
252
|
+
当前基础版队列:
|
|
253
|
+
|
|
254
|
+
```text
|
|
255
|
+
AIWIKI-001..005 done
|
|
256
|
+
AIWIKI-006 pending:命令面、目录契约、入库产物和 Agent 自动整理
|
|
257
|
+
AIWIKI-007 pending:样例、文档一致性、全链路回归和发布验证
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
当前 Pro 队列:
|
|
261
|
+
|
|
262
|
+
```text
|
|
263
|
+
PRO-001..007 done
|
|
264
|
+
PRO-008 blocked:等待 AIWIKI-006 完成或用户明确豁免
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
新的执行顺序:
|
|
268
|
+
|
|
269
|
+
| 顺序 | 任务 | 状态 | 说明 |
|
|
270
|
+
| --- | --- | --- | --- |
|
|
271
|
+
| 1 | `AIWIKI-006` | pending / P0 | 合并执行命令面收敛、目录契约、入库降噪、lint safe-fix、Agent 自动整理。 |
|
|
272
|
+
| 2 | `AIWIKI-007` | pending / P1 | 等 `AIWIKI-006` 后再做 demo、sample、showcase、文档一致性和全链路回归。 |
|
|
273
|
+
| 3 | `PRO-008` | blocked / P1 | 等基础版 lint/doctor/目录契约稳定后再做 dashboard / doctor bundle。 |
|
|
274
|
+
| 4 | `AIWIKI-NEXT-001` | optional / P2 | 只有确认 `next` 还有独立价值时才做,否则并入 `status` 或 `lint`。 |
|
|
275
|
+
|
|
276
|
+
原本拆出来的 `AIWIKI-SCOPE-001`、`AIWIKI-SCOPE-002`、`AIWIKI-DIRS-001`、`AIWIKI-INGEST-001` 不再作为独立每日队列任务创建,已经合并进 `AIWIKI-006`。
|
|
277
|
+
|
|
278
|
+
原因:
|
|
279
|
+
|
|
280
|
+
- 这些改动互相依赖,分开做会让 demo、文档和测试反复返工。
|
|
281
|
+
- 命令面、目录契约和入库产物必须一起稳定,才能判断 `lint` safe-fix 如何给 Agent 使用。
|
|
282
|
+
- 用户要求不能影响原有正常使用,所以一次合并任务必须同时覆盖兼容命令、老用户空目录、安全修复和回归测试。
|
|
283
|
+
|
|
284
|
+
每日自动化选择规则:
|
|
285
|
+
|
|
286
|
+
- 先读 `Plan/aiwiki-automation-tasks.json`。
|
|
287
|
+
- 优先执行依赖已满足的 P0 收敛任务。
|
|
288
|
+
- demo、showcase、sample vault、dashboard、bundle 类任务必须等待核心 CLI 契约稳定。
|
|
289
|
+
- Pro 任务如果声明 `base_contract_dependency`,必须等待对应基础版任务 done 或用户明确豁免。
|
|
290
|
+
- 每次更新 JSON 队列时,同步更新人类看板。
|
|
291
|
+
|
|
292
|
+
## 7. 当前任务对应开发方案
|
|
293
|
+
|
|
294
|
+
### AIWIKI-006:收敛命令面、目录契约、入库产物和 Agent 自动整理
|
|
295
|
+
|
|
296
|
+
范围:
|
|
297
|
+
|
|
298
|
+
- `src/app.ts`
|
|
299
|
+
- `src/workspace.ts`
|
|
300
|
+
- `src/ingest.ts`
|
|
301
|
+
- `src/lint.ts`
|
|
302
|
+
- `src/context.ts`
|
|
303
|
+
- `tests/cli.test.ts`
|
|
304
|
+
- `tests/workspace.test.ts`
|
|
305
|
+
- `tests/ingest.test.ts`
|
|
306
|
+
- `README.md`
|
|
307
|
+
- `docs/USAGE.md`
|
|
308
|
+
- `docs/FAQ.md`
|
|
309
|
+
- `docs/AGENT_HANDOFF.md`
|
|
310
|
+
- `skill/SKILL.md`
|
|
311
|
+
|
|
312
|
+
验收:
|
|
313
|
+
|
|
314
|
+
- 主 help 和 quick-start 只展示核心路径。
|
|
315
|
+
- legacy / advanced 命令继续可用,但不再占据主路径。
|
|
316
|
+
- 新工作区只默认创建核心目录。
|
|
317
|
+
- 增强目录按需创建。
|
|
318
|
+
- `doctor` 不因缺少增强目录报错。
|
|
319
|
+
- `lint --json` 报告空增强目录 safe-fix。
|
|
320
|
+
- `lint --fix-empty-dirs --json` 只删除安全范围内的空增强目录。
|
|
321
|
+
- Agent handoff 和 skill 明确自动整理流程。
|
|
322
|
+
- minimal ingest 不再默认生成空洞增强产物。
|
|
323
|
+
- 旧命令和旧非空增强目录不被破坏。
|
|
324
|
+
|
|
325
|
+
验证:
|
|
326
|
+
|
|
327
|
+
```bash
|
|
328
|
+
npm test
|
|
329
|
+
npm run release:check
|
|
330
|
+
npm pack --dry-run
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
远程烟测:
|
|
334
|
+
|
|
335
|
+
```bash
|
|
336
|
+
aiwiki setup --path <tmp-vault> --yes
|
|
337
|
+
aiwiki doctor --path <tmp-vault>
|
|
338
|
+
aiwiki ingest-agent --payload <minimal-fixture> --path <tmp-vault>
|
|
339
|
+
aiwiki lint --json --path <tmp-vault>
|
|
340
|
+
aiwiki lint --fix-empty-dirs --json --path <tmp-vault>
|
|
341
|
+
aiwiki context <topic> --path <tmp-vault>
|
|
342
|
+
aiwiki query <topic> --path <tmp-vault>
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
### AIWIKI-007:样例、文档一致性、全链路回归和发布验证
|
|
346
|
+
|
|
347
|
+
依赖:
|
|
348
|
+
|
|
349
|
+
- `AIWIKI-006` done。
|
|
350
|
+
|
|
351
|
+
范围:
|
|
352
|
+
|
|
353
|
+
- `examples/demo-run`
|
|
354
|
+
- `examples/obsidian-vault-sample`
|
|
355
|
+
- `docs/AGENT_COMPATIBILITY.md`
|
|
356
|
+
- `docs/SHOWCASE.md`
|
|
357
|
+
- `docs/README.md`
|
|
358
|
+
- `docs/USAGE.md`
|
|
359
|
+
- `docs/AGENT_HANDOFF.md`
|
|
360
|
+
- `docs/FAQ.md`
|
|
361
|
+
- `docs/ROADMAP.md`
|
|
362
|
+
- `docs/RELEASE.md`
|
|
363
|
+
- `README.md`
|
|
364
|
+
- `package.json`
|
|
365
|
+
- tests / fixtures
|
|
366
|
+
|
|
367
|
+
验收:
|
|
368
|
+
|
|
369
|
+
- demo 和 sample vault 反映新的命令面和目录契约。
|
|
370
|
+
- 示例优先展示 Raw、Source Card、Wiki Entry、Run Summary、Processing Summary。
|
|
371
|
+
- optional claims/assets/topics/outlines 只在有意义时出现。
|
|
372
|
+
- 文档不暗示抓取、Obsidian 依赖、review 工作流或 Pro 自动化。
|
|
373
|
+
- README、USAGE、AGENT_HANDOFF、FAQ、SHOWCASE、ROADMAP、RELEASE、skill 对同一命令面和边界保持一致。
|
|
374
|
+
- 不新增功能,除非是修复 `AIWIKI-006` 引入的回归。
|
|
375
|
+
- 发布检查和远程烟测通过,或因 npm OTP 阻塞时记录为 release follow-up。
|
|
376
|
+
|
|
377
|
+
### PRO-008:dashboard / doctor bundle
|
|
378
|
+
|
|
379
|
+
当前状态:
|
|
380
|
+
|
|
381
|
+
- `blocked`
|
|
382
|
+
|
|
383
|
+
恢复条件:
|
|
384
|
+
|
|
385
|
+
- `AIWIKI-006` done 且基础版 lint/doctor/目录契约已验证。
|
|
386
|
+
- 或用户明确豁免该依赖。
|
|
387
|
+
|
|
388
|
+
原因:
|
|
389
|
+
|
|
390
|
+
- Pro dashboard / doctor bundle 会引用基础版目录、lint、doctor 语义。
|
|
391
|
+
- 如果基础版还没完成目录降噪和 safe-fix,Pro 会把旧噪声固化进高级功能。
|
|
392
|
+
|
|
393
|
+
## 8. 风险控制
|
|
394
|
+
|
|
395
|
+
### 8.1 老用户脚本依赖 legacy 命令
|
|
396
|
+
|
|
397
|
+
控制:
|
|
398
|
+
|
|
399
|
+
- 第一阶段不删除命令。
|
|
400
|
+
- 先从文档和主 help 降级。
|
|
401
|
+
- 后续如需 deprecate,至少经过一个 minor 版本。
|
|
402
|
+
|
|
403
|
+
### 8.2 目录减少被理解成工作区损坏
|
|
404
|
+
|
|
405
|
+
控制:
|
|
406
|
+
|
|
407
|
+
- `doctor` 只检查核心目录。
|
|
408
|
+
- `setup` 说明增强目录按需创建。
|
|
409
|
+
- `lint` 和 `context` 把缺少增强目录视为正常。
|
|
410
|
+
- 文档说明老工作区保留旧目录是兼容状态,不需要强制清理。
|
|
411
|
+
|
|
412
|
+
### 8.3 老用户清理误删内容
|
|
413
|
+
|
|
414
|
+
控制:
|
|
415
|
+
|
|
416
|
+
- 默认只报告。
|
|
417
|
+
- 只有显式 `--fix-empty-dirs` 才删除。
|
|
418
|
+
- 只删已知空增强目录。
|
|
419
|
+
- 不删核心、未知、非空目录和文件。
|
|
420
|
+
- 输出必须有删除清单和保留清单。
|
|
421
|
+
|
|
422
|
+
### 8.4 默认产物减少被理解成功能倒退
|
|
423
|
+
|
|
424
|
+
控制:
|
|
425
|
+
|
|
426
|
+
- processing summary 解释增强资产未生成的原因。
|
|
427
|
+
- `request.outputs` 继续允许显式请求。
|
|
428
|
+
- enriched payload 继续保留增强产物生成能力。
|
|
429
|
+
|
|
430
|
+
### 8.5 `next` 价值不足
|
|
431
|
+
|
|
432
|
+
控制:
|
|
433
|
+
|
|
434
|
+
- 先降级,不删除。
|
|
435
|
+
- 后续只有在能复用 lint/status 生成真正加工建议时才重做。
|
|
436
|
+
- 否则并入 `status` 或 `lint`。
|
|
437
|
+
|
|
438
|
+
## 9. 不进入基础版排期的任务
|
|
439
|
+
|
|
440
|
+
以下不进入 `Project/aiwiki` 基础版排期:
|
|
441
|
+
|
|
442
|
+
- KB registry。
|
|
443
|
+
- `kb add/list/default`。
|
|
444
|
+
- queue run。
|
|
445
|
+
- collect / schedule / score / route / validate。
|
|
446
|
+
- RSS / 定时采集 / 批量 URL。
|
|
447
|
+
- 内置浏览器抓取。
|
|
448
|
+
- 内置 LLM 总结。
|
|
449
|
+
- 向量数据库。
|
|
450
|
+
- FSRS / Anki。
|
|
451
|
+
- 企业 RBAC。
|
|
452
|
+
- dashboard bundle。
|
|
453
|
+
- doctor bundle。
|
|
454
|
+
- 没有真实工具增量的插件包装。
|
|
455
|
+
|
|
456
|
+
如有需要,进入 AIWiki Pro 或独立集成项目。
|
|
457
|
+
|
|
458
|
+
## 10. 最终建议
|
|
459
|
+
|
|
460
|
+
AIWiki 基础版应该做小而硬:
|
|
461
|
+
|
|
462
|
+
- 稳定接收 Agent payload。
|
|
463
|
+
- 稳定生成 Markdown 知识资产。
|
|
464
|
+
- 稳定查询上下文。
|
|
465
|
+
- 稳定检查结构和证据边界。
|
|
466
|
+
- 稳定同步宿主 Agent skill。
|
|
467
|
+
|
|
468
|
+
这次开发不再新增一串独立任务,而是把强相关的命令、目录、入库、lint 和 Agent 自动整理合并到 `AIWIKI-006`。这样能减少返工,也更符合“不影响原有正常使用”的要求。
|