PaperSpine Update 是一个用于维护和升级 PaperSpine 的技能,主要面向需要更新本地 PaperSpine 套件的用户。
用途 当用户要求更新 PaperSpine、检查 PaperSpine 是否为最新版本、从 GitHub 重装本地套件,或升级本地 Codex、Claude Code、OpenClaw 的 PaperSpine 技能并保留原有设置时,使用本技能。
主要能力
- 读取本地安装状态:当 ~/.paperspine/install_state.json 存在时读取该文件;缺失时回退到本技能自带的 paperspine_version.json。
- 版本比较:与 GitHub 主清单 dist/paperspine_version.json 进行比对。
- 默认更新范围:默认更新 Codex、Claude Code 和 OpenClaw 三个宿主的安装。
- 保留配置:保留 ~/.paperspine/config.json,包括界面语言偏好。
- 保护项目产物:不会触碰 paper_rewriting_output/ 等项目产物。
- 已是最新提示:无需更新时打印明确的“已是最新”消息。
- 清理过期条目:安装或更新后移除 PaperSpine 技能中过期的 skillOverrides 条目(同步脚本会自动完成此操作)。
使用方式 使用已安装技能的完整路径运行内置更新脚本。
Windows: $script = Join-Path $env:USERPROFILE ".claude\skills\paper-spine-update\scripts\paperspine_update.py" python $script --yes
macOS / Linux: python3 ~/.claude/skills/paper-spine-update/scripts/paperspine_update.py --yes
仅做版本检查时,使用 --check-only 代替 --yes。
高级用法
- 仅当用户明确要求更新单个宿主时,使用 --target codex、--target claude 或 --target openclaw。
- 使用 --repo-archive <path-or-url> 进行本地测试,或从已下载的 PaperSpine 归档文件进行离线更新。
- 仅用于测试,或用户明确配置了非默认的 PaperSpine 全局配置目录时,使用 --config-home <path>。
适用场景 适用于升级 PaperSpine、检查最新版本、从 GitHub 重装本地套件,以及在不丢失设置的情况下升级 Codex、Claude Code、OpenClaw 上的 PaperSpine 技能。
限制与异常处理 若网络访问失败,应报告更新脚本的错误,并建议用户从新下载的仓库手动运行安装程序。下载失败或包校验失败后,不要删除本地技能。