← ClaudeAtlas

mergedlisted

Delete merged branches and worktrees, stopping only where git refuses, then update the base branch. Use when a PR was merged(マージ後の後片付け・ブランチを整理・worktreeを削除).
devbasex/ai-plugins · ★ 1 · Code & Development · score 68
Install: claude install-skill devbasex/ai-plugins
# マージ後クリーンアップコマンド PR マージ後の後始末をまとめて実行する。対象 PR のブランチ削除に加えて、残っているマージ済みブランチの整理と起点ブランチの取り込みもこの Skill で扱う。 ## 用途の切り分け(最初に判定する) | 依頼の意図 | 実行する節 | |---|---| | PR マージ後のクリーンアップ | 「クリーンアップの手順」→ 必要なら「マージ済みブランチの整理」 | | マージ済みブランチの整理のみ | 「マージ済みブランチの整理」のみ(クリーンアップの手順は実行しない) | | 作業中ブランチへ最新の起点ブランチを取り込む | 「起点ブランチの取り込み」のみ(クリーンアップの手順は実行しない) | 「クリーンアップの手順」以外を目的とする場合、対象 PR は未マージであるのが通常のため、 マージの確認(`merged-steps.py cleanup`)を前提条件にしてはならない。「マージ済みブランチの整理」と 「起点ブランチの取り込み」はいずれも **単独で実行可能** で、PR のマージ状態に依存しない。 ## 止まる条件 **後片付けは止めずに通す。** worktree・ローカルブランチ・Pull Request の head のリモート ブランチの削除は、どれも事後に戻せる。**実行前確認は置かず、消した対象と戻し方を作業完了 報告へ載せる**(要否の基準は [AUTHORING.md](../AUTHORING.md) の「実行前確認の要否を決める 3 つの問い」)。 **止める合図は git の拒否だけである。** `-D` の代わりになる判定をこの Skill の側に作らない。 | 対象 | 止めずに行う | 止まる(一覧で示し、同意の無い対象を消さない) | 触らない(報告に「対象外」) | | --- | --- | --- | --- | | 作業ツリー | `git worktree remove <path>` が 0 で終わる。拒まれたら未追跡・無視されたファイルを退避して外す(スクリプトが行う) | 退避か削除が 0 以外で終わる(未完了。同意の対象にしない) | 主ディレクトリ | | ローカルブランチ | `git branch -d <name>` が 0 で終わる | 同じコマンドが 0 以外で終わる | 起点・本番のチャネル・現在のブランチ | | リモートブランチ | マージ済み Pull Request の head で、同じリポジトリにあり、先端が `headRefOid` と一致する | — | 起点・本番のチャネル・fork の head、先端が `headRefOid` と違う、対応する Pull Request が見つからない | | 課題 | **閉じない**(ミッションの課題の OPEN の一覧を報告に載せる��け) | — | — | - **起点・本番のチャネル・現在のブランチは、同意を求めずに対象から外す。** 尋ねる場面を 作ること自体が誤りで、1 回の誤答で開発の本流が消える。起点は「起点ブランチを決める」の `$dev_base`、本番のチャネルは `.ndf/worktree.json` の `production_branch`(宣言が無ければ 既定ブランチ)である - **リモートブランチを消すのは、先端が Pull Request の `headRefOid` と一致するときだけ。** マージの後