| created | "2025-12-16T00:00:00.000Z" |
| modified | "2026-07-04T00:00:00.000Z" |
| reviewed | "2026-07-04T00:00:00.000Z" |
| allowed-tools | Bash(git status *), Bash(git branch *), Bash(git stash *), Bash(git prune *), Bash(git gc *), Bash(git repack *), Bash(git maintenance *), Bash(git fsck *), Bash(git rm *), Bash(du *), Read, Glob, TodoWrite |
| args | [--prune] [--gc] [--background] [--verify] [--branches] [--stash] [--all] |
| argument-hint | [--prune] [--gc] [--background] [--verify] [--branches] [--stash] [--all] |
| disable-model-invocation | true |
| description | Repo maintenance — incremental repack, gc, branch pruning, stash cleanup, fsck. Use when asked to clean up the repo, run git maintenance/gc, delete merged branches, prune stashes, or shrink .git. |
| name | git-maintain |
When to Use This Skill
| Use this skill when... | Use the alternative when... |
|---|
Running git gc, repacking objects, or shrinking the .git directory | Use git-coworker-check first if other agents may be writing to the same checkout |
| Pruning merged local branches and old stashes | Use git-cli-agentic for read-only branch/stash queries without mutating state |
Verifying repo integrity with git fsck | Use git-security-checks for secret scanning rather than object integrity |
| Cleaning up a checkout before a long-lived feature branch goes stale | Use git-rebase-patterns to clean up commit history rather than the object store |
Context
- Current branch: !
git branch --show-current
- Git status: !
git status --porcelain=v2 --branch
- Local branches: !
git branch -vv --format='%(refname:short) %(upstream:short) %(upstream:track)'
- Stash list: !
git stash list
- Repository size: !
du -sh .git
Parameters
Parse these parameters from the command (all optional):
--prune: Remove unreachable objects and run an incremental geometric repack
--gc: Force a full git gc consolidation (only when a repo has degraded badly — prefer the incremental repack)
--background: Register the repo for hourly background maintenance (git maintenance start) instead of a blocking one-shot pass
--verify: Verify integrity of git objects
--branches: Clean up merged branches only
--stash: Clean up stashes only
--all: Run all maintenance tasks (default if no flags specified)
Your task
Perform repository maintenance and cleanup based on the flags provided.
Step 1: Check for accidentally committed files
- Environment files, IDE files, dependencies, build artifacts, secrets
- Suggest adding to and removing with