@encero-systems/write-commit-message
ADraft commit titles and optional commit bodies using the workspace commit naming convention. Use when the user asks for a commit message, commit text, commit title, or wants commit wording in the format `chore|bugfix|feature - <issue_id(s)> <short description>`.
Install
agr install @encero-systems/write-commit-message --target claudeWrites 1 file into .claude/skills/, pinned to git-1ba78a17.
- .claude/skills/write-commit-message/SKILL.md
Document
name: write-commit-message
description: Draft commit titles and optional commit bodies using the workspace commit naming convention. Use when the user asks for a commit message, commit text, commit title, or wants commit wording in the format chore|bugfix|feature - <issue_id(s)> <short description>.
Write Commit Message
Workflow
- Identify the repository and inspect the actual change set before drafting anything.
- Infer the change type from the diff:
bugfixfor correctness fixes and regressionsfeaturefor new behavior or newly implemented surface areachorefor maintenance, docs-only changes, refactors without new behavior, or repository housekeeping
- Infer issue ids from the branch name first, then from explicit issue references in the current task context if needed.
- Write the title in exactly this format:
<type> - <short description> (<#issue_id(s)>)
- Keep the short description concrete:
- specific to the actual diff
- no trailing punctuation
- no vague filler like
updatesormisc fixes
- If the user also wants a commit body, write:
- one short sentence on what changed
- one short sentence on why
- optional flat bullets only if there are multiple distinct changes worth calling out
Issue Id Rules
- Use numeric ids joined by commas when there are multiple issues:
bugfix - preserve method result types for locals bound from calls (#252, #255)
- Do not prepend
#unless the user explicitly asks for that style. - If no issue id is discoverable, say so instead of inventing one.
Output Rules
- If the user asks for a commit message or commit text, return the commit title by itself unless they also asked for a body.
- If the user asks for both, return the title first and then the body.
- Do not wrap the final title in commentary.
- If the requested type conflicts with the actual diff, follow the diff and say so.
Examples
bugfix - preserve something important for locals bound from calls (#42)
feature - add Session builder and DataFusion backend seam (#5)
chore - tighten RFC 008 optimizer boundary wording (#18)
Trustgrade A
- passBody integrity
Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.
- passType matchnot applicable to this artifact type
Whether the artifact is really the kind of thing its metadata claims it is.
- passFreshness
How long since the source repository was last pushed to.
- passPrompt injection
Scans the artifact's own text for instructions aimed at your agent rather than at you.
- passLicense
Whether the source repository declares an SPDX license permissive enough to redistribute.
How the grade is calculated
Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:
- Aevery check passed
- Bone warning
- Ctwo warnings
- Dprompt injection or body integrity failed, or three warnings
- Fone of those failed, and something else is wrong
These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.
Versions
git-1ba78a178bba2026-07-31