commit-work
softaworks/agent-toolkit
Create high-quality git commits with logical scoping, staged changes, and Conventional Commits format.
What is commit-work?
This skill helps you craft clean, reviewable commits by inspecting changes, splitting work into logical units, staging only intended changes, and writing clear Conventional Commits messages. Use it when you need to commit code, write commit messages, stage changes selectively, or organize work across multiple commits.
- Inspect working tree and diff to understand all pending changes
- Split changes into logical commit boundaries (feature vs refactor, backend vs frontend, etc.)
- Stage changes selectively using patch staging for mixed files
- Review staged changes before committing to catch secrets, debug code, or unrelated formatting
- Write Conventional Commits messages with type, scope, and body
- Run verification checks (tests, lint, build) before finalizing commits
How to install commit-work
npx skills add https://github.com/softaworks/agent-toolkit --skill commit-workHow to use commit-work
- 1.Run `git status` and `git diff` to inspect all pending changes
- 2.Decide whether to create one commit or multiple commits based on change relatedness
- 3.Use `git add -p` for patch staging to include only intended changes in the next commit
- 4.Run `git diff --cached` to review exactly what will be committed
- 5.Write a Conventional Commits message following the format: `type(scope): summary` with optional body and footer
- 6.Run the repo's fastest verification (unit tests, lint, or build)
- 7.Repeat the staging and commit process for remaining changes until the working tree is clean
Use cases
- Splitting a file with mixed feature and refactor changes into separate commits
- Staging only production code changes while leaving test updates for a follow-up commit
- Writing a multi-line commit message that explains both what changed and why
- Reviewing staged changes to ensure no debug logging or secrets are included
- Organizing a series of unrelated changes (dependency bump, formatting, feature) into distinct commits
- Developers maintaining clean git history
- Teams using Conventional Commits for automated changelog generation
- Code reviewers who benefit from logically scoped, well-described commits
- Anyone working on projects with strict commit message standards
commit-work FAQ
Inspect with `git diff --stat` first, then plan commit boundaries by splitting feature vs refactor, backend vs frontend, formatting vs logic, tests vs prod code, and dependency bumps vs behavior changes. Use patch staging (`git add -p`) to separate mixed changes within a single file.
Yes, Conventional Commits are required by this skill. The format is `type(scope): short summary` with an optional body and footer. This enables automated changelog generation and clear commit history.
Use `git restore --staged -p` for interactive unstaging of hunks, or `git restore --staged <path>` to unstage an entire file.
The commit is likely too big or contains mixed concerns. Go back, unstage, and re-plan the commit boundaries into smaller, more focused units.
Yes, prefer `git commit -v` for multi-line messages so you can see the diff while writing. For single-line commits, the command line is fine.
Full instructions (SKILL.md)
Source of truth, from softaworks/agent-toolkit.
name: commit-work 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)
- Inspect the working tree before staging
git statusgit diff(unstaged)- If many changes:
git diff --stat
- 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.
- 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 -porgit restore --staged <path>
- Prefer patch staging for mixed changes:
- Review what will actually be committed
git diff --cached- Sanity checks:
- no secrets or tokens
- no accidental debug logging
- no unrelated formatting churn
- 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.
- 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.mdif helpful.
- Use Conventional Commits (required):
- Run the smallest relevant verification
- Run the repo's fastest meaningful check (unit tests, lint, or build) before moving on.
- 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)
Related skills
More from softaworks/agent-toolkit and the wider catalog.
mermaid-diagrams
Create professional software diagrams from text using Mermaid syntax.
humanizer
Remove AI-generated writing patterns to make text sound more natural and human.
qa-test-planner
Generate test plans, test cases, regression suites, and bug reports with Figma design validation for QA engineers.
writing-clearly-and-concisely
Apply Strunk's timeless rules to write clearer, stronger prose for humans.
database-schema-designer
Design production-ready SQL and NoSQL database schemas with normalization, indexing, and migration strategies.
skill-judge
Evaluate Agent Skill design quality against specifications and best practices with multi-dimensional scoring.