commit
Skill1 starsChanged 2 days agoMITView on GitHub
Create focused git commits from current working tree changes. Use when the user asks to commit changes, make a git commit, write a commit message, split changes into commits, organize commits, group changes into commits, or prepare local changes for commit.
187 other projects use a version of this.
Adopted by
Most recently taken up by
- yagizdo/quivertheir own version, first seen Nov 15, 2026
- markmhendrickson/neotomatheir own version, first seen Nov 15, 2026
- ShipfoxHQ/shipfoxtheir own version, first seen Nov 15, 2026
- daledesilva/obsidian_inktheir own version, first seen Nov 9, 2026
- thoughtbot/rails-consultanttheir own version, first seen Nov 8, 2026
- pedrohcgs/claude-code-my-workflowtheir own version, first seen Nov 8, 2026
Used with
Projects with it also use validate-plan, act-on-feedback and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
shawn-dumasSkillvalidate-plan
Validate an orchestration plan after pre-flight certification. Runs adversarial review, deep review (verify prompt data against codebase), and PoC gate for risky approaches. Auto-invoked by orchestrate-* skills at Step 8.
Also in 5 projects that use this
MicrosoftSkillact-on-feedback
Act on user feedback attached to the current session. Use when the user submits feedback on the session's changes via the Submit Feedback button.
Also in 3 projects that use this
decocmsSkilladd-mcp-tools
Guide for adding new MCP tools with consistent patterns for schemas, tool definitions, registry updates, and Better Auth integration
Also in 3 projects that use this
MicrosoftSkillgenerate-run-commands
Generate or modify run commands for the current session. Use when the user wants to set up or update run commands that appear in the session's Run button.
Also in 3 projects that use this
mitsuhikoSkilloebb-scotty
Austrian rail travel planner (ÖBB Scotty). Use when planning train journeys in Austria, checking departures/arrivals at stations, or looking for service disruptions. Covers ÖBB trains, S-Bahn, regional trains, and connections to neighboring countries.
Also in 3 projects that use this
mitsuhikoSkillpi-share
Load and parse session transcripts from shittycodingagent.ai/buildwithpi.ai/buildwithpi.com/pi.dev (pi-share) URLs. Fetches gists, decodes embedded session data, and extracts conversation history.
Also in 3 projects that use this
Other versions187 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 187
- microsoft/vscode★ 195ksame name
- TryGhost/Ghost★ 56ksame name
- ToolJet/ToolJet★ 41ksame name
- ShareX/ShareX★ 41ksame name
- openai/symphony★ 27ksame name
- ccusage/ccusage★ 19ksame name
- ryoppippi/ccusage★ 19ksame name
- windmill-labs/windmill★ 18ksame name
- EverMind-AI/EverMemOS★ 14ksame name
- EverMind-AI/EverOS★ 14ksame name
177 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository12 other files it gives its agents.
- code-reviewSkill
- create-planSkill
- debugSkill
- feature-spec-breakdownSkill
- grill-with-docsSkill
- prod-debugSkill
- pr-reviewSkill
- qa-reviewSkill
- review-triageSkill
- simplify-codeSkill
- to-feature-specSkill
- writing-for-humansSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
29 rules. 0 are common, 24 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 167 edited versions we read keep these.
24
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 6
Create minimal, cohesive commits from current changes.
- Distinctive: line 11
Never commit without reviewing the diff and confirming the intended scope.
- Distinctive: line 12
Stop on unresolved merge conflicts.
- Distinctive: line 13
Never stage unrelated changes without user confirmation.
- Distinctive: line 14
Never use git add -A or git add ..
- Very specific: line 17
Never add Co-Authored-By trailers.
- Very specific: line 18
Never amend an existing commit or create a fixup!/squash!
- Distinctive: line 29
Read relevant diffs before deciding scope:
- Distinctive: line 37
If all changes are one cohesive unit, commit them together.
- Distinctive: line 38
If changes are unrelated, ask which files/hunks to include.
- Distinctive: line 39
If generated or incidental files appear, call them out before staging.
- Distinctive: line 48
Use one concise sentence for the title.
- Distinctive: line 50
Do not include a ticket or issue number unless the user explicitly requests it.
- Very specific: line 51
No trailers, including Co-Authored-By.
- Distinctive: line 52
Default to a title only. Add a body only when omitting it would leave essential context unclear and a better title cannot convey that …
- Distinctive: line 55
Read the entire staged diff (git diff --cached) and run git diff --cached --check.
- Very specific: line 61
Only when a body meets step 5's strict necessity rule, append a second -m "Essential context" argument.
- Distinctive: line 67
If tests/lint are relevant and not run, mention that clearly.
- Distinctive: line 68
If git status --short shows unrelated changes, stop and ask for scope.
- Distinctive: line 69
If commit or a hook fails, report the redacted error and inspect status/diff for hook changes.
- Distinctive: line 73
Use this branch when the user asks to organize commits, split changes into commits, or group staged/unstaged changes.
- Distinctive: line 83
Read diffs before grouping:
- Very specific: line 92
Keep docs/config/chore changes separate when they are independent.
- Distinctive: line 93
Keep refactors separate from behavior changes when possible.
- Distinctive: line 94
Call out unrelated or ambiguous files.
- Distinctive: line 96
Ask for confirmation when:
- Distinctive: line 101
Create commits one group at a time:
- Distinctive: line 103
Read git diff --cached and run git diff --cached --check before each commit.
- Distinctive: line 104
Default to title-only messages.
“Common” is measured: kept by at least 6 in 10 of the 167 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Create minimal, cohesive commits from current changes.
Preconditions
- A message-only request authorizes drafting, not staging or committing.
- Never commit without reviewing the diff and confirming the intended scope.
- Stop on unresolved merge conflicts. Preserve existing staged work; ask if it conflicts with the requested commit.
- Never stage unrelated changes without user confirmation.
- Never use
git add -Aorgit add .. - Work artifacts (specs, plans, domain context, ADRs) live outside the repository in
<work-area>=~/.agent-work/<repo-key>/, where<repo-key>is the name of thegit rev-parse --path-format=absolute --git-common-dirdirectory, or its parent's name when that is.git/.bare, without a trailing.git. A legacy in-repo.agent-work/is not automatic commit content: do not stage it unless explicitly requested; if already staged, stop and ask rather than silently committing or unstaging it. - When using work docs to establish commit intent, inspect
<work-area>/work/<work-id>/spec.mdandplan.md, follow reciprocal Spec/Plan links and Work-ID, and read acceptance criteria/non-goals. Use only an explicit user path, current-session confirmation, or validated reciprocal link. Otherwise shortlist titles/statuses/summaries and ask via question tool (even for one candidate), offering Other / None—standalone work; never guess from names, slugs, branch, or recency. If asking is unavailable, report the blocker. Missing docs need not be created. Selection does not authorize staging or commits. - Never add
Co-Authored-Bytrailers. - Never amend an existing commit or create a
fixup!/squash!commit unless the user explicitly asks. Never rebase, reset, stash, or push unless explicitly asked.
Workflow
Inspect state:
git status --short git diff --statRead relevant diffs before deciding scope:
git diff -- <path> git diff --cached -- <path>- Decide commit scope:
- If all changes are one cohesive unit, commit them together.
- If changes are unrelated, ask which files/hunks to include.
- If generated or incidental files appear, call them out before staging.
Stage explicit files only. If a file mixes intended changes with unrelated hunks, ask before staging it; do not stage the whole file:
git add -- path/to/file another/file- Write commit message:
- Use one concise sentence for the title.
- Prefer imperative mood.
- Do not include a ticket or issue number unless the user explicitly requests it.
- No trailers, including
Co-Authored-By. - Default to a title only. Add a body only when omitting it would leave essential context unclear and a better title cannot convey that context. If in doubt, omit it.
- A necessary body must be one short paragraph of clear, simple English. Explain only the essential reason, constraint or consequence; do not repeat the title, list changes or add filler.
Read the entire staged diff (
git diff --cached) and rungit diff --cached --check. A commit includes the whole index, not just the paths most recently staged. Confirm every hunk belongs to this commit; keep secrets and personal/customer data out of both diff and message. Then commit:git commit -m "Commit title"Only when a body meets step 5's strict necessity rule, append a second
-m "Essential context"argument.- Report commit hash and title.
Failure handling
- If tests/lint are relevant and not run, mention that clearly.
- If
git status --shortshows unrelated changes, stop and ask for scope. - If commit or a hook fails, report the redacted error and inspect status/diff for hook changes. Do not bypass hooks, blindly retry, or amend; propose the smallest fix.
Organize multiple commits
Use this branch when the user asks to organize commits, split changes into commits, or group staged/unstaged changes.
Inspect all changes:
git status --short git diff --stat git diff --cached --statRead diffs before grouping:
git diff git diff --cached- Propose commit groups before staging:
- Group feature code with matching tests.
- Keep docs/config/chore changes separate when they are independent.
- Keep refactors separate from behavior changes when possible.
- Call out unrelated or ambiguous files.
- Ask for confirmation when:
- More than one reasonable grouping exists.
- Existing staged changes conflict with the proposed grouping.
- Any file appears unrelated to the main work.
- Create commits one group at a time:
- Stage explicit files or hunks only.
- Read
git diff --cachedand rungit diff --cached --checkbefore each commit; verify the entire index belongs to that group. - Default to title-only messages. Apply the message rules in Workflow step 5 separately to each commit; a body on one commit does not justify bodies on the others.
- Repeat until intended changes are committed.
- Finish with
git status --shortand list commit hashes/titles created.
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.

