with one click
git-cleanup
// Clean up local git branches and remotes accumulated from PR reviews. Use when the user asks to clean branches, remove stale remotes, or tidy up the local git state.
// Clean up local git branches and remotes accumulated from PR reviews. Use when the user asks to clean branches, remove stale remotes, or tidy up the local git state.
Create a branch, commit existing local changes, push them, and open a pull request. Use when submitting current work as a PR.
Conduct a thorough pre-implementation discussion before making significant changes. Use when the user wants to discuss, plan, or evaluate a change before implementing it โ especially when they say words like 'discuss', 'evaluate', 'plan', or 'let's talk about'.
Update docs/CHANGELOG.md from git history, GitHub releases, and code diffs. Use when: writing release notes, syncing the latest changelog entry, summarizing a new tag, or keeping changelog wording concise and consistent.
| name | git-cleanup |
| description | Clean up local git branches and remotes accumulated from PR reviews. Use when the user asks to clean branches, remove stale remotes, or tidy up the local git state. |
Clean local branches (except main and current branch) and non-origin remotes.
Useful after reviewing multiple PRs that leave behind tracking branches and contributor remotes.
Run these in parallel:
git branch
git remote
git status --short
git stash list
Present a summary of how many branches and remotes will be removed.
Stop and ask for confirmation if any of these are true:
mainList unmerged branches separately and let the user decide.
# Safe delete first (fails on unmerged branches)
git branch | grep -v '^\*' | grep -v '^\s*main$' | xargs git branch -d 2>&1
# Force-delete only with explicit user approval
git branch -D <branch>
git remote | grep -v '^origin$' | xargs -I{} git remote remove {}
git branch && echo "---" && git remote
Report what was cleaned up.
main or the current checked-out branch