Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when naming a git branch for a change: every branch is <type>/<desc> where type is exactly one of feature, fix, chore, docs, release.
.claude/skills/git-branch-naming-convention/SKILL.md| Model | Eval pass | Runs |
|---|---|---|
| gemini-3.6-flashlowest | 98% | 130 |
| gemini-3.1-pro-preview | 100% | 1 |
| Model | Lift | Δ tokens | Δ turns | Cases | Verified |
|---|---|---|---|---|---|
| gemini-3.5-flashbest | +83% | — | 0% | 24 | 86d ago |
| gemini-3.6-flash | +36% | +232% | 0% | 22 | 53d ago |
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-14 | ✗→✓ | ▲ Improved | — | — |
| case-01 | ✗→✓ | ▲ Improved | — | — |
| case-17 | ✗→✓ | ▲ Improved | — | — |
| case-09 | ✗→✓ | ▲ Improved | — | — |
| case-06 | ✗→✓ | ▲ Improved | — | — |
Every git branch name MUST be <type>/<description>, where <type> is exactly one of five fixed words — feature, fix, chore, docs, release — and the description is lowercase-hyphenated intent. Apply this whenever you name, create, or rename a branch for any kind of work.
<type>/<description>. The first path segment(everything before the first /) is the type; everything after is the description. There is exactly one type segment.
feature · fix · chore · docs · release
Every kind of work collapses into one of these five. Do not invent, abbreviate, or borrow a sixth prefix from any other convention (including Conventional Commits).
feature/ — new functionality. New capability, new endpoint, new screen,new behavior the product did not have before. Use the full word feature, never the abbreviation feat.
fix/ — correcting broken behavior. Bug, crash, regression, datacorruption, security patch, and urgent production incidents all map here. Never use bugfix/, hotfix/, bug/, patch/, or security/ — urgency and severity do NOT change the prefix.
chore/ — non-shipping maintenance. Refactors, performance tuning, addingor updating tests, CI/CD pipelines, build scripts, dependency bumps, formatting/lint, renames, configuration, and tooling all map here. Never use refactor/, perf/, performance/, test/, tests/, ci/, cicd/, build/, style/, format/, deps/, dependencies/, or config/.
docs/ — documentation only. README, code comments, changelog,architecture notes, guides, API reference. A change that touches only prose is docs/, even if it "fixes" a typo (it is not a fix/) and even if it relates to a release (it is not a release/).
release/<version> — cutting a versioned release. The description is theversion number itself, e.g. release/2.1.0. Do not put descriptive words after release/; the version is the description.
camelCase.
PROJ-481) is NOT a validdescription on its own — add words even if you also include the id.
Rule 3 — full word feature:
feat/google-oauth (abbreviated, Conventional-Commits habit)feature/google-oauthRule 4 — bug is fix, not bugfix:
bugfix/checkout-null-pointerfix/null-pointer-on-empty-cartRule 4 — urgent production incident is still fix:
hotfix/auth-crashfix/auth-service-crashRule 4 — security patch is still fix:
security/sql-injection-searchfix/sql-injection-in-searchRule 5 — refactor is chore:
refactor/payments-dedupechore/payments-dedupeRule 5 — performance work is chore:
perf/dashboard-querychore/speed-up-dashboard-queryRule 5 — tests-only is chore:
test/billing-servicechore/billing-service-testsRule 5 — CI work is chore:
ci/node-20chore/ci-node-20Rule 5 — dependency bumps are chore:
deps/bump-allchore/bump-dependenciesRule 6 — README typo is docs, not fix:
fix/readme-typodocs/readme-typoRule 7 — release description is the version:
release/version-2.1.0 or feature/v2-releaserelease/2.1.0Rule 8 — words, not just a ticket id:
PROJ-481 or fix/PROJ-481fix/password-reset-emailRule 8 — hyphens and lowercase:
feature/Real_Time_Notifications or feature/realTimeNotificationsfeature/real-time-notificationsfix/. The five-word vocabularyhas no severity axis; a P0 production security hotfix and a cosmetic bug share the fix/ prefix.
chore/, not feature/. If the change adds capability, it is feature/.
branch whose only purpose is tests is chore/; tests shipped with a new feature live on that feature/ branch.
documentation change → docs/, even though it accompanies a release. Only the act of cutting the version is release/.
tsconfig, eslint, Dockerfiles, Makefiles,lockfile updates → chore/. There is no config/ or build/ prefix.
(fix/PROJ-481-password-reset), but never the id alone.
release/. Norelease/2.1.0-final, no release/q3-launch — just release/2.1.0.
feature/…. Don't write feat/….fix/. Don't usebugfix/, hotfix/, bug/, patch/, or security/.
chore/. Don'tspin up refactor/, perf/, test/, ci/, build/, style/, or deps/.
docs/ for any prose-only change. Don't call a README typo afix/.
release/. Don't add words after it.underscores, dots, or camelCase.
feat/, refactor/, perf/, test/,ci/, build/, style/ — none of these exist here; collapse them into the five.
hotfix/, urgent/, bugfix/ instead of plain fix/.fix/ instead of docs/.release/ with words instead of the bare version number.security/ prefix for security work instead of fix/.feature / fix / chore / docs / release?feature (full word, not feat)?fix?chore?docs?release/<bare-version>?username/host?
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-11 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-14 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-15 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-01 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-17 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-08 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-04 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-18 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-19 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-16 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-20 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-07 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-21 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-22 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
DecimalAI ran this skill against gemini-3.5-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +36 percentage points is the difference between those two pass rates over the 22 comparable cases.
The per-case answers from this run were removed by the retention sweep, so the case table below shows the verdicts without the text either arm produced. The counts above were recorded at the time and are unaffected. Answers are now kept for 180 days.
| Model | Method | Date | Lift |
|---|---|---|---|
| gemini-3.5-flash | verified | 6/27/2026 | +83% |
Other measured skills in the registry, with their headline benchmark lift.