br4zz4:commit

Creates atomic, single-line git commits grouped by logical context.

Updated May 25, 2025
One-click install
npx skills add https://github.com/oporpino/commons --skill br4zz4-commit-oporpino
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: br4zz4:commit
Source: https://github.com/oporpino/commons/tree/main/ai/shared/skills/br4zz4%3Acommit
Command: npx skills add https://github.com/oporpino/commons --skill br4zz4-commit-oporpino

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It enforces consistent, clean git history by ensuring every commit is atomic, single-line, under 60 characters, and free of AI attribution, while handling tricky cases like submodules, symlinks, and untracked files. ## Core Features & Use Cases - Atomic commit splitting: Analyzes the diff, groups changes by logical context, and creates separate commits with selective staging instead of one bulk commit. - Untracked file triage: Classifies new files as commit, ignore (added to .gitignore), or unsure (asks the user) before staging anything. - Submodule and .commons flows: Commits and pushes changes inside submodules or the .commons symlink first, then updates the parent pointer safely. - Amend and push guidance: Decides when git commit --amend is safe, requires confirmation before force pushes, and checks GitHub Actions runs after pushes that affect pull requests or main. - Use Case: After refactoring a feature and fixing an unrelated bug in the same working tree, the skill splits the work into two focused commits such as "feat: add mirror support" and "fix: fix duplicate package check". ## Quick Start Ask the assistant to commit the current changes in the repository following the commit rules.

Frequently Asked Questions about br4zz4:commit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write atomic git commits with conventional commit messages?▼

Group changes by logical context rather than by file, stage each group selectively, and commit with a single-line message in the format "type: short description" using types like feat, fix, refactor, docs, or chore. Keep each message under 60 characters with no body.

How to commit changes inside a git submodule correctly?▼

Enter the submodule, commit and push its changes first, then return to the parent project and stage the submodule pointer with a chore commit. Never commit the pointer update before pushing the submodule itself.

When should I use git commit --amend instead of a new commit?▼

Amend only when correcting the immediately preceding commit that is part of the same logical change on a non-main branch. Never amend commits already pulled by others, and always ask before force pushing, using --force-with-lease.

What should I do with untracked files before committing?▼

Classify each untracked file as commit (source, configs, lock files), ignore (build artifacts, credentials, dependencies), or unsure. Add ignored files to .gitignore and ask the user about anything unclear rather than assuming.

Should AI tools add Co-Authored-By lines to git commits?▼

No. This workflow explicitly prohibits AI mentions, co-authors, or tool attributions in commit messages. Messages stay one line, under 60 characters, with no body or trailers.