Skip to content

vault-publish

vault-publish 是给 Claude Code 用的一份 agent skill,把"本地 Obsidian vault → GitHub wiki-vault → ECS → wiki.86lux.net"这条发布链路封装成"一句自然语言指令"的体验。

任何同事说"发布 wiki"或"同步 vault",Claude Code 就按这个 skill 走完 7 步:检查 vault 路径 → 检查 SSH → pull rebase → add canon/ → ask commit msg → commit → push。

它解决什么问题

  • 不是所有同事都熟悉 git 命令行
  • 不是所有同事都配过 SSH key
  • 容易手滑 git add . 把 personal/ 私人内容也推上去
  • 容易忘 git pull --rebase 直接 push 被拒绝

vault-publish 把这些痛点封装成 idempotent 向导,任何人 + 任何机器装上 skill 就能用。

它不是什么

  • ❌ 不是一个跑在服务器上的服务(它是 markdown 文件,本质是给 Claude Code 看的"说明书")
  • ❌ 不是一个 CLI 工具(不需要 npm install 也不需要 pip install
  • ❌ 不是一个 git 替代品(它调用 git,不替代 git)
  • ❌ 不会把内容传到 Anthropic 服务器(git 操作全在本机;Claude 只是帮你打字)

它在哪里

文件路径(Allen 的电脑):

C:\Users\Administrator\.claude\skills\vault-publish\SKILL.md

同事电脑放对应位置:

  • Windows:C:\Users\<name>\.claude\skills\vault-publish\SKILL.md
  • Mac/Linux:~/.claude/skills/vault-publish/SKILL.md

未来可考虑把 skill 本身也放进 wiki-vault repo 里(canon/_skills/),让同事 clone 后自动获得。

与其他 skill 的关系

  • llm-wiki — 编译 wiki 的 skill;它新内容到本地 vault,vault-publish 负责出去
  • 关系类似 "作家 vs 出版社":llm-wiki 写稿,vault-publish 印刷分发

关键工作流

[你写完笔记] → 在 Claude Code 说 "发布 wiki" → vault-publish 跑:
  1. 找 vault 路径(探测常见位置 + 兜底问用户)
  2. 检查是不是 git repo(不是就 init + 接 GitHub 远程)
  3. 检查 SSH key 通不通 GitHub(不通就生成 + 引导粘到 GitHub 网页)
  4. git pull --rebase origin main
  5. git add canon/   ← 永远只加 canon/,personal/ 在 .gitignore
  6. git status 确认;问你这次写了啥;生成 commit message
  7. git commit + git push
  8. 报告:图片走 LFS 上传 X 个、文档 push 成功,预计 1-2 分钟内 wiki.86lux.net 可见

设计原则

  • idempotent:跑 N 次和跑 1 次结果一样
  • 零脚本依赖:纯 markdown skill 文档 + Claude Code 内置的 Bash 工具,不需要装额外程序
  • 有问必答:每个错误(Permission denied、merge conflict、LFS quota)都有对应排查段落
  • 不替你做破坏性决定:不 force push,不 git reset --hard,不替你写 commit message

关联

TeamOS · docs as code · canon=权威知识,drafts=候选区