SuperAPI AI 工具集

vault-sync-uninstall

办公与效率

查看项目

更新于 10-16 09:14

技能介绍

vault-sync-uninstall 用于从当前主机移除 vault-sync。它会停止调度器作业、删除已部署的脚本与单元文件,并留下 tombstone 标记以便取证追溯。

适用场景

  • 在某台主机上退役 vault-sync
  • 干净重装(先卸载再安装)
  • 移除测试安装

执行步骤

  1. 检查安装状态:skillwiki config get vault_sync.installed。若为 false,则退出 0 并给出提示信息。
  2. 停止并移除调度器单元:
    • macOS:launchctl bootout gui/$UID/<label>,然后 rm ~/Library/LaunchAgents/com.karlchow.wiki-*.plist。
    • Linux:systemctl --user disable --now wiki-push.timer wiki-fetch.timer wiki-fuse-refresh.timer,然后移除单元文件。
  3. 在每个被移除的单元旁创建 tombstone *.RETIRED.md(ADR D7 模式):
    # RETIRED — com.karlchow.wiki-push
    - Retired: <ISO date>
    - Why: <reason from --reason flag, or "manual uninstall">
    - Restore: claude plugin install vault-sync@llm-wiki && /vault-sync-install
    
  4. 移除脚本:rm -rf $(platform_share_dir)/bin
  5. 从 skillwiki 配置中注销:skillwiki config set vault_sync.installed false

选项

  • --keep-logs(默认):保留 wiki-*.log。
  • --purge:同时移除日志。

保护与强制

  • 若 fleet.yaml 将某主机标记为 protected: true,则拒绝在该主机上运行。
  • 覆盖方式:--force-protected(仅用于 sg01 手工迁移场景)。

护栏

  • 受保护主机(如 sg01)默认被拒绝。手工迁移需要 --force-protected。
  • Tombstone 始终保留(从不清除)——它们是供未来调试使用的取证线索。
  • 日志默认保留——其中包含调试信息。

执行方式

伴生脚本(交互式):

bash packages/vault-sync/skills/vault-sync-uninstall/uninstall.sh --dry-run
bash packages/vault-sync/skills/vault-sync-uninstall/uninstall.sh --purge
bash packages/vault-sync/skills/vault-sync-uninstall/uninstall.sh --force-protected --reason "manual host migration"

伴生脚本(无头 / CI):

VS_DRY_RUN=1 VS_PURGE=0 bash packages/vault-sync/skills/vault-sync-uninstall/uninstall.sh