agentleFS
narenaryannarenaryan/agent-skills/skills/git/conventional-commits/SKILL.md

conventional-commits

Skill0 starsChanged 39 days agoMITView on GitHub

Use when writing or validating Conventional Commits v1.0.0 messages — choosing between `!` and `BREAKING CHANGE:` footer, formatting git-trailer footers (Token-with-dashes vs `BREAKING CHANGE`), scope syntax, mapping types to SemVer bumps, prepending gender-neutral gitmoji-style icons (feat ⚡ / fix 🐛 / refactor ♻️ / docs 📝), or handling revert/multi-paragraph body rules

56 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use github, grilling and 9 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

    github

    Interact with GitHub using the gh CLI restricted to REST API only (no GraphQL). Use when the user wants to work with GitHub issues, pull requests, repos, releases, or Actions — especially in sandboxed environments where the GraphQL endpoint may be blocked. Trigger keywords - github, gh, pull request, PR, github issue, github actions, workflow, release, gh api.

    Also in 3 projects that use this

  • GoogleSkill

    grilling

    Grill the user relentlessly about a plan, decision, or idea. Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases.

    Also in 5 projects that use this

  • GoogleSkill

    domain-modeling

    Build and sharpen a project's domain model. Use when the user wants to pin down domain terminology or a ubiquitous language, record an architectural decision, or when another skill needs to maintain the domain model.

    Also in 4 projects that use this

  • 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 5 projects that use this

  • SentrySkill

    skill-creator

    Create new agent skills following the Agent Skills specification. Use when asked to "create a skill", "add a new skill", "write a skill", "make a skill", "build a skill", or scaffold a new skill with SKILL.md. Guides through requirements, writing, registration, and verification.

    Also in 5 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

  • +5 more from google

The file

We split this skill into the rules it gives an agent

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

  • 0

    Common

    Most of the 51 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    All emojis are object-based and gender-neutral — no person/profession glyphs that default to a specific presentation in most fonts.

    line 12
  2. Distinctive:

    Avoid person/profession emoji (👷, 👨‍💻, 💄) for type icons — they default to a specific gender presentation in most fonts and exclude …

    line 83

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

Conventional Commits v1.0.0

Header grammar: <type>[(scope)][!]: <description>. Body and footers are separated by blank lines. Footers follow the git-trailer convention.

Type → SemVer → Emoji

All emojis are object-based and gender-neutral — no person/profession glyphs that default to a specific presentation in most fonts.

TypeSemVer bumpEmojiShortcode
featMINOR⚡:zap:
fixPATCH🐛:bug:
refactor—♻️:recycle:
docs—📝:memo:
perf—🚀:rocket:
test—✅:white_check_mark:
build—📦:package:
ci—🤖:robot:
chore—🔧:wrench:
style—🎨:art:
any with ! / BREAKING CHANGE:MAJOR💥:boom:

Emoji placement: prepend before the type, then a single space — ⚡ feat(parser): add array support. Don't replace the type with the emoji; tooling (semantic-release, commitlint) parses the textual type. Some teams prefer the :zap: shortcode form for plain-text terminals.

Breaking changes — two mechanisms

MechanismFormFooter required?
Markerfeat(api)!: drop v1 endpointsNo — description carries the explanation
FooterBREAKING CHANGE: v1 endpoints removedYes; can combine with !

BREAKING-CHANGE (hyphen) is a synonym only as a footer token. The text BREAKING CHANGE MUST be uppercase; everything else is case-insensitive.

Footer format (git-trailer rules)

<Token>: <value>          # standard
<Token> #<value>          # issue-ref form, e.g. Refs #133
  • Token MUST replace whitespace with -: Reviewed-by, Acked-by, Signed-off-by. The lone exception is BREAKING CHANGE (space allowed).
  • Footer values may span newlines; parsing terminates at the next valid Token: or Token # pair.
  • Footers begin one blank line after the body.

Examples

⚡ feat(parser): add ability to parse arrays

🐛 fix: prevent racing of requests

Introduce a request id and a reference to latest request.

Reviewed-by: Z
Refs: #123
💥 chore!: drop Node 6 from CI

BREAKING CHANGE: dropping Node 6 which hits end of life in April
revert: let us never again speak of the noodle incident

Refs: 676104e, a215868

Pitfalls

  • Forgetting the space after the colon in the header — feat:add x is invalid.
  • Writing a footer token with a space (Reviewed by:) — only BREAKING CHANGE may contain a space; everything else needs -.
  • Using lowercase breaking change: — the token MUST be uppercase, unlike the rest of the spec which is case-insensitive.
  • Putting BREAKING CHANGE in the body instead of the footer block — tools that parse trailers (and SemVer release tooling) will miss it; the MAJOR bump won't trigger.
  • Assuming ! alone bumps MAJOR but skipping a description that explains the break — when ! is used without a BREAKING CHANGE: footer, the description is the break explanation, so it must be self-contained.
  • Replacing the textual type with an emoji (⚡(parser): ...) — commitlint/semantic-release won't recognize it; always keep feat/fix/etc. after the emoji.
  • Avoid person/profession emoji (👷, 👨‍💻, 💄) for type icons — they default to a specific gender presentation in most fonts and exclude readers; prefer object glyphs (🤖, 🔧, 🎨).
  • Multi-codepoint emoji (♻️ uses VS-16, ZWJ sequences) can confuse regex-based hooks counting characters; prefer the :shortcode: form if your toolchain is byte-fragile.
  • Scope must be a noun in parens (fix(parser):), not a verb or sentence; pick one scope or omit.
  • revert is conventional, not specified — agree on a project convention (most tools expect revert: <subject> + Refs: footer with reverted SHAs).

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.