← ClaudeAtlas

shiplisted

提交代码、归档 spec、生成 changelog
chengxuniucode/ForgeTeam · ★ 0 · AI & Automation · score 69
Install: claude install-skill chengxuniucode/ForgeTeam
# Ship Skill ## 目标 验证通过后,将变更安全地提交到 Git 并归档相关 spec。 确保每次 ship 都有清晰的提交记录和可追溯的变更历史。 ## 执行步骤 ### Step 1: 确认 verify 结果 确认 verify skill 输出为 PASS,否则拒绝 ship。 ### Step 2: 组织提交 **Micro Route**: - 单次 commit,消息格式:`fix: {描述}` 或 `feat: {描述}` **Standard Route**: - 单次 squash commit 或逐 task commit(根据 config) - 消息格式:`feat({scope}): {描述}` **Full Route**: - 逐 Wave commit,最终可选 squash - 消息格式包含 spec 引用:`feat({scope}): {描述} [spec:{slug}]` ### Step 3: Commit Message 生成 ``` {type}({scope}): {简短描述} {详细描述,说明做了什么和为什么} Changes: - {文件变更摘要} Verified: build ✓ test ✓ run ✓ safety ✓ ``` Type 自动判定: - 新文件为主 → `feat` - 修改现有文件 → `fix` 或 `refactor` - 只改配置/文档 → `chore` 或 `docs` - 性能相关 → `perf` ### Step 4: 文档完整性检查 提交前确认文档与代码同步: ``` 检查清单: ├── specs/active/{slug}/ 中的文档是否与代码变更一致? ├── 新增接口 → api.md 已更新? ├── 数据模型变更 → data-model.md 已更新? ├── 流程变更 → flow.md 已更新? ├── 配置变更 → config.md 已更新? └── 如有不一致 → 阻塞提交,返回 execute 补齐 ``` 如发现文档未同步,拒绝 ship 并提示: ``` ⚠️ 文档-代码不同步,无法提交: - src/routes/user.ts 新增了 POST /api/users/export - 但 specs/active/{slug}/api.md 中无此接��描述 → 请先补齐文档再执行 /forge-ship ``` ### Step 5: 执行提交 ```bash # 添加代码和文档变更文件(必须同时包含) git add {changed_code_files} {changed_doc_files} # 确认没有意外文件 git status # 提交 git commit -m "{generated_message}" ``` ### Step 6: 归档 Spec 如果存在活跃 spec: ```bash # 移动到归档目录 mv specs/active/{slug} specs/archived/{slug} # 添加完成标记 echo "\n## Completed: $(date '+%Y-%m-%d')" >> specs/archived/{slug}/tasks.md ``` ### Step 7: 更新 Changelog(Full Route) 追加到项目 CHANGELOG.md: ``