CtrlK
BlogDocsLog inGet started
Tessl Logo

commitlint

When setting up commit message validation for a project. When project has commitlint.config.js or .commitlintrc files. When configuring CI/CD to enforce commit format. When extracting commit rules for LLM prompt generation. When debugging commit message rejection errors.

56

Quality

64%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/commitlint/skills/commitlint/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A highly actionable, executable reference with accurate tables, commands, and code — its main weaknesses are volume and structure. The exhaustive rule reference and config listings belong in a one-level-deep bundle file rather than the SKILL.md body, and an explicit quick-start sequence would tighten the primary workflow.

Suggestions

Move the exhaustive Rule Reference tables (type/subject/scope/header/body/footer rules and case values) to a references/rules.md file and keep only the most common rules inline, linking to it from a short section.

Add an explicit quick-start sequence (install → create config → run npx commitlint --last) so the setup workflow doesn't have to be assembled from separate sections.

Trim redundant format coverage — four config-format examples and the 14-entry config filename list can be consolidated to the recommended formats plus a pointer to the full list.

DimensionReasoningScore

Conciseness

The body is dense and factual rather than padded with concepts Claude already knows, but the exhaustive rule-reference tables (~150 lines of type/subject/scope/header/body/footer rules plus case values) and the 14-filename config listing restate commitlint's own documentation at a length that could be substantially tightened or split out.

3 / 5

Actionability

Fully executable throughout: install commands for npm/yarn/pnpm, concrete CLI invocations (--last, --from, --edit, --print-config), working config examples in four formats, and runnable JavaScript/Python for loading and linting programmatically — copy-paste ready and covering the common cases.

5 / 5

Workflow Clarity

The "Validation loop pattern" gives an explicit 5-step sequence with a feedback loop (generate, lint, feed errors back, retry max 3, return), but the primary setup flow (install → create config → lint) is implied by section order rather than assembled into one quick-start sequence.

4 / 5

Progressive Disclosure

Section headers are clear and well-ordered, but the entire bulk — rule reference, complete config schema, case values — is inlined in a single 504-line SKILL.md with no bundle files at all, so content that clearly belongs in a separate reference file (e.g., references/rules.md) is inline.

3 / 5

Total

15

/

20

Passed

Description

57%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

Strong trigger coverage with specific scenarios and config file names, but the description omits any statement of what the skill actually does — every clause is a "When" trigger. Adding a leading capability sentence (e.g., "Validates commit messages against Conventional Commits rules via commitlint configuration") would materially raise completeness and specificity.

Suggestions

Open the description with a third-person "what" statement before the triggers, e.g. "Validates commit messages against Conventional Commits rules using commitlint configuration. Use when...".

Add missing natural synonyms such as "conventional commits", "commit linting", and "commitlint" as standalone trigger terms.

Trim overlapping trigger clauses (five "When" sentences) to the three or four most distinct scenarios to keep the description concise.

DimensionReasoningScore

Specificity

The description lists several specific actions — "setting up commit message validation", "configuring CI/CD to enforce commit format", "extracting commit rules for LLM prompt generation", "debugging commit message rejection errors" — but never states what the skill itself does (e.g., validating messages against rules), so it falls short of the comprehensive anchor 5.

4 / 5

Completeness

The description is composed entirely of "When..." clauses with no "what" statement anywhere, matching the anchor for only-when-present-without-what; scoring only what is explicit, the capability side must be inferred.

2 / 5

Trigger Term Quality

Good natural triggers including "commit message validation", "commit format", "commit message rejection", and concrete file names ("commitlint.config.js", ".commitlintrc"), but common synonyms like "conventional commits", "commit linting", and bare "commitlint" are missing, keeping it below anchor 5.

4 / 5

Distinctiveness Conflict Risk

A clear niche (commitlint configuration and validation) with distinct file-name triggers, but "extracting commit rules for LLM prompt generation" overlaps with commit-message-generation skills, so conflict risk is minor rather than minimal.

4 / 5

Total

14

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (505 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

Repository
Jamie-BitFlight/claude_skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.