Create high-quality git commits

VerifiedSafe

Guide to review, split, and commit git changes with clear Conventional Commit messages and selective staging.

Sby Skills Guide Bot
DevelopmentIntermediate
9/13/2026
Claude CodeCursorWindsurfCodex
#git#commits#conventional-commits#code-review#version-control

Recommended for

Automated summary

Guides an agent through inspecting the working tree, isolating logically scoped commits, and writing messages in Conventional Commits format.

Strengths

  • Follows an ordered checklist: status, diff, boundary decisions, selective staging, review of the cached diff
  • Mandates patch staging (git add -p) so mixed changes in one file can be split
  • Builds in safety checks before committing (secrets, debug logging, formatting churn)
  • Requires the smallest meaningful verification (test, lint, or build) before each next commit

Limitations

  • Does not cover history rewriting, rebase, signing, or opening pull requests
  • Assumes git add -p and git commit -v are usable, which can be awkward in non-interactive agents
  • Requires Conventional Commits with no fallback for repos using a different convention
When to use it

Use when the user asks to commit, craft a commit message, stage changes, or split work into multiple commits.

When not to use it

Avoid it for operations on existing history (rebase, bulk amend, revert) or for creating a pull request.

Security analysis

Safe
Quality score86/100

The skill only instructs the agent to run standard read/stage git commands (git status, git diff, git add -p, git restore --staged, git diff --cached, git commit) and to sanity-check for secrets before committing. There is no network exfiltration, no destructive command (no rm -rf, no reset --hard, no force push), no base64 payloads, and no attempt to disable safety controls. The only marginally notable operation is `git restore --staged`, which unstages without touching working-tree content, so overall risk is minimal.

No concerns found

How this analysis is made

Examples

Commit current work
Review my working tree changes and commit them with a clear Conventional Commits message.
Split mixed changes
My changes mix a refactor and a new feature across several files — split them into separate logical commits with appropriate messages.
Message for staged diff
Look at what's staged with git diff --cached and write a Conventional Commits message with a body explaining what changed and why.

description: "Create high-quality git commits: review/stage intended changes, split into logical commits, and write clear commit messages (including Conventional Commits). Use when the user asks to commit, craft a commit message, stage changes, or split work into multiple commits."

Commit work

Goal

Make commits that are easy to review and safe to ship:

  • only intended changes are included
  • commits are logically scoped (split when needed)
  • commit messages describe what changed and why

Inputs to ask for (if missing)

  • Single commit or multiple commits? (If unsure: default to multiple small commits when there are unrelated changes.)
  • Commit style: Conventional Commits are required.
  • Any rules: max subject length, required scopes.

Workflow (checklist)

  1. Inspect the working tree before staging
    • git status
    • git diff (unstaged)
    • If many changes: git diff --stat
  2. Decide commit boundaries (split if needed)
    • Split by: feature vs refactor, backend vs frontend, formatting vs logic, tests vs prod code, dependency bumps vs behavior changes.
    • If changes are mixed in one file, plan to use patch staging.
  3. Stage only what belongs in the next commit
    • Prefer patch staging for mixed changes: git add -p
    • To unstage a hunk/file: git restore --staged -p or git restore --staged <path>
  4. Review what will actually be committed
    • git diff --cached
    • Sanity checks:
      • no secrets or tokens
      • no accidental debug logging
      • no unrelated formatting churn
  5. Describe the staged change in 1-2 sentences (before writing the message)
    • "What changed?" + "Why?"
    • If you cannot describe it cleanly, the commit is probably too big or mixed; go back to step 2.
  6. Write the commit message
    • Use Conventional Commits (required):
      • type(scope): short summary
      • blank line
      • body (what/why, not implementation diary)
      • footer (BREAKING CHANGE) if needed
    • Prefer an editor for multi-line messages: git commit -v
    • Use references/commit-message-template.md if helpful.
  7. Run the smallest relevant verification
    • Run the repo's fastest meaningful check (unit tests, lint, or build) before moving on.
  8. Repeat for the next commit until the working tree is clean

Deliverable

Provide:

  • the final commit message(s)
  • a short summary per commit (what/why)
  • the commands used to stage/review (at minimum: git diff --cached, plus any tests run)

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/create-high-quality-git-commits-mtzb838s/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/create-high-quality-git-commits-mtzb838s' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/create-high-quality-git-commits-mtzb838s/download' --output '.skill-downloads/create-high-quality-git-commits-mtzb838s/SKILL.md.part' && mv '.skill-downloads/create-high-quality-git-commits-mtzb838s/SKILL.md.part' '.skill-downloads/create-high-quality-git-commits-mtzb838s/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/create-high-quality-git-commits-mtzb838s/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills