← ClaudeAtlas

shiplisted

コミット済みの変更を PR 作成 → CI 確認 → クリーンアップまで進めるワークフロー。 start-dev スキルを使わずに開発した場合にも対応する。 Trigger when the user says: "ship", "ship it", "PRを作って", "PR作成", "プッシュしてPR", "出荷", "create PR", "push and PR", "submit PR", "マージまで", or similar phrases requesting to push, create a PR, or finish development.
kompiro/hane · ★ 0 · AI & Automation · score 70
Install: claude install-skill kompiro/hane
# Ship Workflow コミット済みの変更を PR 作成 → CI 確認 → クリーンアップまで進める。 `/start-dev` を使わずにブランチで直接開発した場合にも対応する。 ## 前提条件 - `gh auth status` で GitHub 認証済みであること - 現在のブランチが `main` でないこと(機能ブランチ上であること) - コミット済みの変更があること ## ホスト repo に依存する慣習について `/start-dev` skill と同じ optional 仕様に従う。`status: *` ラベル運用、preview deploy URL 表示、CHANGELOG 維持などはホスト repo が当該慣習を採用している場合のみ実行する。 ## 手順 ### 0. 状態確認 スキル開始時��現在の状態を自動検出する。 1. 現在のブランチ名を取得する: `git branch --show-current` 2. `main` ブランチ上の場合はエラーメッセージを表示して終了する 3. 未コミットの変更を確認する: `git status --porcelain` - 未コミットの変更がある場��、`/commit` スキルを実行してコミットする - コミット完了後、後続の処理を続行する 4. main からの差分コミット一覧を取得する: `git log --oneline origin/main..HEAD` - コミットがない場合はエラーメッセージを表示して終了する 5. worktree 内かどうかを判定する: `git rev-parse --show-toplevel` - パスに `.claude/worktrees/` または `.worktrees/` を含む場合は worktree 内と判定する 6. **依存関係をインストールする**(`package.json` がある場合のみ) - worktree 直後 / main から切り替えた直後 / lock file が更新された直後は `node_modules` が古く、pre-push hook の typecheck や test が依存不足で失敗する - 後続の commit / push より前に必ず実行する。host が lefthook / husky / pre-commit を採用している場合、install の `prepare` スクリプトで pre-push hook も設置される - パッケージマネージャは `package.json` の `packageManager` フィールドまたは lock file(`pnpm-lock.yaml` / `package-lock.json` / `yarn.lock`)から検出する - ロックファイルが最新なら即座に完了する 7. 関連 Issue を検出する: - ブランチ名からパターンマッチ(例: `feat/issue-42-xxx` → #42) - コミットメッセージ内の `#N` パターン - 見つからない場合はユーザーに Issue 番号を確認する(なしも可) 8. **CHANGELOG の追記を確認する**(ホスト repo が CHANGELOG を維持している場合のみ。リポジトリ直下に `CHANGELOG.md` が無い、または Keep a Chang