finishing-a-development-branch
作り終えた枝の取り込み方を 3 択で聞かせる。破棄は選択肢に入れず、合言葉を打たせる
npx skills add obra/superpowers/finishing-a-development-branch入れる前にこのスキルがすること・注意点・SKILL.md の原文を確かめてください。解析は安全性の判定ではありません。
- インストール
- 220,504
- 実用度
- 88
- GitHub star
- 313,505
- 最終更新
- 2026/11/4
頼み方の例
そのままコピーして使えますfinishing-a-development-branchを使って、この枝の作業を締めてください。テストを全部走らせて、緑になったら選択肢を出してください。マージやプッシュは私が選ぶまで実行しないでください。
対象のファイルや状況は、ご自身の作業に合わせて置き換えてください。
このスキルがすること
SKILL.md の記述から機械的に抽出- シェルコマンドを実行する記述があります
これは安全性の判定ではありません。 SKILL.md にそう書かれているという事実だけを並べています。実際に問題があるかは使い方と文脈で決まるため、当サイトでは断定しません。導入前に SKILL.md の原文を確認してください。
SKILL.md の規模
コードブロックの言語: bash
いつ使うか
実装が終わり、テストが通り、どう取り込むかを決めるときです。
中核の原則が 1 行で書かれています。
テストを確かめる → 環境を判定する → 選択肢を出す → 選ばれたものを実行する → 片付ける。
本文の手順はこの 5 つに「元の枝の特定」を 3 段目として足した 6 段です。
テストが落ちていたらメニューを出さない
1 段目がテスト一式の実行です。そして明確に書かれています。
緑になってからメニューが出る。落ちているなら、失敗を報告して止まれ。
「このセッションの前半で通っていた」という言い訳も潰されています。
いま取り込もうとしている木で走らせろ。緑の結果は、それが走った木についてしか証明しない。
環境を判定してメニューを変える
2 段目が変わっています。git の状態を調べて、選択肢の数を変えます。
| 状態 | メニュー | 片付け |
|---|---|---|
| 通常のリポジトリ | 3 択 | 片付けるものが無い |
| worktree で、名前のある枝 | 3 択 | 由来を見て判断 |
| worktree で、切り離された HEAD | 2 択(マージ無し) | 外部が管理。触らない |
3 番目は、実行環境が用意した作業場所です。そこを勝手に片付けないという判断が入っています。
判定に使う値は、場所を移る前に取っておく
判定に使う値は、場所を移る前に取っておく指示になっています。5 段目で作業場所の外へ出るので、そのあとでは取れません。実際に踏んだ形跡のある注意書きです。
破棄が選択肢に入っていない
3 択の中身です。
- 1 番: マージ元の枝にローカルでマージする
- 2 番: PRプッシュして PR を作る
- 3 番: そのままそのまま残す(あとで自分でやる)
「捨てる」がありません。これは意図されたものです。
作業を捨てるのは、利用者が明示的にそう求めたときだけ。メニューは書かれたとおりで完全である。
しかも破棄を求められた場合、discard と打たせます。「うん、消しといて」では通りません。本文の言い訳の表にもその行があります。
マージしたあとにもう一度テストする
1 番を選んだ場合の手順が丁寧です。
- 移る主となる場所へ移る
- 先にマージする先にマージする。消す前に成功を確かめる
- マージした結果でテストマージした結果でテストを走らせる
- 片付けて枝を消す緑になってから作業場所を片付け、枝を消す
マージ後のテストが落ちたら、止めて、作業場所も枝も残して調べる。まだ何も押していないので、ローカルで復旧できる——という理由まで書かれています。
元の枝を推測しない
3 段目が「元の枝の特定」です。分からなければ「この枝は〈推測〉から分かれましたか」と聞く。
理由は 1 行です。間違った先へのマージは、元に戻すのが高い。
片付けは自分が作ったものだけ
6 段目の片付けに、範囲の限定があります。
| 場所 | すること |
|---|---|
.worktrees/ か worktrees/ の下 | このスキル群が作った。片付ける |
| それ以外 | 実行環境のもの。そのまま残す |
削除を断られた場合(未追跡のファイルがある場合)の扱いも決まっています。自分の判断で --force を使わない。何が失われるかを見せて、3 択で聞く。
断られたということは、そのファイルはそこにしか存在しない。
言い訳が 10 個並んでいる
同じ公開元の他のスキルと同じ作りです。下は主な 6 行です。
| 言い訳 | 返し |
|---|---|
| どう見てもマージしたいはずだ | 取り込みは相手の決定だ。待て |
| PR を出したから作業場所は不要だ | PR の指摘はそこで直す。残す |
削除を断られた。--force で終わる | 断りは「そこにしかない」の意味 |
| マージ後の失敗はおそらく不安定なテストだ | 失敗は全部を止める |
| 元の枝はどう見ても main だ | 確認するか聞け |
| プッシュが弾かれた。強制すれば通る | 遠隔が動いた。調べろ |
使わないほうがいいとき
テストが無いプロジェクトでは 1 段目が空になります
緑を確かめてからメニューを出す設計なので、確かめるものが無いと判断の根拠が消えます。
git を使っていない対象
git を使っていない対象には使えません。
完了の宣言そのものを確かめたいなら別物です
「終わった・直った」を言う前の確認は verification-before-completion の担当です。
作業場所を作る側ではありません
そちらは using-git-worktrees です。
無人で完走させる用途ではありません
メニューを出して待つのが設計の中心です。
注意点
解析で見つかったこと
SKILL.md の解析では、シェルコマンドを実行する記述が見つかっています。同梱ファイルは 0 件です(2026-10-09 確認)。
git の破壊的な操作を含みます
参考: スキルを入れる前に確認すること
守りは丁寧ですが、保証ではありません
破棄に合言葉を要求し、--force を禁じ、.worktrees/ の外を触らない。これらは指示であって、実行するのはエージェントです。
プッシュと PR の作成は外に出る操作です
2 番を選ぶと遠隔のリポジトリに枝が作られます。社内の規程がある場合は先に確認してください。
マージ先を聞かれたら答えてください
推測させると、間違った枝に取り込まれる可能性があります。
ライセンス
ライセンス: MIT。再配布や商用利用の前に公開元の表記を確認してください。
インストール数の推移
日次で記録9月18日 〜 11月7日(49日分)
インストール数と 1 日あたりの増加は Skillselion が に集計した値です。上流の更新は数日おきなので、前日比ではありません。GitHub star と最終更新は に GitHub から取得しました。
併用すると強いスキル
よくある質問
勝手にマージされませんか
されません。メニューを出して待つのが設計の中心で、「取り込みは相手の決定だ」と明記されています。
テストが落ちている場合はメニューすら出ません。
作業を捨てる選択肢はありますか
メニューには入っていません。明示的に求めたときだけの経路で、しかも discard と打つ必要があります。
「うん、消しといて」では通らないと、言い訳の表に書かれています。
worktree は消されますか
場所によります。 .worktrees/ か worktrees/ の下ならこのスキル群が作ったものとして片付けます。それ以外は実行環境のものとして残します。
2 番(PR)と 3 番(そのまま)では、どちらの場合も残ります。
マージしたあとにテストが落ちたら
止まります。作業場所も枝も残したまま調べる指示です。まだ何も押していないので、ローカルで復旧できます。
元の枝を聞かれるのはなぜですか
間違った先へのマージは、元に戻すのが高いからです。分からない場合は推測せずに聞く指定になっています。
対応しているエージェントはどれですか
Claude Code と Codex です。公開元は群の入口(using-superpowers)に実行環境ごとの補足ファイルを置き、writing-skills では Claude Code・Codex・Copilot CLI・Gemini CLI の置き場所まで書き分けています。
当サイトは公開元が明記しているものだけを表示しています(指標の意味と限界)。