conventional-commits-release

Validate commit messages and PR titles with commitlint for automated semantic-release versioning.

1|2|Updated Dec 4, 2025
One-click install
npx skills add https://github.com/co-labs-co/context-harness --skill conventional-commits-release
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: conventional-commits-release
Source: https://github.com/co-labs-co/context-harness/tree/main/.opencode/skill/conventional-commits-release
Command: npx skills add https://github.com/co-labs-co/context-harness --skill conventional-commits-release

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill enforces conventional commit formats for PR titles and commit messages, enabling automated versioning and GitHub releases.

Core Features & Use Cases

  • Enforced Commit Format: Validates commits with the standard <type>(<scope>): <description> pattern.
  • PR Title Validation: Ensures PR titles adhere to the same convention for consistent release notes.
  • Release Automation: Integrates with semantic-release to compute version bumps and publish GitHub releases.
  • Use Case: In a multi-package repository, developers push feature branches; CI validates messages and a main release is published on merge to main.

Quick Start

Set up your project with commitlint and semantic-release, configure your CI workflow to run commitlint on PRs and to trigger a release when merging to main. Example steps: install commitlint and semantic-release as dev dependencies, add a commitlint.config.js with extends: ['@commitlint/config-conventional'], and configure your CI to run commitlint on PRs and semantic-release on pushes to main.

Frequently Asked Questions about conventional-commits-release

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

FAQPage Schema
How do I automate GitHub releases using conventional commits?

Conventional commits automate GitHub releases by validating commit messages with commitlint, then using semantic-release to compute version bumps and generate release notes on pushes to main.

What is the correct conventional commit format for PR titles?

The conventional commit format for PR titles follows the standard <type>(<scope>): <description> pattern. This enforces consistent commit history and drives automated semantic-release version calculation.

How do I set up commitlint and semantic-release in CI for a multi-package repository?

Install commitlint and semantic-release as dev dependencies, add a commitlint.config.js extending @commitlint/config-conventional, then configure CI to run commitlint on PRs and semantic-release on main branch merges.

Does semantic-release work with standard Git workflows for versioning?

Semantic-release works with standard Git workflows by validating PR titles and commit messages through commitlint, enabling automated version calculation and GitHub release publishing across multi-package repositories.

Why do I need commitlint to enforce conventional commit formats?

Commitlint enforces conventional commit formats to ensure consistent project history, enabling semantic-release to accurately compute version bumps and automatically generate structured release notes.