Universal post-commit actions. CHANGELOG update and git tag for all repos. Plugin version bumping for marketplace repos. Triggered after any code commit (except wip/amend/undo).
From fuse-commit-pronpx claudepluginhub fusengine/agents --plugin fuse-commit-proThis skill is limited to using the following tools:
Observes Claude Code sessions via hooks to create atomic project-scoped instincts with confidence scores, evolving them into skills, commands, or agents.
Automatically extracts reusable patterns like error resolutions, workarounds, and debugging techniques from Claude Code sessions via Stop hook, saving them as learned skills for reuse.
Provides patterns for continuous autonomous agent loops with loop selection, quality gates, evals, recovery controls, and failure mitigation. Useful for production AI agent workflows.
Universal post-commit actions after a successful code commit.
git log --format='%s' -1
Save the commit message for CHANGELOG entry.
Check if .claude-plugin/marketplace.json exists in the repo root.
Read the latest git tag to determine current version:
git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.0"
Increment PATCH: X.Y.Z → X.Y.(Z+1).
If CHANGELOG.md does not exist, create it with # Changelog heading.
Add a new entry at the top (after the # Changelog heading):
## [X.Y.Z] - DD-MM-YYYY
- commit message from Step 1
git add CHANGELOG.md
git commit -m "$(cat <<'EOF'
chore: update CHANGELOG to X.Y.Z
EOF
)"
git tag vX.Y.Z
STOP. Output summary and ask user if they want to push the tag.
git diff --name-only HEAD~1 | grep '^plugins/' | cut -d/ -f2 | sort -u
If no plugins modified → Skip to Step M3 (still bump suite version).
Skip directories without .claude-plugin/plugin.json.
For each modified plugin detected in Step M1:
plugins/{name}/.claude-plugin/plugin.jsonX.Y.Z → X.Y.(Z+1)plugin.jsonThen determine plugin type from marketplace.json:
plugins[] array → Also update matching version field in marketplace.jsoncore[] array → Only bump plugin.json (core entries have no version field)Read metadata.version from .claude-plugin/marketplace.json.
Increment PATCH: X.Y.Z → X.Y.(Z+1).
Write the new suite version back to marketplace.json → metadata.version.
If README.md contains a shields.io version badge, update it to match the new version:
Replace version-vOLD_VERSION- with version-vNEW_VERSION- in the badge URL.
Add a new entry at the top of CHANGELOG.md (after the # Changelog heading):
## [X.Y.Z] - DD-MM-YYYY
- type(plugin-name): description from the code commit message
Where X.Y.Z is the new suite version from Step M3.
Include (plugin-name X.Y.Z) in each line for bumped plugins.
Stage all modified files:
git add CHANGELOG.md README.md .claude-plugin/marketplace.json plugins/*/.claude-plugin/plugin.json
Commit with HEREDOC format:
git commit -m "$(cat <<'EOF'
chore: bump marketplace and CHANGELOG to X.Y.Z
EOF
)"
This MUST be a separate commit from the code changes. Never combine.
Then tag and push:
git tag vX.Y.Z
git push origin vX.Y.Z
Only tag the bump commit. Never tag code commits.
| Commit Type | CHANGELOG Prefix |
|---|---|
feat | Added |
fix | Fixed |
refactor | Changed |
docs | Documentation |
perf | Performance |
test | Tests |
chore | Maintenance |
style | Style |
ci | CI/CD |
build | Build |