What problem does it solve? After an agent or developer finishes a task across many small phase commits, the Git history is noisy and hard to review. This Skill compacts those completed commits into a single clean commit while protecting unrelated work and refusing to rewrite pushed or shared history without explicit approval. ## Core Features & Use Cases - Read-only safety audit: A bundled Python helper inspects the worktree, candidate commit range, remote branches, merge commits, and path overlap before any rewrite is planned. - Two rewrite strategies: Uses a soft reset for contiguous task commits at HEAD, or a scripted mixed rewrite that cherry-picks unrelated commits in their original order when commits are interleaved. - Protected history: Refuses to rewrite commits already on remote branches, merge commits, dirty worktrees, or ranges with overlapping file paths unless the user explicitly opts in. - Use Case: After finishing task AUTH-001 across five phase commits, ask the agent to squash the task commits; it audits the range, creates a backup ref, squashes into one conventional commit, and reruns the validation checks. ## Quick Start Ask the agent to squash the completed commits for your task, for example by saying "squash the AUTH-001 task commits after validation".