From specialist-agent
Generates conventional git commit messages with automatic type/scope detection from file changes/diffs, runs pre-commit validation for secrets/debug code/large files, stages changes, and executes commit.
How this skill is triggered — by the user, by Claude, or both
Slash command
/specialist-agent:commitThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate and execute conventional commits with automatic scope detection and pre-commit validation.
Generate and execute conventional commits with automatic scope detection and pre-commit validation.
Override: $ARGUMENTS
git status --porcelain
git diff --stat
git diff --cached --stat
Determine:
Type detection from file patterns:
| Changed Files | Type |
|---|---|
src/components/*, src/pages/* | feat or fix |
tests/*, *.test.*, *.spec.* | test |
docs/*, *.md | docs |
.github/*, docker*, *.yml | ci or chore |
*.config.*, tsconfig*, package.json | chore |
| Rename/move only | refactor |
| Delete only | chore |
Scope detection from paths:
src/modules/auth/* -> scope: authsrc/components/Button/* -> scope: buttonsrc/services/* -> scope: servicesType from diff content:
featfixrefactorperfFormat: type(scope): description
Rules:
feat, fix, refactor, test, docs, chore, perf, ci, style)If $ARGUMENTS provided, use it as description override but still validate format.
# Check for secrets/sensitive files
git diff --cached --name-only | grep -E '\.(env|pem|key)$'
# Check for debug artifacts
git diff --cached | grep -E '(console\.log|debugger|TODO.*HACK)'
# Check for large files
git diff --cached --stat | awk '{print $NF}' | head -5
Warn if:
.env or credential files stagedconsole.log / debugger statements in diff# Stage if not staged
git add [relevant files]
# Commit
git commit -m "type(scope): description"
If commit message needs body:
git commit -m "type(scope): description" -m "body with more details"
──── /commit ────
Type: feat
Scope: auth
Message: feat(auth): add JWT refresh token rotation
Files: 4 changed (+120 / -15)
Warnings: none
✓ Committed: abc1234
──── /commit ────
⚠ WARNINGS:
- console.log found in src/service.ts:42
- .env.local is staged (contains secrets?)
Proceed anyway? Showing commit preview:
fix(api): handle timeout in payment service
Files: 2 changed (+8 / -3)
| Excuse | Reality |
|---|---|
| "I'll write a proper message later" | You won't. The context is fresh NOW. A bad commit message is permanent. |
| "It's just a small fix, message doesn't matter" | git log is the project's history book. Every entry matters. |
| "I'll squash before merging anyway" | Squash doesn't fix the habit. Good messages help during review too. |
| "Validation slows me down" | A leaked secret or committed console.log slows the whole team down. |
npx claudepluginhub herbertjulio/specialist-agent --plugin specialist-agentManages git commit workflows: checks status and diffs, stages changes selectively, generates and validates conventional commit messages, then executes commits.
Executes git commits with conventional commit message analysis, intelligent staging, and message generation. Use when asked to commit changes or when /commit is invoked.
Generates and validates conventional commit messages following the conventionalcommits.org spec. Useful when committing code, reviewing commit format, or creating pull requests.