用途
wiki-update 用于把当前项目中的知识提炼并同步到用户的 Obsidian 知识库(vault)。它可以从任意项目目录运行,不限于 obsidian-wiki 仓库本身。其核心目标是回答一个问题:如果三个月后带着零上下文回到这个项目,你希望知道什么?
主要能力
- 扫描当前工作目录,识别项目类型、结构、依赖与关键抽象。
- 读取 README、docs、Markdown 文件、package.json、pyproject.toml、go.mod、Cargo.toml 等定义文件,以及 Git 提交记录和 Claude 记忆文件。
- 基于 .manifest.json 判断是否首次同步,并通过 git merge-base 校验上次同步的 commit SHA 是否仍可达,从而计算增量差异。
- 决定哪些内容值得沉淀:架构决策及原因、构建中发现的模式、依赖的工具/服务/API 及其连接方式、关键抽象与心智模型、评估过的权衡、代码中不明显的经验。
- 不值得沉淀的内容包括:文件列表、样板代码、显而易见的配置、无更广泛教训的单个 bug 修复、依赖版本、锁文件内容、代码已清晰表达的实现细节。
- 将项目专属知识写入 projects/<project-name>/ 目录,包含项目概览页、concepts/、skills/、references/ 子目录;将通用知识写入全局分类 concepts/、skills/、entities/、synthesis/。
- 每个页面使用 YAML frontmatter,包含 title、category、tags、sources、summary、provenance、base_confidence、lifecycle、created、updated 等字段。
- 使用来源标记区分 extracted(代码/配置/文档/提交信息中可见的事实)、inferred(推断的决策原因、设计理由、权衡)、ambiguous(代码与文档不一致或迁移进行中)。
- 更新已有页面时合并新信息,避免重复创建;更新 updated 时间戳并添加新来源。
- 创建/更新页面后添加 [[wikilinks]] 交叉链接。
- 更新 .manifest.json,记录 source_repo(规范化仓库 URL)、source_cwd_hint、last_synced、last_commit_synced、pages_in_vault。
- 通过 obsidian-wiki memory sync 一次性更新 index.md、log.md 和 hot.md,并可记录 takeaways 与待办线程。
使用方式
该技能以自然语言指令形式描述工作流程,通常由支持技能调用的 AI 助手执行。主要步骤包括:
- 理解项目:扫描当前工作目录,识别项目类型与关键信息,从目录名推导项目名称。
- 计算差异:检查 .manifest.json,首次同步则全量扫描;已同步则校验上次 commit SHA 是否可达,并查看变更。
- 决定提炼内容:依据“读代码能回答的就不写 wiki,需要跨 20 个提交重新推导理由的才写 wiki”这一启发式判断。
- 可选:构建代码理解焦点图。若 obsidian-wiki code-understand 命令可用,可运行它以获取排序后的文件与符号,选择性阅读承重部分。首次同步省略 --since,增量同步传入上次 commit SHA。若 codegraph 后端不可用,可提示用户安装 npm install -g @colbymchenry/codegraph,但不得未经用户同意安装,也不得因缺失而阻塞同步。
- 提炼为 wiki 页面:按项目专属与全局分类写入,使用规定的 frontmatter 与来源标记。
- 交叉链接:在新页面与已有相关页面之间添加 [[wikilinks]]。
- 更新跟踪:更新 .manifest.json、index.md、log.md、hot.md,可通过 obsidian-wiki memory sync 完成。
- 可选:刷新 QMD 索引。仅当 QMD_WIKI_COLLECTION 已设置时执行,使用 ${QMD_CLI:-qmd} update 与 embed,并验证页面可见性。若 CLI 不可用或失败,不回滚 wiki 更新,仅报告跳过或失败。
适用场景
- 希望将项目中的架构决策、设计模式与经验沉淀到个人 Obsidian 知识库。
- 需要跨项目复用通用概念、模式与工具知识。
- 希望以增量方式同步项目变更,避免重复扫描。
- 需要为知识页面保留来源与置信度信息,便于后续检索与审阅。
限制
- 需要配置 OBSIDIAN_VAULT_PATH、OBSIDIAN_WIKI_REPO、OBSIDIAN_LINK_FORMAT 等环境变量,配置解析遵循 llm-wiki/SKILL.md 中的 Config Resolution Protocol。
- 写作偏好(WRITING.md)仅适用于新起草或重写的自然语言 Markdown,不改变源内容与结构化记录。
- 代码理解焦点图与 QMD 索引刷新均为可选优化,缺失时不影响主流程。
- 不得将 .codegraph/ 或 code-understand 的 JSON 写入 vault。
- 不得复制代码,应提炼知识而非实现。
- 关于具体收费、价格、平台支持范围等信息,资料中暂未提供。