Show HN: My custom agent skill for commit messages

thatxliner1 pts0 comments

GitHub - ThatXliner/x-commit: Xliner's Commit Skill · GitHub

/" data-turbo-transient="true" />

Skip to content

Search or jump to...

Search code, repositories, users, issues, pull requests...

-->

Search

Clear

Search syntax tips

Provide feedback

--><br>We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

-->

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

{{ message }}

ThatXliner

x-commit

Public

Notifications<br>You must be signed in to change notification settings

Fork

Star

main

BranchesTags

Go to file

CodeOpen more actions menu

Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit

History<br>38 Commits<br>38 Commits

.claude-plugin

.claude-plugin

.claude

.claude

.github/workflows

.github/workflows

README.md

README.md

SKILL-fun.md

SKILL-fun.md

SKILL.md

SKILL.md

install.sh

install.sh

View all files

Repository files navigation

x-commit

I created this because I didn't like how Claude committed files when I simply asked it to "create atomic commits." This skill codifies all the things I want.

Features

Gitmoji + Conventional Commits — combines visual emoji shortcodes (:bug:, :sparkles:) with machine-parseable types (fix, feat) in one format

Atomic commit enforcement — splits changes by code dependency, not just "logical grouping," so git revert and git bisect always work cleanly

Why-not-what messaging — teaches the agent to explain motivation in subjects and bodies instead of restating the diff

Pre-commit checklist — lints, documentation updates, and AI plan file cleanup (never commit Superpowers docs) before every commit

Full gitmoji reference — 30+ commonly used gitmoji with type pairings, plus a link to the complete spec

Installation

Via Plugin System (recommended)

claude plugin marketplace add ThatXliner/claude-plugins<br>claude plugin install x-commit

Via Script

One-liner (clones the repo and optionally installs the global hook guard):

bash curl -fsSL https://raw.githubusercontent.com/ThatXliner/x-commit/main/install.sh)

Manual Clone

git clone https://github.com/ThatXliner/x-commit.git ~/.claude/skills/x-commit

The skill is automatically discovered by Claude Code on next conversation start.

Hook guard (recommended)

The skill includes a PreToolUse hook that validates commit messages follow the x-commit format before allowing them through. This prevents Claude from bypassing the skill when confirming a commit with a short reply like "yes".

The install script will offer to set this up for you. To install it manually, add this to your ~/.claude/settings.json:

// ...existing settings...<br>"hooks": {<br>"PreToolUse": [<br>"matcher": "Bash",<br>"hooks": [<br>"type": "prompt",<br>"if": "Bash(git commit:*)",<br>"prompt": "Check if this git commit command follows the x-commit skill conventions. The commit message MUST use the format `:gitmoji: type(scope): imperative description` (e.g. `:bug: fix(auth): prevent crash when session expires`). If the message does NOT match this format, block it and tell the model to invoke the x-commit skill first with /x-commit. If it DOES match, allow it. Here is the command: $ARGUMENTS",<br>"statusMessage": "Validating commit format..."

Usage

The skill activates automatically when Claude is writing commit messages, staging changes, or reviewing commits. You can also trigger it explicitly with:

/x-commit

License

MIT

About

Xliner's Commit Skill

Resources

Readme

Uh oh!

There was an error while loading. Please reload this page.

Activity

Stars

star

Watchers

watching

Forks

forks

Report repository

Releases

No releases published

Packages

Uh oh!

There was an error while loading. Please reload this page.

Uh oh!

There was an error while loading. Please reload this page.

Contributors

Uh oh!

There was an error while loading. Please reload this page.

Languages

Shell<br>100.0%

You can’t perform that action at this time.

commit skill claude reload install github

Related Articles