Wiki Ingest:Obsidian 知识库摄入
把文件、网页和图片整理成可互联的 Obsidian 知识页面。
证据显示具备用户确认、原始文件只读、manifest 幂等检查、逐文件锁、冲突标记和传输回退机制;但默认可写入整个 vault,URL 使用 WebFetch、图片会复制附件,并可通过 MCP/CLI 产生外部或持久化影响,未充分说明敏感数据处理、统一回滚和数据流边界,因此扣分。
单源、批量、URL、图片、模式路由、锁重试和异常跳过流程较完整;但依赖多个未在目标文件中验证的脚本、工具和引用技能,关键 ingest 路径没有对应测试或可诊断的统一失败协议,静态证据不足,因此扣分。
触发词、文件/URL/图片/批量输入及主要输出较明确,也说明了 force、模式和非自动猜测等边界;但中文内容处理、语言输出、海外网络可达性和非适用场景未明确,URL 与 MCP 体验还依赖环境,因此扣分。
文档分层清晰,包含版本标记、模式说明、并发、幂等、限制和引用路径;仓库上下文提供 MIT 许可证、CI 和安全政策,但目标技能本身缺少安装依赖、FAQ、变更记录及明确维护责任和更新路径,因此扣分。
流程覆盖读取、摘要、实体/概念页、索引、缓存、日志和矛盾处理,理论上能完成核心知识归档;但“8-15 页”等结果未由目标技能的样例或执行证据验证,输出质量依赖模型判断且可能需要较多人工审阅,因此扣分。
仓库有真实 CI、前端校验和若干脚本测试,可支持部分基础可审计性;但没有覆盖 wiki-ingest 核心路径的测试、固定输入输出样例或第三方复核,且本次未执行任何内容,因此达到静态上限后仍扣分。
- 该技能会对 vault 中多个文件执行持久化写入;首次使用前应确认目标 vault、写入范围及备份/恢复方案。
- URL 摄取会获取远程内容,图片摄取会复制附件;不要默认输入包含敏感信息,也应明确网络请求和第三方 MCP 的数据流。
- 核心流程依赖 wiki-mode.py、wiki-lock.sh、detect-transport.sh、WebFetch 及若干交叉引用文件,缺失或版本不匹配时可能无法可靠运行。
- 批量摄取和模型生成的实体、概念及交叉链接应人工抽查,尤其是冲突判断和来源归因。
这个 Skill 能做什么,适合哪些场景?
Wiki Ingest 是 claude-obsidian 中负责来源摄入的独立 Agent Skill。它读取文件、URL、图片或批量来源,提取实体与概念,并在 Obsidian Markdown 知识库中创建或更新页面。技能会维护交叉链接、索引、近期上下文缓存、操作日志和来源清单。适合希望让 Claude Code 持续整理本地知识库、同时保留纯 Markdown 数据所有权的用户。
读取来源全文;对 URL 使用 WebFetch,并可选用 defuddle 清理网页内容;处理图片中的文字、实体、概念和图表信息;按 vault 模式路由来源、实体和概念页面;通过选定的 CLI、MCP 或文件系统传输方式写入页面;创建或更新来源、实体、概念、领域和索引页面;更新 wiki/overview.md、wiki/index.md、wiki/hot.md 与 wiki/log.md;使用 .raw/.manifest.json 追踪哈希,避免重复处理;在写入前使用 wiki-lock.sh 获取每文件锁;发现冲突时添加 contradiction callout。
- 研究者把论文、文章或课程材料放入 .raw/,希望自动拆分来源、人物、组织和概念页面。
- 知识管理用户把网页 URL 交给 Claude Code,希望内容被保存为 Markdown 并连接到已有知识图谱。
- 团队批量导入多个文件,希望并行摄入时降低同一页面被相互覆盖的风险。
- 使用 LYT、PARA、Zettelkasten 或 Generic 模式的 Obsidian 用户,希望新页面遵循当前归档路径。
这个 Skill 有哪些优点和局限?
- 支持文件、URL、图片和批量来源。
- 会同时生成或更新来源、实体、概念及索引类页面。
- 使用纯 Obsidian Markdown、wikilinks、YAML frontmatter 和 callouts。
- 有清单去重、模式路由、每文件锁、日志和冲突标记机制。
- 技能正文包含 WebFetch、Read、Write/Edit、Bash、Claude Code 子代理和 PostToolUse 等平台相关约定,迁移到其他客户端需要适配。
- 批量摄入需要先列出文件并确认,30 个以上来源预计耗时较长。
- 正文没有提供独立的 wiki-ingest 测试结果;README 只说明整个仓库有测试套件。
- URL、MCP 和某些传输方式依赖外部配置;图片摄入还需要可读取原始图片文件。
如何安装这个 Skill?
安装整个仓库后使用该技能。可直接克隆并初始化:git clone https://github.com/AgriciDaniel/claude-obsidian && cd claude-obsidian && bash bin/setup-vault.sh。然后在 Obsidian 中打开该文件夹,并在同一文件夹运行 Claude Code,输入 /wiki。也可先添加 marketplace:claude plugin marketplace add AgriciDaniel/claude-obsidian,再安装:claude plugin install claude-obsidian@agricidaniel-claude-obsidian。
如何使用这个 Skill?
将文件放入 .raw/,或在 Claude Code 中输入“ingest [file]”“add this to the wiki”或“ingest this url”。批量处理可输入“ingest all of these”。普通文件摄入会先检查 .raw/.manifest.json;未声明 force ingest 时,哈希未变化的来源会被跳过。URL 摄入会保存到 .raw/articles/ 后继续处理。