workflow-smart-commit

Analyzes staged git changes and generates conventional commit messages with type and scope.

138|5|Updated Sep 19, 2024
One-click install
npx skills add https://github.com/macalbert/envilder --skill workflow-smart-commit-macalbert
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: workflow-smart-commit
Source: https://github.com/macalbert/envilder/tree/main/.github/skills/workflow-smart-commit
Command: npx skills add https://github.com/macalbert/envilder --skill workflow-smart-commit-macalbert

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Writing consistent, well-formatted commit messages is tedious and often inconsistent across a team. This Skill inspects your staged changes and produces a conventional commit message that follows project conventions, removing guesswork about type, scope, and phrasing. ## Core Features & Use Cases - Diff Analysis: Reads staged changes via git diff --cached to identify the dominant change type and scope. - Conventional Commit Format: Generates messages following the type(scope): description format with rules for imperative mood, length limits, and breaking-change markers. - Project-Specific Scopes: Ships a scope reference table (cli, gha, ssm, keyvault, sdk-node, and more) with selection heuristics for multi-area changes. - Use Case: After staging a bug fix in the AWS SSM provider, ask for a commit and receive a message like fix(ssm): handle throttling on GetParameter calls for approval before committing. ## Quick Start Stage your changes with git add, then ask the assistant to analyze the staged changes and create a conventional commit message.

Frequently Asked Questions about workflow-smart-commit

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

FAQPage Schema
How do I generate a conventional commit message from staged changes?▼

Stage your changes with git add, then invoke the skill. It runs git diff --cached to analyze the diff, identifies the dominant change type and scope, and proposes a conventional commit message for your approval before committing.

What commit types does the conventional commit format support?▼

The supported types are feat, fix, refactor, test, docs, chore, style, and perf. Each maps to a change category, such as feat for new features, fix for bug fixes, and chore for build or tooling updates.

How is the commit scope chosen when changes span multiple areas?▼

The skill uses scope selection heuristics from its reference file: single-SDK changes use the matching sdk-* scope, single-layer changes use that layer, CLI plus core changes use cli, and multi-SDK changes use the sdk scope.

What happens if I run the commit skill with nothing staged?▼

The skill tells you to stage changes first and does not create a commit. It never commits unstaged changes and never uses --no-verify to bypass git hooks.

How are breaking changes marked in commit messages?▼

Breaking changes add an exclamation mark after the scope, for example feat(cli)!: remove --legacy flag. The description stays in imperative mood, lowercase, without a trailing period, and within 72 characters.