Agent skill

Conventional Git

by samber in samber/cc-skills

Conventional Commits v1.0.0 branch naming, worktree naming, and commit message standards for GitHub and GitLab projects.

MITAuto-check passedDevelopment

Install Conventional Git

skills CLI
$ npx skills add samber/cc-skills --skill conventional-git -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install samber/cc-skills conventional-git --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/samber/cc-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/conventional-git .claude/skills/conventional-git && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
conventional-git
GitHub stars
228
Token cost
~1.8k tokens
SKILL.md length
686 words
Files
2
Skills in repo
15
Repo updated
First seen
Licence
MIT

At a glance

Conventional Commits v1.0.0 branch naming, worktree naming, and commit message standards for GitHub and GitLab projects.

  • Creating branches
  • SKILL.md covers Branch Naming, Worktree Naming, Commit Message Format and Closing Issues via Commit…, plus 2 more sections
  • Calls git
  • Naming worktrees

What it does

Conventional Git is an agent skill from samber/cc-skills. Conventional Commits v1.0.0 branch naming, worktree naming, and commit message standards for GitHub and GitLab projects. Use when creating branches, naming worktrees, writing commits, generating commit messages, reviewing branch conventions, or setting up changelog automation. Apply when your project needs consistent git history, SemVer-driven releases, parseable changelog generation, or automatic issue closing. Trigger when the user asks how to name a worktree, create a git worktree, or organize worktrees…

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `evals/evals.json`). Compatibility notes: Designed for Claude Code, Codex or similar harness. Requires git.

It sits in Development, covering Git worktrees, Commit messages and Git workflow. It works with Git, GitHub and GitLab. The repository describes itself as: 🧑🎨 A collection of agentic skills that works. The licence is MIT.

When your agent uses it

  • Creating branches
  • Naming worktrees
  • Writing commits
  • Generating commit messages

Example prompts

  • “/conventional-git”

Requirements

  • Compatibility (from SKILL.md): Designed for Claude Code, Codex or similar harness. Requires git.
  • Pre-approved tools (allowed-tools): Read, Edit, Write, Glob, Grep, Bash(git:*), Bash(gh:*)

What it can do on your machine

