post-commit

SkillAI & models

Use when a code commit just landed (not wip/amend/undo) and CHANGELOG or plugin-version post-commit actions are needed.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the post-commit skill

What this skill tells your AI

The instructions your AI receives, as published by fusengine/agents in plugins/commit-pro/skills/post-commit/SKILL.md and read by ahel’s review.

Post-Commit Skill

Universal post-commit actions after a successful code commit.

Step 1: Read Last Commit

git log --format='%s' -1

Save the commit message for CHANGELOG entry.

Step 2: Detect Repo Type

Check if .claude-plugin/marketplace.json exists in the repo root.

  • EXISTS → Follow Marketplace Path (Steps M1–M5)
  • DOES NOT EXIST → Follow Standard Path (Steps S1–S2)

Standard Path (any repo without marketplace.json)

Step S1: Update CHANGELOG

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.ZX.Y.(Z+1). Add a new entry at the top of CHANGELOG.md (create it with a # Changelog heading first if missing). Load references/changelog-templates.md for the exact entry format and references/changelog-type-mapping.md for the commit-type prefix.

Step S2: Commit CHANGELOG

git add CHANGELOG.md
git commit -m "$(cat <<'EOF'
chore: update CHANGELOG to X.Y.Z
EOF
)"

STOP. Output summary. No tag here — it is created POST-MERGE by the commit command's Step 8 (or locally-only in LOCAL/DEGRADED mode when no remote/gh is available — see the Step 7 decision tree in commands/commit.md). Load references/tag-timing.md for the full post-merge rationale and the standalone-use exception.

Marketplace Path (repo with .claude-plugin/marketplace.json)

Step M1: Detect Modified Plugins

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.

Step M2: Bump Plugin Versions

For each modified plugin: read plugins/{name}/.claude-plugin/plugin.json, increment PATCH (X.Y.ZX.Y.(Z+1)), write it back. Load references/plugin-version-bump.md for the marketplace.json type-detection rule (plugins[] vs core[]).

Step M3: Bump Suite Version + Recompute README Badges

Read metadata.version from .claude-plugin/marketplace.json, increment PATCH (X.Y.ZX.Y.(Z+1)), write it back.

Then recompute EVERY shields.io badge in README.md from the filesystem — never hand-maintain counts (they drift). Load references/badge-recompute.md for the exact count commands and sed replacements (version/plugins/agents/skills tokens).

Step M3.5: Documentation Parity

For any plugin added in this commit, create its docs page and link it. Doc filenames are abbreviated (e.g. dir nextjs-expertdocs/plugins/nextjs.md), so match existing naming in docs/plugins/, not the raw dir. Load references/plugin-docs-parity.md for the detection command and the full per-plugin checklist.

Step M4: Update CHANGELOG

Add a new entry at the top of CHANGELOG.md, using the new suite version X.Y.Z from Step M3 and (plugin-name X.Y.Z) for each bumped plugin. Load references/changelog-templates.md for the exact entry format and references/changelog-type-mapping.md for the commit-type prefix.

Step M5: Commit the Bump

Stage all modified files:

git add CHANGELOG.md README.md .claude-plugin/marketplace.json plugins/*/.claude-plugin/plugin.json docs/

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. No tag here — same post-merge rationale as Step S2. Load references/tag-timing.md for details.

Version Bump Rules

  • ALL commit types trigger PATCH bump only
  • MINOR/MAJOR bumps are manual user decisions, never automatic
  • The bump commit is always SEPARATE from code changes

CHANGELOG Type Mapping

See references/changelog-type-mapping.md for the commit-type → CHANGELOG-prefix table used in Step S1 and Step M4 entries.

Signals

GitHub stars
25
Forks
4
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
post-commit
Source
github.com/fusengine/agents