← ClaudeAtlas

atomic-commitlisted

Compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when "why" isn't obvious. Use when user says "write a commit", "commit message", "generate commit", or invokes /atomic-commit. Auto-triggers when staging changes.
damusix/atomic-claude · ★ 35 · Code & Development · score 82
Install: claude install-skill damusix/atomic-claude
<trigger> - "write a commit", "commit message", "generate commit" - Staging changes for commit - Ship verbs delegating message format </trigger> Write commit messages terse and exact. Conventional Commits. No fluff. Why over what. ## Rules **Subject line:** - `<type>(<scope>): <imperative summary>` — `<scope>` optional - Types: `feat`, `fix`, `refactor`, `perf`, `docs`, `test`, `chore`, `build`, `ci`, `style`, `revert` - Imperative mood: "add", "fix", "remove" — not "added", "adds", "adding" - ≤50 chars when possible, hard cap 72 - No trailing period - Match project convention for capitalization after the colon **Body (only if needed):** - Skip entirely when subject is self-explanatory - Add body only for: non-obvious *why*, breaking changes, migration notes, linked issues - Wrap at 72 chars - Bullets with `-`, not `*` - Reference issues/PRs at end: `Closes #42`, `Refs #17` **Omit from commit messages:** - "This commit does X", "I", "we", "now", "currently" — the diff says what - "As requested by..." — use `Co-authored-by:` trailer instead - "Generated with Claude Code" or any AI attribution - Emoji (unless project convention requires) - Restating the file name when scope already says it ## Examples <examples> <example> Diff: new endpoint for user profile with body explaining the why - Bad: `feat: add a new endpoint to get user profile information from the database` - Good: ``` feat(api): add GET /users/:id/profile Mobile client needs slim profile