SuperAPI AI 工具集

ship

部署与运维

查看项目

更新于 10-16 05:47

技能介绍

Ship 技能用于把「发布变更」的完整流程自动化:更新文档、暂存、提交、推送,并清扫临时文件。它会把相关改动按主题合并为一个提交,并在工作区干净但存在未推送提交时,走文档补记路径。

用途与流程

先审阅改动,运行 git status --short、git diff --cached --name-status、git log @{upstream}..HEAD --oneline 2>/dev/null,并确认当前分支与远程跟踪状态。若工作区干净但有未推送提交,则用 git diff @{upstream}..HEAD --name-status 列出这些提交涉及的文件,像对待未提交改动一样分析,再检查是否缺少文档更新。若工作区干净且无未推送提交,则报告「nothing to ship」并停止。

随后逐文件分析改动性质,按路径归类(内容写作、技能配置、代码脚本、文档、配置数据、资源清单、notebook、资源映射等)。

文档更新

CHANGELOG.md:若仓库根目录存在该文件则始终更新,遵循 Keep a Changelog,在顶部新增 ## [YYYY-MM-DD] 段落,同日已有则不重复创建;按 Added、Changed、Removed、Fixed 仅保留相关小节,每条一行、从用户视角描述。

CLAUDE.md:总是读取并与当前项目状态比对,只更新受影响小节;检查可能过期的日期、状态表等时间标记。

README:当改动影响该 README 所描述内容时更新。

若脚本或数据文件有改动,执行级联检查:找出引用其输出或数据的下游 markdown 报告、附录与文档,核对数字、表数据、路径与交叉引用是否一致,修正后一并提交。同时检查已删除、重命名、移动文件及被移除功能在文档中的失效引用与缺失引用。

提交策略与消息

单一主题则一次提交;多主题按目录分组,优先级为:内容目录(每篇文章/文档单元一个提交)、技能目录(每个技能一个提交)、代码改动合并为一个、配置与文档合并为一个。.r2-upload-map/*.json 与其相关内容同组。文档更新归入触发它的分组提交。提交信息follow conventional commits:<type>: <description>,类型含 feat、fix、refactor、docs、test、chore、perf、ci,长度不超 70 字符,描述面向用户的改动。

暂存与推送

按分组显式 git add 各文件后 git commit -m "<message>",不使用 git add . 或 git add -A;排除临时文件(.bak-、.DS_Store、node_modules/、.claude/)。随后 git push;若无上游则 git push -u origin <current-branch>。

清理与确认

推送成功后列出并删除临时文件与缓存目录,匹配模式包括 .bak-、.pyc、.pyo、.swp、.swo、*~、.DS_Store、Thumbs.db 以及 pycache/、.pytest_cache/、.mypy_cache/、.ruff_cache/。无匹配则注明无临时文件可清理。最后运行 git log --oneline -3 显示提交哈希与信息确认成功。

限制

资料未说明该技能的具体安装方式、价格、支持的运行平台或依赖版本,这些信息暂未提供。