New to Claude Skills? Learn how to install them →

davila7 on GitHub

Commit Work

Free

Streamline your git commit process with clarity and precision.

Get this skill

Free · Opens the source repo

What Commit Work does

The Commit Work skill is designed to enhance the quality of your git commits by ensuring that they are well-structured and easy to understand. This skill guides users through a systematic workflow that emphasizes the importance of logical commit boundaries, proper staging, and clear commit messages. By following this structured approach, developers can avoid common pitfalls such as including unintended changes or writing vague commit messages, which can complicate code reviews and hinder collaboration.

At its core, the skill encourages users to inspect their working tree before staging any changes. It provides a checklist that includes commands like git status and git diff, allowing users to review their modifications thoroughly. The skill also advocates for splitting commits based on logical boundaries, such as separating features from refactors or distinguishing between changes in different areas of the codebase. This careful consideration of commit boundaries helps maintain a clean project history, making it easier for others to follow the evolution of the code.

In addition to staging changes effectively, the Commit Work skill emphasizes the importance of writing clear commit messages that adhere to the Conventional Commits specification. Users are prompted to describe what changed and why, ensuring that each commit is meaningful and informative. The skill also encourages running relevant checks, such as unit tests or linting, before finalizing commits, further ensuring that only quality code is pushed to the repository.

Overall, the Commit Work skill is ideal for developers who want to improve their git commit practices. It is particularly beneficial in collaborative environments where clear communication and a well-maintained commit history are crucial for team efficiency and project success.

When to use it

Use this skill when preparing to make git commits, especially in collaborative projects or when aiming for a clean commit history.

When not to use it

This skill may not be necessary for simple projects with minimal changes or for users who prefer a less structured approach to committing.

What you can build with it

Collaborative Project Commits

When working on a team project, use this skill to ensure your commits are clear and structured, facilitating better code reviews.

Refactoring Code

Before committing refactor changes, utilize the skill to split commits logically, making it easier to track changes and reasons.

Maintaining a Clean Commit History

Use this skill to adhere to best practices for commit messages and staging, ensuring a clean and understandable project history.

How to install Commit Work

View source

1. Install with the skills CLI

npx skills add davila7/claude-code-templates/commit-work --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by davila7

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)

Frequently asked questions about Commit Work

Similar skills