Skip to content
Agentmart
Submit a tool

git-commit-changes

Guidelines for batching changes and writing safe, atomic git commits

Skill by mindstone

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/mindstone-git-commit-changes

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Guidelines for batching changes and writing safe, atomic git commits

Use cases: writing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/git-commit-changes

What's inside

Skill name
git-commit-changes
Description
Guidelines for batching changes and writing safe, atomic git commits
License
MIT
Instructions
67 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Git Commit Guidelines

## Initial Assessment
Have a look at Git diff. Batch the changes into commits, and make them one at a time.

## Commit Best Practices

### Don't ever do anything destructive

ABOVE ALL, don't do anything that could result in lost work or mess up yet-to-be-committed changes, unless EXPLICITLY instructed to by the user after warning them.


### Batching changes into commits
- Each commit should represent a small/medium feature, or stage, or cluster of related changes (e.g. tweaking a bunch of docs).
- But strike a balance, e.g. the code and docs changes for a given feature should be in the same commit.
- The codebase should (ideally) be in a working state after each commit.
- Try not to mix unrelated changes.
- Before making the commit, list all files that will be committed.
- Only commit changes relevant to your current task. (Still use reset/add/commit single-command chaining)
- When choosing the order of batches, prefer batches that concern files with older modification dates, in order to make it less likely that someone else is still working on them.


### Commit Message Format
```
<type>(<scope>): <Summary sentence 1. Summary sentence 2.>

<optional detailed description>
- Include a reference to current planning doc at the top of the commit body if there is one, e.g. "Planning doc: yyMMddx_feature_name.md"
- More detailed explanation
- Bullet points for multiple changes
```

Example:
```
feat(ui): Added dark mode toggle to settings. Users frequently requested theme switching for late-night work.

- Adds ThemeToggle component using existing design tokens
- Persists preference to settings store
```

Types: feat, fix, docs, style, refactor, test, chore


### Handling Concurrent Changes
Others may be changing the code while you work, and they might have added other files already.
- IMPORTANT: Commit only your own files, by naming them, in one command. Never unstage first with `git reset`: what is staged may be someone else's work, and a bare `git reset` can also drop submodule pointers.
  ```bash
  git add -- new-file && git commit -F message.txt -- wanted-file new-file
  ```
- `git commit -- <files>` commits exactly the files you name, whatever else is staged, so nobody else's changes come along. `git add` is needed only for files git does not track yet.
- Write the message to a file and pass it with `-F`. In a double-quoted `-m "..."`, the shell runs anything inside backticks.


### Important Notes
- If the code is in a partial/broken state, prioritise commits that leave the codebase working
- If you encounter merge conflicts or ANY unexpected issues, stop and ask the user immediately
- When in doubt, ask the user before proceeding
- **ALWAYS quote file paths** when using git commands to avoid shell expansion issues:
  - `git add "frontend/src/routes/language/[target_language_code]/+page.svelte"`
  - This is especially important for SvelteKit routes with brackets: `[param]`
- Avoid committing generated artifacts or large binaries unless explicitly intended; update `.gitignore` accordingly.


### Gitignore

If you notice files that almost certainly shouldn't be committed (e.g. `node_modules`, `passwords.secret`), read the `.gitignore`, and stop to ask the user whether to add them to it.

From mindstone/rebel-system, MIT.

More from mindstone/rebel-system

Signals

Stars
0
Forks
1
Open issues
0
Last commit (this folder)
Jun 19, 2026 (4 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from mindstone

Cite this page

git-commit-changes skill. Agent Mart. https://agentmart.dev/skills/mindstone-git-commit-changes (last updated 2026-10-24)