mcpField
O
openwiki-update

openwiki-update

github.com/kinensake开发639 次安装16 周前更新
代码仓库

关于 openwiki-update

用于根据仓库变更更新现有 OpenWiki 文档的技能。它依据 Git 信息定位过时页面,并优先进行范围有限的针对性修改,避免大范围重写。

主要功能

  1. 01检测上次更新后的变更
  2. 02映射源代码变更与受影响页面
  3. 03针对性修改文档
  4. 04检查根目录 Agent 指令
  5. 05记录更新元数据

适用场景

  1. 01使 Wiki 页面与代码变更保持一致
  2. 02避免不必要的文档重写
  3. 03更新受影响的快速入门链接
  4. 04检查 Wiki 是否已是最新

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/kinensake/openwiki-skills --skill openwiki-update

安装后在 Claude Code 中输入/openwiki-update确认已加载。

附带文件references/core.md

详细介绍

Wiki 更新

刷新现有的 openwiki/ 文档,使其在仓库近期变更后仍保持准确。更新必须精准:只修改因源代码变更而过时的内容。

首先,阅读此技能目录中的 references/core.md——其中定义了所有输出必须遵循的质量规则、结构要求、安全规则,以及 AGENTS.md/CLAUDE.md 引用模板。

如果 openwiki/quickstart.md 不存在,请停止并告知用户先运行 /openwiki-init。如果用户在调用时提供了其他指示,请跳过无操作检查,并以该指示为更新依据。

工作流程

  1. 无操作检查。 读取 openwiki/.last-update.json。当以下条件全部满足时,跳过整个运行流程——报告自上次更新以来未检测到仓库变更,然后停止,不做任何编辑:

    • 元数据记录了 gitHead;
    • git status --short --untracked-files=all 为空(忽略 openwiki/.last-update.json 本身);
    • git rev-parse HEAD 与记录的 gitHead 相同,或者 git diff --name-only <gitHead>..HEAD 中的每个路径都位于 openwiki/ 内(且该列表非空)。
  2. 收集 Git 证据。 运行 git status --short、git rev-parse HEAD 和 git diff --name-status HEAD。检查上次成功运行后新增的提交:优先使用 git log <lastGitHead>..HEAD --name-status --oneline;如果没有记录 gitHead,则回退使用 git log --since <updatedAt>;如果完全没有元数据,则检查最近 20 个提交。使用 git show 查看高信号提交,以了解实际变更内容。

  3. 制定文档影响计划,根据变更的源文件确定:源代码变更 → 受影响的文档 → 所需编辑 → 原因。编辑前先阅读受影响的 openwiki/ 页面。如果某个页面无法关联到相关源代码、工作流、产品或现有文档变更,就不要编辑该页面。

  4. 精准编辑,遵循以下约束:

    • 保留仍然准确的现有结构和措辞。优先替换过时的句子,而不是添加新段落。
    • 只编辑那些因近期变更而变得不准确、不完整或有误导性的页面。不要刷新每个页面。
    • 每个概念只放在一个规范页面中;其他页面仅简要提及或提供链接。
    • 不做纯格式调整:不要重新排版表格、统一空行、调整源文件列表顺序,或为润色措辞而编辑,除非周边内容本身正因准确性问题而被修改。
    • 除非源代码变更导致其内容实质性错误,否则不要更新 Source Map 章节、Git 证据列表或通用的“注意事项”章节。
    • 除非某个特定提交解释了重要的历史决策,否则不要包含或刷新持久化的提交哈希列表。
    • 软性差异预算: 如果变更的源文件少于约 5 个,最多更新 1-2 个 Wiki 页面。除非产品顶层行为、设置或导航发生变化,否则不要改动 quickstart。如果认为需要编辑 3 个以上的 Wiki 页面,请认真思考原因,避免大范围修改。
    • 仅在影响计划要求时,才更新过时页面、添加缺失页面、删除过时声明并修复 quickstart 链接。
    • 更新可以合理地不做任何修改:如果 Wiki 已经准确,就不要编辑文件,并说明 Wiki 已是最新状态。
  5. 检查根目录 Agent 指令文件。 检查顶层 AGENTS.md/CLAUDE.md 中的 OpenWiki 引用章节,仅在缺失或语义上过时的情况下刷新(确切模板见 core.md)。即使 Wiki 本身已是最新状态,也必须进行此项检查。

  6. 记录运行元数据。 只有在修改了 openwiki/ 内容时,才重写 openwiki/.last-update.json 并设置 "command": "update"(格式见 core.md)。

最后总结修改了哪些页面以及原因,或者说明 Wiki 已是最新状态。

评论

支持 Markdown