skills/conventional-commit/SKILL.md
Prompt and workflow for generating conventional commit messages using a structured XML format. Guides users to create standardized, descriptive commit messages with an optional Jira ticket ID extracted from the current branch when possible.
npx skillsauth add shysssthanhtri/AI-tools conventional-commitInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
<description>This file contains a prompt template for generating conventional commit messages. It provides instructions, examples, and formatting guidelines to help users write standardized, descriptive commit messages with an optional Jira ticket ID in the subject line.</description>
Follow these steps:
git diff --cached to inspect only staged changes — this is the sole basis for the commit message.git add <file> first.git branch --show-current) and extract the ticket ID when the branch matches feature/{ticket-id}-ticket-title.<ticket-id> (for example, branch feature/BK-123-add-login -> ticket ID BK-123).feature/commit-message), skip the ticket ID and generate the commit message without scope: type: description.git commit -m "type(ticket-id): description" # when ticket ID exists
git commit -m "type: description" # when ticket ID is unavailable
<commit-message>
<type>feat|fix|docs|style|refactor|perf|test|build|ci|chore|revert</type>
<ticket-id>(optional) Jira issue key, for example BK-123</ticket-id>
<description>A short, imperative summary of the change</description>
<body>(optional: more detailed explanation)</body>
<footer>(optional: e.g. BREAKING CHANGE: details, or issue references)</footer>
</commit-message>
<examples>
<example>feat(BK-123): add ability to parse arrays</example>
<example>fix(BK-456): correct button alignment</example>
<example>docs(BK-789): update README with usage instructions</example>
<example>refactor(BK-321): improve performance of data processing</example>
<example>chore(BK-654): update dependencies</example>
<example>chore: improve commit message workflow</example>
<example>feat!(BK-987): send email on registration</example>
</examples>
<validation>
<type>Must be one of the allowed types. See <reference>https://www.conventionalcommits.org/en/v1.0.0/#specification</reference></type>
<ticket-id>Optional. First try to extract from the current branch using feature/{ticket-id}-ticket-title. If unavailable, omit ticket-id and use the format type: description.</ticket-id>
<description>Required. Use the imperative mood (e.g., "add", not "added").</description>
<body>Optional. Use for additional context.</body>
<footer>Use for breaking changes or issue references.</footer>
</validation>
<final-step>
<cmd>git commit -m "type(ticket-id): description" | git commit -m "type: description"</cmd>
<note>Use type(ticket-id): description when ticket-id is available; otherwise use type: description. Include body and footer if needed.</note>
</final-step>
testing
Execute an existing Jira ticket implementation plan phase by phase. Use when asked to "work on ticket CM-1234", "implement the plan for CM-1234", "start working on the plan", or "execute the next phase". Reads the plan from docs/<ticket-id>/plan.md, captures a pre-implementation full test baseline in plan/progress docs, presents each phase for user approval before coding, updates progress after each phase, and operates inside the dedicated git worktree. After the last phase is committed, runs the full test suite, fixes regressions (skipping known pre-existing failures), then presents a full change summary for user review and creates a GitHub draft PR using the create-draft-pr skill.
tools
Generate a complete MCP server project in TypeScript with tools, resources, and proper configuration
tools
Use when starting work on a Jira ticket. Fetches ticket details via Atlassian MCP (for branch naming and a local story snapshot), creates an isolated git worktree with branch feature/<ticket-id>-<slug>-<platform>, and writes docs/<ticket-id>/<ticket-id>.md in the worktree.
documentation
Create a work plan for a Jira ticket. Use when asked to plan work, create a plan for a ticket, break down a Jira issue, or prepare implementation steps for a Jira ticket ID like CM-1234. Reads local ticket details, deeply analyzes requirements and root causes, proposes up to three optimized solutions (not workarounds) with pros and cons, asks the user to choose, then finalizes the plan with that choice under docs/<ticket-id>/.