Wiki Schema (v2.4.1)
架构范式:全局扁平知识图谱 + 元数据逻辑域隔离 物理不隔离、逻辑隔离。图谱全局互通,场景逻辑隔离。
Domain
多领域知识库,覆盖三个交叉领域: - quant — A股量化投资:交易策略、技术指标、市场微观结构、因子模型、回测方法论 - pkm — 个人知识管理:读书笔记、项目复盘、学习路径、工作流优化 - dev — 软件开发:代码生成、项目管理、工具链、Agent 框架
页面跨领域关联(如量化策略页面链接到 dev 的工具链页面)。
Directory Structure
raw/ # 全局共享只读素材池(从 Trilium 拉取,永久保留)
concepts/ # 全局扁平概念页(多视角多页面共存)
entities/ # 全局扁平实体页
comparisons/ # 全局对比分析页
_shared/glossary/ # 纯通用底层术语/公共实体(无场景偏向)
cache/ # 7天自动清理临时缓存(不版本控制)
_archive/ # 归档废弃页面/历史版本
_meta/ # 索引、哈希、映射、快照
Conventions
- File names: lowercase, hyphens, no spaces (e.g.,
kronos-factor-model.md) - 文件名用英文,页面内容可中英混合
- Every wiki page starts with YAML frontmatter (see below)
- Use
[wikilinks](/wiki/wikilinks)to link between pages (minimum 2 outbound links per page) - When updating a page, always bump the
updateddate - Every new page must be added to
index.md - Every action must be appended to
log.md - Provenance markers: On pages that synthesize 3+ sources, append
^[raw/articles/source-file.md]
Frontmatter (v2.4.1 完整规范)
---
# 基础字段(必填)
title: Page Title
created: YYYY-MM-DD
updated: YYYY-MM-DD
type: entity | concept | comparison | query
domain: quant | pkm | dev
tags: [from taxonomy below]
# 溯源字段(必填)
sources:
- trilium://note/{noteId}
- searxng://{query}
- tavily://{query}
- session://{session-id}
- file://{absolute-path}
- shared://{relative-path}
# 质量分级(必填)
confidence: low | medium | high # low=仅本地, medium=待审核, high=可发布
page_stage: draft | final # draft=草稿, final=成品
auto_sync: false # high+final 自动置 true
# v2.4.1 逻辑隔离字段(必填,无 project 时填 _global)
project: factor-validation # 所属项目域
purpose_tag: alpha-verification # 本次产出的 Purpose 标签
purpose_version: 20260627-v1 # 绑定 Purpose 快照版本
# 可选字段
auto_generated: false # 自动生成标记,支持批量清理
trilium_source_ids: [abc123] # 便于回写标签
embedding_model: qwen3-embedding:0.6b
contested: false # 有未解决矛盾
contradictions: [] # 冲突页面列表
stale: false # Purpose 变更后旧页面标记
---
Tag Taxonomy (18 上限)
| 领域 | 核心标签 (5) | 扩展位 (1) |
|---|---|---|
| quant | strategy, factor, indicator, data-source, backtest | _ext_q |
| pkm | reading, workflow, lesson, project-retro | _ext_p |
| dev | toolchain, code-pattern, agent-framework, testing, mcp | _ext_d |
| 跨领域 | comparison, reference, glossary | — |
总量:17 固定 + 1 弹性 = 18 硬上限
规则:新增标签必须先更新 SCHEMA.md;扩展位仅用于临时项目,项目结束回收;lint 校验超限直接报错。
Sources URI 标准化
| 协议 | 格式 | 解析方式 |
|---|---|---|
| trilium | trilium://note/{noteId} |
MCP get_note |
| mempalace | mempalace://{wing}/{drawer-id} |
MCP get_drawer |
| session | session://{session-id} |
session_search |
| file | file://{absolute-path} |
read_file |
| shared | shared://{relative-path} |
read_file |
| searxng | searxng://{query} |
SearXNG 搜索 |
| tavily | tavily://{query} |
Tavily 搜索 |
Skill 内置 URI 解析器,一键拉取溯源原文。
Page Thresholds
- Create: entity/concept 出现在 2+ 来源 OR 是单来源核心主题
- Update: 来源提到已有内容
- DON'T create: 轻微提及、次要细节、领域外内容
- Split: 页面 >200 行(comparison 类型豁免,仅软提示)
- Archive: 内容完全过时 → _archive/,从 index 移除
多格式素材处理
| 素材类型 | Trilium存储 | Wiki处理 |
|---|---|---|
| file note (base64) | OCR/文本提取 → raw/papers/ | |
| HTML/网页 | text note | 直接 → raw/articles/ |
| 公众号(含图) | text note + image notes | 正文 → raw/articles/,图片URI引用 |
| 图片/截图 | image note (base64) | OCR → raw/transcripts/ (如有关键信息) |
| 纯文本 | text note | → raw/transcripts/ |
核心原则:wiki 只存纯文本 MD + URI 引用,不存二进制。
Trilium 标签工作流
素材进入 → wiki_status=draft
↓ 被 project 消费
wiki_processed_by=[project-a, project-b] (多值 label)
↓ 内容过时
wiki_status=archived
页面分级行为
| confidence | page_stage | 行为 |
|---|---|---|
| low | draft | 仅本地,定期清理 |
| medium | draft/final | 本地 + Obsidian 审核 |
| high | final | auto_sync=true → 推送 Open Notebook + Git |
信息量阈值
- MemPalace drawer 单条 ≥ 30 字符
- session 片段合并 ≥ 200 字
- 不满足 → 不生成页面,记入 log
Lint 门禁
| 检查项 | 规则 |
|---|---|
| 标签合规 | ≤18,必须在 taxonomy 内 |
| URI 格式 | 合法协议 |
| sources 断链 | 定期 lint-sources 扫描 |
| frontmatter | title/created/updated/type/domain/tags/confidence/page_stage/project 必填 |
| 孤立页面 | 无入链标记待完善 |
| 页面大小 | >200 行软提示(comparison 豁免) |
| purpose 版本 | 页面 purpose_version 与最新快照对比,过期标记 stale |