agentleFS
EclipterEclipter/agents/skills/sdlc/commit-msg/SKILL.md

commit-msg

Skill1 starsChanged 4 days agoMITView on GitHub

Write the commit message. Do not stage, commit, or push unless the same message explicitly asks for a commit.

16 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use research, code-review and 2 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.
  • NVIDIASkill

    research

    Before designing a feature, research how comparable libraries solve the problem, check best practices, known pitfalls, and upstream changes. Use when starting a new feature, investigating an unfamiliar area, or the user asks to research something.

    Also in 3 projects that use this

  • GoogleSkill

    code-review

    Adversarial systems, concurrency, memory-model, and architecture code review protocol. Use this skill whenever asked to review code, PRs, diffs, or branches in Filament.

    Also in 4 projects that use this

  • MicrosoftSkill

    handoff

    Compact the current conversation into a handoff document for another agent to pick up.

    Also in 3 projects that use this

  • BlockSkill

    frontend-design

    Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

4 rules. 0 are common, 2 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 12 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If git log fails because the repository has no commits yet, skip the log and use the default language and format.

    line 16
  2. Very specific:

    If a diff is larger than about 2000 lines, read --stat and sample the key files instead of the whole diff.

    line 17
  3. Distinctive:

    Do not quote secrets, tokens, or private keys.

    line 21
  4. Very specific:

    Add a scope in parentheses only when the repository already does, or when the subject is ambiguous without it.

    line 41

“Common” is measured: kept by at least 6 in 10 of the 12 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

commit-msg

What to inspect

From the repository root, in parallel:

  • git status --short
  • git diff --cached and git diff --cached --stat
  • git diff and git diff --stat, when the index is empty or unstaged changes remain
  • git log -20 --format='%s%n%b%n---'
  • If git log fails because the repository has no commits yet, skip the log and use the default language and format.
  • If a diff is larger than about 2000 lines, read --stat and sample the key files instead of the whole diff.

A repository commit convention (CONTRIBUTING, commitlint, .gitmessage) overrides the rules below.

Do not quote secrets, tokens, or private keys. If they appear in the diff, say they must not be committed and do not describe them as a normal change.

What the message covers

  • Non-empty index: describe only staged changes. In one line, name what remains unstaged and will not be in this commit.
  • Empty index: describe the working tree and say that nothing is staged.
  • Several independent changes: one message per atomic commit, in apply order. Do not merge them into one.

Format

Take the language and shape from recent commits when the style is consistent. Otherwise use English and Conventional Commits:

type: imperative summary

Why this exists, only when the subject does not already say it.

type: feat, fix, refactor, perf, docs, test, build, ci, chore, style, revert.

Add a scope in parentheses only when the repository already does, or when the subject is ambiguous without it. A breaking change uses type!: and a BREAKING CHANGE: trailer.

Subject line:

  • imperative mood, as a continuation of "If applied, this commit will …";
  • the change to the system, not a file list and not "update code";
  • no trailing period;
  • the whole line at most 50 characters, even when recent subjects are longer (hard limit);
  • something that belongs in a changelog.

Add a body only when the "why" is not obvious from the subject. One blank line between the subject and the body is required. Keep each body line under 72 characters when a break is possible (soft limit). Do not retell the diff and do not write "this commit".

Trailers only when they are real: BREAKING CHANGE:, Fixes #n, Refs #n. Do not invent issue numbers.

Reply

First, one line: staged, the whole tree, or several commits. Then each message in its own fenced block, ready to paste into git commit. Nothing else.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.