1.7 KiB
1.7 KiB
Markdown Sink 设计
1. 目标
第一版 sink 不直接绑定外部平台,而是先落一个稳定的 Markdown sink。
原因:
- 可审计
- 可版本化
- 易迁移
- 可直接兼容 Obsidian / 通用 Markdown 知识库
2. 统一输入
Markdown sink 读取统一的 SinkInput:
itemarticlesummaryfilter_decisionmetadata
这样未来扩展 Notion sink、Webhook sink 时,可以继续复用同一套上游输入结构。
3. 目录结构
当前建议目录结构:
knowledge-base/
inbox/
review/
archive/
具体落盘规则:
keep->knowledge-base/inbox/YYYY/YYYY-MM/review->knowledge-base/review/YYYY/YYYY-MM/drop->knowledge-base/archive/YYYY/YYYY-MM/
4. 文件命名
文件名格式:
YYYY-MM-DD-title-slug.md
例如:
2026-03-21-kimi-cursor.md
5. Markdown 内容结构
输出采用:
- YAML frontmatter
- 摘要区
- 要点区
- 过滤决策区
- 原文信息区
- 正文摘录区
frontmatter 中保留:
titleurlsource_iditem_idextract_idcategoryworth_keepingdecisionprioritytopicskeywordslabelspublished_atsaved_atquality_flags
6. 当前落地位置
- sink 模型:
src/summary_mcp/models/sink.py
- Markdown sink:
src/summary_mcp/sinks/markdown.py
- 本地运行脚本:
scripts/run_markdown_sink.py
7. 当前阶段结论
第一版知识库不先绑定 Notion、Lumina 或数据库,而是先让过滤后的内容稳定进入 Markdown 知识库。
只要这层格式稳定,后续可以继续扩展:
- Obsidian Vault
- Logseq
- Notion
- Webhook
- 自定义数据库 sink