本文へ移動
cccskills
無料GitHub で公開

clean-gone-branches

Delete local git branches whose remotes are gone, after verifying via gh CLI that each was actually merged.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md2.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

What I do

Clean up orphaned local branches (those whose remote tracking branch is [gone]) by:

  1. Running git fetch --prune to sync remote state.
  2. Listing all local branches with [gone] remote tracking refs.
  3. Verifying each branch's PR status via gh pr list --state all to confirm it was merged (or closed).
  4. Showing the user a summary table with PR state and merge date.
  5. Asking for confirmation before deleting.
  6. Force-deleting confirmed branches with git branch -D.

When to use me

  • After a sprint or a batch of PRs land and you want to clean up stale local branches.
  • Any time git branch -vv shows several [gone] entries.
  • Before switching repos or doing a clean checkout.

Workflow

Step 1: Fetch and prune

git fetch --prune

Step 2: Find orphaned branches

git branch -vv | grep ': gone]'

If nothing found, report "No orphaned branches found." and stop.

Step 3: Verify PR status via gh CLI

For each orphaned branch, run:

gh pr list --head "<branch>" --state all --json state,mergedAt,title \
  --jq '.[0] | "\(.state) | merged: \(.mergedAt // "N/A") | \(.title)"'

Build a summary table:

BranchPR StateMerged AtPR Title

Flag any branches that are not MERGED (e.g. OPEN or CLOSED without merge) — these need user attention before deletion.

Step 4: Confirm with user

Show the table and ask:

  • "Delete all MERGED branches now?"

If any branch has no PR or is not merged, exclude it from the default delete list and call it out explicitly:

  • "These branches have no merged PR — skip them or confirm to force-delete anyway?"

Step 5: Delete

git branch -D <branch1> <branch2> ...

Report each deleted branch with its last commit hash.


Behavior rules

  • Never delete without explicit user confirmation.
  • Always use git branch -D (force) since git's merge check is against the local default branch, not the remote — remote deletion already confirms the work is done.
  • If gh is not available or returns no results, warn the user and do not auto-delete.
  • Prefer deleting all confirmed-merged branches in one command rather than one-by-one.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Implement comprehensive error handling for Python code paths to keep services resilient and user-friendly. Use when failures are currently silent or exceptions leak through.

日本語の概要は準備中です。原文の説明を表示しています。

Unique-AG/ai52026年10月12日 更新

Tabular and numerical data analysis with descriptive statistics and insights. Use when the user provides data, tables, CSVs, or numbers and wants analysis.

日本語の概要は準備中です。原文の説明を表示しています。

Unique-AG/ai52026年10月12日 更新

Financial factsheet analysis with key metrics extraction and investment rationale

日本語の概要は準備中です。原文の説明を表示しています。

Unique-AG/ai52026年10月12日 更新

ci-fix

無料

Diagnose and fix CI failures without leaving your editor.

日本語の概要は準備中です。原文の説明を表示しています。

Unique-AG/ai52026年10月12日 更新

Reproduce ai-repo PR checks locally with Poe and CI scripts, including per-package typecheck and coverage behavior. Use when validating changes before push or when user asks which local commands match CI.

日本語の概要は準備中です。原文の説明を表示しています。

Unique-AG/ai52026年10月12日 更新

Ask clarifying questions before implementing to ensure Python requirements are understood. Use when a task lacks detail, dependencies are unclear, or multiple interpretations are possible.

日本語の概要は準備中です。原文の説明を表示しています。

Unique-AG/ai52026年10月12日 更新

Unique-AG のスキルをすべて見る

このスキルの問題を報告する