agentleFS
openshiftopenshift/hypershift/skills/git-commit-format/SKILL.md

Git Commit Format

Skill551 starsChanged 6 months agoApache-2.0View on GitHub

Apply HyperShift conventional commit formatting rules. Use when generating commit messages or creating commits.

1 other project uses a version of this, 1 of them edited.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

11 rules. About 0 are common, 6 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈6

    Distinctive · estimate

    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
  1. Distinctive:

    If neither configured, ask the user to provide details

    line 68
  2. Very specific:

    Include an Assisted-by: LLM footer: when an AI assistant helps create or generate the commit message.

    line 72
  3. Very specific:

    Run make run-gitlint to validate commit messages

    line 80
  4. Distinctive:

    Use conventional commit format

    line 83
  5. Distinctive:

    Commit message with description and breaking change footer:

    line 126
  6. Very specific:

    Commit message with ! to draw attention to a breaking change:

    line 135
  7. Very specific:

    Commit message with scope and !

    line 143
  8. Very specific:

    Commit message with both !

    line 151
  9. Distinctive:

    Commit message with no body:

    line 160
  10. Distinctive:

    Commit message with scope:

    line 168
  11. Distinctive:

    Commit message with a multi-paragraph body and multiple footers:

    line 176

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “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

Git Commit Message Formatting Rules

Apply conventional commit format for all git commits in the HyperShift project.

Commit Message Format

<type>(<scope>): <description>

[optional body]

[footers]

Commit Types

  • feat: New features
  • fix: Bug fixes
  • docs: Documentation changes
  • style: Code style changes (formatting, etc.)
  • refactor: Code refactoring (no functional changes)
  • test: Adding/updating tests
  • chore: Maintenance tasks
  • build: Build system or dependency changes
  • ci: CI/CD changes
  • perf: Performance improvements
  • revert: Revert previous commit

Breaking Changes

With ! to draw attention

feat!: send email when product shipped

With BREAKING CHANGE footer

feat: allow config to extend other configs

BREAKING CHANGE: `extends` key now used for extending config files

Both ! and BREAKING CHANGE

chore!: drop support for Node 6

BREAKING CHANGE: use JavaScript features not available in Node 6.

Required Footers

Signed-off-by Footer

ALWAYS include Signed-off-by footer with name and email.

Get credentials in this priority order:

  1. Environment variables: $GIT_AUTHOR_NAME and $GIT_AUTHOR_EMAIL
  2. Git config: git config user.name and git config user.email
  3. If neither configured, ask the user to provide details

Assisted-by Footer

Include an Assisted-by: LLM footer when an AI assistant helps create or generate the commit message. Do not include it for human-authored commit messages.

Assisted-by: LLM

Gitlint Validation Rules

  • Run make run-gitlint to validate commit messages
  • Title line: 120 characters maximum
  • Body line: 140 characters maximum per line
  • Use conventional commit format
  • Include required footers (Signed-off-by)
  • No trailing whitespace

Examples

Simple commit

docs: correct spelling of CHANGELOG

Signed-off-by: Bryan Cox <brcox@redhat.com>
Assisted-by: LLM

With scope

feat(azure): add workload identity support

Signed-off-by: Bryan Cox <brcox@redhat.com>
Assisted-by: LLM

Multi-paragraph with footers

fix: prevent racing of requests

Introduce request ID and reference to latest request. Dismiss
incoming responses other than from latest request.

Remove timeouts which were used to mitigate racing but are
obsolete now.

Reviewed-by: Jane Doe
Refs: #123
Signed-off-by: Bryan Cox <brcox@redhat.com>
Assisted-by: LLM

Conventional commit examples

Commit message with description and breaking change footer:

feat: allow provided config object to extend other configs

Signed-off-by: Bryan Cox <brcox@redhat.com>
BREAKING CHANGE: `extends` key in config file is now used for extending other config files

Commit message with ! to draw attention to a breaking change:

feat!: send an email to the customer when a product is shipped

Signed-off-by: Bryan Cox <brcox@redhat.com>

Commit message with scope and ! to draw attention to a breaking change:

feat(api)!: send an email to the customer when a product is shipped

Signed-off-by: Bryan Cox <brcox@redhat.com>

Commit message with both ! and a BREAKING CHANGE footer:

chore!: drop support for Node 6

Signed-off-by: Bryan Cox <brcox@redhat.com>
BREAKING CHANGE: use JavaScript features not available in Node 6.

Commit message with no body:

docs: correct spelling of CHANGELOG

Signed-off-by: Bryan Cox <brcox@redhat.com>

Commit message with scope:

feat(lang): add Polish language

Signed-off-by: Bryan Cox <brcox@redhat.com>

Commit message with a multi-paragraph body and multiple footers:

fix: prevent racing of requests

Introduce a request ID and a reference to the latest request. Dismiss
incoming responses other than from the latest request.

Remove timeouts which were used to mitigate the racing issue but are
obsolete now.

Reviewed-by: Z
Refs: #123
Signed-off-by: Bryan Cox <brcox@redhat.com>

Quick Checklist

When creating commits:

  • Use conventional commit format: <type>(<scope>): <description>
  • Use an imperative subject and explain "Why" and "How" when appropriate
  • Title under 120 characters
  • Body lines under 140 characters
  • Include Signed-off-by footer
  • If an AI assistant helped create or generate the commit message, include Assisted-by: LLM; omit it for human-authored commit messages
  • Validate with make run-gitlint
  • Use ! or BREAKING CHANGE for breaking changes

Reference

Conventional Commits Specification: https://www.conventionalcommits.org/en/v1.0.0/#specification

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.