Read from SKILL.md and the folder at commit 123cb15. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Edit
    • Write
    • Glob
    • Grep
    • Bash(git:*)
    • Bash(gh:*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code, Codex or similar harness. Requires git.

    From compatibility in the SKILL.md frontmatter.

Context cost

Conventional Git loads about 1.8k tokens when it runs. Until then it costs about 137 tokens; SKILL.md has 686 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~137
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from samber/cc-skills at commit 123cb15, republished under its MIT licence (© samber). 686 words, ~1,844 tokens.

Download SKILL.mdSave it as .claude/skills/conventional-git/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
conventional-git
description
Conventional Commits v1.0.0 branch naming, worktree naming, and commit message standards for GitHub and GitLab projects. Use when creating branches, naming worktrees, writing commits, generating commit messages, reviewing branch conventions, or setting up changelog automation. Apply when your project needs consistent git history, SemVer-driven releases, parseable changelog generation, or automatic issue closing. Trigger when the user asks how to name a worktree, create a git worktree, or organize worktrees alongside branches.
allowed-tools
Read, Edit, Write, Glob, Grep, Bash(git:*), Bash(gh:*)
compatibility
Designed for Claude Code, Codex or similar harness. Requires git.
user-invocable
true
license
MIT
metadata.author
samber
metadata.version
1.3.0

Conventional Commits & Branch Naming

Follow Conventional Commits v1.0.0 for both branch names and commit messages — consistent naming lets tools auto-generate changelogs, enforce SemVer bumps, and filter history by concern.

Branch Naming

Format: <type>/[issue-]<description> — lowercase, hyphens only, no special chars except /.

feat/user-authentication
feat/42-user-authentication
fix/login-race-condition
fix/87-login-race-condition
docs/api-reference-update
refactor/payment-module

Prefix with the issue number when one exists — GitHub and GitLab auto-link it and it makes git log immediately traceable to the tracker. Keep the description under 50 characters — most git UIs truncate branch names in lists around that length. Match the type to the work you're doing — this is the contract readers use to understand the branch purpose at a glance.

NEVER include worktree in a branch name — git worktrees are a local checkout mechanism, not a branch concept; the name would leak implementation details into the remote and confuse other contributors.

Worktree Naming

Worktrees are local checkout directories — they never appear in the remote. Place them under .claude/worktrees/ and name them by replacing the branch / separator with -.

git worktree add .claude/worktrees/feat-user-authentication feat/user-authentication
git worktree add .claude/worktrees/fix-87-login-race-condition fix/87-login-race-condition

The directory name mirrors the branch name so git worktree list stays readable and each worktree is immediately traceable to its branch without inspecting the checkout. Run git worktree list before creating a new one — reuse an existing worktree if it already covers the same branch.

Keep worktrees scoped to a single branch. Doing unrelated work inside someone else's worktree obscures which changes belong where and makes cleanup error-prone.

Remove the worktree once its branch is merged — either after a local merge or after the pull/merge request is closed on the remote. Stale worktrees accumulate and make git worktree list unreadable.

bash
git worktree remove .claude/worktrees/feat-user-authentication   # branch merged locally
git worktree prune                                                # remove refs to already-deleted directories

Commit Message Format

<type>[optional scope]: <description>
[optional body]
[optional footer(s)]

Types:

TypeSemVerWhen
featMINORNew feature
fixPATCHBug fix
docs—Docs only
style—Formatting, no logic change
refactor—Restructure, no feature/fix
perf—Performance improvement
test—Add/fix tests
build—Build system, deps
ci—CI config
chore—Anything else (not src/test)
revert—Reverts a previous commit

Rules:

  • Subject line ≤ 72 characters — git log and GitHub/GitLab UIs silently truncate longer subjects
  • Imperative mood: "add" not "added" — reads as an instruction, not a history log
  • No capital letter, no trailing period — enforces uniform parsing by changelog tools
  • Body separated by blank line — parsers split header/body at the first blank line
  • Breaking changes: use ! after type/scope, or add BREAKING CHANGE: footer (triggers MAJOR bump) — body-only descriptions are invisible to changelog tools
  • revert commits SHOULD include This reverts commit <hash>. in the body — git revert generates this automatically; don't strip it
  • NEVER add a Claude signature, AI agent attribution, or Co-authored-by trailer for Claude or any other AI agent to commits

Examples:

feat(auth): add JWT token refresh
fix: prevent race condition on concurrent requests

Introduce request ID and reference to latest request.
Dismiss responses from stale requests.
refactor!: drop support for Go 1.18

BREAKING CHANGE: Go 1.18 no longer supported; uses stdlib APIs from 1.21+
Show full SKILL.md (264 more words)Show less

Closing Issues via Commit Messages

Both GitHub and GitLab detect keywords in commit messages and automatically close the referenced issue when the commit lands on the default branch. Place the reference in the footer (preferred — keeps the subject line clean).

Keywords: close, closes, closed, fix, fixes, fixed, resolve, resolves, resolved — case-insensitive.

GitHub:

fix(auth): prevent token expiry race condition

Closes #42
Closes owner/repo#99
  • Triggers when merged into the default branch (usually main)
  • Cross-repo: Closes owner/repo#42
  • Close multiple: Closes #42, closes #43
  • Works in PR descriptions too

GitLab:

feat: add dark mode support

Resolves #101
Closes group/project#42
  • Triggers when merged into the default branch (configurable per project)
  • Cross-project: Closes group/project#42
  • Close multiple: Closes #101, closes #102
  • Works in MR descriptions too

Tip: Pair with the commit type — fix: closing a bug issue, feat: closing a feature request — keeps the changelog semantically coherent.

Common Mistakes

MistakeFix
feat: Added login pagefeat: add login page — imperative, no capital
fix: fix bug.fix: fix bug — no trailing period
Subject over 72 charsShorten; move detail to body
Breaking change only in bodyAdd ! or BREAKING CHANGE: footer — tools won't detect body-only
feat(adding-auth): ...feat(auth): ... — scope is a noun, not a verb
Closes #42 in subject lineMove to footer — keeps subject clean and parseable

Best Practices

  • Align branch type and commit type — feat/auth-* branch → feat(auth): commits
  • One concern per branch — mixing fixes into feature branches obscures the changelog
  • Use scope consistently within a branch — feat(auth): throughout, not feat(user): mid-way
  • Squash merge: when squash-merging a PR/MR, the branch commits are collapsed into one — the PR/MR title becomes the commit message. If the title doesn't follow conventional commits format, changelog generation breaks silently. Always set the PR title before squashing.

© samber, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/conventional-git of samber/cc-skills.

  • SKILL.md
  • evals/evals.json

Open the folder on GitHubat commit 123cb15

Compare with similar skills

Conventional Git next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Conventional Git compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Conventional Git this skillsamber/cc-skills228—~1.8kAutomated safety check: PassMIT
Git Smart Pushexception-coder/npe_get_jobs176—~2.4kAutomated safety check: NotesCustom licence
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT
degit Project ScaffoldingRich-Harris/degit7.9k—~534Automated safety check: PassMIT
Draft Pull Request Creatorwordpress-mobile/WordPress-Android3.2k—~881Automated safety check: NotesGPL-2.0
Codewhale Landing Workflowcodewhale-hq/Codewhale41k—~1.6kAutomated safety check: PassMIT

Similar skills

  • Git Smart Push

    exception-coder/npe_get_jobs

    Analyze local code changes, automatically generate meaningful commit messages based on the changes, and push to remote repository (GitHub, GitLab, Gitee, Alibaba Cloud DevOps, etc.).

    176 GitHub stars~2.4k tokensUpdated 15 days ago
    DevelopmentAuto-check: notes
  • React Router Pull Request Creator

    remix-run/react-router

    Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.

    57k GitHub stars~2.5k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • degit Project Scaffolding

    Rich-Harris/degit

    Downloads a repository snapshot or template with degit into an empty folder, from GitHub, GitLab, Bitbucket, Sourcehut or a Gist, optionally at a branch, tag or commit.

    7.9k GitHub stars~534 tokensUpdated 25 days ago
    DevelopmentAuto-check passed
  • Draft Pull Request Creator

    wordpress-mobile/WordPress-Android

    Commits and pushes current changes, writes a pull request title and body from the branch history and template, and opens a draft PR on GitHub after you approve it.

    3.2k GitHub stars~881 tokensUpdated today
    DevelopmentAuto-check: notes
  • Codewhale Landing Workflow

    codewhale-hq/Codewhale

    Decides how verified work should reach main, directly, in a worktree or on an integration branch, while keeping contributor credit and respecting merge gates.

    41k GitHub stars~1.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Git Commit

    tisfeng/Easydict

    起草、创建或汇报 Angular-style 本地 Git 提交。用于明确的提交交付;分支集成使用 worktree-rebase-merge,不 push。

    15k GitHub stars~535 tokensUpdated 2 days ago
    DevelopmentAuto-check passed

More from samber/cc-skills

All 15 skills in this repo
  • Interviews you about objective, audience and context, then designs an end-of-article call to action with copy, placement, A/B test plan and accessibility check.

    228 GitHub stars~3.1k tokensUpdated 7 days ago
    Auto-check passed
  • Builds a PROSE.md writing guide that captures how a person or brand writes, such as vocabulary, sentence rhythm and signature moves, separate from emotional tone.

    228 GitHub stars~5.3k tokensUpdated 7 days ago
    Auto-check passed
  • Press Release Writer

    samber/cc-skills

    Drafts press releases that fit the release type, target media and region, after collecting the facts and checking that the story has a real news angle.

    228 GitHub stars~1.8k tokensUpdated 7 days ago
    Auto-check passed
  • Produces a training or workshop report as a Word file, with participant feedback and recommendations, drafted in Markdown first and converted once at the end.

    228 GitHub stars~2.7k tokensUpdated 7 days ago
    Auto-check passed
  • Site Launch Checklist

    samber/cc-skills

    Pre-launch checklist for shipping a new website or web app. An agent skill from samber/cc-skills.

    228 GitHub stars~13k tokensUpdated 7 days ago
    Auto-check: notes
  • Copywriting Hooks

    samber/cc-skills

    Writes opening hooks and post titles for long-form articles in EN or FR — blog posts, Substack/Medium/dev.to, LinkedIn long-form, newsletters, essays.

    228 GitHub stars~6.8k tokensUpdated 7 days ago
    Auto-check passed

Works with

Categories

Questions about Conventional Git

What does Conventional Git do?

Conventional Commits v1.0.0 branch naming, worktree naming, and commit message standards for GitHub and GitLab projects. Conventional Git is an agent skill from samber/cc-skills.0 branch naming, worktree naming, and commit message standards for GitHub and GitLab projects.

When should I use Conventional Git?

Conventional Git fits situations like: creating branches; naming worktrees; writing commits; generating commit messages.

How do I install Conventional Git in Claude Code?

Run `npx skills add samber/cc-skills --skill conventional-git -a claude-code`. Or copy the skill folder (skills/conventional-git in samber/cc-skills) into .claude/skills/conventional-git in your project. Claude Code loads it when a task matches its description.

How do I install Conventional Git in Codex?

Run `npx skills add samber/cc-skills --skill conventional-git -a codex`. Or copy the skill folder (skills/conventional-git in samber/cc-skills) into .agents/skills/conventional-git in your project. Codex loads it when a task matches its description.

Can I use Conventional Git in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add samber/cc-skills --skill conventional-git -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/conventional-git, .gemini/skills/conventional-git, .github/skills/conventional-git and .opencode/skills/conventional-git in your project.

What does Conventional Git need to run?

Going by SKILL.md and its folder, Conventional Git needs the command-line tools its instructions call (git). Its frontmatter pre-approves these tools: Read, Edit, Write, Glob, Grep, Bash(git:*), Bash(gh:*). Compatibility (from SKILL.md): Designed for Claude Code, Codex or similar harness. Requires git..

Does Conventional Git access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Conventional Git safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Conventional Git use?

Conventional Git is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Conventional Git use?

About 1.8k tokens (SKILL.md is roughly 7.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Conventional Git?

Skills that share tags, products or a category with Conventional Git: Git Smart Push (exception-coder/npe_get_jobs, 176 stars), React Router Pull Request Creator (remix-run/react-router, 57k stars), degit Project Scaffolding (Rich-Harris/degit, 7.9k stars) and Draft Pull Request Creator (wordpress-mobile/WordPress-Android, 3.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Conventional Git?

samber (a GitHub user) maintains it in samber/cc-skills, which has 228 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 1, 2026.

Source: samber/cc-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.