@j4k-oss/conventional-commit-msg (1.0.12)

Published 2026-10-21 14:07:49 +00:00 by oss-publisher in j4k-oss/conventional-commit-msg

Installation

@j4k-oss:registry=
npm config set @j4k-oss:registry=
npm install @j4k-oss/conventional-commit-msg@1.0.12
"@j4k-oss/conventional-commit-msg": "1.0.12"

About this package

conventional-commit-msg

Source: https://code.j4k.dev/j4k-oss/conventional-commit-msg. github.com/Jercik/conventional-commit-msg is a read-only mirror; open issues and pull requests on the Forge.

Zero-config commitlint frontend for conventional commits.

Validates commit messages against the Conventional Commits specification using @commitlint/config-conventional.

Installation

Each release is published under two names with the same files:

  • conventional-commit-msg on npmjs.org, for npx and npm exec. All examples below use it.
  • @j4k-oss/conventional-commit-msg on the code.j4k.dev registry, for pnpm projects that exempt the @j4k-oss scope from minimumReleaseAge. The registry reads anonymously.

To use the code.j4k.dev copy, map the scope to its registry and exempt it in pnpm-workspace.yaml, then add the package:

registries:
  "@j4k-oss": https://code.j4k.dev/api/packages/j4k-oss/npm/
minimumReleaseAgeExclude:
  - "@j4k-oss/*"
pnpm add -D @j4k-oss/conventional-commit-msg

Both packages install the same conventional-commit-msg command.

Quick Start: Git Hook

  1. Create .githooks/commit-msg:
#!/bin/sh
npm exec --yes --package=conventional-commit-msg@latest -- conventional-commit-msg "$1"

npm exec --package=…@latest (not npx -y) keeps the hook working when an npm_config_package env var is inherited (some tool wrappers set it) and when the hook runs inside this package's own repository, where the local package name would otherwise shadow the published binary.

  1. Make it executable and enable the hooks directory:
chmod +x .githooks/commit-msg
git config core.hooksPath .githooks

Now every commit message will be validated automatically.

Usage

# Validate last commit
npx -y conventional-commit-msg --last

# CI mode: validate PR commits
npx -y conventional-commit-msg --from origin/main --to HEAD

# Read commit message from stdin
echo "feat: add feature" | npx -y conventional-commit-msg

# Validate commit message file
npx -y conventional-commit-msg .git/COMMIT_EDITMSG

# Verbose mode: show output even on success
npx -y conventional-commit-msg --last --verbose

Options

Option Description
<file> Commit message file (git hook mode)
--last Validate the last commit
--from <sha> Start of commit range (CI mode)
--to <sha> End of commit range (CI mode)
-v, --verbose Show output on success
-V, --version Output the version number
-h, --help Display help for command

Pipeline Examples

# Check if last commit is valid (for CI scripts)
npx -y conventional-commit-msg --last && echo "Valid" || echo "Invalid"

# Validate message from a file (silent on success, shows errors)
cat .git/COMMIT_EDITMSG | npx -y conventional-commit-msg

# Validate multiple messages from a file (one per line)
while IFS= read -r msg; do
  echo "$msg" | npx -y conventional-commit-msg || echo "Invalid: $msg"
done < messages.txt

License

MIT

Dependencies

Dependencies

ID Version
@commander-js/extra-typings ^15.0.0
@commitlint/config-conventional ^21.0.2
@commitlint/format ^21.0.1
@commitlint/lint ^21.0.2
@commitlint/load ^21.0.2
@commitlint/read ^21.0.2
@commitlint/types ^21.0.1
commander ^15.0.0

Development dependencies

ID Version
@j4k-oss/fta-check ^1.5.10
@j4k/oxlint-config ^2.14.2
@j4k/semantic-release-forgejo ^1.2.3
@total-typescript/ts-reset ^0.6.1
@types/node ^24.0.0
@vitest/coverage-v8 ^4.1.8
conventional-changelog-conventionalcommits ^9.3.1
fta-cli ^3.0.0
knip ^6.16.1
oxfmt ^0.57.0
oxlint ^1.88.0
oxlint-tsgolint ^7.0.2004
semantic-release ^25.0.3
typescript ^7.0.2
vitest ^4.1.8
Details
npm
2026-10-21 14:07:49 +00:00
15
2026-11-04 14:45:32 +00:00
Łukasz Jerciński
MIT
6.3 KiB
Assets (1)
Versions (3) View all
1.0.14 2026-11-03
1.0.13 2026-10-28
1.0.12 2026-10-21