commit-assistant
Git Commit Assistant
Create general-purpose Commit, PR, and release notes text.
Workflow
- Read any project-specific rules (if provided).
- Collect change context:
git status -sb,git diff --stat,git diff. - Determine the primary change type.
- Ask only for missing inputs:
- What changed and why
- Breaking change status
- Release notes need, audience, and category
- Issue/Epic/Tracking reference (if the project uses them)
- Produce Commit/PR/Release notes and validate.
Commit rules
- Format:
type: Subject - Suggested
type:featfixdocsstylerefactortestchorerevert - Subject rules (seven rules):
- Separate subject from body with a blank line
- Limit subject line to 50 characters
- Capitalize the subject line
- Do not end the subject line with a period
- Use imperative mood
- Body rules:
- Explain what and why, not how
- Wrap at 72 characters per line (hard max 100)
- Use English, imperative
- Breaking changes:
- Use
type!: Subjector - Add footer
BREAKING CHANGE: ...
- Use
- Add issue references only if the project uses them (e.g.,
Refs: #123) - 🔒 Never include secrets or credentials
PR rules
- Title: short imperative phrase, no period
- Description must answer:
- What changed?
- Why?
- Breaking changes?
- Reuse Commit Subject when appropriate
Release notes rules
- Include only user-facing changes
- Use
Release notes: Nonefor internal refactors/tests/infra - Prefer categories when useful: Added / Changed / Fixed / Breaking / Security / Performance
- Describe what changed, why it matters, and how users notice it
- 🔒 Never include secrets or private data
Output templates
Commit:
<type>: <Subject>
<What changed.>
<Why it changed.>
BREAKING CHANGE: <Impact> # only if needed
PR:
<Title>
What changed
- ...
Why
- ...
Breaking changes
- None | ...
Release notes:
Release notes: None
# or
Release notes (Added): ...
Release notes (Fixed): ...
Release notes (Breaking): ...
Validation checklist
- Subject length <= 50, imperative, capitalized, no period
- Blank line between subject and body
- Body lines wrap at 72 (<= 100)
- Body explains what/why only
- No secrets or private data 🔒
More from peterfile/my-common-skills
kiro-specs
Create a Kiro spec for a feature in .kiro/specs create/update feature spec/PRD/RFC—requirements, design doc, and implementation tasks checklist.Trigger on spec/specification/PRD/RFC/tech spec, requirements/user story/acceptance criteria/EARS, design doc/architecture, task breakdown/implementation plan/checklist; 需求/验收/设计/任务.
9pnpm
Node.js package manager with strict dependency resolution. Use when running pnpm specific commands, configuring workspaces, or managing dependencies with catalogs, patches, or overrides.
3canvas-design
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
3turborepo
|
3typescript-write
Write TypeScript and JavaScript code following Metabase coding standards and best practices. Use when developing or refactoring TypeScript/JavaScript code.
3frontend-design
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.
3