Stop Before You Commit
Makes the agent show its work and wait, instead of committing a change nobody has read.
The skill
--- name: stop-before-you-commit description: Use whenever a change is finished and about to be committed, pushed, or merged. --- Before any `git commit`, `git push`, or branch merge: 1. Run the project's test command and paste the real output. Not a summary of it — the output. A run you describe rather than show is a run nobody can check. 2. Print `git diff --stat` and name any file in it you did not intend to touch. 3. State in one sentence what would break if this change is wrong. 4. Then stop and wait. Do not commit on your own initiative. "It looked done" is how a broken build reaches a branch other people pull from, and the cost of asking is one message. If the tests do not pass, say so plainly with the failing output. A green claim over a red run is worse than no claim.
How to install it
Claude Code 1. Create a folder named after the skill: - For every project: `~/.claude/skills/<skill-name>/` - For this project only: `<project>/.claude/skills/<skill-name>/` 2. Save the text below as `SKILL.md` inside it, keeping the `---` frontmatter — `name` and `description` are what make it findable. 3. Run `/skills` to confirm it is listed. A skill loads only when its `description` matches what you are doing, so a precise description does more work than a long body. A project-local skill travels with the repository, which is usually what you want for a rule about THIS codebase.