@itradingai/aiwiki 0.2.10 → 0.2.12
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 +163 -115
- package/dist/src/app.js +200 -3
- package/dist/src/context.js +131 -0
- package/dist/src/frontmatter.js +55 -0
- package/dist/src/grounding.js +83 -0
- package/dist/src/ingest.js +72 -10
- package/dist/src/lint.js +197 -0
- package/dist/src/payload.js +160 -2
- package/dist/src/wiki-entry.js +180 -0
- package/dist/src/workspace.js +32 -0
- package/docs/AGENT_HANDOFF.md +80 -14
- package/docs/FAQ.md +38 -5
- package/docs/SHOWCASE.md +8 -3
- package/docs/USAGE.md +81 -10
- package/package.json +1 -1
- package/skill/LINT_PROTOCOL.md +42 -0
- package/skill/QUERY_PROTOCOL.md +38 -0
- package/skill/SKILL.md +122 -38
package/docs/AGENT_HANDOFF.md
CHANGED
|
@@ -15,33 +15,36 @@ Agent 应自动读取网页,生成 payload,通过 AIWiki CLI 写入本地知
|
|
|
15
15
|
## 职责边界
|
|
16
16
|
|
|
17
17
|
```text
|
|
18
|
-
Agent
|
|
19
|
-
AIWiki CLI 负责:校验 payload
|
|
18
|
+
Agent 负责:读取网页、理解正文、尽量生成 analysis/wiki_entry、调用 CLI、回复用户
|
|
19
|
+
AIWiki CLI 负责:校验 payload、写本地文件、生成 Wiki Entry、输出入库结果
|
|
20
20
|
用户负责:提供链接或正文,最后审阅结果
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
-
AIWiki CLI
|
|
23
|
+
AIWiki CLI 不做通用网页抓取,也不调用 LLM。网页读取失败时,Agent 仍然要调用 CLI 记录失败原因;高质量 Wiki 内容由宿主 Agent 提供。
|
|
24
|
+
|
|
25
|
+
证据和疑似风险要分开:`source_quote` 等能回到原文的字段是宿主提供的 evidence/provenance;`coverage_suspected_incomplete`、`unsupported_claims`、`needs_review` 是 AIWiki 的复核提示,不代表已经证明遗漏或错误。
|
|
24
26
|
|
|
25
27
|
## 标准流程
|
|
26
28
|
|
|
27
29
|
1. 读取用户给的 URL、正文、附件或消息。
|
|
28
30
|
2. 如果读取成功,生成 `fetch_status: "ok"` 的 payload。
|
|
29
|
-
3.
|
|
30
|
-
4.
|
|
31
|
-
5.
|
|
32
|
-
6.
|
|
31
|
+
3. 尽量基于正文生成 `analysis` 或 `wiki_entry`。
|
|
32
|
+
4. 如果读取失败,生成 `fetch_status: "failed"` 的 payload,并写清 `fetch_notes`。
|
|
33
|
+
5. 不要让用户保存 payload。
|
|
34
|
+
6. 不要让用户手动运行命令。
|
|
35
|
+
7. 优先通过 stdin 调用:
|
|
33
36
|
|
|
34
37
|
```bash
|
|
35
38
|
aiwiki ingest-agent --stdin
|
|
36
39
|
```
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
8. 如果当前 shell、终端或宿主环境无法保证 stdin 是 UTF-8,先把 payload 写成 UTF-8 JSON 文件,再调用:
|
|
39
42
|
|
|
40
43
|
```bash
|
|
41
44
|
aiwiki ingest-agent --payload <utf8-json-file>
|
|
42
45
|
```
|
|
43
46
|
|
|
44
|
-
|
|
47
|
+
9. 读取 CLI 输出,向用户回复入库状态、摘要、Wiki 条目、质量模式、资料卡和处理记录。
|
|
45
48
|
|
|
46
49
|
## 编码要求
|
|
47
50
|
|
|
@@ -62,12 +65,32 @@ AIWiki 会修复常见 UTF-8 mojibake,但这只是兜底;宿主 Agent 仍应
|
|
|
62
65
|
"content": "这里是宿主 Agent 读取到的正文内容。",
|
|
63
66
|
"fetcher": "host-agent",
|
|
64
67
|
"fetch_status": "ok",
|
|
65
|
-
"captured_at": "2026-05-07T10:00:00+08:00"
|
|
68
|
+
"captured_at": "2026-05-07T10:00:00+08:00",
|
|
69
|
+
"source_role": "input",
|
|
70
|
+
"represents_user_view": false
|
|
71
|
+
},
|
|
72
|
+
"analysis": {
|
|
73
|
+
"summary": "一句话总结。",
|
|
74
|
+
"key_points": [
|
|
75
|
+
"核心观点 1",
|
|
76
|
+
"核心观点 2"
|
|
77
|
+
],
|
|
78
|
+
"related_concepts": [
|
|
79
|
+
"概念 A"
|
|
80
|
+
],
|
|
81
|
+
"claims": [
|
|
82
|
+
{
|
|
83
|
+
"claim": "强主张应绑定原文证据",
|
|
84
|
+
"confidence": "high",
|
|
85
|
+
"source_quote": "这里是宿主 Agent 读取到的正文内容。"
|
|
86
|
+
}
|
|
87
|
+
]
|
|
66
88
|
},
|
|
67
89
|
"request": {
|
|
68
90
|
"mode": "ingest",
|
|
69
91
|
"outputs": [
|
|
70
92
|
"source_card",
|
|
93
|
+
"wiki_entry",
|
|
71
94
|
"creative_assets",
|
|
72
95
|
"topics",
|
|
73
96
|
"draft_outline",
|
|
@@ -108,6 +131,7 @@ AIWiki 会修复常见 UTF-8 mojibake,但这只是兜底;宿主 Agent 仍应
|
|
|
108
131
|
- 不要让用户手动保存 payload。
|
|
109
132
|
- 不要让用户每次输入 `--path`。
|
|
110
133
|
- 不要声称网页抓取是 AIWiki CLI 的能力。
|
|
134
|
+
- 不要声称 AIWiki CLI 会在没有 Agent 分析字段时自动高质量总结。
|
|
111
135
|
- 不要在 `fetch_status: "failed"` 时塞入正文内容。
|
|
112
136
|
- 不要替用户安装 Dataview。
|
|
113
137
|
- 不要修改 `.obsidian`、`community-plugins.json` 或 Obsidian 插件配置。
|
|
@@ -123,13 +147,14 @@ Dataview 只是可选增强。用户自行在 Obsidian Community plugins 中安
|
|
|
123
147
|
成功时:
|
|
124
148
|
|
|
125
149
|
```text
|
|
126
|
-
|
|
150
|
+
AIWiki 已完成入库,并生成 Wiki 条目。
|
|
127
151
|
契合度:<fit_score> / <fit_level>
|
|
128
152
|
摘要:<summary>
|
|
153
|
+
Wiki 条目:<wiki_entry>
|
|
154
|
+
质量模式:<wiki_entry_quality> / <wiki_entry_generation_mode>
|
|
155
|
+
Grounding:<grounding_evidence_channel> / review=<grounding_needs_review> / markers=<grounding_markers>
|
|
129
156
|
资料卡:<source_card>
|
|
130
157
|
处理记录:<processing_summary>
|
|
131
|
-
Obsidian 入口:<dashboard>
|
|
132
|
-
待审队列:<review_queue>
|
|
133
158
|
```
|
|
134
159
|
|
|
135
160
|
失败但已记录时:
|
|
@@ -140,5 +165,46 @@ Obsidian 入口:<dashboard>
|
|
|
140
165
|
记录目录:<run_dir>
|
|
141
166
|
处理摘要:<processing_summary>
|
|
142
167
|
Obsidian 入口:<dashboard>
|
|
143
|
-
待审队列:<review_queue>
|
|
144
168
|
```
|
|
169
|
+
|
|
170
|
+
## Query / Lint
|
|
171
|
+
|
|
172
|
+
当用户说“从 AIWiki 里了解某个主题”时,调用:
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
aiwiki context "<主题>"
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
`context` 是给宿主 Agent 使用的 JSON。如果用户是在终端里直接想看结果,可以运行:
|
|
179
|
+
|
|
180
|
+
```bash
|
|
181
|
+
aiwiki query "<主题>"
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
当用户说“整理 / 检查知识库”时,调用:
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
aiwiki lint
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
`context` 返回 JSON,注意其中的 `generation_mode`、`quality` 和 `warnings`。如果结果是 `deterministic_fallback` / `scaffold`,回复时要说明它只是可追溯脚手架,不是高质量知识提炼。
|
|
191
|
+
|
|
192
|
+
`context` 也可能返回 grounding 字段。回复用户时可以把 `grounding_needs_review: true` 解释为“这条资料需要复核证据或覆盖度”,不要说成“AIWiki 已确认漏掉重点”。
|
|
193
|
+
|
|
194
|
+
## Source Role
|
|
195
|
+
|
|
196
|
+
默认外部资料使用:
|
|
197
|
+
|
|
198
|
+
```json
|
|
199
|
+
"source_role": "input",
|
|
200
|
+
"represents_user_view": false
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
只有当用户明确导入自己的已发布文章、演讲稿、公众号文章等个人输出时,才使用:
|
|
204
|
+
|
|
205
|
+
```json
|
|
206
|
+
"source_role": "output",
|
|
207
|
+
"represents_user_view": true
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
不要把外部资料标成代表用户观点。
|
package/docs/FAQ.md
CHANGED
|
@@ -2,11 +2,28 @@
|
|
|
2
2
|
|
|
3
3
|
## AIWiki 是什么?
|
|
4
4
|
|
|
5
|
-
AIWiki 是一个开源的 Agent-first
|
|
5
|
+
AIWiki 是一个开源的 Agent-first 本地 LLM-wiki CLI。宿主 Agent 负责读取和理解内容,AIWiki 负责把结果稳定写成本地 Markdown 知识库。
|
|
6
6
|
|
|
7
7
|
## AIWiki 是网页爬虫吗?
|
|
8
8
|
|
|
9
|
-
不是。网页读取主要交给宿主 Agent,AIWiki
|
|
9
|
+
不是。网页读取主要交给宿主 Agent,AIWiki 专注于校验结构化输入、写本地文件、生成 Wiki Entry、提供 context 和 lint。
|
|
10
|
+
|
|
11
|
+
## AIWiki 会自动高质量总结吗?
|
|
12
|
+
|
|
13
|
+
不会。AIWiki CLI 本身不调用 LLM。高质量 Wiki Entry 来自宿主 Agent 在 payload 中提供的 `analysis` 或 `wiki_entry`。
|
|
14
|
+
|
|
15
|
+
## 为什么会生成 05-wiki?
|
|
16
|
+
|
|
17
|
+
因为 AIWiki 的目标不是只保存资料,而是让资料进入可查询、可维护的 Wiki 知识层。成功入库会生成 `05-wiki/source-knowledge/<slug>.md`。
|
|
18
|
+
|
|
19
|
+
## Wiki Entry 的两种质量模式是什么?
|
|
20
|
+
|
|
21
|
+
- `agent_enriched` / `enriched`:宿主 Agent 提供了总结、核心观点、知识点等分析结果。
|
|
22
|
+
- `deterministic_fallback` / `scaffold`:AIWiki 只生成标题、来源、正文预览、反链和待补全区。
|
|
23
|
+
|
|
24
|
+
## 05-wiki 是否代表我的观点?
|
|
25
|
+
|
|
26
|
+
不一定。外部资料生成的 Wiki Entry 默认代表外部资料的结构化整理,不代表用户个人观点。
|
|
10
27
|
|
|
11
28
|
## 一定要用 Obsidian 吗?
|
|
12
29
|
|
|
@@ -18,9 +35,9 @@ AIWiki 是一个开源的 Agent-first AI 知识库 CLI。它把文章链接、
|
|
|
18
35
|
|
|
19
36
|
## 宿主 Agent 和 AIWiki 各负责什么?
|
|
20
37
|
|
|
21
|
-
- 宿主 Agent
|
|
22
|
-
- AIWiki 负责校验 payload
|
|
23
|
-
-
|
|
38
|
+
- 宿主 Agent 负责读取网页、正文或附件,并尽量生成 `analysis` / `wiki_entry`
|
|
39
|
+
- AIWiki 负责校验 payload、写本地知识库、生成 Wiki Entry、输出处理记录
|
|
40
|
+
- 用户负责提供链接或正文,并在需要时让 Agent 继续查询或补全
|
|
24
41
|
|
|
25
42
|
## 为什么要先让 Agent 学会 AIWiki?
|
|
26
43
|
|
|
@@ -45,3 +62,19 @@ aiwiki agent install
|
|
|
45
62
|
- [USAGE.md](USAGE.md)
|
|
46
63
|
- [SHOWCASE.md](SHOWCASE.md)
|
|
47
64
|
- [AGENT_HANDOFF.md](AGENT_HANDOFF.md)
|
|
65
|
+
|
|
66
|
+
## 怎么从知识库里查询?
|
|
67
|
+
|
|
68
|
+
让宿主 Agent 调用:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
aiwiki context "主题"
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## 怎么检查知识库结构?
|
|
75
|
+
|
|
76
|
+
运行:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
aiwiki lint
|
|
80
|
+
```
|
package/docs/SHOWCASE.md
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
### 宿主 Agent 做的事
|
|
14
14
|
|
|
15
15
|
1. 读取网页正文或可访问内容。
|
|
16
|
-
2. 组装 `aiwiki.agent_payload.v1`。
|
|
16
|
+
2. 组装 `aiwiki.agent_payload.v1`,并尽量提供 `analysis` 或 `wiki_entry`。
|
|
17
17
|
3. 调用 `aiwiki ingest-agent --stdin`。
|
|
18
18
|
4. 把 AIWiki 的处理结果回复给用户。
|
|
19
19
|
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
09-runs/<run-id>/payload.json
|
|
24
24
|
09-runs/<run-id>/raw.md
|
|
25
25
|
09-runs/<run-id>/source-card.md
|
|
26
|
+
09-runs/<run-id>/wiki-entry.md
|
|
26
27
|
09-runs/<run-id>/creative-assets.md
|
|
27
28
|
09-runs/<run-id>/topics.md
|
|
28
29
|
09-runs/<run-id>/draft-outline.md
|
|
@@ -35,6 +36,7 @@
|
|
|
35
36
|
02-raw/articles/
|
|
36
37
|
03-sources/article-cards/
|
|
37
38
|
04-claims/_suggestions/
|
|
39
|
+
05-wiki/source-knowledge/
|
|
38
40
|
06-assets/_suggestions/
|
|
39
41
|
07-topics/ready/
|
|
40
42
|
08-outputs/outlines/
|
|
@@ -44,8 +46,9 @@ dashboards/
|
|
|
44
46
|
### 用户在 Obsidian 里怎么看
|
|
45
47
|
|
|
46
48
|
- 打开 `dashboards/AIWiki Home.md`
|
|
47
|
-
- 查看 `
|
|
48
|
-
-
|
|
49
|
+
- 查看 `05-wiki/source-knowledge/<slug>.md`
|
|
50
|
+
- 从 Wiki 条目回到资料卡、原文、选题、大纲和处理记录
|
|
51
|
+
- 需要结构检查时运行 `aiwiki lint`
|
|
49
52
|
|
|
50
53
|
## 示例 2:网页没读到正文
|
|
51
54
|
|
|
@@ -74,5 +77,7 @@ dashboards/
|
|
|
74
77
|
|
|
75
78
|
- AIWiki 不是网页爬虫本体
|
|
76
79
|
- 宿主 Agent 负责读取内容
|
|
80
|
+
- 宿主 Agent 负责高质量总结和知识提炼
|
|
77
81
|
- AIWiki 负责稳定写入本地知识库
|
|
82
|
+
- AIWiki 会创建 Wiki Entry;没有 Agent 分析字段时只生成可追溯脚手架
|
|
78
83
|
- 结果始终可追踪、可复盘、可继续写作
|
package/docs/USAGE.md
CHANGED
|
@@ -8,6 +8,10 @@
|
|
|
8
8
|
|
|
9
9
|
AIWiki CLI 不负责网页抓取。Qclaw、Codex、Claude Code、Cursor、Gemini CLI 等都只是宿主 Agent 的例子;这份文档面向的是通用宿主 Agent 协作。
|
|
10
10
|
|
|
11
|
+
AIWiki CLI 也不调用 LLM。高质量 Wiki Entry 来自宿主 Agent 提供的 `analysis` 或 `wiki_entry`;如果没有这些字段,AIWiki 会生成可追溯的 deterministic fallback 条目,只包含来源、反链、正文预览和待补全区。
|
|
12
|
+
|
|
13
|
+
AIWiki 会把证据通道和疑似风险分开记录。`source_quote` 等宿主 Agent 提供的原文引用属于证据通道;`coverage_suspected_incomplete`、`unsupported_claims`、`needs_review` 等属于 AIWiki 生成的启发式复核信号,不等于已经证明内容遗漏。
|
|
14
|
+
|
|
11
15
|
## 1. 一次性设置
|
|
12
16
|
|
|
13
17
|
发布后直接运行交互式 setup:
|
|
@@ -54,6 +58,7 @@ aiwiki status
|
|
|
54
58
|
|
|
55
59
|
```bash
|
|
56
60
|
aiwiki agent list
|
|
61
|
+
aiwiki agent check
|
|
57
62
|
```
|
|
58
63
|
|
|
59
64
|
再启动安装向导:
|
|
@@ -86,6 +91,8 @@ aiwiki prompt agent
|
|
|
86
91
|
|
|
87
92
|
把输出内容安装成宿主 Agent 的 skill,或粘贴到宿主 Agent 的项目/会话说明里。不同 Agent 的安装入口不同,所以 AIWiki 提供自动安装向导和通用协议两条路径。
|
|
88
93
|
|
|
94
|
+
`aiwiki agent check` 用来确认本机检测到哪些宿主 Agent、哪些已经安装 AIWiki 对接文件、哪些还需要运行 `aiwiki agent install --agent <id> --yes`。
|
|
95
|
+
|
|
89
96
|
## 3. 日常使用
|
|
90
97
|
|
|
91
98
|
宿主 Agent 已经加载 AIWiki 协议后,把下面的话发给它,并替换链接:
|
|
@@ -118,8 +125,16 @@ source_url: https://example.com/article
|
|
|
118
125
|
summary: 这里是文章前段摘要,方便 Agent 快速告诉用户文章大意。
|
|
119
126
|
run_id: 20260507-153012-abc123
|
|
120
127
|
run_dir: F:\knowledge_data\aiwiki\09-runs\20260507-153012-abc123
|
|
121
|
-
files:
|
|
128
|
+
files: 15
|
|
122
129
|
processing_summary: 09-runs/20260507-153012-abc123/processing-summary.md
|
|
130
|
+
wiki_entry: 05-wiki/source-knowledge/article-slug.md
|
|
131
|
+
wiki_entry_generation_mode: agent_enriched
|
|
132
|
+
wiki_entry_quality: enriched
|
|
133
|
+
grounding_evidence_available: yes
|
|
134
|
+
grounding_evidence_channel: host_supplied
|
|
135
|
+
grounding_needs_review: no
|
|
136
|
+
grounding_markers: none
|
|
137
|
+
grounding_claims_with_quotes: 1/1
|
|
123
138
|
source_card: 03-sources/article-cards/article-slug.md
|
|
124
139
|
draft_outline: 09-runs/20260507-153012-abc123/draft-outline.md
|
|
125
140
|
dashboard: dashboards/AIWiki Home.md
|
|
@@ -130,13 +145,13 @@ warnings: 0
|
|
|
130
145
|
宿主 Agent 回复用户时建议展示:
|
|
131
146
|
|
|
132
147
|
```text
|
|
133
|
-
|
|
148
|
+
AIWiki 已完成入库,并生成 Wiki 条目。
|
|
134
149
|
契合度:90 / high
|
|
135
150
|
摘要:……
|
|
151
|
+
Wiki 条目:……
|
|
152
|
+
质量模式:enriched / agent_enriched
|
|
136
153
|
资料卡:……
|
|
137
154
|
处理记录:……
|
|
138
|
-
Obsidian 入口:dashboards/AIWiki Home.md
|
|
139
|
-
待审队列:dashboards/Review Queue.md
|
|
140
155
|
```
|
|
141
156
|
|
|
142
157
|
网页读取失败但已记录原因时类似:
|
|
@@ -187,12 +202,38 @@ Obsidian 入口:dashboards/AIWiki Home.md
|
|
|
187
202
|
02-raw/articles/
|
|
188
203
|
03-sources/article-cards/
|
|
189
204
|
04-claims/_suggestions/
|
|
205
|
+
05-wiki/source-knowledge/
|
|
190
206
|
06-assets/_suggestions/
|
|
191
207
|
07-topics/ready/
|
|
192
208
|
08-outputs/outlines/
|
|
193
209
|
```
|
|
194
210
|
|
|
195
|
-
|
|
211
|
+
`05-wiki/source-knowledge` 是默认知识层;`09-runs` 用于追溯每次处理。
|
|
212
|
+
|
|
213
|
+
Wiki Entry 有两种质量模式:
|
|
214
|
+
|
|
215
|
+
- `agent_enriched` / `enriched`:宿主 Agent 提供了 `analysis` 或 `wiki_entry`。
|
|
216
|
+
- `deterministic_fallback` / `scaffold`:AIWiki 只生成来源、反链、正文预览和待补全区。
|
|
217
|
+
|
|
218
|
+
Artifact 角色保持固定:
|
|
219
|
+
|
|
220
|
+
- `03-sources/article-cards` 是 trace-first 的资料卡:保留来源、反链、原文预览和 grounding 状态,不承担完整知识正文。
|
|
221
|
+
- `05-wiki/source-knowledge` 是 enriched knowledge surface:宿主 Agent 的 `analysis` / `wiki_entry` 会进入这里。
|
|
222
|
+
- `02-raw/articles` 是原始证据层,后续摘要、Claim 和复核都应能回查这里。
|
|
223
|
+
|
|
224
|
+
Grounding 字段都是 additive,可被旧工具忽略:
|
|
225
|
+
|
|
226
|
+
- `grounding_evidence_available`:是否存在可回查的宿主证据。
|
|
227
|
+
- `grounding_evidence_channel`:`host_supplied` 或 `none`。
|
|
228
|
+
- `grounding_needs_review`:是否需要复核。
|
|
229
|
+
- `grounding_markers`:例如 `unsupported_claims`、`source_quote_not_found`、`coverage_suspected_incomplete`。
|
|
230
|
+
- `coverage_suspected_incomplete`:长文提取过少时的启发式疑似标记,不是确定遗漏结论。
|
|
231
|
+
|
|
232
|
+
Wiki Entry 还会记录来源角色:
|
|
233
|
+
|
|
234
|
+
- `source_role: input`:默认值,外部文章、网页、书籍、视频等资料;`represents_user_view: false`。
|
|
235
|
+
- `source_role: output`:用户已发布文章、演讲稿、公众号文章等个人输出;通常可配合 `represents_user_view: true`。
|
|
236
|
+
- `source_role: processing`:用户自己的草稿、笔记、思考过程;默认不直接代表最终观点。
|
|
196
237
|
|
|
197
238
|
### Obsidian 链接规则
|
|
198
239
|
|
|
@@ -200,13 +241,14 @@ AIWiki 生成的 Markdown 按 Obsidian vault 内路径组织,文件正文会
|
|
|
200
241
|
|
|
201
242
|
```text
|
|
202
243
|
[[03-sources/article-cards/article-slug|资料卡]]
|
|
244
|
+
[[05-wiki/source-knowledge/article-slug|Wiki 条目]]
|
|
203
245
|
[[02-raw/articles/article-slug|原文]]
|
|
204
246
|
[[09-runs/20260507-153012-abc123/processing-summary|处理记录]]
|
|
205
247
|
```
|
|
206
248
|
|
|
207
249
|
链接规则:
|
|
208
250
|
- wikilink 使用 vault 相对路径,统一为 `/`,并去掉 `.md` 后缀。
|
|
209
|
-
- `03-sources/article-cards`
|
|
251
|
+
- `05-wiki/source-knowledge` 是默认知识入口;`03-sources/article-cards` 会链接到 Wiki 条目、原文、Claim 建议、素材建议、选题、大纲和本次处理记录。
|
|
210
252
|
- `02-raw/articles`、`04-claims/_suggestions`、`06-assets/_suggestions`、`07-topics/ready`、`08-outputs/outlines` 会回链到资料卡,Obsidian 的 Backlinks/Graph View 可以串起同一篇资料。
|
|
211
253
|
- `09-runs/<run-id>/processing-summary.md` 会把本次生成的 Markdown 文件列成可点击 wikilink;`payload.json` 不是 Markdown,保留普通路径。
|
|
212
254
|
- frontmatter 会写入 `aiwiki_id`、`type`、`status`、`slug`、`source_url`、`created_at`、`captured_at`、`run_id`、`source_card`、`raw_note`、`claims_note`、`assets_note`、`topics_note`、`outline_note`、`run_summary`、`tags` 等字段,便于后续用 Obsidian Search / Properties / Dataview 做筛选。
|
|
@@ -217,6 +259,8 @@ AIWiki 生成的 Markdown 按 Obsidian vault 内路径组织,文件正文会
|
|
|
217
259
|
|
|
218
260
|
```text
|
|
219
261
|
dashboards/AIWiki Home.md
|
|
262
|
+
dashboards/Wiki Entries.md
|
|
263
|
+
dashboards/Source Cards.md
|
|
220
264
|
dashboards/Review Queue.md
|
|
221
265
|
dashboards/Recent Runs.md
|
|
222
266
|
dashboards/Topic Pipeline.md
|
|
@@ -247,12 +291,38 @@ docs/AGENT_HANDOFF.md
|
|
|
247
291
|
核心要求:
|
|
248
292
|
|
|
249
293
|
- Agent 负责读取网页正文。
|
|
294
|
+
- Agent 应尽量提供 `analysis` 或 `wiki_entry`,让 Wiki Entry 进入 enriched 模式。
|
|
250
295
|
- Agent 不要让用户保存 payload。
|
|
251
296
|
- Agent 不要让用户手动运行 `ingest-agent`。
|
|
252
297
|
- Agent 生成 payload 后优先通过 stdin 调用 `aiwiki ingest-agent --stdin`。
|
|
253
|
-
- Agent
|
|
298
|
+
- Agent 最后向用户汇报入库状态、摘要、Wiki 条目、质量模式、资料卡和处理记录。
|
|
299
|
+
|
|
300
|
+
## 7. 查询和整理
|
|
301
|
+
|
|
302
|
+
从知识库调度内容:
|
|
303
|
+
|
|
304
|
+
```bash
|
|
305
|
+
aiwiki context "AI Agent"
|
|
306
|
+
aiwiki query "AI Agent"
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
`context` 返回 JSON 给宿主 Agent 使用;`query` 使用同一套检索结果,输出给人看的分组摘要。
|
|
310
|
+
|
|
311
|
+
检查知识库结构:
|
|
312
|
+
|
|
313
|
+
```bash
|
|
314
|
+
aiwiki lint
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
查看下一步建议:
|
|
318
|
+
|
|
319
|
+
```bash
|
|
320
|
+
aiwiki next
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
`lint` 输出报告并写入 `dashboards/Lint Report.md`。
|
|
254
324
|
|
|
255
|
-
##
|
|
325
|
+
## 8. 高级调试
|
|
256
326
|
|
|
257
327
|
如果 Agent 只能输出 JSON,才需要手动保存 payload:
|
|
258
328
|
|
|
@@ -285,7 +355,7 @@ aiwiki ingest-url "https://example.com/article" --content-file "F:\knowledge_dat
|
|
|
285
355
|
|
|
286
356
|
注意:`ingest-url` 不会抓网页,只会读取 `--content-file`。
|
|
287
357
|
|
|
288
|
-
##
|
|
358
|
+
## 9. 常见问题
|
|
289
359
|
|
|
290
360
|
### 找不到 `aiwiki` 命令
|
|
291
361
|
|
|
@@ -317,7 +387,7 @@ aiwiki setup --path "F:\knowledge_data\aiwiki" --yes
|
|
|
317
387
|
aiwiki setup --path "新的知识库路径" --yes
|
|
318
388
|
```
|
|
319
389
|
|
|
320
|
-
##
|
|
390
|
+
## 10. 最小验收清单
|
|
321
391
|
|
|
322
392
|
完成一次 Agent 入库测试后,检查:
|
|
323
393
|
|
|
@@ -331,4 +401,5 @@ aiwiki status
|
|
|
331
401
|
- `09-runs` 下出现新目录。
|
|
332
402
|
- `processing-summary.md` 存在。
|
|
333
403
|
- 成功读取时,`03-sources/article-cards` 下出现资料卡。
|
|
404
|
+
- 成功读取时,`05-wiki/source-knowledge` 下出现 Wiki Entry。
|
|
334
405
|
- 抓取失败时,`09-runs/<run-id>-fetch-failed` 下出现失败记录。
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itradingai/aiwiki",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.12",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Agent-first AI knowledge base CLI for turning articles, links and notes into Obsidian-ready source cards, topics, outlines and reusable knowledge assets.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# AIWiki Lint Protocol
|
|
2
|
+
|
|
3
|
+
Use this protocol when the user asks:
|
|
4
|
+
|
|
5
|
+
- 整理一下 AIWiki
|
|
6
|
+
- 检查知识库有没有问题
|
|
7
|
+
- 看看 AIWiki 结构是否健康
|
|
8
|
+
- lint AIWiki
|
|
9
|
+
|
|
10
|
+
## Steps
|
|
11
|
+
|
|
12
|
+
1. Call:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
aiwiki lint
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
2. Read the terminal report.
|
|
19
|
+
3. Mention the report path, usually:
|
|
20
|
+
|
|
21
|
+
```text
|
|
22
|
+
dashboards/Lint Report.md
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
4. Explain warnings and errors as structure-health feedback.
|
|
26
|
+
5. Do not frame lint as "the user must manually audit every note".
|
|
27
|
+
|
|
28
|
+
## Issue Meaning
|
|
29
|
+
|
|
30
|
+
- `error`: broken structure such as a missing internal link.
|
|
31
|
+
- `warning`: likely fix needed, such as missing source fields or stale fallback entries.
|
|
32
|
+
- `info`: useful inventory, such as deterministic fallback count or duplicate titles.
|
|
33
|
+
|
|
34
|
+
## Repair Guidance
|
|
35
|
+
|
|
36
|
+
Prefer small, traceable fixes:
|
|
37
|
+
|
|
38
|
+
- Regenerate or enrich missing Wiki Entries.
|
|
39
|
+
- Fix broken wikilinks.
|
|
40
|
+
- Add missing `source_card` or `raw_file` paths.
|
|
41
|
+
- Ask the host Agent to provide `analysis` for scaffold entries.
|
|
42
|
+
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# AIWiki Query Protocol
|
|
2
|
+
|
|
3
|
+
Use this protocol when the user asks:
|
|
4
|
+
|
|
5
|
+
- 从 AIWiki 里了解某个主题
|
|
6
|
+
- 基于 AIWiki 里的资料总结某个问题
|
|
7
|
+
- AIWiki 里有没有关于某个主题的内容
|
|
8
|
+
- 帮我用 AIWiki 写一篇文章大纲
|
|
9
|
+
|
|
10
|
+
## Steps
|
|
11
|
+
|
|
12
|
+
1. Identify the topic and expected output shape.
|
|
13
|
+
2. Call:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
aiwiki context "<topic>"
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
3. Read the JSON result.
|
|
20
|
+
4. Prefer `matches.wiki_entries` before source cards, claims, topics, outlines, or raw refs.
|
|
21
|
+
5. Pay attention to `generation_mode`, `quality`, and `warnings`.
|
|
22
|
+
6. If the best Wiki Entry has `quality: "scaffold"`, tell the user that the entry is a traceable fallback and may need Agent enrichment.
|
|
23
|
+
7. Do not scan `02-raw` by default unless:
|
|
24
|
+
- Wiki Entries are insufficient.
|
|
25
|
+
- The user asks to verify the original source.
|
|
26
|
+
- There is a source conflict.
|
|
27
|
+
- A precise quote or source check is needed.
|
|
28
|
+
|
|
29
|
+
## Reply Shape
|
|
30
|
+
|
|
31
|
+
Include:
|
|
32
|
+
|
|
33
|
+
- Which Wiki Entries were found.
|
|
34
|
+
- Main conclusions.
|
|
35
|
+
- Source basis.
|
|
36
|
+
- Known gaps or scaffold warnings.
|
|
37
|
+
- Suggested next step.
|
|
38
|
+
|