mcpField
S
ship

ship

github.com/helderberto开发1952 次安装4 天前更新
代码仓库

关于 ship

ship 是用于验证、提交和推送代码变更的工作流技能。默认在提交前检查代码并扫描敏感数据,随后按逻辑分组提交并核验推送状态。

主要功能

  1. 01提交前验证代码
  2. 02扫描变更中的敏感数据
  3. 03按逻辑拆分原子提交
  4. 04推送并核验分支状态
  5. 05受限的快速模式

适用场景

  1. 01提交代码前运行检查
  2. 02将无关变更拆分为多个提交
  3. 03推送分支并确认状态

安装

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

$npx skills add https://github.com/helderberto/agent-skills --skill ship

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

详细介绍

发布更改

Ship 会在提交前运行发布前检查。默认情况下:validate-code + safe-repo。该检查可确保工作区中不会带有损坏或不安全的内容。

参数

  • --fast — 跳过发布前检查。仅用于紧急修复、临时分支(探索/原型/CI),或本次会话中已手动通过检查的情况。切勿在 main/release 分支上使用。在提交说明正文中注明原因。

工作流

阶段 1 — 发布前检查(使用 --fast 时跳过)
  1. 验证代码:调用 validate-code 技能。自动修复格式问题、验证类型并运行测试。
    • 如果 validate-code 返回 FAIL → 报告错误并停止。不要提交或推送。
  2. 敏感数据扫描:仅针对暂存区和未暂存的差异(而非整个仓库)调用 safe-repo 技能。
    • 如果发现敏感数据 → 报告发现项并停止。不要提交或推送。
阶段 2 — 提交
  1. 根据状态和差异检查所有更改
  2. 从日志中分析近期提交的风格
  3. 使用提交分组规则按逻辑关注点对更改的文件分组
  4. 对每个分组:按名称暂存指定文件,并使用 HEREDOC 格式提交
  5. 如果所有更改属于一个逻辑单元,按名称暂存文件(切勿使用 git add -A 或 git add .)
阶段 3 — 推送
  1. 推送:git push(当前分支)
  2. 随后运行 git status 进行验证

规则

  • 默认运行发布前检查;仅可通过 --fast 并说明原因来跳过;切勿在 main/release 分支上使用 --fast
  • 如果更改用途不同,将其分成多个原子提交
  • 绝不强制推送(-f 或 --force)

错误处理

  • 如果 git push 被拒绝(非快进)→ 运行 git pull --rebase,然后重试推送一次
  • 如果提交前钩子失败 → 修复报告的问题、重新暂存,并创建一个新提交(切勿使用 --amend)
  • 如果使用了 --fast → 在 Agent 输出中记录“Pre-launch gate skipped via --fast”,以便追溯

评论

支持 Markdown