cleaner-commits
Skill1 starsChanged 7 days agoMITView on GitHub
MUST be used whenever creating a Git commit: group changes into focused commits and write Conventional Commit messages.
In this repository5 other files it gives its agents.
- bem-cssSkill
- chrome-validationSkill
- create-better-skillSkill
- jest-coverageSkill
- web-accessibilitySkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 3 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Use these rules whenever the host AI agent creates a Git commit, ensuring each commit covers one logical concern and its message follows …
- Distinctive: line 12
Commit one logical concern at a time.
- Distinctive: line 13
Keep each commit independently reviewable, revertible, and working on its own.
- Very specific: line 32
Write an imperative subject in this format: type(scope): description.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Cleaner Commits
Use these rules whenever the host AI agent creates a Git commit, ensuring each commit covers one logical concern and its message follows Conventional Commits.
Commit grouping
- Commit one logical concern at a time; never mix unrelated changes.
- Keep each commit independently reviewable, revertible, and working on its own.
- Separate mechanical changes (formatting, renames, dependencies) from behavior changes, and keep tests/docs with the change they support.
- Stage per concern with explicit paths or
git add -p, notgit add .orgit add -A.
Rules
- Classify the change using one allowed type:
feat: add user-visible functionalityfix: correct faulty behaviordocs: change documentation onlystyle: change formatting without behavior changesrefactor: restructure code without changing behaviorperf: improve performancetest: add or change testsbuild: change build or dependency configurationci: change automation or pipelineschore: maintenance workrevert: undo an earlier commit
- Infer a scope from the affected package, module, or feature when it is unambiguous. Omit the scope when guessing would be less accurate.
- Write an imperative subject in this format:
type(scope): description. Keep it concise and specific. Usetype: descriptionwhen there is no useful scope. Add a short body only for breaking or multi-part changes that need context beyond the subject. - For breaking changes, append
!after the type or scope and explain the break in the body or footer withBREAKING CHANGE:. - Validate the final message against the Conventional Commits rules. If the type, subject, scope, or breaking-change explanation is unclear, resolve it from the change context rather than inventing details.
Quality check
- Each commit contains one logical concern, and unrelated changes are in separate commits.
- The staged diff matches the commit's type and scope.
- The type accurately describes the primary change.
- The subject is imperative, specific, and short.
- The scope is included only when confidently inferred.
- A body is present only when it adds necessary context.
- Breaking changes are clearly marked and explained.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

