npx claudepluginhub bradleyboehmke/brads-marketplace --plugin git-workflow# Validate Commit Message You are validating a **commit message** against standards. ## Command Parameters **Message Parameter:** - `--message="commit message"` - Message to validate (default: read from git staging) **Format Parameter:** - `--format=console` (default) - Display validation results in console - `--format=markdown` - Generate markdown validation report **Output Parameter:** - `--output=<path>` - Custom report path (only with --format=markdown) **Usage Examples:** ## Objective Validate commit message against: 1. Conventional Commits format 2. commit message standards 3...
You are validating a commit message against standards.
Message Parameter:
--message="commit message" - Message to validate (default: read from git staging)Format Parameter:
--format=console (default) - Display validation results in console--format=markdown - Generate markdown validation reportOutput Parameter:
--output=<path> - Custom report path (only with --format=markdown)Usage Examples:
/git-workflow:validate-commit # Validate staged commit
/git-workflow:validate-commit --message="fix bug in auth" # Validate specific message
/git-workflow:validate-commit --format=markdown # Generate report
Validate commit message against:
Activate: git-workflow-specialist agent
commit-message-standards - Format, quality, issue linking policyIf --message provided: Use that
If not: Read from git prepare-commit-msg or last commit
✅ Pass criteria:
<type>(<scope>): <subject>❌ Fail if:
Based on commit type:
✅ Pass: Has Closes #123, Fixes #456, or Relates to #789
⚠️ Warning: Missing but recommended
❌ Fail: Missing and required
## Validation Results
**Message:**
\```
fix bug in auth
\```
**Status:** ❌ FAIL
**Issues Found:**
1. ❌ **Missing commit type format**
- Current: "fix bug in auth"
- Required: `fix(<scope>): <subject>`
- Fix: Add type prefix and scope
2. ❌ **Subject too vague**
- "bug in auth" doesn't explain what was fixed
- Be specific: which bug? what behavior?
3. ❌ **Missing issue reference**
- fix commits require issue reference
- Add: `Fixes #<issue-number>`
**Correct Example:**
\```
fix(auth): resolve session timeout on mobile devices
Fixes #456
\```
**Summary:** 3 errors, 0 warnings
---
**Next Steps:**
Would you like me to:
1. 🤖 **Run `/git-workflow:draft-commit`** - Generate a proper message automatically
2. ✏️ **Help you fix this message** - Guide you through corrections
3. ❌ **Cancel** - Just show validation results
Enter your choice (1, 2, or 3):
## Validation Results
**Message:**
\```
feat(api): add customer export endpoint
Adds new /api/customers/export endpoint supporting CSV and JSON formats.
Closes #234
\```
**Status:** ✅ PASS
**Checks:**
- ✅ Conventional Commits format
- ✅ Valid type: feat
- ✅ Clear, specific subject (38 characters)
- ✅ Imperative mood
- ✅ Issue reference present (required for feat)
- ✅ Body provides context
**Summary:** All checks passed
✅ This message is ready to commit!
When validation FAILS, prompt user with next steps:
Option 1 - Run draft-commit:
Running `/git-workflow:draft-commit` to generate a proper message...
[Executes draft-commit command]
Option 2 - Help fix message:
Let's fix your message step by step:
**Current:** "fix bug in auth"
**Step 1: Add commit type**
Your message starts with "fix" which is good, but needs proper format.
\```
fix(<scope>): <subject>
\```
**Step 2: Add scope**
What component is affected? (e.g., auth, api, ui)
[Wait for user input: "auth"]
**Step 3: Make subject specific**
Current: "bug in auth"
What specific bug? What behavior was wrong?
[Wait for user input: "session timeout on mobile"]
**Step 4: Add issue reference**
fix commits require an issue reference. What issue does this fix?
[Wait for user input: "456"]
**Updated message:**
\```
fix(auth): resolve session timeout on mobile
Fixes #456
\```
Would you like to commit with this message? (yes/no)
Option 3 - Cancel:
Validation results saved. No further action taken.
If message passes all checks, simply confirm:
✅ Message validated successfully - ready to commit!
No need to prompt for further action.
Remember: