Great project! Let's design this systematically:
PHASE 1: Define the core value. What problem does it solve? (Keeping repos clean of dead branches). Why not just use git branch --merged? (We want automation plus safety).
PHASE 2: Design the interface. Basic usage: git-prune. With options: git-prune --dry-run --keep-main --older-than 30d.
PHASE 3: Core functionality. Get all branches, check which are merged, filter out protected branches (main, develop), optionally filter by age, delete with confirmation.
Tech stack: Node.js (great CLI ecosystem), Commander.js (argument parsing), chalk (colored output), inquirer (interactive prompts), execa (better child_process).
Want me to scaffold the initial project structure?