docling
PRIMARY skill for converting .pdf, .docx, .pptx, .xlsx, .doc, .ppt, .xls, images, and audio/video files (.mp3, .wav, .m4a, .mp4,…
将源文件/资料增量导入(入库)到现有 wiki,使知识持续积累和演进。读取源文件,生成或更新 source 摘要页与实体/概念/对比等页面,建立交叉链接,检测矛盾,更新分层 INDEX/log/hot(旧单索引库首次入库时自动升级为分层索引)。支持显式文件路径、URL、或无显式目标时自动找最近 raw/wechat 暂存资料。Triggers on: 入库, 导入, 整理进知识库, 保存到知识库, 归档这个文件, ingest, add this to the wiki, process this source, 把这个文件加入 wiki, read
$ npx -y skills add zhuzhaoyun/Molio --skill wiki-ingest --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/wiki-ingestContext preview
The summary Claude sees to decide when to auto-load this skill.
将源文件/资料增量导入(入库)到现有 wiki,使知识持续积累和演进。读取源文件,生成或更新 source 摘要页与实体/概念/对比等页面,建立交叉链接,检测矛盾,更新分层 INDEX/log/hot(旧单索引库首次入库时自动升级为分层索引)。支持显式文件路径、URL、或无显式目标时自动找最近 raw/wechat 暂存资料。Triggers on: 入库, 导入, 整理进知识库, 保存到知识库, 归档这个文件, ingest, add this to the wiki, process this source, 把这个文件加入 wiki, read
name: wiki-ingest description: 将源文件/资料增量导入(入库)到现有 wiki,使知识持续积累和演进。读取源文件,生成或更新 source 摘要页与实体/概念/对比等页面,建立交叉链接,检测矛盾,更新分层 INDEX/log/hot(旧单索引库首次入库时自动升级为分层索引)。支持显式文件路径、URL、或无显式目标时自动找最近 raw/wechat 暂存资料。Triggers on: 入库, 导入, 整理进知识库, 保存到知识库, 归档这个文件, ingest, add this to the wiki, process this source, 把这个文件加入 wiki, read and file this. version: 2.3.0
将指定的源文件(或资料)增量导入到现有 wiki 中,使 wiki 的知识持续积累和演进。
vault 根目录就是当前工作目录。源文件在子目录中(如 raw/、notes/、docs/)。 wiki 相关内容的目录结构:
页面路径规则:
每个 wiki 页面必须包含以下 YAML frontmatter:
--- type: source | entity | concept | comparison | overview | question | session title: "人类可读的标题" created: YYYY-MM-DD updated: YYYY-MM-DD tags: - 领域标签 related: - "[[相关页面]]" sources: - "[[源文件名]]" ---
字段说明:
`wiki/hot.md` 是近期上下文缓存,用于快速恢复上下文。格式:
# 近期上下文 > 最后更新:YYYY-MM-DD HH:MM ## 最近操作 - [操作描述] ## 关键页面 - [[页面名]] — 为什么重要 ## 开放问题 - 尚未解决的问题或待跟进的事项
管理规则:
node "<skill_dir>/extract.js" "<url>"
`<skill_dir>` 是 vault 下 `.claude/skills/wechat-article-extractor/` 的绝对路径。脚本 stdout 输出 Markdown 正文,stderr 输出一行 JSON 元数据(含 title/author/account/publishTime)。退出码为 2(内容不可用)时不要重试,提示用户手动粘贴正文。非 `mp.weixin.qq.com` 链接按一般 URL 处理。
实体文件(PDF/图片等)本身就是暂存资料,直接读其内容做摘要,**不要再额外新建 `.md` 暂存文件**,也不要重命名或移动它。
**含图资料(扫描版教材、PPT、带插图的 PDF)**:入库时图必须一起进来,不能只留文字。转换用 docling `--image-export-mode referenced`,再用 `media.mjs collect` 归置到 `wiki/images/<主名>/`,页面里用 `![[ ]]` 嵌入——完整流程和硬规范见 wiki-build SKILL.md「含图源文件(图版)处理」节。**缩短版三条**:只能 `![[ ]]` 不能 ``;只能写完整 vault 相对路径;caption 要 Read 图片看准了再写。收尾跑 `media.mjs check` 确认无悬空引用。
源文件超长(`wc -c` > 1.5MB,约 50 万中文字,或 Read 一次读不完)时,**复用 wiki-build 的确定性管线脚本**(同批安装于 `.claude/skills/`,维护一份,两个 skill 引同一实现)。完整管线见 wiki-build SKILL.md「超长源文件处理」节,这里只列 ingest 的差异。
# 管线(与 build 相同): # build-lock acquire → prep → L1 digest → curate draft → agent 审核 → curate split → 建页 → place → linkpass --batches → deadcheck → sweep → repair
**ingest 与 build 的三个关键差异**:
1. **place 用 `--append` 模式**(增量追加,不全量重写 INDEX):
node ".claude/skills/wiki-build/scripts/place.mjs" <x> --vault . --append
build 全量重写 INDEX;ingest 只追加新页条目到现有 INDEX(去重),不抹掉既有条目。**这是 ingest 与 build 最本质的分界**。
2. **curation 只选与本次相关的候选**:ingest 是增量入库,curation 审核时只保留与新源文件相关的候选行(已有 wiki 覆盖的不重建)。不要求全量处理——剩余留待后续 ingest。
3. **增量融合**:新页面必须与现有 wiki 页面建立反向链接、检测矛盾(`> [!contradiction]` callout)——这是 ingest 独有的要求,build 不需要。
**其余完全照 build 管线**:建页判据(信息落点)、批次 TSV 格式、并发限制(≤5-6)、取证封顶(≤30 条)、对账门禁(deadcheck exit 0)、引文核验(sweep 分类 → 只修 real)。
若 wiki 仍是旧单索引布局(根 `wiki/INDEX.md` 以 `- [[页面]] — 摘要` 逐页罗列、内容目录无 INDEX.md),**在本次入库前先自动完成索引分层迁移**(只重构索引,不动页面文件):
1. `find wiki/ -name '*.md'` 一次,建「页名 → 所在目录」映射 2. 旧根 INDEX 的页面条目按映射分流写入各目录的 INDEX.md(保留原摘要;条目多则 `##` 分组) 3. 根 INDEX.md 改写为分层结构:概述条目内联,其余目录各一行(目录链接 + 页数 + 覆盖范围)
过程幂等(目录索引已存在即跳过);执行后在回答末尾告知用户「索引布局已升级为分层」。布局规范详见 wiki-build SKILL.md「索引分层结构」节。
1. **读取源文件**:读取目标源文件/资料,理解其内容。**超长文件先走 build-lock acquire(见"超长源文件处理"),再走分层消化,不要通读** 2. **读取现有 wiki**:读根 `wiki/INDEX.md` + 相关目录的 INDEX.md,了解现有结构和已覆盖内容;**若发现是旧单索引布局,先按上节完成索引升级再继续** 3. **扫描相关页面**:读取与新内容最相关的已有 wiki 页面(3-5 个),了解已有知识 4. **分析关联**:
5. **创建/更新页面**:
6. **反向更新交叉链接**:如果新页面与已有页面相关,在已有页面中也添加 [[wiki 链接]] 7. **矛盾处理**:如果新信息与已有 wiki 内容冲突:
8. **更新索引(追加,不重写)**:新页面条目**追加**入**所在目录的 INDEX.md**(对应分组下),已修改页面的描述同步更新;根 INDEX.md 的对应目录行更新页数与覆盖范围(新目录则补一行)。**超长文件禁止用 build 的 place.mjs 重写 INDEX**(会抹掉既有条目) 9. **追加 wiki/log.md**(最新条目在最上面):
## YYYY-MM-DD HH:MM | ingest | 文件名 - 创建页面数:N - 更新页面数:N - 关键发现:一句话概述
10. **刷新 wiki/hot.md**:完全重写,包含本次操作的摘要和当前 wiki 状态 11. **释放构建权**:超长文件处理时,`build-lock.mjs release "ingest-<主名>-<日期>"`(必须释放,否则后续 build/ingest 会话会被挡) 12. **汇报**:创建和更新了哪些页面,发现了哪些矛盾或知识缺口
**判据与 wiki-build 共享**,见该 skill 的「建页粒度」节——信息落点三结构量(覆盖深度 / 独立信息量 / 引用需求)+ "讨论对象 vs 背景挂点"二元判据 + 删除测试。**两个 skill 对同一 vault 必须用同一套判据**,不在本文件另写一套规则。
ingest 侧强调两点:
Give AI your personal knowledge base. Local-first, and every byte stays yours.
PRIMARY skill for converting .pdf, .docx, .pptx, .xlsx, .doc, .ppt, .xls, images, and audio/video files (.mp3, .wav, .m4a, .mp4,…
Molio's builtin skill for MAKING a video from any source — wiki notes, articles, scripts, product info, or a brief — and…
提取微信公众号文章(mp.weixin.qq.com)内容为 Markdown。遇到 mp.weixin.qq.com 链接时使用此 skill,禁止使用 WebFetch。
构建/重建本地知识库的 Wiki。扫描 vault 中所有源文件,从中构建一个结构化的 wiki(源文件摘要、实体、概念、对比、概述页),创建分层 INDEX(根索引 +…
对本地知识库的 Wiki 做健康检查/质量审查。查孤立页、断链、断引用、frontmatter 缺失、空段落、内容矛盾、过时内容、INDEX 偏差、知识缺口,生成 lint 报告并给出补充方向建议。Triggers on: 健康检查, 检查 wiki…
基于本知识库已构建的 wiki 和源文件回答用户关于库内内容的问题,或为库内主题的任何任务(写作、分析、咨询等,形式不限)提供依据。先读 wiki/hot.md 与根 wiki/INDEX.md、再按需读相关目录的 INDEX.md 定位页面,读取最相关的…