conventional-commit

Enforces Conventional Commits formatting and branch naming rules for git workflows.

Updated Sep 3, 2024
One-click install
npx skills add https://github.com/eminboydak/duckTerm --skill conventional-commit-eminboydak
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: conventional-commit
Source: https://github.com/eminboydak/duckTerm/tree/main/.opencode/skills/conventional-commit
Command: npx skills add https://github.com/eminboydak/duckTerm --skill conventional-commit-eminboydak

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Inconsistent commit messages and branch names make repository history hard to read, break changelog automation, and complicate code review. This Skill enforces the repository's git conventions so every commit and branch follows a uniform, machine-parseable format. ## Core Features & Use Cases - Commit Message Enforcement: Applies the type(scope): subject format with atomic commits, imperative mood, 72-character limits, and BREAKING CHANGE footers. - Branch Naming Rules: Requires type/scope-short-description kebab-case branches created from dev, with a hotfix/ exception for urgent production fixes off main. - Use Case: After finishing a serial port feature in the duckTerm Tauri app, ask the assistant to commit your changes and it will split the work into atomic commits like feat(serial): add port discovery with USB metadata on a properly named branch. ## Quick Start Ask the assistant to commit the current staged changes following the repository's Conventional Commits rules.

Frequently Asked Questions about conventional-commit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a Conventional Commits message?

Use the format `type(scope): subject` where type is feat, fix, chore, docs, refactor, test, perf, ci, build, or style. The subject uses imperative mood, starts lowercase, has no trailing period, and stays under 72 characters.

How should I name git branches for feature work?

Name branches as `type/scope-short-description` in lowercase kebab-case, such as `feat/serial-connection` or `fix/hex-view-overflow`. Feature and fix branches must be created from `dev`, never from `main`.

What is an atomic commit and why does it matter?

An atomic commit contains exactly one logical change. If your commit description needs the word "and", split it into multiple commits and stage only the files relevant to each change.

How do I mark a breaking change in a commit message?

Append an exclamation mark after the type or scope, like `feat(api)!: ...`, and add a `BREAKING CHANGE: <reason>` footer in the commit body explaining the impact.

When can I branch off main instead of dev?

Only `hotfix/` branches may be created from `main`, and only for urgent production fixes. All other feature, fix, refactor, and chore work must branch from `dev`.