← ClaudeAtlas

okhp3-repository-janitorlisted

Reconcile a collection of local Git repositories with their GitHub origins, inspect all local variations against origin/main, preserve uncommitted or unreachable work, and manage branch lifecycle. Use when a user has multiple clones or computers, needs to find differences from origin/main, recover forgotten work, review agent/Copilot/Dependabot branches, merge completed pull requests, prune verified redundant branches, or establish a repeatable daily or weekly repository-maintenance routine.
OKHP3/skillz · ★ 3 · Code & Development · score 72
Install: claude install-skill OKHP3/skillz
# okhp3-repository-janitor **OverKill Hill P³** · [overkillhill.com](https://overkillhill.com) · [github.com/OKHP3](https://github.com/OKHP3) Keep a multi-repository Git estate understandable without losing work. Treat `origin/main` as the comparison baseline, not as evidence that other work is disposable. ## Safety contract 1. Begin with a read-only inventory. Do not delete repositories, branches, stashes, refs, or commits during discovery. 2. Preserve before pruning. Record dirty files, stashes, local-only commits, and unreachable commits. Pin unreachable commits under a dated `refs/archive/` namespace before a later cleanup can trigger garbage collection. 3. Refresh remotes with `git fetch origin`; do not use `--prune` until stale remote branches have been classified. 4. Compare each checkout to the refreshed `origin/main`. Report both file-level and commit-level differences. 5. Treat a merged branch, a closed pull request, and an abandoned branch as different facts. Query the pull request before deletion. 6. Merge only a reviewed pull request whose checks and destination are suitable. Do not merge a branch merely because it is old or has a bot name. 7. Delete a remote branch only when its merged/superseded status, commit reachability, and pull-request state are confirmed. Delete the local tracking branch only after the remote deletion is verified. 8. Never rewrite `main`, force-push, or remove stashes, archive refs, or untracked files without a separately stated and c