git-cleanuplisted
Install: claude install-skill kevinvwong/stack-agents
# Git Cleanup
Safely clean up accumulated git worktrees and local branches by categorizing them into: safely deletable (merged), potentially related (similar themes), and active work (keep).
## When to Use
- When the user has accumulated many local branches and worktrees
- When branches have been merged but not cleaned up locally
- When remote branches have been deleted but local tracking branches remain
## When NOT to Use
- Do not use for remote branch management (this is local cleanup only)
- Do not use for repository maintenance tasks like gc or prune
- Not designed for headless or non-interactive automation (requires user confirmations at two gates)
## Core Principle: SAFETY FIRST
**Never delete anything without explicit user confirmation.** This skill uses a gated workflow where users must approve each step before any destructive action.
## Critical Implementation Notes
### Squash-Merged Branches Require Force Delete
**IMPORTANT:** `git branch -d` will ALWAYS fail for squash-merged branches because git cannot detect that the work was incorporated. This is expected behavior, not an error.
When you identify a branch as squash-merged:
- Plan to use `git branch -D` (force delete) from the start
- Do NOT try `git branch -d` first and then ask again for `-D` - this wastes user confirmations
- In the confirmation step, show `git branch -D` for squash-merged branches
### Group Related Branches BEFORE Categorization
**MANDATORY:** Before categorizing individual branc